feat: Add consistent start and finish lifecycle callbacks#31644
Merged
ling1726 merged 9 commits intomicrosoft:masterfrom Jun 11, 2024
Merged
feat: Add consistent start and finish lifecycle callbacks#31644ling1726 merged 9 commits intomicrosoft:masterfrom
ling1726 merged 9 commits intomicrosoft:masterfrom
Conversation
Adds `onMotionStart` and `onMotionFinish` for both presence and motion components so that logic can be run when motions start and finish in userland. Since there is no more `animationstart` or `animationend` events with web animations API, it's harder to run styling changes based on animation state.
Collaborator
Perf Analysis (
|
| Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
|---|---|---|---|---|---|
| Avatar | mount | 658 | 660 | 5000 | |
| Button | mount | 287 | 304 | 5000 | |
| Field | mount | 1148 | 1146 | 5000 | |
| FluentProvider | mount | 720 | 726 | 5000 | |
| FluentProviderWithTheme | mount | 81 | 82 | 10 | |
| FluentProviderWithTheme | virtual-rerender | 43 | 33 | 10 | |
| FluentProviderWithTheme | virtual-rerender-with-unmount | 72 | 69 | 10 | |
| MakeStyles | mount | 892 | 870 | 50000 | |
| Persona | mount | 1800 | 1728 | 5000 | |
| SpinButton | mount | 1420 | 1461 | 5000 | |
| SwatchPicker | mount | 1557 | 1553 | 5000 |
Collaborator
📊 Bundle size reportUnchanged fixtures
|
fabricteam
reviewed
Jun 10, 2024
Member
layershifter
left a comment
There was a problem hiding this comment.
Let's update this story (https://react.fluentui.dev/?path=/docs/utilities-web-motions-createpresencecomponent--default#on-motion-finish) to feature a new callback, too.
layershifter
approved these changes
Jun 11, 2024
marcosmoura
added a commit
to marcosmoura/fluentui
that referenced
this pull request
Jun 12, 2024
…escription * master: chore(react-list-preview): Add bundle size tests (microsoft#31658) applying package updates feat:react-nav-preview Add a handful of accessibility features for Nav (microsoft#31649) feat: refactor anchor-button to use element internals and anchor proxy element (microsoft#31653) chore:(docs) New Component doc (microsoft#31611) style(react-nav-preview): fix formatting in barel file (microsoft#31671) feat(web-components): refactor progress bar to use ElementInternals (microsoft#31652) chore(react-components): split react libraries in two (/library and /stories) - last batch (microsoft#31581) fix(scripts-beachball): ignore web-components packages from v8 release scope (microsoft#31667) chore(react-components): split react libraries in two (/library and /stories) - cxe-red /2nd batch (microsoft#31580) chore: Remove recipes-react-components in favor of recipes package (microsoft#31647) feat: Add consistent start and finish lifecycle callbacks (microsoft#31644) chore(docs): Remove requirement of performance tests from epic template (microsoft#31662) chore(react-components): split react libraries in two (/library and /stories) - cxe-red /1st batch (microsoft#31579) docs(react-swatch-picker): added SwatchPicker page to Component Mapping (microsoft#31637) docs(dev-env): update minimal node version (microsoft#31638)
marcosmoura
added a commit
to marcosmoura/fluentui
that referenced
this pull request
Jun 12, 2024
* master: chore(react-list-preview): Add bundle size tests (microsoft#31658) applying package updates feat:react-nav-preview Add a handful of accessibility features for Nav (microsoft#31649) feat: refactor anchor-button to use element internals and anchor proxy element (microsoft#31653) chore:(docs) New Component doc (microsoft#31611) style(react-nav-preview): fix formatting in barel file (microsoft#31671) feat(web-components): refactor progress bar to use ElementInternals (microsoft#31652) chore(react-components): split react libraries in two (/library and /stories) - last batch (microsoft#31581) fix(scripts-beachball): ignore web-components packages from v8 release scope (microsoft#31667) chore(react-components): split react libraries in two (/library and /stories) - cxe-red /2nd batch (microsoft#31580) chore: Remove recipes-react-components in favor of recipes package (microsoft#31647) feat: Add consistent start and finish lifecycle callbacks (microsoft#31644) chore(docs): Remove requirement of performance tests from epic template (microsoft#31662) chore(react-components): split react libraries in two (/library and /stories) - cxe-red /1st batch (microsoft#31579) docs(react-swatch-picker): added SwatchPicker page to Component Mapping (microsoft#31637) docs(dev-env): update minimal node version (microsoft#31638)
miroslavstastny
pushed a commit
to miroslavstastny/fluentui
that referenced
this pull request
Jun 14, 2024
…31644) Co-authored-by: Oleksandr Fediashov <olfedias@microsoft.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Adds
onMotionStartandonMotionFinishfor both presence and motion components so that logic can be run when motions start and finish in userland.Since there is no more
animationstartoranimationendevents with web animations API, it's harder to run styling changes based on animation state.