[docs-infra] Remove all ES6 transpilation features #42385
Labels
performance
scope: docs-infra
Specific to the docs-infra product
status: waiting for maintainer
These issues haven't been looked at yet by a maintainer
Summary
The docs transform modern JavaScript features for old browsers, but it's not necessary.
https://pagespeed.web.dev/analysis?url=https%3A%2F%2Fmaster--material-ui.netlify.app%2F
Lighthouse uses
Cannot call a class as a function
to detect https://babeljs.io/docs/babel-plugin-transform-classes https://github.com/GoogleChrome/lighthouse/blob/369979f498bd6560127e10476edffb264d4fa3b9/core/audits/byte-efficiency/legacy-javascript.js#L301C22-L301C55.Seeing this on https://master--material-ui.netlify.app/ is wrong:
We should at minimum go into loose mode: https://github.com/vercel/next.js/blob/5ff2731c589692ed86379f876a38e1ca46f5761e/packages/next/src/build/babel/preset.ts#L161.
Examples
As you can see from https://codesandbox.io/p/sandbox/loving-goodall-f5p6nl?file=%2Fsrc%2Fcomponents%2FApp.js%3A13%2C26 the loose mode already has a good bundle size reduction impact.
Motivation
A better docs experience. Upstream dependency with Next.js vercel/next.js#65540. Moving to SWC could be enough otherwise.
Search keywords: -
The text was updated successfully, but these errors were encountered: