Skip to content
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

Scaffold react-skeleton package #25435

Merged
merged 3 commits into from
Oct 31, 2022

Conversation

tomi-msft
Copy link
Contributor

This PR is to scaffold the react-skeleton package. A SPEC PR will follow, followed by initial implementation. Tracking with #25275

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 28, 2022

📊 Bundle size report

Unchanged fixtures
Package & Exports Size (minified/GZIP)
global-context
createContext
533 B
341 B
global-context
createContextSelector
554 B
348 B
priority-overflow
createOverflowManager
3.153 kB
1.299 kB
react-accordion
Accordion (including children components)
79.243 kB
24.436 kB
react-alert
Alert
84.688 kB
21.233 kB
react-avatar
Avatar
48.874 kB
13.864 kB
react-avatar
AvatarGroup
14.996 kB
6.013 kB
react-avatar
AvatarGroupItem
63.452 kB
17.959 kB
react-badge
Badge
22.646 kB
7.228 kB
react-badge
CounterBadge
23.536 kB
7.512 kB
react-badge
PresenceBadge
24.096 kB
7.09 kB
react-button
Button
36.849 kB
9.907 kB
react-button
CompoundButton
43.874 kB
11.123 kB
react-button
MenuButton
39.543 kB
10.807 kB
react-button
SplitButton
46.989 kB
12.192 kB
react-button
ToggleButton
52.716 kB
11.381 kB
react-card
Card - All
67.664 kB
19.635 kB
react-card
Card
63.346 kB
18.539 kB
react-card
CardFooter
8.607 kB
3.622 kB
react-card
CardHeader
9.65 kB
3.962 kB
react-card
CardPreview
8.708 kB
3.678 kB
react-combobox
Combobox (including child components)
75.85 kB
24.632 kB
react-combobox
Dropdown (including child components)
75.579 kB
24.594 kB
react-components
react-components: Button, FluentProvider & webLightTheme
62.94 kB
17.663 kB
react-components
react-components: Accordion, Button, FluentProvider, Image, Menu, Popover
189.603 kB
52.909 kB
react-components
react-components: FluentProvider & webLightTheme
33.446 kB
11.033 kB
react-dialog
Dialog (including children components)
83.147 kB
24.799 kB
react-divider
Divider
16.505 kB
5.925 kB
react-image
Image
10.826 kB
4.286 kB
react-infobutton
InfoButton
7.742 kB
3.265 kB
react-input
Input
24.428 kB
7.899 kB
react-label
Label
9.384 kB
3.883 kB
react-link
Link
11.852 kB
4.888 kB
react-menu
Menu (including children components)
116.78 kB
36.112 kB
react-menu
Menu (including selectable components)
119.849 kB
36.635 kB
react-overflow
hooks only
11.004 kB
4.188 kB
react-persona
Persona
53.992 kB
15.25 kB
react-popover
Popover
103.342 kB
31.82 kB
react-portal
Portal
10.628 kB
3.899 kB
react-portal-compat
PortalCompatProvider
5.857 kB
1.978 kB
react-positioning
usePositioning
19.724 kB
7.415 kB
react-progress
Progress
13.131 kB
5.039 kB
react-provider
FluentProvider
15.807 kB
5.909 kB
react-radio
Radio
36.436 kB
12.126 kB
react-radio
RadioGroup
14.294 kB
5.723 kB
react-select
Select
23.255 kB
7.954 kB
react-slider
Slider
32.108 kB
10.195 kB
react-spinbutton
SpinButton
45.826 kB
12.858 kB
react-spinner
Spinner
20.023 kB
6.461 kB
react-switch
Switch
33.388 kB
10.578 kB
react-text
Text - Default
11.828 kB
4.627 kB
react-text
Text - Wrappers
15.138 kB
5.064 kB
react-textarea
Textarea
25.687 kB
8.331 kB
react-theme
Single theme token import
69 B
89 B
react-theme
Teams: all themes
29.65 kB
6.444 kB
react-theme
Teams: Light theme
17.486 kB
5.057 kB
react-tooltip
Tooltip
41.718 kB
14.687 kB
react-utilities
SSRProvider
180 B
159 B
🤖 This report was generated against acce21b88a9bbd59651661d87cc964ce2ff5ff28

@codesandbox-ci
Copy link

codesandbox-ci bot commented Oct 28, 2022

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 edb4314:

Sandbox Source
@fluentui/react 8 starter Configuration
@fluentui/react-components 9 starter Configuration

@size-auditor
Copy link

size-auditor bot commented Oct 28, 2022

Asset size changes

Size Auditor did not detect a change in bundle size for any component!

Baseline commit: acce21b88a9bbd59651661d87cc964ce2ff5ff28 (build)

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 28, 2022

Perf Analysis (@fluentui/react-northstar)

Perf tests with no regressions
Scenario Current PR Ticks Baseline Ticks Ratio
AccordionMinimalPerf.default 129 117 1.1:1
TreeWith60ListItems.default 140 127 1.1:1
AvatarMinimalPerf.default 167 157 1.06:1
FlexMinimalPerf.default 265 251 1.06:1
VideoMinimalPerf.default 630 596 1.06:1
ImageMinimalPerf.default 357 340 1.05:1
ButtonMinimalPerf.default 141 136 1.04:1
LabelMinimalPerf.default 337 325 1.04:1
PortalMinimalPerf.default 145 139 1.04:1
SegmentMinimalPerf.default 313 301 1.04:1
AlertMinimalPerf.default 224 218 1.03:1
FormMinimalPerf.default 340 331 1.03:1
AnimationMinimalPerf.default 471 463 1.02:1
PopupMinimalPerf.default 564 552 1.02:1
ProviderMergeThemesPerf.default 1014 997 1.02:1
TableManyItemsPerf.default 1580 1556 1.02:1
CustomToolbarPrototype.default 2185 2133 1.02:1
BoxMinimalPerf.default 299 297 1.01:1
ButtonOverridesMissPerf.default 1021 1011 1.01:1
ButtonSlotsPerf.default 421 416 1.01:1
ChatDuplicateMessagesPerf.default 208 206 1.01:1
ChatMinimalPerf.default 632 627 1.01:1
CheckboxMinimalPerf.default 1546 1532 1.01:1
DropdownMinimalPerf.default 2178 2165 1.01:1
EmbedMinimalPerf.default 2651 2625 1.01:1
HeaderSlotsPerf.default 675 666 1.01:1
InputMinimalPerf.default 855 843 1.01:1
LayoutMinimalPerf.default 323 319 1.01:1
SkeletonMinimalPerf.default 304 300 1.01:1
SplitButtonMinimalPerf.default 3263 3242 1.01:1
StatusMinimalPerf.default 615 607 1.01:1
TableMinimalPerf.default 358 356 1.01:1
ToolbarMinimalPerf.default 796 789 1.01:1
AttachmentSlotsPerf.default 869 868 1:1
CardMinimalPerf.default 461 463 1:1
DatepickerMinimalPerf.default 4673 4695 1:1
DialogMinimalPerf.default 689 687 1:1
GridMinimalPerf.default 295 295 1:1
HeaderMinimalPerf.default 314 314 1:1
ListWith60ListItems.default 500 500 1:1
MenuButtonMinimalPerf.default 1355 1349 1:1
ProviderMinimalPerf.default 317 318 1:1
SliderMinimalPerf.default 1229 1230 1:1
TextAreaMinimalPerf.default 406 404 1:1
CarouselMinimalPerf.default 358 362 0.99:1
DividerMinimalPerf.default 313 315 0.99:1
ItemLayoutMinimalPerf.default 968 974 0.99:1
RosterPerf.default 1678 1691 0.99:1
ReactionMinimalPerf.default 329 332 0.99:1
IconMinimalPerf.default 566 574 0.99:1
TextMinimalPerf.default 302 306 0.99:1
TooltipMinimalPerf.default 1861 1875 0.99:1
TreeMinimalPerf.default 689 695 0.99:1
DropdownManyItemsPerf.default 533 546 0.98:1
ListMinimalPerf.default 439 448 0.98:1
MenuMinimalPerf.default 717 735 0.98:1
RefMinimalPerf.default 178 182 0.98:1
ChatWithPopoverPerf.default 289 297 0.97:1
LoaderMinimalPerf.default 266 273 0.97:1
RadioGroupMinimalPerf.default 382 392 0.97:1
ListCommonPerf.default 501 523 0.96:1
ListNestedPerf.default 464 483 0.96:1
AttachmentMinimalPerf.default 116 124 0.94:1

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 28, 2022

Perf Analysis (@fluentui/react)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
BaseButton mount 1196 1183 5000
Breadcrumb mount 2810 2788 1000
Checkbox mount 2676 2679 5000
CheckboxBase mount 2375 2365 5000
ChoiceGroup mount 4192 4264 5000
ComboBox mount 1177 1152 1000
CommandBar mount 9300 9261 1000
ContextualMenu mount 10245 10258 1000
DefaultButton mount 1362 1335 5000
DetailsRow mount 3395 3361 5000
DetailsRowFast mount 3329 3413 5000
DetailsRowNoStyles mount 3241 3251 5000
Dialog mount 2914 2985 1000
DocumentCardTitle mount 582 586 1000
Dropdown mount 3179 3179 5000
FocusTrapZone mount 1926 1960 5000
FocusZone mount 1971 1953 5000
GroupedList mount 48293 53003 2
GroupedList virtual-rerender 23196 23040 2
GroupedList virtual-rerender-with-unmount 82522 82363 2
GroupedListV2 mount 555 554 2
GroupedListV2 virtual-rerender 542 525 2
GroupedListV2 virtual-rerender-with-unmount 568 544 2
IconButton mount 1803 1797 5000
Label mount 758 755 5000
Layer mount 4160 4128 5000
Link mount 850 853 5000
MenuButton mount 1609 1609 5000
MessageBar mount 2341 2375 5000
Nav mount 3067 3036 1000
OverflowSet mount 1409 1411 5000
Panel mount 2497 2458 1000
Persona mount 1252 1253 1000
Pivot mount 1518 1533 1000
PrimaryButton mount 1492 1499 5000
Rating mount 7005 7024 5000
SearchBox mount 1485 1501 5000
Shimmer mount 2940 2954 5000
Slider mount 2130 2108 5000
SpinButton mount 4250 4269 5000
Spinner mount 834 825 5000
SplitButton mount 2845 2812 5000
Stack mount 861 876 5000
StackWithIntrinsicChildren mount 2351 2366 5000
StackWithTextChildren mount 5028 5028 5000
SwatchColorPicker mount 9513 9519 5000
TagPicker mount 2336 2325 5000
TeachingBubble mount 76979 77491 5000
Text mount 820 817 5000
TextField mount 1574 1569 5000
ThemeProvider mount 1451 1440 5000
ThemeProvider virtual-rerender 1131 1152 5000
ThemeProvider virtual-rerender-with-unmount 2007 1984 5000
Toggle mount 1146 1150 5000
buttonNative mount 543 539 5000

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 28, 2022

Perf Analysis (@fluentui/react-components)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
Avatar mount 1277 1281 5000
Button mount 928 919 5000
FluentProvider mount 1494 1480 5000
FluentProviderWithTheme mount 574 587 10
FluentProviderWithTheme virtual-rerender 539 527 10
FluentProviderWithTheme virtual-rerender-with-unmount 582 577 10
MakeStyles mount 1992 1957 50000
SpinButton mount 2348 2328 5000

@tomi-msft
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Copy link
Contributor

@sopranopillow sopranopillow left a comment

Choose a reason for hiding this comment

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

I would also recommend adding the Skeleton 🩻 component with yarn create-component since they are also a bunch of files that are generated.

@@ -177,6 +177,7 @@ packages/react-components/react-avatar-context @microsoft/teams-prg
packages/react-components/react-infobutton @microsoft/cxe-red @sopranopillow
packages/react-migration-v8-v9 @microsoft/cxe-coastal @geoffcoxmsft
packages/react-components/react-tree @microsoft/teams-prg
packages/react-components/react-skeleton @microsoft/cxe-red
Copy link
Contributor

Choose a reason for hiding this comment

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

You should add yourself since you are the owner of the component :)

Suggested change
packages/react-components/react-skeleton @microsoft/cxe-red
packages/react-components/react-skeleton @microsoft/cxe-red @tomi-msft

@tomi-msft
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@tomi-msft tomi-msft enabled auto-merge (squash) October 31, 2022 19:31
@tomi-msft tomi-msft merged commit 9a6f5b7 into microsoft:master Oct 31, 2022
marcosmoura added a commit to marcosmoura/fluentui that referenced this pull request Nov 2, 2022
* master: (23 commits)
  fix(docsite-v9): move theme picker under component title so it can be visible on embedded pages (microsoft#25385)
  applying package updates
  feat: Implement child render function for DataGrid rows (microsoft#25476)
  fix(useTable): sort should adapt to enhanced row types (microsoft#25487)
  applying package updates
  feat: positioning should happen out of React lifecycle (microsoft#25456)
  applying package updates
  chore(react-link): migrate to new package structure (microsoft#25471)
  chore(react-input): migrate to new package structure (microsoft#25469)
  fix glob pattern for syncpack (microsoft#25465)
  chore(react-label): migrate to new package structure (microsoft#25470)
  chore: bump Griffel to latest (microsoft#25412)
  chore: add few small toolbar improvements (microsoft#25468)
  docs: fix small typos (microsoft#25464)
  chore: fix dependencies in @fluentui/react-toolbar (microsoft#25466)
  feat: v0 menu style migration from v9 (microsoft#25012)
  applying package updates
  Update List to render children on first render() call (microsoft#25331)
  Scaffold react-skeleton package (microsoft#25435)
  fix(public-docsite): Changing crossplatform urls to use 'cross' instead of 'crossplatform' (microsoft#25437)
  ...
NotWoods pushed a commit to NotWoods/fluentui that referenced this pull request Nov 18, 2022
* Scaffold react-skeleton package

* api update'
Hotell pushed a commit to Hotell/fluentui that referenced this pull request Feb 9, 2023
* Scaffold react-skeleton package

* api update'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants