Skip to content
Open
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: 3 additions & 3 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -280,8 +280,8 @@ packages/react-components/react-migration-v0-v9/library @microsoft/teams-prg
packages/react-components/react-migration-v0-v9/stories @microsoft/teams-prg
packages/react-components/react-datepicker-compat/library @microsoft/cxe-prg @ValentinaKozlova
packages/react-components/react-datepicker-compat/stories @microsoft/cxe-prg @ValentinaKozlova
packages/react-components/react-migration-v8-v9/library @microsoft/cxe-prg @geoffcoxmsft @dmytrokirpa
packages/react-components/react-migration-v8-v9/stories @microsoft/cxe-prg @geoffcoxmsft @dmytrokirpa
packages/react-components/react-migration-v8-v9/library @microsoft/cxe-prg @dmytrokirpa
packages/react-components/react-migration-v8-v9/stories @microsoft/cxe-prg @dmytrokirpa
packages/react-components/react-breadcrumb/library @microsoft/cxe-prg
packages/react-components/react-breadcrumb/stories @microsoft/cxe-prg
packages/react-components/react-drawer/library @microsoft/cxe-prg @marcosmoura
Expand Down Expand Up @@ -387,7 +387,7 @@ packages/react/src/components/WeeklyDayPicker @microsoft/cxe-red

## Theming and styling
packages/react/src/utilities/ThemeProvider @microsoft/cxe-red @dzearing
packages/fluent2-theme @microsoft/cxe-red @geoffcoxmsft
packages/fluent2-theme @microsoft/cxe-red
## Experiments
packages/react-experiments @microsoft/cxe-red
packages/react-experiments/src/components/Signals @ThomasMichon
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "minor",
"comment": "feat: add support for pinned items",
"packageName": "@fluentui/priority-overflow",
"email": "olfedias@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "fix: prevent custom props from leaking to the DOM ",
"packageName": "@fluentui/react-button",
"email": "dmytrokirpa@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "fix: prevent custom props from leaking to the DOM",
"packageName": "@fluentui/react-carousel",
"email": "dmytrokirpa@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "A11y fix: updated focus-visible outline data",
"packageName": "@fluentui/react-charts",
"email": "132879294+v-baambati@users.noreply.github.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "fix: Dialog Component: can't scroll with keyboard in 'Long Content' ",
"packageName": "@fluentui/react-dialog",
"email": "krasnoff.kobi@gmail.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "minor",
"comment": "feat: add support for pinned items",
"packageName": "@fluentui/react-overflow",
"email": "olfedias@microsoft.com",
"dependentChangeType": "patch"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "patch",
"comment": "refactor: add base state hooks for Switch component",
"packageName": "@fluentui/react-switch",
"email": "copilot@github.com",
"dependentChangeType": "patch"
}
15 changes: 15 additions & 0 deletions packages/charts/chart-web-components/CHANGELOG.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
{
"name": "@fluentui/chart-web-components",
"entries": [
{
"date": "Wed, 04 Feb 2026 04:08:37 GMT",
"tag": "@fluentui/chart-web-components_v0.0.63",
"version": "0.0.63",
"comments": {
"patch": [
{
"author": "beachball",
"package": "@fluentui/chart-web-components",
"comment": "Bump @fluentui/web-components to v3.0.0-rc.5",
"commit": "31c5eb7c476e7cfe8ef3b172d20357684cf6b101"
}
]
}
},
{
"date": "Fri, 23 Jan 2026 04:07:04 GMT",
"tag": "@fluentui/chart-web-components_v0.0.62",
Expand Down
11 changes: 10 additions & 1 deletion packages/charts/chart-web-components/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,18 @@
# Change Log - @fluentui/chart-web-components

This log was last generated on Fri, 23 Jan 2026 04:07:04 GMT and should not be manually modified.
This log was last generated on Wed, 04 Feb 2026 04:08:37 GMT and should not be manually modified.

<!-- Start content -->

## [0.0.63](https://github.com/microsoft/fluentui/tree/@fluentui/chart-web-components_v0.0.63)

Wed, 04 Feb 2026 04:08:37 GMT
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/chart-web-components_v0.0.62..@fluentui/chart-web-components_v0.0.63)

### Patches

- Bump @fluentui/web-components to v3.0.0-rc.5 ([PR #35716](https://github.com/microsoft/fluentui/pull/35716) by beachball)

## [0.0.62](https://github.com/microsoft/fluentui/tree/@fluentui/chart-web-components_v0.0.62)

Fri, 23 Jan 2026 04:07:04 GMT
Expand Down
4 changes: 2 additions & 2 deletions packages/charts/chart-web-components/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@fluentui/chart-web-components",
"description": "A library of Fluent Chart Web Components",
"version": "0.0.62",
"version": "0.0.63",
"author": {
"name": "Microsoft"
},
Expand Down Expand Up @@ -70,7 +70,7 @@
"dependencies": {
"@microsoft/fast-web-utilities": "^6.0.0",
"@fluentui/tokens": "^1.0.0-alpha.23",
"@fluentui/web-components": "^3.0.0-rc.4",
"@fluentui/web-components": "^3.0.0-rc.5",
"@types/d3-selection": "^3.0.0",
"@types/d3-shape": "^3.0.0",
"d3-selection": "^3.0.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ const useStyles = makeStyles({
[HighContrastSelector]: {
color: 'WindowText',
forcedColorAdjust: 'none',
'&:focus-visible': {
outline: `${tokens.strokeWidthThick} solid canvasText`,
outlineOffset: `calc(${tokens.strokeWidthThick} * -1)`,
},
},
'&:hover': {
[HighContrastSelector]: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,17 +56,17 @@ export const HeatMapChartBasic: React.FunctionComponent<{}> = (): JSXElement =>
{
x: xPoint[1],
y: yPoint[0],
value: 250,
rectText: 250,
ratio: [250, 2043],
value: 310,
rectText: 310,
ratio: [310, 2043],
descriptionMessage: 'a sudden rise of 150 units in Ohio today',
},
{
x: xPoint[2],
y: yPoint[0],
value: 235,
rectText: 235,
ratio: [235, 2043],
value: 320,
rectText: 320,
ratio: [320, 2043],
descriptionMessage: 'air quality seems to have decreased by only 15 units from yesterday',
},
{
Expand Down Expand Up @@ -334,10 +334,10 @@ export const HeatMapChartBasic: React.FunctionComponent<{}> = (): JSXElement =>
height={height}
domainValuesForColorScale={[0, 200, 400, 600]}
rangeValuesForColorScale={[
getColorFromToken(DataVizPalette.highSuccess),
getColorFromToken(DataVizPalette.success),
getColorFromToken(DataVizPalette.error),
getColorFromToken(DataVizPalette.highError),
getColorFromToken(DataVizPalette.color5),
getColorFromToken(DataVizPalette.color6),
getColorFromToken(DataVizPalette.color3),
getColorFromToken(DataVizPalette.color10),
]}
reflowProps={{ mode: 'min-width' }}
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ export interface OverflowItemEntry {
// (undocumented)
groupId?: string;
id: string;
pinned?: boolean;
priority: number;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,11 @@ export function createOverflowManager(): OverflowManager {
return lte ? 1 : -1;
}

// Pinned items have "infinite" priority - they should never be hidden
if (lte.pinned !== rte.pinned) {
return lte.pinned ? 1 : -1;
}

if (lte.priority !== rte.priority) {
return lte.priority > rte.priority ? 1 : -1;
}
Expand Down Expand Up @@ -175,6 +180,13 @@ export function createOverflowManager(): OverflowManager {

// Remove items until there's no more overflow
while (occupiedSize() > availableSize && visibleItemQueue.size() > options.minimumVisible) {
const nextItemId = visibleItemQueue.peek();

// Never hide pinned items - they should always remain visible
if (nextItemId && overflowItems[nextItemId]?.pinned) {
break;
}

hideItem();
}
}
Expand Down
9 changes: 8 additions & 1 deletion packages/react-components/priority-overflow/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,18 @@ export interface OverflowItemEntry {
id: string;

groupId?: string;

/**
* If true, the item will never overflow and will always be visible.
* Pinned items are excluded from the overflow count.
* @default false
*/
pinned?: boolean;
}

export interface OverflowDividerEntry {
/**
* HTML element that will be disappear when overflowed
* HTML element that will disappear when overflowed
*/
element: HTMLElement;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,8 @@
export type {
CompoundButtonBaseProps,
CompoundButtonProps,
CompoundButtonSlots,
CompoundButtonBaseState,
CompoundButtonState,
} from './components/CompoundButton/index';
export type { CompoundButtonProps, CompoundButtonSlots, CompoundButtonState } from './components/CompoundButton/index';
export {
CompoundButton,
compoundButtonClassNames,
renderCompoundButton_unstable,
useCompoundButtonStyles_unstable,
useCompoundButton_unstable,
useCompoundButtonBase_unstable,
} from './components/CompoundButton/index';
Original file line number Diff line number Diff line change
@@ -1,15 +1,8 @@
export type {
MenuButtonBaseProps,
MenuButtonProps,
MenuButtonSlots,
MenuButtonBaseState,
MenuButtonState,
} from './components/MenuButton/index';
export type { MenuButtonProps, MenuButtonSlots, MenuButtonState } from './components/MenuButton/index';
export {
MenuButton,
menuButtonClassNames,
renderMenuButton_unstable,
useMenuButtonStyles_unstable,
useMenuButton_unstable,
useMenuButtonBase_unstable,
} from './components/MenuButton/index';
Original file line number Diff line number Diff line change
@@ -1,15 +1,8 @@
export type {
SplitButtonBaseProps,
SplitButtonProps,
SplitButtonSlots,
SplitButtonBaseState,
SplitButtonState,
} from './components/SplitButton/index';
export type { SplitButtonProps, SplitButtonSlots, SplitButtonState } from './components/SplitButton/index';
export {
SplitButton,
renderSplitButton_unstable,
splitButtonClassNames,
useSplitButtonStyles_unstable,
useSplitButton_unstable,
useSplitButtonBase_unstable,
} from './components/SplitButton/index';
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
export type {
ToggleButtonBaseProps,
ToggleButtonProps,
ToggleButtonBaseState,
ToggleButtonState,
ToggleButtonBaseState,
} from './components/ToggleButton/index';
export {
ToggleButton,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,14 +69,7 @@ export type ButtonProps = ComponentProps<ButtonSlots> & {
size?: ButtonSize;
};

/**
* Internal use only: lists prop names related to Button design for use within Button components.
*
* @internal
*/
export type ButtonDesignPropNames = 'appearance' | 'size' | 'shape';

export type ButtonBaseProps = DistributiveOmit<ButtonProps, ButtonDesignPropNames>;
export type ButtonBaseProps = DistributiveOmit<ButtonProps, 'appearance' | 'size' | 'shape'>;

export type ButtonState = ComponentState<ButtonSlots> &
Required<Pick<ButtonProps, 'appearance' | 'disabledFocusable' | 'disabled' | 'iconPosition' | 'shape' | 'size'>> & {
Expand All @@ -88,4 +81,4 @@ export type ButtonState = ComponentState<ButtonSlots> &
iconOnly: boolean;
};

export type ButtonBaseState = DistributiveOmit<ButtonState, ButtonDesignPropNames>;
export type ButtonBaseState = DistributiveOmit<ButtonState, 'appearance' | 'size' | 'shape'>;
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,5 @@ export { Button } from './Button';
// Explicit exports to omit ButtonCommons
export type { ButtonBaseProps, ButtonProps, ButtonSlots, ButtonBaseState, ButtonState } from './Button.types';
export { renderButton_unstable } from './renderButton';
export { useButton_unstable } from './useButton';
export { useButtonBase_unstable } from './useButtonBase';
export { useButton_unstable, useButtonBase_unstable } from './useButton';
export { buttonClassNames, useButtonStyles_unstable } from './useButtonStyles.styles';
Loading