-
Notifications
You must be signed in to change notification settings - Fork 27k
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
Font optimization #21676
Font optimization #21676
Conversation
…canary' of github.com:zeit/next.js into canary
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
# Conflicts: # packages/next/next-server/server/config.ts
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 12s | 11.8s | -238ms |
nodeModulesSize | 42.8 MB | 42.8 MB | -453 B |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.164 | 2.698 | |
/ avg req/sec | 1155.46 | 926.74 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.441 | 1.473 | |
/error-in-render avg req/sec | 1734.55 | 1697.31 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..a2e7.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 6.65 kB | 6.65 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 59.8 kB | 59.8 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-2a09aa2..4a98.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8b758..aef6.js gzip | 3.46 kB | 3.71 kB | |
amp-e3e9bc99..932c.js gzip | 536 B | 536 B | ✓ |
hooks-5023ef..3670.js gzip | 888 B | 888 B | ✓ |
index-3a2b03..c677.js gzip | 227 B | 227 B | ✓ |
link-177412b..043e.js gzip | 1.67 kB | 1.67 kB | ✓ |
routerDirect..1a66.js gzip | 303 B | 303 B | ✓ |
withRouter-9..1b7d.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.66 kB | 8.92 kB |
Client Build Manifests
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 347 B | 347 B | ✓ |
Overall change | 347 B | 347 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 613 B | 613 B | ✓ |
link.html gzip | 621 B | 621 B | ✓ |
withRouter.html gzip | 607 B | 607 B | ✓ |
Overall change | 1.84 kB | 1.84 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: [],
"/": ["static\u002Fchunks\u002Fpages\u002Findex-41b33258dcb27611e3a6.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-e3034768442652eac2c9.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-a2a0931f597d8cdcfe41.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-7d414f857fa594e7cf86.js"],
"/hooks": [
Diff for _error-e3034..652eac2c9.js
@@ -540,8 +540,23 @@ Also adds support for deduplicated `key` properties
.map(function(c, i) {
var key = c.key || i;
- if (false) {
- var newProps;
+ if (true && !props.inAmpMode) {
+ if (
+ c.type === "link" &&
+ c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
+ ["https://fonts.googleapis.com/css"].some(function(url) {
+ return c.props["href"].startsWith(url);
+ })
+ ) {
+ var newProps = _objectSpread({}, c.props || {});
+
+ newProps["data-href"] = newProps["href"];
+ newProps["href"] = undefined;
+ return /*#__PURE__*/ _react["default"].cloneElement(
+ c,
+ newProps
+ );
+ }
}
return /*#__PURE__*/ _react["default"].cloneElement(c, {
Serverless Mode (Increase detected ⚠️ )
General Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.3s | 14.5s | |
nodeModulesSize | 42.8 MB | 42.8 MB | -453 B |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..a2e7.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 6.65 kB | 6.65 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 59.8 kB | 59.8 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-2a09aa2..4a98.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8b758..aef6.js gzip | 3.46 kB | N/A | N/A |
amp-e3e9bc99..932c.js gzip | 536 B | 536 B | ✓ |
hooks-5023ef..3670.js gzip | 888 B | 888 B | ✓ |
index-3a2b03..c677.js gzip | 227 B | 227 B | ✓ |
link-177412b..043e.js gzip | 1.67 kB | 1.67 kB | ✓ |
routerDirect..1a66.js gzip | 303 B | 303 B | ✓ |
withRouter-9..1b7d.js gzip | 302 B | 302 B | ✓ |
_error-a0189..ce42.js gzip | N/A | 3.71 kB | N/A |
Overall change | 8.66 kB | 8.92 kB |
Client Build Manifests
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 347 B | 347 B | ✓ |
Overall change | 347 B | 347 B | ✓ |
Serverless bundles Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_error.js | 1.02 MB | 1.02 MB | |
404.html | 2.67 kB | 2.67 kB | ✓ |
500.html | 2.65 kB | 2.65 kB | ✓ |
amp.amp.html | 10.6 kB | 10.6 kB | ✓ |
amp.html | 1.86 kB | 1.86 kB | ✓ |
hooks.html | 1.92 kB | 1.92 kB | ✓ |
index.js | 1.02 MB | 1.02 MB | |
link.js | 1.08 MB | 1.08 MB | |
routerDirect.js | 1.07 MB | 1.07 MB | |
withRouter.js | 1.07 MB | 1.07 MB | |
Overall change | 5.27 MB | 5.28 MB |
Webpack 5 Mode (Increase detected ⚠️ )
General Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.9s | 15.5s | |
nodeModulesSize | 42.8 MB | 42.8 MB | -453 B |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.331 | 2.729 | |
/ avg req/sec | 1072.66 | 916.22 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.516 | 1.578 | |
/error-in-render avg req/sec | 1649.14 | 1583.98 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
597-2bc2376a..203d.js gzip | 13.3 kB | 13.3 kB | ✓ |
framework.HASH.js gzip | 39.3 kB | 39.3 kB | ✓ |
main-HASH.js gzip | 6.59 kB | 6.59 kB | ✓ |
webpack-HASH.js gzip | 954 B | 954 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.1 kB | 31.1 kB | ✓ |
Overall change | 31.1 kB | 31.1 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-aedc815..1421.js gzip | 1.26 kB | 1.26 kB | ✓ |
_error-71ec2..1a96.js gzip | 3.38 kB | 3.65 kB | |
amp-33a09cb0..6745.js gzip | 536 B | 536 B | ✓ |
hooks-4e968a..f870.js gzip | 902 B | 902 B | ✓ |
index-5c6845..f75c.js gzip | 230 B | 230 B | ✓ |
link-99f0c6c..b84a.js gzip | 1.65 kB | 1.65 kB | ✓ |
routerDirect..bb56.js gzip | 306 B | 306 B | ✓ |
withRouter-7..2133.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.57 kB | 8.84 kB |
Client Build Manifests Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 326 B | 325 B | -1 B |
Overall change | 326 B | 325 B | -1 B |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 585 B | 585 B | ✓ |
link.html gzip | 593 B | 593 B | ✓ |
withRouter.html gzip | 581 B | 581 B | ✓ |
Overall change | 1.76 kB | 1.76 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: [],
"/": ["static\u002Fchunks\u002Fpages\u002Findex-3a2b03695551a802c677.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-8b758797fbfd831caef6.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-a01894fb12c522a9ce42.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-e3e9bc9915cf2811932c.js"],
"/hooks": [
Diff for _error-8b758..d831caef6.js
@@ -185,14 +185,26 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
},
"8Kt/": function(e, t, n) {
"use strict";
- n("lSNA");
- (t.__esModule = !0), (t.defaultHead = f), (t.default = void 0);
- var r,
- o = (function(e) {
+ var r = n("lSNA");
+ function o(e, t) {
+ var n = Object.keys(e);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(e);
+ t &&
+ (r = r.filter(function(t) {
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
+ })),
+ n.push.apply(n, r);
+ }
+ return n;
+ }
+ (t.__esModule = !0), (t.defaultHead = p), (t.default = void 0);
+ var a,
+ i = (function(e) {
if (e && e.__esModule) return e;
if (null === e || ("object" !== typeof e && "function" !== typeof e))
return { default: e };
- var t = s();
+ var t = l();
if (t && t.has(e)) return t.get(e);
var n = {},
r = Object.defineProperty && Object.getOwnPropertyDescriptor;
@@ -206,27 +218,27 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
(n.default = e), t && t.set(e, n);
return n;
})(n("q1tI")),
- a = (r = n("Xuae")) && r.__esModule ? r : { default: r },
- i = n("lwAK"),
- u = n("FYa8"),
- c = n("/0+H");
- function s() {
+ u = (a = n("Xuae")) && a.__esModule ? a : { default: a },
+ c = n("lwAK"),
+ s = n("FYa8"),
+ f = n("/0+H");
+ function l() {
if ("function" !== typeof WeakMap) return null;
var e = new WeakMap();
return (
- (s = function() {
+ (l = function() {
return e;
}),
e
);
}
- function f() {
+ function p() {
var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
- t = [o.default.createElement("meta", { charSet: "utf-8" })];
+ t = [i.default.createElement("meta", { charSet: "utf-8" })];
return (
e ||
t.push(
- o.default.createElement("meta", {
+ i.default.createElement("meta", {
name: "viewport",
content: "width=device-width"
})
@@ -234,12 +246,12 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t
);
}
- function l(e, t) {
+ function d(e, t) {
return "string" === typeof t || "number" === typeof t
? e
- : t.type === o.default.Fragment
+ : t.type === i.default.Fragment
? e.concat(
- o.default.Children.toArray(t.props.children).reduce(function(
+ i.default.Children.toArray(t.props.children).reduce(function(
e,
t
) {
@@ -251,16 +263,16 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
)
: e.concat(t);
}
- var p = ["name", "httpEquiv", "charSet", "itemProp"];
- function d(e, t) {
+ var y = ["name", "httpEquiv", "charSet", "itemProp"];
+ function h(e, t) {
return e
.reduce(function(e, t) {
- var n = o.default.Children.toArray(t.props.children);
+ var n = i.default.Children.toArray(t.props.children);
return e.concat(n);
}, [])
- .reduce(l, [])
+ .reduce(d, [])
.reverse()
- .concat(f(t.inAmpMode))
+ .concat(p(t.inAmpMode))
.filter(
(function() {
var e = new Set(),
@@ -285,15 +297,15 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t.has(o.type) ? (a = !1) : t.add(o.type);
break;
case "meta":
- for (var c = 0, s = p.length; c < s; c++) {
- var f = p[c];
+ for (var c = 0, s = y.length; c < s; c++) {
+ var f = y[c];
if (o.props.hasOwnProperty(f))
if ("charSet" === f) n.has(f) ? (a = !1) : n.add(f);
else {
var l = o.props[f],
- d = r[f] || new Set();
- ("name" === f && i) || !d.has(l)
- ? (d.add(l), (r[f] = d))
+ p = r[f] || new Set();
+ ("name" === f && i) || !p.has(l)
+ ? (p.add(l), (r[f] = p))
: (a = !1);
}
}
@@ -303,28 +315,64 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
})()
)
.reverse()
- .map(function(e, t) {
- var n = e.key || t;
- return o.default.cloneElement(e, { key: n });
+ .map(function(e, n) {
+ var a = e.key || n;
+ if (
+ !t.inAmpMode &&
+ "link" === e.type &&
+ e.props.href &&
+ ["https://fonts.googleapis.com/css"].some(function(t) {
+ return e.props.href.startsWith(t);
+ })
+ ) {
+ var u = (function(e) {
+ for (var t = 1; t < arguments.length; t++) {
+ var n = null != arguments[t] ? arguments[t] : {};
+ t % 2
+ ? o(Object(n), !0).forEach(function(t) {
+ r(e, t, n[t]);
+ })
+ : Object.getOwnPropertyDescriptors
+ ? Object.defineProperties(
+ e,
+ Object.getOwnPropertyDescriptors(n)
+ )
+ : o(Object(n)).forEach(function(t) {
+ Object.defineProperty(
+ e,
+ t,
+ Object.getOwnPropertyDescriptor(n, t)
+ );
+ });
+ }
+ return e;
+ })({}, e.props || {});
+ return (
+ (u["data-href"] = u.href),
+ (u.href = void 0),
+ i.default.cloneElement(e, u)
+ );
+ }
+ return i.default.cloneElement(e, { key: a });
});
}
- function y(e) {
+ function v(e) {
var t = e.children,
- n = (0, o.useContext)(i.AmpStateContext),
- r = (0, o.useContext)(u.HeadManagerContext);
- return o.default.createElement(
- a.default,
+ n = (0, i.useContext)(c.AmpStateContext),
+ r = (0, i.useContext)(s.HeadManagerContext);
+ return i.default.createElement(
+ u.default,
{
- reduceComponentsToState: d,
+ reduceComponentsToState: h,
headManager: r,
- inAmpMode: (0, c.isInAmpMode)(n)
+ inAmpMode: (0, f.isInAmpMode)(n)
},
t
);
}
- y.rewind = function() {};
- var h = y;
- t.default = h;
+ v.rewind = function() {};
+ var m = v;
+ t.default = m;
},
Bnag: function(e, t) {
e.exports = function() {
Diff for index.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/",
"query": {},
- "buildId": "s9cLbLqzRerb17ZWC08d2",
+ "buildId": "zUNvcO1xsudKw7ThVZgEm",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_buildManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_ssgManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_ssgManifest.js"
async=""
></script>
</body>
Diff for link.html
@@ -48,7 +48,7 @@
"props": { "pageProps": {} },
"page": "/link",
"query": {},
- "buildId": "s9cLbLqzRerb17ZWC08d2",
+ "buildId": "zUNvcO1xsudKw7ThVZgEm",
"isFallback": false,
"gip": true
}
@@ -82,11 +82,11 @@
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_buildManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_ssgManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_ssgManifest.js"
async=""
></script>
</body>
Diff for withRouter.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/withRouter",
"query": {},
- "buildId": "s9cLbLqzRerb17ZWC08d2",
+ "buildId": "zUNvcO1xsudKw7ThVZgEm",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_buildManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/s9cLbLqzRerb17ZWC08d2/_ssgManifest.js"
+ src="/_next/static/zUNvcO1xsudKw7ThVZgEm/_ssgManifest.js"
async=""
></script>
</body>
# Conflicts: # packages/next/export/worker.ts # test/integration/build-output/test/index.test.js
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 11.5s | 11.3s | -220ms |
nodeModulesSize | 42.8 MB | 42.8 MB | -277 B |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 1.982 | 2.317 | |
/ avg req/sec | 1261.34 | 1078.8 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.177 | 1.244 | |
/error-in-render avg req/sec | 2123.82 | 2010.32 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..a2e7.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.14 kB | 7.14 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.3 kB | 60.3 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-fde3324..9dd1.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | 3.71 kB | |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-e6cee42..49eb.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 346 B | 347 B | |
Overall change | 346 B | 347 B |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 614 B | 614 B | ✓ |
link.html gzip | 621 B | 621 B | ✓ |
withRouter.html gzip | 609 B | 609 B | ✓ |
Overall change | 1.84 kB | 1.84 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: [],
"/": ["static\u002Fchunks\u002Fpages\u002Findex-b1738b6c9dd4aa373c84.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-6fc12bd74dc2417101e6.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-c75557f170c57b2c8979.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-27f75ad11120c5cdedd1.js"],
"/hooks": [
Diff for _error-6fc12..2417101e6.js
@@ -540,8 +540,23 @@ Also adds support for deduplicated `key` properties
.map(function(c, i) {
var key = c.key || i;
- if (false) {
- var newProps;
+ if (true && !props.inAmpMode) {
+ if (
+ c.type === "link" &&
+ c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
+ ["https://fonts.googleapis.com/css"].some(function(url) {
+ return c.props["href"].startsWith(url);
+ })
+ ) {
+ var newProps = _objectSpread({}, c.props || {});
+
+ newProps["data-href"] = newProps["href"];
+ newProps["href"] = undefined;
+ return /*#__PURE__*/ _react["default"].cloneElement(
+ c,
+ newProps
+ );
+ }
}
return /*#__PURE__*/ _react["default"].cloneElement(c, {
Serverless Mode (Increase detected ⚠️ )
General Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 12.9s | 12.8s | -74ms |
nodeModulesSize | 42.8 MB | 42.8 MB | -277 B |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..a2e7.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.14 kB | 7.14 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.3 kB | 60.3 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-fde3324..9dd1.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | N/A | N/A |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-e6cee42..49eb.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
_error-d07ca..ef4d.js gzip | N/A | 3.71 kB | N/A |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 346 B | 347 B | |
Overall change | 346 B | 347 B |
Serverless bundles Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_error.js | 1.02 MB | 1.02 MB | |
404.html | 2.67 kB | 2.67 kB | ✓ |
500.html | 2.65 kB | 2.65 kB | ✓ |
amp.amp.html | 10.6 kB | 10.6 kB | ✓ |
amp.html | 1.86 kB | 1.86 kB | ✓ |
hooks.html | 1.92 kB | 1.92 kB | ✓ |
index.js | 1.02 MB | 1.02 MB | |
link.js | 1.08 MB | 1.08 MB | |
routerDirect.js | 1.07 MB | 1.07 MB | |
withRouter.js | 1.07 MB | 1.07 MB | |
Overall change | 5.27 MB | 5.28 MB |
Webpack 5 Mode (Increase detected ⚠️ )
General Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 13s | 13s | |
nodeModulesSize | 42.8 MB | 42.8 MB | -277 B |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 1.956 | 2.316 | |
/ avg req/sec | 1278.17 | 1079.67 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.168 | 1.228 | |
/error-in-render avg req/sec | 2140.13 | 2036.27 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
597-2bc2376a..203d.js gzip | 13.3 kB | 13.3 kB | ✓ |
framework.HASH.js gzip | 39.3 kB | 39.3 kB | ✓ |
main-HASH.js gzip | 7.08 kB | 7.08 kB | ✓ |
webpack-HASH.js gzip | 954 B | 954 B | ✓ |
Overall change | 60.7 kB | 60.7 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.1 kB | 31.1 kB | ✓ |
Overall change | 31.1 kB | 31.1 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-0c62a59..94b7.js gzip | 1.26 kB | 1.26 kB | ✓ |
_error-97d24..ed28.js gzip | 3.38 kB | 3.65 kB | |
amp-2926e4c2..9ccc.js gzip | 536 B | 536 B | ✓ |
hooks-1ed65b..8908.js gzip | 902 B | 902 B | ✓ |
index-6259b6..77d8.js gzip | 230 B | 230 B | ✓ |
link-2a29128..cc6e.js gzip | 1.63 kB | 1.63 kB | ✓ |
routerDirect..862a.js gzip | 306 B | 306 B | ✓ |
withRouter-4..76fd.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.54 kB | 8.82 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 322 B | 324 B | |
Overall change | 322 B | 324 B |
Rendered Page Sizes Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 585 B | 585 B | ✓ |
link.html gzip | 593 B | 592 B | -1 B |
withRouter.html gzip | 580 B | 579 B | -1 B |
Overall change | 1.76 kB | 1.76 kB | -2 B |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: [],
"/": ["static\u002Fchunks\u002Fpages\u002Findex-ac435c89e537f4e6ecf2.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-af59f52346097a29582f.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-d07ca8afdf6c45b9ef4d.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-9716187d43cb5ac80aa8.js"],
"/hooks": [
Diff for _error-af59f..97a29582f.js
@@ -185,14 +185,26 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
},
"8Kt/": function(e, t, n) {
"use strict";
- n("lSNA");
- (t.__esModule = !0), (t.defaultHead = f), (t.default = void 0);
- var r,
- o = (function(e) {
+ var r = n("lSNA");
+ function o(e, t) {
+ var n = Object.keys(e);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(e);
+ t &&
+ (r = r.filter(function(t) {
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
+ })),
+ n.push.apply(n, r);
+ }
+ return n;
+ }
+ (t.__esModule = !0), (t.defaultHead = p), (t.default = void 0);
+ var a,
+ i = (function(e) {
if (e && e.__esModule) return e;
if (null === e || ("object" !== typeof e && "function" !== typeof e))
return { default: e };
- var t = s();
+ var t = l();
if (t && t.has(e)) return t.get(e);
var n = {},
r = Object.defineProperty && Object.getOwnPropertyDescriptor;
@@ -206,27 +218,27 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
(n.default = e), t && t.set(e, n);
return n;
})(n("q1tI")),
- a = (r = n("Xuae")) && r.__esModule ? r : { default: r },
- i = n("lwAK"),
- u = n("FYa8"),
- c = n("/0+H");
- function s() {
+ u = (a = n("Xuae")) && a.__esModule ? a : { default: a },
+ c = n("lwAK"),
+ s = n("FYa8"),
+ f = n("/0+H");
+ function l() {
if ("function" !== typeof WeakMap) return null;
var e = new WeakMap();
return (
- (s = function() {
+ (l = function() {
return e;
}),
e
);
}
- function f() {
+ function p() {
var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
- t = [o.default.createElement("meta", { charSet: "utf-8" })];
+ t = [i.default.createElement("meta", { charSet: "utf-8" })];
return (
e ||
t.push(
- o.default.createElement("meta", {
+ i.default.createElement("meta", {
name: "viewport",
content: "width=device-width"
})
@@ -234,12 +246,12 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t
);
}
- function l(e, t) {
+ function d(e, t) {
return "string" === typeof t || "number" === typeof t
? e
- : t.type === o.default.Fragment
+ : t.type === i.default.Fragment
? e.concat(
- o.default.Children.toArray(t.props.children).reduce(function(
+ i.default.Children.toArray(t.props.children).reduce(function(
e,
t
) {
@@ -251,16 +263,16 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
)
: e.concat(t);
}
- var p = ["name", "httpEquiv", "charSet", "itemProp"];
- function d(e, t) {
+ var y = ["name", "httpEquiv", "charSet", "itemProp"];
+ function h(e, t) {
return e
.reduce(function(e, t) {
- var n = o.default.Children.toArray(t.props.children);
+ var n = i.default.Children.toArray(t.props.children);
return e.concat(n);
}, [])
- .reduce(l, [])
+ .reduce(d, [])
.reverse()
- .concat(f(t.inAmpMode))
+ .concat(p(t.inAmpMode))
.filter(
(function() {
var e = new Set(),
@@ -285,15 +297,15 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t.has(o.type) ? (a = !1) : t.add(o.type);
break;
case "meta":
- for (var c = 0, s = p.length; c < s; c++) {
- var f = p[c];
+ for (var c = 0, s = y.length; c < s; c++) {
+ var f = y[c];
if (o.props.hasOwnProperty(f))
if ("charSet" === f) n.has(f) ? (a = !1) : n.add(f);
else {
var l = o.props[f],
- d = r[f] || new Set();
- ("name" === f && i) || !d.has(l)
- ? (d.add(l), (r[f] = d))
+ p = r[f] || new Set();
+ ("name" === f && i) || !p.has(l)
+ ? (p.add(l), (r[f] = p))
: (a = !1);
}
}
@@ -303,28 +315,64 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
})()
)
.reverse()
- .map(function(e, t) {
- var n = e.key || t;
- return o.default.cloneElement(e, { key: n });
+ .map(function(e, n) {
+ var a = e.key || n;
+ if (
+ !t.inAmpMode &&
+ "link" === e.type &&
+ e.props.href &&
+ ["https://fonts.googleapis.com/css"].some(function(t) {
+ return e.props.href.startsWith(t);
+ })
+ ) {
+ var u = (function(e) {
+ for (var t = 1; t < arguments.length; t++) {
+ var n = null != arguments[t] ? arguments[t] : {};
+ t % 2
+ ? o(Object(n), !0).forEach(function(t) {
+ r(e, t, n[t]);
+ })
+ : Object.getOwnPropertyDescriptors
+ ? Object.defineProperties(
+ e,
+ Object.getOwnPropertyDescriptors(n)
+ )
+ : o(Object(n)).forEach(function(t) {
+ Object.defineProperty(
+ e,
+ t,
+ Object.getOwnPropertyDescriptor(n, t)
+ );
+ });
+ }
+ return e;
+ })({}, e.props || {});
+ return (
+ (u["data-href"] = u.href),
+ (u.href = void 0),
+ i.default.cloneElement(e, u)
+ );
+ }
+ return i.default.cloneElement(e, { key: a });
});
}
- function y(e) {
+ function v(e) {
var t = e.children,
- n = (0, o.useContext)(i.AmpStateContext),
- r = (0, o.useContext)(u.HeadManagerContext);
- return o.default.createElement(
- a.default,
+ n = (0, i.useContext)(c.AmpStateContext),
+ r = (0, i.useContext)(s.HeadManagerContext);
+ return i.default.createElement(
+ u.default,
{
- reduceComponentsToState: d,
+ reduceComponentsToState: h,
headManager: r,
- inAmpMode: (0, c.isInAmpMode)(n)
+ inAmpMode: (0, f.isInAmpMode)(n)
},
t
);
}
- y.rewind = function() {};
- var h = y;
- t.default = h;
+ v.rewind = function() {};
+ var m = v;
+ t.default = m;
},
Bnag: function(e, t) {
e.exports = function() {
Diff for index.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/",
"query": {},
- "buildId": "KOpuZaWPzllD51qjnUVnS",
+ "buildId": "l7FuAXL07I2GNyqnNLxkG",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_buildManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_ssgManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_ssgManifest.js"
async=""
></script>
</body>
Diff for link.html
@@ -48,7 +48,7 @@
"props": { "pageProps": {} },
"page": "/link",
"query": {},
- "buildId": "KOpuZaWPzllD51qjnUVnS",
+ "buildId": "l7FuAXL07I2GNyqnNLxkG",
"isFallback": false,
"gip": true
}
@@ -82,11 +82,11 @@
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_buildManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_ssgManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_ssgManifest.js"
async=""
></script>
</body>
Diff for withRouter.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/withRouter",
"query": {},
- "buildId": "KOpuZaWPzllD51qjnUVnS",
+ "buildId": "l7FuAXL07I2GNyqnNLxkG",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_buildManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/KOpuZaWPzllD51qjnUVnS/_ssgManifest.js"
+ src="/_next/static/l7FuAXL07I2GNyqnNLxkG/_ssgManifest.js"
async=""
></script>
</body>
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.
It looks like we currently error if we fail to download fonts, should this be a hard error or should we handle this gracefully and only show a warning?
If this should still be a hard error we should capture this and show a friendly error saying that we failed to download the fonts during the font optimization step of the build.
result += await getFontForUA(url, IE_UA) | ||
result += await getFontForUA(url, CHROME_UA) | ||
} catch (e) { | ||
console.warn( |
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.
@ijjk Is this the right way to output a warning message ?
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.
We have a log util in build/output
that can be used here, example usage here
next.js/packages/next/cli/next-dev.ts
Line 74 in bfd36bd
Log.warn( |
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.
Done! Please check
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 11.4s | 11.4s | -14ms |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 1.963 | 2.348 | |
/ avg req/sec | 1273.62 | 1064.67 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.278 | 1.215 | -0.06 |
/error-in-render avg req/sec | 1956.21 | 2058.37 | +102.16 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | 3.71 kB | |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 613 B | 613 B | ✓ |
link.html gzip | 621 B | 621 B | ✓ |
withRouter.html gzip | 608 B | 608 B | ✓ |
Overall change | 1.84 kB | 1.84 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-b1738b6c9dd4aa373c84.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-6fc12bd74dc2417101e6.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-c75557f170c57b2c8979.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-27f75ad11120c5cdedd1.js"],
"/hooks": [
Diff for _error-6fc12..2417101e6.js
@@ -540,8 +540,23 @@ Also adds support for deduplicated `key` properties
.map(function(c, i) {
var key = c.key || i;
- if (false) {
- var newProps;
+ if (true && !props.inAmpMode) {
+ if (
+ c.type === "link" &&
+ c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
+ ["https://fonts.googleapis.com/css"].some(function(url) {
+ return c.props["href"].startsWith(url);
+ })
+ ) {
+ var newProps = _objectSpread({}, c.props || {});
+
+ newProps["data-href"] = newProps["href"];
+ newProps["href"] = undefined;
+ return /*#__PURE__*/ _react["default"].cloneElement(
+ c,
+ newProps
+ );
+ }
}
return /*#__PURE__*/ _react["default"].cloneElement(c, {
Serverless Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 13.4s | 13.4s | |
nodeModulesSize | 45.9 MB | 45.9 MB |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | N/A | N/A |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
_error-d07ca..ef4d.js gzip | N/A | 3.71 kB | N/A |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Serverless bundles Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_error.js | 1.36 MB | 1.36 MB | |
404.html | 2.67 kB | 2.67 kB | ✓ |
500.html | 2.65 kB | 2.65 kB | ✓ |
amp.amp.html | 10.7 kB | 10.7 kB | ✓ |
amp.html | 1.86 kB | 1.86 kB | ✓ |
hooks.html | 1.92 kB | 1.92 kB | ✓ |
index.js | 1.36 MB | 1.37 MB | |
link.js | 1.42 MB | 1.42 MB | |
routerDirect.js | 1.41 MB | 1.41 MB | |
withRouter.js | 1.41 MB | 1.41 MB | |
Overall change | 6.99 MB | 7 MB |
Webpack 5 Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 13.8s | 13.6s | -173ms |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.01 | 2.4 | |
/ avg req/sec | 1243.53 | 1041.48 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.246 | 1.241 | 0 |
/error-in-render avg req/sec | 2007.2 | 2014.03 | +6.83 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
597-e27c5352..db8c.js gzip | 13.3 kB | 13.3 kB | ✓ |
778-84582755..aa9b.js gzip | 7.05 kB | 7.05 kB | ✓ |
framework.HASH.js gzip | 39.3 kB | 39.3 kB | ✓ |
main-HASH.js gzip | 151 B | 151 B | ✓ |
webpack-HASH.js gzip | 993 B | 993 B | ✓ |
Overall change | 60.8 kB | 60.8 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.1 kB | 31.1 kB | ✓ |
Overall change | 31.1 kB | 31.1 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-5cc66b2..6f03.js gzip | 1.3 kB | 1.3 kB | ✓ |
_error-b58c1..9b8e.js gzip | 3.4 kB | 3.68 kB | |
amp-89a5460c..567f.js gzip | 558 B | 558 B | ✓ |
hooks-8c2e74..be37.js gzip | 924 B | 924 B | ✓ |
index-fec729..83b2.js gzip | 243 B | 243 B | ✓ |
link-dd34d9b..0ade.js gzip | 1.66 kB | 1.66 kB | ✓ |
routerDirect..5759.js gzip | 336 B | 336 B | ✓ |
withRouter-1..98bf.js gzip | 334 B | 334 B | ✓ |
Overall change | 8.76 kB | 9.03 kB |
Client Build Manifests
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 349 B | 349 B | ✓ |
Overall change | 349 B | 349 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 610 B | 610 B | ✓ |
link.html gzip | 615 B | 615 B | ✓ |
withRouter.html gzip | 605 B | 605 B | ✓ |
Overall change | 1.83 kB | 1.83 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-ac435c89e537f4e6ecf2.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-af59f52346097a29582f.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-d07ca8afdf6c45b9ef4d.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-9716187d43cb5ac80aa8.js"],
"/hooks": [
Diff for _error-af59f..97a29582f.js
@@ -185,14 +185,26 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
},
"8Kt/": function(e, t, n) {
"use strict";
- n("lSNA");
- (t.__esModule = !0), (t.defaultHead = f), (t.default = void 0);
- var r,
- o = (function(e) {
+ var r = n("lSNA");
+ function o(e, t) {
+ var n = Object.keys(e);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(e);
+ t &&
+ (r = r.filter(function(t) {
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
+ })),
+ n.push.apply(n, r);
+ }
+ return n;
+ }
+ (t.__esModule = !0), (t.defaultHead = p), (t.default = void 0);
+ var a,
+ i = (function(e) {
if (e && e.__esModule) return e;
if (null === e || ("object" !== typeof e && "function" !== typeof e))
return { default: e };
- var t = s();
+ var t = l();
if (t && t.has(e)) return t.get(e);
var n = {},
r = Object.defineProperty && Object.getOwnPropertyDescriptor;
@@ -206,27 +218,27 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
(n.default = e), t && t.set(e, n);
return n;
})(n("q1tI")),
- a = (r = n("Xuae")) && r.__esModule ? r : { default: r },
- i = n("lwAK"),
- u = n("FYa8"),
- c = n("/0+H");
- function s() {
+ u = (a = n("Xuae")) && a.__esModule ? a : { default: a },
+ c = n("lwAK"),
+ s = n("FYa8"),
+ f = n("/0+H");
+ function l() {
if ("function" !== typeof WeakMap) return null;
var e = new WeakMap();
return (
- (s = function() {
+ (l = function() {
return e;
}),
e
);
}
- function f() {
+ function p() {
var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
- t = [o.default.createElement("meta", { charSet: "utf-8" })];
+ t = [i.default.createElement("meta", { charSet: "utf-8" })];
return (
e ||
t.push(
- o.default.createElement("meta", {
+ i.default.createElement("meta", {
name: "viewport",
content: "width=device-width"
})
@@ -234,12 +246,12 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t
);
}
- function l(e, t) {
+ function d(e, t) {
return "string" === typeof t || "number" === typeof t
? e
- : t.type === o.default.Fragment
+ : t.type === i.default.Fragment
? e.concat(
- o.default.Children.toArray(t.props.children).reduce(function(
+ i.default.Children.toArray(t.props.children).reduce(function(
e,
t
) {
@@ -251,16 +263,16 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
)
: e.concat(t);
}
- var p = ["name", "httpEquiv", "charSet", "itemProp"];
- function d(e, t) {
+ var y = ["name", "httpEquiv", "charSet", "itemProp"];
+ function h(e, t) {
return e
.reduce(function(e, t) {
- var n = o.default.Children.toArray(t.props.children);
+ var n = i.default.Children.toArray(t.props.children);
return e.concat(n);
}, [])
- .reduce(l, [])
+ .reduce(d, [])
.reverse()
- .concat(f(t.inAmpMode))
+ .concat(p(t.inAmpMode))
.filter(
(function() {
var e = new Set(),
@@ -285,15 +297,15 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t.has(o.type) ? (a = !1) : t.add(o.type);
break;
case "meta":
- for (var c = 0, s = p.length; c < s; c++) {
- var f = p[c];
+ for (var c = 0, s = y.length; c < s; c++) {
+ var f = y[c];
if (o.props.hasOwnProperty(f))
if ("charSet" === f) n.has(f) ? (a = !1) : n.add(f);
else {
var l = o.props[f],
- d = r[f] || new Set();
- ("name" === f && i) || !d.has(l)
- ? (d.add(l), (r[f] = d))
+ p = r[f] || new Set();
+ ("name" === f && i) || !p.has(l)
+ ? (p.add(l), (r[f] = p))
: (a = !1);
}
}
@@ -303,28 +315,64 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
})()
)
.reverse()
- .map(function(e, t) {
- var n = e.key || t;
- return o.default.cloneElement(e, { key: n });
+ .map(function(e, n) {
+ var a = e.key || n;
+ if (
+ !t.inAmpMode &&
+ "link" === e.type &&
+ e.props.href &&
+ ["https://fonts.googleapis.com/css"].some(function(t) {
+ return e.props.href.startsWith(t);
+ })
+ ) {
+ var u = (function(e) {
+ for (var t = 1; t < arguments.length; t++) {
+ var n = null != arguments[t] ? arguments[t] : {};
+ t % 2
+ ? o(Object(n), !0).forEach(function(t) {
+ r(e, t, n[t]);
+ })
+ : Object.getOwnPropertyDescriptors
+ ? Object.defineProperties(
+ e,
+ Object.getOwnPropertyDescriptors(n)
+ )
+ : o(Object(n)).forEach(function(t) {
+ Object.defineProperty(
+ e,
+ t,
+ Object.getOwnPropertyDescriptor(n, t)
+ );
+ });
+ }
+ return e;
+ })({}, e.props || {});
+ return (
+ (u["data-href"] = u.href),
+ (u.href = void 0),
+ i.default.cloneElement(e, u)
+ );
+ }
+ return i.default.cloneElement(e, { key: a });
});
}
- function y(e) {
+ function v(e) {
var t = e.children,
- n = (0, o.useContext)(i.AmpStateContext),
- r = (0, o.useContext)(u.HeadManagerContext);
- return o.default.createElement(
- a.default,
+ n = (0, i.useContext)(c.AmpStateContext),
+ r = (0, i.useContext)(s.HeadManagerContext);
+ return i.default.createElement(
+ u.default,
{
- reduceComponentsToState: d,
+ reduceComponentsToState: h,
headManager: r,
- inAmpMode: (0, c.isInAmpMode)(n)
+ inAmpMode: (0, f.isInAmpMode)(n)
},
t
);
}
- y.rewind = function() {};
- var h = y;
- t.default = h;
+ v.rewind = function() {};
+ var m = v;
+ t.default = m;
},
Bnag: function(e, t) {
e.exports = function() {
Diff for index.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/",
"query": {},
- "buildId": "BG7YsJmkNtgIQxzKtLAqn",
+ "buildId": "EJ44ysIds3_hRS0mG_r1I",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_buildManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_ssgManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_ssgManifest.js"
async=""
></script>
</body>
Diff for link.html
@@ -48,7 +48,7 @@
"props": { "pageProps": {} },
"page": "/link",
"query": {},
- "buildId": "BG7YsJmkNtgIQxzKtLAqn",
+ "buildId": "EJ44ysIds3_hRS0mG_r1I",
"isFallback": false,
"gip": true
}
@@ -82,11 +82,11 @@
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_buildManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_ssgManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_ssgManifest.js"
async=""
></script>
</body>
Diff for withRouter.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/withRouter",
"query": {},
- "buildId": "BG7YsJmkNtgIQxzKtLAqn",
+ "buildId": "EJ44ysIds3_hRS0mG_r1I",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_buildManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/BG7YsJmkNtgIQxzKtLAqn/_ssgManifest.js"
+ src="/_next/static/EJ44ysIds3_hRS0mG_r1I/_ssgManifest.js"
async=""
></script>
</body>
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 12.1s | 12.2s | |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.217 | 2.565 | |
/ avg req/sec | 1127.7 | 974.51 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.507 | 1.505 | 0 |
/error-in-render avg req/sec | 1658.91 | 1661.35 | +2.44 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | 3.71 kB | |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 613 B | 613 B | ✓ |
link.html gzip | 621 B | 621 B | ✓ |
withRouter.html gzip | 608 B | 608 B | ✓ |
Overall change | 1.84 kB | 1.84 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-b1738b6c9dd4aa373c84.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-6fc12bd74dc2417101e6.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-c75557f170c57b2c8979.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-27f75ad11120c5cdedd1.js"],
"/hooks": [
Diff for _error-6fc12..2417101e6.js
@@ -540,8 +540,23 @@ Also adds support for deduplicated `key` properties
.map(function(c, i) {
var key = c.key || i;
- if (false) {
- var newProps;
+ if (true && !props.inAmpMode) {
+ if (
+ c.type === "link" &&
+ c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
+ ["https://fonts.googleapis.com/css"].some(function(url) {
+ return c.props["href"].startsWith(url);
+ })
+ ) {
+ var newProps = _objectSpread({}, c.props || {});
+
+ newProps["data-href"] = newProps["href"];
+ newProps["href"] = undefined;
+ return /*#__PURE__*/ _react["default"].cloneElement(
+ c,
+ newProps
+ );
+ }
}
return /*#__PURE__*/ _react["default"].cloneElement(c, {
Serverless Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.3s | 14.3s | -34ms |
nodeModulesSize | 45.9 MB | 45.9 MB |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | N/A | N/A |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
_error-d07ca..ef4d.js gzip | N/A | 3.71 kB | N/A |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Serverless bundles Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_error.js | 1.36 MB | 1.37 MB | |
404.html | 2.67 kB | 2.67 kB | ✓ |
500.html | 2.65 kB | 2.65 kB | ✓ |
amp.amp.html | 10.7 kB | 10.7 kB | ✓ |
amp.html | 1.86 kB | 1.86 kB | ✓ |
hooks.html | 1.92 kB | 1.92 kB | ✓ |
index.js | 1.36 MB | 1.37 MB | |
link.js | 1.42 MB | 1.42 MB | |
routerDirect.js | 1.41 MB | 1.42 MB | |
withRouter.js | 1.41 MB | 1.42 MB | |
Overall change | 6.99 MB | 7 MB |
Webpack 5 Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.7s | 14.8s | |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.233 | 2.673 | |
/ avg req/sec | 1119.58 | 935.34 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.478 | 1.532 | |
/error-in-render avg req/sec | 1690.93 | 1631.79 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
597-e27c5352..db8c.js gzip | 13.3 kB | 13.3 kB | ✓ |
778-84582755..aa9b.js gzip | 7.05 kB | 7.05 kB | ✓ |
framework.HASH.js gzip | 39.3 kB | 39.3 kB | ✓ |
main-HASH.js gzip | 151 B | 151 B | ✓ |
webpack-HASH.js gzip | 993 B | 993 B | ✓ |
Overall change | 60.8 kB | 60.8 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.1 kB | 31.1 kB | ✓ |
Overall change | 31.1 kB | 31.1 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-5cc66b2..6f03.js gzip | 1.3 kB | 1.3 kB | ✓ |
_error-b58c1..9b8e.js gzip | 3.4 kB | 3.68 kB | |
amp-89a5460c..567f.js gzip | 558 B | 558 B | ✓ |
hooks-8c2e74..be37.js gzip | 924 B | 924 B | ✓ |
index-fec729..83b2.js gzip | 243 B | 243 B | ✓ |
link-dd34d9b..0ade.js gzip | 1.66 kB | 1.66 kB | ✓ |
routerDirect..5759.js gzip | 336 B | 336 B | ✓ |
withRouter-1..98bf.js gzip | 334 B | 334 B | ✓ |
Overall change | 8.76 kB | 9.03 kB |
Client Build Manifests
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 349 B | 349 B | ✓ |
Overall change | 349 B | 349 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 610 B | 610 B | ✓ |
link.html gzip | 615 B | 615 B | ✓ |
withRouter.html gzip | 605 B | 605 B | ✓ |
Overall change | 1.83 kB | 1.83 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-ac435c89e537f4e6ecf2.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-af59f52346097a29582f.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-d07ca8afdf6c45b9ef4d.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-9716187d43cb5ac80aa8.js"],
"/hooks": [
Diff for _error-af59f..97a29582f.js
@@ -185,14 +185,26 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
},
"8Kt/": function(e, t, n) {
"use strict";
- n("lSNA");
- (t.__esModule = !0), (t.defaultHead = f), (t.default = void 0);
- var r,
- o = (function(e) {
+ var r = n("lSNA");
+ function o(e, t) {
+ var n = Object.keys(e);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(e);
+ t &&
+ (r = r.filter(function(t) {
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
+ })),
+ n.push.apply(n, r);
+ }
+ return n;
+ }
+ (t.__esModule = !0), (t.defaultHead = p), (t.default = void 0);
+ var a,
+ i = (function(e) {
if (e && e.__esModule) return e;
if (null === e || ("object" !== typeof e && "function" !== typeof e))
return { default: e };
- var t = s();
+ var t = l();
if (t && t.has(e)) return t.get(e);
var n = {},
r = Object.defineProperty && Object.getOwnPropertyDescriptor;
@@ -206,27 +218,27 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
(n.default = e), t && t.set(e, n);
return n;
})(n("q1tI")),
- a = (r = n("Xuae")) && r.__esModule ? r : { default: r },
- i = n("lwAK"),
- u = n("FYa8"),
- c = n("/0+H");
- function s() {
+ u = (a = n("Xuae")) && a.__esModule ? a : { default: a },
+ c = n("lwAK"),
+ s = n("FYa8"),
+ f = n("/0+H");
+ function l() {
if ("function" !== typeof WeakMap) return null;
var e = new WeakMap();
return (
- (s = function() {
+ (l = function() {
return e;
}),
e
);
}
- function f() {
+ function p() {
var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
- t = [o.default.createElement("meta", { charSet: "utf-8" })];
+ t = [i.default.createElement("meta", { charSet: "utf-8" })];
return (
e ||
t.push(
- o.default.createElement("meta", {
+ i.default.createElement("meta", {
name: "viewport",
content: "width=device-width"
})
@@ -234,12 +246,12 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t
);
}
- function l(e, t) {
+ function d(e, t) {
return "string" === typeof t || "number" === typeof t
? e
- : t.type === o.default.Fragment
+ : t.type === i.default.Fragment
? e.concat(
- o.default.Children.toArray(t.props.children).reduce(function(
+ i.default.Children.toArray(t.props.children).reduce(function(
e,
t
) {
@@ -251,16 +263,16 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
)
: e.concat(t);
}
- var p = ["name", "httpEquiv", "charSet", "itemProp"];
- function d(e, t) {
+ var y = ["name", "httpEquiv", "charSet", "itemProp"];
+ function h(e, t) {
return e
.reduce(function(e, t) {
- var n = o.default.Children.toArray(t.props.children);
+ var n = i.default.Children.toArray(t.props.children);
return e.concat(n);
}, [])
- .reduce(l, [])
+ .reduce(d, [])
.reverse()
- .concat(f(t.inAmpMode))
+ .concat(p(t.inAmpMode))
.filter(
(function() {
var e = new Set(),
@@ -285,15 +297,15 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t.has(o.type) ? (a = !1) : t.add(o.type);
break;
case "meta":
- for (var c = 0, s = p.length; c < s; c++) {
- var f = p[c];
+ for (var c = 0, s = y.length; c < s; c++) {
+ var f = y[c];
if (o.props.hasOwnProperty(f))
if ("charSet" === f) n.has(f) ? (a = !1) : n.add(f);
else {
var l = o.props[f],
- d = r[f] || new Set();
- ("name" === f && i) || !d.has(l)
- ? (d.add(l), (r[f] = d))
+ p = r[f] || new Set();
+ ("name" === f && i) || !p.has(l)
+ ? (p.add(l), (r[f] = p))
: (a = !1);
}
}
@@ -303,28 +315,64 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
})()
)
.reverse()
- .map(function(e, t) {
- var n = e.key || t;
- return o.default.cloneElement(e, { key: n });
+ .map(function(e, n) {
+ var a = e.key || n;
+ if (
+ !t.inAmpMode &&
+ "link" === e.type &&
+ e.props.href &&
+ ["https://fonts.googleapis.com/css"].some(function(t) {
+ return e.props.href.startsWith(t);
+ })
+ ) {
+ var u = (function(e) {
+ for (var t = 1; t < arguments.length; t++) {
+ var n = null != arguments[t] ? arguments[t] : {};
+ t % 2
+ ? o(Object(n), !0).forEach(function(t) {
+ r(e, t, n[t]);
+ })
+ : Object.getOwnPropertyDescriptors
+ ? Object.defineProperties(
+ e,
+ Object.getOwnPropertyDescriptors(n)
+ )
+ : o(Object(n)).forEach(function(t) {
+ Object.defineProperty(
+ e,
+ t,
+ Object.getOwnPropertyDescriptor(n, t)
+ );
+ });
+ }
+ return e;
+ })({}, e.props || {});
+ return (
+ (u["data-href"] = u.href),
+ (u.href = void 0),
+ i.default.cloneElement(e, u)
+ );
+ }
+ return i.default.cloneElement(e, { key: a });
});
}
- function y(e) {
+ function v(e) {
var t = e.children,
- n = (0, o.useContext)(i.AmpStateContext),
- r = (0, o.useContext)(u.HeadManagerContext);
- return o.default.createElement(
- a.default,
+ n = (0, i.useContext)(c.AmpStateContext),
+ r = (0, i.useContext)(s.HeadManagerContext);
+ return i.default.createElement(
+ u.default,
{
- reduceComponentsToState: d,
+ reduceComponentsToState: h,
headManager: r,
- inAmpMode: (0, c.isInAmpMode)(n)
+ inAmpMode: (0, f.isInAmpMode)(n)
},
t
);
}
- y.rewind = function() {};
- var h = y;
- t.default = h;
+ v.rewind = function() {};
+ var m = v;
+ t.default = m;
},
Bnag: function(e, t) {
e.exports = function() {
Diff for index.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/",
"query": {},
- "buildId": "zEr7abfgxi_G1tSbI5OZV",
+ "buildId": "D6VOn8sbfidzHNrHqswwc",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_buildManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_ssgManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_ssgManifest.js"
async=""
></script>
</body>
Diff for link.html
@@ -48,7 +48,7 @@
"props": { "pageProps": {} },
"page": "/link",
"query": {},
- "buildId": "zEr7abfgxi_G1tSbI5OZV",
+ "buildId": "D6VOn8sbfidzHNrHqswwc",
"isFallback": false,
"gip": true
}
@@ -82,11 +82,11 @@
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_buildManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_ssgManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_ssgManifest.js"
async=""
></script>
</body>
Diff for withRouter.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/withRouter",
"query": {},
- "buildId": "zEr7abfgxi_G1tSbI5OZV",
+ "buildId": "D6VOn8sbfidzHNrHqswwc",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_buildManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/zEr7abfgxi_G1tSbI5OZV/_ssgManifest.js"
+ src="/_next/static/D6VOn8sbfidzHNrHqswwc/_ssgManifest.js"
async=""
></script>
</body>
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 12.5s | 12.5s | |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.27 | 2.658 | |
/ avg req/sec | 1101.14 | 940.5 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.544 | 1.552 | |
/error-in-render avg req/sec | 1618.91 | 1610.35 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | 3.71 kB | |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Rendered Page Sizes
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 615 B | 615 B | ✓ |
link.html gzip | 621 B | 621 B | ✓ |
withRouter.html gzip | 608 B | 608 B | ✓ |
Overall change | 1.84 kB | 1.84 kB | ✓ |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-b1738b6c9dd4aa373c84.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-6fc12bd74dc2417101e6.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-c75557f170c57b2c8979.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-27f75ad11120c5cdedd1.js"],
"/hooks": [
Diff for _error-6fc12..2417101e6.js
@@ -540,8 +540,23 @@ Also adds support for deduplicated `key` properties
.map(function(c, i) {
var key = c.key || i;
- if (false) {
- var newProps;
+ if (true && !props.inAmpMode) {
+ if (
+ c.type === "link" &&
+ c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works.
+ ["https://fonts.googleapis.com/css"].some(function(url) {
+ return c.props["href"].startsWith(url);
+ })
+ ) {
+ var newProps = _objectSpread({}, c.props || {});
+
+ newProps["data-href"] = newProps["href"];
+ newProps["href"] = undefined;
+ return /*#__PURE__*/ _react["default"].cloneElement(
+ c,
+ newProps
+ );
+ }
}
return /*#__PURE__*/ _react["default"].cloneElement(c, {
Serverless Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.7s | 14.7s | -68ms |
nodeModulesSize | 45.9 MB | 45.9 MB |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
677f882d2ed8..7edd.js gzip | 13.4 kB | 13.4 kB | ✓ |
framework.HASH.js gzip | 39 kB | 39 kB | ✓ |
main-HASH.js gzip | 7.12 kB | 7.12 kB | ✓ |
webpack-HASH.js gzip | 751 B | 751 B | ✓ |
Overall change | 60.2 kB | 60.2 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.3 kB | 31.3 kB | ✓ |
Overall change | 31.3 kB | 31.3 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-8fbabfc..6440.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-af59f..582f.js gzip | 3.46 kB | N/A | N/A |
amp-9716187d..0aa8.js gzip | 536 B | 536 B | ✓ |
hooks-107e90..74c7.js gzip | 888 B | 888 B | ✓ |
index-ac435c..ecf2.js gzip | 227 B | 227 B | ✓ |
link-c31053f..c329.js gzip | 1.64 kB | 1.64 kB | ✓ |
routerDirect..dc9d.js gzip | 303 B | 303 B | ✓ |
withRouter-6..0e02.js gzip | 302 B | 302 B | ✓ |
_error-d07ca..ef4d.js gzip | N/A | 3.71 kB | N/A |
Overall change | 8.64 kB | 8.89 kB |
Client Build Manifests Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 370 B | 371 B | |
Overall change | 370 B | 371 B |
Serverless bundles Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_error.js | 1.36 MB | 1.37 MB | |
404.html | 2.67 kB | 2.67 kB | ✓ |
500.html | 2.65 kB | 2.65 kB | ✓ |
amp.amp.html | 10.7 kB | 10.7 kB | ✓ |
amp.html | 1.86 kB | 1.86 kB | ✓ |
hooks.html | 1.92 kB | 1.92 kB | ✓ |
index.js | 1.36 MB | 1.37 MB | |
link.js | 1.42 MB | 1.42 MB | |
routerDirect.js | 1.41 MB | 1.42 MB | |
withRouter.js | 1.41 MB | 1.42 MB | |
Overall change | 6.99 MB | 7 MB |
Webpack 5 Mode (Increase detected ⚠️ )
General Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
buildDuration | 14.9s | 15s | |
nodeModulesSize | 45.9 MB | 45.9 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.279 | 2.699 | |
/ avg req/sec | 1097.05 | 926.25 | |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.569 | 1.572 | 0 |
/error-in-render avg req/sec | 1592.94 | 1590.17 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
597-e27c5352..db8c.js gzip | 13.3 kB | 13.3 kB | ✓ |
778-a8e7432f..6391.js gzip | 7.05 kB | 7.05 kB | ✓ |
framework.HASH.js gzip | 39.3 kB | 39.3 kB | ✓ |
main-HASH.js gzip | 151 B | 151 B | ✓ |
webpack-HASH.js gzip | 993 B | 993 B | ✓ |
Overall change | 60.8 kB | 60.8 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31.1 kB | 31.1 kB | ✓ |
Overall change | 31.1 kB | 31.1 kB | ✓ |
Client Pages Overall increase ⚠️
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_app-5cc66b2..6f03.js gzip | 1.3 kB | 1.3 kB | ✓ |
_error-b58c1..9b8e.js gzip | 3.4 kB | 3.68 kB | |
amp-89a5460c..567f.js gzip | 558 B | 558 B | ✓ |
hooks-8c2e74..be37.js gzip | 924 B | 924 B | ✓ |
index-fec729..83b2.js gzip | 243 B | 243 B | ✓ |
link-dd34d9b..0ade.js gzip | 1.66 kB | 1.66 kB | ✓ |
routerDirect..5759.js gzip | 336 B | 336 B | ✓ |
withRouter-1..98bf.js gzip | 334 B | 334 B | ✓ |
Overall change | 8.76 kB | 9.03 kB |
Client Build Manifests
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
_buildManifest.js gzip | 349 B | 349 B | ✓ |
Overall change | 349 B | 349 B | ✓ |
Rendered Page Sizes Overall decrease ✓
vercel/next.js canary | janicklas-ralph/next.js font | Change | |
---|---|---|---|
index.html gzip | 610 B | 609 B | -1 B |
link.html gzip | 615 B | 615 B | ✓ |
withRouter.html gzip | 605 B | 605 B | ✓ |
Overall change | 1.83 kB | 1.83 kB | -1 B |
Diffs
Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
__rewrites: { beforeFiles: [], afterFiles: [], fallback: [] },
"/": ["static\u002Fchunks\u002Fpages\u002Findex-ac435c89e537f4e6ecf2.js"],
"/_error": [
- "static\u002Fchunks\u002Fpages\u002F_error-af59f52346097a29582f.js"
+ "static\u002Fchunks\u002Fpages\u002F_error-d07ca8afdf6c45b9ef4d.js"
],
"/amp": ["static\u002Fchunks\u002Fpages\u002Famp-9716187d43cb5ac80aa8.js"],
"/hooks": [
Diff for _error-af59f..97a29582f.js
@@ -185,14 +185,26 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
},
"8Kt/": function(e, t, n) {
"use strict";
- n("lSNA");
- (t.__esModule = !0), (t.defaultHead = f), (t.default = void 0);
- var r,
- o = (function(e) {
+ var r = n("lSNA");
+ function o(e, t) {
+ var n = Object.keys(e);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(e);
+ t &&
+ (r = r.filter(function(t) {
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
+ })),
+ n.push.apply(n, r);
+ }
+ return n;
+ }
+ (t.__esModule = !0), (t.defaultHead = p), (t.default = void 0);
+ var a,
+ i = (function(e) {
if (e && e.__esModule) return e;
if (null === e || ("object" !== typeof e && "function" !== typeof e))
return { default: e };
- var t = s();
+ var t = l();
if (t && t.has(e)) return t.get(e);
var n = {},
r = Object.defineProperty && Object.getOwnPropertyDescriptor;
@@ -206,27 +218,27 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
(n.default = e), t && t.set(e, n);
return n;
})(n("q1tI")),
- a = (r = n("Xuae")) && r.__esModule ? r : { default: r },
- i = n("lwAK"),
- u = n("FYa8"),
- c = n("/0+H");
- function s() {
+ u = (a = n("Xuae")) && a.__esModule ? a : { default: a },
+ c = n("lwAK"),
+ s = n("FYa8"),
+ f = n("/0+H");
+ function l() {
if ("function" !== typeof WeakMap) return null;
var e = new WeakMap();
return (
- (s = function() {
+ (l = function() {
return e;
}),
e
);
}
- function f() {
+ function p() {
var e = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
- t = [o.default.createElement("meta", { charSet: "utf-8" })];
+ t = [i.default.createElement("meta", { charSet: "utf-8" })];
return (
e ||
t.push(
- o.default.createElement("meta", {
+ i.default.createElement("meta", {
name: "viewport",
content: "width=device-width"
})
@@ -234,12 +246,12 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t
);
}
- function l(e, t) {
+ function d(e, t) {
return "string" === typeof t || "number" === typeof t
? e
- : t.type === o.default.Fragment
+ : t.type === i.default.Fragment
? e.concat(
- o.default.Children.toArray(t.props.children).reduce(function(
+ i.default.Children.toArray(t.props.children).reduce(function(
e,
t
) {
@@ -251,16 +263,16 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
)
: e.concat(t);
}
- var p = ["name", "httpEquiv", "charSet", "itemProp"];
- function d(e, t) {
+ var y = ["name", "httpEquiv", "charSet", "itemProp"];
+ function h(e, t) {
return e
.reduce(function(e, t) {
- var n = o.default.Children.toArray(t.props.children);
+ var n = i.default.Children.toArray(t.props.children);
return e.concat(n);
}, [])
- .reduce(l, [])
+ .reduce(d, [])
.reverse()
- .concat(f(t.inAmpMode))
+ .concat(p(t.inAmpMode))
.filter(
(function() {
var e = new Set(),
@@ -285,15 +297,15 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
t.has(o.type) ? (a = !1) : t.add(o.type);
break;
case "meta":
- for (var c = 0, s = p.length; c < s; c++) {
- var f = p[c];
+ for (var c = 0, s = y.length; c < s; c++) {
+ var f = y[c];
if (o.props.hasOwnProperty(f))
if ("charSet" === f) n.has(f) ? (a = !1) : n.add(f);
else {
var l = o.props[f],
- d = r[f] || new Set();
- ("name" === f && i) || !d.has(l)
- ? (d.add(l), (r[f] = d))
+ p = r[f] || new Set();
+ ("name" === f && i) || !p.has(l)
+ ? (p.add(l), (r[f] = p))
: (a = !1);
}
}
@@ -303,28 +315,64 @@ _N_E = (window.webpackJsonp_N_E = window.webpackJsonp_N_E || []).push([
})()
)
.reverse()
- .map(function(e, t) {
- var n = e.key || t;
- return o.default.cloneElement(e, { key: n });
+ .map(function(e, n) {
+ var a = e.key || n;
+ if (
+ !t.inAmpMode &&
+ "link" === e.type &&
+ e.props.href &&
+ ["https://fonts.googleapis.com/css"].some(function(t) {
+ return e.props.href.startsWith(t);
+ })
+ ) {
+ var u = (function(e) {
+ for (var t = 1; t < arguments.length; t++) {
+ var n = null != arguments[t] ? arguments[t] : {};
+ t % 2
+ ? o(Object(n), !0).forEach(function(t) {
+ r(e, t, n[t]);
+ })
+ : Object.getOwnPropertyDescriptors
+ ? Object.defineProperties(
+ e,
+ Object.getOwnPropertyDescriptors(n)
+ )
+ : o(Object(n)).forEach(function(t) {
+ Object.defineProperty(
+ e,
+ t,
+ Object.getOwnPropertyDescriptor(n, t)
+ );
+ });
+ }
+ return e;
+ })({}, e.props || {});
+ return (
+ (u["data-href"] = u.href),
+ (u.href = void 0),
+ i.default.cloneElement(e, u)
+ );
+ }
+ return i.default.cloneElement(e, { key: a });
});
}
- function y(e) {
+ function v(e) {
var t = e.children,
- n = (0, o.useContext)(i.AmpStateContext),
- r = (0, o.useContext)(u.HeadManagerContext);
- return o.default.createElement(
- a.default,
+ n = (0, i.useContext)(c.AmpStateContext),
+ r = (0, i.useContext)(s.HeadManagerContext);
+ return i.default.createElement(
+ u.default,
{
- reduceComponentsToState: d,
+ reduceComponentsToState: h,
headManager: r,
- inAmpMode: (0, c.isInAmpMode)(n)
+ inAmpMode: (0, f.isInAmpMode)(n)
},
t
);
}
- y.rewind = function() {};
- var h = y;
- t.default = h;
+ v.rewind = function() {};
+ var m = v;
+ t.default = m;
},
Bnag: function(e, t) {
e.exports = function() {
Diff for index.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/",
"query": {},
- "buildId": "FJmKbQmXwfpAFEg-PQ3ds",
+ "buildId": "YGosTzK1dWaOE2ZRDdd7d",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_buildManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_ssgManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_ssgManifest.js"
async=""
></script>
</body>
Diff for link.html
@@ -48,7 +48,7 @@
"props": { "pageProps": {} },
"page": "/link",
"query": {},
- "buildId": "FJmKbQmXwfpAFEg-PQ3ds",
+ "buildId": "YGosTzK1dWaOE2ZRDdd7d",
"isFallback": false,
"gip": true
}
@@ -82,11 +82,11 @@
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_buildManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_ssgManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_ssgManifest.js"
async=""
></script>
</body>
Diff for withRouter.html
@@ -43,7 +43,7 @@
"props": { "pageProps": {} },
"page": "/withRouter",
"query": {},
- "buildId": "FJmKbQmXwfpAFEg-PQ3ds",
+ "buildId": "YGosTzK1dWaOE2ZRDdd7d",
"isFallback": false,
"gip": true
}
@@ -77,11 +77,11 @@
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_buildManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_buildManifest.js"
async=""
></script>
<script
- src="/_next/static/FJmKbQmXwfpAFEg-PQ3ds/_ssgManifest.js"
+ src="/_next/static/YGosTzK1dWaOE2ZRDdd7d/_ssgManifest.js"
async=""
></script>
</body>
* origin/canary: (36 commits) Fixed issue accessing index page of "with-reason-relay" example (vercel#23780) upgrade to webpack 5.31.0 (vercel#23776) Add note about prefetching (vercel#23732) v10.1.4-canary.2 Ensure no-op export returns without error (vercel#23752) Update to with-supertokens example (vercel#23728) Ensure fallback rewrites dont match over pages with i18n (vercel#23674) Ensure basePath is not applied for external GSSP redirect (vercel#23673) Fix webpack5 cache distDir (vercel#23718) v10.1.4-canary.1 Stop mutating `resolvedAsPath` (vercel#23705) Font optimization (vercel#21676) v10.1.4-canary.0 Ensure default fallback values are correct with i18n (vercel#23675) Fix: Codeblock Syntax Highlighting (vercel#23545) fix with-mqtt-js example. (vercel#23636) fix with-styled-jsx-plugins example. (vercel#23635) fix with-web-worker example. (vercel#23634) fixes a part of vercel#23607 remove with-glamor example (vercel#23639) v10.1.3 ... # Conflicts: # packages/next/package.json # yarn.lock
Enable font optimization by default
#21676 moved `fontOptimization` out of the experimental key of `NextConfig` to the top level, so it should be removed from the type ## Bug - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added ## Feature - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Documentation added - [ ] Telemetry added. In case of a feature if it's used or not. ## Documentation / Examples - [ ] Make sure the linting passes
vercel#21676 moved `fontOptimization` out of the experimental key of `NextConfig` to the top level, so it should be removed from the type ## Bug - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added ## Feature - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. - [ ] Related issues linked using `fixes #number` - [ ] Integration tests added - [ ] Documentation added - [ ] Telemetry added. In case of a feature if it's used or not. ## Documentation / Examples - [ ] Make sure the linting passes
Enable font optimization by default