diff --git a/apps/vr-tests-react-components/package.json b/apps/vr-tests-react-components/package.json index b33cb857a6afe..3eb6844f037ff 100644 --- a/apps/vr-tests-react-components/package.json +++ b/apps/vr-tests-react-components/package.json @@ -56,8 +56,9 @@ "@fluentui/react-storybook-addon": "*", "@fluentui/react-storybook-addon-codesandbox": "*", "@fluentui/react-switch": "*", - "@fluentui/react-tabs": "*", "@fluentui/react-table": "*", + "@fluentui/react-tabs": "*", + "@fluentui/react-tags-preview": "*", "@fluentui/react-text": "*", "@fluentui/react-textarea": "*", "@fluentui/react-theme": "*", diff --git a/apps/vr-tests-react-components/src/stories/Tag/InteractionTag.stories.tsx b/apps/vr-tests-react-components/src/stories/Tag/InteractionTag.stories.tsx new file mode 100644 index 0000000000000..56fec05e8223b --- /dev/null +++ b/apps/vr-tests-react-components/src/stories/Tag/InteractionTag.stories.tsx @@ -0,0 +1,83 @@ +import * as React from 'react'; +import { InteractionTag } from '@fluentui/react-tags-preview'; +import { bundleIcon, CalendarMonthFilled, CalendarMonthRegular } from '@fluentui/react-icons'; +import { ComponentMeta } from '@storybook/react'; +import { getStoryVariant, withStoryWrightSteps, DARK_MODE, HIGH_CONTRAST, RTL } from '../../utilities'; +import { Avatar } from '@fluentui/react-avatar'; +import { Steps } from 'storywright'; + +const CalendarMonth = bundleIcon(CalendarMonthFilled, CalendarMonthRegular); + +const steps = new Steps().snapshot('default', { cropTo: '.testWrapper' }).end(); + +export default { + title: 'InteractionTag Converged', + Component: InteractionTag, + decorators: [story => withStoryWrightSteps({ story, steps })], +} as ComponentMeta; + +export const Default = () => Primary Text; + +export const DefaultRTL = getStoryVariant(Default, RTL); +export const DefaultDarkMode = getStoryVariant(Default, DARK_MODE); +export const DefaultHighContrast = getStoryVariant(Default, HIGH_CONTRAST); + +// disabled +export const Disabled = () => ( + }> + Primary Text + +); +export const DisabledHighContrast = getStoryVariant(Disabled, HIGH_CONTRAST); +export const DisabledDarkMode = getStoryVariant(Disabled, DARK_MODE); + +export const OutlineDisabled = () => ( + }> + Primary Text + +); +export const OutlineDisabledHighContrast = getStoryVariant(OutlineDisabled, HIGH_CONTRAST); +export const OutlineDisabledDarkMode = getStoryVariant(OutlineDisabled, DARK_MODE); + +export const BrandDisabled = () => ( + }> + Primary Text + +); +export const BrandDisabledHighContrast = getStoryVariant(BrandDisabled, HIGH_CONTRAST); +export const BrandDisabledDarkMode = getStoryVariant(BrandDisabled, DARK_MODE); + +// size +export const SizeSmall = () => Primary Text; +export const SizeSmallDismissible = () => ( + + Primary Text + +); +export const SizeSmallWithIcon = () => ( + }> + Primary Text + +); +export const SizeSmallWithMedia = () => ( + }> + Primary Text + +); + +export const SizeExtraSmall = () => Primary Text; +export const SizeExtraSmallDismissible = () => ( + + Primary Text + +); +export const SizeExtraSmallWithIcon = () => ( + }> + Primary Text + +); +export const SizeExtraSmallWithMedia = () => ( + }> + Primary Text + +); diff --git a/apps/vr-tests-react-components/src/stories/Tag/Tag.stories.tsx b/apps/vr-tests-react-components/src/stories/Tag/Tag.stories.tsx new file mode 100644 index 0000000000000..6e08f6a630475 --- /dev/null +++ b/apps/vr-tests-react-components/src/stories/Tag/Tag.stories.tsx @@ -0,0 +1,83 @@ +import * as React from 'react'; +import { Tag } from '@fluentui/react-tags-preview'; +import { bundleIcon, CalendarMonthFilled, CalendarMonthRegular } from '@fluentui/react-icons'; +import { ComponentMeta } from '@storybook/react'; +import { getStoryVariant, withStoryWrightSteps, DARK_MODE, HIGH_CONTRAST, RTL } from '../../utilities'; +import { Avatar } from '@fluentui/react-avatar'; +import { Steps } from 'storywright'; + +const CalendarMonth = bundleIcon(CalendarMonthFilled, CalendarMonthRegular); + +const steps = new Steps().snapshot('default', { cropTo: '.testWrapper' }).end(); + +export default { + title: 'Tag Converged', + Component: Tag, + decorators: [story => withStoryWrightSteps({ story, steps })], +} as ComponentMeta; + +export const Default = () => Primary Text; + +export const DefaultRTL = getStoryVariant(Default, RTL); +export const DefaultDarkMode = getStoryVariant(Default, DARK_MODE); +export const DefaultHighContrast = getStoryVariant(Default, HIGH_CONTRAST); + +// disabled +export const Disabled = () => ( + }> + Primary Text + +); +export const DisabledHighContrast = getStoryVariant(Disabled, HIGH_CONTRAST); +export const DisabledDarkMode = getStoryVariant(Disabled, DARK_MODE); + +export const OutlineDisabled = () => ( + }> + Primary Text + +); +export const OutlineDisabledHighContrast = getStoryVariant(OutlineDisabled, HIGH_CONTRAST); +export const OutlineDisabledDarkMode = getStoryVariant(OutlineDisabled, DARK_MODE); + +export const BrandDisabled = () => ( + }> + Primary Text + +); +export const BrandDisabledHighContrast = getStoryVariant(BrandDisabled, HIGH_CONTRAST); +export const BrandDisabledDarkMode = getStoryVariant(BrandDisabled, DARK_MODE); + +// size +export const SizeSmall = () => Primary Text; +export const SizeSmallDismissible = () => ( + + Primary Text + +); +export const SizeSmallWithIcon = () => ( + }> + Primary Text + +); +export const SizeSmallWithMedia = () => ( + }> + Primary Text + +); + +export const SizeExtraSmall = () => Primary Text; +export const SizeExtraSmallDismissible = () => ( + + Primary Text + +); +export const SizeExtraSmallWithIcon = () => ( + }> + Primary Text + +); +export const SizeExtraSmallWithMedia = () => ( + }> + Primary Text + +); diff --git a/apps/vr-tests-react-components/src/stories/Tag/TagGroup.stories.tsx b/apps/vr-tests-react-components/src/stories/Tag/TagGroup.stories.tsx new file mode 100644 index 0000000000000..8b7d5b562fc06 --- /dev/null +++ b/apps/vr-tests-react-components/src/stories/Tag/TagGroup.stories.tsx @@ -0,0 +1,55 @@ +import * as React from 'react'; +import { TagGroup, Tag, InteractionTag } from '@fluentui/react-tags-preview'; +import { ComponentMeta } from '@storybook/react'; +import { Steps } from 'storywright'; +import { withStoryWrightSteps } from '../../utilities'; + +const steps = new Steps().snapshot('default', { cropTo: '.testWrapper' }).end(); + +export default { + title: 'TagGroup Converged', + Component: TagGroup, + decorators: [story => withStoryWrightSteps({ story, steps })], +} as ComponentMeta; + +export const Default = () => ( + + Tag 1 + Tag 2 + Tag 3 + +); + +const onDismiss = () => ({}); +export const Dismissible = () => ( + + Tag 1 + Tag 2 + Tag 3 + +); + +export const DismissibleWithInteractionTag = () => ( + + Tag 1 + Tag 2 + Tag 3 + +); + +// size +export const SizeSmall = () => ( + + Tag 1 + Tag 2 + Tag 3 + +); + +export const SizeExtraSmall = () => ( + + Tag 1 + Tag 2 + Tag 3 + +);