-
Notifications
You must be signed in to change notification settings - Fork 27.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove invalid fallback revalidate value #69990
Merged
Merged
+23
−14
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Stats from current PRDefault Build (Increase detected
|
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
buildDuration | 17.6s | 16s | N/A |
buildDurationCached | 8.7s | 7.5s | N/A |
nodeModulesSize | 358 MB | 358 MB | |
nextStartRea..uration (ms) | 426ms | 413ms | N/A |
Client Bundles (main, webpack)
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
1062.HASH.js gzip | 169 B | 168 B | N/A |
2cd9da90-HASH.js gzip | 52 kB | 52 kB | N/A |
5867-HASH.js gzip | 42.5 kB | 42.5 kB | N/A |
8503-HASH.js gzip | 5.25 kB | 5.25 kB | N/A |
framework-HASH.js gzip | 56.9 kB | 56.9 kB | N/A |
main-app-HASH.js gzip | 225 B | 224 B | N/A |
main-HASH.js gzip | 32.6 kB | 32.6 kB | N/A |
webpack-HASH.js gzip | 1.71 kB | 1.71 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31 kB | 31 kB | ✓ |
Overall change | 31 kB | 31 kB | ✓ |
Client Pages
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
_app-HASH.js gzip | 193 B | 193 B | ✓ |
_error-HASH.js gzip | 191 B | 191 B | ✓ |
amp-HASH.js gzip | 511 B | 510 B | N/A |
css-HASH.js gzip | 342 B | 343 B | N/A |
dynamic-HASH.js gzip | 1.84 kB | 1.84 kB | N/A |
edge-ssr-HASH.js gzip | 265 B | 266 B | N/A |
head-HASH.js gzip | 362 B | 364 B | N/A |
hooks-HASH.js gzip | 392 B | 392 B | ✓ |
image-HASH.js gzip | 4.4 kB | 4.4 kB | ✓ |
index-HASH.js gzip | 268 B | 267 B | N/A |
link-HASH.js gzip | 2.81 kB | 2.81 kB | N/A |
routerDirect..HASH.js gzip | 329 B | 327 B | N/A |
script-HASH.js gzip | 398 B | 396 B | N/A |
withRouter-HASH.js gzip | 325 B | 324 B | N/A |
1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
_buildManifest.js gzip | 749 B | 749 B | ✓ |
Overall change | 749 B | 749 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
index.html gzip | 522 B | 522 B | ✓ |
link.html gzip | 535 B | 537 B | N/A |
withRouter.html gzip | 518 B | 518 B | ✓ |
Overall change | 1.04 kB | 1.04 kB | ✓ |
Edge SSR bundle Size
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
edge-ssr.js gzip | 128 kB | 128 kB | N/A |
page.js gzip | 180 kB | 180 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Middleware size
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
middleware-b..fest.js gzip | 673 B | 668 B | N/A |
middleware-r..fest.js gzip | 156 B | 157 B | N/A |
middleware.js gzip | 29.9 kB | 29.9 kB | N/A |
edge-runtime..pack.js gzip | 844 B | 844 B | ✓ |
Overall change | 844 B | 844 B | ✓ |
Next Runtimes
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
973-experime...dev.js gzip | 322 B | 322 B | ✓ |
973.runtime.dev.js gzip | 314 B | 314 B | ✓ |
app-page-exp...dev.js gzip | 317 kB | 317 kB | ✓ |
app-page-exp..prod.js gzip | 125 kB | 125 kB | ✓ |
app-page-tur..prod.js gzip | 139 kB | 139 kB | ✓ |
app-page-tur..prod.js gzip | 134 kB | 134 kB | ✓ |
app-page.run...dev.js gzip | 305 kB | 305 kB | ✓ |
app-page.run..prod.js gzip | 121 kB | 121 kB | ✓ |
app-route-ex...dev.js gzip | 31.2 kB | 31.2 kB | ✓ |
app-route-ex..prod.js gzip | 21.1 kB | 21.1 kB | ✓ |
app-route-tu..prod.js gzip | 21.1 kB | 21.1 kB | ✓ |
app-route-tu..prod.js gzip | 20.9 kB | 20.9 kB | ✓ |
app-route.ru...dev.js gzip | 32.9 kB | 32.9 kB | ✓ |
app-route.ru..prod.js gzip | 20.9 kB | 20.9 kB | ✓ |
pages-api-tu..prod.js gzip | 9.62 kB | 9.62 kB | ✓ |
pages-api.ru...dev.js gzip | 11.5 kB | 11.5 kB | ✓ |
pages-api.ru..prod.js gzip | 9.61 kB | 9.61 kB | ✓ |
pages-turbo...prod.js gzip | 20.8 kB | 20.8 kB | N/A |
pages.runtim...dev.js gzip | 26.4 kB | 26.4 kB | N/A |
pages.runtim..prod.js gzip | 20.8 kB | 20.8 kB | N/A |
server.runti..prod.js gzip | 57.7 kB | 57.7 kB | N/A |
Overall change | 1.32 MB | 1.32 MB | ✓ |
build cache Overall increase ⚠️
vercel/next.js canary | vercel/next.js ijjk/cleanup-invalid-default | Change | |
---|---|---|---|
0.pack gzip | 1.66 MB | 1.65 MB | N/A |
index.pack gzip | 131 kB | 132 kB | |
Overall change | 131 kB | 132 kB |
Diff details
Diff for page.js
@@ -15,7 +15,7 @@
/***/
},
- /***/ 1661: /***/ (
+ /***/ 1167: /***/ (
__unused_webpack_module,
__webpack_exports__,
__webpack_require__
@@ -30,7 +30,7 @@
default: () => /* binding */ nHandler,
});
- // NAMESPACE OBJECT: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp-edge-ssr%2Fpage&page=%2Fapp-edge-ssr%2Fpage&pagePath=private-next-app-dir%2Fapp-edge-ssr%2Fpage.js&appDir=%2Ftmp%2Fnext-statsKbgh33%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&flyingShuttle=false&preferredRegion=&middlewareConfig=e30%3D!./app/app-edge-ssr/page.js?__next_edge_ssr_entry__
+ // NAMESPACE OBJECT: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp-edge-ssr%2Fpage&page=%2Fapp-edge-ssr%2Fpage&pagePath=private-next-app-dir%2Fapp-edge-ssr%2Fpage.js&appDir=%2Ftmp%2Fnext-statsKbgh33%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&flyingShuttle=false&preferredRegion=&middlewareConfig=e30%3D!./app/app-edge-ssr/page.js?__next_edge_ssr_entry__
var page_next_edge_ssr_entry_namespaceObject = {};
__webpack_require__.r(page_next_edge_ssr_entry_namespaceObject);
__webpack_require__.d(page_next_edge_ssr_entry_namespaceObject, {
@@ -69,35 +69,35 @@
tree: () => tree,
});
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/web/globals.js
- var globals = __webpack_require__(578);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/web/adapter.js + 3 modules
- var adapter = __webpack_require__(8519);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/build/webpack/loaders/next-edge-ssr-loader/render.js + 85 modules
- var render = __webpack_require__(2492);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/lib/incremental-cache/index.js + 3 modules
- var incremental_cache = __webpack_require__(729);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/app-render/app-render.js + 74 modules
- var app_render = __webpack_require__(1993);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js
- var module_compiled = __webpack_require__(7055);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/route-kind.js
- var route_kind = __webpack_require__(1384);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/client/components/error-boundary.js
- var error_boundary = __webpack_require__(8292);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/app-render/entry-base.js + 9 modules
- var entry_base = __webpack_require__(9147); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp-edge-ssr%2Fpage&page=%2Fapp-edge-ssr%2Fpage&pagePath=private-next-app-dir%2Fapp-edge-ssr%2Fpage.js&appDir=%2Ftmp%2Fnext-statsKbgh33%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&flyingShuttle=false&preferredRegion=&middlewareConfig=e30%3D!./app/app-edge-ssr/page.js?__next_edge_ssr_entry__
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/web/globals.js
+ var globals = __webpack_require__(1603);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/web/adapter.js + 3 modules
+ var adapter = __webpack_require__(6148);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/build/webpack/loaders/next-edge-ssr-loader/render.js + 85 modules
+ var render = __webpack_require__(301);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/lib/incremental-cache/index.js + 3 modules
+ var incremental_cache = __webpack_require__(6802);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/app-render/app-render.js + 74 modules
+ var app_render = __webpack_require__(1887);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js
+ var module_compiled = __webpack_require__(6217);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/route-kind.js
+ var route_kind = __webpack_require__(8636);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/client/components/error-boundary.js
+ var error_boundary = __webpack_require__(746);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/app-render/entry-base.js + 9 modules
+ var entry_base = __webpack_require__(6729); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp-edge-ssr%2Fpage&page=%2Fapp-edge-ssr%2Fpage&pagePath=private-next-app-dir%2Fapp-edge-ssr%2Fpage.js&appDir=%2Ftmp%2Fnext-statsKbgh33%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&flyingShuttle=false&preferredRegion=&middlewareConfig=e30%3D!./app/app-edge-ssr/page.js?__next_edge_ssr_entry__
const component0 = () =>
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 6908)
+ __webpack_require__.bind(__webpack_require__, 176)
);
const component1 = () =>
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 4482)
+ __webpack_require__.bind(__webpack_require__, 5078)
);
const page2 = () =>
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 3073)
+ __webpack_require__.bind(__webpack_require__, 2934)
);
// We inject the tree and pages here so that we can use them in the route
@@ -163,12 +163,12 @@
});
//# sourceMappingURL=app-page.js.map
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/lib/page-types.js
- var page_types = __webpack_require__(5067);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/app-render/encryption-utils.js
- var encryption_utils = __webpack_require__(9845);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/esm/server/app-render/action-utils.js
- var action_utils = __webpack_require__(4670); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/dist/build/webpack/loaders/next-edge-ssr-loader/index.js?{"absolute500Path":"","absoluteAppPath":"next/dist/pages/_app","absoluteDocumentPath":"next/dist/pages/_document","absoluteErrorPath":"next/dist/pages/_error","absolutePagePath":"private-next-app-dir/app-edge-ssr/page.js","dev":false,"isServerComponent":true,"page":"/app-edge-ssr/page","stringifiedConfig":"eyJlbnYiOnt9LCJlc2xpbnQiOnsiaWdub3JlRHVyaW5nQnVpbGRzIjpmYWxzZX0sInR5cGVzY3JpcHQiOnsiaWdub3JlQnVpbGRFcnJvcnMiOmZhbHNlLCJ0c2NvbmZpZ1BhdGgiOiJ0c2NvbmZpZy5qc29uIn0sImRpc3REaXIiOiIubmV4dCIsImNsZWFuRGlzdERpciI6dHJ1ZSwiYXNzZXRQcmVmaXgiOiIiLCJjYWNoZU1heE1lbW9yeVNpemUiOjUyNDI4ODAwLCJjb25maWdPcmlnaW4iOiJuZXh0LmNvbmZpZy5qcyIsInVzZUZpbGVTeXN0ZW1QdWJsaWNSb3V0ZXMiOnRydWUsImdlbmVyYXRlRXRhZ3MiOnRydWUsInBhZ2VFeHRlbnNpb25zIjpbInRzeCIsInRzIiwianN4IiwianMiXSwicG93ZXJlZEJ5SGVhZGVyIjp0cnVlLCJjb21wcmVzcyI6dHJ1ZSwiaW1hZ2VzIjp7ImRldmljZVNpemVzIjpbNjQwLDc1MCw4MjgsMTA4MCwxMjAwLDE5MjAsMjA0OCwzODQwXSwiaW1hZ2VTaXplcyI6WzE2LDMyLDQ4LDY0LDk2LDEyOCwyNTYsMzg0XSwicGF0aCI6Ii9fbmV4dC9pbWFnZSIsImxvYWRlciI6ImRlZmF1bHQiLCJsb2FkZXJGaWxlIjoiIiwiZG9tYWlucyI6W10sImRpc2FibGVTdGF0aWNJbWFnZXMiOmZhbHNlLCJtaW5pbXVtQ2FjaGVUVEwiOjYwLCJmb3JtYXRzIjpbImltYWdlL3dlYnAiXSwiZGFuZ2Vyb3VzbHlBbGxvd1NWRyI6ZmFsc2UsImNvbnRlbnRTZWN1cml0eVBvbGljeSI6InNjcmlwdC1zcmMgJ25vbmUnOyBmcmFtZS1zcmMgJ25vbmUnOyBzYW5kYm94OyIsImNvbnRlbnREaXNwb3NpdGlvblR5cGUiOiJhdHRhY2htZW50IiwicmVtb3RlUGF0dGVybnMiOltdLCJ1bm9wdGltaXplZCI6ZmFsc2V9LCJkZXZJbmRpY2F0b3JzIjp7ImFwcElzclN0YXR1cyI6dHJ1ZSwiYnVpbGRBY3Rpdml0eSI6dHJ1ZSwiYnVpbGRBY3Rpdml0eVBvc2l0aW9uIjoiYm90dG9tLXJpZ2h0In0sIm9uRGVtYW5kRW50cmllcyI6eyJtYXhJbmFjdGl2ZUFnZSI6NjAwMDAsInBhZ2VzQnVmZmVyTGVuZ3RoIjo1fSwiYW1wIjp7ImNhbm9uaWNhbEJhc2UiOiIifSwiYmFzZVBhdGgiOiIiLCJzYXNzT3B0aW9ucyI6e30sInRyYWlsaW5nU2xhc2giOmZhbHNlLCJpMThuIjpudWxsLCJwcm9kdWN0aW9uQnJvd3NlclNvdXJjZU1hcHMiOmZhbHNlLCJleGNsdWRlRGVmYXVsdE1vbWVudExvY2FsZXMiOnRydWUsInNlcnZlclJ1bnRpbWVDb25maWciOnt9LCJwdWJsaWNSdW50aW1lQ29uZmlnIjp7fSwicmVhY3RQcm9kdWN0aW9uUHJvZmlsaW5nIjpmYWxzZSwicmVhY3RTdHJpY3RNb2RlIjpudWxsLCJyZWFjdE1heEhlYWRlcnNMZW5ndGgiOjYwMDAsImh0dHBBZ2VudE9wdGlvbnMiOnsia2VlcEFsaXZlIjp0cnVlfSwibG9nZ2luZyI6e30sInN0YXRpY1BhZ2VHZW5lcmF0aW9uVGltZW91dCI6NjAsIm1vZHVsYXJpemVJbXBvcnRzIjp7IkBtdWkvaWNvbnMtbWF0ZXJpYWwiOnsidHJhbnNmb3JtIjoiQG11aS9pY29ucy1tYXRlcmlhbC97e21lbWJlcn19In0sImxvZGFzaCI6eyJ0cmFuc2Zvcm0iOiJsb2Rhc2gve3ttZW1iZXJ9fSJ9fSwib3V0cHV0RmlsZVRyYWNpbmdSb290IjoiL3RtcC9uZXh0LXN0YXRzS2JnaDMzL3N0YXRzLWFwcCIsImV4cGVyaW1lbnRhbCI6eyJtdWx0aVpvbmVEcmFmdE1vZGUiOmZhbHNlLCJhcHBOYXZGYWlsSGFuZGxpbmciOmZhbHNlLCJwcmVyZW5kZXJFYXJseUV4aXQiOnRydWUsInNlcnZlck1pbmlmaWNhdGlvbiI6dHJ1ZSwic2VydmVyU291cmNlTWFwcyI6ZmFsc2UsImxpbmtOb1RvdWNoU3RhcnQiOmZhbHNlLCJjYXNlU2Vuc2l0aXZlUm91dGVzIjpmYWxzZSwicHJlbG9hZEVudHJpZXNPblN0YXJ0Ijp0cnVlLCJjbGllbnRSb3V0ZXJGaWx0ZXIiOnRydWUsImNsaWVudFJvdXRlckZpbHRlclJlZGlyZWN0cyI6ZmFsc2UsImZldGNoQ2FjaGVLZXlQcmVmaXgiOiIiLCJtaWRkbGV3YXJlUHJlZmV0Y2giOiJmbGV4aWJsZSIsIm9wdGltaXN0aWNDbGllbnRDYWNoZSI6dHJ1ZSwibWFudWFsQ2xpZW50QmFzZVBhdGgiOmZhbHNlLCJjcHVzIjoxOSwibWVtb3J5QmFzZWRXb3JrZXJzQ291bnQiOmZhbHNlLCJpc3JGbHVzaFRvRGlzayI6dHJ1ZSwid29ya2VyVGhyZWFkcyI6ZmFsc2UsIm9wdGltaXplQ3NzIjpmYWxzZSwibmV4dFNjcmlwdFdvcmtlcnMiOmZhbHNlLCJzY3JvbGxSZXN0b3JhdGlvbiI6ZmFsc2UsImV4dGVybmFsRGlyIjpmYWxzZSwiZGlzYWJsZU9wdGltaXplZExvYWRpbmciOmZhbHNlLCJnemlwU2l6ZSI6dHJ1ZSwiY3JhQ29tcGF0IjpmYWxzZSwiZXNtRXh0ZXJuYWxzIjp0cnVlLCJmdWxseVNwZWNpZmllZCI6ZmFsc2UsInN3Y1RyYWNlUHJvZmlsaW5nIjpmYWxzZSwiZm9yY2VTd2NUcmFuc2Zvcm1zIjpmYWxzZSwibGFyZ2VQYWdlRGF0YUJ5dGVzIjoxMjgwMDAsInR1cmJvIjp7InJvb3QiOiIvdG1wL25leHQtc3RhdHNLYmdoMzMvc3RhdHMtYXBwIn0sInR5cGVkUm91dGVzIjpmYWxzZSwidHlwZWRFbnYiOmZhbHNlLCJwYXJhbGxlbFNlcnZlckNvbXBpbGVzIjpmYWxzZSwicGFyYWxsZWxTZXJ2ZXJCdWlsZFRyYWNlcyI6ZmFsc2UsInBwciI6ZmFsc2UsInBwckZhbGxiYWNrcyI6ZmFsc2UsIndlYnBhY2tNZW1vcnlPcHRpbWl6YXRpb25zIjpmYWxzZSwib3B0aW1pemVTZXJ2ZXJSZWFjdCI6ZmFsc2UsInVzZUVhcmx5SW1wb3J0IjpmYWxzZSwic3RhbGVUaW1lcyI6eyJkeW5hbWljIjowLCJzdGF0aWMiOjMwMH0sImFmdGVyIjpmYWxzZSwic2VydmVyQ29tcG9uZW50c0htckNhY2hlIjp0cnVlLCJzdGF0aWNHZW5lcmF0aW9uTWF4Q29uY3VycmVuY3kiOjgsInN0YXRpY0dlbmVyYXRpb25NaW5QYWdlc1BlcldvcmtlciI6MjUsImR5bmFtaWNJTyI6ZmFsc2UsIm9wdGltaXplUGFja2FnZUltcG9ydHMiOlsibHVjaWRlLXJlYWN0IiwiZGF0ZS1mbnMiLCJsb2Rhc2gtZXMiLCJyYW1kYSIsImFudGQiLCJyZWFjdC1ib290c3RyYXAiLCJhaG9va3MiLCJAYW50LWRlc2lnbi9pY29ucyIsIkBoZWFkbGVzc3VpL3JlYWN0IiwiQGhlYWRsZXNzdWktZmxvYXQvcmVhY3QiLCJAaGVyb2ljb25zL3JlYWN0LzIwL3NvbGlkIiwiQGhlcm9pY29ucy9yZWFjdC8yNC9zb2xpZCIsIkBoZXJvaWNvbnMvcmVhY3QvMjQvb3V0bGluZSIsIkB2aXN4L3Zpc3giLCJAdHJlbW9yL3JlYWN0IiwicnhqcyIsIkBtdWkvbWF0ZXJpYWwiLCJAbXVpL2ljb25zLW1hdGVyaWFsIiwicmVjaGFydHMiLCJyZWFjdC11c2UiLCJlZmZlY3QiLCJAZWZmZWN0L3NjaGVtYSIsIkBlZmZlY3QvcGxhdGZvcm0iLCJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiLCJAZWZmZWN0L3BsYXRmb3JtLWJyb3dzZXIiLCJAZWZmZWN0L3BsYXRmb3JtLWJ1biIsIkBlZmZlY3Qvc3FsIiwiQGVmZmVjdC9zcWwtbXNzcWwiLCJAZWZmZWN0L3NxbC1teXNxbDIiLCJAZWZmZWN0L3NxbC1wZyIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtbm9kZSIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtYnVuIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS13YXNtIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS1yZWFjdC1uYXRpdmUiLCJAZWZmZWN0L3JwYyIsIkBlZmZlY3QvcnBjLWh0dHAiLCJAZWZmZWN0L3R5cGVjbGFzcyIsIkBlZmZlY3QvZXhwZXJpbWVudGFsIiwiQGVmZmVjdC9vcGVudGVsZW1ldHJ5IiwiQG1hdGVyaWFsLXVpL2NvcmUiLCJAbWF0ZXJpYWwtdWkvaWNvbnMiLCJAdGFibGVyL2ljb25zLXJlYWN0IiwibXVpLWNvcmUiLCJyZWFjdC1pY29ucy9haSIsInJlYWN0LWljb25zL2JpIiwicmVhY3QtaWNvbnMvYnMiLCJyZWFjdC1pY29ucy9jZyIsInJlYWN0LWljb25zL2NpIiwicmVhY3QtaWNvbnMvZGkiLCJyZWFjdC1pY29ucy9mYSIsInJlYWN0LWljb25zL2ZhNiIsInJlYWN0LWljb25zL2ZjIiwicmVhY3QtaWNvbnMvZmkiLCJyZWFjdC1pY29ucy9naSIsInJlYWN0LWljb25zL2dvIiwicmVhY3QtaWNvbnMvZ3IiLCJyZWFjdC1pY29ucy9oaSIsInJlYWN0LWljb25zL2hpMiIsInJlYWN0LWljb25zL2ltIiwicmVhY3QtaWNvbnMvaW8iLCJyZWFjdC1pY29ucy9pbzUiLCJyZWFjdC1pY29ucy9saWEiLCJyZWFjdC1pY29ucy9saWIiLCJyZWFjdC1pY29ucy9sdSIsInJlYWN0LWljb25zL21kIiwicmVhY3QtaWNvbnMvcGkiLCJyZWFjdC1pY29ucy9yaSIsInJlYWN0LWljb25zL3J4IiwicmVhY3QtaWNvbnMvc2kiLCJyZWFjdC1pY29ucy9zbCIsInJlYWN0LWljb25zL3RiIiwicmVhY3QtaWNvbnMvdGZpIiwicmVhY3QtaWNvbnMvdGkiLCJyZWFjdC1pY29ucy92c2MiLCJyZWFjdC1pY29ucy93aSJdfSwiYnVuZGxlUGFnZXNSb3V0ZXJEZXBlbmRlbmNpZXMiOmZhbHNlLCJjb25maWdGaWxlIjoiL3RtcC9uZXh0LXN0YXRzS2JnaDMzL3N0YXRzLWFwcC9uZXh0LmNvbmZpZy5qcyIsImNvbmZpZ0ZpbGVOYW1lIjoibmV4dC5jb25maWcuanMifQ==","pagesType":"app","appDirLoader":"bmV4dC1hcHAtbG9hZGVyP25hbWU9YXBwJTJGYXBwLWVkZ2Utc3NyJTJGcGFnZSZwYWdlPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZVBhdGg9cHJpdmF0ZS1uZXh0LWFwcC1kaXIlMkZhcHAtZWRnZS1zc3IlMkZwYWdlLmpzJmFwcERpcj0lMkZ0bXAlMkZuZXh0LXN0YXRzS2JnaDMzJTJGc3RhdHMtYXBwJTJGYXBwJmFwcFBhdGhzPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZUV4dGVuc2lvbnM9dHN4JnBhZ2VFeHRlbnNpb25zPXRzJnBhZ2VFeHRlbnNpb25zPWpzeCZwYWdlRXh0ZW5zaW9ucz1qcyZiYXNlUGF0aD0mYXNzZXRQcmVmaXg9Jm5leHRDb25maWdPdXRwdXQ9JmZseWluZ1NodXR0bGU9ZmFsc2UmcHJlZmVycmVkUmVnaW9uPSZtaWRkbGV3YXJlQ29uZmlnPWUzMCUzRCE=","sriEnabled":false,"middlewareConfig":"e30="}!
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/lib/page-types.js
+ var page_types = __webpack_require__(7743);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/app-render/encryption-utils.js
+ var encryption_utils = __webpack_require__(659);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/esm/server/app-render/action-utils.js
+ var action_utils = __webpack_require__(778); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/dist/build/webpack/loaders/next-edge-ssr-loader/index.js?{"absolute500Path":"","absoluteAppPath":"next/dist/pages/_app","absoluteDocumentPath":"next/dist/pages/_document","absoluteErrorPath":"next/dist/pages/_error","absolutePagePath":"private-next-app-dir/app-edge-ssr/page.js","dev":false,"isServerComponent":true,"page":"/app-edge-ssr/page","stringifiedConfig":"eyJlbnYiOnt9LCJlc2xpbnQiOnsiaWdub3JlRHVyaW5nQnVpbGRzIjpmYWxzZX0sInR5cGVzY3JpcHQiOnsiaWdub3JlQnVpbGRFcnJvcnMiOmZhbHNlLCJ0c2NvbmZpZ1BhdGgiOiJ0c2NvbmZpZy5qc29uIn0sImRpc3REaXIiOiIubmV4dCIsImNsZWFuRGlzdERpciI6dHJ1ZSwiYXNzZXRQcmVmaXgiOiIiLCJjYWNoZU1heE1lbW9yeVNpemUiOjUyNDI4ODAwLCJjb25maWdPcmlnaW4iOiJuZXh0LmNvbmZpZy5qcyIsInVzZUZpbGVTeXN0ZW1QdWJsaWNSb3V0ZXMiOnRydWUsImdlbmVyYXRlRXRhZ3MiOnRydWUsInBhZ2VFeHRlbnNpb25zIjpbInRzeCIsInRzIiwianN4IiwianMiXSwicG93ZXJlZEJ5SGVhZGVyIjp0cnVlLCJjb21wcmVzcyI6dHJ1ZSwiaW1hZ2VzIjp7ImRldmljZVNpemVzIjpbNjQwLDc1MCw4MjgsMTA4MCwxMjAwLDE5MjAsMjA0OCwzODQwXSwiaW1hZ2VTaXplcyI6WzE2LDMyLDQ4LDY0LDk2LDEyOCwyNTYsMzg0XSwicGF0aCI6Ii9fbmV4dC9pbWFnZSIsImxvYWRlciI6ImRlZmF1bHQiLCJsb2FkZXJGaWxlIjoiIiwiZG9tYWlucyI6W10sImRpc2FibGVTdGF0aWNJbWFnZXMiOmZhbHNlLCJtaW5pbXVtQ2FjaGVUVEwiOjYwLCJmb3JtYXRzIjpbImltYWdlL3dlYnAiXSwiZGFuZ2Vyb3VzbHlBbGxvd1NWRyI6ZmFsc2UsImNvbnRlbnRTZWN1cml0eVBvbGljeSI6InNjcmlwdC1zcmMgJ25vbmUnOyBmcmFtZS1zcmMgJ25vbmUnOyBzYW5kYm94OyIsImNvbnRlbnREaXNwb3NpdGlvblR5cGUiOiJhdHRhY2htZW50IiwicmVtb3RlUGF0dGVybnMiOltdLCJ1bm9wdGltaXplZCI6ZmFsc2V9LCJkZXZJbmRpY2F0b3JzIjp7ImFwcElzclN0YXR1cyI6dHJ1ZSwiYnVpbGRBY3Rpdml0eSI6dHJ1ZSwiYnVpbGRBY3Rpdml0eVBvc2l0aW9uIjoiYm90dG9tLXJpZ2h0In0sIm9uRGVtYW5kRW50cmllcyI6eyJtYXhJbmFjdGl2ZUFnZSI6NjAwMDAsInBhZ2VzQnVmZmVyTGVuZ3RoIjo1fSwiYW1wIjp7ImNhbm9uaWNhbEJhc2UiOiIifSwiYmFzZVBhdGgiOiIiLCJzYXNzT3B0aW9ucyI6e30sInRyYWlsaW5nU2xhc2giOmZhbHNlLCJpMThuIjpudWxsLCJwcm9kdWN0aW9uQnJvd3NlclNvdXJjZU1hcHMiOmZhbHNlLCJleGNsdWRlRGVmYXVsdE1vbWVudExvY2FsZXMiOnRydWUsInNlcnZlclJ1bnRpbWVDb25maWciOnt9LCJwdWJsaWNSdW50aW1lQ29uZmlnIjp7fSwicmVhY3RQcm9kdWN0aW9uUHJvZmlsaW5nIjpmYWxzZSwicmVhY3RTdHJpY3RNb2RlIjpudWxsLCJyZWFjdE1heEhlYWRlcnNMZW5ndGgiOjYwMDAsImh0dHBBZ2VudE9wdGlvbnMiOnsia2VlcEFsaXZlIjp0cnVlfSwibG9nZ2luZyI6e30sInN0YXRpY1BhZ2VHZW5lcmF0aW9uVGltZW91dCI6NjAsIm1vZHVsYXJpemVJbXBvcnRzIjp7IkBtdWkvaWNvbnMtbWF0ZXJpYWwiOnsidHJhbnNmb3JtIjoiQG11aS9pY29ucy1tYXRlcmlhbC97e21lbWJlcn19In0sImxvZGFzaCI6eyJ0cmFuc2Zvcm0iOiJsb2Rhc2gve3ttZW1iZXJ9fSJ9fSwib3V0cHV0RmlsZVRyYWNpbmdSb290IjoiL3RtcC9uZXh0LXN0YXRzS2JnaDMzL3N0YXRzLWFwcCIsImV4cGVyaW1lbnRhbCI6eyJtdWx0aVpvbmVEcmFmdE1vZGUiOmZhbHNlLCJhcHBOYXZGYWlsSGFuZGxpbmciOmZhbHNlLCJwcmVyZW5kZXJFYXJseUV4aXQiOnRydWUsInNlcnZlck1pbmlmaWNhdGlvbiI6dHJ1ZSwic2VydmVyU291cmNlTWFwcyI6ZmFsc2UsImxpbmtOb1RvdWNoU3RhcnQiOmZhbHNlLCJjYXNlU2Vuc2l0aXZlUm91dGVzIjpmYWxzZSwicHJlbG9hZEVudHJpZXNPblN0YXJ0Ijp0cnVlLCJjbGllbnRSb3V0ZXJGaWx0ZXIiOnRydWUsImNsaWVudFJvdXRlckZpbHRlclJlZGlyZWN0cyI6ZmFsc2UsImZldGNoQ2FjaGVLZXlQcmVmaXgiOiIiLCJtaWRkbGV3YXJlUHJlZmV0Y2giOiJmbGV4aWJsZSIsIm9wdGltaXN0aWNDbGllbnRDYWNoZSI6dHJ1ZSwibWFudWFsQ2xpZW50QmFzZVBhdGgiOmZhbHNlLCJjcHVzIjoxOSwibWVtb3J5QmFzZWRXb3JrZXJzQ291bnQiOmZhbHNlLCJpc3JGbHVzaFRvRGlzayI6dHJ1ZSwid29ya2VyVGhyZWFkcyI6ZmFsc2UsIm9wdGltaXplQ3NzIjpmYWxzZSwibmV4dFNjcmlwdFdvcmtlcnMiOmZhbHNlLCJzY3JvbGxSZXN0b3JhdGlvbiI6ZmFsc2UsImV4dGVybmFsRGlyIjpmYWxzZSwiZGlzYWJsZU9wdGltaXplZExvYWRpbmciOmZhbHNlLCJnemlwU2l6ZSI6dHJ1ZSwiY3JhQ29tcGF0IjpmYWxzZSwiZXNtRXh0ZXJuYWxzIjp0cnVlLCJmdWxseVNwZWNpZmllZCI6ZmFsc2UsInN3Y1RyYWNlUHJvZmlsaW5nIjpmYWxzZSwiZm9yY2VTd2NUcmFuc2Zvcm1zIjpmYWxzZSwibGFyZ2VQYWdlRGF0YUJ5dGVzIjoxMjgwMDAsInR1cmJvIjp7InJvb3QiOiIvdG1wL25leHQtc3RhdHNLYmdoMzMvc3RhdHMtYXBwIn0sInR5cGVkUm91dGVzIjpmYWxzZSwidHlwZWRFbnYiOmZhbHNlLCJwYXJhbGxlbFNlcnZlckNvbXBpbGVzIjpmYWxzZSwicGFyYWxsZWxTZXJ2ZXJCdWlsZFRyYWNlcyI6ZmFsc2UsInBwciI6ZmFsc2UsInBwckZhbGxiYWNrcyI6ZmFsc2UsIndlYnBhY2tNZW1vcnlPcHRpbWl6YXRpb25zIjpmYWxzZSwib3B0aW1pemVTZXJ2ZXJSZWFjdCI6ZmFsc2UsInVzZUVhcmx5SW1wb3J0IjpmYWxzZSwic3RhbGVUaW1lcyI6eyJkeW5hbWljIjowLCJzdGF0aWMiOjMwMH0sImFmdGVyIjpmYWxzZSwic2VydmVyQ29tcG9uZW50c0htckNhY2hlIjp0cnVlLCJzdGF0aWNHZW5lcmF0aW9uTWF4Q29uY3VycmVuY3kiOjgsInN0YXRpY0dlbmVyYXRpb25NaW5QYWdlc1BlcldvcmtlciI6MjUsImR5bmFtaWNJTyI6ZmFsc2UsIm9wdGltaXplUGFja2FnZUltcG9ydHMiOlsibHVjaWRlLXJlYWN0IiwiZGF0ZS1mbnMiLCJsb2Rhc2gtZXMiLCJyYW1kYSIsImFudGQiLCJyZWFjdC1ib290c3RyYXAiLCJhaG9va3MiLCJAYW50LWRlc2lnbi9pY29ucyIsIkBoZWFkbGVzc3VpL3JlYWN0IiwiQGhlYWRsZXNzdWktZmxvYXQvcmVhY3QiLCJAaGVyb2ljb25zL3JlYWN0LzIwL3NvbGlkIiwiQGhlcm9pY29ucy9yZWFjdC8yNC9zb2xpZCIsIkBoZXJvaWNvbnMvcmVhY3QvMjQvb3V0bGluZSIsIkB2aXN4L3Zpc3giLCJAdHJlbW9yL3JlYWN0IiwicnhqcyIsIkBtdWkvbWF0ZXJpYWwiLCJAbXVpL2ljb25zLW1hdGVyaWFsIiwicmVjaGFydHMiLCJyZWFjdC11c2UiLCJlZmZlY3QiLCJAZWZmZWN0L3NjaGVtYSIsIkBlZmZlY3QvcGxhdGZvcm0iLCJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiLCJAZWZmZWN0L3BsYXRmb3JtLWJyb3dzZXIiLCJAZWZmZWN0L3BsYXRmb3JtLWJ1biIsIkBlZmZlY3Qvc3FsIiwiQGVmZmVjdC9zcWwtbXNzcWwiLCJAZWZmZWN0L3NxbC1teXNxbDIiLCJAZWZmZWN0L3NxbC1wZyIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtbm9kZSIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtYnVuIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS13YXNtIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS1yZWFjdC1uYXRpdmUiLCJAZWZmZWN0L3JwYyIsIkBlZmZlY3QvcnBjLWh0dHAiLCJAZWZmZWN0L3R5cGVjbGFzcyIsIkBlZmZlY3QvZXhwZXJpbWVudGFsIiwiQGVmZmVjdC9vcGVudGVsZW1ldHJ5IiwiQG1hdGVyaWFsLXVpL2NvcmUiLCJAbWF0ZXJpYWwtdWkvaWNvbnMiLCJAdGFibGVyL2ljb25zLXJlYWN0IiwibXVpLWNvcmUiLCJyZWFjdC1pY29ucy9haSIsInJlYWN0LWljb25zL2JpIiwicmVhY3QtaWNvbnMvYnMiLCJyZWFjdC1pY29ucy9jZyIsInJlYWN0LWljb25zL2NpIiwicmVhY3QtaWNvbnMvZGkiLCJyZWFjdC1pY29ucy9mYSIsInJlYWN0LWljb25zL2ZhNiIsInJlYWN0LWljb25zL2ZjIiwicmVhY3QtaWNvbnMvZmkiLCJyZWFjdC1pY29ucy9naSIsInJlYWN0LWljb25zL2dvIiwicmVhY3QtaWNvbnMvZ3IiLCJyZWFjdC1pY29ucy9oaSIsInJlYWN0LWljb25zL2hpMiIsInJlYWN0LWljb25zL2ltIiwicmVhY3QtaWNvbnMvaW8iLCJyZWFjdC1pY29ucy9pbzUiLCJyZWFjdC1pY29ucy9saWEiLCJyZWFjdC1pY29ucy9saWIiLCJyZWFjdC1pY29ucy9sdSIsInJlYWN0LWljb25zL21kIiwicmVhY3QtaWNvbnMvcGkiLCJyZWFjdC1pY29ucy9yaSIsInJlYWN0LWljb25zL3J4IiwicmVhY3QtaWNvbnMvc2kiLCJyZWFjdC1pY29ucy9zbCIsInJlYWN0LWljb25zL3RiIiwicmVhY3QtaWNvbnMvdGZpIiwicmVhY3QtaWNvbnMvdGkiLCJyZWFjdC1pY29ucy92c2MiLCJyZWFjdC1pY29ucy93aSJdfSwiYnVuZGxlUGFnZXNSb3V0ZXJEZXBlbmRlbmNpZXMiOmZhbHNlLCJjb25maWdGaWxlIjoiL3RtcC9uZXh0LXN0YXRzS2JnaDMzL3N0YXRzLWFwcC9uZXh0LmNvbmZpZy5qcyIsImNvbmZpZ0ZpbGVOYW1lIjoibmV4dC5jb25maWcuanMifQ==","pagesType":"app","appDirLoader":"bmV4dC1hcHAtbG9hZGVyP25hbWU9YXBwJTJGYXBwLWVkZ2Utc3NyJTJGcGFnZSZwYWdlPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZVBhdGg9cHJpdmF0ZS1uZXh0LWFwcC1kaXIlMkZhcHAtZWRnZS1zc3IlMkZwYWdlLmpzJmFwcERpcj0lMkZ0bXAlMkZuZXh0LXN0YXRzS2JnaDMzJTJGc3RhdHMtYXBwJTJGYXBwJmFwcFBhdGhzPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZUV4dGVuc2lvbnM9dHN4JnBhZ2VFeHRlbnNpb25zPXRzJnBhZ2VFeHRlbnNpb25zPWpzeCZwYWdlRXh0ZW5zaW9ucz1qcyZiYXNlUGF0aD0mYXNzZXRQcmVmaXg9Jm5leHRDb25maWdPdXRwdXQ9JmZseWluZ1NodXR0bGU9ZmFsc2UmcHJlZmVycmVkUmVnaW9uPSZtaWRkbGV3YXJlQ29uZmlnPWUzMCUzRCE=","sriEnabled":false,"middlewareConfig":"e30="}!
var _self___RSC_MANIFEST;
const incrementalCacheHandler = null;
@@ -432,50 +432,50 @@
/***/
},
- /***/ 2243: /***/ (
+ /***/ 5450: /***/ (
__unused_webpack_module,
__unused_webpack_exports,
__webpack_require__
) => {
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 8585)
+ __webpack_require__.bind(__webpack_require__, 753)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 9467)
+ __webpack_require__.bind(__webpack_require__, 6866)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 1744)
+ __webpack_require__.bind(__webpack_require__, 7099)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 9329)
+ __webpack_require__.bind(__webpack_require__, 2064)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 7969)
+ __webpack_require__.bind(__webpack_require__, 7531)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 4252)
+ __webpack_require__.bind(__webpack_require__, 8704)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 5685)
+ __webpack_require__.bind(__webpack_require__, 1335)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 853)
+ __webpack_require__.bind(__webpack_require__, 2618)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 1843)
+ __webpack_require__.bind(__webpack_require__, 7794)
);
Promise.resolve(/* import() eager */).then(
- __webpack_require__.bind(__webpack_require__, 8149)
+ __webpack_require__.bind(__webpack_require__, 7094)
);
/***/
},
- /***/ 5315: /***/ () => {
+ /***/ 9641: /***/ () => {
/***/
},
- /***/ 3073: /***/ (
+ /***/ 2934: /***/ (
__unused_webpack_module,
__webpack_exports__,
__webpack_require__
@@ -495,7 +495,7 @@
/***/
},
- /***/ 6908: /***/ (
+ /***/ 176: /***/ (
__unused_webpack_module,
__webpack_exports__,
__webpack_require__
@@ -507,7 +507,7 @@
/* harmony export */
});
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
- __webpack_require__(7669);
+ __webpack_require__(2843);
function RootLayout({ children }) {
return /*#__PURE__*/ (0,
@@ -526,7 +526,7 @@
// webpackRuntimeModules
/******/ var __webpack_exec__ = (moduleId) =>
__webpack_require__((__webpack_require__.s = moduleId));
- /******/ __webpack_require__.O(0, [319, 704], () => __webpack_exec__(1661));
+ /******/ __webpack_require__.O(0, [819, 397], () => __webpack_exec__(1167));
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ (_ENTRIES = typeof _ENTRIES === "undefined" ? {} : _ENTRIES)[
"middleware_app/app-edge-ssr/page"
Diff for middleware.js
Diff too large to display
Diff for edge-ssr.js
Diff too large to display
Diff for image-HASH.js
@@ -1,7 +1,7 @@
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
[8358],
{
- /***/ 8908: /***/ (
+ /***/ 8176: /***/ (
__unused_webpack_module,
__unused_webpack_exports,
__webpack_require__
@@ -9,7 +9,7 @@
(window.__NEXT_P = window.__NEXT_P || []).push([
"/image",
function () {
- return __webpack_require__(2111);
+ return __webpack_require__(934);
},
]);
if (false) {
@@ -18,7 +18,7 @@
/***/
},
- /***/ 6308: /***/ (module, exports, __webpack_require__) => {
+ /***/ 5057: /***/ (module, exports, __webpack_require__) => {
"use strict";
/* __next_internal_client_entry_do_not_use__ cjs */
Object.defineProperty(exports, "__esModule", {
@@ -40,17 +40,17 @@
__webpack_require__(1955)
);
const _head = /*#__PURE__*/ _interop_require_default._(
- __webpack_require__(2383)
+ __webpack_require__(7163)
);
- const _getimgprops = __webpack_require__(5640);
- const _imageconfig = __webpack_require__(2758);
- const _imageconfigcontextsharedruntime = __webpack_require__(899);
- const _warnonce = __webpack_require__(3878);
- const _routercontextsharedruntime = __webpack_require__(869);
+ const _getimgprops = __webpack_require__(5447);
+ const _imageconfig = __webpack_require__(1650);
+ const _imageconfigcontextsharedruntime = __webpack_require__(1953);
+ const _warnonce = __webpack_require__(5054);
+ const _routercontextsharedruntime = __webpack_require__(4445);
const _imageloader = /*#__PURE__*/ _interop_require_default._(
- __webpack_require__(6501)
+ __webpack_require__(7406)
);
- const _usemergedref = __webpack_require__(3994);
+ const _usemergedref = __webpack_require__(3303);
// This is replaced by webpack define plugin
const configEnv = {
deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],
@@ -371,7 +371,7 @@
/***/
},
- /***/ 3994: /***/ (module, exports, __webpack_require__) => {
+ /***/ 3303: /***/ (module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", {
@@ -440,7 +440,7 @@
/***/
},
- /***/ 5640: /***/ (
+ /***/ 5447: /***/ (
__unused_webpack_module,
exports,
__webpack_require__
@@ -456,9 +456,9 @@
return getImgProps;
},
});
- const _warnonce = __webpack_require__(3878);
- const _imageblursvg = __webpack_require__(4317);
- const _imageconfig = __webpack_require__(2758);
+ const _warnonce = __webpack_require__(5054);
+ const _imageblursvg = __webpack_require__(1731);
+ const _imageconfig = __webpack_require__(1650);
const VALID_LOADING_VALUES =
/* unused pure expression or super */ null && [
"lazy",
@@ -830,7 +830,7 @@
/***/
},
- /***/ 4317: /***/ (__unused_webpack_module, exports) => {
+ /***/ 1731: /***/ (__unused_webpack_module, exports) => {
"use strict";
/**
* A shared function, used on both client and server, to generate a SVG blur placeholder.
@@ -885,7 +885,7 @@
/***/
},
- /***/ 8580: /***/ (
+ /***/ 9833: /***/ (
__unused_webpack_module,
exports,
__webpack_require__
@@ -912,10 +912,10 @@
},
});
const _interop_require_default = __webpack_require__(9608);
- const _getimgprops = __webpack_require__(5640);
- const _imagecomponent = __webpack_require__(6308);
+ const _getimgprops = __webpack_require__(5447);
+ const _imagecomponent = __webpack_require__(5057);
const _imageloader = /*#__PURE__*/ _interop_require_default._(
- __webpack_require__(6501)
+ __webpack_require__(7406)
);
function getImageProps(imgProps) {
const { props } = (0, _getimgprops.getImgProps)(imgProps, {
@@ -947,7 +947,7 @@
/***/
},
- /***/ 6501: /***/ (__unused_webpack_module, exports) => {
+ /***/ 7406: /***/ (__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", {
@@ -982,7 +982,7 @@
/***/
},
- /***/ 2111: /***/ (
+ /***/ 934: /***/ (
__unused_webpack_module,
__webpack_exports__,
__webpack_require__
@@ -999,8 +999,8 @@
// EXTERNAL MODULE: ./node_modules/.pnpm/react@19.0.0-rc-7771d3a7-20240827/node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(5815);
- // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_h4bgdqagqtli4q7bnw2ajnn4vm/node_modules/next/image.js
- var next_image = __webpack_require__(1878);
+ // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-7771d3a7-20240827_re_qz7eh3ruj3cscolfxbcb265hza/node_modules/next/image.js
+ var next_image = __webpack_require__(7649);
var image_default = /*#__PURE__*/ __webpack_require__.n(next_image); // CONCATENATED MODULE: ./pages/nextjs.png
/* harmony default export */ const nextjs = {
src: "/_next/static/media/nextjs.cae0b805.png",
@@ -1030,12 +1030,12 @@
/***/
},
- /***/ 1878: /***/ (
+ /***/ 7649: /***/ (
module,
__unused_webpack_exports,
__webpack_require__
) => {
- module.exports = __webpack_require__(8580);
+ module.exports = __webpack_require__(9833);
/***/
},
@@ -1045,7 +1045,7 @@
/******/ var __webpack_exec__ = (moduleId) =>
__webpack_require__((__webpack_require__.s = moduleId));
/******/ __webpack_require__.O(0, [2888, 9774, 179], () =>
- __webpack_exec__(8908)
+ __webpack_exec__(8176)
);
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ _N_E = __webpack_exports__;
Diff for 5867-HASH.js
Diff too large to display
Diff for pages-turbo...time.prod.js
@@ -28,5 +28,5 @@ See more info here: https://nextjs.org/docs/messages/gsp-redirect-during-prerend
To never revalidate, you can set revalidate to \`false\` (only ran once at build-time).
To revalidate as soon as possible, you can set the value to \`1\`.`);e.revalidate>31536e3&&console.warn(`Warning: A page's revalidate option was set to more than a year for ${n.url}. This may have been done in error.
To only run getStaticProps at build-time and not revalidate at runtime, you can set \`revalidate\` to \`false\`!`),t=e.revalidate}else throw Error(`A page's revalidate option must be seconds expressed as a natural number for ${n.url}. Mixed numbers, such as '${e.revalidate}', cannot be used.
-Try changing the value to '${Math.ceil(e.revalidate)}' or using \`Math.ceil()\` if you're computing the value.`)}else if(!0===e.revalidate)t=1;else if(!1===e.revalidate||void 0===e.revalidate)t=!1;else throw Error(`A page's revalidate option must be seconds expressed as a natural number. Mixed numbers and strings cannot be used. Received '${JSON.stringify(e.revalidate)}' for ${n.url}`)}else t=!1;if(m.pageProps=Object.assign({},m.pageProps,"props"in e?e.props:void 0),v.revalidate=t,v.pageData=m,v.isNotFound)return new eT(null,{metadata:v})}if(M&&(m.__N_SSP=!0),M&&!ep){let e;let t=!1;try{e=await (0,eo.getTracer)().trace(es.xj.getServerSideProps,{spanName:`getServerSideProps ${a}`,attributes:{"next.route":a}},async()=>M({req:n,res:s,query:i,resolvedUrl:l.resolvedUrl,...ex?{params:F}:void 0,...!1!==h?{draftMode:!0,preview:!0,previewData:h}:void 0,locales:l.locales,locale:l.locale,defaultLocale:l.defaultLocale}))}catch(e){throw"object"==typeof e&&null!==e&&"name"in e&&"message"in e&&"ENOENT"===e.code&&delete e.code,e}if(null==e)throw Error(R.Lx);e.props instanceof Promise&&(t=!0);let r=Object.keys(e).filter(e=>"props"!==e&&"redirect"!==e&&"notFound"!==e);if(e.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${a}`);if(e.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${a}`);if(r.length)throw Error(e0("getServerSideProps",r));if("notFound"in e&&e.notFound){if("/404"===a)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return v.isNotFound=!0,new eT(null,{metadata:v})}if("redirect"in e&&"object"==typeof e.redirect&&(e1(e.redirect,n,"getServerSideProps"),e.props={__N_REDIRECT:e.redirect.destination,__N_REDIRECT_STATUS:en(e.redirect)},void 0!==e.redirect.basePath&&(e.props.__N_REDIRECT_BASE_PATH=e.redirect.basePath),v.isRedirect=!0),t&&(e.props=await e.props),(S||ef)&&!$(a,"getServerSideProps",e.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");m.pageProps=Object.assign({},m.pageProps,e.props),v.pageData=m}if(D&&!em||v.isRedirect)return new eT(JSON.stringify(m),{metadata:v});if(ep&&(m.pageProps={}),Q(s)&&!em)return new eT(null,{metadata:v});let e4=E;if(eS&&ex){let e;let t=(e=(function(e){let t=/^\/index(\/|$)/.test(e)&&!G(e)?"/index"+e:"/"===e?"/index":U(e);{let{posix:e}=r("path"),n=e.normalize(t);if(n!==t)throw new Z("Requested and resolved page mismatch: "+t+" "+n)}return t})(a).replace(/\\/g,"/")).startsWith("/index/")&&!G(e)?e.slice(6):"/index"!==e?e:"/";t in e4.pages&&(e4={...e4,pages:{...e4.pages,[t]:[...e4.pages[t],...e4.lowPriorityFiles.filter(e=>e.includes("_buildManifest"))]},lowPriorityFiles:e4.lowPriorityFiles.filter(e=>!e.includes("_buildManifest"))})}let e2=({children:e})=>eE?e:(0,y.jsx)("div",{id:"__next",children:e}),e3=async()=>{let e,t;async function r(e){let t=async(t={})=>{if(eJ.err&&L)return e&&e(ea,ed),{html:await eZ((0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})})),head:eN};if(S&&(m.router||m.Component))throw Error("'router' and 'Component' can not be returned in getInitialProps from _app.js https://nextjs.org/docs/messages/cant-override-next-props");let{App:r,Component:n}="function"==typeof t?{App:ea,Component:t(ed)}:{App:t.enhanceApp?t.enhanceApp(ea):ea,Component:t.enhanceComponent?t.enhanceComponent(ed):ed},o=await e(r,n);return await o.allReady,{html:await eu(o),head:eN}},r={...eJ,renderPage:t},n=await X(el,r);if(Q(s)&&!em)return null;if(!n||"string"!=typeof n.html)throw Error(`"${V(el)}.getInitialProps()" should resolve to an object with a "html" prop set with a valid html string`);return{docProps:n,documentCtx:r}}el.__NEXT_BUILTIN_DOCUMENT__;let n=(e,t)=>{let r=e||ea,n=t||ed;return eJ.err&&L?(0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})}):(0,y.jsx)(e2,{children:(0,y.jsx)(eW,{children:eK(r,n,{...m,router:eP})})})},o=async(e,t)=>{let r=n(e,t);return await function({ReactDOMServer:e,element:t,streamOptions:r}){return(0,eo.getTracer)().trace(es.k0.renderToReadableStream,async()=>e.renderToReadableStream(t,r))}({ReactDOMServer:P(),element:r})},a=!!el.getInitialProps,[i,l]=await Promise.all([eZ(eX()),(async()=>{if(a){if(null===(e=await r(o)))return null;let{docProps:t}=e;return t.html}{e={};let t=await o(ea,ed);return await t.allReady,eu(t)}})()]);if(null===l)return null;let{docProps:d}=e||{};return a?(t=d.styles,eN=d.head):(t=eC.styles(),eC.flush()),{contentHTML:i+l,documentElement:e=>(0,y.jsx)(el,{...e,...d}),head:eN,headTags:[],styles:t}};null==(u=(0,eo.getTracer)().getRootSpanAttributes())||u.set("next.route",l.page);let e8=await (0,eo.getTracer)().trace(es.xj.renderDocument,{spanName:`render route (pages) ${l.page}`,attributes:{"next.route":l.page}},async()=>e3());if(!e8)return new eT(null,{metadata:v});let e9=new Set,e6=new Set;for(let e of eI){let t=T[e];t&&(e9.add(t.id),t.files.forEach(e=>{e6.add(e)}))}let e5=ej.hybrid,{assetPrefix:e7,buildId:te,customServer:tt,defaultLocale:tr,disableOptimizedLoading:tn,domainLocales:to,locale:ts,locales:ta,runtimeConfig:ti}=l,tl={__NEXT_DATA__:{props:m,page:a,query:i,buildId:te,assetPrefix:""===e7?void 0:e7,runtimeConfig:ti,nextExport:!0===eG||void 0,autoExport:!0===eS||void 0,isFallback:ep,isExperimentalCompile:ee,dynamicIds:0===e9.size?void 0:Array.from(e9),err:l.err?(p=l.err,S?(g="server",g=p[eV]||"server",{name:p.name,source:g,message:e$()(p.message),stack:p.stack,digest:p.digest}):{name:"Internal Server Error.",message:"500 - Internal Server Error.",statusCode:500}):void 0,gsp:!!N||void 0,gssp:!!M||void 0,customServer:tt,gip:!!ev||void 0,appGip:!eg||void 0,locale:ts,locales:ta,defaultLocale:tr,domainLocales:to,isPreview:!0===f||void 0,notFoundSrcPage:eh&&S?eh:void 0},strictNextHead:l.strictNextHead,buildManifest:e4,docComponentsRendered:{},dangerousAsPath:eP.asPath,canonicalBase:!l.ampPath&&et(n,"didStripLocale")?`${l.canonicalBase||""}/${l.locale}`:l.canonicalBase,ampPath:w,inAmpMode:eE,isDevelopment:!!S,hybridAmp:e5,dynamicImports:Array.from(e6),assetPrefix:e7,unstable_runtimeJS:C.unstable_runtimeJS,unstable_JsPreload:C.unstable_JsPreload,assetQueryString:ei,scriptLoader:eR,locale:ts,disableOptimizedLoading:tn,head:e8.head,headTags:e8.headTags,styles:e8.styles,crossOrigin:l.crossOrigin,optimizeCss:l.optimizeCss,nextConfigOutput:l.nextConfigOutput,nextScriptWorkers:l.nextScriptWorkers,runtime:K,largePageDataBytes:l.largePageDataBytes,nextFontManifest:l.nextFontManifest,experimentalClientTraceMetadata:l.experimental.clientTraceMetadata},td=(0,y.jsx)(A.Provider,{value:ej,children:(0,y.jsx)(Y.Provider,{value:tl,children:e8.documentElement(tl)})}),tu=await (0,eo.getTracer)().trace(es.xj.renderToString,async()=>eZ(td)),[tc,tp]=tu.split("<next-js-internal-body-render-target></next-js-internal-body-render-target>",2),th="";tu.startsWith(eQ)||(th+=eQ),th+=tc,eE&&(th+="<!-- __NEXT_DATA__ -->");let tm=th+e8.contentHTML+tp;return new eT(await o(a,tm,l,{inAmpMode:eE,hybridAmp:e5}),{metadata:v})}let e2=(e,t,r,n,o)=>e4(e,t,r,n,o,o),e3=S().createContext(null);function e8(e){let t=(0,b.useContext)(e3);t&&t(e)}class e9 extends v{constructor(e){super(e),this.components=e.components}render(e,t,r){return e4(e,t,r.page,r.query,r.renderOpts,{App:this.components.App,Document:this.components.Document})}}let e6={contexts:g},e5=e9})(),module.exports=n})();
+Try changing the value to '${Math.ceil(e.revalidate)}' or using \`Math.ceil()\` if you're computing the value.`)}else if(!0===e.revalidate)t=1;else if(!1===e.revalidate||void 0===e.revalidate)t=!1;else throw Error(`A page's revalidate option must be seconds expressed as a natural number. Mixed numbers and strings cannot be used. Received '${JSON.stringify(e.revalidate)}' for ${n.url}`)}else t=!1;if(m.pageProps=Object.assign({},m.pageProps,"props"in e?e.props:void 0),v.revalidate=t,v.pageData=m,v.isNotFound)return new eT(null,{metadata:v})}if(M&&(m.__N_SSP=!0),M&&!ep){let e;let t=!1;try{e=await (0,eo.getTracer)().trace(es.xj.getServerSideProps,{spanName:`getServerSideProps ${a}`,attributes:{"next.route":a}},async()=>M({req:n,res:s,query:i,resolvedUrl:l.resolvedUrl,...ex?{params:F}:void 0,...!1!==h?{draftMode:!0,preview:!0,previewData:h}:void 0,locales:l.locales,locale:l.locale,defaultLocale:l.defaultLocale})),v.revalidate=0}catch(e){throw"object"==typeof e&&null!==e&&"name"in e&&"message"in e&&"ENOENT"===e.code&&delete e.code,e}if(null==e)throw Error(R.Lx);e.props instanceof Promise&&(t=!0);let r=Object.keys(e).filter(e=>"props"!==e&&"redirect"!==e&&"notFound"!==e);if(e.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${a}`);if(e.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${a}`);if(r.length)throw Error(e0("getServerSideProps",r));if("notFound"in e&&e.notFound){if("/404"===a)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return v.isNotFound=!0,new eT(null,{metadata:v})}if("redirect"in e&&"object"==typeof e.redirect&&(e1(e.redirect,n,"getServerSideProps"),e.props={__N_REDIRECT:e.redirect.destination,__N_REDIRECT_STATUS:en(e.redirect)},void 0!==e.redirect.basePath&&(e.props.__N_REDIRECT_BASE_PATH=e.redirect.basePath),v.isRedirect=!0),t&&(e.props=await e.props),(S||ef)&&!$(a,"getServerSideProps",e.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");m.pageProps=Object.assign({},m.pageProps,e.props),v.pageData=m}if(D&&!em||v.isRedirect)return new eT(JSON.stringify(m),{metadata:v});if(ep&&(m.pageProps={}),Q(s)&&!em)return new eT(null,{metadata:v});let e4=E;if(eS&&ex){let e;let t=(e=(function(e){let t=/^\/index(\/|$)/.test(e)&&!G(e)?"/index"+e:"/"===e?"/index":U(e);{let{posix:e}=r("path"),n=e.normalize(t);if(n!==t)throw new Z("Requested and resolved page mismatch: "+t+" "+n)}return t})(a).replace(/\\/g,"/")).startsWith("/index/")&&!G(e)?e.slice(6):"/index"!==e?e:"/";t in e4.pages&&(e4={...e4,pages:{...e4.pages,[t]:[...e4.pages[t],...e4.lowPriorityFiles.filter(e=>e.includes("_buildManifest"))]},lowPriorityFiles:e4.lowPriorityFiles.filter(e=>!e.includes("_buildManifest"))})}let e2=({children:e})=>eE?e:(0,y.jsx)("div",{id:"__next",children:e}),e3=async()=>{let e,t;async function r(e){let t=async(t={})=>{if(eJ.err&&L)return e&&e(ea,ed),{html:await eZ((0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})})),head:eN};if(S&&(m.router||m.Component))throw Error("'router' and 'Component' can not be returned in getInitialProps from _app.js https://nextjs.org/docs/messages/cant-override-next-props");let{App:r,Component:n}="function"==typeof t?{App:ea,Component:t(ed)}:{App:t.enhanceApp?t.enhanceApp(ea):ea,Component:t.enhanceComponent?t.enhanceComponent(ed):ed},o=await e(r,n);return await o.allReady,{html:await eu(o),head:eN}},r={...eJ,renderPage:t},n=await X(el,r);if(Q(s)&&!em)return null;if(!n||"string"!=typeof n.html)throw Error(`"${V(el)}.getInitialProps()" should resolve to an object with a "html" prop set with a valid html string`);return{docProps:n,documentCtx:r}}el.__NEXT_BUILTIN_DOCUMENT__;let n=(e,t)=>{let r=e||ea,n=t||ed;return eJ.err&&L?(0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})}):(0,y.jsx)(e2,{children:(0,y.jsx)(eW,{children:eK(r,n,{...m,router:eP})})})},o=async(e,t)=>{let r=n(e,t);return await function({ReactDOMServer:e,element:t,streamOptions:r}){return(0,eo.getTracer)().trace(es.k0.renderToReadableStream,async()=>e.renderToReadableStream(t,r))}({ReactDOMServer:P(),element:r})},a=!!el.getInitialProps,[i,l]=await Promise.all([eZ(eX()),(async()=>{if(a){if(null===(e=await r(o)))return null;let{docProps:t}=e;return t.html}{e={};let t=await o(ea,ed);return await t.allReady,eu(t)}})()]);if(null===l)return null;let{docProps:d}=e||{};return a?(t=d.styles,eN=d.head):(t=eC.styles(),eC.flush()),{contentHTML:i+l,documentElement:e=>(0,y.jsx)(el,{...e,...d}),head:eN,headTags:[],styles:t}};null==(u=(0,eo.getTracer)().getRootSpanAttributes())||u.set("next.route",l.page);let e8=await (0,eo.getTracer)().trace(es.xj.renderDocument,{spanName:`render route (pages) ${l.page}`,attributes:{"next.route":l.page}},async()=>e3());if(!e8)return new eT(null,{metadata:v});let e9=new Set,e6=new Set;for(let e of eI){let t=T[e];t&&(e9.add(t.id),t.files.forEach(e=>{e6.add(e)}))}let e5=ej.hybrid,{assetPrefix:e7,buildId:te,customServer:tt,defaultLocale:tr,disableOptimizedLoading:tn,domainLocales:to,locale:ts,locales:ta,runtimeConfig:ti}=l,tl={__NEXT_DATA__:{props:m,page:a,query:i,buildId:te,assetPrefix:""===e7?void 0:e7,runtimeConfig:ti,nextExport:!0===eG||void 0,autoExport:!0===eS||void 0,isFallback:ep,isExperimentalCompile:ee,dynamicIds:0===e9.size?void 0:Array.from(e9),err:l.err?(p=l.err,S?(g="server",g=p[eV]||"server",{name:p.name,source:g,message:e$()(p.message),stack:p.stack,digest:p.digest}):{name:"Internal Server Error.",message:"500 - Internal Server Error.",statusCode:500}):void 0,gsp:!!N||void 0,gssp:!!M||void 0,customServer:tt,gip:!!ev||void 0,appGip:!eg||void 0,locale:ts,locales:ta,defaultLocale:tr,domainLocales:to,isPreview:!0===f||void 0,notFoundSrcPage:eh&&S?eh:void 0},strictNextHead:l.strictNextHead,buildManifest:e4,docComponentsRendered:{},dangerousAsPath:eP.asPath,canonicalBase:!l.ampPath&&et(n,"didStripLocale")?`${l.canonicalBase||""}/${l.locale}`:l.canonicalBase,ampPath:w,inAmpMode:eE,isDevelopment:!!S,hybridAmp:e5,dynamicImports:Array.from(e6),assetPrefix:e7,unstable_runtimeJS:C.unstable_runtimeJS,unstable_JsPreload:C.unstable_JsPreload,assetQueryString:ei,scriptLoader:eR,locale:ts,disableOptimizedLoading:tn,head:e8.head,headTags:e8.headTags,styles:e8.styles,crossOrigin:l.crossOrigin,optimizeCss:l.optimizeCss,nextConfigOutput:l.nextConfigOutput,nextScriptWorkers:l.nextScriptWorkers,runtime:K,largePageDataBytes:l.largePageDataBytes,nextFontManifest:l.nextFontManifest,experimentalClientTraceMetadata:l.experimental.clientTraceMetadata},td=(0,y.jsx)(A.Provider,{value:ej,children:(0,y.jsx)(Y.Provider,{value:tl,children:e8.documentElement(tl)})}),tu=await (0,eo.getTracer)().trace(es.xj.renderToString,async()=>eZ(td)),[tc,tp]=tu.split("<next-js-internal-body-render-target></next-js-internal-body-render-target>",2),th="";tu.startsWith(eQ)||(th+=eQ),th+=tc,eE&&(th+="<!-- __NEXT_DATA__ -->");let tm=th+e8.contentHTML+tp;return new eT(await o(a,tm,l,{inAmpMode:eE,hybridAmp:e5}),{metadata:v})}let e2=(e,t,r,n,o)=>e4(e,t,r,n,o,o),e3=S().createContext(null);function e8(e){let t=(0,b.useContext)(e3);t&&t(e)}class e9 extends v{constructor(e){super(e),this.components=e.components}render(e,t,r){return e4(e,t,r.page,r.query,r.renderOpts,{App:this.components.App,Document:this.components.Document})}}let e6={contexts:g},e5=e9})(),module.exports=n})();
//# sourceMappingURL=pages-turbo.runtime.prod.js.map
\ No newline at end of file
Diff for pages.runtime.dev.js
@@ -30,7 +30,7 @@ To never revalidate, you can set revalidate to \`false\` (only ran once at build
To revalidate as soon as possible, you can set the value to \`1\`.`);data.revalidate>31536e3&&console.warn(`Warning: A page's revalidate option was set to more than a year for ${req.url}. This may have been done in error.
To only run getStaticProps at build-time and not revalidate at runtime, you can set \`revalidate\` to \`false\`!`),revalidate=data.revalidate}else throw Error(`A page's revalidate option must be seconds expressed as a natural number for ${req.url}. Mixed numbers, such as '${data.revalidate}', cannot be used.
Try changing the value to '${Math.ceil(data.revalidate)}' or using \`Math.ceil()\` if you're computing the value.`)}else if(!0===data.revalidate)revalidate=1;else if(!1===data.revalidate||void 0===data.revalidate)revalidate=!1;else throw Error(`A page's revalidate option must be seconds expressed as a natural number. Mixed numbers and strings cannot be used. Received '${JSON.stringify(data.revalidate)}' for ${req.url}`)}else revalidate=!1;if(props.pageProps=Object.assign({},props.pageProps,"props"in data?data.props:void 0),metadata.revalidate=revalidate,metadata.pageData=props,metadata.isNotFound)return new RenderResult(null,{metadata})}if(getServerSideProps&&(props.__N_SSP=!0),getServerSideProps&&!isFallback){let data;let canAccessRes=!0,resOrProxy=res,deferredContent=!1;resOrProxy=new Proxy(res,{get:function(obj,prop){if(!canAccessRes){let message=`You should not access 'res' after getServerSideProps resolves.
-Read more: https://nextjs.org/docs/messages/gssp-no-mutating-res`;if(deferredContent)throw Error(message);warn(message)}return reflect.g.get(obj,prop,res)}});try{data=await (0,tracer_.getTracer)().trace(trace_constants.xj.getServerSideProps,{spanName:`getServerSideProps ${pathname}`,attributes:{"next.route":pathname}},async()=>getServerSideProps({req:req,res:resOrProxy,query,resolvedUrl:renderOpts.resolvedUrl,...pageIsDynamic?{params:params}:void 0,...!1!==previewData?{draftMode:!0,preview:!0,previewData:previewData}:void 0,locales:renderOpts.locales,locale:renderOpts.locale,defaultLocale:renderOpts.defaultLocale})),canAccessRes=!1}catch(serverSidePropsError){throw"object"==typeof serverSidePropsError&&null!==serverSidePropsError&&"name"in serverSidePropsError&&"message"in serverSidePropsError&&"ENOENT"===serverSidePropsError.code&&delete serverSidePropsError.code,serverSidePropsError}if(null==data)throw Error(constants.Lx);data.props instanceof Promise&&(deferredContent=!0);let invalidKeys=Object.keys(data).filter(key=>"props"!==key&&"redirect"!==key&&"notFound"!==key);if(data.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${pathname}`);if(data.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${pathname}`);if(invalidKeys.length)throw Error(invalidKeysMsg("getServerSideProps",invalidKeys));if("notFound"in data&&data.notFound){if("/404"===pathname)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return metadata.isNotFound=!0,new RenderResult(null,{metadata})}if("redirect"in data&&"object"==typeof data.redirect&&(checkRedirectValues(data.redirect,req,"getServerSideProps"),data.props={__N_REDIRECT:data.redirect.destination,__N_REDIRECT_STATUS:getRedirectStatus(data.redirect)},void 0!==data.redirect.basePath&&(data.props.__N_REDIRECT_BASE_PATH=data.redirect.basePath),metadata.isRedirect=!0),deferredContent&&(data.props=await data.props),(dev||isBuildTimeSSG)&&!isSerializableProps(pathname,"getServerSideProps",data.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");props.pageProps=Object.assign({},props.pageProps,data.props),metadata.pageData=props}if(!isSSG&&!getServerSideProps&&Object.keys((null==props?void 0:props.pageProps)||{}).includes("url")&&console.warn(`The prop \`url\` is a reserved prop in Next.js for legacy reasons and will be overridden on page ${pathname}
+Read more: https://nextjs.org/docs/messages/gssp-no-mutating-res`;if(deferredContent)throw Error(message);warn(message)}return reflect.g.get(obj,prop,res)}});try{data=await (0,tracer_.getTracer)().trace(trace_constants.xj.getServerSideProps,{spanName:`getServerSideProps ${pathname}`,attributes:{"next.route":pathname}},async()=>getServerSideProps({req:req,res:resOrProxy,query,resolvedUrl:renderOpts.resolvedUrl,...pageIsDynamic?{params:params}:void 0,...!1!==previewData?{draftMode:!0,preview:!0,previewData:previewData}:void 0,locales:renderOpts.locales,locale:renderOpts.locale,defaultLocale:renderOpts.defaultLocale})),canAccessRes=!1,metadata.revalidate=0}catch(serverSidePropsError){throw"object"==typeof serverSidePropsError&&null!==serverSidePropsError&&"name"in serverSidePropsError&&"message"in serverSidePropsError&&"ENOENT"===serverSidePropsError.code&&delete serverSidePropsError.code,serverSidePropsError}if(null==data)throw Error(constants.Lx);data.props instanceof Promise&&(deferredContent=!0);let invalidKeys=Object.keys(data).filter(key=>"props"!==key&&"redirect"!==key&&"notFound"!==key);if(data.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${pathname}`);if(data.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${pathname}`);if(invalidKeys.length)throw Error(invalidKeysMsg("getServerSideProps",invalidKeys));if("notFound"in data&&data.notFound){if("/404"===pathname)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return metadata.isNotFound=!0,new RenderResult(null,{metadata})}if("redirect"in data&&"object"==typeof data.redirect&&(checkRedirectValues(data.redirect,req,"getServerSideProps"),data.props={__N_REDIRECT:data.redirect.destination,__N_REDIRECT_STATUS:getRedirectStatus(data.redirect)},void 0!==data.redirect.basePath&&(data.props.__N_REDIRECT_BASE_PATH=data.redirect.basePath),metadata.isRedirect=!0),deferredContent&&(data.props=await data.props),(dev||isBuildTimeSSG)&&!isSerializableProps(pathname,"getServerSideProps",data.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");props.pageProps=Object.assign({},props.pageProps,data.props),metadata.pageData=props}if(!isSSG&&!getServerSideProps&&Object.keys((null==props?void 0:props.pageProps)||{}).includes("url")&&console.warn(`The prop \`url\` is a reserved prop in Next.js for legacy reasons and will be overridden on page ${pathname}
See more info here: https://nextjs.org/docs/messages/reserved-page-prop`),isNextDataRequest&&!isSSG||metadata.isRedirect)return new RenderResult(JSON.stringify(props),{metadata});if(isFallback&&(props.pageProps={}),isResSent(res)&&!isSSG)return new RenderResult(null,{metadata});let filteredBuildManifest=buildManifest;if(isAutoExport&&pageIsDynamic){let _page;let page=(_page=(function(page){let normalized=/^\/index(\/|$)/.test(page)&&!isDynamicRoute(page)?"/index"+page:"/"===page?"/index":ensureLeadingSlash(page);{let{posix}=__webpack_require__("path"),resolvedPage=posix.normalize(normalized);if(resolvedPage!==normalized)throw new NormalizeError("Requested and resolved page mismatch: "+normalized+" "+resolvedPage)}return normalized})(pathname).replace(/\\/g,"/")).startsWith("/index/")&&!isDynamicRoute(_page)?_page.slice(6):"/index"!==_page?_page:"/";page in filteredBuildManifest.pages&&(filteredBuildManifest={...filteredBuildManifest,pages:{...filteredBuildManifest.pages,[page]:[...filteredBuildManifest.pages[page],...filteredBuildManifest.lowPriorityFiles.filter(f=>f.includes("_buildManifest"))]},lowPriorityFiles:filteredBuildManifest.lowPriorityFiles.filter(f=>!f.includes("_buildManifest"))})}let Body=({children})=>inAmpMode?children:(0,jsx_runtime_namespaceObject.jsx)("div",{id:"__next",children:children}),renderDocument=async()=>{let documentInitialPropsRes,styles;async function loadDocumentInitialProps(renderShell){let renderPage=async(options={})=>{if(ctx.err&&ErrorDebug)return renderShell&&renderShell(App,Component),{html:await renderToString((0,jsx_runtime_namespaceObject.jsx)(Body,{children:(0,jsx_runtime_namespaceObject.jsx)(ErrorDebug,{error:ctx.err})})),head};if(dev&&(props.router||props.Component))throw Error("'router' and 'Component' can not be returned in getInitialProps from _app.js https://nextjs.org/docs/messages/cant-override-next-props");let{App:EnhancedApp,Component:EnhancedComponent}="function"==typeof options?{App:App,Component:options(Component)}:{App:options.enhanceApp?options.enhanceApp(App):App,Component:options.enhanceComponent?options.enhanceComponent(Component):Component},stream=await renderShell(EnhancedApp,EnhancedComponent);return await stream.allReady,{html:await streamToString(stream),head}},documentCtx={...ctx,renderPage},docProps=await loadGetInitialProps(Document,documentCtx);if(isResSent(res)&&!isSSG)return null;if(!docProps||"string"!=typeof docProps.html)throw Error(`"${getDisplayName(Document)}.getInitialProps()" should resolve to an object with a "html" prop set with a valid html string`);return{docProps,documentCtx}}Document.__NEXT_BUILTIN_DOCUMENT__;let renderContent=(_App,_Component)=>{let EnhancedApp=_App||App,EnhancedComponent=_Component||Component;return ctx.err&&ErrorDebug?(0,jsx_runtime_namespaceObject.jsx)(Body,{children:(0,jsx_runtime_namespaceObject.jsx)(ErrorDebug,{error:ctx.err})}):(0,jsx_runtime_namespaceObject.jsx)(Body,{children:(0,jsx_runtime_namespaceObject.jsx)(AppContainerWithIsomorphicFiberStructure,{children:renderPageTree(EnhancedApp,EnhancedComponent,{...props,router})})})},renderShell=async(EnhancedApp,EnhancedComponent)=>{let content=renderContent(EnhancedApp,EnhancedComponent);return await function({ReactDOMServer,element,streamOptions}){return(0,tracer_.getTracer)().trace(trace_constants.k0.renderToReadableStream,async()=>ReactDOMServer.renderToReadableStream(element,streamOptions))}({ReactDOMServer:server_edge_default(),element:content})},hasDocumentGetInitialProps=!!Document.getInitialProps,[rawStyledJsxInsertedHTML,content]=await Promise.all([renderToString(styledJsxInsertedHTML()),(async()=>{if(hasDocumentGetInitialProps){if(null===(documentInitialPropsRes=await loadDocumentInitialProps(renderShell)))return null;let{docProps}=documentInitialPropsRes;return docProps.html}{documentInitialPropsRes={};let stream=await renderShell(App,Component);return await stream.allReady,streamToString(stream)}})()]);if(null===content)return null;let{docProps}=documentInitialPropsRes||{};return hasDocumentGetInitialProps?(styles=docProps.styles,head=docProps.head):(styles=jsxStyleRegistry.styles(),jsxStyleRegistry.flush()),{contentHTML:rawStyledJsxInsertedHTML+content,documentElement:htmlProps=>(0,jsx_runtime_namespaceObject.jsx)(Document,{...htmlProps,...docProps}),head,headTags:[],styles}};null==(_getTracer_getRootSpanAttributes=(0,tracer_.getTracer)().getRootSpanAttributes())||_getTracer_getRootSpanAttributes.set("next.route",renderOpts.page);let documentResult=await (0,tracer_.getTracer)().trace(trace_constants.xj.renderDocument,{spanName:`render route (pages) ${renderOpts.page}`,attributes:{"next.route":renderOpts.page}},async()=>renderDocument());if(!documentResult)return new RenderResult(null,{metadata});let dynamicImportsIds=new Set,dynamicImports=new Set;for(let mod of reactLoadableModules){let manifestItem=reactLoadableManifest[mod];manifestItem&&(dynamicImportsIds.add(manifestItem.id),manifestItem.files.forEach(item=>{dynamicImports.add(item)}))}let hybridAmp=ampState.hybrid,docComponentsRendered={},{assetPrefix,buildId,customServer,defaultLocale,disableOptimizedLoading,domainLocales,locale,locales,runtimeConfig}=renderOpts,htmlProps={__NEXT_DATA__:{props,page:pathname,query,buildId,assetPrefix:""===assetPrefix?void 0:assetPrefix,runtimeConfig,nextExport:!0===nextExport||void 0,autoExport:!0===isAutoExport||void 0,isFallback,isExperimentalCompile,dynamicIds:0===dynamicImportsIds.size?void 0:Array.from(dynamicImportsIds),err:renderOpts.err?(err=renderOpts.err,dev?(source="server",source=err[symbolError]||"server",{name:err.name,source,message:strip_ansi_default()(err.message),stack:err.stack,digest:err.digest}):{name:"Internal Server Error.",message:"500 - Internal Server Error.",statusCode:500}):void 0,gsp:!!getStaticProps||void 0,gssp:!!getServerSideProps||void 0,customServer,gip:!!hasPageGetInitialProps||void 0,appGip:!defaultAppGetInitialProps||void 0,locale,locales,defaultLocale,domainLocales,isPreview:!0===isPreview||void 0,notFoundSrcPage:notFoundSrcPage&&dev?notFoundSrcPage:void 0},strictNextHead:renderOpts.strictNextHead,buildManifest:filteredBuildManifest,docComponentsRendered,dangerousAsPath:router.asPath,canonicalBase:!renderOpts.ampPath&&request_meta_getRequestMeta(req,"didStripLocale")?`${renderOpts.canonicalBase||""}/${renderOpts.locale}`:renderOpts.canonicalBase,ampPath,inAmpMode,isDevelopment:!!dev,hybridAmp,dynamicImports:Array.from(dynamicImports),assetPrefix,unstable_runtimeJS:void 0,unstable_JsPreload:pageConfig.unstable_JsPreload,assetQueryString,scriptLoader,locale,disableOptimizedLoading,head:documentResult.head,headTags:documentResult.headTags,styles:documentResult.styles,crossOrigin:renderOpts.crossOrigin,optimizeCss:renderOpts.optimizeCss,nextConfigOutput:renderOpts.nextConfigOutput,nextScriptWorkers:renderOpts.nextScriptWorkers,runtime:globalRuntime,largePageDataBytes:renderOpts.largePageDataBytes,nextFontManifest:renderOpts.nextFontManifest,experimentalClientTraceMetadata:renderOpts.experimental.clientTraceMetadata},document=(0,jsx_runtime_namespaceObject.jsx)(amp_context_shared_runtime_AmpStateContext.Provider,{value:ampState,children:(0,jsx_runtime_namespaceObject.jsx)(HtmlContext.Provider,{value:htmlProps,children:documentResult.documentElement(htmlProps)})}),documentHTML=await (0,tracer_.getTracer)().trace(trace_constants.xj.renderToString,async()=>renderToString(document));{let nonRenderedComponents=[];for(let comp of["Main","Head","NextScript","Html"])docComponentsRendered[comp]||nonRenderedComponents.push(comp);if(nonRenderedComponents.length){let missingComponentList=nonRenderedComponents.map(e=>`<${e} />`).join(", "),plural=1!==nonRenderedComponents.length?"s":"";console.warn(`Your custom Document (pages/_document) did not render all the required subcomponent${plural}.
Missing component${plural}: ${missingComponentList}
Read how to fix here: https://nextjs.org/docs/messages/missing-document-component`)}}let[renderTargetPrefix,renderTargetSuffix]=documentHTML.split("<next-js-internal-body-render-target></next-js-internal-body-render-target>",2),prefix="";documentHTML.startsWith(DOCTYPE)||(prefix+=DOCTYPE),prefix+=renderTargetPrefix,inAmpMode&&(prefix+="<!-- __NEXT_DATA__ -->");let content=prefix+documentResult.contentHTML+renderTargetSuffix;return new RenderResult(await postProcessHTML(pathname,content,renderOpts,{inAmpMode,hybridAmp}),{metadata})}let renderToHTML=(req,res,pathname,query,renderOpts)=>renderToHTMLImpl(req,res,pathname,query,renderOpts,renderOpts),ServerInsertedHTMLContext=external_react_default().createContext(null);function useServerInsertedHTML(callback){let addInsertedServerHTMLCallback=(0,external_react_namespaceObject.useContext)(ServerInsertedHTMLContext);addInsertedServerHTMLCallback&&addInsertedServerHTMLCallback(callback)}class PagesRouteModule extends RouteModule{constructor(options){super(options),this.components=options.components}render(req,res,context){return renderToHTMLImpl(req,res,context.page,context.query,context.renderOpts,{App:this.components.App,Document:this.components.Document})}}let vendored={contexts:entrypoints_namespaceObject},pages_module=PagesRouteModule})(),module.exports=__webpack_exports__})();
Diff for pages.runtime.prod.js
@@ -28,5 +28,5 @@ See more info here: https://nextjs.org/docs/messages/gsp-redirect-during-prerend
To never revalidate, you can set revalidate to \`false\` (only ran once at build-time).
To revalidate as soon as possible, you can set the value to \`1\`.`);e.revalidate>31536e3&&console.warn(`Warning: A page's revalidate option was set to more than a year for ${n.url}. This may have been done in error.
To only run getStaticProps at build-time and not revalidate at runtime, you can set \`revalidate\` to \`false\`!`),t=e.revalidate}else throw Error(`A page's revalidate option must be seconds expressed as a natural number for ${n.url}. Mixed numbers, such as '${e.revalidate}', cannot be used.
-Try changing the value to '${Math.ceil(e.revalidate)}' or using \`Math.ceil()\` if you're computing the value.`)}else if(!0===e.revalidate)t=1;else if(!1===e.revalidate||void 0===e.revalidate)t=!1;else throw Error(`A page's revalidate option must be seconds expressed as a natural number. Mixed numbers and strings cannot be used. Received '${JSON.stringify(e.revalidate)}' for ${n.url}`)}else t=!1;if(m.pageProps=Object.assign({},m.pageProps,"props"in e?e.props:void 0),v.revalidate=t,v.pageData=m,v.isNotFound)return new eT(null,{metadata:v})}if(M&&(m.__N_SSP=!0),M&&!ep){let e;let t=!1;try{e=await (0,eo.getTracer)().trace(es.xj.getServerSideProps,{spanName:`getServerSideProps ${a}`,attributes:{"next.route":a}},async()=>M({req:n,res:s,query:i,resolvedUrl:l.resolvedUrl,...ex?{params:F}:void 0,...!1!==h?{draftMode:!0,preview:!0,previewData:h}:void 0,locales:l.locales,locale:l.locale,defaultLocale:l.defaultLocale}))}catch(e){throw"object"==typeof e&&null!==e&&"name"in e&&"message"in e&&"ENOENT"===e.code&&delete e.code,e}if(null==e)throw Error(R.Lx);e.props instanceof Promise&&(t=!0);let r=Object.keys(e).filter(e=>"props"!==e&&"redirect"!==e&&"notFound"!==e);if(e.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${a}`);if(e.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${a}`);if(r.length)throw Error(e0("getServerSideProps",r));if("notFound"in e&&e.notFound){if("/404"===a)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return v.isNotFound=!0,new eT(null,{metadata:v})}if("redirect"in e&&"object"==typeof e.redirect&&(e1(e.redirect,n,"getServerSideProps"),e.props={__N_REDIRECT:e.redirect.destination,__N_REDIRECT_STATUS:en(e.redirect)},void 0!==e.redirect.basePath&&(e.props.__N_REDIRECT_BASE_PATH=e.redirect.basePath),v.isRedirect=!0),t&&(e.props=await e.props),(S||ef)&&!$(a,"getServerSideProps",e.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");m.pageProps=Object.assign({},m.pageProps,e.props),v.pageData=m}if(D&&!em||v.isRedirect)return new eT(JSON.stringify(m),{metadata:v});if(ep&&(m.pageProps={}),Q(s)&&!em)return new eT(null,{metadata:v});let e4=E;if(eS&&ex){let e;let t=(e=(function(e){let t=/^\/index(\/|$)/.test(e)&&!G(e)?"/index"+e:"/"===e?"/index":U(e);{let{posix:e}=r("path"),n=e.normalize(t);if(n!==t)throw new Z("Requested and resolved page mismatch: "+t+" "+n)}return t})(a).replace(/\\/g,"/")).startsWith("/index/")&&!G(e)?e.slice(6):"/index"!==e?e:"/";t in e4.pages&&(e4={...e4,pages:{...e4.pages,[t]:[...e4.pages[t],...e4.lowPriorityFiles.filter(e=>e.includes("_buildManifest"))]},lowPriorityFiles:e4.lowPriorityFiles.filter(e=>!e.includes("_buildManifest"))})}let e2=({children:e})=>eE?e:(0,y.jsx)("div",{id:"__next",children:e}),e3=async()=>{let e,t;async function r(e){let t=async(t={})=>{if(eJ.err&&L)return e&&e(ea,ed),{html:await eZ((0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})})),head:eN};if(S&&(m.router||m.Component))throw Error("'router' and 'Component' can not be returned in getInitialProps from _app.js https://nextjs.org/docs/messages/cant-override-next-props");let{App:r,Component:n}="function"==typeof t?{App:ea,Component:t(ed)}:{App:t.enhanceApp?t.enhanceApp(ea):ea,Component:t.enhanceComponent?t.enhanceComponent(ed):ed},o=await e(r,n);return await o.allReady,{html:await eu(o),head:eN}},r={...eJ,renderPage:t},n=await X(el,r);if(Q(s)&&!em)return null;if(!n||"string"!=typeof n.html)throw Error(`"${V(el)}.getInitialProps()" should resolve to an object with a "html" prop set with a valid html string`);return{docProps:n,documentCtx:r}}el.__NEXT_BUILTIN_DOCUMENT__;let n=(e,t)=>{let r=e||ea,n=t||ed;return eJ.err&&L?(0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})}):(0,y.jsx)(e2,{children:(0,y.jsx)(eW,{children:eK(r,n,{...m,router:eP})})})},o=async(e,t)=>{let r=n(e,t);return await function({ReactDOMServer:e,element:t,streamOptions:r}){return(0,eo.getTracer)().trace(es.k0.renderToReadableStream,async()=>e.renderToReadableStream(t,r))}({ReactDOMServer:P(),element:r})},a=!!el.getInitialProps,[i,l]=await Promise.all([eZ(eX()),(async()=>{if(a){if(null===(e=await r(o)))return null;let{docProps:t}=e;return t.html}{e={};let t=await o(ea,ed);return await t.allReady,eu(t)}})()]);if(null===l)return null;let{docProps:d}=e||{};return a?(t=d.styles,eN=d.head):(t=eC.styles(),eC.flush()),{contentHTML:i+l,documentElement:e=>(0,y.jsx)(el,{...e,...d}),head:eN,headTags:[],styles:t}};null==(u=(0,eo.getTracer)().getRootSpanAttributes())||u.set("next.route",l.page);let e8=await (0,eo.getTracer)().trace(es.xj.renderDocument,{spanName:`render route (pages) ${l.page}`,attributes:{"next.route":l.page}},async()=>e3());if(!e8)return new eT(null,{metadata:v});let e9=new Set,e6=new Set;for(let e of eI){let t=T[e];t&&(e9.add(t.id),t.files.forEach(e=>{e6.add(e)}))}let e5=ej.hybrid,{assetPrefix:e7,buildId:te,customServer:tt,defaultLocale:tr,disableOptimizedLoading:tn,domainLocales:to,locale:ts,locales:ta,runtimeConfig:ti}=l,tl={__NEXT_DATA__:{props:m,page:a,query:i,buildId:te,assetPrefix:""===e7?void 0:e7,runtimeConfig:ti,nextExport:!0===eG||void 0,autoExport:!0===eS||void 0,isFallback:ep,isExperimentalCompile:ee,dynamicIds:0===e9.size?void 0:Array.from(e9),err:l.err?(p=l.err,S?(g="server",g=p[eV]||"server",{name:p.name,source:g,message:e$()(p.message),stack:p.stack,digest:p.digest}):{name:"Internal Server Error.",message:"500 - Internal Server Error.",statusCode:500}):void 0,gsp:!!N||void 0,gssp:!!M||void 0,customServer:tt,gip:!!ev||void 0,appGip:!eg||void 0,locale:ts,locales:ta,defaultLocale:tr,domainLocales:to,isPreview:!0===f||void 0,notFoundSrcPage:eh&&S?eh:void 0},strictNextHead:l.strictNextHead,buildManifest:e4,docComponentsRendered:{},dangerousAsPath:eP.asPath,canonicalBase:!l.ampPath&&et(n,"didStripLocale")?`${l.canonicalBase||""}/${l.locale}`:l.canonicalBase,ampPath:w,inAmpMode:eE,isDevelopment:!!S,hybridAmp:e5,dynamicImports:Array.from(e6),assetPrefix:e7,unstable_runtimeJS:C.unstable_runtimeJS,unstable_JsPreload:C.unstable_JsPreload,assetQueryString:ei,scriptLoader:eR,locale:ts,disableOptimizedLoading:tn,head:e8.head,headTags:e8.headTags,styles:e8.styles,crossOrigin:l.crossOrigin,optimizeCss:l.optimizeCss,nextConfigOutput:l.nextConfigOutput,nextScriptWorkers:l.nextScriptWorkers,runtime:K,largePageDataBytes:l.largePageDataBytes,nextFontManifest:l.nextFontManifest,experimentalClientTraceMetadata:l.experimental.clientTraceMetadata},td=(0,y.jsx)(A.Provider,{value:ej,children:(0,y.jsx)(Y.Provider,{value:tl,children:e8.documentElement(tl)})}),tu=await (0,eo.getTracer)().trace(es.xj.renderToString,async()=>eZ(td)),[tc,tp]=tu.split("<next-js-internal-body-render-target></next-js-internal-body-render-target>",2),th="";tu.startsWith(eQ)||(th+=eQ),th+=tc,eE&&(th+="<!-- __NEXT_DATA__ -->");let tm=th+e8.contentHTML+tp;return new eT(await o(a,tm,l,{inAmpMode:eE,hybridAmp:e5}),{metadata:v})}let e2=(e,t,r,n,o)=>e4(e,t,r,n,o,o),e3=S().createContext(null);function e8(e){let t=(0,b.useContext)(e3);t&&t(e)}class e9 extends v{constructor(e){super(e),this.components=e.components}render(e,t,r){return e4(e,t,r.page,r.query,r.renderOpts,{App:this.components.App,Document:this.components.Document})}}let e6={contexts:g},e5=e9})(),module.exports=n})();
+Try changing the value to '${Math.ceil(e.revalidate)}' or using \`Math.ceil()\` if you're computing the value.`)}else if(!0===e.revalidate)t=1;else if(!1===e.revalidate||void 0===e.revalidate)t=!1;else throw Error(`A page's revalidate option must be seconds expressed as a natural number. Mixed numbers and strings cannot be used. Received '${JSON.stringify(e.revalidate)}' for ${n.url}`)}else t=!1;if(m.pageProps=Object.assign({},m.pageProps,"props"in e?e.props:void 0),v.revalidate=t,v.pageData=m,v.isNotFound)return new eT(null,{metadata:v})}if(M&&(m.__N_SSP=!0),M&&!ep){let e;let t=!1;try{e=await (0,eo.getTracer)().trace(es.xj.getServerSideProps,{spanName:`getServerSideProps ${a}`,attributes:{"next.route":a}},async()=>M({req:n,res:s,query:i,resolvedUrl:l.resolvedUrl,...ex?{params:F}:void 0,...!1!==h?{draftMode:!0,preview:!0,previewData:h}:void 0,locales:l.locales,locale:l.locale,defaultLocale:l.defaultLocale})),v.revalidate=0}catch(e){throw"object"==typeof e&&null!==e&&"name"in e&&"message"in e&&"ENOENT"===e.code&&delete e.code,e}if(null==e)throw Error(R.Lx);e.props instanceof Promise&&(t=!0);let r=Object.keys(e).filter(e=>"props"!==e&&"redirect"!==e&&"notFound"!==e);if(e.unstable_notFound)throw Error(`unstable_notFound has been renamed to notFound, please update the field to continue. Page: ${a}`);if(e.unstable_redirect)throw Error(`unstable_redirect has been renamed to redirect, please update the field to continue. Page: ${a}`);if(r.length)throw Error(e0("getServerSideProps",r));if("notFound"in e&&e.notFound){if("/404"===a)throw Error('The /404 page can not return notFound in "getStaticProps", please remove it to continue!');return v.isNotFound=!0,new eT(null,{metadata:v})}if("redirect"in e&&"object"==typeof e.redirect&&(e1(e.redirect,n,"getServerSideProps"),e.props={__N_REDIRECT:e.redirect.destination,__N_REDIRECT_STATUS:en(e.redirect)},void 0!==e.redirect.basePath&&(e.props.__N_REDIRECT_BASE_PATH=e.redirect.basePath),v.isRedirect=!0),t&&(e.props=await e.props),(S||ef)&&!$(a,"getServerSideProps",e.props))throw Error("invariant: getServerSideProps did not return valid props. Please report this.");m.pageProps=Object.assign({},m.pageProps,e.props),v.pageData=m}if(D&&!em||v.isRedirect)return new eT(JSON.stringify(m),{metadata:v});if(ep&&(m.pageProps={}),Q(s)&&!em)return new eT(null,{metadata:v});let e4=E;if(eS&&ex){let e;let t=(e=(function(e){let t=/^\/index(\/|$)/.test(e)&&!G(e)?"/index"+e:"/"===e?"/index":U(e);{let{posix:e}=r("path"),n=e.normalize(t);if(n!==t)throw new Z("Requested and resolved page mismatch: "+t+" "+n)}return t})(a).replace(/\\/g,"/")).startsWith("/index/")&&!G(e)?e.slice(6):"/index"!==e?e:"/";t in e4.pages&&(e4={...e4,pages:{...e4.pages,[t]:[...e4.pages[t],...e4.lowPriorityFiles.filter(e=>e.includes("_buildManifest"))]},lowPriorityFiles:e4.lowPriorityFiles.filter(e=>!e.includes("_buildManifest"))})}let e2=({children:e})=>eE?e:(0,y.jsx)("div",{id:"__next",children:e}),e3=async()=>{let e,t;async function r(e){let t=async(t={})=>{if(eJ.err&&L)return e&&e(ea,ed),{html:await eZ((0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})})),head:eN};if(S&&(m.router||m.Component))throw Error("'router' and 'Component' can not be returned in getInitialProps from _app.js https://nextjs.org/docs/messages/cant-override-next-props");let{App:r,Component:n}="function"==typeof t?{App:ea,Component:t(ed)}:{App:t.enhanceApp?t.enhanceApp(ea):ea,Component:t.enhanceComponent?t.enhanceComponent(ed):ed},o=await e(r,n);return await o.allReady,{html:await eu(o),head:eN}},r={...eJ,renderPage:t},n=await X(el,r);if(Q(s)&&!em)return null;if(!n||"string"!=typeof n.html)throw Error(`"${V(el)}.getInitialProps()" should resolve to an object with a "html" prop set with a valid html string`);return{docProps:n,documentCtx:r}}el.__NEXT_BUILTIN_DOCUMENT__;let n=(e,t)=>{let r=e||ea,n=t||ed;return eJ.err&&L?(0,y.jsx)(e2,{children:(0,y.jsx)(L,{error:eJ.err})}):(0,y.jsx)(e2,{children:(0,y.jsx)(eW,{children:eK(r,n,{...m,router:eP})})})},o=async(e,t)=>{let r=n(e,t);return await function({ReactDOMServer:e,element:t,streamOptions:r}){return(0,eo.getTracer)().trace(es.k0.renderToReadableStream,async()=>e.renderToReadableStream(t,r))}({ReactDOMServer:P(),element:r})},a=!!el.getInitialProps,[i,l]=await Promise.all([eZ(eX()),(async()=>{if(a){if(null===(e=await r(o)))return null;let{docProps:t}=e;return t.html}{e={};let t=await o(ea,ed);return await t.allReady,eu(t)}})()]);if(null===l)return null;let{docProps:d}=e||{};return a?(t=d.styles,eN=d.head):(t=eC.styles(),eC.flush()),{contentHTML:i+l,documentElement:e=>(0,y.jsx)(el,{...e,...d}),head:eN,headTags:[],styles:t}};null==(u=(0,eo.getTracer)().getRootSpanAttributes())||u.set("next.route",l.page);let e8=await (0,eo.getTracer)().trace(es.xj.renderDocument,{spanName:`render route (pages) ${l.page}`,attributes:{"next.route":l.page}},async()=>e3());if(!e8)return new eT(null,{metadata:v});let e9=new Set,e6=new Set;for(let e of eI){let t=T[e];t&&(e9.add(t.id),t.files.forEach(e=>{e6.add(e)}))}let e5=ej.hybrid,{assetPrefix:e7,buildId:te,customServer:tt,defaultLocale:tr,disableOptimizedLoading:tn,domainLocales:to,locale:ts,locales:ta,runtimeConfig:ti}=l,tl={__NEXT_DATA__:{props:m,page:a,query:i,buildId:te,assetPrefix:""===e7?void 0:e7,runtimeConfig:ti,nextExport:!0===eG||void 0,autoExport:!0===eS||void 0,isFallback:ep,isExperimentalCompile:ee,dynamicIds:0===e9.size?void 0:Array.from(e9),err:l.err?(p=l.err,S?(g="server",g=p[eV]||"server",{name:p.name,source:g,message:e$()(p.message),stack:p.stack,digest:p.digest}):{name:"Internal Server Error.",message:"500 - Internal Server Error.",statusCode:500}):void 0,gsp:!!N||void 0,gssp:!!M||void 0,customServer:tt,gip:!!ev||void 0,appGip:!eg||void 0,locale:ts,locales:ta,defaultLocale:tr,domainLocales:to,isPreview:!0===f||void 0,notFoundSrcPage:eh&&S?eh:void 0},strictNextHead:l.strictNextHead,buildManifest:e4,docComponentsRendered:{},dangerousAsPath:eP.asPath,canonicalBase:!l.ampPath&&et(n,"didStripLocale")?`${l.canonicalBase||""}/${l.locale}`:l.canonicalBase,ampPath:w,inAmpMode:eE,isDevelopment:!!S,hybridAmp:e5,dynamicImports:Array.from(e6),assetPrefix:e7,unstable_runtimeJS:C.unstable_runtimeJS,unstable_JsPreload:C.unstable_JsPreload,assetQueryString:ei,scriptLoader:eR,locale:ts,disableOptimizedLoading:tn,head:e8.head,headTags:e8.headTags,styles:e8.styles,crossOrigin:l.crossOrigin,optimizeCss:l.optimizeCss,nextConfigOutput:l.nextConfigOutput,nextScriptWorkers:l.nextScriptWorkers,runtime:K,largePageDataBytes:l.largePageDataBytes,nextFontManifest:l.nextFontManifest,experimentalClientTraceMetadata:l.experimental.clientTraceMetadata},td=(0,y.jsx)(A.Provider,{value:ej,children:(0,y.jsx)(Y.Provider,{value:tl,children:e8.documentElement(tl)})}),tu=await (0,eo.getTracer)().trace(es.xj.renderToString,async()=>eZ(td)),[tc,tp]=tu.split("<next-js-internal-body-render-target></next-js-internal-body-render-target>",2),th="";tu.startsWith(eQ)||(th+=eQ),th+=tc,eE&&(th+="<!-- __NEXT_DATA__ -->");let tm=th+e8.contentHTML+tp;return new eT(await o(a,tm,l,{inAmpMode:eE,hybridAmp:e5}),{metadata:v})}let e2=(e,t,r,n,o)=>e4(e,t,r,n,o,o),e3=S().createContext(null);function e8(e){let t=(0,b.useContext)(e3);t&&t(e)}class e9 extends v{constructor(e){super(e),this.components=e.components}render(e,t,r){return e4(e,t,r.page,r.query,r.renderOpts,{App:this.components.App,Document:this.components.Document})}}let e6={contexts:g},e5=e9})(),module.exports=n})();
//# sourceMappingURL=pages.runtime.prod.js.map
\ No newline at end of file
Diff for server.runtime.prod.js
Diff too large to display
ztanner
approved these changes
Sep 11, 2024
ijjk
added a commit
that referenced
this pull request
Sep 11, 2024
This removes our invalid revalidate default fallback when a revalidate value isn't returned from render as render should always return a valid value. We also already have an invariant when an invalid revalidate value is returned we just need to ensure that case could be hit properly. This also fixes some invalid test cases which were sending invalid headers. x-ref: [slack thread](https://vercel.slack.com/archives/C0676QZBWKS/p1726061828198529?thread_ts=1720714625.621179&cid=C0676QZBWKS)
ijjk
added a commit
that referenced
this pull request
Sep 11, 2024
This removes our invalid revalidate default fallback when a revalidate value isn't returned from render as render should always return a valid value. We also already have an invariant when an invalid revalidate value is returned we just need to ensure that case could be hit properly. This also fixes some invalid test cases which were sending invalid headers. x-ref: [slack thread](https://vercel.slack.com/archives/C0676QZBWKS/p1726061828198529?thread_ts=1720714625.621179&cid=C0676QZBWKS)
kodiakhq bot
referenced
this pull request
in X-oss-byte/Canary-nextjs
Sep 12, 2024
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@next/env](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/next-env)) | [`14.2.9` -> `14.2.10`](https://renovatebot.com/diffs/npm/@next%2fenv/14.2.9/14.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2fenv/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2fenv/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2fenv/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2fenv/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@next/eslint-plugin-next](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next)) | [`14.2.9` -> `14.2.10`](https://renovatebot.com/diffs/npm/@next%2feslint-plugin-next/14.2.9/14.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2feslint-plugin-next/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2feslint-plugin-next/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2feslint-plugin-next/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2feslint-plugin-next/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@next/polyfill-module](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/next-polyfill-module)) | [`14.2.9` -> `14.2.10`](https://renovatebot.com/diffs/npm/@next%2fpolyfill-module/14.2.9/14.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2fpolyfill-module/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2fpolyfill-module/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2fpolyfill-module/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2fpolyfill-module/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@next/polyfill-nomodule](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/next-polyfill-nomodule)) | [`14.2.9` -> `14.2.10`](https://renovatebot.com/diffs/npm/@next%2fpolyfill-nomodule/14.2.9/14.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2fpolyfill-nomodule/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2fpolyfill-nomodule/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2fpolyfill-nomodule/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2fpolyfill-nomodule/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@next/react-refresh-utils](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/react-refresh-utils)) | [`14.2.9` -> `14.2.10`](https://renovatebot.com/diffs/npm/@next%2freact-refresh-utils/14.2.9/14.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@next%2freact-refresh-utils/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@next%2freact-refresh-utils/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@next%2freact-refresh-utils/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@next%2freact-refresh-utils/14.2.9/14.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>vercel/next.js (@​next/env)</summary> ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) </details> <details> <summary>vercel/next.js (@​next/eslint-plugin-next)</summary> ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) </details> <details> <summary>vercel/next.js (@​next/polyfill-module)</summary> ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Remove invalid fallback revalidate value ([https://github.com/vercel/next.js/pull/69990](https://redirect.github.com/vercel/next.js/pull/69990)) - Revert server action optimization ([https://github.com/vercel/next.js/pull/69925](https://redirect.github.com/vercel/next.js/pull/69925)) - Add ability to customize Cache-Control ([#​69802](https://redirect.github.com/vercel/next.js/issues/69802)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi) and [@​ijjk](https://redirect.github.com/ijjk) for helping! </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/X-oss-byte/Canary-nextjs).
kodiakhq bot
referenced
this pull request
in cloudquery/cloudquery
Sep 18, 2024
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [next](https://nextjs.org) ([source](https://github.com/vercel/next.js)) | dependencies | patch | [`14.2.3` -> `14.2.10`](https://renovatebot.com/diffs/npm/next/14.2.3/14.2.10) | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. ### GitHub Vulnerability Alerts #### [CVE-2024-46982](https://github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9) ### Impact By sending a crafted HTTP request, it is possible to poison the cache of a non-dynamic server-side rendered route in the pages router (this does not affect the app router). When this crafted request is sent it could coerce Next.js to cache a route that is meant to not be cached and send a `Cache-Control: s-maxage=1, stale-while-revalidate` header which some upstream CDNs may cache as well. To be potentially affected all of the following must apply: - Next.js between 13.5.1 and 14.2.9 - Using pages router - Using non-dynamic server-side rendered routes e.g. `pages/dashboard.tsx` not `pages/blog/[slug].tsx` The below configurations are unaffected: - Deployments using only app router - Deployments on [Vercel](https://vercel.com/) are not affected ### Patches This vulnerability was resolved in Next.js v13.5.7, v14.2.10, and later. We recommend upgrading regardless of whether you can reproduce the issue or not. ### Workarounds There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version. #### Credits - Allam Rachid (zhero_) - Henry Chen --- ### Release Notes <details> <summary>vercel/next.js (next)</summary> ### [`v14.2.10`](https://github.com/vercel/next.js/releases/tag/v14.2.10) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.9...v14.2.10) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Remove invalid fallback revalidate value ([https://github.com/vercel/next.js/pull/69990](https://github.com/vercel/next.js/pull/69990)) - Revert server action optimization ([https://github.com/vercel/next.js/pull/69925](https://github.com/vercel/next.js/pull/69925)) - Add ability to customize Cache-Control ([#​69802](https://github.com/vercel/next.js/issues/69802)) ##### Credits Huge thanks to [@​huozhi](https://github.com/huozhi) and [@​ijjk](https://github.com/ijjk) for helping! ### [`v14.2.9`](https://github.com/vercel/next.js/releases/tag/v14.2.9) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.8...v14.2.9) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "Fix esm property def in flight loader ([#​66990](https://github.com/vercel/next.js/issues/66990))" ([#​69749](https://github.com/vercel/next.js/issues/69749)) - Disable experimental.optimizeServer by default to fix failed server action ([#​69788](https://github.com/vercel/next.js/issues/69788)) - Fix middleware fallback: false case ([#​69799](https://github.com/vercel/next.js/issues/69799)) - Fix status code for /\_not-found route ([#​64058](https://github.com/vercel/next.js/issues/64058)) ([#​69808](https://github.com/vercel/next.js/issues/69808)) - Fix metadata prop merging ([#​69807](https://github.com/vercel/next.js/issues/69807)) - create-next-app: fix font file corruption when using import alias ([#​69806](https://github.com/vercel/next.js/issues/69806)) ##### Credits Huge thanks to [@​huozhi](https://github.com/huozhi), [@​ztanner](https://github.com/ztanner), [@​ijjk](https://github.com/ijjk), and [@​lubieowoce](https://github.com/lubieowoce) for helping! ### [`v14.2.8`](https://github.com/vercel/next.js/releases/tag/v14.2.8) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.7...v14.2.8) #### What's Changed > \[!NOTE]\ > This release is backporting bug fixes and minor improvements. It does **not** include all pending features/changes on canary. ##### Support `esmExternals` in app directory - Support esm externals in app router ([#​65041](https://github.com/vercel/next.js/issues/65041)) - Turbopack: Allow client components from foreign code in app routes ([#​64751](https://github.com/vercel/next.js/issues/64751)) - Turbopack: add support for esm externals in app dir ([#​64918](https://github.com/vercel/next.js/issues/64918)) - other related PRs: [#​66990](https://github.com/vercel/next.js/issues/66990) [#​66727](https://github.com/vercel/next.js/issues/66727) [#​66286](https://github.com/vercel/next.js/issues/66286) [#​65519](https://github.com/vercel/next.js/issues/65519) ##### Reading cookies set in middleware in components and actions - initialize ALS with cookies in middleware ([#​65008](https://github.com/vercel/next.js/issues/65008)) - fix middleware cookie initialization ([#​65820](https://github.com/vercel/next.js/issues/65820)) - ensure cookies set in middleware can be read in a server action ([#​67924](https://github.com/vercel/next.js/issues/67924)) - fix: merged middleware cookies should preserve options ([#​67956](https://github.com/vercel/next.js/issues/67956)) ##### Metadata and icons - support facebook-specific metadata (`fb:app_id`, `fb:admins`) in generateMetaData ([#​65713](https://github.com/vercel/next.js/issues/65713)) - Always collect static icons for all segments ([#​68712](https://github.com/vercel/next.js/issues/68712)) - Fix favicon merging with customized icons ([#​67982](https://github.com/vercel/next.js/issues/67982)) - Warn metadataBase missing in standalone mode or non vercel deployment ([#​66296](https://github.com/vercel/next.js/issues/66296)) ##### Parallel routes fixes - fix missing stylesheets when parallel routes are present ([#​69507](https://github.com/vercel/next.js/issues/69507)) ##### Draft mode and edge improvements - fix: unstable_cache should not cache new result in draft mode ([#​67772](https://github.com/vercel/next.js/issues/67772)) - Add draft mode flag for multi-zone ([#​68997](https://github.com/vercel/next.js/issues/68997)) - Fix edge preview props are not matched with cookie ([#​67779](https://github.com/vercel/next.js/issues/67779)) - other related PRs: [#​65426](https://github.com/vercel/next.js/issues/65426), [#​67787](https://github.com/vercel/next.js/issues/67787), [#​64946](https://github.com/vercel/next.js/issues/64946), [#​64313](https://github.com/vercel/next.js/issues/64313), [#​64370](https://github.com/vercel/next.js/issues/64370) ##### `next/image` fixes - Allow external image urls with \_next/image pathname to be rendered via Image component ([#​69586](https://github.com/vercel/next.js/issues/69586)) ##### Server actions improvements - optimize server actions ([#​66523](https://github.com/vercel/next.js/issues/66523)) - Apply optimization for unused actions ([#​69178](https://github.com/vercel/next.js/issues/69178)) - Improve SWC transform ID generation ([#​69183](https://github.com/vercel/next.js/issues/69183)) ##### Other changes - Ensure we match comment minify behavior between terser and swc ([#​68372](https://github.com/vercel/next.js/issues/68372)) - send initialCanonicalUrl in array format to prevent crawler confusion ([#​69509](https://github.com/vercel/next.js/issues/69509)) ##### Create-next-app updates - enable [@​typescript-eslint/recommended](https://github.com/typescript-eslint/recommended) in create-next-app --typescript ([#​52845](https://github.com/vercel/next.js/issues/52845)) - Update create-next-app template CSS ([#​66233](https://github.com/vercel/next.js/issues/66233)) - Update `create-next-app` template CSS ([#​66043](https://github.com/vercel/next.js/issues/66043)) - Update create-next-app template ([#​65803](https://github.com/vercel/next.js/issues/65803)) - add font antialiasing to templates ([#​67425](https://github.com/vercel/next.js/issues/67425)) - Move `create-next-app` public/ assets from local folder→ remote URL ([#​66931](https://github.com/vercel/next.js/issues/66931)) - Use classnames to set font family in Tailwind create-next-app templates ([#​66374](https://github.com/vercel/next.js/issues/66374)) - other related PRs: [#​64478](https://github.com/vercel/next.js/issues/64478), [#​68899](https://github.com/vercel/next.js/issues/68899), [#​68534](https://github.com/vercel/next.js/issues/68534), [#​69021](https://github.com/vercel/next.js/issues/69021), [#​67146](https://github.com/vercel/next.js/issues/67146), [#​66145](https://github.com/vercel/next.js/issues/66145) **Full Changelog**: vercel/next.js@v14.2.7...v14.2.8 *** Huge thanks to everyone who contributed to this release: [@​abhi12299](https://github.com/abhi12299), [@​delbaoliveira](https://github.com/delbaoliveira), [@​eps1lon](https://github.com/eps1lon), [@​ForsakenHarmony](https://github.com/ForsakenHarmony), [@​huozhi](https://github.com/huozhi), [@​ijjk](https://github.com/ijjk), [@​JoshuaKGoldberg](https://github.com/JoshuaKGoldberg), [@​leerob](https://github.com/leerob), [@​lubieowoce](https://github.com/lubieowoce), [@​Netail](https://github.com/Netail), [@​ronanru](https://github.com/ronanru), [@​samcx](https://github.com/samcx), [@​shuding](https://github.com/shuding), [@​sokra](https://github.com/sokra), [@​stylessh](https://github.com/stylessh), [@​timfuhrmann](https://github.com/timfuhrmann), [@​wbinnssmith](https://github.com/wbinnssmith), [@​wyattjoh](https://github.com/wyattjoh), [@​ypessoa](https://github.com/ypessoa), [@​ztanner](https://github.com/ztanner) ### [`v14.2.7`](https://github.com/vercel/next.js/releases/tag/v14.2.7) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.6...v14.2.7) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "chore: externalize undici for bundling" ([#​65727](https://github.com/vercel/next.js/issues/65727)) - Refactor internal routing headers to use request meta ([#​66987](https://github.com/vercel/next.js/issues/66987)) - fix(next): add cross origin in react dom preload ([#​67423](https://github.com/vercel/next.js/issues/67423)) - build: upgrade edge-runtime ([#​67565](https://github.com/vercel/next.js/issues/67565)) - GTM dataLayer parameter should take an object, not an array of strings ([#​66339](https://github.com/vercel/next.js/issues/66339)) - fix: properly patch lockfile against swc bindings ([#​66515](https://github.com/vercel/next.js/issues/66515)) - Add deployment id header for rsc payload if present ([#​67255](https://github.com/vercel/next.js/issues/67255)) - Update font data ([#​68639](https://github.com/vercel/next.js/issues/68639)) - fix i18n data pathname resolving ([#​68947](https://github.com/vercel/next.js/issues/68947)) - pages router: ensure x-middleware-cache is respected ([#​67734](https://github.com/vercel/next.js/issues/67734)) - Fix bad modRequest in flight entry manifest [#​68888](https://github.com/vercel/next.js/issues/68888) - Reject next image urls in image optimizer [#​68628](https://github.com/vercel/next.js/issues/68628) - Fix hmr assetPrefix escaping and reuse logic from other files [#​67983](https://github.com/vercel/next.js/issues/67983) ##### Credits Huge thanks to [@​kjugi](https://github.com/kjugi), [@​huozhi](https://github.com/huozhi), [@​ztanner](https://github.com/ztanner), [@​SukkaW](https://github.com/SukkaW), [@​marlier](https://github.com/marlier), [@​Kikobeats](https://github.com/Kikobeats), [@​syi0808](https://github.com/syi0808), [@​ijjk](https://github.com/ijjk), and [@​samcx](https://github.com/samcx) for helping! ### [`v14.2.6`](https://github.com/vercel/next.js/releases/tag/v14.2.6) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.5...v14.2.6) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Ensure fetch cache TTL is updated properly ([#​69164](https://github.com/vercel/next.js/issues/69164)) ### [`v14.2.5`](https://github.com/vercel/next.js/releases/tag/v14.2.5) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.4...v14.2.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - avoid merging global css in a way that leaks into other chunk groups ([#​67373](https://github.com/vercel/next.js/issues/67373)) - Fix server action edge redirect with middleware rewrite ([#​67148](https://github.com/vercel/next.js/issues/67148)) - fix(next): reject protocol-relative URLs in image optimization ([#​65752](https://github.com/vercel/next.js/issues/65752)) - fix(next-swc): correct path interop to filepath for wasm ([#​65633](https://github.com/vercel/next.js/issues/65633)) - Use addDependency to track metadata route file changes ([#​66714](https://github.com/vercel/next.js/issues/66714)) - Fix noindex is missing on static not-found page ([#​67135](https://github.com/vercel/next.js/issues/67135)) - perf: improve retrieving versionInfo on Turbo HMR ([#​67309](https://github.com/vercel/next.js/issues/67309)) - fix(next/image): handle invalid url ([#​67465](https://github.com/vercel/next.js/issues/67465)) - fix(next): initial prefetch cache not set properly with different search params ([#​65977](https://github.com/vercel/next.js/issues/65977)) - fix: Backport class properties fix ([#​67377](https://github.com/vercel/next.js/issues/67377)) - Upgrade acorn ([#​67592](https://github.com/vercel/next.js/issues/67592)) ##### Misc - Log stdio for pull-turbo-cache script ([#​66759](https://github.com/vercel/next.js/issues/66759)) - Ensure turbo is setup when building in docker ([#​66804](https://github.com/vercel/next.js/issues/66804)) ##### Credits Huge thanks to [@​devjiwonchoi](https://github.com/devjiwonchoi), [@​ijjk](https://github.com/ijjk), [@​emmerich](https://github.com/emmerich), [@​huozhi](https://github.com/huozhi), [@​kdy1](https://github.com/kdy1), [@​kwonoj](https://github.com/kwonoj), [@​styfle](https://github.com/styfle), and [@​sokra](https://github.com/sokra) for helping! ### [`v14.2.4`](https://github.com/vercel/next.js/releases/tag/v14.2.4) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.3...v14.2.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: ensure route handlers properly track dynamic access ([#​66446](https://github.com/vercel/next.js/issues/66446)) - fix NextRequest proxy in edge runtime ([#​66551](https://github.com/vercel/next.js/issues/66551)) - Fix next/dynamic with babel and src dir ([#​65177](https://github.com/vercel/next.js/issues/65177)) - Use vercel deployment url for metadataBase fallbacks ([#​65089](https://github.com/vercel/next.js/issues/65089)) - fix(next/image): detect react@19 for fetchPriority prop ([#​65235](https://github.com/vercel/next.js/issues/65235)) - Fix loading navigation with metadata and prefetch ([#​66447](https://github.com/vercel/next.js/issues/66447)) - prevent duplicate RSC fetch when action redirects ([#​66620](https://github.com/vercel/next.js/issues/66620)) - ensure router cache updates reference the latest cache values ([#​66681](https://github.com/vercel/next.js/issues/66681)) - Prevent append of trailing slash in cases where path ends with a file extension ([#​66636](https://github.com/vercel/next.js/issues/66636)) - Fix inconsistency with 404 getStaticProps cache-control ([#​66674](https://github.com/vercel/next.js/issues/66674)) - Use addDependency to track metadata route file changes ([#​66714](https://github.com/vercel/next.js/issues/66714)) - Add timeout/retry handling for fetch cache ([#​66652](https://github.com/vercel/next.js/issues/66652)) - fix: app-router prefetch crash when an invalid URL is passed to Link ([#​66755](https://github.com/vercel/next.js/issues/66755)) ##### Credits Huge thanks to [@​ztanner](https://github.com/ztanner), [@​ijjk](https://github.com/ijjk), [@​wbinnssmith](https://github.com/wbinnssmith), [@​huozhi](https://github.com/huozhi), and [@​lubieowoce](https://github.com/lubieowoce) for helping! </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
simonknittel
referenced
this pull request
in simonknittel/sinister-incorporated
Sep 18, 2024
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [next](https://nextjs.org) ([source](https://redirect.github.com/vercel/next.js)) | dependencies | patch | [`14.2.7` -> `14.2.10`](https://renovatebot.com/diffs/npm/next/14.2.7/14.2.10) | --- ### Next.js Cache Poisoning [CVE-2024-46982](https://nvd.nist.gov/vuln/detail/CVE-2024-46982) / [GHSA-gp8f-8m3g-qvj9](https://redirect.github.com/advisories/GHSA-gp8f-8m3g-qvj9) <details> <summary>More information</summary> #### Details ##### Impact By sending a crafted HTTP request, it is possible to poison the cache of a non-dynamic server-side rendered route in the pages router (this does not affect the app router). When this crafted request is sent it could coerce Next.js to cache a route that is meant to not be cached and send a `Cache-Control: s-maxage=1, stale-while-revalidate` header which some upstream CDNs may cache as well. To be potentially affected all of the following must apply: - Next.js between 13.5.1 and 14.2.9 - Using pages router - Using non-dynamic server-side rendered routes e.g. `pages/dashboard.tsx` not `pages/blog/[slug].tsx` The below configurations are unaffected: - Deployments using only app router - Deployments on [Vercel](https://vercel.com/) are not affected ##### Patches This vulnerability was resolved in Next.js v13.5.7, v14.2.10, and later. We recommend upgrading regardless of whether you can reproduce the issue or not. ##### Workarounds There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version. ##### Credits - Allam Rachid (zhero_) - Henry Chen #### Severity - CVSS Score: 7.5 / 10 (High) - Vector String: `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H` #### References - [https://github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9](https://redirect.github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9) - [https://github.com/vercel/next.js/commit/7ed7f125e07ef0517a331009ed7e32691ba403d3](https://redirect.github.com/vercel/next.js/commit/7ed7f125e07ef0517a331009ed7e32691ba403d3) - [https://github.com/vercel/next.js/commit/bd164d53af259c05f1ab434004bcfdd3837d7cda](https://redirect.github.com/vercel/next.js/commit/bd164d53af259c05f1ab434004bcfdd3837d7cda) - [https://github.com/vercel/next.js](https://redirect.github.com/vercel/next.js) This data is provided by [OSV](https://osv.dev/vulnerability/GHSA-gp8f-8m3g-qvj9) and the [GitHub Advisory Database](https://redirect.github.com/github/advisory-database) ([CC-BY 4.0](https://redirect.github.com/github/advisory-database/blob/main/LICENSE.md)). </details> --- ### Release Notes <details> <summary>vercel/next.js (next)</summary> ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Remove invalid fallback revalidate value ([https://github.com/vercel/next.js/pull/69990](https://redirect.github.com/vercel/next.js/pull/69990)) - Revert server action optimization ([https://github.com/vercel/next.js/pull/69925](https://redirect.github.com/vercel/next.js/pull/69925)) - Add ability to customize Cache-Control ([#​69802](https://redirect.github.com/vercel/next.js/issues/69802)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi) and [@​ijjk](https://redirect.github.com/ijjk) for helping! ### [`v14.2.9`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.9) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "Fix esm property def in flight loader ([#​66990](https://redirect.github.com/vercel/next.js/issues/66990))" ([#​69749](https://redirect.github.com/vercel/next.js/issues/69749)) - Disable experimental.optimizeServer by default to fix failed server action ([#​69788](https://redirect.github.com/vercel/next.js/issues/69788)) - Fix middleware fallback: false case ([#​69799](https://redirect.github.com/vercel/next.js/issues/69799)) - Fix status code for /\_not-found route ([#​64058](https://redirect.github.com/vercel/next.js/issues/64058)) ([#​69808](https://redirect.github.com/vercel/next.js/issues/69808)) - Fix metadata prop merging ([#​69807](https://redirect.github.com/vercel/next.js/issues/69807)) - create-next-app: fix font file corruption when using import alias ([#​69806](https://redirect.github.com/vercel/next.js/issues/69806)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi), [@​ztanner](https://redirect.github.com/ztanner), [@​ijjk](https://redirect.github.com/ijjk), and [@​lubieowoce](https://redirect.github.com/lubieowoce) for helping! ### [`v14.2.8`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.8) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.7...v14.2.8) #### What's Changed > \[!NOTE]\ > This release is backporting bug fixes and minor improvements. It does **not** include all pending features/changes on canary. ##### Support `esmExternals` in app directory - Support esm externals in app router ([#​65041](https://redirect.github.com/vercel/next.js/issues/65041)) - Turbopack: Allow client components from foreign code in app routes ([#​64751](https://redirect.github.com/vercel/next.js/issues/64751)) - Turbopack: add support for esm externals in app dir ([#​64918](https://redirect.github.com/vercel/next.js/issues/64918)) - other related PRs: [#​66990](https://redirect.github.com/vercel/next.js/issues/66990) [#​66727](https://redirect.github.com/vercel/next.js/issues/66727) [#​66286](https://redirect.github.com/vercel/next.js/issues/66286) [#​65519](https://redirect.github.com/vercel/next.js/issues/65519) ##### Reading cookies set in middleware in components and actions - initialize ALS with cookies in middleware ([#​65008](https://redirect.github.com/vercel/next.js/issues/65008)) - fix middleware cookie initialization ([#​65820](https://redirect.github.com/vercel/next.js/issues/65820)) - ensure cookies set in middleware can be read in a server action ([#​67924](https://redirect.github.com/vercel/next.js/issues/67924)) - fix: merged middleware cookies should preserve options ([#​67956](https://redirect.github.com/vercel/next.js/issues/67956)) ##### Metadata and icons - support facebook-specific metadata (`fb:app_id`, `fb:admins`) in generateMetaData ([#​65713](https://redirect.github.com/vercel/next.js/issues/65713)) - Always collect static icons for all segments ([#​68712](https://redirect.github.com/vercel/next.js/issues/68712)) - Fix favicon merging with customized icons ([#​67982](https://redirect.github.com/vercel/next.js/issues/67982)) - Warn metadataBase missing in standalone mode or non vercel deployment ([#​66296](https://redirect.github.com/vercel/next.js/issues/66296)) ##### Parallel routes fixes - fix missing stylesheets when parallel routes are present ([#​69507](https://redirect.github.com/vercel/next.js/issues/69507)) ##### Draft mode and edge improvements - fix: unstable_cache should not cache new result in draft mode ([#​67772](https://redirect.github.com/vercel/next.js/issues/67772)) - Add draft mode flag for multi-zone ([#​68997](https://redirect.github.com/vercel/next.js/issues/68997)) - Fix edge preview props are not matched with cookie ([#​67779](https://redirect.github.com/vercel/next.js/issues/67779)) - other related PRs: [#​65426](https://redirect.github.com/vercel/next.js/issues/65426), [#​67787](https://redirect.github.com/vercel/next.js/issues/67787), [#​64946](https://redirect.github.com/vercel/next.js/issues/64946), [#​64313](https://redirect.github.com/vercel/next.js/issues/64313), [#​64370](https://redirect.github.com/vercel/next.js/issues/64370) ##### `next/image` fixes - Allow external image urls with \_next/image pathname to be rendered via Image component ([#​69586](https://redirect.github.com/vercel/next.js/issues/69586)) ##### Server actions improvements - optimize server actions ([#​66523](https://redirect.github.com/vercel/next.js/issues/66523)) - Apply optimization for unused actions ([#​69178](https://redirect.github.com/vercel/next.js/issues/69178)) - Improve SWC transform ID generation ([#​69183](https://redirect.github.com/vercel/next.js/issues/69183)) ##### Other changes - Ensure we match comment minify behavior between terser and swc ([#​68372](https://redirect.github.com/vercel/next.js/issues/68372)) - send initialCanonicalUrl in array format to prevent crawler confusion ([#​69509](https://redirect.github.com/vercel/next.js/issues/69509)) ##### Create-next-app updates - enable [@​typescript-eslint/recommended](https://redirect.github.com/typescript-eslint/recommended) in create-next-app --typescript ([#​52845](https://redirect.github.com/vercel/next.js/issues/52845)) - Update create-next-app template CSS ([#​66233](https://redirect.github.com/vercel/next.js/issues/66233)) - Update `create-next-app` template CSS ([#​66043](https://redirect.github.com/vercel/next.js/issues/66043)) - Update create-next-app template ([#​65803](https://redirect.github.com/vercel/next.js/issues/65803)) - add font antialiasing to templates ([#​67425](https://redirect.github.com/vercel/next.js/issues/67425)) - Move `create-next-app` public/ assets from local folder→ remote URL ([#​66931](https://redirect.github.com/vercel/next.js/issues/66931)) - Use classnames to set font family in Tailwind create-next-app templates ([#​66374](https://redirect.github.com/vercel/next.js/issues/66374)) - other related PRs: [#​64478](https://redirect.github.com/vercel/next.js/issues/64478), [#​68899](https://redirect.github.com/vercel/next.js/issues/68899), [#​68534](https://redirect.github.com/vercel/next.js/issues/68534), [#​69021](https://redirect.github.com/vercel/next.js/issues/69021), [#​67146](https://redirect.github.com/vercel/next.js/issues/67146), [#​66145](https://redirect.github.com/vercel/next.js/issues/66145) **Full Changelog**: vercel/next.js@v14.2.7...v14.2.8 *** Huge thanks to everyone who contributed to this release: [@​abhi12299](https://redirect.github.com/abhi12299), [@​delbaoliveira](https://redirect.github.com/delbaoliveira), [@​eps1lon](https://redirect.github.com/eps1lon), [@​ForsakenHarmony](https://redirect.github.com/ForsakenHarmony), [@​huozhi](https://redirect.github.com/huozhi), [@​ijjk](https://redirect.github.com/ijjk), [@​JoshuaKGoldberg](https://redirect.github.com/JoshuaKGoldberg), [@​leerob](https://redirect.github.com/leerob), [@​lubieowoce](https://redirect.github.com/lubieowoce), [@​Netail](https://redirect.github.com/Netail), [@​ronanru](https://redirect.github.com/ronanru), [@​samcx](https://redirect.github.com/samcx), [@​shuding](https://redirect.github.com/shuding), [@​sokra](https://redirect.github.com/sokra), [@​stylessh](https://redirect.github.com/stylessh), [@​timfuhrmann](https://redirect.github.com/timfuhrmann), [@​wbinnssmith](https://redirect.github.com/wbinnssmith), [@​wyattjoh](https://redirect.github.com/wyattjoh), [@​ypessoa](https://redirect.github.com/ypessoa), [@​ztanner](https://redirect.github.com/ztanner) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44Ny4wIiwidXBkYXRlZEluVmVyIjoiMzguODcuMSIsInRhcmdldEJyYW5jaCI6ImRldmVsb3AiLCJsYWJlbHMiOltdfQ==--> Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
kodiakhq bot
referenced
this pull request
in weareinreach/InReach
Sep 18, 2024
This PR contains the following updates: | Package | Type | Update | Change | OpenSSF | |---|---|---|---|---| | [@next/bundle-analyzer](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer)) | devDependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2fbundle-analyzer/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [@next/bundle-analyzer](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer)) | dependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2fbundle-analyzer/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [@next/eslint-plugin-next](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next)) | devDependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2feslint-plugin-next/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [@next/third-parties](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/third-parties)) | peerDependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2fthird-parties/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [@next/third-parties](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/third-parties)) | devDependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2fthird-parties/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [@next/third-parties](https://redirect.github.com/vercel/next.js) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/third-parties)) | dependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/@next%2fthird-parties/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | | [eslint-config-next](https://nextjs.org/docs/app/building-your-application/configuring/eslint#eslint-config) ([source](https://redirect.github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next)) | devDependencies | patch | [`14.2.8` -> `14.2.12`](https://renovatebot.com/diffs/npm/eslint-config-next/14.2.8/14.2.12) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vercel/next.js/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vercel/next.js) | --- ### Release Notes <details> <summary>vercel/next.js (@​next/bundle-analyzer)</summary> ### [`v14.2.12`](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) ### [`v14.2.11`](https://redirect.github.com/vercel/next.js/compare/v14.2.10...bfbc92aab5c727444ed21e0b84bd55cda2e22067) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.10...v14.2.11) ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) ### [`v14.2.9`](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) </details> <details> <summary>vercel/next.js (@​next/eslint-plugin-next)</summary> ### [`v14.2.12`](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) ### [`v14.2.11`](https://redirect.github.com/vercel/next.js/compare/v14.2.10...bfbc92aab5c727444ed21e0b84bd55cda2e22067) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.10...v14.2.11) ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) ### [`v14.2.9`](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) </details> <details> <summary>vercel/next.js (@​next/third-parties)</summary> ### [`v14.2.12`](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) ### [`v14.2.11`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.11) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.10...v14.2.11) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: correct metadata url suffix ([https://github.com/vercel/next.js/pull/69959](https://redirect.github.com/vercel/next.js/pull/69959)) - fix: setting assetPrefix to URL format breaks HMR ([#​70040](https://redirect.github.com/vercel/next.js/issues/70040)) - Update revalidateTag to batch tags in one request ([#​65296](https://redirect.github.com/vercel/next.js/issues/65296)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi), [@​devjiwonchoi](https://redirect.github.com/devjiwonchoi), and [@​ijjk](https://redirect.github.com/ijjk) for helping! ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Remove invalid fallback revalidate value ([https://github.com/vercel/next.js/pull/69990](https://redirect.github.com/vercel/next.js/pull/69990)) - Revert server action optimization ([https://github.com/vercel/next.js/pull/69925](https://redirect.github.com/vercel/next.js/pull/69925)) - Add ability to customize Cache-Control ([#​69802](https://redirect.github.com/vercel/next.js/issues/69802)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi) and [@​ijjk](https://redirect.github.com/ijjk) for helping! ### [`v14.2.9`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.9) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "Fix esm property def in flight loader ([#​66990](https://redirect.github.com/vercel/next.js/issues/66990))" ([#​69749](https://redirect.github.com/vercel/next.js/issues/69749)) - Disable experimental.optimizeServer by default to fix failed server action ([#​69788](https://redirect.github.com/vercel/next.js/issues/69788)) - Fix middleware fallback: false case ([#​69799](https://redirect.github.com/vercel/next.js/issues/69799)) - Fix status code for /\_not-found route ([#​64058](https://redirect.github.com/vercel/next.js/issues/64058)) ([#​69808](https://redirect.github.com/vercel/next.js/issues/69808)) - Fix metadata prop merging ([#​69807](https://redirect.github.com/vercel/next.js/issues/69807)) - create-next-app: fix font file corruption when using import alias ([#​69806](https://redirect.github.com/vercel/next.js/issues/69806)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi), [@​ztanner](https://redirect.github.com/ztanner), [@​ijjk](https://redirect.github.com/ijjk), and [@​lubieowoce](https://redirect.github.com/lubieowoce) for helping! </details> <details> <summary>vercel/next.js (eslint-config-next)</summary> ### [`v14.2.12`](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.11...v14.2.12) ### [`v14.2.11`](https://redirect.github.com/vercel/next.js/releases/tag/v14.2.11) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.10...v14.2.11) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: correct metadata url suffix ([https://github.com/vercel/next.js/pull/69959](https://redirect.github.com/vercel/next.js/pull/69959)) - fix: setting assetPrefix to URL format breaks HMR ([#​70040](https://redirect.github.com/vercel/next.js/issues/70040)) - Update revalidateTag to batch tags in one request ([#​65296](https://redirect.github.com/vercel/next.js/issues/65296)) ##### Credits Huge thanks to [@​huozhi](https://redirect.github.com/huozhi), [@​devjiwonchoi](https://redirect.github.com/devjiwonchoi), and [@​ijjk](https://redirect.github.com/ijjk) for helping! ### [`v14.2.10`](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.9...v14.2.10) ### [`v14.2.9`](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) [Compare Source](https://redirect.github.com/vercel/next.js/compare/v14.2.8...v14.2.9) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/weareinreach/InReach). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6ImRldiIsImxhYmVscyI6WyJhdXRvbWVyZ2UiLCJkZXBlbmRlbmNpZXMiLCJrb2RpYWs6IG1lcmdlLm1ldGhvZCA9ICdzcXVhc2gnIl19--> Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This removes our invalid revalidate default fallback when a revalidate value isn't returned from render as render should always return a valid value. We also already have an invariant when an invalid revalidate value is returned we just need to ensure that case could be hit properly. This also fixes some invalid test cases which were sending invalid headers.
x-ref: slack thread