chore: avoid loading extensive @artsy libraries until necessary #14842
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.
Based on Chrome's coverage tooling, @dzucconi and I identified that the
artsy-framework
bundle was a little too liberal in the modules it included. Because that bundle ispreload
ed, that meant that all of the referenced code was being loaded on all pages, and with a high priority.@artsy/to-title-case
appears unused, so we removed it.@artsy/icons
is designed for icons to be imported individually, and occasionally gains a bloated image, so is excluded.@artsy/xapp
and/multienv
should only be required server-side.@artsy/commerce_helpers
,/dismissible
,/express-reloadable
,/palette-charts
, andreact-html-parser
should only be needed in a few places, so load them there.@artsy/cohesion
? It's needed for almost every route, but it also changes frequently so invalidates caching of these other libraries (which are more stable). Maybe we should add it back into this list.Co-authored by: @dzucconi