Skip to content
Draft
Show file tree
Hide file tree
Changes from all 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
6 changes: 6 additions & 0 deletions .storybook/react-icons-font.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/* Prevent inherited text weight from synthetically bolding font icons.
* TODO: Remove when https://github.com/microsoft/fluentui-system-icons/issues/1235 is fixed.
*/
:where([data-fui-icon]) {
font-weight: normal;
}
108 changes: 108 additions & 0 deletions .storybook/react-icons-webpack.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
// @ts-check

const FluentUIReactIconsFontSubsettingPlugin = require('@fluentui/react-icons-font-subsetting-webpack-plugin').default;

const FONT_ICON_VARIANT = 'fonts';
const iconLoader = require.resolve('@fluentui/react-icons-atomic-webpack-loader');
const headlessBaseStyles = require.resolve('@fluentui/react-icons/headless/styles.css');
const headlessFontStyles = require.resolve('@fluentui/react-icons/headless/fonts/styles.css');
const fontIconStyles = require.resolve('./react-icons-font.css');

/** @typedef {string | string[] | import('webpack').EntryObject} ResolvedEntry */

/**
* @param {ResolvedEntry} entry
* @param {string[]} imports
* @returns {ResolvedEntry}
*/
function prependEntryImports(entry, imports) {
if (typeof entry === 'string') {
return [...imports, entry];
}

if (Array.isArray(entry)) {
return [...imports, ...entry];
}

if (entry && typeof entry === 'object') {
return Object.fromEntries(
Object.entries(entry).map(([name, value]) => {
if (typeof value === 'string' || Array.isArray(value)) {
return [name, prependEntryImports(value, imports)];
}

if (value && typeof value === 'object') {
return [name, { ...value, import: prependEntryImports(value.import ?? [], imports) }];
}

return [name, value];
}),
);
}

return entry;
}

/**
* Configures atomic Fluent icon imports for Storybook.
* Set FLUENTUI_ICON_VARIANT=fonts to use subsetted font icons; SVG atoms are the default.
*
* @see https://github.com/microsoft/fluentui-system-icons/blob/main/packages/react-icons-atomic-webpack-loader/README.md
* @see https://github.com/microsoft/fluentui-system-icons/tree/main/packages/react-icons-font-subsetting-webpack-plugin
*
* @param {{ config: import('webpack').Configuration; headless?: boolean }} options
*/
function configureReactIcons(options) {
const { config, headless = false } = options;
const useFontIcons = process.env.FLUENTUI_ICON_VARIANT === FONT_ICON_VARIANT;

config.module ??= {};
config.module.rules ??= [];
config.module.rules.push({
test: /\.[mc]?[jt]sx?$/,
enforce: 'pre',
use: [
{
loader: iconLoader,
options: {
iconVariant: useFontIcons ? 'fonts' : 'svg',
fallbackVariant: 'svg',
headless,
},
},
],
});

if (useFontIcons) {
config.module.rules.push({
test: /\.(ttf|woff2?)$/,
type: 'asset',
});
config.plugins ??= [];
config.plugins.push(new FluentUIReactIconsFontSubsettingPlugin());
}

const styleImports = [];
if (headless) {
styleImports.push(headlessBaseStyles);
}
if (useFontIcons) {
if (headless) {
styleImports.push(headlessFontStyles);
}
styleImports.push(fontIconStyles);
}

if (styleImports.length > 0) {
const originalEntry = config.entry;

config.entry = async () => {
const entry = typeof originalEntry === 'function' ? await originalEntry() : originalEntry;
return prependEntryImports(entry ?? [], styleImports);
};
}

return config;
}

module.exports = { configureReactIcons };
2 changes: 2 additions & 0 deletions apps/public-docsite-v9-headless/.storybook/main.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
const headlessMain = require('../../../packages/react-components/react-headless-components-preview/stories/.storybook/main');
const { registerRules, rules } = require('@fluentui/scripts-storybook');
const { configureReactIcons } = require('../../../.storybook/react-icons-webpack');

module.exports = /** @type {Omit<import('../../../.storybook/main'), 'typescript'|'babel'>} */ ({
...headlessMain,
Expand All @@ -18,6 +19,7 @@ module.exports = /** @type {Omit<import('../../../.storybook/main'), 'typescript
if (process.env.REACT_COMPILER) {
registerRules({ rules: rules.reactCompilerRule, config: localConfig });
}
configureReactIcons({ config: localConfig, headless: true });

return localConfig;
},
Expand Down
13 changes: 12 additions & 1 deletion apps/public-docsite-v9-headless/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@
"tags": ["platform:web", "vNext"],
"targets": {
"build-storybook": {
"inputs": [
"default",
"{workspaceRoot}/.storybook/**",
"{projectRoot}/.storybook/**",
{ "env": "FLUENTUI_ICON_VARIANT" }
],
"dependsOn": [
{
"projects": ["react-storybook-addon", "react-storybook-addon-export-to-sandbox", "storybook-llms-extractor"],
Expand All @@ -20,7 +26,12 @@
"target": "build"
}
],
"inputs": ["default", "{workspaceRoot}/.storybook/**", "{projectRoot}/.storybook/**"]
"inputs": [
"default",
"{workspaceRoot}/.storybook/**",
"{projectRoot}/.storybook/**",
{ "env": "FLUENTUI_ICON_VARIANT" }
]
}
}
}
2 changes: 2 additions & 0 deletions apps/public-docsite-v9/.storybook/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ const path = require('path');
const { getPackageStoriesGlob, registerTsPaths, rules, registerRules } = require('@fluentui/scripts-storybook');

const rootMain = require('../../../.storybook/main');
const { configureReactIcons } = require('../../../.storybook/react-icons-webpack');

const tsConfigAllPath = path.join(__dirname, '../../../tsconfig.base.all.json');

Expand Down Expand Up @@ -59,6 +60,7 @@ module.exports = /** @type {Omit<import('../../../.storybook/main'), 'typescript
rules: [rules.scssRule, ...(process.env.REACT_COMPILER ? rules.reactCompilerRule : [])],
config: localConfig,
});
configureReactIcons({ config: localConfig });

return localConfig;
},
Expand Down
13 changes: 12 additions & 1 deletion apps/public-docsite-v9/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@
"tags": ["platform:web", "vNext"],
"targets": {
"build-storybook": {
"inputs": [
"default",
"{workspaceRoot}/.storybook/**",
"{projectRoot}/.storybook/**",
{ "env": "FLUENTUI_ICON_VARIANT" }
],
"dependsOn": [
{
"projects": [
Expand All @@ -21,7 +27,12 @@
]
},
"build-storybook:docsite": {
"inputs": ["default", "{workspaceRoot}/.storybook/**", "{projectRoot}/.storybook/**"],
"inputs": [
"default",
"{workspaceRoot}/.storybook/**",
"{projectRoot}/.storybook/**",
{ "env": "FLUENTUI_ICON_VARIANT" }
],
"outputs": ["{projectRoot}/dist/react"],
"executor": "nx:noop",
"dependsOn": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import * as React from 'react';

@github-actions github-actions Bot Sep 7, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🕵🏾‍♀️ visual changes to review in the Visual Change Report

vr-tests-react-components/Avatar Converged 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Avatar Converged.customSize+icon+active.normal.chromium.png 3 Changed
vr-tests-react-components/Avatar Converged.customSize+name+badge.normal.chromium.png 2 Changed
vr-tests-react-components/Avatar Converged.size+inactive+badge.normal.chromium.png 13 Changed
vr-tests-react-components/Avatar Converged.size+image+badge.normal.chromium.png 8 Changed
vr-tests-react-components/Avatar Converged.badgeMask - RTL.normal.chromium.png 8 Changed
vr-tests-react-components/Avatar Converged.size+icon+badge+square.normal.chromium.png 32 Changed
vr-tests-react-components/Card Converged 5 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Card Converged.orientation.normal.chromium.png 128 Changed
vr-tests-react-components/Card Converged.CardHeader.normal.chromium.png 3 Changed
vr-tests-react-components/Card Converged.size.normal.chromium.png 385 Changed
vr-tests-react-components/Card Converged.appearance - Dark Mode.normal.chromium.png 518 Changed
vr-tests-react-components/Card Converged.appearance - High Contrast.normal.chromium.png 674 Changed
vr-tests-react-components/Card Converged - Disabled 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Card Converged - Disabled.appearance disabled - Outline.hover.chromium.png 33 Changed
vr-tests-react-components/Card Converged - Disabled.appearance disabled - Subtle - Dark Mode.hover.chromium.png 47 Changed
vr-tests-react-components/Card Converged - Selectable 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Card Converged - Selectable.appearance selectable - Subtle - High Contrast.selected.chromium.png 169 Changed
vr-tests-react-components/Card Converged - Selectable.appearance selectable - Subtle.selected.chromium.png 128 Changed
vr-tests-react-components/Checkbox Converged 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Checkbox Converged.disabled+checked.default.chromium.png 3 Changed
vr-tests-react-components/Checkbox Converged.disabled+mixed.default.chromium.png 2 Changed
vr-tests-react-components/Checkbox Converged.checked.rest.chromium.png 7 Changed
vr-tests-react-components/Checkbox Converged.large+mixed.default.chromium.png 13 Changed
vr-tests-react-components/Checkbox Converged.large+circular+checked.default.chromium.png 4 Changed
vr-tests-react-components/Checkbox Converged.mixed.rest.chromium.png 5 Changed
vr-tests-react-components/Combobox Converged 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Combobox Converged.With multiselect selection.hover.chromium.png 13 Changed
vr-tests-react-components/Dialog 7 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Dialog.dialog inside drawer default - High Contrast.chromium.png 6 Changed
vr-tests-react-components/Dialog.dialog inside drawer dimmed - Dark Mode.chromium.png 4 Changed
vr-tests-react-components/Dialog.dialog inside drawer dimmed.chromium.png 5 Changed
vr-tests-react-components/Dialog.title custom action - High Contrast.chromium.png 34 Changed
vr-tests-react-components/Dialog.title custom action - Dark Mode.chromium.png 22 Changed
vr-tests-react-components/Dialog.dialog inside drawer transparent - RTL.chromium.png 9 Changed
vr-tests-react-components/Dialog.title custom action.chromium.png 25 Changed
vr-tests-react-components/Drawer 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Drawer.inline drawer separator position start - Dark Mode.chromium.png 67 Changed
vr-tests-react-components/Drawer.inline drawer separator position start - High Contrast.chromium.png 99 Changed
vr-tests-react-components/Drawer.inline drawer.chromium.png 73 Changed
vr-tests-react-components/Drawer.overlay drawer position start - Dark Mode.chromium.png 67 Changed
vr-tests-react-components/Drawer.overlay drawer position start - High Contrast.chromium.png 99 Changed
vr-tests-react-components/Drawer.overlay drawer.chromium.png 73 Changed
vr-tests-react-components/Field 13 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Field.Checkbox.default.chromium.png 6 Changed
vr-tests-react-components/Field.ProgressBar.default.chromium.png 20 Changed
vr-tests-react-components/Field.RadioGroup.default.chromium.png 6 Changed
vr-tests-react-components/Field.Slider.default.chromium.png 6 Changed
vr-tests-react-components/Field.Select.default.chromium.png 6 Changed
vr-tests-react-components/Field.Switch.default.chromium.png 6 Changed
vr-tests-react-components/Field.SpinButton.default.chromium.png 25 Changed
vr-tests-react-components/Field.horizontal+longLabel.default.chromium.png 9 Changed
vr-tests-react-components/Field.validation-error.default.chromium.png 6 Changed
vr-tests-react-components/Field.validation-warning.default.chromium.png 9 Changed
vr-tests-react-components/Field.Textarea.default.chromium.png 6 Changed
vr-tests-react-components/Field.validation-success.default.chromium.png 5 Changed
vr-tests-react-components/Field.validationMessageIcon.default.chromium.png 9 Changed
vr-tests-react-components/InfoLabel 5 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/InfoLabel.default - High Contrast.rest.chromium.png 36 Changed
vr-tests-react-components/InfoLabel.required.rest.chromium.png 27 Changed
vr-tests-react-components/InfoLabel.size-small.rest.chromium.png 8 Changed
vr-tests-react-components/InfoLabel.wrap.rest.chromium.png 27 Changed
vr-tests-react-components/InfoLabel.sizes -- open.rest.chromium.png 20 Changed
vr-tests-react-components/Menu Converged - selection 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Menu Converged - selection.checkbox - Dark Mode.selected.chromium.png 5 Changed
vr-tests-react-components/Menu Converged - selection.checkbox.selected.chromium.png 6 Changed
vr-tests-react-components/Menu Converged - selection groups 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Menu Converged - selection groups.default - RTL.selected.chromium.png 5 Changed
vr-tests-react-components/MessageBar 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/MessageBar.Intents - High Contrast.default.chromium.png 79 Changed
vr-tests-react-components/MessageBar.Multiline Without Actions.default.chromium.png 51 Changed
vr-tests-react-components/MessageBar.Multiline.default.chromium.png 51 Changed
vr-tests-react-components/MessageBar.Intents - Dark Mode.default.chromium.png 36 Changed
vr-tests-react-components/MessageBar.Intents.default.chromium.png 51 Changed
vr-tests-react-components/MessageBar.Multiline No Actions.default.chromium.png 51 Changed
vr-tests-react-components/Persona Converged 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Persona Converged.basic - Dark Mode.normal.chromium.png 1 Changed
vr-tests-react-components/Persona Converged.basic - High Contrast.normal.chromium.png 3 Changed
vr-tests-react-components/Persona Converged.basic.normal.chromium.png 2 Changed
vr-tests-react-components/Persona Converged.textPosition.normal.chromium.png 6 Changed
vr-tests-react-components/Persona Converged.textAlignment.normal.chromium.png 4 Changed
vr-tests-react-components/Persona Converged.size-presence.normal.chromium.png 6 Changed
vr-tests-react-components/Positioning 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Positioning.Positioning end.chromium.png 625 Changed
vr-tests-react-components/Positioning.Positioning end.updated 2 times.chromium.png 868 Changed
vr-tests-react-components/PresenceBadge Converged - OOF status 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/PresenceBadge Converged - OOF status.default.chromium.png 94 Changed
vr-tests-react-components/PresenceBadge Converged - inverted background 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/PresenceBadge Converged - inverted background.default - High Contrast.default.chromium.png 373 Changed
vr-tests-react-components/PresenceBadge Converged - inverted background.default - Dark Mode.default.chromium.png 120 Changed
vr-tests-react-components/PresenceBadge Converged - inverted background.default.default.chromium.png 192 Changed
vr-tests-react-components/PresenceBadge Converged - sizes 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/PresenceBadge Converged - sizes.default - RTL.chromium.png 6 Changed
vr-tests-react-components/PresenceBadge Converged - status 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/PresenceBadge Converged - status.default - RTL.chromium.png 49 Changed
vr-tests-react-components/ProgressBar converged 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - Dark Mode.default.chromium.png 59 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - High Contrast.default.chromium.png 82 Changed
vr-tests-react-components/SearchBox Converged 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/SearchBox Converged.Appearance- filled-lighter.hover.chromium.png 33 Changed
vr-tests-react-components/SearchBox Converged.Disabled, appearance- filled-lighter.hover.chromium.png 11 Changed
vr-tests-react-components/SearchBox Converged.Disabled, appearance- underline.default.chromium.png 13 Changed
vr-tests-react-components/SearchBox Converged.Size- large.default.chromium.png 45 Changed
vr-tests-react-components/SearchBox Converged.Size- small.hover.chromium.png 18 Changed
vr-tests-react-components/SearchBox Converged.With value.focused.chromium.png 33 Changed
vr-tests-react-components/SpinButton Converged 42 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - Dark Mode.mouseDownIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - Dark Mode.focused.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - Dark Mode.hoverInput.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - Dark Mode.mouseDownDecrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - High Contrast.mouseDownDecrement.chromium.png 7 Changed
vr-tests-react-components/SpinButton Converged.Appearance- filled-lighter - High Contrast.rest.chromium.png 8 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound - Dark Mode.focused.chromium.png 2 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound - Dark Mode.hoverDecrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound - Dark Mode.mouseDownDecrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound - Dark Mode.rest.chromium.png 2 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound.hoverDecrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound.mouseDownDecrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Max Bound.rest.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound - Dark Mode.focused.chromium.png 2 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound - Dark Mode.mouseDownIncrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound - Dark Mode.hoverIncrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound.mouseDownIncrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound.rest.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.At Min Bound.hoverIncrement.chromium.png 3 Changed
vr-tests-react-components/SpinButton Converged.Display Value - Dark Mode.hoverDecrement.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Disabled.mouseDownDecrement.chromium.png 1 Changed
vr-tests-react-components/SpinButton Converged.Display Value - Dark Mode.focused.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Display Value - Dark Mode.mouseDownIncrement.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Display Value - Dark Mode.mouseDownDecrement.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Display Value - High Contrast.mouseDownDecrement.chromium.png 7 Changed
vr-tests-react-components/SpinButton Converged.Display Value - High Contrast.rest.chromium.png 8 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-darker.focused.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-darker.hoverIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-lighter.hoverDecrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-lighter.hoverIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-lighter.mouseDownDecrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-lighter.mouseDownIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- filled-lighter.rest.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- underline.hoverIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- underline.hoverDecrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- underline.mouseDownDecrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Invalid- underline.mouseDownIncrement.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Size- small - Dark Mode.default.chromium.png 4 Changed
vr-tests-react-components/SpinButton Converged.Size- medium (default).default.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Size- small - RTL.default.chromium.png 5 Changed
vr-tests-react-components/SpinButton Converged.Size- small - High Contrast.default.chromium.png 8 Changed
vr-tests-react-components/SpinButton Converged.With appearance override.default.chromium.png 9 Changed
vr-tests-react-components/SwatchPicker Converged 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/SwatchPicker Converged.shape.default.chromium.png 2 Changed
vr-tests-react-components/SwatchPicker Converged.spacing.default.chromium.png 2 Changed
vr-tests-react-components/SwatchPicker Converged.size.default.chromium.png 2 Changed
vr-tests-react-components/Table layout table 4 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Table layout table.multiselect (checked) - neutral - Dark Mode.chromium.png 22 Changed
vr-tests-react-components/Table layout table.multiselect (checked) - neutral.chromium.png 34 Changed
vr-tests-react-components/Table layout table.multiselect (mixed) - neutral - Dark Mode.chromium.png 12 Changed
vr-tests-react-components/Table layout table.multiselect (mixed) - neutral - RTL.chromium.png 19 Changed
vr-tests-react-components/TagPicker 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/TagPicker.disabled - Dark Mode.disabled input hover.chromium.png 658 Changed
vr-tests-react-components/TagPicker.disabled - High Contrast.disabled input hover.chromium.png 1319 Changed
vr-tests-react-components/TagPicker.disabled.disabled input hover.chromium.png 677 Changed
vr-tests-react-components/Toast 6 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Toast.Full Toast.Toast visible.chromium.png 36 Changed
vr-tests-react-components/Toast.Full Toast Inverted - High Contrast.Toast visible.chromium.png 54 Changed
vr-tests-react-components/Toast.Title Only Inverted - High Contrast.Toast visible.chromium.png 54 Changed
vr-tests-react-components/Toast.Title Only.Toast visible.chromium.png 36 Changed
vr-tests-react-components/Toast.Without Subtitle Inverted - High Contrast.Toast visible.chromium.png 54 Changed
vr-tests-react-components/Toast.Without Subtitle.Toast visible.chromium.png 36 Changed
vr-tests-react-components/Toolbar Converged 15 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Toolbar Converged.Default.Button Pressed.chromium.png 51 Changed
vr-tests-react-components/Toolbar Converged.Default.default.chromium.png 56 Changed
vr-tests-react-components/Toolbar Converged.Far Group.Button Pressed.chromium.png 28 Changed
vr-tests-react-components/Toolbar Converged.Far Group.default.chromium.png 33 Changed
vr-tests-react-components/Toolbar Converged.Large.Button Pressed.chromium.png 59 Changed
vr-tests-react-components/Toolbar Converged.Large.Toggle On.chromium.png 60 Changed
vr-tests-react-components/Toolbar Converged.Large.default.chromium.png 66 Changed
vr-tests-react-components/Toolbar Converged.Small.Button Pressed.chromium.png 51 Changed
vr-tests-react-components/Toolbar Converged.Small.default.chromium.png 56 Changed
vr-tests-react-components/Toolbar Converged.Transparent.Button Pressed.chromium.png 50 Changed
vr-tests-react-components/Toolbar Converged.Transparent.default.chromium.png 57 Changed
vr-tests-react-components/Toolbar Converged.Vertical Button.Button Pressed.chromium.png 8 Changed
vr-tests-react-components/Toolbar Converged.Vertical Button.default.chromium.png 6 Changed
vr-tests-react-components/Toolbar Converged.Vertical.Button Pressed.chromium.png 51 Changed
vr-tests-react-components/Toolbar Converged.Vertical.default.chromium.png 56 Changed
vr-tests-react-components/Tree 34 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Tree.default - Dark Mode.default.chromium.png 5 Changed
vr-tests-react-components/Tree.actions.default.chromium.png 6 Changed
vr-tests-react-components/Tree.actions - RTL.default.chromium.png 6 Changed
vr-tests-react-components/Tree.actions - Dark Mode.default.chromium.png 5 Changed
vr-tests-react-components/Tree.actions - High Contrast.default.chromium.png 10 Changed
vr-tests-react-components/Tree.default open tree - Dark Mode.default.chromium.png 7 Changed
vr-tests-react-components/Tree.default - RTL.default.chromium.png 5 Changed
vr-tests-react-components/Tree.default - High Contrast.default.chromium.png 10 Changed
vr-tests-react-components/Tree.default open tree - High Contrast.default.chromium.png 14 Changed
vr-tests-react-components/Tree.default.default.chromium.png 6 Changed
vr-tests-react-components/Tree.flat - RTL.default.chromium.png 11 Changed
vr-tests-react-components/Tree.default open tree.default.chromium.png 8 Changed
vr-tests-react-components/Tree.flat - Dark Mode.default.chromium.png 9 Changed
vr-tests-react-components/Tree.flat - High Contrast.default.chromium.png 19 Changed
vr-tests-react-components/Tree.flat tree single selection - Dark Mode.flat tree single selection selected 1.chromium.png 9 Changed
vr-tests-react-components/Tree.flat tree single selection - Dark Mode.chromium.png 9 Changed
vr-tests-react-components/Tree.flat tree single selection - High Contrast.flat tree single selection selected 1.chromium.png 17 Changed
vr-tests-react-components/Tree.flat tree single selection - High Contrast.chromium.png 19 Changed
vr-tests-react-components/Tree.flat tree single selection - RTL.chromium_1.png 11 Changed
vr-tests-react-components/Tree.flat tree single selection - RTL.flat tree single selection selected 1.chromium_2.png 12 Changed
vr-tests-react-components/Tree.flat tree single selection.flat tree single selection selected 1.chromium.png 12 Changed
vr-tests-react-components/Tree.flat tree single selection.chromium.png 11 Changed
vr-tests-react-components/Tree.layout - Dark Mode.default.chromium.png 115 Changed
vr-tests-react-components/Tree.flat.default.chromium.png 11 Changed
vr-tests-react-components/Tree.layout - High Contrast.default.chromium.png 176 Changed
vr-tests-react-components/Tree.persona - High Contrast.default.chromium.png 23 Changed
vr-tests-react-components/Tree.layout.default.chromium.png 148 Changed
vr-tests-react-components/Tree.layout - RTL.default.chromium.png 148 Changed
vr-tests-react-components/Tree.persona - Dark Mode.default.chromium.png 11 Changed
vr-tests-react-components/Tree.persona.default.chromium.png 29 Changed
vr-tests-react-components/Tree.size - Dark Mode.default.chromium.png 9 Changed
vr-tests-react-components/Tree.size.default.chromium.png 11 Changed
vr-tests-react-components/Tree.size - RTL.default.chromium.png 11 Changed
vr-tests-react-components/Tree.size - High Contrast.default.chromium.png 19 Changed
vr-tests-web-components/Badge 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-web-components/Badge. - Dark Mode.normal.chromium.png 443 Changed

There were 562 duplicate changes discarded. Check the build logs for more information.

import { Button, Tooltip } from '@fluentui/react-components';

import { TextItalic24Regular, TextUnderline24Regular, TextBold24Regular } from '@fluentui/react-icons';
import { TextItalicRegular, TextUnderlineRegular, TextBoldRegular } from '@fluentui/react-icons';

import { Scenario } from './utils';

Expand All @@ -12,15 +12,15 @@ export const ButtonsWithTooltip: React.FunctionComponent = () => {
<h1>Tooltip variants</h1>
<h2>Tooltips for text formatting icon-only buttons</h2>
<Tooltip relationship="label" content="Make text bold">
<Button icon={<TextBold24Regular />} />
<Button icon={<TextBoldRegular />} />
</Tooltip>

<Tooltip relationship="label" content="Make text underline">
<Button icon={<TextUnderline24Regular />} />
<Button icon={<TextUnderlineRegular />} />
</Tooltip>

<Tooltip relationship="label" content="Make text italic">
<Button icon={<TextItalic24Regular />} />
<Button icon={<TextItalicRegular />} />
</Tooltip>

<h2>Tooltip as an additional button description</h2>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import {
Divider,
makeStyles,
} from '@fluentui/react-components';
import { Send24Regular, Mic24Regular, PeopleRegular, PersonDelete24Regular } from '@fluentui/react-icons';
import { SendRegular, MicRegular, PeopleRegular, PersonDeleteRegular } from '@fluentui/react-icons';
import { FluentWapper } from './FluentUiWrapper.stories';

const useStyles = makeStyles({
Expand All @@ -33,23 +33,23 @@ const useStyles = makeStyles({

export const ActionAvoidBad = () => (
<FluentWapper>
<Button aria-label="Click here to send message " size="small" icon={<Send24Regular />} />
<Button aria-label="Click here to send message " size="small" icon={<SendRegular />} />
</FluentWapper>
);
export const ActionAvoidGood = () => (
<FluentWapper>
<Button aria-label="Send message" size="small" icon={<Send24Regular />} />
<Button aria-label="Send message" size="small" icon={<SendRegular />} />
</FluentWapper>
);

export const ComponentTypeAvoidBad = () => (
<FluentWapper>
<Button aria-label="Mute microphone button" size="small" icon={<Mic24Regular />} />
<Button aria-label="Mute microphone button" size="small" icon={<MicRegular />} />
</FluentWapper>
);
export const ComponentTypeAvoidGood = () => (
<FluentWapper>
<Button aria-label="Mute microphone" size="small" icon={<Mic24Regular />} />
<Button aria-label="Mute microphone" size="small" icon={<MicRegular />} />
</FluentWapper>
);

Expand Down Expand Up @@ -205,7 +205,7 @@ export const ReuseVisibleTextBad = () => {
<div className={styles.visibleTextContainer}>
<Avatar />
<span>Robert Tolbert</span>
<Button icon={<PersonDelete24Regular />} aria-label="Remove Robert Tolbert" />
<Button icon={<PersonDeleteRegular />} aria-label="Remove Robert Tolbert" />
</div>
</FluentWapper>
);
Expand All @@ -220,7 +220,7 @@ export const ReuseVisibleTextGood = () => {
<Avatar />
<span id="userNameId">Robert Tolbert</span>
<Button
icon={<PersonDelete24Regular />}
icon={<PersonDeleteRegular />}
aria-label="Remove"
id="removeButtonId"
aria-labelledby="removeButtonId userNameId"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ After:
```tsx
import * as React from 'react';
import { Button, Card, CardFooter, makeStyles, shorthands } from '@fluentui/react-components';
import { Pin20Regular, Share20Regular, ServiceBell20Regular, Eye20Regular } from '@fluentui/react-icons';
import { PinRegular, ShareRegular, ServiceBellRegular, EyeRegular } from '@fluentui/react-icons';

const useStyles = makeStyles({
card: {
Expand Down Expand Up @@ -97,16 +97,16 @@ export const Default = () => {
action={
views > 0 ? (
<span className={styles.actions}>
<Eye20Regular aria-hidden />
<EyeRegular aria-hidden />
<span>{views}</span>
<span className={styles.visuallyHidden}> views</span>
</span>
) : undefined
}
>
<Button appearance="transparent" icon={<Share20Regular />} aria-label="Share document" />
<Button appearance="transparent" icon={<Pin20Regular />} aria-label="Pin document" />
<Button appearance="transparent" icon={<ServiceBell20Regular />} aria-label="Manage document notifications" />
<Button appearance="transparent" icon={<ShareRegular />} aria-label="Share document" />
<Button appearance="transparent" icon={<PinRegular />} aria-label="Pin document" />
<Button appearance="transparent" icon={<ServiceBellRegular />} aria-label="Manage document notifications" />
</CardFooter>
</Card>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ An equivalent `RadioGroup` implementation:
import * as React from 'react';
import { makeStyles, shorthands, Label, Radio, RadioGroup } from '@fluentui/react-components';
import { useId } from '@fluentui/react-utilities';
import { AnimalCat24Regular } from '@fluentui/react-icons';
import { AnimalCatRegular } from '@fluentui/react-icons';

const useIconOptionStyles = makeStyles({
root: {
Expand Down Expand Up @@ -155,7 +155,7 @@ const RadioGroupCustomOptionExample = () => {
className: labelStyles.root,
children: (
<>
A <AnimalCat24Regular />
A <AnimalCatRegular />
</>
),
}}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,9 @@
import * as React from 'react';
import { Steps } from 'storywright';
import {
Breadcrumb,
BreadcrumbButton,
BreadcrumbProps,
BreadcrumbItem,
BreadcrumbDivider,
} from '@fluentui/react-breadcrumb';
import { bundleIcon, CalendarMonth20Filled, CalendarMonth20Regular } from '@fluentui/react-icons';
const CalendarMonth = bundleIcon(CalendarMonth20Filled, CalendarMonth20Regular);
import type { BreadcrumbProps } from '@fluentui/react-breadcrumb';
import { Breadcrumb, BreadcrumbButton, BreadcrumbItem, BreadcrumbDivider } from '@fluentui/react-breadcrumb';
import { bundleIcon, CalendarMonthFilled, CalendarMonthRegular } from '@fluentui/react-icons';
const CalendarMonth = bundleIcon(CalendarMonthFilled, CalendarMonthRegular);

export const steps = new Steps()
.snapshot('default')
Expand Down
Loading
Loading