I'm switching a small app to next and I've spent hours debugging weird issues like this one:

Then I've located the issue, next doesn't allow the use of module.exports = for pages. Also it fails on client-side only if we include next/head using const Head = require('next/head').default;
What is weird is that it works fine during server side rendering, but fail during execution in client side; so the page is displayed but the react component is not mount on it.
The documentation in the readme should maybe clarify that require() and module.exports should not be used for next specific modules and pages.
And it may be good to prevent it and throw an error during server-side rendering.
(Or to allow it for client-side and server-side)
Create a file pages/index.js:
import React from 'react';
module.exports = () => {
return <div>
<button onClick={e => alert('Hello')}>Hello World</button>
</div>;
}
The page localhost:3000 will be displayed, but clicking on the button will not show the alert, changing it to export defaults will make it work.
Thanks for your report. I'd rather like to allow both export default and module.exports.
Since Node is now on its way to implementing support for ES6 modules (https://twitter.com/mikeal/status/781530255198523392), I don't see many benefits to supporting module.exports.
But if it's easy to add in our webpack config I don't really mind having it either, specially if it can save users like @SamyPesse tons of time in debugging hell
@rauchg @nkzawa They removed default module.exports functionality in Babel6 - https://github.com/babel/babel/issues/2212
We could pull in https://github.com/59naga/babel-plugin-add-module-exports to patch this but not sure if we'd want to pull in a new package just for this functionality. If so, I'd be up for dropping this in
That's something that starting with 2.0 should be trivial with our new babel support, for users to add. Mentioning it in the docs would be nice
Default Server Mode
General
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| buildDuration | 16.1s | 15.8s | -231ms |
| nodeModulesSize | 48.2 MB | 48.2 MB | โ |
Client Bundles (main, webpack, commons)
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| main-HASH.js | 18.1 kB | 18.1 kB | โ |
| main-HASH.js gzip | 6.6 kB | 6.6 kB | โ |
| webpack-HASH.js | 1.53 kB | 1.53 kB | โ |
| webpack-HASH.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..2b8407376.js | 21.9 kB | 21.9 kB | โ |
| 4952ddcd88e7..7376.js gzip | 7.81 kB | 7.81 kB | โ |
| de003c3a9d30..2ca0edb75.js | 43.2 kB | 43.2 kB | โ |
| de003c3a9d30..db75.js gzip | 15.5 kB | 15.5 kB | โ |
| framework.5b..dbaff70d3.js | 125 kB | 125 kB | โ |
| framework.5b..70d3.js gzip | 39.4 kB | 39.4 kB | โ |
| Overall change | 210 kB | 210 kB | โ |
Client Bundles (main, webpack, commons) Modern
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| main-HASH.module.js | 16.4 kB | 16.4 kB | โ |
| main-HASH.module.js gzip | 6.35 kB | 6.35 kB | โ |
| webpack-HASH.module.js | 1.53 kB | 1.53 kB | โ |
| webpack-HASH..dule.js gzip | 746 B | 746 B | โ |
| de003c3a9d30..c0.module.js | 45.6 kB | 45.6 kB | โ |
| de003c3a9d30..dule.js gzip | 16.5 kB | 16.5 kB | โ |
| framework.5b..d3.module.js | 125 kB | 125 kB | โ |
| framework.5b..dule.js gzip | 39.4 kB | 39.4 kB | โ |
| Overall change | 189 kB | 189 kB | โ |
Client Pages
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _app.js | 1.81 kB | 1.81 kB | โ |
| _app.js gzip | 873 B | 873 B | โ |
| _error.js | 12 kB | 12 kB | โ |
| _error.js gzip | 4.73 kB | 4.73 kB | โ |
| hooks.js | 12.7 kB | 12.7 kB | โ |
| hooks.js gzip | 4.79 kB | 4.79 kB | โ |
| index.js | 318 B | 318 B | โ |
| index.js gzip | 222 B | 222 B | โ |
| link.js | 8.14 kB | 8.14 kB | โ |
| link.js gzip | 3.5 kB | 3.5 kB | โ |
| routerDirect.js | 408 B | 408 B | โ |
| routerDirect.js gzip | 281 B | 281 B | โ |
| withRouter.js | 419 B | 419 B | โ |
| withRouter.js gzip | 280 B | 280 B | โ |
| Overall change | 35.8 kB | 35.8 kB | โ |
Client Pages Modern
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _app.module.js | 1.7 kB | 1.7 kB | โ |
| _app.module.js gzip | 832 B | 832 B | โ |
| _error.module.js | 23.3 kB | 23.3 kB | โ |
| _error.module.js gzip | 8.59 kB | 8.59 kB | โ |
| hooks.module.js | 1.52 kB | 1.52 kB | โ |
| hooks.module.js gzip | 793 B | 793 B | โ |
| index.module.js | 294 B | 294 B | โ |
| index.module.js gzip | 223 B | 223 B | โ |
| link.module.js | 8.53 kB | 8.53 kB | โ |
| link.module.js gzip | 3.68 kB | 3.68 kB | โ |
| routerDirect.module.js | 394 B | 394 B | โ |
| routerDirect..dule.js gzip | 281 B | 281 B | โ |
| withRouter.module.js | 404 B | 404 B | โ |
| withRouter.m..dule.js gzip | 278 B | 278 B | โ |
| Overall change | 36.1 kB | 36.1 kB | โ |
Client Build Manifests
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _buildManifest.js | 81 B | 81 B | โ |
| _buildManifest.js gzip | 61 B | 61 B | โ |
| _buildManifest.module.js | 81 B | 81 B | โ |
| _buildManife..dule.js gzip | 61 B | 61 B | โ |
| Overall change | 162 B | 162 B | โ |
Rendered Page Sizes
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| index.html | 3.62 kB | 3.62 kB | โ |
| index.html gzip | 946 B | 946 B | โ |
| link.html | 3.66 kB | 3.66 kB | โ |
| link.html gzip | 954 B | 954 B | โ |
| withRouter.html | 3.67 kB | 3.67 kB | โ |
| withRouter.html gzip | 941 B | 941 B | โ |
| Overall change | 10.9 kB | 10.9 kB | โ |
General
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| buildDuration | 16.4s | 16.2s | -143ms |
| nodeModulesSize | 48.2 MB | 48.2 MB | โ |
Client Bundles (main, webpack, commons)
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| main-HASH.js | 18.1 kB | 18.1 kB | โ |
| main-HASH.js gzip | 6.6 kB | 6.6 kB | โ |
| webpack-HASH.js | 1.53 kB | 1.53 kB | โ |
| webpack-HASH.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..2b8407376.js | 21.9 kB | 21.9 kB | โ |
| 4952ddcd88e7..7376.js gzip | 7.81 kB | 7.81 kB | โ |
| de003c3a9d30..2ca0edb75.js | 43.2 kB | 43.2 kB | โ |
| de003c3a9d30..db75.js gzip | 15.5 kB | 15.5 kB | โ |
| framework.5b..dbaff70d3.js | 125 kB | 125 kB | โ |
| framework.5b..70d3.js gzip | 39.4 kB | 39.4 kB | โ |
| Overall change | 210 kB | 210 kB | โ |
Client Bundles (main, webpack, commons) Modern
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| main-HASH.module.js | 16.4 kB | 16.4 kB | โ |
| main-HASH.module.js gzip | 6.35 kB | 6.35 kB | โ |
| webpack-HASH.module.js | 1.53 kB | 1.53 kB | โ |
| webpack-HASH..dule.js gzip | 746 B | 746 B | โ |
| de003c3a9d30..c0.module.js | 45.6 kB | 45.6 kB | โ |
| de003c3a9d30..dule.js gzip | 16.5 kB | 16.5 kB | โ |
| framework.5b..d3.module.js | 125 kB | 125 kB | โ |
| framework.5b..dule.js gzip | 39.4 kB | 39.4 kB | โ |
| Overall change | 189 kB | 189 kB | โ |
Client Pages
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _app.js | 1.81 kB | 1.81 kB | โ |
| _app.js gzip | 873 B | 873 B | โ |
| _error.js | 12 kB | 12 kB | โ |
| _error.js gzip | 4.73 kB | 4.73 kB | โ |
| hooks.js | 12.7 kB | 12.7 kB | โ |
| hooks.js gzip | 4.79 kB | 4.79 kB | โ |
| index.js | 318 B | 318 B | โ |
| index.js gzip | 222 B | 222 B | โ |
| link.js | 8.14 kB | 8.14 kB | โ |
| link.js gzip | 3.5 kB | 3.5 kB | โ |
| routerDirect.js | 408 B | 408 B | โ |
| routerDirect.js gzip | 281 B | 281 B | โ |
| withRouter.js | 419 B | 419 B | โ |
| withRouter.js gzip | 280 B | 280 B | โ |
| Overall change | 35.8 kB | 35.8 kB | โ |
Client Pages Modern
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _app.module.js | 1.7 kB | 1.7 kB | โ |
| _app.module.js gzip | 832 B | 832 B | โ |
| _error.module.js | 23.3 kB | 23.3 kB | โ |
| _error.module.js gzip | 8.59 kB | 8.59 kB | โ |
| hooks.module.js | 1.52 kB | 1.52 kB | โ |
| hooks.module.js gzip | 793 B | 793 B | โ |
| index.module.js | 294 B | 294 B | โ |
| index.module.js gzip | 223 B | 223 B | โ |
| link.module.js | 8.53 kB | 8.53 kB | โ |
| link.module.js gzip | 3.68 kB | 3.68 kB | โ |
| routerDirect.module.js | 394 B | 394 B | โ |
| routerDirect..dule.js gzip | 281 B | 281 B | โ |
| withRouter.module.js | 404 B | 404 B | โ |
| withRouter.m..dule.js gzip | 278 B | 278 B | โ |
| Overall change | 36.1 kB | 36.1 kB | โ |
Client Build Manifests
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _buildManifest.js | 81 B | 81 B | โ |
| _buildManifest.js gzip | 61 B | 61 B | โ |
| _buildManifest.module.js | 81 B | 81 B | โ |
| _buildManife..dule.js gzip | 61 B | 61 B | โ |
| Overall change | 162 B | 162 B | โ |
Serverless bundles
| | zeit/next.js canary | zeit/next.js canary | Change |
| - | - | - | - |
| _error.js | 253 kB | 253 kB | โ |
| _error.js gzip | 67.9 kB | 67.9 kB | โ |
| hooks.html | 3.75 kB | 3.75 kB | โ |
| hooks.html gzip | 979 B | 979 B | โ |
| index.js | 254 kB | 254 kB | โ |
| index.js gzip | 68.2 kB | 68.2 kB | โ |
| link.js | 261 kB | 261 kB | โ |
| link.js gzip | 70.2 kB | 70.2 kB | โ |
| routerDirect.js | 255 kB | 255 kB | โ |
| routerDirect.js gzip | 68.3 kB | 68.3 kB | โ |
| withRouter.js | 255 kB | 255 kB | โ |
| withRouter.js gzip | 68.3 kB | 68.3 kB | โ |
| Overall change | 1.28 MB | 1.28 MB | โ |
Commit: afa73ae46b44f9c74d4a6308bda0e981aeff2765
Default Server Mode (Increase detected โ ๏ธ)
General Overall increase โ ๏ธ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| buildDuration | 12.7s | 10.1s | -2.6s |
| nodeModulesSize | 55.6 MB | 56.3 MB | โ ๏ธ +742 kB |
Client Bundles (main, webpack, commons) Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| main-HASH.js gzip | 5.13 kB | 5.76 kB | โ ๏ธ +633 B |
| webpack-HASH.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..54d3.js gzip | 4.68 kB | N/A | N/A |
| commons.HASH.js gzip | 4.06 kB | N/A | N/A |
| de003c3a9d30..31ff.js gzip | 16.3 kB | N/A | N/A |
| framework.HASH.js gzip | 39.1 kB | 39.1 kB | โ |
| de003c3a9d30..67cb.js gzip | N/A | 9.69 kB | N/A |
| Overall change | 70 kB | 55.3 kB | -14.7 kB |
Client Bundles (main, webpack, commons) Modern Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| main-HASH.module.js gzip | 4.13 kB | 4.79 kB | โ ๏ธ +657 B |
| webpack-HASH..dule.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..dule.js gzip | 5.56 kB | N/A | N/A |
| de003c3a9d30..dule.js gzip | 15.1 kB | N/A | N/A |
| framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | โ ๏ธ +9 B |
| de003c3a9d30..dule.js gzip | N/A | 6.64 kB | N/A |
| Overall change | 64.7 kB | 51.3 kB | -13.4 kB |
Legacy Client Bundles (polyfills) Overall increase โ ๏ธ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| polyfills-HASH.js gzip | 4.76 kB | 18.9 kB | โ ๏ธ +14.1 kB |
| Overall change | 4.76 kB | 18.9 kB | โ ๏ธ +14.1 kB |
Client Pages Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _app.js gzip | 1.15 kB | 1.07 kB | -74 B |
| _error.js gzip | 4.07 kB | 2.98 kB | -1.09 kB |
| hooks.js gzip | 779 B | 664 B | -115 B |
| index.js gzip | 222 B | 222 B | โ |
| link.js gzip | 2.95 kB | 1.89 kB | -1.06 kB |
| routerDirect.js gzip | 283 B | 279 B | -4 B |
| withRouter.js gzip | 282 B | 278 B | -4 B |
| Overall change | 9.73 kB | 7.38 kB | -2.35 kB |
Client Pages Modern Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _app.module.js gzip | 576 B | 589 B | โ ๏ธ +13 B |
| _error.module.js gzip | 3.06 kB | 2.08 kB | -977 B |
| hooks.module.js gzip | 371 B | 370 B | -1 B |
| index.module.js gzip | 212 B | 212 B | โ |
| link.module.js gzip | 2.49 kB | 1.48 kB | -1.01 kB |
| routerDirect..dule.js gzip | 273 B | 271 B | -2 B |
| withRouter.m..dule.js gzip | 272 B | 270 B | -2 B |
| Overall change | 7.25 kB | 5.27 kB | -1.98 kB |
Client Build Manifests
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _buildManifest.js gzip | 61 B | 61 B | โ |
| _buildManife..dule.js gzip | 61 B | 61 B | โ |
| Overall change | 122 B | 122 B | โ |
Rendered Page Sizes Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| index.html gzip | 1.03 kB | 936 B | -98 B |
| link.html gzip | 1.04 kB | 946 B | -96 B |
| withRouter.html gzip | 1.03 kB | 934 B | -96 B |
| Overall change | 3.11 kB | 2.82 kB | -290 B |
Diff for 4952ddcd88e7..16.module.js
deleted
Diff for 4952ddcd88e7..92a927903.js
deleted
Diff for commons.HASH.js
deleted
Diff for de003c3a9d30..7c.module.js
deleted
Diff for de003c3a9d30..f17743f99.js
deleted
Diff for link.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/link.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div><h3>A Link page!</h3><a href="/">Go to /</a></div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/link","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/link.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div><h3>A Link page!</h3><a href="/">Go to /</a></div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/link","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
Diff for index.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/index.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next">Hello world ๐</div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/index.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next">Hello world ๐</div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
Diff for polyfills-HASH.js
Diff too large to display
Diff for main-HASH.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[11],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
/***/ "BMP1":
/***/ (function(module, exports, __webpack_require__) {
@@ -6,7 +6,7 @@
"use strict";
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
var next = _interopRequireWildcard(__webpack_require__("IKlv"));
@@ -23,10 +23,8 @@ window.next = next;
"use strict";
-var _Promise = __webpack_require__("eVuF");
-
exports.__esModule = true;
-exports.default = void 0;
+exports.default = initHeadManager;
var DOMAttributeNames = {
acceptCharset: 'accept-charset',
className: 'class',
@@ -34,82 +32,6 @@ var DOMAttributeNames = {
httpEquiv: 'http-equiv'
};
-class HeadManager {
- constructor() {
- this.updateHead = head => {
- var promise = this.updatePromise = _Promise.resolve().then(() => {
- if (promise !== this.updatePromise) return;
- this.updatePromise = null;
- this.doUpdateHead(head);
- });
- };
-
- this.updatePromise = null;
- }
-
- doUpdateHead(head) {
- var tags = {};
- head.forEach(h => {
- var components = tags[h.type] || [];
- components.push(h);
- tags[h.type] = components;
- });
- this.updateTitle(tags.title ? tags.title[0] : null);
- var types = ['meta', 'base', 'link', 'style', 'script'];
- types.forEach(type => {
- this.updateElements(type, tags[type] || []);
- });
- }
-
- updateTitle(component) {
- var title = '';
-
- if (component) {
- var {
- children
- } = component.props;
- title = typeof children === 'string' ? children : children.join('');
- }
-
- if (title !== document.title) document.title = title;
- }
-
- updateElements(type, components) {
- var headEl = document.getElementsByTagName('head')[0];
- var headCountEl = headEl.querySelector('meta[name=next-head-count]');
-
- if (false) {}
-
- var headCount = Number(headCountEl.content);
- var oldTags = [];
-
- for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
- if (j.tagName.toLowerCase() === type) {
- oldTags.push(j);
- }
- }
-
- var newTags = components.map(reactElementToDOM).filter(newTag => {
- for (var k = 0, len = oldTags.length; k < len; k++) {
- var oldTag = oldTags[k];
-
- if (oldTag.isEqualNode(newTag)) {
- oldTags.splice(k, 1);
- return false;
- }
- }
-
- return true;
- });
- oldTags.forEach(t => t.parentNode.removeChild(t));
- newTags.forEach(t => headEl.insertBefore(t, headCountEl));
- headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
- }
-
-}
-
-exports.default = HeadManager;
-
function reactElementToDOM(_ref) {
var {
type,
@@ -140,6 +62,68 @@ function reactElementToDOM(_ref) {
return el;
}
+function updateElements(type, components) {
+ var headEl = document.getElementsByTagName('head')[0];
+ var headCountEl = headEl.querySelector('meta[name=next-head-count]');
+
+ if (false) {}
+
+ var headCount = Number(headCountEl.content);
+ var oldTags = [];
+
+ for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
+ if (j.tagName.toLowerCase() === type) {
+ oldTags.push(j);
+ }
+ }
+
+ var newTags = components.map(reactElementToDOM).filter(newTag => {
+ for (var k = 0, len = oldTags.length; k < len; k++) {
+ var oldTag = oldTags[k];
+
+ if (oldTag.isEqualNode(newTag)) {
+ oldTags.splice(k, 1);
+ return false;
+ }
+ }
+
+ return true;
+ });
+ oldTags.forEach(t => t.parentNode.removeChild(t));
+ newTags.forEach(t => headEl.insertBefore(t, headCountEl));
+ headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
+}
+
+function initHeadManager() {
+ var updatePromise = null;
+ return head => {
+ var promise = updatePromise = Promise.resolve().then(() => {
+ if (promise !== updatePromise) return;
+ updatePromise = null;
+ var tags = {};
+ head.forEach(h => {
+ var components = tags[h.type] || [];
+ components.push(h);
+ tags[h.type] = components;
+ });
+ var titleComponent = tags.title ? tags.title[0] : null;
+ var title = '';
+
+ if (titleComponent) {
+ var {
+ children
+ } = titleComponent.props;
+ title = typeof children === 'string' ? children : children.join('');
+ }
+
+ if (title !== document.title) document.title = title;
+ ['meta', 'base', 'link', 'style', 'script'].forEach(type => {
+ updateElements(type, tags[type] || []);
+ });
+ });
+ };
+}
+
/***/ }),
/***/ "FYa8":
@@ -148,8 +132,6 @@ function reactElementToDOM(_ref) {
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -160,7 +142,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -176,20 +158,18 @@ exports.HeadManagerContext = React.createContext(null);
"use strict";
-var _Promise = __webpack_require__("eVuF");
+var _interopRequireWildcard3 = __webpack_require__("284h");
-var _interopRequireWildcard3 = __webpack_require__("5Uuq");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.render = render;
exports.renderError = renderError;
exports.default = exports.emitter = exports.router = exports.version = void 0;
-var _extends2 = _interopRequireDefault(__webpack_require__("htGi"));
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
-var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("5Uuq"));
+var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("284h"));
var _react = _interopRequireDefault(__webpack_require__("q1tI"));
@@ -214,23 +194,19 @@ var _routerContext = __webpack_require__("qOIg");
var _querystring = __webpack_require__("s4NR");
var _isDynamic = __webpack_require__("/jkW");
+
+var _performanceRelayer = __webpack_require__("bGXG");
/* global location */
-if (false) {} else {
- // Polyfill Promise globally
- // This is needed because Webpack's dynamic loading(common chunks) code
- // depends on Promise.
- // So, we need to polyfill it.
- // See: https://webpack.js.org/guides/code-splitting/#dynamic-imports
- if (!self.Promise) {
- self.Promise = __webpack_require__("eVuF");
- }
+if (!('finally' in Promise.prototype)) {
+ // eslint-disable-next-line no-extend-native
+ Promise.prototype.finally = __webpack_require__("zrsZ");
}
var data = JSON.parse(document.getElementById('__NEXT_DATA__').textContent);
window.__NEXT_DATA__ = data;
-var version = "9.2.2";
+var version = "9.2.3-canary.22";
exports.version = version;
var {
props,
@@ -267,7 +243,7 @@ if (window.__NEXT_P) {
window.__NEXT_P = [];
window.__NEXT_P.push = register;
-var headManager = new _headManager.default();
+var updateHead = (0, _headManager.default)();
var appElement = document.getElementById('__next');
var lastAppProps;
var webpackHMR;
@@ -360,13 +336,15 @@ var _default = async function _default(_temp) {
name,
startTime,
value,
- duration
+ duration,
+ entryType
} = _ref2;
mod.unstable_onPerformanceData({
name,
startTime,
value,
- duration
+ duration,
+ entryType
});
};
}
@@ -507,14 +485,9 @@ function renderReactElement(reactEl, domEl) {
if (onPerfEntry && _utils.ST) {
try {
- var observer = new PerformanceObserver(list => {
- list.getEntries().forEach(onPerfEntry);
- }); // Start observing paint entry types.
-
- observer.observe({
- type: 'paint',
- buffered: true
- });
+ (0, _performanceRelayer.observeLayoutShift)(onPerfEntry);
+ (0, _performanceRelayer.observeLargestContentfulPaint)(onPerfEntry);
+ (0, _performanceRelayer.observePaint)(onPerfEntry);
} catch (e) {
window.addEventListener('load', () => {
performance.getEntriesByType('paint').forEach(onPerfEntry);
@@ -577,7 +550,7 @@ function AppContainer(_ref4) {
}, _react.default.createElement(_routerContext.RouterContext.Provider, {
value: (0, _router.makePublicRouterInstance)(router)
}, _react.default.createElement(_headManagerContext.HeadManagerContext.Provider, {
- value: headManager.updateHead
+ value: updateHead
}, children)));
}
@@ -649,29 +622,98 @@ async function doRender(_ref5) {
/***/ }),
-/***/ "UXZV":
+/***/ "bGXG":
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__("UbbE");
+"use strict";
-/***/ }),
-/***/ "UbbE":
-/***/ (function(module, exports, __webpack_require__) {
+exports.__esModule = true;
+exports.observeLayoutShift = observeLayoutShift;
+exports.observeLargestContentfulPaint = observeLargestContentfulPaint;
+exports.observePaint = observePaint;
-__webpack_require__("o8NH");
-module.exports = __webpack_require__("WEpk").Object.assign;
+function isTypeSupported(type) {
+ if (self.PerformanceObserver && PerformanceObserver.supportedEntryTypes) {
+ return PerformanceObserver.supportedEntryTypes.includes(type);
+ }
+ return false;
+}
-/***/ }),
+function observeLayoutShift(onPerfEntry) {
+ if (isTypeSupported('layout-shift')) {
+ var cumulativeScore = 0;
+ var observer = new PerformanceObserver(list => {
+ for (var entry of list.getEntries()) {
+ // Only count layout shifts without recent user input.
+ if (!entry.hadRecentInput) {
+ cumulativeScore += entry.value;
+ }
+ }
+ });
+ observer.observe({
+ type: 'layout-shift',
+ buffered: true
+ });
+ document.addEventListener('visibilitychange', function clsObserver() {
+ if (document.visibilityState === 'hidden') {
+ // Force any pending records to be dispatched.
+ observer.takeRecords();
+ observer.disconnect();
+ removeEventListener('visibilitychange', clsObserver, true);
+ onPerfEntry({
+ name: 'cumulative-layout-shift',
+ value: cumulativeScore
+ });
+ }
+ }, true);
+ }
+}
-/***/ "htGi":
-/***/ (function(module, exports, __webpack_require__) {
+function observeLargestContentfulPaint(onPerfEntry) {
+ if (isTypeSupported('largest-contentful-paint')) {
+ // Create a variable to hold the latest LCP value (since it can change).
+ var lcp; // Create the PerformanceObserver instance.
-var _Object$assign = __webpack_require__("UXZV");
+ var observer = new PerformanceObserver(entryList => {
+ var entries = entryList.getEntries();
+ var lastEntry = entries[entries.length - 1];
+ lcp = lastEntry.renderTime || lastEntry.loadTime;
+ });
+ observer.observe({
+ type: 'largest-contentful-paint',
+ buffered: true
+ });
+ document.addEventListener('visibilitychange', function lcpObserver() {
+ if (lcp && document.visibilityState === 'hidden') {
+ removeEventListener('visibilitychange', lcpObserver, true);
+ onPerfEntry({
+ name: 'largest-contentful-paint',
+ value: lcp
+ });
+ }
+ }, true);
+ }
+}
+
+function observePaint(onPerfEntry) {
+ var observer = new PerformanceObserver(list => {
+ list.getEntries().forEach(onPerfEntry);
+ });
+ observer.observe({
+ type: 'paint',
+ buffered: true
+ });
+}
+
+/***/ }),
+
+/***/ "pVnL":
+/***/ (function(module, exports) {
function _extends() {
- module.exports = _extends = _Object$assign || function (target) {
+ module.exports = _extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
@@ -690,17 +732,6 @@ function _extends() {
module.exports = _extends;
-/***/ }),
-
-/***/ "o8NH":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") });
-
-
/***/ }),
/***/ "yLiY":
@@ -709,12 +740,9 @@ $export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") }
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
-
var runtimeConfig;
exports.default = () => {
@@ -735,15 +763,21 @@ exports.setConfig = setConfig;
"use strict";
-var _Promise = __webpack_require__("eVuF");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.default = void 0;
+var _url = __webpack_require__("QmWs");
+
var _mitt = _interopRequireDefault(__webpack_require__("dZ6Y"));
+var _isDynamic = __webpack_require__("/jkW");
+
+var _routeMatcher = __webpack_require__("gguc");
+
+var _routeRegex = __webpack_require__("YTqd");
+
function hasRel(rel, link) {
try {
link = document.createElement('link');
@@ -757,6 +791,7 @@ var relPrefetch = hasRel('preload') && !hasRel('prefetch') ? // https://caniuse.
// IE 11, Edge 12+, nearly all evergreen
'prefetch';
var hasNoModule = 'noModule' in document.createElement('script');
+/** @param {string} route */
function normalizeRoute(route) {
if (route[0] !== '/') {
@@ -769,7 +804,7 @@ function normalizeRoute(route) {
}
function appendLink(href, rel, as) {
- return new _Promise((res, rej, link) => {
+ return new Promise((res, rej, link) => {
link = document.createElement('link');
link.crossOrigin = "anonymous";
link.href = href;
@@ -790,7 +825,7 @@ class PageLoader {
this.loadingRoutes = {};
if (true) {
- this.promisedBuildManifest = new _Promise(resolve => {
+ this.promisedBuildManifest = new Promise(resolve => {
if (window.__BUILD_MANIFEST) {
resolve(window.__BUILD_MANIFEST);
} else {
@@ -800,12 +835,89 @@ class PageLoader {
}
});
}
+ /** @type {Promise<Set<string>>} */
+
+
+ this.promisedSsgManifest = new Promise(resolve => {
+ if (window.__SSG_MANIFEST) {
+ resolve(window.__SSG_MANIFEST);
+ } else {
+ window.__SSG_MANIFEST_CB = () => {
+ resolve(window.__SSG_MANIFEST);
+ };
+ }
+ });
} // Returns a promise for the dependencies for a particular route
getDependencies(route) {
return this.promisedBuildManifest.then(man => man[route] && man[route].map(url => this.assetPrefix + "/_next/" + encodeURI(url)) || []);
}
+ /**
+ * @param {string} href the route href (file-system path)
+ * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+ */
+
+
+ getDataHref(href, asPath) {
+ var getHrefForSlug =
+ /** @type string */
+ path => this.assetPrefix + "/_next/data/" + this.buildId + (path === '/' ? '/index' : path) + ".json";
+
+ var {
+ pathname: hrefPathname,
+ query
+ } = (0, _url.parse)(href, true);
+ var {
+ pathname: asPathname
+ } = (0, _url.parse)(asPath);
+ var route = normalizeRoute(hrefPathname);
+ var isDynamic = (0, _isDynamic.isDynamicRoute)(route),
+ interpolatedRoute;
+
+ if (isDynamic) {
+ var dynamicRegex = (0, _routeRegex.getRouteRegex)(route);
+ var dynamicGroups = dynamicRegex.groups;
+ var dynamicMatches = // Try to match the dynamic route against the asPath
+ (0, _routeMatcher.getRouteMatcher)(dynamicRegex)(asPathname) || // Fall back to reading the values from the href
+ // TODO: should this take priority; also need to change in the router.
+ query;
+ interpolatedRoute = route;
+
+ if (!Object.keys(dynamicGroups).every(param => {
+ var value = dynamicMatches[param];
+ var repeat = dynamicGroups[param].repeat; // support single-level catch-all
+ // TODO: more robust handling for user-error (passing `/`)
+
+ if (repeat && !Array.isArray(value)) value = [value];
+ return param in dynamicMatches && ( // Interpolate group into data URL if present
+ interpolatedRoute = interpolatedRoute.replace("[" + (repeat ? '...' : '') + param + "]", repeat ? value.map(encodeURIComponent).join('/') : encodeURIComponent(value)));
+ })) {
+ interpolatedRoute = ''; // did not satisfy all requirements
+ // n.b. We ignore this error because we handle warning for this case in
+ // development in the `<Link>` component directly.
+ }
+ }
+
+ return isDynamic ? interpolatedRoute && getHrefForSlug(interpolatedRoute) : getHrefForSlug(route);
+ }
+ /**
+ * @param {string} href the route href (file-system path)
+ * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+ */
+
+
+ prefetchData(href, asPath) {
+ var {
+ pathname: hrefPathname
+ } = (0, _url.parse)(href, true);
+ var route = normalizeRoute(hrefPathname);
+ return this.promisedSsgManifest.then((s, _dataHref) => // Check if the route requires a data file
+ s.has(route) && ( // Try to generate data href, noop when falsy
+ _dataHref = this.getDataHref(href, asPath)) && // noop when data has already been prefetched (dedupe)
+ !document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + _dataHref + "\"]") && // Inject the `<link rel=prefetch>` tag for above computed `href`.
+ appendLink(_dataHref, relPrefetch, 'fetch'));
+ }
loadPage(route) {
return this.loadPageScript(route).then(v => v.page);
@@ -813,7 +925,7 @@ class PageLoader {
loadPageScript(route) {
route = normalizeRoute(route);
- return new _Promise((resolve, reject) => {
+ return new Promise((resolve, reject) => {
var fire = _ref => {
var {
error,
@@ -936,6 +1048,11 @@ class PageLoader {
register();
}
+ /**
+ * @param {string} route
+ * @param {boolean} [isDependency]
+ */
+
prefetch(route, isDependency) {
// https://github.com/GoogleChromeLabs/quicklink/blob/453a661fa1fa940e2d2e044452398e38c67a98fb/src/index.mjs#L115-L118
@@ -944,8 +1061,10 @@ class PageLoader {
if (cn = navigator.connection) {
// Don't prefetch if using 2G or if Save-Data is enabled.
- if (cn.saveData || /2g/.test(cn.effectiveType)) return _Promise.resolve();
+ if (cn.saveData || /2g/.test(cn.effectiveType)) return Promise.resolve();
}
+ /** @type {string} */
+
var url;
@@ -962,7 +1081,7 @@ class PageLoader {
url = this.assetPrefix + "/_next/static/" + encodeURIComponent(this.buildId) + "/pages" + encodeURI(scriptRoute);
}
- return _Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'), true && !isDependency && this.getDependencies(route).then(urls => _Promise.all(urls.map(url => this.prefetch(url, true))))]).then( // do not return any data
+ return Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'), true && !isDependency && this.getDependencies(route).then(urls => Promise.all(urls.map(url => this.prefetch(url, true))))]).then( // do not return any data
() => {}, // swallow prefetch errors
() => {});
}
@@ -971,6 +1090,13 @@ class PageLoader {
exports.default = PageLoader;
+/***/ }),
+
+/***/ "zrsZ":
+/***/ (function(module, exports) {
+
+Promise.prototype.finally=function(n){if("function"!=typeof n)return this.then(n,n);var t=this.constructor||Promise;return this.then(function(r){return t.resolve(n()).then(function(){return r})},function(r){return t.resolve(n()).then(function(){throw r})})};
+
/***/ })
-},[["BMP1",0,1,2,3]]]);
\ No newline at end of file
+},[["BMP1",0,1,2]]]);
\ No newline at end of file
Diff for main-HASH.js
@@ -1,45 +1,26 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[12],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
-/***/ "+plK":
+/***/ "7W2i":
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
+var setPrototypeOf = __webpack_require__("SksO");
+function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
- module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
- return o.__proto__ || _Object$getPrototypeOf(o);
- };
- return _getPrototypeOf(o);
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
}
-module.exports = _getPrototypeOf;
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
-
-__webpack_require__("zn7N")('getPrototypeOf', function () {
- return function getPrototypeOf(it) {
- return $getPrototypeOf(toObject(it));
- };
-});
-
+module.exports = _inherits;
/***/ }),
@@ -49,7 +30,7 @@ __webpack_require__("zn7N")('getPrototypeOf', function () {
"use strict";
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
var next = _interopRequireWildcard(__webpack_require__("IKlv"));
@@ -60,27 +41,14 @@ window.next = next;
/***/ }),
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+plK");
-
-/***/ }),
-
/***/ "DqTX":
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-var _Promise = __webpack_require__("eVuF");
-
-var _classCallCheck = __webpack_require__("/HRN");
-
-var _createClass = __webpack_require__("WaGi");
-
exports.__esModule = true;
-exports["default"] = void 0;
+exports["default"] = initHeadManager;
var DOMAttributeNames = {
acceptCharset: 'accept-charset',
className: 'class',
@@ -88,97 +56,6 @@ var DOMAttributeNames = {
httpEquiv: 'http-equiv'
};
-var HeadManager = /*#__PURE__*/function () {
- function HeadManager() {
- var _this = this;
-
- _classCallCheck(this, HeadManager);
-
- this.updateHead = function (head) {
- var promise = _this.updatePromise = _Promise.resolve().then(function () {
- if (promise !== _this.updatePromise) return;
- _this.updatePromise = null;
-
- _this.doUpdateHead(head);
- });
- };
-
- this.updatePromise = null;
- }
-
- _createClass(HeadManager, [{
- key: "doUpdateHead",
- value: function doUpdateHead(head) {
- var _this2 = this;
-
- var tags = {};
- head.forEach(function (h) {
- var components = tags[h.type] || [];
- components.push(h);
- tags[h.type] = components;
- });
- this.updateTitle(tags.title ? tags.title[0] : null);
- var types = ['meta', 'base', 'link', 'style', 'script'];
- types.forEach(function (type) {
- _this2.updateElements(type, tags[type] || []);
- });
- }
- }, {
- key: "updateTitle",
- value: function updateTitle(component) {
- var title = '';
-
- if (component) {
- var children = component.props.children;
- title = typeof children === 'string' ? children : children.join('');
- }
-
- if (title !== document.title) document.title = title;
- }
- }, {
- key: "updateElements",
- value: function updateElements(type, components) {
- var headEl = document.getElementsByTagName('head')[0];
- var headCountEl = headEl.querySelector('meta[name=next-head-count]');
-
- if (false) {}
-
- var headCount = Number(headCountEl.content);
- var oldTags = [];
-
- for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
- if (j.tagName.toLowerCase() === type) {
- oldTags.push(j);
- }
- }
-
- var newTags = components.map(reactElementToDOM).filter(function (newTag) {
- for (var k = 0, len = oldTags.length; k < len; k++) {
- var oldTag = oldTags[k];
-
- if (oldTag.isEqualNode(newTag)) {
- oldTags.splice(k, 1);
- return false;
- }
- }
-
- return true;
- });
- oldTags.forEach(function (t) {
- return t.parentNode.removeChild(t);
- });
- newTags.forEach(function (t) {
- return headEl.insertBefore(t, headCountEl);
- });
- headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
- }
- }]);
-
- return HeadManager;
-}();
-
-exports["default"] = HeadManager;
-
function reactElementToDOM(_ref) {
var type = _ref.type,
props = _ref.props;
@@ -205,6 +82,70 @@ function reactElementToDOM(_ref) {
return el;
}
+function updateElements(type, components) {
+ var headEl = document.getElementsByTagName('head')[0];
+ var headCountEl = headEl.querySelector('meta[name=next-head-count]');
+
+ if (false) {}
+
+ var headCount = Number(headCountEl.content);
+ var oldTags = [];
+
+ for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
+ if (j.tagName.toLowerCase() === type) {
+ oldTags.push(j);
+ }
+ }
+
+ var newTags = components.map(reactElementToDOM).filter(function (newTag) {
+ for (var k = 0, len = oldTags.length; k < len; k++) {
+ var oldTag = oldTags[k];
+
+ if (oldTag.isEqualNode(newTag)) {
+ oldTags.splice(k, 1);
+ return false;
+ }
+ }
+
+ return true;
+ });
+ oldTags.forEach(function (t) {
+ return t.parentNode.removeChild(t);
+ });
+ newTags.forEach(function (t) {
+ return headEl.insertBefore(t, headCountEl);
+ });
+ headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
+}
+
+function initHeadManager() {
+ var updatePromise = null;
+ return function (head) {
+ var promise = updatePromise = Promise.resolve().then(function () {
+ if (promise !== updatePromise) return;
+ updatePromise = null;
+ var tags = {};
+ head.forEach(function (h) {
+ var components = tags[h.type] || [];
+ components.push(h);
+ tags[h.type] = components;
+ });
+ var titleComponent = tags.title ? tags.title[0] : null;
+ var title = '';
+
+ if (titleComponent) {
+ var children = titleComponent.props.children;
+ title = typeof children === 'string' ? children : children.join('');
+ }
+
+ if (title !== document.title) document.title = title;
+ ['meta', 'base', 'link', 'style', 'script'].forEach(function (type) {
+ updateElements(type, tags[type] || []);
+ });
+ });
+ };
+}
+
/***/ }),
/***/ "FYa8":
@@ -213,8 +154,6 @@ function reactElementToDOM(_ref) {
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -225,7 +164,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -241,34 +180,32 @@ exports.HeadManagerContext = React.createContext(null);
"use strict";
-var _regeneratorRuntime = __webpack_require__("ln6h");
-
-var _classCallCheck = __webpack_require__("/HRN");
+var _regeneratorRuntime = __webpack_require__("o0o1");
-var _createClass = __webpack_require__("WaGi");
+var _classCallCheck = __webpack_require__("lwsE");
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _createClass = __webpack_require__("W8MJ");
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
-var _inherits = __webpack_require__("N9n2");
+var _getPrototypeOf = __webpack_require__("Nsbk");
-var _slicedToArray = __webpack_require__("8+Nu");
+var _inherits = __webpack_require__("7W2i");
-var _Promise = __webpack_require__("eVuF");
+var _slicedToArray = __webpack_require__("J4zp");
-var _interopRequireWildcard3 = __webpack_require__("5Uuq");
+var _interopRequireWildcard3 = __webpack_require__("284h");
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.render = render;
exports.renderError = renderError;
exports["default"] = exports.emitter = exports.router = exports.version = void 0;
-var _extends2 = _interopRequireDefault(__webpack_require__("htGi"));
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
-var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("5Uuq"));
+var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("284h"));
var _react = _interopRequireDefault(__webpack_require__("q1tI"));
@@ -293,23 +230,19 @@ var _routerContext = __webpack_require__("qOIg");
var _querystring = __webpack_require__("s4NR");
var _isDynamic = __webpack_require__("/jkW");
+
+var _performanceRelayer = __webpack_require__("bGXG");
/* global location */
-if (false) {} else {
- // Polyfill Promise globally
- // This is needed because Webpack's dynamic loading(common chunks) code
- // depends on Promise.
- // So, we need to polyfill it.
- // See: https://webpack.js.org/guides/code-splitting/#dynamic-imports
- if (!self.Promise) {
- self.Promise = __webpack_require__("eVuF");
- }
+if (!('finally' in Promise.prototype)) {
+ // eslint-disable-next-line no-extend-native
+ Promise.prototype["finally"] = __webpack_require__("zrsZ");
}
var data = JSON.parse(document.getElementById('__NEXT_DATA__').textContent);
window.__NEXT_DATA__ = data;
-var version = "9.2.2";
+var version = "9.2.3-canary.22";
exports.version = version;
var props = data.props,
err = data.err,
@@ -347,7 +280,7 @@ if (window.__NEXT_P) {
window.__NEXT_P = [];
window.__NEXT_P.push = register;
-var headManager = new _headManager["default"]();
+var updateHead = (0, _headManager["default"])();
var appElement = document.getElementById('__next');
var lastAppProps;
var webpackHMR;
@@ -463,12 +396,14 @@ var _default = function _default(_temp) {
var name = _ref2.name,
startTime = _ref2.startTime,
value = _ref2.value,
- duration = _ref2.duration;
+ duration = _ref2.duration,
+ entryType = _ref2.entryType;
mod.unstable_onPerformanceData({
name: name,
startTime: startTime,
value: value,
- duration: duration
+ duration: duration,
+ entryType: entryType
});
};
}
@@ -715,14 +650,9 @@ function renderReactElement(reactEl, domEl) {
if (onPerfEntry && _utils.ST) {
try {
- var observer = new PerformanceObserver(function (list) {
- list.getEntries().forEach(onPerfEntry);
- }); // Start observing paint entry types.
-
- observer.observe({
- type: 'paint',
- buffered: true
- });
+ (0, _performanceRelayer.observeLayoutShift)(onPerfEntry);
+ (0, _performanceRelayer.observeLargestContentfulPaint)(onPerfEntry);
+ (0, _performanceRelayer.observePaint)(onPerfEntry);
} catch (e) {
window.addEventListener('load', function () {
performance.getEntriesByType('paint').forEach(onPerfEntry);
@@ -791,7 +721,7 @@ function AppContainer(_ref4) {
}, _react["default"].createElement(_routerContext.RouterContext.Provider, {
value: (0, _router.makePublicRouterInstance)(router)
}, _react["default"].createElement(_headManagerContext.HeadManagerContext.Provider, {
- value: headManager.updateHead
+ value: updateHead
}, children)));
}
@@ -875,7 +805,21 @@ function doRender(_ref5) {
/***/ }),
-/***/ "K47E":
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+
+/***/ }),
+
+/***/ "PJYZ":
/***/ (function(module, exports) {
function _assertThisInitialized(self) {
@@ -890,74 +834,138 @@ module.exports = _assertThisInitialized;
/***/ }),
-/***/ "N9n2":
+/***/ "a1gu":
/***/ (function(module, exports, __webpack_require__) {
-var _Object$create = __webpack_require__("SqZg");
+var _typeof = __webpack_require__("cDf5");
-var setPrototypeOf = __webpack_require__("vjea");
+var assertThisInitialized = __webpack_require__("PJYZ");
-function _inherits(subClass, superClass) {
- if (typeof superClass !== "function" && superClass !== null) {
- throw new TypeError("Super expression must either be null or a function");
+function _possibleConstructorReturn(self, call) {
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
+ return call;
}
- subClass.prototype = _Object$create(superClass && superClass.prototype, {
- constructor: {
- value: subClass,
- writable: true,
- configurable: true
- }
- });
- if (superClass) setPrototypeOf(subClass, superClass);
+ return assertThisInitialized(self);
}
-module.exports = _inherits;
+module.exports = _possibleConstructorReturn;
/***/ }),
-/***/ "UXZV":
+/***/ "bGXG":
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__("UbbE");
-
-/***/ }),
-
-/***/ "UbbE":
-/***/ (function(module, exports, __webpack_require__) {
+"use strict";
-__webpack_require__("o8NH");
-module.exports = __webpack_require__("WEpk").Object.assign;
+exports.__esModule = true;
+exports.observeLayoutShift = observeLayoutShift;
+exports.observeLargestContentfulPaint = observeLargestContentfulPaint;
+exports.observePaint = observePaint;
-/***/ }),
+function isTypeSupported(type) {
+ if (self.PerformanceObserver && PerformanceObserver.supportedEntryTypes) {
+ return PerformanceObserver.supportedEntryTypes.includes(type);
+ }
-/***/ "ZDA2":
-/***/ (function(module, exports, __webpack_require__) {
+ return false;
+}
-var _typeof = __webpack_require__("iZP3");
+function observeLayoutShift(onPerfEntry) {
+ if (isTypeSupported('layout-shift')) {
+ var cumulativeScore = 0;
+ var observer = new PerformanceObserver(function (list) {
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
+
+ try {
+ for (var _iterator = list.getEntries()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var entry = _step.value;
+
+ // Only count layout shifts without recent user input.
+ if (!entry.hadRecentInput) {
+ cumulativeScore += entry.value;
+ }
+ }
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+ _iterator["return"]();
+ }
+ } finally {
+ if (_didIteratorError) {
+ throw _iteratorError;
+ }
+ }
+ }
+ });
+ observer.observe({
+ type: 'layout-shift',
+ buffered: true
+ });
+ document.addEventListener('visibilitychange', function clsObserver() {
+ if (document.visibilityState === 'hidden') {
+ // Force any pending records to be dispatched.
+ observer.takeRecords();
+ observer.disconnect();
+ removeEventListener('visibilitychange', clsObserver, true);
+ onPerfEntry({
+ name: 'cumulative-layout-shift',
+ value: cumulativeScore
+ });
+ }
+ }, true);
+ }
+}
-var assertThisInitialized = __webpack_require__("K47E");
+function observeLargestContentfulPaint(onPerfEntry) {
+ if (isTypeSupported('largest-contentful-paint')) {
+ // Create a variable to hold the latest LCP value (since it can change).
+ var lcp; // Create the PerformanceObserver instance.
-function _possibleConstructorReturn(self, call) {
- if (call && (_typeof(call) === "object" || typeof call === "function")) {
- return call;
+ var observer = new PerformanceObserver(function (entryList) {
+ var entries = entryList.getEntries();
+ var lastEntry = entries[entries.length - 1];
+ lcp = lastEntry.renderTime || lastEntry.loadTime;
+ });
+ observer.observe({
+ type: 'largest-contentful-paint',
+ buffered: true
+ });
+ document.addEventListener('visibilitychange', function lcpObserver() {
+ if (lcp && document.visibilityState === 'hidden') {
+ removeEventListener('visibilitychange', lcpObserver, true);
+ onPerfEntry({
+ name: 'largest-contentful-paint',
+ value: lcp
+ });
+ }
+ }, true);
}
-
- return assertThisInitialized(self);
}
-module.exports = _possibleConstructorReturn;
+function observePaint(onPerfEntry) {
+ var observer = new PerformanceObserver(function (list) {
+ list.getEntries().forEach(onPerfEntry);
+ });
+ observer.observe({
+ type: 'paint',
+ buffered: true
+ });
+}
/***/ }),
-/***/ "htGi":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$assign = __webpack_require__("UXZV");
+/***/ "pVnL":
+/***/ (function(module, exports) {
function _extends() {
- module.exports = _extends = _Object$assign || function (target) {
+ module.exports = _extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
@@ -976,17 +984,6 @@ function _extends() {
module.exports = _extends;
-/***/ }),
-
-/***/ "o8NH":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") });
-
-
/***/ }),
/***/ "yLiY":
@@ -995,12 +992,9 @@ $export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") }
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
-
var runtimeConfig;
exports["default"] = function () {
@@ -1021,19 +1015,25 @@ exports.setConfig = setConfig;
"use strict";
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
-var _Promise = __webpack_require__("eVuF");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports["default"] = void 0;
+var _url = __webpack_require__("QmWs");
+
var _mitt = _interopRequireDefault(__webpack_require__("dZ6Y"));
+var _isDynamic = __webpack_require__("/jkW");
+
+var _routeMatcher = __webpack_require__("gguc");
+
+var _routeRegex = __webpack_require__("YTqd");
+
function hasRel(rel, link) {
try {
link = document.createElement('link');
@@ -1047,6 +1047,7 @@ var relPrefetch = hasRel('preload') && !hasRel('prefetch') ? // https://caniuse.
// IE 11, Edge 12+, nearly all evergreen
'prefetch';
var hasNoModule = 'noModule' in document.createElement('script');
+/** @param {string} route */
function normalizeRoute(route) {
if (route[0] !== '/') {
@@ -1059,7 +1060,7 @@ function normalizeRoute(route) {
}
function appendLink(href, rel, as) {
- return new _Promise(function (res, rej, link) {
+ return new Promise(function (res, rej, link) {
link = document.createElement('link');
link.crossOrigin = "anonymous";
link.href = href;
@@ -1082,7 +1083,7 @@ var PageLoader = /*#__PURE__*/function () {
this.loadingRoutes = {};
if (true) {
- this.promisedBuildManifest = new _Promise(function (resolve) {
+ this.promisedBuildManifest = new Promise(function (resolve) {
if (window.__BUILD_MANIFEST) {
resolve(window.__BUILD_MANIFEST);
} else {
@@ -1092,6 +1093,18 @@ var PageLoader = /*#__PURE__*/function () {
}
});
}
+ /** @type {Promise<Set<string>>} */
+
+
+ this.promisedSsgManifest = new Promise(function (resolve) {
+ if (window.__SSG_MANIFEST) {
+ resolve(window.__SSG_MANIFEST);
+ } else {
+ window.__SSG_MANIFEST_CB = function () {
+ resolve(window.__SSG_MANIFEST);
+ };
+ }
+ });
} // Returns a promise for the dependencies for a particular route
@@ -1106,6 +1119,82 @@ var PageLoader = /*#__PURE__*/function () {
}) || [];
});
}
+ /**
+ * @param {string} href the route href (file-system path)
+ * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+ */
+
+ }, {
+ key: "getDataHref",
+ value: function getDataHref(href, asPath) {
+ var _this2 = this;
+
+ var getHrefForSlug =
+ /** @type string */
+ function getHrefForSlug(path) {
+ return _this2.assetPrefix + "/_next/data/" + _this2.buildId + (path === '/' ? '/index' : path) + ".json";
+ };
+
+ var _ref = (0, _url.parse)(href, true),
+ hrefPathname = _ref.pathname,
+ query = _ref.query;
+
+ var _ref2 = (0, _url.parse)(asPath),
+ asPathname = _ref2.pathname;
+
+ var route = normalizeRoute(hrefPathname);
+ var isDynamic = (0, _isDynamic.isDynamicRoute)(route),
+ interpolatedRoute;
+
+ if (isDynamic) {
+ var dynamicRegex = (0, _routeRegex.getRouteRegex)(route);
+ var dynamicGroups = dynamicRegex.groups;
+ var dynamicMatches = // Try to match the dynamic route against the asPath
+ (0, _routeMatcher.getRouteMatcher)(dynamicRegex)(asPathname) || // Fall back to reading the values from the href
+ // TODO: should this take priority; also need to change in the router.
+ query;
+ interpolatedRoute = route;
+
+ if (!Object.keys(dynamicGroups).every(function (param) {
+ var value = dynamicMatches[param];
+ var repeat = dynamicGroups[param].repeat; // support single-level catch-all
+ // TODO: more robust handling for user-error (passing `/`)
+
+ if (repeat && !Array.isArray(value)) value = [value];
+ return param in dynamicMatches && ( // Interpolate group into data URL if present
+ interpolatedRoute = interpolatedRoute.replace("[" + (repeat ? '...' : '') + param + "]", repeat ? value.map(encodeURIComponent).join('/') : encodeURIComponent(value)));
+ })) {
+ interpolatedRoute = ''; // did not satisfy all requirements
+ // n.b. We ignore this error because we handle warning for this case in
+ // development in the `<Link>` component directly.
+ }
+ }
+
+ return isDynamic ? interpolatedRoute && getHrefForSlug(interpolatedRoute) : getHrefForSlug(route);
+ }
+ /**
+ * @param {string} href the route href (file-system path)
+ * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+ */
+
+ }, {
+ key: "prefetchData",
+ value: function prefetchData(href, asPath) {
+ var _this3 = this;
+
+ var _ref3 = (0, _url.parse)(href, true),
+ hrefPathname = _ref3.pathname;
+
+ var route = normalizeRoute(hrefPathname);
+ return this.promisedSsgManifest.then(function (s, _dataHref) {
+ return (// Check if the route requires a data file
+ s.has(route) && ( // Try to generate data href, noop when falsy
+ _dataHref = _this3.getDataHref(href, asPath)) && // noop when data has already been prefetched (dedupe)
+ !document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + _dataHref + "\"]") && // Inject the `<link rel=prefetch>` tag for above computed `href`.
+ appendLink(_dataHref, relPrefetch, 'fetch')
+ );
+ });
+ }
}, {
key: "loadPage",
value: function loadPage(route) {
@@ -1116,18 +1205,18 @@ var PageLoader = /*#__PURE__*/function () {
}, {
key: "loadPageScript",
value: function loadPageScript(route) {
- var _this2 = this;
+ var _this4 = this;
route = normalizeRoute(route);
- return new _Promise(function (resolve, reject) {
+ return new Promise(function (resolve, reject) {
var fire = function fire(_ref) {
var error = _ref.error,
page = _ref.page,
mod = _ref.mod;
- _this2.pageRegisterEvents.off(route, fire);
+ _this4.pageRegisterEvents.off(route, fire);
- delete _this2.loadingRoutes[route];
+ delete _this4.loadingRoutes[route];
if (error) {
reject(error);
@@ -1140,7 +1229,7 @@ var PageLoader = /*#__PURE__*/function () {
}; // If there's a cached version of the page, let's use it.
- var cachedPage = _this2.pageCache[route];
+ var cachedPage = _this4.pageCache[route];
if (cachedPage) {
var error = cachedPage.error,
@@ -1154,7 +1243,7 @@ var PageLoader = /*#__PURE__*/function () {
} // Register a listener to get the page
- _this2.pageRegisterEvents.on(route, fire); // If the page is loading via SSR, we need to wait for it
+ _this4.pageRegisterEvents.on(route, fire); // If the page is loading via SSR, we need to wait for it
// rather downloading it again.
@@ -1162,14 +1251,14 @@ var PageLoader = /*#__PURE__*/function () {
return;
}
- if (!_this2.loadingRoutes[route]) {
- _this2.loadingRoutes[route] = true;
+ if (!_this4.loadingRoutes[route]) {
+ _this4.loadingRoutes[route] = true;
if (true) {
- _this2.getDependencies(route).then(function (deps) {
+ _this4.getDependencies(route).then(function (deps) {
deps.forEach(function (d) {
if (/\.js$/.test(d) && !document.querySelector("script[src^=\"" + d + "\"]")) {
- _this2.loadScript(d, route, false);
+ _this4.loadScript(d, route, false);
}
if (/\.css$/.test(d) && !document.querySelector("link[rel=stylesheet][href^=\"" + d + "\"]")) {
@@ -1179,7 +1268,7 @@ var PageLoader = /*#__PURE__*/function () {
}
});
- _this2.loadRoute(route);
+ _this4.loadRoute(route);
});
} else {}
}
@@ -1196,7 +1285,7 @@ var PageLoader = /*#__PURE__*/function () {
}, {
key: "loadScript",
value: function loadScript(url, route, isPage) {
- var _this3 = this;
+ var _this5 = this;
var script = document.createElement('script');
@@ -1214,7 +1303,7 @@ var PageLoader = /*#__PURE__*/function () {
var error = new Error("Error loading script " + url);
error.code = 'PAGE_LOAD_ERROR';
- _this3.pageRegisterEvents.emit(route, {
+ _this5.pageRegisterEvents.emit(route, {
error: error
});
};
@@ -1225,7 +1314,7 @@ var PageLoader = /*#__PURE__*/function () {
}, {
key: "registerPage",
value: function registerPage(route, regFn) {
- var _this4 = this;
+ var _this6 = this;
var register = function register() {
try {
@@ -1234,15 +1323,15 @@ var PageLoader = /*#__PURE__*/function () {
page: mod["default"] || mod,
mod: mod
};
- _this4.pageCache[route] = pageData;
+ _this6.pageCache[route] = pageData;
- _this4.pageRegisterEvents.emit(route, pageData);
+ _this6.pageRegisterEvents.emit(route, pageData);
} catch (error) {
- _this4.pageCache[route] = {
+ _this6.pageCache[route] = {
error: error
};
- _this4.pageRegisterEvents.emit(route, {
+ _this6.pageRegisterEvents.emit(route, {
error: error
});
}
@@ -1252,10 +1341,15 @@ var PageLoader = /*#__PURE__*/function () {
register();
}
+ /**
+ * @param {string} route
+ * @param {boolean} [isDependency]
+ */
+
}, {
key: "prefetch",
value: function prefetch(route, isDependency) {
- var _this5 = this;
+ var _this7 = this;
// https://github.com/GoogleChromeLabs/quicklink/blob/453a661fa1fa940e2d2e044452398e38c67a98fb/src/index.mjs#L115-L118
// License: Apache 2.0
@@ -1263,8 +1357,10 @@ var PageLoader = /*#__PURE__*/function () {
if (cn = navigator.connection) {
// Don't prefetch if using 2G or if Save-Data is enabled.
- if (cn.saveData || /2g/.test(cn.effectiveType)) return _Promise.resolve();
+ if (cn.saveData || /2g/.test(cn.effectiveType)) return Promise.resolve();
}
+ /** @type {string} */
+
var url;
@@ -1281,9 +1377,9 @@ var PageLoader = /*#__PURE__*/function () {
url = this.assetPrefix + "/_next/static/" + encodeURIComponent(this.buildId) + "/pages" + encodeURI(scriptRoute);
}
- return _Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'), true && !isDependency && this.getDependencies(route).then(function (urls) {
- return _Promise.all(urls.map(function (url) {
- return _this5.prefetch(url, true);
+ return Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'), true && !isDependency && this.getDependencies(route).then(function (urls) {
+ return Promise.all(urls.map(function (url) {
+ return _this7.prefetch(url, true);
}));
})]).then( // do not return any data
function () {}, // swallow prefetch errors
@@ -1296,6 +1392,13 @@ var PageLoader = /*#__PURE__*/function () {
exports["default"] = PageLoader;
+/***/ }),
+
+/***/ "zrsZ":
+/***/ (function(module, exports) {
+
+Promise.prototype.finally=function(n){if("function"!=typeof n)return this.then(n,n);var t=this.constructor||Promise;return this.then(function(r){return t.resolve(n()).then(function(){return r})},function(r){return t.resolve(n()).then(function(){throw r})})};
+
/***/ })
-},[["BMP1",0,2,1,3,4]]]);
\ No newline at end of file
+},[["BMP1",0,1,2]]]);
\ No newline at end of file
Diff for framework.HASH.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[2],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[1],{
/***/ "+wdc":
/***/ (function(module, exports, __webpack_require__) {
Diff for de003c3a9d30..f1fc2d092.js
Diff too large to display
Diff for de003c3a9d30..fb.module.js
Diff too large to display
Diff for withRouter.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
/***/ "0Hlz":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -36,4 +36,4 @@ useWithRouter.getInitialProps = () => ({});
/***/ })
-},[["eThv",0,1,2,3]]]);
\ No newline at end of file
+},[["eThv",0,1,2]]]);
\ No newline at end of file
Diff for withRouter.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[11],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
/***/ "0Hlz":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -38,4 +38,4 @@ useWithRouter.getInitialProps = function () {
/***/ })
-},[["eThv",0,2,1,3,4]]]);
\ No newline at end of file
+},[["eThv",0,1,2]]]);
\ No newline at end of file
Diff for routerDirect.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
/***/ "LtRI":
/***/ (function(module, exports, __webpack_require__) {
@@ -38,4 +38,4 @@ routerDirect.getInitialProps = () => ({});
/***/ })
-},[["LtRI",0,1,2,3]]]);
\ No newline at end of file
+},[["LtRI",0,1,2]]]);
\ No newline at end of file
Diff for routerDirect.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
/***/ "LtRI":
/***/ (function(module, exports, __webpack_require__) {
@@ -40,4 +40,4 @@ routerDirect.getInitialProps = function () {
/***/ })
-},[["LtRI",0,2,1,3,4]]]);
\ No newline at end of file
+},[["LtRI",0,1,2]]]);
\ No newline at end of file
Diff for link.module.js
@@ -1,36 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
-
-/***/ "/h46":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
-__webpack_require__("cHUd")('Map');
-
-
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
- return function toJSON() {
- if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
- return from(this);
- };
-};
-
-
-/***/ }),
-
-/***/ "LX0d":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("UDep");
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
/***/ "ObF3":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -55,35 +23,6 @@ aLink.getInitialProps = () => ({});
/* harmony default export */ __webpack_exports__["default"] = (aLink);
-/***/ }),
-
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
- var result = [];
- forOf(iter, false, result.push, result, ITERATOR);
- return result;
-};
-
-
-/***/ }),
-
-/***/ "UDep":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("g33z");
-__webpack_require__("XLbu");
-__webpack_require__("/h46");
-__webpack_require__("dVTT");
-module.exports = __webpack_require__("WEpk").Map;
-
-
/***/ }),
/***/ "V8Sf":
@@ -97,169 +36,6 @@ module.exports = __webpack_require__("WEpk").Map;
}]);
-/***/ }),
-
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
- // fast case
- var index = fastKey(key);
- var entry;
- if (index !== 'F') return that._i[index];
- // frozen object case
- for (entry = that._f; entry; entry = entry.n) {
- if (entry.k == key) return entry;
- }
-};
-
-module.exports = {
- getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
- var C = wrapper(function (that, iterable) {
- anInstance(that, C, NAME, '_i');
- that._t = NAME; // collection type
- that._i = create(null); // index
- that._f = undefined; // first entry
- that._l = undefined; // last entry
- that[SIZE] = 0; // size
- if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
- });
- redefineAll(C.prototype, {
- // 23.1.3.1 Map.prototype.clear()
- // 23.2.3.2 Set.prototype.clear()
- clear: function clear() {
- for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
- entry.r = true;
- if (entry.p) entry.p = entry.p.n = undefined;
- delete data[entry.i];
- }
- that._f = that._l = undefined;
- that[SIZE] = 0;
- },
- // 23.1.3.3 Map.prototype.delete(key)
- // 23.2.3.4 Set.prototype.delete(value)
- 'delete': function (key) {
- var that = validate(this, NAME);
- var entry = getEntry(that, key);
- if (entry) {
- var next = entry.n;
- var prev = entry.p;
- delete that._i[entry.i];
- entry.r = true;
- if (prev) prev.n = next;
- if (next) next.p = prev;
- if (that._f == entry) that._f = next;
- if (that._l == entry) that._l = prev;
- that[SIZE]--;
- } return !!entry;
- },
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
- forEach: function forEach(callbackfn /* , that = undefined */) {
- validate(this, NAME);
- var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
- var entry;
- while (entry = entry ? entry.n : this._f) {
- f(entry.v, entry.k, this);
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- }
- },
- // 23.1.3.7 Map.prototype.has(key)
- // 23.2.3.7 Set.prototype.has(value)
- has: function has(key) {
- return !!getEntry(validate(this, NAME), key);
- }
- });
- if (DESCRIPTORS) dP(C.prototype, 'size', {
- get: function () {
- return validate(this, NAME)[SIZE];
- }
- });
- return C;
- },
- def: function (that, key, value) {
- var entry = getEntry(that, key);
- var prev, index;
- // change existing entry
- if (entry) {
- entry.v = value;
- // create new entry
- } else {
- that._l = entry = {
- i: index = fastKey(key, true), // <- index
- k: key, // <- key
- v: value, // <- value
- p: prev = that._l, // <- previous entry
- n: undefined, // <- next entry
- r: false // <- removed
- };
- if (!that._f) that._f = entry;
- if (prev) prev.n = entry;
- that[SIZE]++;
- // add to index
- if (index !== 'F') that._i[index] = entry;
- } return that;
- },
- getEntry: getEntry,
- setStrong: function (C, NAME, IS_MAP) {
- // add .keys, .values, .entries, [@@iterator]
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
- $iterDefine(C, NAME, function (iterated, kind) {
- this._t = validate(iterated, NAME); // target
- this._k = kind; // kind
- this._l = undefined; // previous
- }, function () {
- var that = this;
- var kind = that._k;
- var entry = that._l;
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- // get next entry
- if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
- // or finish the iteration
- that._t = undefined;
- return step(1);
- }
- // return step by kind
- if (kind == 'keys') return step(0, entry.k);
- if (kind == 'values') return step(0, entry.v);
- return step(0, [entry.k, entry.v]);
- }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
- // add [@@species], 23.1.2.2, 23.2.2.2
- setSpecies(NAME);
- }
-};
-
-
-/***/ }),
-
-/***/ "XLbu":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__("8iia")('Map') });
-
-
/***/ }),
/***/ "YFqc":
@@ -276,18 +52,16 @@ module.exports = __webpack_require__("cTJO")
"use strict";
-var _Map = __webpack_require__("LX0d");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
exports.__esModule = true;
exports.default = void 0;
var _react = _interopRequireWildcard(__webpack_require__("q1tI"));
-var _url = __webpack_require__("CxY0");
+var _url = __webpack_require__("QmWs");
var _utils = __webpack_require__("g/15");
@@ -321,7 +95,7 @@ function formatUrl(url) {
}
var observer;
-var listeners = new _Map();
+var listeners = new Map();
var IntersectionObserver = true ? window.IntersectionObserver : undefined;
var prefetched = {};
@@ -460,10 +234,10 @@ class Link extends _react.Component {
}
handleRef(ref) {
- var isPrefetched = prefetched[this.getPaths()[0]];
-
if (this.p && IntersectionObserver && ref && ref.tagName) {
this.cleanUpListeners();
+ var isPrefetched = prefetched[this.getPaths().join( // Join on an invalid URI character
+ '%')];
if (!isPrefetched) {
this.cleanUpListeners = listenToIntersections(ref, () => {
@@ -478,11 +252,20 @@ class Link extends _react.Component {
prefetch(options) {
if (!this.p || false) return; // Prefetch the JSON page if asked (only in the client)
- var [href, asPath] = this.getPaths();
+ var paths = this.getPaths(); // We need to handle a prefetch error here since we may be
+ // loading with priority which can reject but we don't
+ // want to force navigation since this is only a prefetch
- _router.default.prefetch(href, asPath, options);
+ _router.default.prefetch(paths[
+ /* href */
+ 0], paths[
+ /* asPath */
+ 1], options).catch(err => {
+ if (false) {}
+ });
- prefetched[href] = true;
+ prefetched[paths.join( // Join on an invalid URI character
+ '%')] = true;
}
render() {
@@ -550,42 +333,6 @@ if (false) { var exact, PropTypes, warn; }
var _default = Link;
exports.default = _default;
-/***/ }),
-
-/***/ "dVTT":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
-__webpack_require__("aPfg")('Map');
-
-
-/***/ }),
-
-/***/ "g33z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var MAP = 'Map';
-
-// 23.1 Map Objects
-module.exports = __webpack_require__("raTm")(MAP, function (get) {
- return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
- // 23.1.3.6 Map.prototype.get(key)
- get: function get(key) {
- var entry = strong.getEntry(validate(this, MAP), key);
- return entry && entry.v;
- },
- // 23.1.3.9 Map.prototype.set(key, value)
- set: function set(key, value) {
- return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
- }
-}, strong, true);
-
-
/***/ })
-},[["V8Sf",0,1,2,3]]]);
\ No newline at end of file
+},[["V8Sf",0,1,2]]]);
\ No newline at end of file
Diff for link.js
@@ -1,115 +1,16 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
-/***/ "+plK":
+/***/ "7W2i":
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
- module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
- return o.__proto__ || _Object$getPrototypeOf(o);
- };
- return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
-
-/***/ "/h46":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
-__webpack_require__("cHUd")('Map');
-
-
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
- return function toJSON() {
- if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
- return from(this);
- };
-};
-
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
-
-__webpack_require__("zn7N")('getPrototypeOf', function () {
- return function getPrototypeOf(it) {
- return $getPrototypeOf(toObject(it));
- };
-});
-
-
-/***/ }),
-
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+plK");
-
-/***/ }),
-
-/***/ "K47E":
-/***/ (function(module, exports) {
-
-function _assertThisInitialized(self) {
- if (self === void 0) {
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
- }
-
- return self;
-}
-
-module.exports = _assertThisInitialized;
-
-/***/ }),
-
-/***/ "LX0d":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("UDep");
-
-/***/ }),
-
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
+var setPrototypeOf = __webpack_require__("SksO");
function _inherits(subClass, superClass) {
if (typeof superClass !== "function" && superClass !== null) {
throw new TypeError("Super expression must either be null or a function");
}
- subClass.prototype = _Object$create(superClass && superClass.prototype, {
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
constructor: {
value: subClass,
writable: true,
@@ -123,6 +24,20 @@ module.exports = _inherits;
/***/ }),
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+
+/***/ }),
+
/***/ "ObF3":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -150,32 +65,18 @@ aLink.getInitialProps = function () {
/***/ }),
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
- var result = [];
- forOf(iter, false, result.push, result, ITERATOR);
- return result;
-};
-
-
-/***/ }),
+/***/ "PJYZ":
+/***/ (function(module, exports) {
-/***/ "UDep":
-/***/ (function(module, exports, __webpack_require__) {
+function _assertThisInitialized(self) {
+ if (self === void 0) {
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+ }
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("g33z");
-__webpack_require__("XLbu");
-__webpack_require__("/h46");
-__webpack_require__("dVTT");
-module.exports = __webpack_require__("WEpk").Map;
+ return self;
+}
+module.exports = _assertThisInitialized;
/***/ }),
@@ -190,169 +91,6 @@ module.exports = __webpack_require__("WEpk").Map;
}]);
-/***/ }),
-
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
- // fast case
- var index = fastKey(key);
- var entry;
- if (index !== 'F') return that._i[index];
- // frozen object case
- for (entry = that._f; entry; entry = entry.n) {
- if (entry.k == key) return entry;
- }
-};
-
-module.exports = {
- getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
- var C = wrapper(function (that, iterable) {
- anInstance(that, C, NAME, '_i');
- that._t = NAME; // collection type
- that._i = create(null); // index
- that._f = undefined; // first entry
- that._l = undefined; // last entry
- that[SIZE] = 0; // size
- if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
- });
- redefineAll(C.prototype, {
- // 23.1.3.1 Map.prototype.clear()
- // 23.2.3.2 Set.prototype.clear()
- clear: function clear() {
- for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
- entry.r = true;
- if (entry.p) entry.p = entry.p.n = undefined;
- delete data[entry.i];
- }
- that._f = that._l = undefined;
- that[SIZE] = 0;
- },
- // 23.1.3.3 Map.prototype.delete(key)
- // 23.2.3.4 Set.prototype.delete(value)
- 'delete': function (key) {
- var that = validate(this, NAME);
- var entry = getEntry(that, key);
- if (entry) {
- var next = entry.n;
- var prev = entry.p;
- delete that._i[entry.i];
- entry.r = true;
- if (prev) prev.n = next;
- if (next) next.p = prev;
- if (that._f == entry) that._f = next;
- if (that._l == entry) that._l = prev;
- that[SIZE]--;
- } return !!entry;
- },
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
- forEach: function forEach(callbackfn /* , that = undefined */) {
- validate(this, NAME);
- var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
- var entry;
- while (entry = entry ? entry.n : this._f) {
- f(entry.v, entry.k, this);
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- }
- },
- // 23.1.3.7 Map.prototype.has(key)
- // 23.2.3.7 Set.prototype.has(value)
- has: function has(key) {
- return !!getEntry(validate(this, NAME), key);
- }
- });
- if (DESCRIPTORS) dP(C.prototype, 'size', {
- get: function () {
- return validate(this, NAME)[SIZE];
- }
- });
- return C;
- },
- def: function (that, key, value) {
- var entry = getEntry(that, key);
- var prev, index;
- // change existing entry
- if (entry) {
- entry.v = value;
- // create new entry
- } else {
- that._l = entry = {
- i: index = fastKey(key, true), // <- index
- k: key, // <- key
- v: value, // <- value
- p: prev = that._l, // <- previous entry
- n: undefined, // <- next entry
- r: false // <- removed
- };
- if (!that._f) that._f = entry;
- if (prev) prev.n = entry;
- that[SIZE]++;
- // add to index
- if (index !== 'F') that._i[index] = entry;
- } return that;
- },
- getEntry: getEntry,
- setStrong: function (C, NAME, IS_MAP) {
- // add .keys, .values, .entries, [@@iterator]
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
- $iterDefine(C, NAME, function (iterated, kind) {
- this._t = validate(iterated, NAME); // target
- this._k = kind; // kind
- this._l = undefined; // previous
- }, function () {
- var that = this;
- var kind = that._k;
- var entry = that._l;
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- // get next entry
- if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
- // or finish the iteration
- that._t = undefined;
- return step(1);
- }
- // return step by kind
- if (kind == 'keys') return step(0, entry.k);
- if (kind == 'values') return step(0, entry.v);
- return step(0, [entry.k, entry.v]);
- }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
- // add [@@species], 23.1.2.2, 23.2.2.2
- setSpecies(NAME);
- }
-};
-
-
-/***/ }),
-
-/***/ "XLbu":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__("8iia")('Map') });
-
-
/***/ }),
/***/ "YFqc":
@@ -363,12 +101,12 @@ module.exports = __webpack_require__("cTJO")
/***/ }),
-/***/ "ZDA2":
+/***/ "a1gu":
/***/ (function(module, exports, __webpack_require__) {
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
function _possibleConstructorReturn(self, call) {
if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -388,30 +126,26 @@ module.exports = _possibleConstructorReturn;
"use strict";
-var _slicedToArray = __webpack_require__("8+Nu");
-
-var _classCallCheck = __webpack_require__("/HRN");
-
-var _createClass = __webpack_require__("WaGi");
+var _classCallCheck = __webpack_require__("lwsE");
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _createClass = __webpack_require__("W8MJ");
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
-var _inherits = __webpack_require__("N9n2");
+var _getPrototypeOf = __webpack_require__("Nsbk");
-var _Map = __webpack_require__("LX0d");
+var _inherits = __webpack_require__("7W2i");
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireWildcard(__webpack_require__("q1tI"));
-var _url = __webpack_require__("CxY0");
+var _url = __webpack_require__("QmWs");
var _utils = __webpack_require__("g/15");
@@ -445,7 +179,7 @@ function formatUrl(url) {
}
var observer;
-var listeners = new _Map();
+var listeners = new Map();
var IntersectionObserver = true ? window.IntersectionObserver : undefined;
var prefetched = {};
@@ -590,10 +324,10 @@ var Link = /*#__PURE__*/function (_react$Component) {
value: function handleRef(ref) {
var _this2 = this;
- var isPrefetched = prefetched[this.getPaths()[0]];
-
if (this.p && IntersectionObserver && ref && ref.tagName) {
this.cleanUpListeners();
+ var isPrefetched = prefetched[this.getPaths().join( // Join on an invalid URI character
+ '%')];
if (!isPrefetched) {
this.cleanUpListeners = listenToIntersections(ref, function () {
@@ -609,14 +343,20 @@ var Link = /*#__PURE__*/function (_react$Component) {
value: function prefetch(options) {
if (!this.p || false) return; // Prefetch the JSON page if asked (only in the client)
- var _this$getPaths = this.getPaths(),
- _this$getPaths2 = _slicedToArray(_this$getPaths, 2),
- href = _this$getPaths2[0],
- asPath = _this$getPaths2[1];
+ var paths = this.getPaths(); // We need to handle a prefetch error here since we may be
+ // loading with priority which can reject but we don't
+ // want to force navigation since this is only a prefetch
- _router["default"].prefetch(href, asPath, options);
+ _router["default"].prefetch(paths[
+ /* href */
+ 0], paths[
+ /* asPath */
+ 1], options)["catch"](function (err) {
+ if (false) {}
+ });
- prefetched[href] = true;
+ prefetched[paths.join( // Join on an invalid URI character
+ '%')] = true;
}
}, {
key: "render",
@@ -688,42 +428,6 @@ if (false) { var exact, PropTypes, warn; }
var _default = Link;
exports["default"] = _default;
-/***/ }),
-
-/***/ "dVTT":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
-__webpack_require__("aPfg")('Map');
-
-
-/***/ }),
-
-/***/ "g33z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var MAP = 'Map';
-
-// 23.1 Map Objects
-module.exports = __webpack_require__("raTm")(MAP, function (get) {
- return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
- // 23.1.3.6 Map.prototype.get(key)
- get: function get(key) {
- var entry = strong.getEntry(validate(this, MAP), key);
- return entry && entry.v;
- },
- // 23.1.3.9 Map.prototype.set(key, value)
- set: function set(key, value) {
- return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
- }
-}, strong, true);
-
-
/***/ })
-},[["V8Sf",0,2,1,3,4]]]);
\ No newline at end of file
+},[["V8Sf",0,1,2]]]);
\ No newline at end of file
Diff for index.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
/***/ "RNiq":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for index.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
/***/ "RNiq":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for hooks.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
/***/ "+MDD":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for hooks.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
/***/ "+MDD":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -6,28 +6,13 @@
"use strict";
__webpack_require__.r(__webpack_exports__);
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/array/is-array.js
-var is_array = __webpack_require__("p0XB");
-var is_array_default = /*#__PURE__*/__webpack_require__.n(is_array);
-
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/arrayWithHoles.js
-
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
function _arrayWithHoles(arr) {
- if (is_array_default()(arr)) return arr;
+ if (Array.isArray(arr)) return arr;
}
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/get-iterator.js
-var get_iterator = __webpack_require__("XXOK");
-var get_iterator_default = /*#__PURE__*/__webpack_require__.n(get_iterator);
-
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/is-iterable.js
-var is_iterable = __webpack_require__("yLu3");
-var is_iterable_default = /*#__PURE__*/__webpack_require__.n(is_iterable);
-
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/iterableToArrayLimit.js
-
-
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
function _iterableToArrayLimit(arr, i) {
- if (!(is_iterable_default()(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
+ if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
return;
}
@@ -37,7 +22,7 @@ function _iterableToArrayLimit(arr, i) {
var _e = undefined;
try {
- for (var _i = get_iterator_default()(arr), _s; !(_n = (_s = _i.next()).done); _n = true) {
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
_arr.push(_s.value);
if (i && _arr.length === i) break;
@@ -55,11 +40,11 @@ function _iterableToArrayLimit(arr, i) {
return _arr;
}
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/nonIterableRest.js
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
function _nonIterableRest() {
throw new TypeError("Invalid attempt to destructure non-iterable instance");
}
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/slicedToArray.js
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
@@ -99,34 +84,11 @@ var __jsx = react_default.a.createElement;
/***/ }),
-/***/ "Rp86":
+/***/ "Qetd":
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__("bBy9");
-__webpack_require__("FlQf");
-module.exports = __webpack_require__("fXsU");
-
-
-/***/ }),
-
-/***/ "XXOK":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("Rp86");
-
-/***/ }),
-
-/***/ "fXsU":
-/***/ (function(module, exports, __webpack_require__) {
-
-var anObject = __webpack_require__("5K7Z");
-var get = __webpack_require__("fNZA");
-module.exports = __webpack_require__("WEpk").getIterator = function (it) {
- var iterFn = get(it);
- if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!');
- return anObject(iterFn.call(it));
-};
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
/***/ }),
@@ -143,4 +105,4 @@ module.exports = __webpack_require__("WEpk").getIterator = function (it) {
/***/ })
-},[["g1vQ",0,2,1]]]);
\ No newline at end of file
+},[["g1vQ",0,1]]]);
\ No newline at end of file
Diff for _error.module.js
@@ -1,19 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
-
-/***/ "+iuc":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("B9jh");
-__webpack_require__("dL40");
-__webpack_require__("xvv9");
-__webpack_require__("V+O7");
-module.exports = __webpack_require__("WEpk").Set;
-
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
/***/ "/0+H":
/***/ (function(module, exports, __webpack_require__) {
@@ -21,15 +6,13 @@ module.exports = __webpack_require__("WEpk").Set;
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importDefault = this && this.__importDefault || function (mod) {
return mod && mod.__esModule ? mod : {
"default": mod
};
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -63,7 +46,7 @@ exports.useAmp = useAmp;
"use strict";
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.default = void 0;
@@ -177,17 +160,13 @@ var styles = {
"use strict";
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importDefault = this && this.__importDefault || function (mod) {
return mod && mod.__esModule ? mod : {
"default": mod
};
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -247,9 +226,9 @@ var METATYPES = ['name', 'httpEquiv', 'charSet', 'itemProp'];
*/
function unique() {
- var keys = new _Set();
- var tags = new _Set();
- var metaTypes = new _Set();
+ var keys = new Set();
+ var tags = new Set();
+ var metaTypes = new Set();
var metaCategories = {};
return h => {
var unique = true;
@@ -289,7 +268,7 @@ function unique() {
}
} else {
var category = h.props[metatype];
- var categories = metaCategories[metatype] || new _Set();
+ var categories = metaCategories[metatype] || new Set();
if (categories.has(category)) {
unique = false;
@@ -344,44 +323,6 @@ function Head(_ref) {
Head.rewind = Effect.rewind;
exports.default = Head;
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
- return function toJSON() {
- if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
- return from(this);
- };
-};
-
-
-/***/ }),
-
-/***/ "B9jh":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var SET = 'Set';
-
-// 23.2 Set Objects
-module.exports = __webpack_require__("raTm")(SET, function (get) {
- return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
- // 23.2.3.1 Set.prototype.add(value)
- add: function add(value) {
- return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);
- }
-}, strong);
-
-
/***/ }),
/***/ "FYa8":
@@ -390,8 +331,6 @@ module.exports = __webpack_require__("raTm")(SET, function (get) {
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -402,7 +341,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -412,178 +351,24 @@ exports.HeadManagerContext = React.createContext(null);
/***/ }),
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
- var result = [];
- forOf(iter, false, result.push, result, ITERATOR);
- return result;
-};
-
-
-/***/ }),
-
-/***/ "V+O7":
+/***/ "Qetd":
/***/ (function(module, exports, __webpack_require__) {
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from
-__webpack_require__("aPfg")('Set');
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
/***/ }),
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "TqRt":
+/***/ (function(module, exports) {
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
- // fast case
- var index = fastKey(key);
- var entry;
- if (index !== 'F') return that._i[index];
- // frozen object case
- for (entry = that._f; entry; entry = entry.n) {
- if (entry.k == key) return entry;
- }
-};
-
-module.exports = {
- getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
- var C = wrapper(function (that, iterable) {
- anInstance(that, C, NAME, '_i');
- that._t = NAME; // collection type
- that._i = create(null); // index
- that._f = undefined; // first entry
- that._l = undefined; // last entry
- that[SIZE] = 0; // size
- if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
- });
- redefineAll(C.prototype, {
- // 23.1.3.1 Map.prototype.clear()
- // 23.2.3.2 Set.prototype.clear()
- clear: function clear() {
- for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
- entry.r = true;
- if (entry.p) entry.p = entry.p.n = undefined;
- delete data[entry.i];
- }
- that._f = that._l = undefined;
- that[SIZE] = 0;
- },
- // 23.1.3.3 Map.prototype.delete(key)
- // 23.2.3.4 Set.prototype.delete(value)
- 'delete': function (key) {
- var that = validate(this, NAME);
- var entry = getEntry(that, key);
- if (entry) {
- var next = entry.n;
- var prev = entry.p;
- delete that._i[entry.i];
- entry.r = true;
- if (prev) prev.n = next;
- if (next) next.p = prev;
- if (that._f == entry) that._f = next;
- if (that._l == entry) that._l = prev;
- that[SIZE]--;
- } return !!entry;
- },
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
- forEach: function forEach(callbackfn /* , that = undefined */) {
- validate(this, NAME);
- var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
- var entry;
- while (entry = entry ? entry.n : this._f) {
- f(entry.v, entry.k, this);
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- }
- },
- // 23.1.3.7 Map.prototype.has(key)
- // 23.2.3.7 Set.prototype.has(value)
- has: function has(key) {
- return !!getEntry(validate(this, NAME), key);
- }
- });
- if (DESCRIPTORS) dP(C.prototype, 'size', {
- get: function () {
- return validate(this, NAME)[SIZE];
- }
- });
- return C;
- },
- def: function (that, key, value) {
- var entry = getEntry(that, key);
- var prev, index;
- // change existing entry
- if (entry) {
- entry.v = value;
- // create new entry
- } else {
- that._l = entry = {
- i: index = fastKey(key, true), // <- index
- k: key, // <- key
- v: value, // <- value
- p: prev = that._l, // <- previous entry
- n: undefined, // <- next entry
- r: false // <- removed
- };
- if (!that._f) that._f = entry;
- if (prev) prev.n = entry;
- that[SIZE]++;
- // add to index
- if (index !== 'F') that._i[index] = entry;
- } return that;
- },
- getEntry: getEntry,
- setStrong: function (C, NAME, IS_MAP) {
- // add .keys, .values, .entries, [@@iterator]
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
- $iterDefine(C, NAME, function (iterated, kind) {
- this._t = validate(iterated, NAME); // target
- this._k = kind; // kind
- this._l = undefined; // previous
- }, function () {
- var that = this;
- var kind = that._k;
- var entry = that._l;
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- // get next entry
- if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
- // or finish the iteration
- that._t = undefined;
- return step(1);
- }
- // return step by kind
- if (kind == 'keys') return step(0, entry.k);
- if (kind == 'values') return step(0, entry.v);
- return step(0, [entry.k, entry.v]);
- }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
- // add [@@species], 23.1.2.2, 23.2.2.2
- setSpecies(NAME);
- }
-};
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : {
+ "default": obj
+ };
+}
+module.exports = _interopRequireDefault;
/***/ }),
@@ -593,11 +378,7 @@ module.exports = {
"use strict";
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -606,7 +387,7 @@ var react_1 = __webpack_require__("q1tI");
var isServer = false;
exports.default = () => {
- var mountedInstances = new _Set();
+ var mountedInstances = new Set();
var state;
function emitChange(component) {
@@ -656,17 +437,6 @@ exports.default = () => {
};
};
-/***/ }),
-
-/***/ "dL40":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set') });
-
-
/***/ }),
/***/ "lwAK":
@@ -675,8 +445,6 @@ $export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -687,7 +455,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -695,22 +463,6 @@ var React = __importStar(__webpack_require__("q1tI"));
exports.AmpStateContext = React.createContext({});
-/***/ }),
-
-/***/ "ttDY":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+iuc");
-
-/***/ }),
-
-/***/ "xvv9":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of
-__webpack_require__("cHUd")('Set');
-
-
/***/ })
-},[["04ac",0,1,2]]]);
\ No newline at end of file
+},[["04ac",0,1]]]);
\ No newline at end of file
Diff for _error.js
@@ -1,46 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
-
-/***/ "+iuc":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("B9jh");
-__webpack_require__("dL40");
-__webpack_require__("xvv9");
-__webpack_require__("V+O7");
-module.exports = __webpack_require__("WEpk").Set;
-
-
-/***/ }),
-
-/***/ "+plK":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
- module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
- return o.__proto__ || _Object$getPrototypeOf(o);
- };
- return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
/***/ "/0+H":
/***/ (function(module, exports, __webpack_require__) {
@@ -48,15 +6,13 @@ module.exports = _getPrototypeOf;
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importDefault = this && this.__importDefault || function (mod) {
return mod && mod.__esModule ? mod : {
"default": mod
};
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -93,17 +49,17 @@ exports.useAmp = useAmp;
"use strict";
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports["default"] = void 0;
@@ -220,24 +176,27 @@ var styles = {
/***/ }),
-/***/ "0tVQ":
+/***/ "7W2i":
/***/ (function(module, exports, __webpack_require__) {
-__webpack_require__("FlQf");
-__webpack_require__("VJsP");
-module.exports = __webpack_require__("WEpk").Array.from;
-
+var setPrototypeOf = __webpack_require__("SksO");
-/***/ }),
-
-/***/ "2PDY":
-/***/ (function(module, exports) {
+function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
-function _nonIterableSpread() {
- throw new TypeError("Invalid attempt to spread non-iterable instance");
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
}
-module.exports = _nonIterableSpread;
+module.exports = _inherits;
/***/ }),
@@ -247,17 +206,13 @@ module.exports = _nonIterableSpread;
"use strict";
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importDefault = this && this.__importDefault || function (mod) {
return mod && mod.__esModule ? mod : {
"default": mod
};
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -317,9 +272,9 @@ var METATYPES = ['name', 'httpEquiv', 'charSet', 'itemProp'];
*/
function unique() {
- var keys = new _Set();
- var tags = new _Set();
- var metaTypes = new _Set();
+ var keys = new Set();
+ var tags = new Set();
+ var metaTypes = new Set();
var metaCategories = {};
return function (h) {
var unique = true;
@@ -359,7 +314,7 @@ function unique() {
}
} else {
var category = h.props[metatype];
- var categories = metaCategories[metatype] || new _Set();
+ var categories = metaCategories[metatype] || new Set();
if (categories.has(category)) {
unique = false;
@@ -418,64 +373,25 @@ exports["default"] = Head;
/***/ }),
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
- return function toJSON() {
- if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
- return from(this);
- };
-};
-
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
+/***/ "Bnag":
+/***/ (function(module, exports) {
-__webpack_require__("zn7N")('getPrototypeOf', function () {
- return function getPrototypeOf(it) {
- return $getPrototypeOf(toObject(it));
- };
-});
+function _nonIterableSpread() {
+ throw new TypeError("Invalid attempt to spread non-iterable instance");
+}
+module.exports = _nonIterableSpread;
/***/ }),
-/***/ "B9jh":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var SET = 'Set';
-
-// 23.2 Set Objects
-module.exports = __webpack_require__("raTm")(SET, function (get) {
- return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
- // 23.2.3.1 Set.prototype.add(value)
- add: function add(value) {
- return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);
- }
-}, strong);
-
-
-/***/ }),
+/***/ "EbDI":
+/***/ (function(module, exports) {
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
+function _iterableToArray(iter) {
+ if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
+}
-module.exports = __webpack_require__("+plK");
+module.exports = _iterableToArray;
/***/ }),
@@ -485,8 +401,6 @@ module.exports = __webpack_require__("+plK");
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -497,7 +411,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -507,100 +421,68 @@ exports.HeadManagerContext = React.createContext(null);
/***/ }),
-/***/ "IP1Z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var $defineProperty = __webpack_require__("2faE");
-var createDesc = __webpack_require__("rr1i");
-
-module.exports = function (object, index, value) {
- if (index in object) $defineProperty.f(object, index, createDesc(0, value));
- else object[index] = value;
-};
-
-
-/***/ }),
-
-/***/ "K47E":
+/***/ "Ijbi":
/***/ (function(module, exports) {
-function _assertThisInitialized(self) {
- if (self === void 0) {
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
- }
+function _arrayWithoutHoles(arr) {
+ if (Array.isArray(arr)) {
+ for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
+ arr2[i] = arr[i];
+ }
- return self;
+ return arr2;
+ }
}
-module.exports = _assertThisInitialized;
+module.exports = _arrayWithoutHoles;
/***/ }),
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
-
-function _inherits(subClass, superClass) {
- if (typeof superClass !== "function" && superClass !== null) {
- throw new TypeError("Super expression must either be null or a function");
- }
+/***/ "Nsbk":
+/***/ (function(module, exports) {
- subClass.prototype = _Object$create(superClass && superClass.prototype, {
- constructor: {
- value: subClass,
- writable: true,
- configurable: true
- }
- });
- if (superClass) setPrototypeOf(subClass, superClass);
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
}
-module.exports = _inherits;
+module.exports = _getPrototypeOf;
/***/ }),
-/***/ "PQJW":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Array$from = __webpack_require__("d04V");
+/***/ "PJYZ":
+/***/ (function(module, exports) {
-var _isIterable = __webpack_require__("yLu3");
+function _assertThisInitialized(self) {
+ if (self === void 0) {
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+ }
-function _iterableToArray(iter) {
- if (_isIterable(Object(iter)) || Object.prototype.toString.call(iter) === "[object Arguments]") return _Array$from(iter);
+ return self;
}
-module.exports = _iterableToArray;
+module.exports = _assertThisInitialized;
/***/ }),
-/***/ "RRc/":
+/***/ "Qetd":
/***/ (function(module, exports, __webpack_require__) {
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
- var result = [];
- forOf(iter, false, result.push, result, ITERATOR);
- return result;
-};
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
/***/ }),
-/***/ "TbGu":
+/***/ "RIqP":
/***/ (function(module, exports, __webpack_require__) {
-var arrayWithoutHoles = __webpack_require__("fGSI");
+var arrayWithoutHoles = __webpack_require__("Ijbi");
-var iterableToArray = __webpack_require__("PQJW");
+var iterableToArray = __webpack_require__("EbDI");
-var nonIterableSpread = __webpack_require__("2PDY");
+var nonIterableSpread = __webpack_require__("Bnag");
function _toConsumableArray(arr) {
return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();
@@ -610,209 +492,55 @@ module.exports = _toConsumableArray;
/***/ }),
-/***/ "V+O7":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "SksO":
+/***/ (function(module, exports) {
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from
-__webpack_require__("aPfg")('Set');
+function _setPrototypeOf(o, p) {
+ module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
+ o.__proto__ = p;
+ return o;
+ };
+ return _setPrototypeOf(o, p);
+}
-/***/ }),
+module.exports = _setPrototypeOf;
-/***/ "VJsP":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ }),
-"use strict";
+/***/ "TqRt":
+/***/ (function(module, exports) {
-var ctx = __webpack_require__("2GTP");
-var $export = __webpack_require__("Y7ZC");
-var toObject = __webpack_require__("JB68");
-var call = __webpack_require__("sNwI");
-var isArrayIter = __webpack_require__("NwJ3");
-var toLength = __webpack_require__("tEej");
-var createProperty = __webpack_require__("IP1Z");
-var getIterFn = __webpack_require__("fNZA");
-
-$export($export.S + $export.F * !__webpack_require__("TuGD")(function (iter) { Array.from(iter); }), 'Array', {
- // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
- from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
- var O = toObject(arrayLike);
- var C = typeof this == 'function' ? this : Array;
- var aLen = arguments.length;
- var mapfn = aLen > 1 ? arguments[1] : undefined;
- var mapping = mapfn !== undefined;
- var index = 0;
- var iterFn = getIterFn(O);
- var length, result, step, iterator;
- if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
- // if object isn't iterable or it's array with default iterator - use simple case
- if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
- for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
- createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
- }
- } else {
- length = toLength(O.length);
- for (result = new C(length); length > index; index++) {
- createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
- }
- }
- result.length = index;
- return result;
- }
-});
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : {
+ "default": obj
+ };
+}
+module.exports = _interopRequireDefault;
/***/ }),
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
+/***/ "W8MJ":
+/***/ (function(module, exports) {
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
- // fast case
- var index = fastKey(key);
- var entry;
- if (index !== 'F') return that._i[index];
- // frozen object case
- for (entry = that._f; entry; entry = entry.n) {
- if (entry.k == key) return entry;
+function _defineProperties(target, props) {
+ for (var i = 0; i < props.length; i++) {
+ var descriptor = props[i];
+ descriptor.enumerable = descriptor.enumerable || false;
+ descriptor.configurable = true;
+ if ("value" in descriptor) descriptor.writable = true;
+ Object.defineProperty(target, descriptor.key, descriptor);
}
-};
+}
-module.exports = {
- getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
- var C = wrapper(function (that, iterable) {
- anInstance(that, C, NAME, '_i');
- that._t = NAME; // collection type
- that._i = create(null); // index
- that._f = undefined; // first entry
- that._l = undefined; // last entry
- that[SIZE] = 0; // size
- if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
- });
- redefineAll(C.prototype, {
- // 23.1.3.1 Map.prototype.clear()
- // 23.2.3.2 Set.prototype.clear()
- clear: function clear() {
- for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
- entry.r = true;
- if (entry.p) entry.p = entry.p.n = undefined;
- delete data[entry.i];
- }
- that._f = that._l = undefined;
- that[SIZE] = 0;
- },
- // 23.1.3.3 Map.prototype.delete(key)
- // 23.2.3.4 Set.prototype.delete(value)
- 'delete': function (key) {
- var that = validate(this, NAME);
- var entry = getEntry(that, key);
- if (entry) {
- var next = entry.n;
- var prev = entry.p;
- delete that._i[entry.i];
- entry.r = true;
- if (prev) prev.n = next;
- if (next) next.p = prev;
- if (that._f == entry) that._f = next;
- if (that._l == entry) that._l = prev;
- that[SIZE]--;
- } return !!entry;
- },
- // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
- // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
- forEach: function forEach(callbackfn /* , that = undefined */) {
- validate(this, NAME);
- var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
- var entry;
- while (entry = entry ? entry.n : this._f) {
- f(entry.v, entry.k, this);
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- }
- },
- // 23.1.3.7 Map.prototype.has(key)
- // 23.2.3.7 Set.prototype.has(value)
- has: function has(key) {
- return !!getEntry(validate(this, NAME), key);
- }
- });
- if (DESCRIPTORS) dP(C.prototype, 'size', {
- get: function () {
- return validate(this, NAME)[SIZE];
- }
- });
- return C;
- },
- def: function (that, key, value) {
- var entry = getEntry(that, key);
- var prev, index;
- // change existing entry
- if (entry) {
- entry.v = value;
- // create new entry
- } else {
- that._l = entry = {
- i: index = fastKey(key, true), // <- index
- k: key, // <- key
- v: value, // <- value
- p: prev = that._l, // <- previous entry
- n: undefined, // <- next entry
- r: false // <- removed
- };
- if (!that._f) that._f = entry;
- if (prev) prev.n = entry;
- that[SIZE]++;
- // add to index
- if (index !== 'F') that._i[index] = entry;
- } return that;
- },
- getEntry: getEntry,
- setStrong: function (C, NAME, IS_MAP) {
- // add .keys, .values, .entries, [@@iterator]
- // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
- $iterDefine(C, NAME, function (iterated, kind) {
- this._t = validate(iterated, NAME); // target
- this._k = kind; // kind
- this._l = undefined; // previous
- }, function () {
- var that = this;
- var kind = that._k;
- var entry = that._l;
- // revert to the last existing entry
- while (entry && entry.r) entry = entry.p;
- // get next entry
- if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
- // or finish the iteration
- that._t = undefined;
- return step(1);
- }
- // return step by kind
- if (kind == 'keys') return step(0, entry.k);
- if (kind == 'values') return step(0, entry.v);
- return step(0, [entry.k, entry.v]);
- }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
- // add [@@species], 23.1.2.2, 23.2.2.2
- setSpecies(NAME);
- }
-};
+function _createClass(Constructor, protoProps, staticProps) {
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+ if (staticProps) _defineProperties(Constructor, staticProps);
+ return Constructor;
+}
+module.exports = _createClass;
/***/ }),
@@ -822,25 +550,21 @@ module.exports = {
"use strict";
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
-var _assertThisInitialized = __webpack_require__("K47E");
+var _assertThisInitialized = __webpack_require__("PJYZ");
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
-var _toConsumableArray = __webpack_require__("TbGu");
+var _toConsumableArray = __webpack_require__("RIqP");
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -849,7 +573,7 @@ var react_1 = __webpack_require__("q1tI");
var isServer = false;
exports["default"] = function () {
- var mountedInstances = new _Set();
+ var mountedInstances = new Set();
var state;
function emitChange(component) {
@@ -920,12 +644,12 @@ exports["default"] = function () {
/***/ }),
-/***/ "ZDA2":
+/***/ "a1gu":
/***/ (function(module, exports, __webpack_require__) {
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
function _possibleConstructorReturn(self, call) {
if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -939,40 +663,26 @@ module.exports = _possibleConstructorReturn;
/***/ }),
-/***/ "d04V":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("0tVQ");
-
-/***/ }),
-
-/***/ "dL40":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set') });
-
-
-/***/ }),
-
-/***/ "fGSI":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Array$isArray = __webpack_require__("p0XB");
-
-function _arrayWithoutHoles(arr) {
- if (_Array$isArray(arr)) {
- for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
- arr2[i] = arr[i];
- }
+/***/ "cDf5":
+/***/ (function(module, exports) {
- return arr2;
+function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
+
+function _typeof(obj) {
+ if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
+ module.exports = _typeof = function _typeof(obj) {
+ return _typeof2(obj);
+ };
+ } else {
+ module.exports = _typeof = function _typeof(obj) {
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
+ };
}
+
+ return _typeof(obj);
}
-module.exports = _arrayWithoutHoles;
+module.exports = _typeof;
/***/ }),
@@ -982,8 +692,6 @@ module.exports = _arrayWithoutHoles;
"use strict";
-var _Object$defineProperty = __webpack_require__("hfKm");
-
var __importStar = this && this.__importStar || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
@@ -994,7 +702,7 @@ var __importStar = this && this.__importStar || function (mod) {
return result;
};
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
value: true
});
@@ -1004,20 +712,17 @@ exports.AmpStateContext = React.createContext({});
/***/ }),
-/***/ "ttDY":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+iuc");
-
-/***/ }),
-
-/***/ "xvv9":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "lwsE":
+/***/ (function(module, exports) {
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of
-__webpack_require__("cHUd")('Set');
+function _classCallCheck(instance, Constructor) {
+ if (!(instance instanceof Constructor)) {
+ throw new TypeError("Cannot call a class as a function");
+ }
+}
+module.exports = _classCallCheck;
/***/ })
-},[["04ac",0,2,1,3]]]);
\ No newline at end of file
+},[["04ac",0,1]]]);
\ No newline at end of file
Diff for _app.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[3],{
/***/ 0:
/***/ (function(module, exports, __webpack_require__) {
@@ -15,9 +15,7 @@ module.exports = __webpack_require__("nOHt");
"use strict";
-var _Object$assign = __webpack_require__("Qetd");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.Container = Container;
@@ -59,10 +57,11 @@ class App extends _react.default.Component {
Component,
pageProps
} = this.props;
- var url = createUrl(router);
- return _react.default.createElement(Component, _Object$assign({}, pageProps, {
- url: url
- }));
+ return _react.default.createElement(Component, Object.assign({}, pageProps, // we don't add the legacy URL prop if it's using non-legacy
+ // methods like getStaticProps and getServerSideProps
+ !(Component.__N_SSG || Component.__N_SSP) ? {
+ url: createUrl(router)
+ } : {}));
}
}
@@ -146,4 +145,4 @@ function createUrl(router) {
/***/ })
-},[[0,0,1,2,3]]]);
\ No newline at end of file
+},[[0,0,1,2]]]);
\ No newline at end of file
Diff for _app.js
@@ -1,31 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
-
-/***/ "+plK":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
- module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
- return o.__proto__ || _Object$getPrototypeOf(o);
- };
- return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[3],{
/***/ 0:
/***/ (function(module, exports, __webpack_require__) {
@@ -36,19 +9,27 @@ module.exports = __webpack_require__("nOHt");
/***/ }),
-/***/ "ApPD":
+/***/ "7W2i":
/***/ (function(module, exports, __webpack_require__) {
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
+var setPrototypeOf = __webpack_require__("SksO");
-__webpack_require__("zn7N")('getPrototypeOf', function () {
- return function getPrototypeOf(it) {
- return $getPrototypeOf(toObject(it));
- };
-});
+function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
+}
+
+module.exports = _inherits;
/***/ }),
@@ -58,21 +39,19 @@ __webpack_require__("zn7N")('getPrototypeOf', function () {
"use strict";
-var _Object$assign = __webpack_require__("Qetd");
-
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
-var _regeneratorRuntime = __webpack_require__("ln6h");
+var _regeneratorRuntime = __webpack_require__("o0o1");
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
exports.__esModule = true;
exports.Container = Container;
@@ -137,10 +116,11 @@ var App = /*#__PURE__*/function (_react$default$Compon) {
router = _this$props.router,
Component = _this$props.Component,
pageProps = _this$props.pageProps;
- var url = createUrl(router);
- return _react["default"].createElement(Component, _Object$assign({}, pageProps, {
- url: url
- }));
+ return _react["default"].createElement(Component, Object.assign({}, pageProps, // we don't add the legacy URL prop if it's using non-legacy
+ // methods like getStaticProps and getServerSideProps
+ !(Component.__N_SSG || Component.__N_SSP) ? {
+ url: createUrl(router)
+ } : {}));
}
}]);
@@ -211,14 +191,21 @@ function createUrl(router) {
/***/ }),
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
+}
-module.exports = __webpack_require__("+plK");
+module.exports = _getPrototypeOf;
/***/ }),
-/***/ "K47E":
+/***/ "PJYZ":
/***/ (function(module, exports) {
function _assertThisInitialized(self) {
@@ -233,38 +220,12 @@ module.exports = _assertThisInitialized;
/***/ }),
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
-
-function _inherits(subClass, superClass) {
- if (typeof superClass !== "function" && superClass !== null) {
- throw new TypeError("Super expression must either be null or a function");
- }
-
- subClass.prototype = _Object$create(superClass && superClass.prototype, {
- constructor: {
- value: subClass,
- writable: true,
- configurable: true
- }
- });
- if (superClass) setPrototypeOf(subClass, superClass);
-}
-
-module.exports = _inherits;
-
-/***/ }),
-
-/***/ "ZDA2":
+/***/ "a1gu":
/***/ (function(module, exports, __webpack_require__) {
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
function _possibleConstructorReturn(self, call) {
if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -291,4 +252,4 @@ module.exports = _possibleConstructorReturn;
/***/ })
-},[[0,0,2,1,3,4]]]);
\ No newline at end of file
+},[[0,0,1,2]]]);
\ No newline at end of file
Diff for withRouter.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/withRouter.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div>I use withRouter</div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/withRouter.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div>I use withRouter</div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
General Overall increase โ ๏ธ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| buildDuration | 14s | 11s | -3s |
| nodeModulesSize | 55.6 MB | 56.3 MB | โ ๏ธ +742 kB |
Client Bundles (main, webpack, commons) Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| main-HASH.js gzip | 5.13 kB | 5.76 kB | โ ๏ธ +633 B |
| webpack-HASH.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..54d3.js gzip | 4.68 kB | N/A | N/A |
| commons.HASH.js gzip | 4.06 kB | N/A | N/A |
| de003c3a9d30..31ff.js gzip | 16.3 kB | N/A | N/A |
| framework.HASH.js gzip | 39.1 kB | 39.1 kB | โ |
| de003c3a9d30..67cb.js gzip | N/A | 9.69 kB | N/A |
| Overall change | 70 kB | 55.3 kB | -14.7 kB |
Client Bundles (main, webpack, commons) Modern Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| main-HASH.module.js gzip | 4.13 kB | 4.79 kB | โ ๏ธ +657 B |
| webpack-HASH..dule.js gzip | 746 B | 746 B | โ |
| 4952ddcd88e7..dule.js gzip | 5.56 kB | N/A | N/A |
| de003c3a9d30..dule.js gzip | 15.1 kB | N/A | N/A |
| framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | โ ๏ธ +9 B |
| de003c3a9d30..dule.js gzip | N/A | 6.64 kB | N/A |
| Overall change | 64.7 kB | 51.3 kB | -13.4 kB |
Legacy Client Bundles (polyfills) Overall increase โ ๏ธ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| polyfills-HASH.js gzip | 4.76 kB | 18.9 kB | โ ๏ธ +14.1 kB |
| Overall change | 4.76 kB | 18.9 kB | โ ๏ธ +14.1 kB |
Client Pages Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _app.js gzip | 1.15 kB | 1.07 kB | -74 B |
| _error.js gzip | 4.07 kB | 2.98 kB | -1.09 kB |
| hooks.js gzip | 779 B | 664 B | -115 B |
| index.js gzip | 222 B | 222 B | โ |
| link.js gzip | 2.95 kB | 1.89 kB | -1.06 kB |
| routerDirect.js gzip | 283 B | 279 B | -4 B |
| withRouter.js gzip | 282 B | 278 B | -4 B |
| Overall change | 9.73 kB | 7.38 kB | -2.35 kB |
Client Pages Modern Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _app.module.js gzip | 576 B | 589 B | โ ๏ธ +13 B |
| _error.module.js gzip | 3.06 kB | 2.08 kB | -977 B |
| hooks.module.js gzip | 371 B | 370 B | -1 B |
| index.module.js gzip | 212 B | 212 B | โ |
| link.module.js gzip | 2.49 kB | 1.48 kB | -1.01 kB |
| routerDirect..dule.js gzip | 273 B | 271 B | -2 B |
| withRouter.m..dule.js gzip | 272 B | 270 B | -2 B |
| Overall change | 7.25 kB | 5.27 kB | -1.98 kB |
Client Build Manifests
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _buildManifest.js gzip | 61 B | 61 B | โ |
| _buildManife..dule.js gzip | 61 B | 61 B | โ |
| Overall change | 122 B | 122 B | โ |
Serverless bundles Overall decrease โ
| | zeit/next.js canary v9.2.2 | zeit/next.js refs/tags/v9.2.3-canary.22 | Change |
| - | - | - | - |
| _error.js gzip | 289 kB | 292 kB | โ ๏ธ +2.72 kB |
| 404.html gzip | 1.45 kB | 1.34 kB | -104 B |
| hooks.html gzip | 1.07 kB | 975 B | -100 B |
| index.js gzip | 289 kB | 292 kB | โ ๏ธ +2.49 kB |
| link.js gzip | 319 kB | 299 kB | -19.9 kB |
| routerDirect.js gzip | 316 kB | 298 kB | -17.9 kB |
| withRouter.js gzip | 317 kB | 299 kB | -17.7 kB |
| Overall change | 1.53 MB | 1.48 MB | -50.5 kB |
Most helpful comment
Thanks for your report. I'd rather like to allow both
export defaultandmodule.exports.