Skip to content

feat(react-tag-picker): add base hooks for TagPicker components#35913

Open
dmytrokirpa wants to merge 2 commits intomicrosoft:masterfrom
dmytrokirpa:feat/react-tag-picker-base-hooks
Open

feat(react-tag-picker): add base hooks for TagPicker components#35913
dmytrokirpa wants to merge 2 commits intomicrosoft:masterfrom
dmytrokirpa:feat/react-tag-picker-base-hooks

Conversation

@dmytrokirpa
Copy link
Copy Markdown
Contributor

@dmytrokirpa dmytrokirpa commented Mar 26, 2026

Summary

  • Adds useTagPickerBase_unstable for TagPicker (omits size, appearance)
  • Adds useTagPickerButtonBase_unstable for TagPickerButton (omits size)
  • Adds useTagPickerControlBase_unstable for TagPickerControl (omits size, appearance; expandIcon without default icon children)
  • Adds useTagPickerGroupBase_unstable for TagPickerGroup (calls useTagGroupBase_unstable, omits size/appearance from context)
  • Adds useTagPickerInputBase_unstable for TagPickerInput (omits size)
  • Exports new hooks and Base*Props/Base*State types from package index
  • TagPickerList, TagPickerOption, TagPickerOptionGroup skipped (no design-only state props)

Part of the base state hooks RFC: docs/react-v9/contributing/rfcs/react-components/convergence/base-state-hooks.md

Test plan

  • Existing tests pass (yarn jest react-tag-picker)
  • Build passes (yarn build --to @fluentui/react-tag-picker)
  • Lint passes

🤖 Generated with Claude Code

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 26, 2026

📊 Bundle size report

Package & Exports Baseline (minified/GZIP) PR Change
react-components
react-components: entire library
1.3 MB
324.826 kB
1.3 MB
324.879 kB
315 B
53 B
react-tag-picker
@fluentui/react-tag-picker - package
186.766 kB
55.907 kB
187.171 kB
55.974 kB
405 B
67 B
Unchanged fixtures
Package & Exports Size (minified/GZIP)
react-components
react-components: Button, FluentProvider & webLightTheme
70.397 kB
19.96 kB
react-components
react-components: Accordion, Button, FluentProvider, Image, Menu, Popover
236.774 kB
68.762 kB
react-components
react-components: FluentProvider & webLightTheme
43.612 kB
14.022 kB
react-portal-compat
PortalCompatProvider
8.386 kB
2.624 kB
react-timepicker-compat
TimePicker
108.565 kB
35.848 kB
🤖 This report was generated against a8c2f2d833c1456244655207b23f044992dae6fb

@github-actions
Copy link
Copy Markdown

Pull request demo site: URL

@@ -0,0 +1,7 @@
{
Copy link
Copy Markdown

@github-actions github-actions bot Mar 26, 2026

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/Charts-DonutChart 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Charts-DonutChart.Dynamic - Dark Mode.default.chromium.png 7530 Changed
vr-tests-react-components/Charts-DonutChart.Dynamic - RTL.default.chromium.png 5570 Changed
vr-tests-react-components/Charts-DonutChart.Dynamic.default.chromium.png 5581 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default.submenus open.chromium.png 605 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default - RTL.submenus open.chromium.png 599 Changed
vr-tests-react-components/Positioning 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Positioning.Positioning end.chromium.png 8 Changed
vr-tests-react-components/Positioning.Positioning end.updated 2 times.chromium.png 858 Changed
vr-tests-react-components/ProgressBar converged 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - Dark Mode.default.chromium.png 25 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - High Contrast.default.chromium.png 159 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness.default.chromium.png 27 Changed
vr-tests-react-components/TagPicker 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/TagPicker.disabled - RTL.disabled input hover.chromium.png 635 Changed
vr-tests-react-components/TagPicker.disabled.disabled input hover.chromium.png 677 Changed

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

@dmytrokirpa dmytrokirpa force-pushed the feat/react-tag-picker-base-hooks branch from d4ec30e to 9f68ccb Compare April 15, 2026 12:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant