Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion apps/vr-tests-react-components/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,9 @@
"@fluentui/react-storybook-addon": "*",
Comment thread
YuanboXue-Amber marked this conversation as resolved.
"@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": "*",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
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 } from '../../utilities';
import { Steps } from 'storywright';

const CalendarMonth = bundleIcon(CalendarMonthFilled, CalendarMonthRegular);

const contentId = 'content-id';
const dismissButtonId = 'dismiss-button-id';
const steps = new Steps()
.snapshot('default', { cropTo: '.testWrapper' })
.hover(`#${contentId}`)
.snapshot('hover content', { cropTo: '.testWrapper' })
.mouseDown(`#${contentId}`)
.snapshot('pressed content', { cropTo: '.testWrapper' })
.hover(`#${dismissButtonId}`)
.snapshot('hover dismiss', { cropTo: '.testWrapper' })
.mouseDown(`#${dismissButtonId}`)
.snapshot('pressed dismiss', { cropTo: '.testWrapper' })
.end();

export default {
title: 'InteractionTag Converged',
Component: InteractionTag,
decorators: [story => withStoryWrightSteps({ story, steps })],
} as ComponentMeta<typeof InteractionTag>;

export const Filled = () => (
<InteractionTag
content={{ id: contentId }}
appearance="filled"
dismissible
dismissButton={{ id: dismissButtonId }}
icon={<CalendarMonth />}
>
Primary Text
</InteractionTag>
);
export const FilledHighContrast = getStoryVariant(Filled, HIGH_CONTRAST);
export const FilledDarkMode = getStoryVariant(Filled, DARK_MODE);

export const Outline = () => (
<InteractionTag
content={{ id: contentId }}
appearance="outline"
dismissible
dismissButton={{ id: dismissButtonId }}
icon={<CalendarMonth />}
>
Primary Text
</InteractionTag>
);
export const OutlineHighContrast = getStoryVariant(Outline, HIGH_CONTRAST);
export const OutlineDarkMode = getStoryVariant(Outline, DARK_MODE);

export const Brand = () => (
<InteractionTag
content={{ id: contentId }}
appearance="brand"
dismissible
dismissButton={{ id: dismissButtonId }}
icon={<CalendarMonth />}
>
Primary Text
</InteractionTag>
);
export const BrandHighContrast = getStoryVariant(Brand, HIGH_CONTRAST);
export const BrandDarkMode = getStoryVariant(Brand, DARK_MODE);
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import * as React from 'react';
import { InteractionTag } from '@fluentui/react-tags-preview';
import { ComponentMeta } from '@storybook/react';
import { getStoryVariant, withStoryWrightSteps, RTL } from '../../utilities';
import { Avatar } from '@fluentui/react-avatar';
import { Steps } from 'storywright';

const contentId = 'content-id';
const dismissButtonId = 'dismiss-button-id';
const steps = new Steps()
.snapshot('default', { cropTo: '.testWrapper' })
.focus(`#${contentId}`)
.snapshot('focus content', { cropTo: '.testWrapper' })
.focus(`#${dismissButtonId}`)
.snapshot('focus dismiss', { cropTo: '.testWrapper' })
.end();

export default {
title: 'InteractionTag Converged',
Component: InteractionTag,
decorators: [story => withStoryWrightSteps({ story, steps })],
} as ComponentMeta<typeof InteractionTag>;

export const Rounded = () => <InteractionTag content={{ id: contentId }}>Primary Text</InteractionTag>;

export const RoundedWithSecondaryText = () => (
<InteractionTag content={{ id: contentId }} secondaryText="Secondary Text">
Primary Text
</InteractionTag>
);

export const RoundedWithMedia = () => (
<InteractionTag content={{ id: contentId }} media={<Avatar name="Lydia Bauer" badge={{ status: 'available' }} />}>
Primary Text
</InteractionTag>
);
export const RoundedWithMediaRTL = getStoryVariant(RoundedWithMedia, RTL);

export const RoundedDismissible = () => (
<InteractionTag content={{ id: contentId }} dismissible dismissButton={{ id: dismissButtonId }}>
Primary Text
</InteractionTag>
);
export const RoundedDismissibleRTL = getStoryVariant(RoundedDismissible, RTL);

export const Circular = () => (
<InteractionTag content={{ id: contentId }} shape="circular">
Primary Text
</InteractionTag>
);

export const CircularWithSecondaryText = () => (
<InteractionTag content={{ id: contentId }} shape="circular" secondaryText="Secondary Text">
Primary Text
</InteractionTag>
);

export const CircularWithMedia = () => (
<InteractionTag
content={{ id: contentId }}
shape="circular"
media={<Avatar name="Lydia Bauer" badge={{ status: 'available' }} />}
>
Primary Text
</InteractionTag>
);
export const CircularWithMediaRTL = getStoryVariant(CircularWithMedia, RTL);

export const CircularDismissible = () => (
<InteractionTag content={{ id: contentId }} shape="circular" dismissible dismissButton={{ id: dismissButtonId }}>
Primary Text
</InteractionTag>
);
export const CircularDismissibleRTL = getStoryVariant(CircularDismissible, RTL);
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
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 } from '../../utilities';
import { Steps } from 'storywright';

const CalendarMonth = bundleIcon(CalendarMonthFilled, CalendarMonthRegular);

const tagId = 'tag-id';
const steps = new Steps()
.snapshot('default', { cropTo: '.testWrapper' })
.hover(`#${tagId}}`)
.snapshot('hover', { cropTo: '.testWrapper' })
.mouseDown(`#${tagId}}`)
.snapshot('pressed', { cropTo: '.testWrapper' })
.end();

export default {
title: 'Tag Converged',
Component: Tag,
decorators: [story => withStoryWrightSteps({ story, steps })],
} as ComponentMeta<typeof Tag>;

export const Filled = () => (
<Tag id={tagId} appearance="filled" dismissible icon={<CalendarMonth />}>
Primary Text
</Tag>
);

export const FilledHighContrast = getStoryVariant(Filled, HIGH_CONTRAST);
export const FilledDarkMode = getStoryVariant(Filled, DARK_MODE);

export const Outline = () => (
<Tag id={tagId} appearance="outline" dismissible icon={<CalendarMonth />}>
Primary Text
</Tag>
);

export const OutlineHighContrast = getStoryVariant(Outline, HIGH_CONTRAST);
export const OutlineDarkMode = getStoryVariant(Outline, DARK_MODE);

export const Brand = () => (
<Tag id={tagId} appearance="brand" dismissible icon={<CalendarMonth />}>
Primary Text
</Tag>
);
export const BrandHighContrast = getStoryVariant(Brand, HIGH_CONTRAST);
export const BrandDarkMode = getStoryVariant(Brand, DARK_MODE);
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
import * as React from 'react';
import { Tag } from '@fluentui/react-tags-preview';
import { ComponentMeta } from '@storybook/react';
import { getStoryVariant, withStoryWrightSteps, RTL } from '../../utilities';
import { Avatar } from '@fluentui/react-avatar';
import { Steps } from 'storywright';

const tagId = 'tag-id';
const steps = new Steps()
.snapshot('default', { cropTo: '.testWrapper' })
.focus(`#${tagId}}`)
.snapshot('focused', { cropTo: '.testWrapper' })
.end();

export default {
title: 'Tag Converged',
Component: Tag,
decorators: [story => withStoryWrightSteps({ story, steps })],
} as ComponentMeta<typeof Tag>;

export const Rounded = () => <Tag id={tagId}>Primary Text</Tag>;

export const RoundedWithSecondaryText = () => (
<Tag id={tagId} secondaryText="Secondary Text">
Primary Text
</Tag>
);

export const RoundedWithMedia = () => (
<Tag id={tagId} media={<Avatar name="Lydia Bauer" badge={{ status: 'available' }} />}>
Primary Text
</Tag>
);
export const RoundedWithMediaRTL = getStoryVariant(RoundedWithMedia, RTL);

export const RoundedDismissible = () => (
<Tag id={tagId} dismissible>
Primary Text
</Tag>
);
export const RoundedDismissibleRTL = getStoryVariant(RoundedDismissible, RTL);

export const Circular = () => (
<Tag id={tagId} shape="circular">
Primary Text
</Tag>
);

export const CircularWithSecondaryText = () => (
<Tag id={tagId} secondaryText="Secondary Text">
Primary Text
</Tag>
);

export const CircularWithMedia = () => (
<Tag id={tagId} shape="circular" media={<Avatar name="Lydia Bauer" badge={{ status: 'available' }} />}>
Primary Text
</Tag>
);
export const CircularWithMediaRTL = getStoryVariant(CircularWithMedia, RTL);

export const CircularDismissible = () => (
<Tag id={tagId} shape="circular" dismissible>
Primary Text
</Tag>
);
export const CircularDismissibleRTL = getStoryVariant(CircularDismissible, RTL);