overleaf/services/web/frontend/stories/settings/emails.stories.jsx
Antoine Clausse 4a8b79080b [storybook] Update Storybook and add a control for BS3/BS5 (#20948)
* [storybook] Update Storybook to version 8.3.5

* [storybook] Run storybook with `--no-open`. Fixes xdg-utils issue

* [storybook] Create decorator for BS3/BS5

* [storybook] Add `bsVersionDecorator` to stories

* [storybook] Fix bugs in stories

* [storybook] Fixup `useMeta` type. Use `DeepPartial`

* [storybook] Fix types

GitOrigin-RevId: 48c0f0fefb1ab2d4863ab59051b900b1908a613c
2024-10-14 11:07:40 +00:00

47 lines
1.1 KiB
JavaScript

import EmailsSection from '../../js/features/settings/components/emails-section'
import useFetchMock from './../hooks/use-fetch-mock'
import {
setDefaultMeta,
setReconfirmationMeta,
defaultSetupMocks,
reconfirmationSetupMocks,
errorsMocks,
emailLimitSetupMocks,
} from './helpers/emails'
import { bsVersionDecorator } from '../../../.storybook/utils/with-bootstrap-switcher'
export const EmailsList = args => {
useFetchMock(defaultSetupMocks)
setDefaultMeta()
return <EmailsSection {...args} />
}
export const EmailLimitList = args => {
useFetchMock(emailLimitSetupMocks)
setDefaultMeta()
return <EmailsSection {...args} />
}
export const ReconfirmationEmailsList = args => {
useFetchMock(reconfirmationSetupMocks)
setReconfirmationMeta()
return <EmailsSection {...args} />
}
export const NetworkErrors = args => {
useFetchMock(errorsMocks)
setDefaultMeta()
return <EmailsSection {...args} />
}
export default {
title: 'Account Settings / Emails and Affiliations',
component: EmailsSection,
argTypes: {
...bsVersionDecorator.argTypes,
},
}