-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update V9 ComponentCommons type to ComponentCommonsUnstable #21607
Conversation
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit 0b8c83e:
|
📊 Bundle size reportUnchanged fixtures
|
Asset size changesSize Auditor did not detect a change in bundle size for any component! Baseline commit: c0d4e63ee58e60e2c6674efbacc0783cd520984e (build) |
Perf Analysis (
|
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
FluentProviderWithTheme | virtual-rerender | 111 | 102 | 10 | Possible regression |
All results
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
Avatar | mount | 709 | 715 | 5000 | |
BaseButton | mount | 795 | 804 | 5000 | |
Breadcrumb | mount | 2265 | 2286 | 1000 | |
ButtonNext | mount | 409 | 418 | 5000 | |
Checkbox | mount | 1342 | 1338 | 5000 | |
CheckboxBase | mount | 1121 | 1119 | 5000 | |
ChoiceGroup | mount | 4131 | 4121 | 5000 | |
ComboBox | mount | 865 | 856 | 1000 | |
CommandBar | mount | 8794 | 8818 | 1000 | |
ContextualMenu | mount | 7365 | 7327 | 1000 | |
DefaultButton | mount | 1003 | 1015 | 5000 | |
DetailsRow | mount | 3248 | 3267 | 5000 | |
DetailsRowFast | mount | 3268 | 3212 | 5000 | |
DetailsRowNoStyles | mount | 3088 | 3062 | 5000 | |
Dialog | mount | 2242 | 2241 | 1000 | |
DocumentCardTitle | mount | 151 | 169 | 1000 | |
Dropdown | mount | 2831 | 2831 | 5000 | |
FluentProviderNext | mount | 1687 | 1762 | 5000 | |
FluentProviderWithTheme | mount | 170 | 161 | 10 | |
FluentProviderWithTheme | virtual-rerender | 111 | 102 | 10 | Possible regression |
FluentProviderWithTheme | virtual-rerender-with-unmount | 169 | 177 | 10 | |
FocusTrapZone | mount | 1607 | 1598 | 5000 | |
FocusZone | mount | 1528 | 1563 | 5000 | |
IconButton | mount | 1535 | 1519 | 5000 | |
Label | mount | 333 | 328 | 5000 | |
Layer | mount | 2573 | 2610 | 5000 | |
Link | mount | 429 | 441 | 5000 | |
MakeStyles | mount | 1492 | 1514 | 50000 | |
MenuButton | mount | 1293 | 1269 | 5000 | |
MessageBar | mount | 1756 | 1730 | 5000 | |
Nav | mount | 2874 | 2891 | 1000 | |
OverflowSet | mount | 999 | 986 | 5000 | |
Panel | mount | 2183 | 2176 | 1000 | |
Persona | mount | 761 | 750 | 1000 | |
Pivot | mount | 1245 | 1281 | 1000 | |
PrimaryButton | mount | 1139 | 1142 | 5000 | |
Rating | mount | 6645 | 6605 | 5000 | |
SearchBox | mount | 1172 | 1164 | 5000 | |
Shimmer | mount | 2235 | 2205 | 5000 | |
Slider | mount | 1731 | 1689 | 5000 | |
SpinButton | mount | 4349 | 4344 | 5000 | |
Spinner | mount | 394 | 388 | 5000 | |
SplitButton | mount | 2722 | 2731 | 5000 | |
Stack | mount | 471 | 475 | 5000 | |
StackWithIntrinsicChildren | mount | 2006 | 2001 | 5000 | |
StackWithTextChildren | mount | 4511 | 4518 | 5000 | |
SwatchColorPicker | mount | 9924 | 9848 | 5000 | |
TagPicker | mount | 2273 | 2270 | 5000 | |
TeachingBubble | mount | 11390 | 11343 | 5000 | |
Text | mount | 403 | 387 | 5000 | |
TextField | mount | 1227 | 1247 | 5000 | |
ThemeProvider | mount | 1055 | 1038 | 5000 | |
ThemeProvider | virtual-rerender | 554 | 555 | 5000 | |
ThemeProvider | virtual-rerender-with-unmount | 1614 | 1615 | 5000 | |
Toggle | mount | 710 | 713 | 5000 | |
buttonNative | mount | 127 | 134 | 5000 |
Perf Analysis (@fluentui/react-northstar
)
so what was already done for react-components suite is to get rid of those type as part of public API surface. The general agreement was that we dont wanna expose Based on that, I'd suggest to be consistent with our patterns/public apis thus rather then rename, I'd remove all the exports from packages and enable our lint rule as was done #21195.
|
Talked to @GeoffCox about our options here, and we're leaning towards the rename for a couple reasons:
@JustSlone is going to confirm with LT in the morning before making any final decisions here. |
@Hotell ButtonCommons is used in other button type files fluentui/packages/react-button/src/components/CompoundButton/CompoundButton.types.ts Lines 1 to 19 in 9ba6686
|
Closing this PR down and going with the approach in #21660, leaving the type name unchanged, but not exporting them from the top level. |
Pull request was closed
We plan to deprecate and get rid of the commons type, and while the commons type is not exported from react-components, it is exported from the individual component. Following the same 'unstable' function approach we took for some of our unstable functions, this change informs downstream users that this type could change in the future.
Could also change this to XCommonsDeprecated too, but this works fine and is consistent.