-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
[Page Actions] Fix render issues #7388
Conversation
8f138c1
to
7bedc71
Compare
/snapit |
size-limit report 📦
|
🫰✨ Thanks @kyledurand! Your snapshots have been published to npm. Test the snapshots by updating your yarn add @shopify/plugin-polaris@0.0.0-snapshot-release-20221012185224 yarn add @shopify/polaris-migrator@0.0.0-snapshot-release-20221012185224 yarn add @shopify/polaris@0.0.0-snapshot-release-20221012185224 |
7bedc71
to
9c2ccea
Compare
/snapit |
🫰✨ Thanks @kyledurand! Your snapshots have been published to npm. Test the snapshots by updating your yarn add @shopify/plugin-polaris@0.0.0-snapshot-release-20221012211300 yarn add @shopify/polaris-migrator@0.0.0-snapshot-release-20221012211300 yarn add @shopify/polaris@0.0.0-snapshot-release-20221012211300 |
} | ||
useEventListener('resize', handleResize); | ||
|
||
useLayoutEffect(() => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part of the PR is the fix. The rest is just cleanup and changing our details page to better mimic product details
The signature is identical to useEffect, but it fires synchronously after all DOM mutations. Use this to read layout from the DOM and synchronously re-render. Updates scheduled inside useLayoutEffect will be flushed synchronously, before the browser has a chance to paint.
One of the suggestions from @kushp was to use flushSync to defer the state update but isn't great for performance. useLayoutEffect
seems to do the same thing but from what I've read in a different way that shouldn't affect performance. This waits until DOM stuff has finished before painting, removing layout thrashing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎩 and changes look good!
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @shopify/polaris-migrator@0.5.0 ### Minor Changes - [#7373](#7373) [`56c82ee8d`](56c82ee) Thanks [@aaronccasanova](https://github.com/aaronccasanova)! - Add `getFunctionArgs` utility ### Patch Changes - Updated dependencies \[[`c3f427c17`](c3f427c)]: - @shopify/polaris-tokens@6.2.1 ## @shopify/polaris@10.8.0 ### Minor Changes - [#7364](#7364) [`e4b2c36d8`](e4b2c36) Thanks [@Bringer128](https://github.com/Bringer128)! - Deprecated Collapsible preventMeasuringOnChildrenUpdate. Fixed bug where Collapsible would get stuck in animating state when duration is 0. Add support for intentionally disabling the transition in Collapsible. ### Patch Changes - [#7363](#7363) [`8a6c323e2`](8a6c323) Thanks [@aveline](https://github.com/aveline)! - Added `id` prop to `Text` and `Box` - [#7348](#7348) [`ea2a45bbb`](ea2a45b) Thanks [@aveline](https://github.com/aveline)! - Added `setMediaWidth` breakpoints test utility - [#7388](#7388) [`5bc885765`](5bc8857) Thanks [@kyledurand](https://github.com/kyledurand)! - Fixed a re-render bug with Page Actions - Updated dependencies \[[`c3f427c17`](c3f427c)]: - @shopify/polaris-tokens@6.2.1 ## @shopify/plugin-polaris@0.0.11 ### Patch Changes - Updated dependencies \[[`56c82ee8d`](56c82ee)]: - @shopify/polaris-migrator@0.5.0 ## @shopify/polaris-tokens@6.2.1 ### Patch Changes - [#7385](#7385) [`c3f427c17`](c3f427c) Thanks [@laurkim](https://github.com/laurkim)! - Refactored exported alias and scale types in `breakpoints`, `depth`, `font`, `motion`, `shape`, `spacing`, and `zIndex`. ## @shopify/stylelint-polaris@4.3.2 ### Patch Changes - Updated dependencies \[[`c3f427c17`](c3f427c)]: - @shopify/polaris-tokens@6.2.1 ## polaris.shopify.com@0.22.0 ### Minor Changes - [#7032](#7032) [`40ee692aa`](40ee692) Thanks [@gwyneplaine](https://github.com/gwyneplaine)! - Added Playroom integration to Polaris docs site. ### Patch Changes - [#7032](#7032) [`40ee692aa`](40ee692) Thanks [@gwyneplaine](https://github.com/gwyneplaine)! - Improved the design of the Sandbox feature. - [#7400](#7400) [`9f9fe1f99`](9f9fe1f) Thanks [@kyledurand](https://github.com/kyledurand)! - Fixed a scaling bug caused by content overflow Fixed a bug where examples that don't have any content wouldn't show up - Updated dependencies \[[`8a6c323e2`](8a6c323), [`e4b2c36d8`](e4b2c36), [`c3f427c17`](c3f427c), [`ea2a45bbb`](ea2a45b), [`5bc885765`](5bc8857)]: - @shopify/polaris@10.8.0 - @shopify/polaris-tokens@6.2.1 ## polaris-for-figma@0.0.24 ### Patch Changes - Updated dependencies \[[`8a6c323e2`](8a6c323), [`e4b2c36d8`](e4b2c36), [`ea2a45bbb`](ea2a45b), [`5bc885765`](5bc8857)]: - @shopify/polaris@10.8.0 Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Fixes: #7330
Spin link