Conversation
Jetpack Cloud live (direct link)
Automattic for Agencies live (direct link)
|
|
This PR modifies the release build for the following Calypso Apps: For info about this notification, see here: PCYsg-OT6-p2
To test WordPress.com changes, run |
|
Here is how your PR affects size of JS and CSS bundles shipped to the user's browser: App Entrypoints (~4758 bytes added 📈 [gzipped]) DetailsCommon code that is always downloaded and parsed every time the app is loaded, no matter which route is used. Sections (~8510 bytes added 📈 [gzipped]) DetailsSections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to. Async-loaded Components (~11404 bytes added 📈 [gzipped]) DetailsReact components that are loaded lazily, when a certain part of UI is displayed for the first time. Legend What is parsed and gzip size?Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory. Generated by performance advisor bot at iscalypsofastyet.com. |
c841d72 to
f143ec6
Compare
| return ! isCopySiteFlow( flow ); | ||
| }; | ||
|
|
||
| const Container = [ HUNDRED_YEAR_PLAN_FLOW, HUNDRED_YEAR_DOMAIN_FLOW ].includes( flow ) |
There was a problem hiding this comment.
Creating a React component on the fly forces React to rerender everything down the tree when the state changes.
cc @leonardola
There was a problem hiding this comment.
@alshakero I'm not sure why I got pinged here. Did you mean to ping someone else maybe?
There was a problem hiding this comment.
Yes hehe, thanks Osk! Thankfully, you're an Automattician as well.
|
Looks like it partially addresses the matter only before the checkout steps. Partially meaning, that I see the logo is aligned differently afterwards Screen.Recording.2025-03-17.at.9.46.22.AM.mov |
Fixed now.
Yes that's expected. The blinking post checkout is a different issue that I'll look into next. |
Currently, there is an annoying blink of the signup header when you move between two steps. Even preloaded ones. This gets rid of that blink; it makes the product feels much less premium.
Proposed Changes
React.lazyto render it. The component is preloaded anyways andReact.lazyadds a whole layer of asynchronicity.AsyncLoadthe Domains and PlansStepContainer. Stepper and /start use different containers (StepWrappervsStepContainer). And these steps are shared between /start and Stepper. So to avoid loading an extraneous container in either of the frameworks, I decided to load the container asynchronously based on the current framework. But this adds a blink, and it doesn't make sense anymore because Stepper makes more than 90% of the traffic to the domains and plans step. So I sacrificed adding some bytes to the tiny minority to remove the blink for the vast majority.StepContainerin the domains step between the classic container and the hundred-year plan container because this forces React to re-render the whole tree every time, causing a blink.Why are these changes being made?
UX and performance.
Testing Instructions
Regression testing