diff --git a/apps/vr-tests-react-components/src/stories/DatePickerCompat.stories.tsx b/apps/vr-tests-react-components/src/stories/DatePickerCompat.stories.tsx deleted file mode 100644 index 654ec88d0afaa3..00000000000000 --- a/apps/vr-tests-react-components/src/stories/DatePickerCompat.stories.tsx +++ /dev/null @@ -1,97 +0,0 @@ -import * as React from 'react'; -import { Steps, StoryWright } from 'storywright'; -import { DatePicker as DatePickerBase } from '@fluentui/react-datepicker-compat'; -import { DateRangeType } from '@fluentui/react-calendar-compat'; -import { Field } from '@fluentui/react-field'; -import { storiesOf } from '@storybook/react'; -import { TestWrapperDecorator } from '../utilities/TestWrapperDecorator'; -import type { DatePickerProps } from '@fluentui/react-datepicker-compat'; - -const DatePicker = (props: DatePickerProps & { renderRelativeElement?: boolean }) => { - const today = new Date('3/15/2023'); - const { renderRelativeElement, ...restProps } = props; - return ( -
- - {renderRelativeElement && } -
- ); -}; - -storiesOf('DatePicker Compat', module) - .addDecorator(TestWrapperDecorator) - .addDecorator(story => ( - - {story()} - - )) - .addStory('default', () => , { - includeHighContrast: true, - includeDarkMode: true, - }); - -storiesOf('DatePicker Compat', module) - .addDecorator(TestWrapperDecorator) - .addDecorator(story => ( - {story()} - )) - .addStory('DateRange: day', () => ) - .addStory('DateRange: week', () => ) - .addStory('DateRange: work week', () => ( - - )) - .addStory( - 'DateRange: month', - () => , - { - includeDarkMode: true, - includeHighContrast: true, - }, - ) - .addStory( - 'marked dates', - () => ( - [new Date('3/15/2023'), new Date('3/10/2023')] }, - }} - defaultOpen={true} - /> - ), - { - includeDarkMode: true, - includeHighContrast: true, - }, - ) - .addStory('showWeekNumbers', () => , { - includeDarkMode: true, - includeHighContrast: true, - }) - .addStory('allowTextInput', () => ) - .addStory('Required', () => ( - - - - )) - .addStory('Underlined', () => ) - .addStory('Underlined and required', () => ( - - - - )) - .addStory('With label', () => ( - - - - )) - .addStory('when rendering inline, it should not render behind relatively positioned elements', () => ( - - - - )); diff --git a/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompat.stories.tsx b/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompat.stories.tsx new file mode 100644 index 00000000000000..dcfa20b20d2df0 --- /dev/null +++ b/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompat.stories.tsx @@ -0,0 +1,117 @@ +import * as React from 'react'; +import type { Meta, StoryFn } from '@storybook/react'; +import { Steps, StoryWright } from 'storywright'; +import { DatePicker as DatePickerBase } from '@fluentui/react-datepicker-compat'; +import type { DatePickerProps } from '@fluentui/react-datepicker-compat'; +import { DateRangeType } from '@fluentui/react-calendar-compat'; +import { Field } from '@fluentui/react-field'; +import { DARK_MODE, getStoryVariant, HIGH_CONTRAST, TestWrapperDecorator } from '../../utilities'; + +const DatePicker = (props: DatePickerProps & { renderRelativeElement?: boolean }) => { + const today = new Date('3/15/2023'); + const { renderRelativeElement, ...restProps } = props; + return ( +
+ + {renderRelativeElement && } +
+ ); +}; + +export default { + title: 'DatePicker Compat', + component: DatePicker, + decorators: [ + TestWrapperDecorator, + story => ( + {story()} + ), + ], +} satisfies Meta; + +type Story = StoryFn; + +export const DateRangeDay: Story = () => ( + +); + +DateRangeDay.storyName = 'DateRange: day'; + +export const DateRangeWeek: Story = () => ( + +); + +DateRangeWeek.storyName = 'DateRange: week'; + +export const DateRangeWorkWeek: Story = () => ( + +); + +DateRangeWorkWeek.storyName = 'DateRange: work week'; + +export const DateRangeMonth: Story = () => ( + +); +DateRangeMonth.storyName = 'DateRange: month'; + +export const DateRangeDayDarkMode = getStoryVariant(DateRangeDay, DARK_MODE); + +export const DateRangeMonthHightContrast = getStoryVariant(DateRangeMonth, HIGH_CONTRAST); + +export const MarkedDates: Story = () => ( + [new Date('3/15/2023'), new Date('3/10/2023')] }, + }} + defaultOpen={true} + /> +); +MarkedDates.storyName = 'marked dates'; + +export const MarkedDatesDarkMode = getStoryVariant(MarkedDates, DARK_MODE); + +export const MarkedDatesHightContrast = getStoryVariant(MarkedDates, HIGH_CONTRAST); + +export const ShowWeekNumbers: Story = () => ; +ShowWeekNumbers.storyName = 'showWeekNumbers'; + +export const ShowWeekNumbersDarkMode = getStoryVariant(ShowWeekNumbers, DARK_MODE); + +export const ShowWeekNumbersHightContrast = getStoryVariant(ShowWeekNumbers, HIGH_CONTRAST); + +export const AllowTextInput: Story = () => ; + +AllowTextInput.storyName = 'allowTextInput'; + +export const Required: Story = () => ( + + + +); + +export const Underlined: Story = () => ; + +export const UnderlinedAndRequired: Story = () => ( + + + +); + +UnderlinedAndRequired.storyName = 'Underlined and required'; + +export const WithLabel: Story = () => ( + + + +); + +WithLabel.storyName = 'With label'; + +export const WhenRenderingInlineItShouldNotRenderBehindRelativelyPositionedElements: Story = () => ( + + + +); + +WhenRenderingInlineItShouldNotRenderBehindRelativelyPositionedElements.storyName = + 'when rendering inline, it should not render behind relatively positioned elements'; diff --git a/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompatInputInteractions.stories.tsx b/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompatInputInteractions.stories.tsx new file mode 100644 index 00000000000000..4bcf4a77c867b5 --- /dev/null +++ b/apps/vr-tests-react-components/src/stories/DatepickerCompat/DatePickerCompatInputInteractions.stories.tsx @@ -0,0 +1,33 @@ +import * as React from 'react'; +import type { Meta, StoryFn } from '@storybook/react'; +import { Steps, StoryWright } from 'storywright'; +import { DatePicker } from '@fluentui/react-datepicker-compat'; +import { DARK_MODE, getStoryVariant, HIGH_CONTRAST, TestWrapperDecorator } from '../../utilities'; + +export default { + title: 'DatePicker Compat', + component: DatePicker, + decorators: [ + TestWrapperDecorator, + story => ( + + {story()} + + ), + ], +} satisfies Meta; + +type Story = StoryFn; + +export const Default: Story = () => ; +Default.storyName = 'default'; + +export const DefaultHightContrast = getStoryVariant(Default, HIGH_CONTRAST); + +export const DefaultDarkMode = getStoryVariant(Default, DARK_MODE);