Skip to content

Commit

Permalink
fix(react-tags-preview): use regular icon for dismiss (microsoft#28958)
Browse files Browse the repository at this point in the history
* fix tag issue

* fix interactiontag label

* add label to toolbar

* use regular icon

* chg

* remove role image

* aria label dismiss

* Update packages/react-components/react-tags-preview/stories/TagGroup/TagGroupDefault.stories.tsx

Co-authored-by: ling1726 <[email protected]>

* update label

* update label

* dismiss role

---------

Co-authored-by: ling1726 <[email protected]>
  • Loading branch information
YuanboXue-Amber and ling1726 authored Aug 28, 2023
1 parent 18e53d3 commit 1f13e55
Show file tree
Hide file tree
Showing 14 changed files with 60 additions and 32 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "fix: use regular icon for dismiss",
"packageName": "@fluentui/react-tags-preview",
"email": "[email protected]",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
import * as React from 'react';
import { getNativeElementProps, useEventCallback, slot } from '@fluentui/react-utilities';
import { Delete, Backspace } from '@fluentui/keyboard-keys';
import { DismissRegular, bundleIcon, DismissFilled } from '@fluentui/react-icons';
import { DismissRegular } from '@fluentui/react-icons';
import type { InteractionTagSecondaryProps, InteractionTagSecondaryState } from './InteractionTagSecondary.types';
import { useInteractionTagContext_unstable } from '../../contexts/interactionTagContext';

const DismissIcon = bundleIcon(DismissFilled, DismissRegular);

/**
* Create the state required to render InteractionTagSecondary.
*
Expand Down Expand Up @@ -47,7 +45,7 @@ export const useInteractionTagSecondary_unstable = (

root: slot.always(
getNativeElementProps('button', {
children: <DismissIcon />,
children: <DismissRegular />,
type: 'button',
disabled,
ref,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as React from 'react';
import { getNativeElementProps, useEventCallback, useId, slot } from '@fluentui/react-utilities';
import { DismissRegular, bundleIcon, DismissFilled } from '@fluentui/react-icons';
import { DismissRegular } from '@fluentui/react-icons';
import type { TagProps, TagState } from './Tag.types';
import { Delete, Backspace } from '@fluentui/keyboard-keys';
import { useTagGroupContext_unstable } from '../../contexts/tagGroupContext';
Expand All @@ -16,8 +16,6 @@ const tagAvatarShapeMap = {
circular: 'circular',
} as const;

const DismissIcon = bundleIcon(DismissFilled, DismissRegular);

/**
* Create the state required to render Tag.
*
Expand Down Expand Up @@ -97,7 +95,8 @@ export const useTag_unstable = (props: TagProps, ref: React.Ref<HTMLElement>): T
dismissIcon: slot.optional(props.dismissIcon, {
renderByDefault: dismissible,
defaultProps: {
children: <DismissIcon />,
children: <DismissRegular />,
role: 'img',
},
elementType: 'span',
}),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@ export const Appearance = () => {
<InteractionTagPrimary icon={<CalendarMonth />} hasSecondaryAction>
filled
</InteractionTagPrimary>
<InteractionTagSecondary aria-label="filled, remove" />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
<InteractionTag appearance="outline">
<InteractionTagPrimary icon={<CalendarMonth />} hasSecondaryAction>
outline
</InteractionTagPrimary>
<InteractionTagSecondary aria-label="outline, remove" />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
<InteractionTag appearance="brand">
<InteractionTagPrimary icon={<CalendarMonth />} hasSecondaryAction>
brand
</InteractionTagPrimary>
<InteractionTagSecondary aria-label="brand, remove" />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
</div>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,19 @@ export const Disabled = () => {
<InteractionTagPrimary secondaryText="appearance=filled" icon={<CalendarMonthRegular />} hasSecondaryAction>
disabled
</InteractionTagPrimary>
<InteractionTagSecondary />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
<InteractionTag disabled appearance="outline">
<InteractionTagPrimary secondaryText="appearance=outline" icon={<CalendarMonthRegular />} hasSecondaryAction>
disabled
</InteractionTagPrimary>
<InteractionTagSecondary />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
<InteractionTag disabled appearance="brand">
<InteractionTagPrimary secondaryText="appearance=brand" icon={<CalendarMonthRegular />} hasSecondaryAction>
disabled
</InteractionTagPrimary>
<InteractionTagSecondary />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
</div>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ export const Dismiss = () => {
};

return (
<TagGroup onDismiss={removeItem}>
<TagGroup onDismiss={removeItem} aria-label="Dismiss example">
{visibleTags.map(tag => (
<InteractionTag value={tag.value} key={tag.value}>
<InteractionTagPrimary hasSecondaryAction>{tag.children}</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`${tag.children}, remove`} />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
))}
</TagGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,13 @@ export const Shape = () => {
<InteractionTagPrimary icon={<CalendarMonthRegular />} secondaryText="Secondary text" hasSecondaryAction>
Rounded
</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`Rounded, remove`} />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
<InteractionTag shape="circular">
<InteractionTagPrimary icon={<CalendarMonthRegular />} secondaryText="Secondary text" hasSecondaryAction>
Circular
</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`Circular, remove`} />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
</div>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export const Size = () => {
<InteractionTagPrimary media={<Avatar name="Katri Athokas" badge={{ status: 'busy' }} />} hasSecondaryAction>
Medium dismissible
</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`Medium, dismiss`} />
<InteractionTagSecondary aria-label="dismiss" />
</InteractionTag>

<InteractionTag shape="circular">
Expand All @@ -48,7 +48,7 @@ export const Size = () => {
<InteractionTagPrimary media={<Avatar name="Katri Athokas" badge={{ status: 'busy' }} />} hasSecondaryAction>
Small dismissible
</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`Small, dismiss`} />
<InteractionTagSecondary aria-label="dismiss" />
</InteractionTag>

<InteractionTag size="small" shape="circular">
Expand All @@ -66,7 +66,7 @@ export const Size = () => {
<InteractionTagPrimary media={<Avatar name="Katri Athokas" badge={{ status: 'busy' }} />} hasSecondaryAction>
Extra Small dismissible
</InteractionTagPrimary>
<InteractionTagSecondary aria-label={`Extra-small, dismiss`} />
<InteractionTagSecondary aria-label="dismiss" />
</InteractionTag>

<InteractionTag size="extra-small" shape="circular">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,33 @@ export const Disabled = () => {
const styles = useContainerStyles();
return (
<div className={styles.container}>
<Tag disabled secondaryText="appearance=filled" icon={<CalendarMonthRegular />} dismissible>
<Tag
disabled
secondaryText="appearance=filled"
icon={<CalendarMonthRegular />}
dismissible
dismissIcon={{ 'aria-label': 'remove' }}
>
disabled
</Tag>
<Tag disabled secondaryText="appearance=outline" appearance="outline" icon={<CalendarMonthRegular />} dismissible>
<Tag
disabled
secondaryText="appearance=outline"
appearance="outline"
icon={<CalendarMonthRegular />}
dismissible
dismissIcon={{ 'aria-label': 'remove' }}
>
disabled
</Tag>
<Tag disabled secondaryText="appearance=brand" appearance="brand" icon={<CalendarMonthRegular />} dismissible>
<Tag
disabled
secondaryText="appearance=brand"
appearance="brand"
icon={<CalendarMonthRegular />}
dismissible
dismissIcon={{ 'aria-label': 'remove' }}
>
disabled
</Tag>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export const Dismiss = () => {
};

return (
<TagGroup onDismiss={removeItem}>
<TagGroup onDismiss={removeItem} aria-label="Dismiss example">
{visibleTags.map(tag => (
<Tag dismissible dismissIcon={{ 'aria-label': 'remove' }} value={tag.value} key={tag.value}>
{tag.children}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import * as React from 'react';
import { TagGroup, Tag, TagGroupProps } from '@fluentui/react-tags-preview';

export const Default = (props: Partial<TagGroupProps>) => (
<TagGroup {...props}>
<TagGroup {...props} aria-label="Simple tag group example">
<Tag>Tag 1</Tag>
<Tag>Tag 2</Tag>
<Tag>Tag 3</Tag>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ export const Dismiss = () => {
tag: (
<InteractionTag value="foo" key="foo">
<InteractionTagPrimary hasSecondaryAction>Foo</InteractionTagPrimary>
<InteractionTagSecondary aria-label="Foo, remove" />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
),
},
Expand All @@ -40,7 +40,7 @@ export const Dismiss = () => {
tag: (
<InteractionTag value="bar" key="bar">
<InteractionTagPrimary hasSecondaryAction>Bar</InteractionTagPrimary>
<InteractionTagSecondary aria-label="Bar, remove" />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
),
},
Expand All @@ -52,7 +52,11 @@ export const Dismiss = () => {
setItems([...items].filter(item => item.value !== dismissedTagValue));
};

return <TagGroup onDismiss={removeItem}>{items.map(item => item.tag)}</TagGroup>;
return (
<TagGroup onDismiss={removeItem} aria-label="Dismiss example">
{items.map(item => item.tag)}
</TagGroup>
);
};

Dismiss.storyName = 'Dismiss';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ export const WithOverflow = () => {
return (
<div className={styles.container}>
<Overflow minimumVisible={2} padding={30}>
<TagGroup className={styles.tagGroup}>
<TagGroup className={styles.tagGroup} aria-label="Overflow example">
{defaultItems.map(item => (
<OverflowItem key={item.value} id={item.value!}>
<Tag key={item.value} {...item} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ export const Sizes = () => {
{sizes.map(size => (
<div key={size}>
{`${size}: `}
<TagGroup size={size}>
<TagGroup size={size} aria-label={`${size} tag group example`}>
<Tag dismissible media={<Avatar name="Katri Athokas" />}>
{size}
</Tag>
Expand All @@ -37,7 +37,7 @@ export const Sizes = () => {
<InteractionTagPrimary icon={<CalendarMonthRegular />} hasSecondaryAction>
{size}
</InteractionTagPrimary>
<InteractionTagSecondary />
<InteractionTagSecondary aria-label="remove" />
</InteractionTag>
</TagGroup>
</div>
Expand Down

0 comments on commit 1f13e55

Please sign in to comment.