vercel / next.js

The React Framework
https://nextjs.org
MIT License
125.44k stars 26.79k forks source link

Transpile geist by default #67402

Closed huozhi closed 3 months ago

huozhi commented 3 months ago

What

Transpile geist package by default. Currently users need to add geist into transpilePackages to make it work with pages router as it's external packages but require transform. This PR will resolve that issue. cc @JohnPhamous

Why

geist package is using next/font which requires to work with SWC transform. But so far only ESM syntax can be captured by SWC since CJS is pretty difficult to cover as the package import is not statically analyzable.

We introduced a new list that it could be transpiled and include geist package into bundle. Add it in both next/jest side and webpack/turbopack bundling side

huozhi commented 3 months ago

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @huozhi and the rest of your teammates on Graphite Graphite

ijjk commented 3 months ago

Stats from current PR

Default Build (Increase detected ⚠️)
General Overall increase ⚠️ | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | buildDuration | 17.3s | 15.5s | N/A | | buildDurationCached | 8.9s | 7.6s | N/A | | nodeModulesSize | 359 MB | 359 MB | ⚠️ +3.64 kB | | nextStartRea..uration (ms) | 415ms | 421ms | N/A |
Client Bundles (main, webpack) | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | 1780.HASH.js gzip | 167 B | 167 B | ✓ | | 5453-HASH.js gzip | 36.1 kB | 36.1 kB | N/A | | 7514-HASH.js gzip | 5.06 kB | 5.05 kB | N/A | | a7a62840-HASH.js gzip | 51.7 kB | 51.7 kB | N/A | | framework-HASH.js gzip | 56.7 kB | 56.7 kB | N/A | | main-app-HASH.js gzip | 222 B | 223 B | N/A | | main-HASH.js gzip | 32.2 kB | 32.3 kB | N/A | | webpack-HASH.js gzip | 1.71 kB | 1.71 kB | ✓ | | Overall change | 1.88 kB | 1.88 kB | ✓ |
Legacy Client Bundles (polyfills) | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_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 07-03-transform_geist_by_default | Change | | - | - | - | - | | _app-HASH.js gzip | 193 B | 193 B | ✓ | | _error-HASH.js gzip | 192 B | 192 B | ✓ | | amp-HASH.js gzip | 509 B | 510 B | N/A | | css-HASH.js gzip | 341 B | 341 B | ✓ | | dynamic-HASH.js gzip | 2.52 kB | 2.52 kB | ✓ | | edge-ssr-HASH.js gzip | 264 B | 266 B | N/A | | head-HASH.js gzip | 362 B | 363 B | N/A | | hooks-HASH.js gzip | 391 B | 390 B | N/A | | image-HASH.js gzip | 4.26 kB | 4.26 kB | ✓ | | index-HASH.js gzip | 268 B | 268 B | ✓ | | link-HASH.js gzip | 2.69 kB | 2.69 kB | N/A | | routerDirect..HASH.js gzip | 326 B | 325 B | N/A | | script-HASH.js gzip | 396 B | 397 B | N/A | | withRouter-HASH.js gzip | 320 B | 321 B | N/A | | 1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ | | Overall change | 7.89 kB | 7.89 kB | ✓ |
Client Build Manifests | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | _buildManifest.js gzip | 485 B | 483 B | N/A | | Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | index.html gzip | 522 B | 524 B | N/A | | link.html gzip | 537 B | 539 B | N/A | | withRouter.html gzip | 520 B | 520 B | ✓ | | Overall change | 520 B | 520 B | ✓ |
Edge SSR bundle Size | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | edge-ssr.js gzip | 127 kB | 127 kB | N/A | | page.js gzip | 167 kB | 167 kB | N/A | | Overall change | 0 B | 0 B | ✓ |
Middleware size | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | middleware-b..fest.js gzip | 660 B | 657 B | N/A | | middleware-r..fest.js gzip | 156 B | 155 B | N/A | | middleware.js gzip | 29.5 kB | 29.5 kB | N/A | | edge-runtime..pack.js gzip | 1.03 kB | 1.03 kB | ✓ | | Overall change | 1.03 kB | 1.03 kB | ✓ |
Next Runtimes | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | app-page-exp...dev.js gzip | 183 kB | 183 kB | ✓ | | app-page-exp..prod.js gzip | 112 kB | 112 kB | ✓ | | app-page-tur..prod.js gzip | 123 kB | 123 kB | ✓ | | app-page-tur..prod.js gzip | 119 kB | 119 kB | ✓ | | app-page.run...dev.js gzip | 178 kB | 178 kB | ✓ | | app-page.run..prod.js gzip | 108 kB | 108 kB | ✓ | | app-route-ex...dev.js gzip | 23.4 kB | 23.4 kB | ✓ | | app-route-ex..prod.js gzip | 18.8 kB | 18.8 kB | ✓ | | app-route-tu..prod.js gzip | 18.8 kB | 18.8 kB | ✓ | | app-route-tu..prod.js gzip | 18.6 kB | 18.6 kB | ✓ | | app-route.ru...dev.js gzip | 24.6 kB | 24.6 kB | ✓ | | app-route.ru..prod.js gzip | 18.6 kB | 18.6 kB | ✓ | | pages-api-tu..prod.js gzip | 9.55 kB | 9.55 kB | ✓ | | pages-api.ru...dev.js gzip | 9.82 kB | 9.82 kB | ✓ | | pages-api.ru..prod.js gzip | 9.55 kB | 9.55 kB | ✓ | | pages-turbo...prod.js gzip | 21.6 kB | 21.6 kB | ✓ | | pages.runtim...dev.js gzip | 22.1 kB | 22.1 kB | ✓ | | pages.runtim..prod.js gzip | 21.6 kB | 21.6 kB | ✓ | | server.runti..prod.js gzip | 51.7 kB | 51.7 kB | ✓ | | Overall change | 1.09 MB | 1.09 MB | ✓ |
build cache Overall increase ⚠️ | | vercel/next.js canary | vercel/next.js 07-03-transform_geist_by_default | Change | | - | - | - | - | | 0.pack gzip | 1.67 MB | 1.68 MB | ⚠️ +12.8 kB | | index.pack gzip | 129 kB | 132 kB | ⚠️ +2.69 kB | | Overall change | 1.8 MB | 1.81 MB | ⚠️ +15.5 kB |
Diff details
Diff for page.js ```diff @@ -15,7 +15,7 @@ /***/ }, - /***/ 9600: /***/ ( + /***/ 3299: /***/ ( __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-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/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-statsV0Xtkf%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&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-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/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-statsV0Xtkf%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&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, { @@ -70,35 +70,35 @@ tree: () => tree, }); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/web/globals.js - var globals = __webpack_require__(6497); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/web/adapter.js + 3 modules - var adapter = __webpack_require__(8627); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/build/webpack/loaders/next-edge-ssr-loader/render.js + 87 modules - var render = __webpack_require__(9932); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/lib/incremental-cache/index.js + 3 modules - var incremental_cache = __webpack_require__(547); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/app-render/app-render.js + 51 modules - var app_render = __webpack_require__(6151); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js - var module_compiled = __webpack_require__(776); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/route-kind.js - var route_kind = __webpack_require__(7234); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/client/components/error-boundary.js - var error_boundary = __webpack_require__(8425); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/app-render/entry-base.js + 10 modules - var entry_base = __webpack_require__(3015); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/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-statsV0Xtkf%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&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-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/web/globals.js + var globals = __webpack_require__(3000); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/web/adapter.js + 3 modules + var adapter = __webpack_require__(1059); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/build/webpack/loaders/next-edge-ssr-loader/render.js + 87 modules + var render = __webpack_require__(9774); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/lib/incremental-cache/index.js + 3 modules + var incremental_cache = __webpack_require__(5621); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/app-render/app-render.js + 51 modules + var app_render = __webpack_require__(2884); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js + var module_compiled = __webpack_require__(8488); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/route-kind.js + var route_kind = __webpack_require__(8394); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/client/components/error-boundary.js + var error_boundary = __webpack_require__(5787); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/app-render/entry-base.js + 10 modules + var entry_base = __webpack_require__(861); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/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-statsV0Xtkf%2Fstats-app%2Fapp&appPaths=%2Fapp-edge-ssr%2Fpage&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&basePath=&assetPrefix=&nextConfigOutput=&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__, 4401) + __webpack_require__.bind(__webpack_require__, 8535) ); const component1 = () => Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 5434) + __webpack_require__.bind(__webpack_require__, 2130) ); const page2 = () => Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 2439) + __webpack_require__.bind(__webpack_require__, 4781) ); // We inject the tree and pages here so that we can use them in the route @@ -164,12 +164,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-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/lib/page-types.js - var page_types = __webpack_require__(5373); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/app-render/encryption-utils.js - var encryption_utils = __webpack_require__(6590); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/dist/esm/server/app-render/action-utils.js - var action_utils = __webpack_require__(9690); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/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":"eyJlbnYiOnt9LCJlc2xpbnQiOnsiaWdub3JlRHVyaW5nQnVpbGRzIjpmYWxzZX0sInR5cGVzY3JpcHQiOnsiaWdub3JlQnVpbGRFcnJvcnMiOmZhbHNlLCJ0c2NvbmZpZ1BhdGgiOiJ0c2NvbmZpZy5qc29uIn0sImRpc3REaXIiOiIubmV4dCIsImNsZWFuRGlzdERpciI6dHJ1ZSwiYXNzZXRQcmVmaXgiOiIiLCJjYWNoZU1heE1lbW9yeVNpemUiOjUyNDI4ODAwLCJjb25maWdPcmlnaW4iOiJuZXh0LmNvbmZpZy5qcyIsInVzZUZpbGVTeXN0ZW1QdWJsaWNSb3V0ZXMiOnRydWUsImdlbmVyYXRlRXRhZ3MiOnRydWUsInBhZ2VFeHRlbnNpb25zIjpbInRzeCIsInRzIiwianN4IiwianMiXSwicG93ZXJlZEJ5SGVhZGVyIjp0cnVlLCJjb21wcmVzcyI6dHJ1ZSwiaW1hZ2VzIjp7ImRldmljZVNpemVzIjpbNjQwLDc1MCw4MjgsMTA4MCwxMjAwLDE5MjAsMjA0OCwzODQwXSwiaW1hZ2VTaXplcyI6WzE2LDMyLDQ4LDY0LDk2LDEyOCwyNTYsMzg0XSwicGF0aCI6Ii9fbmV4dC9pbWFnZSIsImxvYWRlciI6ImRlZmF1bHQiLCJsb2FkZXJGaWxlIjoiIiwiZG9tYWlucyI6W10sImRpc2FibGVTdGF0aWNJbWFnZXMiOmZhbHNlLCJtaW5pbXVtQ2FjaGVUVEwiOjYwLCJmb3JtYXRzIjpbImltYWdlL3dlYnAiXSwiZGFuZ2Vyb3VzbHlBbGxvd1NWRyI6ZmFsc2UsImNvbnRlbnRTZWN1cml0eVBvbGljeSI6InNjcmlwdC1zcmMgJ25vbmUnOyBmcmFtZS1zcmMgJ25vbmUnOyBzYW5kYm94OyIsImNvbnRlbnREaXNwb3NpdGlvblR5cGUiOiJhdHRhY2htZW50IiwicmVtb3RlUGF0dGVybnMiOltdLCJ1bm9wdGltaXplZCI6ZmFsc2V9LCJkZXZJbmRpY2F0b3JzIjp7ImJ1aWxkQWN0aXZpdHkiOnRydWUsImJ1aWxkQWN0aXZpdHlQb3NpdGlvbiI6ImJvdHRvbS1yaWdodCJ9LCJvbkRlbWFuZEVudHJpZXMiOnsibWF4SW5hY3RpdmVBZ2UiOjYwMDAwLCJwYWdlc0J1ZmZlckxlbmd0aCI6NX0sImFtcCI6eyJjYW5vbmljYWxCYXNlIjoiIn0sImJhc2VQYXRoIjoiIiwic2Fzc09wdGlvbnMiOnt9LCJ0cmFpbGluZ1NsYXNoIjpmYWxzZSwiaTE4biI6bnVsbCwicHJvZHVjdGlvbkJyb3dzZXJTb3VyY2VNYXBzIjpmYWxzZSwib3B0aW1pemVGb250cyI6dHJ1ZSwiZXhjbHVkZURlZmF1bHRNb21lbnRMb2NhbGVzIjp0cnVlLCJzZXJ2ZXJSdW50aW1lQ29uZmlnIjp7fSwicHVibGljUnVudGltZUNvbmZpZyI6e30sInJlYWN0UHJvZHVjdGlvblByb2ZpbGluZyI6ZmFsc2UsInJlYWN0U3RyaWN0TW9kZSI6bnVsbCwiaHR0cEFnZW50T3B0aW9ucyI6eyJrZWVwQWxpdmUiOnRydWV9LCJzdGF0aWNQYWdlR2VuZXJhdGlvblRpbWVvdXQiOjYwLCJtb2R1bGFyaXplSW1wb3J0cyI6eyJAbXVpL2ljb25zLW1hdGVyaWFsIjp7InRyYW5zZm9ybSI6IkBtdWkvaWNvbnMtbWF0ZXJpYWwve3ttZW1iZXJ9fSJ9LCJsb2Rhc2giOnsidHJhbnNmb3JtIjoibG9kYXNoL3t7bWVtYmVyfX0ifX0sImV4cGVyaW1lbnRhbCI6eyJmbHlpbmdTaHV0dGxlIjpmYWxzZSwicHJlcmVuZGVyRWFybHlFeGl0Ijp0cnVlLCJzZXJ2ZXJNaW5pZmljYXRpb24iOnRydWUsInNlcnZlclNvdXJjZU1hcHMiOmZhbHNlLCJsaW5rTm9Ub3VjaFN0YXJ0IjpmYWxzZSwiY2FzZVNlbnNpdGl2ZVJvdXRlcyI6ZmFsc2UsInByZWxvYWRFbnRyaWVzT25TdGFydCI6dHJ1ZSwiY2xpZW50Um91dGVyRmlsdGVyIjp0cnVlLCJjbGllbnRSb3V0ZXJGaWx0ZXJSZWRpcmVjdHMiOmZhbHNlLCJmZXRjaENhY2hlS2V5UHJlZml4IjoiIiwibWlkZGxld2FyZVByZWZldGNoIjoiZmxleGlibGUiLCJvcHRpbWlzdGljQ2xpZW50Q2FjaGUiOnRydWUsIm1hbnVhbENsaWVudEJhc2VQYXRoIjpmYWxzZSwiY3B1cyI6MTksIm1lbW9yeUJhc2VkV29ya2Vyc0NvdW50IjpmYWxzZSwiaXNyRmx1c2hUb0Rpc2siOnRydWUsIndvcmtlclRocmVhZHMiOmZhbHNlLCJvcHRpbWl6ZUNzcyI6ZmFsc2UsIm5leHRTY3JpcHRXb3JrZXJzIjpmYWxzZSwic2Nyb2xsUmVzdG9yYXRpb24iOmZhbHNlLCJleHRlcm5hbERpciI6ZmFsc2UsImRpc2FibGVPcHRpbWl6ZWRMb2FkaW5nIjpmYWxzZSwiZ3ppcFNpemUiOnRydWUsImNyYUNvbXBhdCI6ZmFsc2UsImVzbUV4dGVybmFscyI6dHJ1ZSwiZnVsbHlTcGVjaWZpZWQiOmZhbHNlLCJvdXRwdXRGaWxlVHJhY2luZ1Jvb3QiOiIvdG1wL25leHQtc3RhdHNWMFh0a2Yvc3RhdHMtYXBwIiwic3djVHJhY2VQcm9maWxpbmciOmZhbHNlLCJmb3JjZVN3Y1RyYW5zZm9ybXMiOmZhbHNlLCJsYXJnZVBhZ2VEYXRhQnl0ZXMiOjEyODAwMCwiYWRqdXN0Rm9udEZhbGxiYWNrcyI6ZmFsc2UsImFkanVzdEZvbnRGYWxsYmFja3NXaXRoU2l6ZUFkanVzdCI6ZmFsc2UsInR5cGVkUm91dGVzIjpmYWxzZSwiaW5zdHJ1bWVudGF0aW9uSG9vayI6ZmFsc2UsInBhcmFsbGVsU2VydmVyQ29tcGlsZXMiOmZhbHNlLCJwYXJhbGxlbFNlcnZlckJ1aWxkVHJhY2VzIjpmYWxzZSwicHByIjpmYWxzZSwid2VicGFja01lbW9yeU9wdGltaXphdGlvbnMiOmZhbHNlLCJvcHRpbWl6ZVNlcnZlclJlYWN0Ijp0cnVlLCJ1c2VFYXJseUltcG9ydCI6ZmFsc2UsInN0YWxlVGltZXMiOnsiZHluYW1pYyI6MCwic3RhdGljIjozMDB9LCJhZnRlciI6ZmFsc2UsIm9wdGltaXplUGFja2FnZUltcG9ydHMiOlsibHVjaWRlLXJlYWN0IiwiZGF0ZS1mbnMiLCJsb2Rhc2gtZXMiLCJyYW1kYSIsImFudGQiLCJyZWFjdC1ib290c3RyYXAiLCJhaG9va3MiLCJAYW50LWRlc2lnbi9pY29ucyIsIkBoZWFkbGVzc3VpL3JlYWN0IiwiQGhlYWRsZXNzdWktZmxvYXQvcmVhY3QiLCJAaGVyb2ljb25zL3JlYWN0LzIwL3NvbGlkIiwiQGhlcm9pY29ucy9yZWFjdC8yNC9zb2xpZCIsIkBoZXJvaWNvbnMvcmVhY3QvMjQvb3V0bGluZSIsIkB2aXN4L3Zpc3giLCJAdHJlbW9yL3JlYWN0IiwicnhqcyIsIkBtdWkvbWF0ZXJpYWwiLCJAbXVpL2ljb25zLW1hdGVyaWFsIiwicmVjaGFydHMiLCJyZWFjdC11c2UiLCJlZmZlY3QiLCJAZWZmZWN0L3NjaGVtYSIsIkBlZmZlY3QvcGxhdGZvcm0iLCJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiLCJAZWZmZWN0L3BsYXRmb3JtLWJyb3dzZXIiLCJAZWZmZWN0L3BsYXRmb3JtLWJ1biIsIkBlZmZlY3Qvc3FsIiwiQGVmZmVjdC9zcWwtbXNzcWwiLCJAZWZmZWN0L3NxbC1teXNxbDIiLCJAZWZmZWN0L3NxbC1wZyIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtbm9kZSIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtYnVuIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS13YXNtIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS1yZWFjdC1uYXRpdmUiLCJAZWZmZWN0L3JwYyIsIkBlZmZlY3QvcnBjLWh0dHAiLCJAZWZmZWN0L3R5cGVjbGFzcyIsIkBlZmZlY3QvZXhwZXJpbWVudGFsIiwiQGVmZmVjdC9vcGVudGVsZW1ldHJ5IiwiQG1hdGVyaWFsLXVpL2NvcmUiLCJAbWF0ZXJpYWwtdWkvaWNvbnMiLCJAdGFibGVyL2ljb25zLXJlYWN0IiwibXVpLWNvcmUiLCJyZWFjdC1pY29ucy9haSIsInJlYWN0LWljb25zL2JpIiwicmVhY3QtaWNvbnMvYnMiLCJyZWFjdC1pY29ucy9jZyIsInJlYWN0LWljb25zL2NpIiwicmVhY3QtaWNvbnMvZGkiLCJyZWFjdC1pY29ucy9mYSIsInJlYWN0LWljb25zL2ZhNiIsInJlYWN0LWljb25zL2ZjIiwicmVhY3QtaWNvbnMvZmkiLCJyZWFjdC1pY29ucy9naSIsInJlYWN0LWljb25zL2dvIiwicmVhY3QtaWNvbnMvZ3IiLCJyZWFjdC1pY29ucy9oaSIsInJlYWN0LWljb25zL2hpMiIsInJlYWN0LWljb25zL2ltIiwicmVhY3QtaWNvbnMvaW8iLCJyZWFjdC1pY29ucy9pbzUiLCJyZWFjdC1pY29ucy9saWEiLCJyZWFjdC1pY29ucy9saWIiLCJyZWFjdC1pY29ucy9sdSIsInJlYWN0LWljb25zL21kIiwicmVhY3QtaWNvbnMvcGkiLCJyZWFjdC1pY29ucy9yaSIsInJlYWN0LWljb25zL3J4IiwicmVhY3QtaWNvbnMvc2kiLCJyZWFjdC1pY29ucy9zbCIsInJlYWN0LWljb25zL3RiIiwicmVhY3QtaWNvbnMvdGZpIiwicmVhY3QtaWNvbnMvdGkiLCJyZWFjdC1pY29ucy92c2MiLCJyZWFjdC1pY29ucy93aSJdfSwiYnVuZGxlUGFnZXNSb3V0ZXJEZXBlbmRlbmNpZXMiOmZhbHNlLCJjb25maWdGaWxlIjoiL3RtcC9uZXh0LXN0YXRzVjBYdGtmL3N0YXRzLWFwcC9uZXh0LmNvbmZpZy5qcyIsImNvbmZpZ0ZpbGVOYW1lIjoibmV4dC5jb25maWcuanMifQ==","pagesType":"app","appDirLoader":"bmV4dC1hcHAtbG9hZGVyP25hbWU9YXBwJTJGYXBwLWVkZ2Utc3NyJTJGcGFnZSZwYWdlPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZVBhdGg9cHJpdmF0ZS1uZXh0LWFwcC1kaXIlMkZhcHAtZWRnZS1zc3IlMkZwYWdlLmpzJmFwcERpcj0lMkZ0bXAlMkZuZXh0LXN0YXRzVjBYdGtmJTJGc3RhdHMtYXBwJTJGYXBwJmFwcFBhdGhzPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZUV4dGVuc2lvbnM9dHN4JnBhZ2VFeHRlbnNpb25zPXRzJnBhZ2VFeHRlbnNpb25zPWpzeCZwYWdlRXh0ZW5zaW9ucz1qcyZiYXNlUGF0aD0mYXNzZXRQcmVmaXg9Jm5leHRDb25maWdPdXRwdXQ9JnByZWZlcnJlZFJlZ2lvbj0mbWlkZGxld2FyZUNvbmZpZz1lMzAlM0Qh","sriEnabled":false,"middlewareConfig":"e30="}! + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/lib/page-types.js + var page_types = __webpack_require__(8268); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/app-render/encryption-utils.js + var encryption_utils = __webpack_require__(8125); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/dist/esm/server/app-render/action-utils.js + var action_utils = __webpack_require__(5736); // CONCATENATED MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/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":"eyJlbnYiOnt9LCJlc2xpbnQiOnsiaWdub3JlRHVyaW5nQnVpbGRzIjpmYWxzZX0sInR5cGVzY3JpcHQiOnsiaWdub3JlQnVpbGRFcnJvcnMiOmZhbHNlLCJ0c2NvbmZpZ1BhdGgiOiJ0c2NvbmZpZy5qc29uIn0sImRpc3REaXIiOiIubmV4dCIsImNsZWFuRGlzdERpciI6dHJ1ZSwiYXNzZXRQcmVmaXgiOiIiLCJjYWNoZU1heE1lbW9yeVNpemUiOjUyNDI4ODAwLCJjb25maWdPcmlnaW4iOiJuZXh0LmNvbmZpZy5qcyIsInVzZUZpbGVTeXN0ZW1QdWJsaWNSb3V0ZXMiOnRydWUsImdlbmVyYXRlRXRhZ3MiOnRydWUsInBhZ2VFeHRlbnNpb25zIjpbInRzeCIsInRzIiwianN4IiwianMiXSwicG93ZXJlZEJ5SGVhZGVyIjp0cnVlLCJjb21wcmVzcyI6dHJ1ZSwiaW1hZ2VzIjp7ImRldmljZVNpemVzIjpbNjQwLDc1MCw4MjgsMTA4MCwxMjAwLDE5MjAsMjA0OCwzODQwXSwiaW1hZ2VTaXplcyI6WzE2LDMyLDQ4LDY0LDk2LDEyOCwyNTYsMzg0XSwicGF0aCI6Ii9fbmV4dC9pbWFnZSIsImxvYWRlciI6ImRlZmF1bHQiLCJsb2FkZXJGaWxlIjoiIiwiZG9tYWlucyI6W10sImRpc2FibGVTdGF0aWNJbWFnZXMiOmZhbHNlLCJtaW5pbXVtQ2FjaGVUVEwiOjYwLCJmb3JtYXRzIjpbImltYWdlL3dlYnAiXSwiZGFuZ2Vyb3VzbHlBbGxvd1NWRyI6ZmFsc2UsImNvbnRlbnRTZWN1cml0eVBvbGljeSI6InNjcmlwdC1zcmMgJ25vbmUnOyBmcmFtZS1zcmMgJ25vbmUnOyBzYW5kYm94OyIsImNvbnRlbnREaXNwb3NpdGlvblR5cGUiOiJhdHRhY2htZW50IiwicmVtb3RlUGF0dGVybnMiOltdLCJ1bm9wdGltaXplZCI6ZmFsc2V9LCJkZXZJbmRpY2F0b3JzIjp7ImJ1aWxkQWN0aXZpdHkiOnRydWUsImJ1aWxkQWN0aXZpdHlQb3NpdGlvbiI6ImJvdHRvbS1yaWdodCJ9LCJvbkRlbWFuZEVudHJpZXMiOnsibWF4SW5hY3RpdmVBZ2UiOjYwMDAwLCJwYWdlc0J1ZmZlckxlbmd0aCI6NX0sImFtcCI6eyJjYW5vbmljYWxCYXNlIjoiIn0sImJhc2VQYXRoIjoiIiwic2Fzc09wdGlvbnMiOnt9LCJ0cmFpbGluZ1NsYXNoIjpmYWxzZSwiaTE4biI6bnVsbCwicHJvZHVjdGlvbkJyb3dzZXJTb3VyY2VNYXBzIjpmYWxzZSwib3B0aW1pemVGb250cyI6dHJ1ZSwiZXhjbHVkZURlZmF1bHRNb21lbnRMb2NhbGVzIjp0cnVlLCJzZXJ2ZXJSdW50aW1lQ29uZmlnIjp7fSwicHVibGljUnVudGltZUNvbmZpZyI6e30sInJlYWN0UHJvZHVjdGlvblByb2ZpbGluZyI6ZmFsc2UsInJlYWN0U3RyaWN0TW9kZSI6bnVsbCwiaHR0cEFnZW50T3B0aW9ucyI6eyJrZWVwQWxpdmUiOnRydWV9LCJzdGF0aWNQYWdlR2VuZXJhdGlvblRpbWVvdXQiOjYwLCJtb2R1bGFyaXplSW1wb3J0cyI6eyJAbXVpL2ljb25zLW1hdGVyaWFsIjp7InRyYW5zZm9ybSI6IkBtdWkvaWNvbnMtbWF0ZXJpYWwve3ttZW1iZXJ9fSJ9LCJsb2Rhc2giOnsidHJhbnNmb3JtIjoibG9kYXNoL3t7bWVtYmVyfX0ifX0sImV4cGVyaW1lbnRhbCI6eyJmbHlpbmdTaHV0dGxlIjpmYWxzZSwicHJlcmVuZGVyRWFybHlFeGl0Ijp0cnVlLCJzZXJ2ZXJNaW5pZmljYXRpb24iOnRydWUsInNlcnZlclNvdXJjZU1hcHMiOmZhbHNlLCJsaW5rTm9Ub3VjaFN0YXJ0IjpmYWxzZSwiY2FzZVNlbnNpdGl2ZVJvdXRlcyI6ZmFsc2UsInByZWxvYWRFbnRyaWVzT25TdGFydCI6dHJ1ZSwiY2xpZW50Um91dGVyRmlsdGVyIjp0cnVlLCJjbGllbnRSb3V0ZXJGaWx0ZXJSZWRpcmVjdHMiOmZhbHNlLCJmZXRjaENhY2hlS2V5UHJlZml4IjoiIiwibWlkZGxld2FyZVByZWZldGNoIjoiZmxleGlibGUiLCJvcHRpbWlzdGljQ2xpZW50Q2FjaGUiOnRydWUsIm1hbnVhbENsaWVudEJhc2VQYXRoIjpmYWxzZSwiY3B1cyI6MTksIm1lbW9yeUJhc2VkV29ya2Vyc0NvdW50IjpmYWxzZSwiaXNyRmx1c2hUb0Rpc2siOnRydWUsIndvcmtlclRocmVhZHMiOmZhbHNlLCJvcHRpbWl6ZUNzcyI6ZmFsc2UsIm5leHRTY3JpcHRXb3JrZXJzIjpmYWxzZSwic2Nyb2xsUmVzdG9yYXRpb24iOmZhbHNlLCJleHRlcm5hbERpciI6ZmFsc2UsImRpc2FibGVPcHRpbWl6ZWRMb2FkaW5nIjpmYWxzZSwiZ3ppcFNpemUiOnRydWUsImNyYUNvbXBhdCI6ZmFsc2UsImVzbUV4dGVybmFscyI6dHJ1ZSwiZnVsbHlTcGVjaWZpZWQiOmZhbHNlLCJvdXRwdXRGaWxlVHJhY2luZ1Jvb3QiOiIvdG1wL25leHQtc3RhdHNWMFh0a2Yvc3RhdHMtYXBwIiwic3djVHJhY2VQcm9maWxpbmciOmZhbHNlLCJmb3JjZVN3Y1RyYW5zZm9ybXMiOmZhbHNlLCJsYXJnZVBhZ2VEYXRhQnl0ZXMiOjEyODAwMCwiYWRqdXN0Rm9udEZhbGxiYWNrcyI6ZmFsc2UsImFkanVzdEZvbnRGYWxsYmFja3NXaXRoU2l6ZUFkanVzdCI6ZmFsc2UsInR5cGVkUm91dGVzIjpmYWxzZSwiaW5zdHJ1bWVudGF0aW9uSG9vayI6ZmFsc2UsInBhcmFsbGVsU2VydmVyQ29tcGlsZXMiOmZhbHNlLCJwYXJhbGxlbFNlcnZlckJ1aWxkVHJhY2VzIjpmYWxzZSwicHByIjpmYWxzZSwid2VicGFja01lbW9yeU9wdGltaXphdGlvbnMiOmZhbHNlLCJvcHRpbWl6ZVNlcnZlclJlYWN0Ijp0cnVlLCJ1c2VFYXJseUltcG9ydCI6ZmFsc2UsInN0YWxlVGltZXMiOnsiZHluYW1pYyI6MCwic3RhdGljIjozMDB9LCJhZnRlciI6ZmFsc2UsIm9wdGltaXplUGFja2FnZUltcG9ydHMiOlsibHVjaWRlLXJlYWN0IiwiZGF0ZS1mbnMiLCJsb2Rhc2gtZXMiLCJyYW1kYSIsImFudGQiLCJyZWFjdC1ib290c3RyYXAiLCJhaG9va3MiLCJAYW50LWRlc2lnbi9pY29ucyIsIkBoZWFkbGVzc3VpL3JlYWN0IiwiQGhlYWRsZXNzdWktZmxvYXQvcmVhY3QiLCJAaGVyb2ljb25zL3JlYWN0LzIwL3NvbGlkIiwiQGhlcm9pY29ucy9yZWFjdC8yNC9zb2xpZCIsIkBoZXJvaWNvbnMvcmVhY3QvMjQvb3V0bGluZSIsIkB2aXN4L3Zpc3giLCJAdHJlbW9yL3JlYWN0IiwicnhqcyIsIkBtdWkvbWF0ZXJpYWwiLCJAbXVpL2ljb25zLW1hdGVyaWFsIiwicmVjaGFydHMiLCJyZWFjdC11c2UiLCJlZmZlY3QiLCJAZWZmZWN0L3NjaGVtYSIsIkBlZmZlY3QvcGxhdGZvcm0iLCJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiLCJAZWZmZWN0L3BsYXRmb3JtLWJyb3dzZXIiLCJAZWZmZWN0L3BsYXRmb3JtLWJ1biIsIkBlZmZlY3Qvc3FsIiwiQGVmZmVjdC9zcWwtbXNzcWwiLCJAZWZmZWN0L3NxbC1teXNxbDIiLCJAZWZmZWN0L3NxbC1wZyIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtbm9kZSIsIkBlZmZlY3Qvc3FsLXNxdWxpdGUtYnVuIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS13YXNtIiwiQGVmZmVjdC9zcWwtc3F1bGl0ZS1yZWFjdC1uYXRpdmUiLCJAZWZmZWN0L3JwYyIsIkBlZmZlY3QvcnBjLWh0dHAiLCJAZWZmZWN0L3R5cGVjbGFzcyIsIkBlZmZlY3QvZXhwZXJpbWVudGFsIiwiQGVmZmVjdC9vcGVudGVsZW1ldHJ5IiwiQG1hdGVyaWFsLXVpL2NvcmUiLCJAbWF0ZXJpYWwtdWkvaWNvbnMiLCJAdGFibGVyL2ljb25zLXJlYWN0IiwibXVpLWNvcmUiLCJyZWFjdC1pY29ucy9haSIsInJlYWN0LWljb25zL2JpIiwicmVhY3QtaWNvbnMvYnMiLCJyZWFjdC1pY29ucy9jZyIsInJlYWN0LWljb25zL2NpIiwicmVhY3QtaWNvbnMvZGkiLCJyZWFjdC1pY29ucy9mYSIsInJlYWN0LWljb25zL2ZhNiIsInJlYWN0LWljb25zL2ZjIiwicmVhY3QtaWNvbnMvZmkiLCJyZWFjdC1pY29ucy9naSIsInJlYWN0LWljb25zL2dvIiwicmVhY3QtaWNvbnMvZ3IiLCJyZWFjdC1pY29ucy9oaSIsInJlYWN0LWljb25zL2hpMiIsInJlYWN0LWljb25zL2ltIiwicmVhY3QtaWNvbnMvaW8iLCJyZWFjdC1pY29ucy9pbzUiLCJyZWFjdC1pY29ucy9saWEiLCJyZWFjdC1pY29ucy9saWIiLCJyZWFjdC1pY29ucy9sdSIsInJlYWN0LWljb25zL21kIiwicmVhY3QtaWNvbnMvcGkiLCJyZWFjdC1pY29ucy9yaSIsInJlYWN0LWljb25zL3J4IiwicmVhY3QtaWNvbnMvc2kiLCJyZWFjdC1pY29ucy9zbCIsInJlYWN0LWljb25zL3RiIiwicmVhY3QtaWNvbnMvdGZpIiwicmVhY3QtaWNvbnMvdGkiLCJyZWFjdC1pY29ucy92c2MiLCJyZWFjdC1pY29ucy93aSJdfSwiYnVuZGxlUGFnZXNSb3V0ZXJEZXBlbmRlbmNpZXMiOmZhbHNlLCJjb25maWdGaWxlIjoiL3RtcC9uZXh0LXN0YXRzVjBYdGtmL3N0YXRzLWFwcC9uZXh0LmNvbmZpZy5qcyIsImNvbmZpZ0ZpbGVOYW1lIjoibmV4dC5jb25maWcuanMifQ==","pagesType":"app","appDirLoader":"bmV4dC1hcHAtbG9hZGVyP25hbWU9YXBwJTJGYXBwLWVkZ2Utc3NyJTJGcGFnZSZwYWdlPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZVBhdGg9cHJpdmF0ZS1uZXh0LWFwcC1kaXIlMkZhcHAtZWRnZS1zc3IlMkZwYWdlLmpzJmFwcERpcj0lMkZ0bXAlMkZuZXh0LXN0YXRzVjBYdGtmJTJGc3RhdHMtYXBwJTJGYXBwJmFwcFBhdGhzPSUyRmFwcC1lZGdlLXNzciUyRnBhZ2UmcGFnZUV4dGVuc2lvbnM9dHN4JnBhZ2VFeHRlbnNpb25zPXRzJnBhZ2VFeHRlbnNpb25zPWpzeCZwYWdlRXh0ZW5zaW9ucz1qcyZiYXNlUGF0aD0mYXNzZXRQcmVmaXg9Jm5leHRDb25maWdPdXRwdXQ9JnByZWZlcnJlZFJlZ2lvbj0mbWlkZGxld2FyZUNvbmZpZz1lMzAlM0Qh","sriEnabled":false,"middlewareConfig":"e30="}! var _self___RSC_MANIFEST; const incrementalCacheHandler = null; @@ -428,47 +428,47 @@ /***/ }, - /***/ 2736: /***/ ( + /***/ 9132: /***/ ( __unused_webpack_module, __unused_webpack_exports, __webpack_require__ ) => { Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 8664) + __webpack_require__.bind(__webpack_require__, 4671) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 8014) + __webpack_require__.bind(__webpack_require__, 2460) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 1593) + __webpack_require__.bind(__webpack_require__, 7791) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 903) + __webpack_require__.bind(__webpack_require__, 3902) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 6086) + __webpack_require__.bind(__webpack_require__, 7290) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 234) + __webpack_require__.bind(__webpack_require__, 4306) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 4426) + __webpack_require__.bind(__webpack_require__, 1848) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 9376) + __webpack_require__.bind(__webpack_require__, 1230) ); Promise.resolve(/* import() eager */).then( - __webpack_require__.bind(__webpack_require__, 2842) + __webpack_require__.bind(__webpack_require__, 9172) ); /***/ }, - /***/ 2035: /***/ () => { + /***/ 3421: /***/ () => { /***/ }, - /***/ 2439: /***/ ( + /***/ 4781: /***/ ( __unused_webpack_module, __webpack_exports__, __webpack_require__ @@ -488,7 +488,7 @@ /***/ }, - /***/ 4401: /***/ ( + /***/ 8535: /***/ ( __unused_webpack_module, __webpack_exports__, __webpack_require__ @@ -500,7 +500,7 @@ /* harmony export */ }); /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = - __webpack_require__(5172); + __webpack_require__(6763); function RootLayout({ children }) { return /*#__PURE__*/ (0, @@ -519,7 +519,7 @@ // webpackRuntimeModules /******/ var __webpack_exec__ = (moduleId) => __webpack_require__((__webpack_require__.s = moduleId)); - /******/ __webpack_require__.O(0, [315, 903], () => __webpack_exec__(9600)); + /******/ __webpack_require__.O(0, [649, 904], () => __webpack_exec__(3299)); /******/ 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 ```diff @@ -1,7 +1,7 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([ [8358], { - /***/ 1362: /***/ ( + /***/ 9618: /***/ ( __unused_webpack_module, __unused_webpack_exports, __webpack_require__ @@ -9,7 +9,7 @@ (window.__NEXT_P = window.__NEXT_P || []).push([ "/image", function () { - return __webpack_require__(2160); + return __webpack_require__(699); }, ]); if (false) { @@ -18,7 +18,7 @@ /***/ }, - /***/ 537: /***/ (module, exports, __webpack_require__) => { + /***/ 9451: /***/ (module, exports, __webpack_require__) => { "use strict"; /* __next_internal_client_entry_do_not_use__ cjs */ Object.defineProperty(exports, "__esModule", { @@ -40,15 +40,15 @@ __webpack_require__(3537) ); const _head = /*#__PURE__*/ _interop_require_default._( - __webpack_require__(7092) + __webpack_require__(6490) ); - const _getimgprops = __webpack_require__(9834); - const _imageconfig = __webpack_require__(5676); - const _imageconfigcontextsharedruntime = __webpack_require__(387); - const _warnonce = __webpack_require__(451); - const _routercontextsharedruntime = __webpack_require__(5357); + const _getimgprops = __webpack_require__(3646); + const _imageconfig = __webpack_require__(535); + const _imageconfigcontextsharedruntime = __webpack_require__(4724); + const _warnonce = __webpack_require__(6321); + const _routercontextsharedruntime = __webpack_require__(1759); const _imageloader = /*#__PURE__*/ _interop_require_default._( - __webpack_require__(3945) + __webpack_require__(1882) ); // This is replaced by webpack define plugin const configEnv = { @@ -376,7 +376,7 @@ /***/ }, - /***/ 9834: /***/ ( + /***/ 3646: /***/ ( __unused_webpack_module, exports, __webpack_require__ @@ -392,9 +392,9 @@ return getImgProps; }, }); - const _warnonce = __webpack_require__(451); - const _imageblursvg = __webpack_require__(3547); - const _imageconfig = __webpack_require__(5676); + const _warnonce = __webpack_require__(6321); + const _imageblursvg = __webpack_require__(8297); + const _imageconfig = __webpack_require__(535); const VALID_LOADING_VALUES = /* unused pure expression or super */ null && [ "lazy", @@ -766,7 +766,7 @@ /***/ }, - /***/ 3547: /***/ (__unused_webpack_module, exports) => { + /***/ 8297: /***/ (__unused_webpack_module, exports) => { "use strict"; /** * A shared function, used on both client and server, to generate a SVG blur placeholder. @@ -821,7 +821,7 @@ /***/ }, - /***/ 6850: /***/ ( + /***/ 973: /***/ ( __unused_webpack_module, exports, __webpack_require__ @@ -848,10 +848,10 @@ }, }); const _interop_require_default = __webpack_require__(1478); - const _getimgprops = __webpack_require__(9834); - const _imagecomponent = __webpack_require__(537); + const _getimgprops = __webpack_require__(3646); + const _imagecomponent = __webpack_require__(9451); const _imageloader = /*#__PURE__*/ _interop_require_default._( - __webpack_require__(3945) + __webpack_require__(1882) ); function getImageProps(imgProps) { const { props } = (0, _getimgprops.getImgProps)(imgProps, { @@ -883,7 +883,7 @@ /***/ }, - /***/ 3945: /***/ (__unused_webpack_module, exports) => { + /***/ 1882: /***/ (__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", { @@ -918,7 +918,7 @@ /***/ }, - /***/ 2160: /***/ ( + /***/ 699: /***/ ( __unused_webpack_module, __webpack_exports__, __webpack_require__ @@ -935,8 +935,8 @@ // EXTERNAL MODULE: ./node_modules/.pnpm/react@19.0.0-rc-6230622a1a-20240610/node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(898); - // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+main-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__zehaskxadtwcczqqbmt6koh6bq/node_modules/next/image.js - var next_image = __webpack_require__(6793); + // EXTERNAL MODULE: ./node_modules/.pnpm/next@file+..+diff-repo+packages+next+next-packed.tgz_react-dom@19.0.0-rc-6230622a1a-20240610__uulzbengwsfwhwaa2ambxampcy/node_modules/next/image.js + var next_image = __webpack_require__(1428); 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", @@ -966,12 +966,12 @@ /***/ }, - /***/ 6793: /***/ ( + /***/ 1428: /***/ ( module, __unused_webpack_exports, __webpack_require__ ) => { - module.exports = __webpack_require__(6850); + module.exports = __webpack_require__(973); /***/ }, @@ -981,7 +981,7 @@ /******/ var __webpack_exec__ = (moduleId) => __webpack_require__((__webpack_require__.s = moduleId)); /******/ __webpack_require__.O(0, [2888, 9774, 179], () => - __webpack_exec__(1362) + __webpack_exec__(9618) ); /******/ var __webpack_exports__ = __webpack_require__.O(); /******/ _N_E = __webpack_exports__; ```
Diff for main-HASH.js Diff too large to display

Commit: 673f40c30ae0483f6f2530f8922e7077cec67d68

ijjk commented 3 months ago

Failing test suites

Commit: 673f40c30ae0483f6f2530f8922e7077cec67d68

pnpm test-start test/production/deterministic-build/index.test.ts

Expand output ● deterministic build › should have same md5 file across build expect(received).toEqual(expected) // deep equality - Expected - 2 + Received + 2 @@ -12,21 +12,21 @@ "9fce7989bff5d35b01e177447faca50d", "d7aa1834e4b5ee75408143d266ce2f1c", "4f3949b630a0e25d6cb90a5a8a79459a", "3acbb1d5e89241f7f2578fcdd5b9dfd4", "e2d4e625abbdbd5c7ed39ba5f1f2d36a", - "06a2d82c3236b5aca872de826ed6cda0", + "275754cf57615ae0c1e1829de4e864ab", ], "/app-route/edge/route": Array [ "4bf96f26af05189449e7234fddfd657c", "49318b1fadb2d705059a2e0d8df88bb6", "9fce7989bff5d35b01e177447faca50d", "d7aa1834e4b5ee75408143d266ce2f1c", "4f3949b630a0e25d6cb90a5a8a79459a", "3acbb1d5e89241f7f2578fcdd5b9dfd4", "e2d4e625abbdbd5c7ed39ba5f1f2d36a", - "b59f70ef152fe968138833ba43b2c0f4", + "c2c46752c631aabdc5cf66bc7c1f81a7", ], "/pages-page/edge": Array [ "4bf96f26af05189449e7234fddfd657c", "49318b1fadb2d705059a2e0d8df88bb6", "9fce7989bff5d35b01e177447faca50d", 63 | 64 | it('should have same md5 file across build', async () => { > 65 | expect(edgeBuildFileMd5Hashes[0]).toEqual(edgeBuildFileMd5Hashes[1]) | ^ 66 | expect(nodeBuildFileMd5Hashes[0]).toEqual(nodeBuildFileMd5Hashes[1]) 67 | }) 68 | }) at Object.toEqual (production/deterministic-build/index.test.ts:65:39)

Read more about building and testing Next.js in contributing.md.

pnpm test-dev test/e2e/app-dir/actions/app-action.test.ts

Expand output ● app-dir action handling › should forward action request to a worker that contains the action handler (node) page.waitForSelector: Timeout 60000ms exceeded. Call log: - waiting for locator('#other-page') 423 | return this.chain(() => { 424 | return page > 425 | .waitForSelector(selector, { timeout, state: 'attached' }) | ^ 426 | .then(async (el) => { 427 | // it seems selenium waits longer and tests rely on this behavior 428 | // so we wait for the load event fire before returning at waitForSelector (lib/browsers/playwright.ts:425:10) at e2e/app-dir/actions/app-action.test.ts:664:7 ● app-dir action handling › fetch actions › should handle redirects to routes that provide an invalid RSC response expect(received).toContain(expected) // indexOf Expected substring: "Hello from a pages route" Received string: "0.9501195724827136 Client Server Client and Server 0 +1+1 (Slow)-1*2 redirect to a pages route submit test" 1035 | 1036 | await retry(async () => { > 1037 | expect(await browser.elementByCss('body').text()).toContain( | ^ 1038 | 'Hello from a pages route' 1039 | ) 1040 | expect(await browser.url()).toBe(`${next.url}/pages-dir`) at toContain (e2e/app-dir/actions/app-action.test.ts:1037:59) at retry (lib/next-test-utils.ts:787:14) at Object. (e2e/app-dir/actions/app-action.test.ts:1036:7)

Read more about building and testing Next.js in contributing.md.

TURBOPACK=1 pnpm test-dev test/e2e/app-dir/next-font/next-font.test.ts (turbopack)

Expand output ● app dir - next/font › app dir - next-font › Dev errors › should recover on font loader error thrown: "Exceeded timeout of 240000 ms for a test. Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout." 445 | if (isDev) { 446 | describe('Dev errors', () => { > 447 | it('should recover on font loader error', async () => { | ^ 448 | const browser = await next.browser('/') 449 | const font1Content = await next.readFile('fonts/index.js') 450 | at it (e2e/app-dir/next-font/next-font.test.ts:447:9) at describe (e2e/app-dir/next-font/next-font.test.ts:446:7) at describe (e2e/app-dir/next-font/next-font.test.ts:21:3) at Object.describe (e2e/app-dir/next-font/next-font.test.ts:20:1)

Read more about building and testing Next.js in contributing.md.