Skip to content

Conversation

@unstubbable
Copy link
Contributor

…89316)

The server actions transform, which handles the `'use cache'` directive,
was not being applied to `node_modules` when imported from route
handlers. This caused `'use cache'` functions from dependencies to fail
with errors like `"cacheLife() can only be called inside a 'use cache'
function"``.

The issue was that the `AppRoute` context used `internal_custom_rules`
for its foreign code module options, which did not include the server
actions transform. This is inconsistent with `AppRSC` (App Router
pages), which correctly uses `foreign_next_server_rules` that includes
the transform.

The fix extends `foreign_next_server_rules` with `internal_custom_rules`
and uses it for the foreign code context in `AppRoute`, matching the
pattern used by `AppRSC`.
@nextjs-bot nextjs-bot added created-by: Next.js team PRs by the Next.js team. tests Turbopack Related to Turbopack with Next.js. labels Feb 2, 2026
@nextjs-bot
Copy link
Collaborator

Stats from current PR

Default Build
General
vercel/next.js canary vercel/next.js hl/backport-89316 Change
buildDuration 17.4s 17.5s N/A
buildDurationCached 13.9s 11s N/A
nodeModulesSize 464 MB 458 MB N/A
nextStartRea..uration (ms) 718ms 717ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js hl/backport-89316 Change
2086.HASH.js gzip 169 B 169 B
2161-HASH.js gzip 5.47 kB 5.42 kB N/A
2747-HASH.js gzip 4.53 kB 4.46 kB N/A
4322-HASH.js gzip 54.7 kB 51 kB N/A
ec793fe8-HASH.js gzip 62.5 kB 62.3 kB N/A
framework-HASH.js gzip 59.8 kB 59.8 kB N/A
main-app-HASH.js gzip 251 B 253 B N/A
main-HASH.js gzip 38.7 kB 38.7 kB N/A
webpack-HASH.js gzip 1.68 kB 1.68 kB N/A
Overall change 169 B 169 B
Legacy Client Bundles (polyfills)
vercel/next.js canary vercel/next.js hl/backport-89316 Change
polyfills-HASH.js gzip 39.4 kB 39.4 kB
Overall change 39.4 kB 39.4 kB
Client Pages
vercel/next.js canary vercel/next.js hl/backport-89316 Change
_app-HASH.js gzip 194 B 193 B N/A
_error-HASH.js gzip 182 B 182 B
css-HASH.js gzip 336 B 335 B N/A
dynamic-HASH.js gzip 1.8 kB 1.8 kB N/A
edge-ssr-HASH.js gzip 256 B 256 B
head-HASH.js gzip 352 B 349 B N/A
hooks-HASH.js gzip 385 B 384 B N/A
image-HASH.js gzip 580 B 580 B
index-HASH.js gzip 259 B 258 B N/A
link-HASH.js gzip 2.5 kB 2.51 kB N/A
routerDirect..HASH.js gzip 319 B 317 B N/A
script-HASH.js gzip 385 B 387 B N/A
withRouter-HASH.js gzip 316 B 315 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 1.12 kB 1.12 kB
Client Build Manifests
vercel/next.js canary vercel/next.js hl/backport-89316 Change
_buildManifest.js gzip 736 B 738 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js hl/backport-89316 Change
index.html gzip 522 B 525 B N/A
link.html gzip 538 B 538 B
withRouter.html gzip 519 B 521 B N/A
Overall change 538 B 538 B
Edge SSR bundle Size
vercel/next.js canary vercel/next.js hl/backport-89316 Change
edge-ssr.js gzip 126 kB 126 kB N/A
page.js gzip 247 kB 243 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js hl/backport-89316 Change
middleware-b..fest.js gzip 616 B 652 B N/A
middleware-r..fest.js gzip 155 B 156 B N/A
middleware.js gzip 33.1 kB 32.9 kB N/A
edge-runtime..pack.js gzip 842 B 842 B
Overall change 842 B 842 B
Next Runtimes
vercel/next.js canary vercel/next.js hl/backport-89316 Change
app-page-exp...dev.js gzip 311 kB 303 kB N/A
app-page-exp..prod.js gzip 166 kB 158 kB N/A
app-page-tur...dev.js gzip 311 kB 303 kB N/A
app-page-tur..prod.js gzip 166 kB 158 kB N/A
app-page-tur...dev.js gzip 308 kB 300 kB N/A
app-page-tur..prod.js gzip 164 kB 156 kB N/A
app-page.run...dev.js gzip 308 kB 300 kB N/A
app-page.run..prod.js gzip 164 kB 156 kB N/A
app-route-ex...dev.js gzip 70.4 kB 69.2 kB N/A
app-route-ex..prod.js gzip 48.9 kB 48 kB N/A
app-route-tu...dev.js gzip 70.4 kB 69.2 kB N/A
app-route-tu..prod.js gzip 49 kB 48 kB N/A
app-route-tu...dev.js gzip 70 kB 68.8 kB N/A
app-route-tu..prod.js gzip 48.7 kB 47.8 kB N/A
app-route.ru...dev.js gzip 70 kB 68.8 kB N/A
app-route.ru..prod.js gzip 48.7 kB 47.8 kB N/A
dist_client_...dev.js gzip 324 B 324 B
dist_client_...dev.js gzip 326 B 326 B
dist_client_...dev.js gzip 318 B 318 B
dist_client_...dev.js gzip 317 B 317 B
pages-api-tu...dev.js gzip 43.1 kB 42.3 kB N/A
pages-api-tu..prod.js gzip 32.9 kB 32.1 kB N/A
pages-api.ru...dev.js gzip 43.1 kB 42.2 kB N/A
pages-api.ru..prod.js gzip 32.8 kB 32.1 kB N/A
pages-turbo....dev.js gzip 52.4 kB 51.5 kB N/A
pages-turbo...prod.js gzip 39.4 kB 38.7 kB N/A
pages.runtim...dev.js gzip 52.4 kB 51.5 kB N/A
pages.runtim..prod.js gzip 39.3 kB 38.6 kB N/A
server.runti..prod.js gzip 62.5 kB 62.1 kB N/A
Overall change 1.28 kB 1.28 kB
build cache
vercel/next.js canary vercel/next.js hl/backport-89316 Change
0.pack gzip 3.8 MB 3.64 MB N/A
index.pack gzip 102 kB 100 kB N/A
Overall change 0 B 0 B
Diff details
Diff for page.js

Diff too large to display

Diff for middleware-b..-manifest.js
@@ -1,97 +1,98 @@
 globalThis.__BUILD_MANIFEST = {
   polyfillFiles: ["static/chunks/polyfills-42372ed130431b0a.js"],
   devFiles: [],
-  lowPriorityFiles: [
-    "static/BUILD_ID/_buildManifest.js",
-    "static/BUILD_ID/_ssgManifest.js",
-  ],
+  lowPriorityFiles: [],
   rootMainFiles: [
-    "static/chunks/webpack-d5f35f70cffceeb2.js",
-    "static/chunks/ec793fe8-86415d72675c4df4.js",
-    "static/chunks/4322-5b50895dfc1dfe69.js",
-    "static/chunks/main-app-958e15ec069150f3.js",
+    "static/chunks/webpack-c1a44bedea8fda3c.js",
+    "static/chunks/b17a3386-b7223d4e072529f8.js",
+    "static/chunks/2658-cb77297c09ad8c49.js",
+    "static/chunks/main-app-c71be9c845b9a9fb.js",
   ],
   rootMainFilesTree: {},
   pages: {
     "/": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/index-dda7d8b64d4ba15c.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/index-d95f7ec6af4d2644.js",
     ],
     "/_app": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/_app-86d60bbd6645ce79.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/_app-aa3493662e808880.js",
     ],
     "/_error": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/_error-6ef44d3954f25711.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/_error-209c0c82205a7c9f.js",
     ],
     "/css": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
       "static/css/ded6b86ab9cc0a1f.css",
-      "static/chunks/pages/css-c8aaa7211416a045.js",
+      "static/chunks/pages/css-62710339bc830ded.js",
     ],
     "/dynamic": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/dynamic-d53bb7f318f342c2.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/dynamic-8ed3486bb68dd6c6.js",
     ],
     "/edge-ssr": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/edge-ssr-1383106d4a3e7d72.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/edge-ssr-0db9f7bb610d3072.js",
     ],
     "/head": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/head-1db1c4be1a45662f.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/head-747416c4075e42aa.js",
     ],
     "/hooks": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/hooks-e6deee5b72a5b112.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/hooks-8b10205be7505244.js",
     ],
     "/image": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/2747-b146e0287b0310e9.js",
-      "static/chunks/pages/image-868472cd5e84efc9.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/6349-ee9aecde860d4832.js",
+      "static/chunks/pages/image-f90ae17c3ad1d38b.js",
     ],
     "/link": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/link-0ec374e48b2ce5d9.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/link-6ab9a67b348df1bf.js",
     ],
     "/routerDirect": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/routerDirect-1a34bfadbc088491.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/routerDirect-f132fb471e65a8b9.js",
     ],
     "/script": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/script-52320f59afbd096d.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/script-8e2028e44b8da2d9.js",
     ],
     "/withRouter": [
-      "static/chunks/webpack-d5f35f70cffceeb2.js",
-      "static/chunks/framework-e5a13aaa6ca25cd1.js",
-      "static/chunks/main-366f092127821b5d.js",
-      "static/chunks/pages/withRouter-3b1a16d3dfa21c16.js",
+      "static/chunks/webpack-c1a44bedea8fda3c.js",
+      "static/chunks/framework-8abd72ada1c074fb.js",
+      "static/chunks/main-e61965f2e7ad9f14.js",
+      "static/chunks/pages/withRouter-a86d259faa012c1c.js",
     ],
   },
 };
+globalThis.__BUILD_MANIFEST.lowPriorityFiles = [
+  "/static/" + process.env.__NEXT_BUILD_ID + "/_buildManifest.js",
+  "/static/" + process.env.__NEXT_BUILD_ID + "/_ssgManifest.js",
+];
Diff for middleware.js

Diff too large to display

Diff for edge-ssr.js
failed to diff
Diff for _buildManifest.js
@@ -611,35 +611,35 @@ self.__BUILD_MANIFEST = (function (a, b, c) {
       numHashes: NaN,
       bitArray: [],
     },
-    "/": ["static\u002Fchunks\u002Fpages\u002Findex-dda7d8b64d4ba15c.js"],
+    "/": ["static\u002Fchunks\u002Fpages\u002Findex-d95f7ec6af4d2644.js"],
     "/_error": [
-      "static\u002Fchunks\u002Fpages\u002F_error-6ef44d3954f25711.js",
+      "static\u002Fchunks\u002Fpages\u002F_error-209c0c82205a7c9f.js",
     ],
     "/css": [
       "static\u002Fcss\u002Fded6b86ab9cc0a1f.css",
-      "static\u002Fchunks\u002Fpages\u002Fcss-c8aaa7211416a045.js",
+      "static\u002Fchunks\u002Fpages\u002Fcss-62710339bc830ded.js",
     ],
     "/dynamic": [
-      "static\u002Fchunks\u002Fpages\u002Fdynamic-d53bb7f318f342c2.js",
+      "static\u002Fchunks\u002Fpages\u002Fdynamic-8ed3486bb68dd6c6.js",
     ],
     "/edge-ssr": [
-      "static\u002Fchunks\u002Fpages\u002Fedge-ssr-1383106d4a3e7d72.js",
+      "static\u002Fchunks\u002Fpages\u002Fedge-ssr-0db9f7bb610d3072.js",
     ],
-    "/head": ["static\u002Fchunks\u002Fpages\u002Fhead-1db1c4be1a45662f.js"],
-    "/hooks": ["static\u002Fchunks\u002Fpages\u002Fhooks-e6deee5b72a5b112.js"],
+    "/head": ["static\u002Fchunks\u002Fpages\u002Fhead-747416c4075e42aa.js"],
+    "/hooks": ["static\u002Fchunks\u002Fpages\u002Fhooks-8b10205be7505244.js"],
     "/image": [
-      "static\u002Fchunks\u002F2747-b146e0287b0310e9.js",
-      "static\u002Fchunks\u002Fpages\u002Fimage-868472cd5e84efc9.js",
+      "static\u002Fchunks\u002F6349-ee9aecde860d4832.js",
+      "static\u002Fchunks\u002Fpages\u002Fimage-f90ae17c3ad1d38b.js",
     ],
-    "/link": ["static\u002Fchunks\u002Fpages\u002Flink-0ec374e48b2ce5d9.js"],
+    "/link": ["static\u002Fchunks\u002Fpages\u002Flink-6ab9a67b348df1bf.js"],
     "/routerDirect": [
-      "static\u002Fchunks\u002Fpages\u002FrouterDirect-1a34bfadbc088491.js",
+      "static\u002Fchunks\u002Fpages\u002FrouterDirect-f132fb471e65a8b9.js",
     ],
     "/script": [
-      "static\u002Fchunks\u002Fpages\u002Fscript-52320f59afbd096d.js",
+      "static\u002Fchunks\u002Fpages\u002Fscript-8e2028e44b8da2d9.js",
     ],
     "/withRouter": [
-      "static\u002Fchunks\u002Fpages\u002FwithRouter-3b1a16d3dfa21c16.js",
+      "static\u002Fchunks\u002Fpages\u002FwithRouter-a86d259faa012c1c.js",
     ],
     sortedPages: [
       "\u002F",
Diff for dynamic-HASH.js
@@ -1,17 +1,24 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [2291],
   {
-    /***/ 1231: /***/ (
-      module,
+    /***/ 2604: /***/ (
+      __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
     ) => {
-      module.exports = __webpack_require__(4464);
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/dynamic",
+        function () {
+          return __webpack_require__(3643);
+        },
+      ]);
+      if (false) {
+      }
 
       /***/
     },
 
-    /***/ 2101: /***/ (
+    /***/ 3401: /***/ (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -38,24 +45,63 @@
       /***/
     },
 
-    /***/ 3458: /***/ (
+    /***/ 3643: /***/ (
       __unused_webpack_module,
-      __unused_webpack_exports,
+      __webpack_exports__,
       __webpack_require__
     ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/dynamic",
-        function () {
-          return __webpack_require__(9381);
-        },
-      ]);
-      if (false) {
-      }
+      "use strict";
+      __webpack_require__.r(__webpack_exports__);
+      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
+        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
+        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
+        /* harmony export */
+      });
+      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
+        __webpack_require__(3108);
+      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =
+        __webpack_require__(3973);
+      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =
+        /*#__PURE__*/ __webpack_require__.n(
+          next_dynamic__WEBPACK_IMPORTED_MODULE_1__
+        );
+
+      const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(
+        () =>
+          __webpack_require__
+            .e(/* import() */ 1596)
+            .then(__webpack_require__.bind(__webpack_require__, 1596))
+            .then((mod) => mod.Hello),
+        {
+          loadableGenerated: {
+            webpack: () => [/*require.resolve*/ 1596],
+          },
+        }
+      );
+      const Page = () =>
+        /*#__PURE__*/ (0, react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(
+          react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment,
+          {
+            children: [
+              /*#__PURE__*/ (0,
+              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", {
+                children: "testing next/dynamic size",
+              }),
+              /*#__PURE__*/ (0,
+              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
+                DynamicHello,
+                {}
+              ),
+            ],
+          }
+        );
+      var __N_SSP = true;
+      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = Page;
 
       /***/
     },
 
-    /***/ 4464: /***/ (module, exports, __webpack_require__) => {
+    /***/ 3660: /***/ (module, exports, __webpack_require__) => {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -88,7 +134,7 @@
         __webpack_require__(4312)
       );
       const _loadablesharedruntime = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(9799)
+        __webpack_require__(4539)
       );
       const isServerSide = "object" === "undefined";
       // Normalize loader to return the module as form { default: Component } for `React.lazy`.
@@ -188,63 +234,17 @@
       /***/
     },
 
-    /***/ 9381: /***/ (
-      __unused_webpack_module,
-      __webpack_exports__,
+    /***/ 3973: /***/ (
+      module,
+      __unused_webpack_exports,
       __webpack_require__
     ) => {
-      "use strict";
-      __webpack_require__.r(__webpack_exports__);
-      /* harmony export */ __webpack_require__.d(__webpack_exports__, {
-        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,
-        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,
-        /* harmony export */
-      });
-      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
-        __webpack_require__(3108);
-      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(1231);
-      /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =
-        /*#__PURE__*/ __webpack_require__.n(
-          next_dynamic__WEBPACK_IMPORTED_MODULE_1__
-        );
-
-      const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(
-        () =>
-          __webpack_require__
-            .e(/* import() */ 2086)
-            .then(__webpack_require__.bind(__webpack_require__, 2086))
-            .then((mod) => mod.Hello),
-        {
-          loadableGenerated: {
-            webpack: () => [/*require.resolve*/ 2086],
-          },
-        }
-      );
-      const Page = () =>
-        /*#__PURE__*/ (0, react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(
-          react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment,
-          {
-            children: [
-              /*#__PURE__*/ (0,
-              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("p", {
-                children: "testing next/dynamic size",
-              }),
-              /*#__PURE__*/ (0,
-              react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
-                DynamicHello,
-                {}
-              ),
-            ],
-          }
-        );
-      var __N_SSP = true;
-      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = Page;
+      module.exports = __webpack_require__(3660);
 
       /***/
     },
 
-    /***/ 9799: /***/ (
+    /***/ 4539: /***/ (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -286,7 +286,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(4312)
       );
-      const _loadablecontextsharedruntime = __webpack_require__(2101);
+      const _loadablecontextsharedruntime = __webpack_require__(3401);
       function resolve(obj) {
         return obj && obj.default ? obj.default : obj;
       }
@@ -524,7 +524,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(3458)
+      __webpack_exec__(2604)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for edge-ssr-HASH.js
@@ -1,7 +1,24 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [676],
   {
-    /***/ 1564: /***/ (
+    /***/ 7046: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/edge-ssr",
+        function () {
+          return __webpack_require__(7142);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 7142: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -20,30 +37,13 @@
 
       /***/
     },
-
-    /***/ 4300: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/edge-ssr",
-        function () {
-          return __webpack_require__(1564);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(4300)
+      __webpack_exec__(7046)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for head-HASH.js
@@ -1,34 +1,17 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [5350],
   {
-    /***/ 1548: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/head",
-        function () {
-          return __webpack_require__(4282);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 3952: /***/ (
+    /***/ 3770: /***/ (
       module,
       __unused_webpack_exports,
       __webpack_require__
     ) => {
-      module.exports = __webpack_require__(1653);
+      module.exports = __webpack_require__(9025);
 
       /***/
     },
 
-    /***/ 4282: /***/ (
+    /***/ 6236: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -43,7 +26,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(3108);
       /* harmony import */ var next_head__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(3952);
+        __webpack_require__(3770);
       /* harmony import */ var next_head__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_head__WEBPACK_IMPORTED_MODULE_1__
@@ -76,13 +59,30 @@
 
       /***/
     },
+
+    /***/ 6510: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/head",
+        function () {
+          return __webpack_require__(6236);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(1548)
+      __webpack_exec__(6510)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for index-HASH.js
@@ -1,24 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [3332],
   {
-    /***/ 6376: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/",
-        function () {
-          return __webpack_require__(8460);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 8460: /***/ (
+    /***/ 830: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -36,13 +19,30 @@
 
       /***/
     },
+
+    /***/ 1938: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/",
+        function () {
+          return __webpack_require__(830);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(6376)
+      __webpack_exec__(1938)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for link-HASH.js
@@ -1,7 +1,220 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [4672],
   {
-    /***/ 857: /***/ (module, exports, __webpack_require__) => {
+    /***/ 2774: /***/ (module, exports, __webpack_require__) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "useIntersection", {
+        enumerable: true,
+        get: function () {
+          return useIntersection;
+        },
+      });
+      const _react = __webpack_require__(4312);
+      const _requestidlecallback = __webpack_require__(9413);
+      const hasIntersectionObserver =
+        typeof IntersectionObserver === "function";
+      const observers = new Map();
+      const idList = [];
+      function createObserver(options) {
+        const id = {
+          root: options.root || null,
+          margin: options.rootMargin || "",
+        };
+        const existing = idList.find(
+          (obj) => obj.root === id.root && obj.margin === id.margin
+        );
+        let instance;
+        if (existing) {
+          instance = observers.get(existing);
+          if (instance) {
+            return instance;
+          }
+        }
+        const elements = new Map();
+        const observer = new IntersectionObserver((entries) => {
+          entries.forEach((entry) => {
+            const callback = elements.get(entry.target);
+            const isVisible =
+              entry.isIntersecting || entry.intersectionRatio > 0;
+            if (callback && isVisible) {
+              callback(isVisible);
+            }
+          });
+        }, options);
+        instance = {
+          id,
+          observer,
+          elements,
+        };
+        idList.push(id);
+        observers.set(id, instance);
+        return instance;
+      }
+      function observe(element, callback, options) {
+        const { id, observer, elements } = createObserver(options);
+        elements.set(element, callback);
+        observer.observe(element);
+        return function unobserve() {
+          elements.delete(element);
+          observer.unobserve(element);
+          // Destroy observer when there's nothing left to watch:
+          if (elements.size === 0) {
+            observer.disconnect();
+            observers.delete(id);
+            const index = idList.findIndex(
+              (obj) => obj.root === id.root && obj.margin === id.margin
+            );
+            if (index > -1) {
+              idList.splice(index, 1);
+            }
+          }
+        };
+      }
+      function useIntersection({ rootRef, rootMargin, disabled }) {
+        const isDisabled = disabled || !hasIntersectionObserver;
+        const [visible, setVisible] = (0, _react.useState)(false);
+        const elementRef = (0, _react.useRef)(null);
+        const setElement = (0, _react.useCallback)((element) => {
+          elementRef.current = element;
+        }, []);
+        (0, _react.useEffect)(() => {
+          if (hasIntersectionObserver) {
+            if (isDisabled || visible) return;
+            const element = elementRef.current;
+            if (element && element.tagName) {
+              const unobserve = observe(
+                element,
+                (isVisible) => isVisible && setVisible(isVisible),
+                {
+                  root: rootRef?.current,
+                  rootMargin,
+                }
+              );
+              return unobserve;
+            }
+          } else {
+            if (!visible) {
+              const idleCallback = (0,
+              _requestidlecallback.requestIdleCallback)(() => setVisible(true));
+              return () =>
+                (0, _requestidlecallback.cancelIdleCallback)(idleCallback);
+            }
+          }
+          // eslint-disable-next-line react-hooks/exhaustive-deps
+        }, [isDisabled, rootMargin, rootRef, visible, elementRef.current]);
+        const resetVisible = (0, _react.useCallback)(() => {
+          setVisible(false);
+        }, []);
+        return [setElement, visible, resetVisible];
+      }
+      if (
+        (typeof exports.default === "function" ||
+          (typeof exports.default === "object" && exports.default !== null)) &&
+        typeof exports.default.__esModule === "undefined"
+      ) {
+        Object.defineProperty(exports.default, "__esModule", {
+          value: true,
+        });
+        Object.assign(exports.default, exports);
+        module.exports = exports.default;
+      } //# sourceMappingURL=use-intersection.js.map
+
+      /***/
+    },
+
+    /***/ 3351: /***/ (module, exports, __webpack_require__) => {
+      "use strict";
+
+      Object.defineProperty(exports, "__esModule", {
+        value: true,
+      });
+      Object.defineProperty(exports, "useMergedRef", {
+        enumerable: true,
+        get: function () {
+          return useMergedRef;
+        },
+      });
+      const _react = __webpack_require__(4312);
+      function useMergedRef(refA, refB) {
+        const cleanupA = (0, _react.useRef)(null);
+        const cleanupB = (0, _react.useRef)(null);
+        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.
+        // (this happens often if the user doesn't pass a ref to Link/Form/Image)
+        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),
+        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs
+        // (because it hasn't been updated for React 19)
+        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.
+        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.
+        return (0, _react.useCallback)(
+          (current) => {
+            if (current === null) {
+              const cleanupFnA = cleanupA.current;
+              if (cleanupFnA) {
+                cleanupA.current = null;
+                cleanupFnA();
+              }
+              const cleanupFnB = cleanupB.current;
+              if (cleanupFnB) {
+                cleanupB.current = null;
+                cleanupFnB();
+              }
+            } else {
+              if (refA) {
+                cleanupA.current = applyRef(refA, current);
+              }
+              if (refB) {
+                cleanupB.current = applyRef(refB, current);
+              }
+            }
+          },
+          [refA, refB]
+        );
+      }
+      function applyRef(refA, current) {
+        if (typeof refA === "function") {
+          const cleanup = refA(current);
+          if (typeof cleanup === "function") {
+            return cleanup;
+          } else {
+            return () => refA(null);
+          }
+        } else {
+          refA.current = current;
+          return () => {
+            refA.current = null;
+          };
+        }
+      }
+      if (
+        (typeof exports.default === "function" ||
+          (typeof exports.default === "object" && exports.default !== null)) &&
+        typeof exports.default.__esModule === "undefined"
+      ) {
+        Object.defineProperty(exports.default, "__esModule", {
+          value: true,
+        });
+        Object.assign(exports.default, exports);
+        module.exports = exports.default;
+      } //# sourceMappingURL=use-merged-ref.js.map
+
+      /***/
+    },
+
+    /***/ 3440: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(4757);
+
+      /***/
+    },
+
+    /***/ 4757: /***/ (module, exports, __webpack_require__) => {
       "use strict";
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
@@ -23,22 +236,22 @@
           return useLinkStatus;
         },
       });
-      const _interop_require_wildcard = __webpack_require__(8781);
+      const _interop_require_wildcard = __webpack_require__(1162);
       const _jsxruntime = __webpack_require__(3108);
       const _react = /*#__PURE__*/ _interop_require_wildcard._(
         __webpack_require__(4312)
       );
-      const _resolvehref = __webpack_require__(4055);
-      const _islocalurl = __webpack_require__(7175);
-      const _formaturl = __webpack_require__(9674);
-      const _utils = __webpack_require__(7424);
-      const _addlocale = __webpack_require__(589);
-      const _routercontextsharedruntime = __webpack_require__(7010);
-      const _useintersection = __webpack_require__(2330);
-      const _getdomainlocale = __webpack_require__(7207);
-      const _addbasepath = __webpack_require__(9942);
-      const _usemergedref = __webpack_require__(8067);
-      const _erroronce = __webpack_require__(1945);
+      const _resolvehref = __webpack_require__(4691);
+      const _islocalurl = __webpack_require__(4763);
+      const _formaturl = __webpack_require__(3246);
+      const _utils = __webpack_require__(7372);
+      const _addlocale = __webpack_require__(1809);
+      const _routercontextsharedruntime = __webpack_require__(2254);
+      const _useintersection = __webpack_require__(2774);
+      const _getdomainlocale = __webpack_require__(8803);
+      const _addbasepath = __webpack_require__(5834);
+      const _usemergedref = __webpack_require__(3351);
+      const _erroronce = __webpack_require__(6021);
       const prefetched = new Set();
       function prefetch(router, href, as, options) {
         if (false) {
@@ -417,168 +630,43 @@
       /***/
     },
 
-    /***/ 1945: /***/ (__unused_webpack_module, exports) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "errorOnce", {
-        enumerable: true,
-        get: function () {
-          return errorOnce;
+    /***/ 5326: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/link",
+        function () {
+          return __webpack_require__(9058);
         },
-      });
-      let errorOnce = (_) => {};
+      ]);
       if (false) {
-      } //# sourceMappingURL=error-once.js.map
+      }
 
       /***/
     },
 
-    /***/ 2330: /***/ (module, exports, __webpack_require__) => {
+    /***/ 6021: /***/ (__unused_webpack_module, exports) => {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
         value: true,
       });
-      Object.defineProperty(exports, "useIntersection", {
+      Object.defineProperty(exports, "errorOnce", {
         enumerable: true,
         get: function () {
-          return useIntersection;
+          return errorOnce;
         },
       });
-      const _react = __webpack_require__(4312);
-      const _requestidlecallback = __webpack_require__(601);
-      const hasIntersectionObserver =
-        typeof IntersectionObserver === "function";
-      const observers = new Map();
-      const idList = [];
-      function createObserver(options) {
-        const id = {
-          root: options.root || null,
-          margin: options.rootMargin || "",
-        };
-        const existing = idList.find(
-          (obj) => obj.root === id.root && obj.margin === id.margin
-        );
-        let instance;
-        if (existing) {
-          instance = observers.get(existing);
-          if (instance) {
-            return instance;
-          }
-        }
-        const elements = new Map();
-        const observer = new IntersectionObserver((entries) => {
-          entries.forEach((entry) => {
-            const callback = elements.get(entry.target);
-            const isVisible =
-              entry.isIntersecting || entry.intersectionRatio > 0;
-            if (callback && isVisible) {
-              callback(isVisible);
-            }
-          });
-        }, options);
-        instance = {
-          id,
-          observer,
-          elements,
-        };
-        idList.push(id);
-        observers.set(id, instance);
-        return instance;
-      }
-      function observe(element, callback, options) {
-        const { id, observer, elements } = createObserver(options);
-        elements.set(element, callback);
-        observer.observe(element);
-        return function unobserve() {
-          elements.delete(element);
-          observer.unobserve(element);
-          // Destroy observer when there's nothing left to watch:
-          if (elements.size === 0) {
-            observer.disconnect();
-            observers.delete(id);
-            const index = idList.findIndex(
-              (obj) => obj.root === id.root && obj.margin === id.margin
-            );
-            if (index > -1) {
-              idList.splice(index, 1);
-            }
-          }
-        };
-      }
-      function useIntersection({ rootRef, rootMargin, disabled }) {
-        const isDisabled = disabled || !hasIntersectionObserver;
-        const [visible, setVisible] = (0, _react.useState)(false);
-        const elementRef = (0, _react.useRef)(null);
-        const setElement = (0, _react.useCallback)((element) => {
-          elementRef.current = element;
-        }, []);
-        (0, _react.useEffect)(() => {
-          if (hasIntersectionObserver) {
-            if (isDisabled || visible) return;
-            const element = elementRef.current;
-            if (element && element.tagName) {
-              const unobserve = observe(
-                element,
-                (isVisible) => isVisible && setVisible(isVisible),
-                {
-                  root: rootRef?.current,
-                  rootMargin,
-                }
-              );
-              return unobserve;
-            }
-          } else {
-            if (!visible) {
-              const idleCallback = (0,
-              _requestidlecallback.requestIdleCallback)(() => setVisible(true));
-              return () =>
-                (0, _requestidlecallback.cancelIdleCallback)(idleCallback);
-            }
-          }
-          // eslint-disable-next-line react-hooks/exhaustive-deps
-        }, [isDisabled, rootMargin, rootRef, visible, elementRef.current]);
-        const resetVisible = (0, _react.useCallback)(() => {
-          setVisible(false);
-        }, []);
-        return [setElement, visible, resetVisible];
-      }
-      if (
-        (typeof exports.default === "function" ||
-          (typeof exports.default === "object" && exports.default !== null)) &&
-        typeof exports.default.__esModule === "undefined"
-      ) {
-        Object.defineProperty(exports.default, "__esModule", {
-          value: true,
-        });
-        Object.assign(exports.default, exports);
-        module.exports = exports.default;
-      } //# sourceMappingURL=use-intersection.js.map
-
-      /***/
-    },
-
-    /***/ 4972: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/link",
-        function () {
-          return __webpack_require__(7600);
-        },
-      ]);
+      let errorOnce = (_) => {};
       if (false) {
-      }
+      } //# sourceMappingURL=error-once.js.map
 
       /***/
     },
 
-    /***/ 7207: /***/ (module, exports, __webpack_require__) => {
+    /***/ 8803: /***/ (module, exports, __webpack_require__) => {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -590,7 +678,7 @@
           return getDomainLocale;
         },
       });
-      const _normalizetrailingslash = __webpack_require__(151);
+      const _normalizetrailingslash = __webpack_require__(1315);
       const basePath =
         /* unused pure expression or super */ null && (false || "");
       function getDomainLocale(path, locale, locales, domainLocales) {
@@ -614,7 +702,7 @@
       /***/
     },
 
-    /***/ 7600: /***/ (
+    /***/ 9058: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -629,7 +717,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(3108);
       /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(7830);
+        __webpack_require__(3440);
       /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_link__WEBPACK_IMPORTED_MODULE_1__
@@ -659,101 +747,13 @@
 
       /***/
     },
-
-    /***/ 7830: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(857);
-
-      /***/
-    },
-
-    /***/ 8067: /***/ (module, exports, __webpack_require__) => {
-      "use strict";
-
-      Object.defineProperty(exports, "__esModule", {
-        value: true,
-      });
-      Object.defineProperty(exports, "useMergedRef", {
-        enumerable: true,
-        get: function () {
-          return useMergedRef;
-        },
-      });
-      const _react = __webpack_require__(4312);
-      function useMergedRef(refA, refB) {
-        const cleanupA = (0, _react.useRef)(null);
-        const cleanupB = (0, _react.useRef)(null);
-        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.
-        // (this happens often if the user doesn't pass a ref to Link/Form/Image)
-        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),
-        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs
-        // (because it hasn't been updated for React 19)
-        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.
-        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.
-        return (0, _react.useCallback)(
-          (current) => {
-            if (current === null) {
-              const cleanupFnA = cleanupA.current;
-              if (cleanupFnA) {
-                cleanupA.current = null;
-                cleanupFnA();
-              }
-              const cleanupFnB = cleanupB.current;
-              if (cleanupFnB) {
-                cleanupB.current = null;
-                cleanupFnB();
-              }
-            } else {
-              if (refA) {
-                cleanupA.current = applyRef(refA, current);
-              }
-              if (refB) {
-                cleanupB.current = applyRef(refB, current);
-              }
-            }
-          },
-          [refA, refB]
-        );
-      }
-      function applyRef(refA, current) {
-        if (typeof refA === "function") {
-          const cleanup = refA(current);
-          if (typeof cleanup === "function") {
-            return cleanup;
-          } else {
-            return () => refA(null);
-          }
-        } else {
-          refA.current = current;
-          return () => {
-            refA.current = null;
-          };
-        }
-      }
-      if (
-        (typeof exports.default === "function" ||
-          (typeof exports.default === "object" && exports.default !== null)) &&
-        typeof exports.default.__esModule === "undefined"
-      ) {
-        Object.defineProperty(exports.default, "__esModule", {
-          value: true,
-        });
-        Object.assign(exports.default, exports);
-        module.exports = exports.default;
-      } //# sourceMappingURL=use-merged-ref.js.map
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(4972)
+      __webpack_exec__(5326)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for routerDirect-HASH.js
@@ -1,17 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [188],
   {
-    /***/ 1179: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(9864);
-
-      /***/
-    },
-
-    /***/ 1640: /***/ (
+    /***/ 2014: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -26,7 +16,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(3108);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(1179);
+        __webpack_require__(4169);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_router__WEBPACK_IMPORTED_MODULE_1__
@@ -46,7 +36,17 @@
       /***/
     },
 
-    /***/ 2172: /***/ (
+    /***/ 4169: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(9700);
+
+      /***/
+    },
+
+    /***/ 4414: /***/ (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -54,7 +54,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/routerDirect",
         function () {
-          return __webpack_require__(1640);
+          return __webpack_require__(2014);
         },
       ]);
       if (false) {
@@ -68,7 +68,7 @@
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(2172)
+      __webpack_exec__(4414)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for script-HASH.js
@@ -1,17 +1,34 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [1209],
   {
-    /***/ 4977: /***/ (
+    /***/ 2591: /***/ (
       module,
       __unused_webpack_exports,
       __webpack_require__
     ) => {
-      module.exports = __webpack_require__(326);
+      module.exports = __webpack_require__(4634);
 
       /***/
     },
 
-    /***/ 5887: /***/ (
+    /***/ 5030: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/script",
+        function () {
+          return __webpack_require__(7557);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 7557: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -26,7 +43,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(3108);
       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(4977);
+        __webpack_require__(2591);
       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_script__WEBPACK_IMPORTED_MODULE_1__
@@ -58,30 +75,13 @@
 
       /***/
     },
-
-    /***/ 6268: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/script",
-        function () {
-          return __webpack_require__(5887);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(6268)
+      __webpack_exec__(5030)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for withRouter-HASH.js
@@ -1,34 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [3263],
   {
-    /***/ 1179: /***/ (
-      module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      module.exports = __webpack_require__(9864);
-
-      /***/
-    },
-
-    /***/ 2028: /***/ (
-      __unused_webpack_module,
-      __unused_webpack_exports,
-      __webpack_require__
-    ) => {
-      (window.__NEXT_P = window.__NEXT_P || []).push([
-        "/withRouter",
-        function () {
-          return __webpack_require__(4501);
-        },
-      ]);
-      if (false) {
-      }
-
-      /***/
-    },
-
-    /***/ 4501: /***/ (
+    /***/ 559: /***/ (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -43,7 +16,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(3108);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(1179);
+        __webpack_require__(4169);
       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_router__WEBPACK_IMPORTED_MODULE_1__
@@ -61,13 +34,40 @@
 
       /***/
     },
+
+    /***/ 726: /***/ (
+      __unused_webpack_module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      (window.__NEXT_P = window.__NEXT_P || []).push([
+        "/withRouter",
+        function () {
+          return __webpack_require__(559);
+        },
+      ]);
+      if (false) {
+      }
+
+      /***/
+    },
+
+    /***/ 4169: /***/ (
+      module,
+      __unused_webpack_exports,
+      __webpack_require__
+    ) => {
+      module.exports = __webpack_require__(9700);
+
+      /***/
+    },
   },
   /******/ (__webpack_require__) => {
     // webpackRuntimeModules
     /******/ var __webpack_exec__ = (moduleId) =>
       __webpack_require__((__webpack_require__.s = moduleId));
     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>
-      __webpack_exec__(2028)
+      __webpack_exec__(726)
     );
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for 2161-HASH.js

Diff too large to display

Diff for 2747-HASH.js

Diff too large to display

Diff for 4322-HASH.js
failed to diff
Diff for ec793fe8-HASH.js
@@ -1,13 +1,13 @@
 "use strict";
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
-  [5639],
+  [8580],
   {
-    /***/ 5808: /***/ (
+    /***/ 2314: /***/ (
       __unused_webpack_module,
       exports,
       __webpack_require__
     ) => {
-      /* provided dependency */ var process = __webpack_require__(6075);
+      /* provided dependency */ var process = __webpack_require__(2433);
       /**
        * @license React
        * react-dom-client.production.js
@@ -22,9 +22,9 @@
  Modernizr 3.0.0pre (Custom Build) | MIT
 */
 
-      var Scheduler = __webpack_require__(212),
-        React = __webpack_require__(8947),
-        ReactDOM = __webpack_require__(4629);
+      var Scheduler = __webpack_require__(9018),
+        React = __webpack_require__(6009),
+        ReactDOM = __webpack_require__(5932);
       function formatProdErrorMessage(code) {
         var url = "https://react.dev/errors/" + code;
         if (1 < arguments.length) {
@@ -47,16 +47,18 @@
         );
       }
       function getNearestMountedFiber(fiber) {
-        for (
-          var node = fiber, nextNode = node;
-          nextNode && !nextNode.alternate;
-
-        )
-          (node = nextNode),
-            0 !== (node.flags & 4098) && (fiber = node.return),
-            (nextNode = node.return);
-        for (; node.return; ) node = node.return;
-        return 3 === node.tag ? fiber : null;
+        var node = fiber,
+          nearestMounted = fiber;
+        if (fiber.alternate) for (; node.return; ) node = node.return;
+        else {
+          fiber = node;
+          do
+            (node = fiber),
+              0 !== (node.flags & 4098) && (nearestMounted = node.return),
+              (fiber = node.return);
+          while (fiber);
+        }
+        return 3 === node.tag ? nearestMounted : null;
       }
       function getSuspenseInstanceFromFiber(fiber) {
         if (13 === fiber.tag) {
@@ -170,7 +172,7 @@
       ) {
         for (; null !== child; ) {
           if (
-            ((5 === child.tag || 6 === child.tag) && fn(child, a, b, c)) ||
+            (5 === child.tag && fn(child, a, b, c)) ||
             ((22 !== child.tag || null === child.memoizedState) &&
               (searchWithinHosts || 5 !== child.tag) &&
               traverseVisibleHostChildren(
@@ -219,7 +221,6 @@
       function getInstanceFromHostFiber(fiber) {
         switch (fiber.tag) {
           case 5:
-          case 6:
             return fiber.stateNode;
           case 3:
             return fiber.stateNode.containerInfo;
@@ -2710,7 +2711,7 @@
             (workInProgress.flags = 0),
             (workInProgress.subtreeFlags = 0),
             (workInProgress.deletions = null));
-        workInProgress.flags = current.flags & 133169152;
+        workInProgress.flags = current.flags & 132120576;
         workInProgress.childLanes = current.childLanes;
         workInProgress.lanes = current.lanes;
         workInProgress.child = current.child;
@@ -2732,7 +2733,7 @@
         return workInProgress;
       }
       function resetWorkInProgress(workInProgress, renderLanes) {
-        workInProgress.flags &= 133169154;
+        workInProgress.flags &= 132120578;
         var current = workInProgress.alternate;
         null === current
           ? ((workInProgress.childLanes = 0),
@@ -5659,7 +5660,7 @@
             hook
           );
         if (
-          0 === (renderLanes & 106) ||
+          0 === (renderLanes & 42) ||
           (0 !== (renderLanes & 1073741824) &&
             0 === (workInProgressRootRenderLanes & 261930))
         )
@@ -5935,32 +5936,32 @@
         }
       }
       var ContextOnlyDispatcher = {
-          readContext: readContext,
-          use: use,
-          useCallback: throwInvalidHookError,
-          useContext: throwInvalidHookError,
-          useEffect: throwInvalidHookError,
-          useImperativeHandle: throwInvalidHookError,
-          useLayoutEffect: throwInvalidHookError,
-          useInsertionEffect: throwInvalidHookError,
-          useMemo: throwInvalidHookError,
-          useReducer: throwInvalidHookError,
-          useRef: throwInvalidHookError,
-          useState: throwInvalidHookError,
-          useDebugValue: throwInvalidHookError,
-          useDeferredValue: throwInvalidHookError,
-          useTransition: throwInvalidHookError,
-          useSyncExternalStore: throwInvalidHookError,
-          useId: throwInvalidHookError,
-          useHostTransitionStatus: throwInvalidHookError,
-          useFormState: throwInvalidHookError,
-          useActionState: throwInvalidHookError,
-          useOptimistic: throwInvalidHookError,
-          useMemoCache: throwInvalidHookError,
-          useCacheRefresh: throwInvalidHookError,
-          useEffectEvent: throwInvalidHookError,
-        },
-        HooksDispatcherOnMount = {
+        readContext: readContext,
+        use: use,
+        useCallback: throwInvalidHookError,
+        useContext: throwInvalidHookError,
+        useEffect: throwInvalidHookError,
+        useImperativeHandle: throwInvalidHookError,
+        useLayoutEffect: throwInvalidHookError,
+        useInsertionEffect: throwInvalidHookError,
+        useMemo: throwInvalidHookError,
+        useReducer: throwInvalidHookError,
+        useRef: throwInvalidHookError,
+        useState: throwInvalidHookError,
+        useDebugValue: throwInvalidHookError,
+        useDeferredValue: throwInvalidHookError,
+        useTransition: throwInvalidHookError,
+        useSyncExternalStore: throwInvalidHookError,
+        useId: throwInvalidHookError,
+        useHostTransitionStatus: throwInvalidHookError,
+        useFormState: throwInvalidHookError,
+        useActionState: throwInvalidHookError,
+        useOptimistic: throwInvalidHookError,
+        useMemoCache: throwInvalidHookError,
+        useCacheRefresh: throwInvalidHookError,
+      };
+      ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError;
+      var HooksDispatcherOnMount = {
           readContext: readContext,
           use: use,
           useCallback: function (callback, deps) {
@@ -6226,66 +6227,66 @@
           },
           useMemoCache: useMemoCache,
           useCacheRefresh: updateRefresh,
-          useEffectEvent: updateEvent,
+        };
+      HooksDispatcherOnUpdate.useEffectEvent = updateEvent;
+      var HooksDispatcherOnRerender = {
+        readContext: readContext,
+        use: use,
+        useCallback: updateCallback,
+        useContext: readContext,
+        useEffect: updateEffect,
+        useImperativeHandle: updateImperativeHandle,
+        useInsertionEffect: updateInsertionEffect,
+        useLayoutEffect: updateLayoutEffect,
+        useMemo: updateMemo,
+        useReducer: rerenderReducer,
+        useRef: updateRef,
+        useState: function () {
+          return rerenderReducer(basicStateReducer);
         },
-        HooksDispatcherOnRerender = {
-          readContext: readContext,
-          use: use,
-          useCallback: updateCallback,
-          useContext: readContext,
-          useEffect: updateEffect,
-          useImperativeHandle: updateImperativeHandle,
-          useInsertionEffect: updateInsertionEffect,
-          useLayoutEffect: updateLayoutEffect,
-          useMemo: updateMemo,
-          useReducer: rerenderReducer,
-          useRef: updateRef,
-          useState: function () {
-            return rerenderReducer(basicStateReducer);
-          },
-          useDebugValue: mountDebugValue,
-          useDeferredValue: function (value, initialValue) {
-            var hook = updateWorkInProgressHook();
-            return null === currentHook
-              ? mountDeferredValueImpl(hook, value, initialValue)
-              : updateDeferredValueImpl(
-                  hook,
-                  currentHook.memoizedState,
-                  value,
-                  initialValue
-                );
-          },
-          useTransition: function () {
-            var booleanOrThenable = rerenderReducer(basicStateReducer)[0],
-              start = updateWorkInProgressHook().memoizedState;
-            return [
-              "boolean" === typeof booleanOrThenable
-                ? booleanOrThenable
-                : useThenable(booleanOrThenable),
-              start,
-            ];
-          },
-          useSyncExternalStore: updateSyncExternalStore,
-          useId: updateId,
-          useHostTransitionStatus: useHostTransitionStatus,
-          useFormState: rerenderActionState,
-          useActionState: rerenderActionState,
-          useOptimistic: function (passthrough, reducer) {
-            var hook = updateWorkInProgressHook();
-            if (null !== currentHook)
-              return updateOptimisticImpl(
+        useDebugValue: mountDebugValue,
+        useDeferredValue: function (value, initialValue) {
+          var hook = updateWorkInProgressHook();
+          return null === currentHook
+            ? mountDeferredValueImpl(hook, value, initialValue)
+            : updateDeferredValueImpl(
                 hook,
-                currentHook,
-                passthrough,
-                reducer
+                currentHook.memoizedState,
+                value,
+                initialValue
               );
-            hook.baseState = passthrough;
-            return [passthrough, hook.queue.dispatch];
-          },
-          useMemoCache: useMemoCache,
-          useCacheRefresh: updateRefresh,
-          useEffectEvent: updateEvent,
-        };
+        },
+        useTransition: function () {
+          var booleanOrThenable = rerenderReducer(basicStateReducer)[0],
+            start = updateWorkInProgressHook().memoizedState;
+          return [
+            "boolean" === typeof booleanOrThenable
+              ? booleanOrThenable
+              : useThenable(booleanOrThenable),
+            start,
+          ];
+        },
+        useSyncExternalStore: updateSyncExternalStore,
+        useId: updateId,
+        useHostTransitionStatus: useHostTransitionStatus,
+        useFormState: rerenderActionState,
+        useActionState: rerenderActionState,
+        useOptimistic: function (passthrough, reducer) {
+          var hook = updateWorkInProgressHook();
+          if (null !== currentHook)
+            return updateOptimisticImpl(
+              hook,
+              currentHook,
+              passthrough,
+              reducer
+            );
+          hook.baseState = passthrough;
+          return [passthrough, hook.queue.dispatch];
+        },
+        useMemoCache: useMemoCache,
+        useCacheRefresh: updateRefresh,
+      };
+      HooksDispatcherOnRerender.useEffectEvent = updateEvent;
       function applyDerivedStateFromProps(
         workInProgress,
         ctor,
@@ -7657,7 +7658,7 @@
               mode: "hidden",
               children: nextProps.children,
             })),
-            (nextProps.subtreeFlags = prevState.subtreeFlags & 133169152),
+            (nextProps.subtreeFlags = prevState.subtreeFlags & 132120576),
             null !== digest
               ? (nextPrimaryChildren = createWorkInProgress(
                   digest,
@@ -8596,13 +8597,6 @@
             );
           case 30:
             return (
-              null === workInProgress.stateNode &&
-                (workInProgress.stateNode = {
-                  autoName: null,
-                  paired: null,
-                  clones: null,
-                  ref: null,
-                }),
               (props = workInProgress.pendingProps),
               null != props.name && "auto" !== props.name
                 ? (workInProgress.flags |=
@@ -8720,8 +8714,8 @@
         if (didBailout)
           for (var child$111 = completedWork.child; null !== child$111; )
             (newChildLanes |= child$111.lanes | child$111.childLanes),
-              (subtreeFlags |= child$111.subtreeFlags & 133169152),
-              (subtreeFlags |= child$111.flags & 133169152),
+              (subtreeFlags |= child$111.subtreeFlags & 132120576),
+              (subtreeFlags |= child$111.flags & 132120576),
               (child$111.return = completedWork),
               (child$111 = child$111.sibling);
         else
@@ -10114,9 +10108,7 @@
                 (viewTransitionCancelableChildren = []),
               viewTransitionCancelableChildren.push(
                 instance,
-                0 === viewTransitionHostInstanceIdx
-                  ? oldName
-                  : oldName + "_" + viewTransitionHostInstanceIdx,
+                oldName,
                 child.memoizedProps
               ));
             viewTransitionHostInstanceIdx++;
@@ -12676,7 +12668,7 @@
                 if (0 !== getNextLanes(shouldTimeSlice, 0, !0)) break a;
                 pendingEffectsLanes = lanes;
                 shouldTimeSlice.timeoutHandle = scheduleTimeout(
-                  completeRootWhenReady.bind(
+                  commitRootWhenReady.bind(
                     null,
                     shouldTimeSlice,
                     forceSync,
@@ -12697,7 +12689,7 @@
                 );
                 break a;
               }
-              completeRootWhenReady(
+              commitRootWhenReady(
                 shouldTimeSlice,
                 forceSync,
                 workInProgressRootRecoverableErrors,
@@ -12719,7 +12711,7 @@
         } while (1);
         ensureRootIsScheduled(root$jscomp$0);
       }
-      function completeRootWhenReady(
+      function commitRootWhenReady(
         root,
         finishedWork,
         recoverableErrors,
@@ -12791,7 +12783,7 @@
           ) {
             pendingEffectsLanes = lanes;
             root.cancelPendingCommit = subtreeFlags(
-              completeRoot.bind(
+              commitRoot.bind(
                 null,
                 root,
                 finishedWork,
@@ -12802,7 +12794,6 @@
                 spawnedLane,
                 updatedLanes,
                 suspendedRetryLanes,
-                didSkipSuspendedSiblings,
                 exitStatus,
                 suspendedCommitReason,
                 null,
@@ -12818,7 +12809,7 @@
             );
             return;
           }
-        completeRoot(
+        commitRoot(
           root,
           finishedWork,
           lanes,
@@ -12828,7 +12819,6 @@
           spawnedLane,
           updatedLanes,
           suspendedRetryLanes,
-          didSkipSuspendedSiblings,
           exitStatus,
           suspendedCommitReason
         );
@@ -13265,14 +13255,6 @@
             break;
           case 5:
             resetHooksOnUnwind(next);
-            var fiber = next;
-            fiber === hydrationParentFiber &&
-              (isHydrating
-                ? (popToNextHostParent(fiber),
-                  5 === fiber.tag &&
-                    null != fiber.stateNode &&
-                    (nextHydratableInstance = fiber.stateNode))
-                : (popToNextHostParent(fiber), (isHydrating = !0)));
           default:
             unwindInterruptedWork(current, next),
               (next = workInProgress =
@@ -13400,7 +13382,7 @@
         workInProgressRootExitStatus = 6;
         workInProgress = null;
       }
-      function completeRoot(
+      function commitRoot(
         root,
         finishedWork,
         lanes,
@@ -13410,7 +13392,6 @@
         spawnedLane,
         updatedLanes,
         suspendedRetryLanes,
-        didSkipSuspendedSiblings,
         exitStatus,
         suspendedState
       ) {
@@ -13422,92 +13403,77 @@
         if (null !== finishedWork) {
           if (finishedWork === root.current)
             throw Error(formatProdErrorMessage(177));
+          didIncludeRenderPhaseUpdate =
+            finishedWork.lanes | finishedWork.childLanes;
+          didIncludeRenderPhaseUpdate |= concurrentlyUpdatedLanes;
+          markRootFinished(
+            root,
+            lanes,
+            didIncludeRenderPhaseUpdate,
+            spawnedLane,
+            updatedLanes,
+            suspendedRetryLanes
+          );
           root === workInProgressRoot &&
             ((workInProgress = workInProgressRoot = null),
             (workInProgressRootRenderLanes = 0));
           pendingFinishedWork = finishedWork;
           pendingEffectsRoot = root;
           pendingEffectsLanes = lanes;
+          pendingEffectsRemainingLanes = didIncludeRenderPhaseUpdate;
           pendingPassiveTransitions = transitions;
           pendingRecoverableErrors = recoverableErrors;
-          commitRoot(
-            root,
-            finishedWork,
-            lanes,
-            spawnedLane,
-            updatedLanes,
-            suspendedRetryLanes,
-            suspendedState
-          );
-        }
-      }
-      function commitRoot(
-        root,
-        finishedWork,
-        lanes,
-        spawnedLane,
-        updatedLanes,
-        suspendedRetryLanes,
-        suspendedState
-      ) {
-        var remainingLanes = finishedWork.lanes | finishedWork.childLanes;
-        pendingEffectsRemainingLanes = remainingLanes;
-        remainingLanes |= concurrentlyUpdatedLanes;
-        markRootFinished(
-          root,
-          lanes,
-          remainingLanes,
-          spawnedLane,
-          updatedLanes,
-          suspendedRetryLanes
-        );
-        pendingViewTransitionEvents = null;
-        (lanes & 335544064) === lanes
-          ? ((pendingTransitionTypes = claimQueuedTransitionTypes(root)),
-            (spawnedLane = 10262))
-          : ((pendingTransitionTypes = null), (spawnedLane = 10256));
-        0 !== (finishedWork.subtreeFlags & spawnedLane) ||
-        0 !== (finishedWork.flags & spawnedLane)
-          ? ((root.callbackNode = null),
-            (root.callbackPriority = 0),
-            scheduleCallback$1(NormalPriority$1, function () {
-              flushPassiveEffects();
-              return null;
-            }))
-          : ((root.callbackNode = null), (root.callbackPriority = 0));
-        shouldStartViewTransition = !1;
-        spawnedLane = 0 !== (finishedWork.flags & 13878);
-        if (0 !== (finishedWork.subtreeFlags & 13878) || spawnedLane) {
-          spawnedLane = ReactSharedInternals.T;
-          ReactSharedInternals.T = null;
-          updatedLanes = ReactDOMSharedInternals.p;
-          ReactDOMSharedInternals.p = 2;
-          suspendedRetryLanes = executionContext;
-          executionContext |= 4;
-          try {
-            commitBeforeMutationEffects(root, finishedWork, lanes);
-          } finally {
-            (executionContext = suspendedRetryLanes),
-              (ReactDOMSharedInternals.p = updatedLanes),
-              (ReactSharedInternals.T = spawnedLane);
+          pendingViewTransitionEvents = null;
+          (lanes & 335544064) === lanes
+            ? ((pendingTransitionTypes = claimQueuedTransitionTypes(root)),
+              (recoverableErrors = 10262))
+            : ((pendingTransitionTypes = null), (recoverableErrors = 10256));
+          0 !== (finishedWork.subtreeFlags & recoverableErrors) ||
+          0 !== (finishedWork.flags & recoverableErrors)
+            ? ((root.callbackNode = null),
+              (root.callbackPriority = 0),
+              scheduleCallback$1(NormalPriority$1, function () {
+                flushPassiveEffects();
+                return null;
+              }))
+            : ((root.callbackNode = null), (root.callbackPriority = 0));
+          shouldStartViewTransition = !1;
+          recoverableErrors = 0 !== (finishedWork.flags & 13878);
+          if (0 !== (finishedWork.subtreeFlags & 13878) || recoverableErrors) {
+            recoverableErrors = ReactSharedInternals.T;
+            ReactSharedInternals.T = null;
+            transitions = ReactDOMSharedInternals.p;
+            ReactDOMSharedInternals.p = 2;
+            spawnedLane = executionContext;
+            executionContext |= 4;
+            try {
+              commitBeforeMutationEffects(root, finishedWork, lanes);
+            } finally {
+              (executionContext = spawnedLane),
+                (ReactDOMSharedInternals.p = transitions),
+                (ReactSharedInternals.T = recoverableErrors);
+            }
           }
+          finishedWork = shouldStartViewTransition;
+          pendingEffectsStatus = 1;
+          finishedWork
+            ? (pendingViewTransition = startViewTransition(
+                suspendedState,
+                root.containerInfo,
+                pendingTransitionTypes,
+                flushMutationEffects,
+                flushLayoutEffects,
+                flushAfterMutationEffects,
+                flushSpawnedWork,
+                flushPassiveEffects,
+                reportViewTransitionError,
+                null,
+                null
+              ))
+            : (flushMutationEffects(),
+              flushLayoutEffects(),
+              flushSpawnedWork());
         }
-        pendingEffectsStatus = 1;
-        shouldStartViewTransition
-          ? (pendingViewTransition = startViewTransition(
-              suspendedState,
-              root.containerInfo,
-              pendingTransitionTypes,
-              flushMutationEffects,
-              flushLayoutEffects,
-              flushAfterMutationEffects,
-              flushSpawnedWork,
-              flushPassiveEffects,
-              reportViewTransitionError,
-              null,
-              null
-            ))
-          : (flushMutationEffects(), flushLayoutEffects(), flushSpawnedWork());
       }
       function reportViewTransitionError(error) {
         if (0 !== pendingEffectsStatus) {
@@ -13685,7 +13651,6 @@
       function flushSpawnedWork() {
         if (4 === pendingEffectsStatus || 3 === pendingEffectsStatus) {
           pendingEffectsStatus = 0;
-          var committedViewTransition = pendingViewTransition;
           pendingViewTransition = null;
           requestPaint();
           var root = pendingEffectsRoot,
@@ -13740,22 +13705,15 @@
           recoverableErrors = pendingViewTransitionEvents;
           onRecoverableError = pendingTransitionTypes;
           pendingTransitionTypes = null;
-          if (
-            null !== recoverableErrors &&
-            ((pendingViewTransitionEvents = null),
-            null === onRecoverableError && (onRecoverableError = []),
-            null !== committedViewTransition)
-          )
+          if (null !== recoverableErrors)
             for (
-              recoverableError = 0;
+              pendingViewTransitionEvents = null,
+                null === onRecoverableError && (onRecoverableError = []),
+                recoverableError = 0;
               recoverableError < recoverableErrors.length;
               recoverableError++
             )
-              (finishedWork = (0, recoverableErrors[recoverableError])(
-                onRecoverableError
-              )),
-                void 0 !== finishedWork &&
-                  committedViewTransition.finished.finally(finishedWork);
+              (0, recoverableErrors[recoverableError])(onRecoverableError);
           0 !== (pendingEffectsLanes & 3) && flushPendingEffects();
           ensureRootIsScheduled(root);
           passiveSubtreeMask = root.pendingLanes;
@@ -14193,6 +14151,16 @@
           ? actionProp
           : sanitizeURL("" + actionProp);
       }
+      function createFormDataWithSubmitter(form, submitter) {
+        var temp = submitter.ownerDocument.createElement("input");
+        temp.name = submitter.name;
+        temp.value = submitter.value;
+        form.id && temp.setAttribute("form", form.id);
+        submitter.parentNode.insertBefore(temp, submitter);
+        form = new FormData(form);
+        temp.parentNode.removeChild(temp);
+        return form;
+      }
       function extractEvents$1(
         dispatchQueue,
         domEventName,
@@ -14231,7 +14199,12 @@
                 listener: function () {
                   if (nativeEvent.defaultPrevented) {
                     if (0 !== currentEventTransitionLane) {
-                      var formData = new FormData(nativeEventTarget, submitter);
+                      var formData = submitter
+                        ? createFormDataWithSubmitter(
+                            nativeEventTarget,
+                            submitter
+                          )
+                        : new FormData(nativeEventTarget);
                       startHostTransition(
                         maybeTargetInst,
                         {
@@ -14247,7 +14220,12 @@
                   } else
                     "function" === typeof action &&
                       (event.preventDefault(),
-                      (formData = new FormData(nativeEventTarget, submitter)),
+                      (formData = submitter
+                        ? createFormDataWithSubmitter(
+                            nativeEventTarget,
+                            submitter
+                          )
+                        : new FormData(nativeEventTarget)),
                       startHostTransition(
                         maybeTargetInst,
                         {
@@ -14267,20 +14245,20 @@
         }
       }
       for (
-        var i$jscomp$inline_1695 = 0;
-        i$jscomp$inline_1695 < simpleEventPluginEvents.length;
-        i$jscomp$inline_1695++
+        var i$jscomp$inline_1691 = 0;
+        i$jscomp$inline_1691 < simpleEventPluginEvents.length;
+        i$jscomp$inline_1691++
       ) {
-        var eventName$jscomp$inline_1696 =
-            simpleEventPluginEvents[i$jscomp$inline_1695],
-          domEventName$jscomp$inline_1697 =
-            eventName$jscomp$inline_1696.toLowerCase(),
-          capitalizedEvent$jscomp$inline_1698 =
-            eventName$jscomp$inline_1696[0].toUpperCase() +
-            eventName$jscomp$inline_1696.slice(1);
+        var eventName$jscomp$inline_1692 =
+            simpleEventPluginEvents[i$jscomp$inline_1691],
+          domEventName$jscomp$inline_1693 =
+            eventName$jscomp$inline_1692.toLowerCase(),
+          capitalizedEvent$jscomp$inline_1694 =
+            eventName$jscomp$inline_1692[0].toUpperCase() +
+            eventName$jscomp$inline_1692.slice(1);
         registerSimpleEvent(
-          domEventName$jscomp$inline_1697,
-          "on" + capitalizedEvent$jscomp$inline_1698
+          domEventName$jscomp$inline_1693,
+          "on" + capitalizedEvent$jscomp$inline_1694
         );
       }
       registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
@@ -16865,7 +16843,6 @@
         );
       };
       function setFocusOnFiberIfFocusable(fiber, focusOptions) {
-        if (6 === fiber.tag) return !1;
         fiber = getInstanceFromHostFiber(fiber);
         return setFocusIfFocusable(fiber, focusOptions);
       }
@@ -16918,7 +16895,6 @@
         );
       };
       function observeChild(child, observer) {
-        if (6 === child.tag) return !1;
         child = getInstanceFromHostFiber(child);
         observer.observe(child);
         return !1;
@@ -16938,7 +16914,6 @@
           ));
       };
       function unobserveChild(child, observer) {
-        if (6 === child.tag) return !1;
         child = getInstanceFromHostFiber(child);
         observer.unobserve(child);
         return !1;
@@ -16956,14 +16931,8 @@
         return rects;
       };
       function collectClientRects(child, rects) {
-        if (6 === child.tag) {
-          child = child.stateNode;
-          var range = child.ownerDocument.createRange();
-          range.selectNodeContents(child);
-          rects.push.apply(rects, range.getClientRects());
-        } else
-          (child = getInstanceFromHostFiber(child)),
-            rects.push.apply(rects, child.getClientRects());
+        child = getInstanceFromHostFiber(child);
+        rects.push.apply(rects, child.getClientRects());
         return !1;
       }
       FragmentInstance.prototype.getRootNode = function (getRootNodeOptions) {
@@ -17210,25 +17179,11 @@
             result = resolvedAlignToTop ? children.length - 1 : 0;
             result !== (resolvedAlignToTop ? -1 : children.length);
 
-          ) {
-            parentHostFiber = children[result];
-            if (6 === parentHostFiber.tag) {
-              parentHostFiber = parentHostFiber.stateNode;
-              var range = parentHostFiber.ownerDocument.createRange();
-              range.selectNodeContents(parentHostFiber);
-              parentHostFiber = range.getBoundingClientRect();
-              window.scrollTo(
-                window.scrollX + parentHostFiber.left,
-                resolvedAlignToTop
-                  ? window.scrollY + parentHostFiber.top
-                  : window.scrollY + parentHostFiber.bottom - window.innerHeight
-              );
-            } else
-              getInstanceFromHostFiber(parentHostFiber).scrollIntoView(
-                alignToTop
-              );
-            result += resolvedAlignToTop ? -1 : 1;
-          }
+          )
+            getInstanceFromHostFiber(children[result]).scrollIntoView(
+              alignToTop
+            ),
+              (result += resolvedAlignToTop ? -1 : 1);
       };
       function commitNewChildToFragmentInstance(
         childInstance,
@@ -19181,16 +19136,16 @@
           0 === i && attemptExplicitHydrationTarget(target);
         }
       };
-      var isomorphicReactPackageVersion$jscomp$inline_2044 = React.version;
+      var isomorphicReactPackageVersion$jscomp$inline_2040 = React.version;
       if (
-        "19.3.0-canary-da641178-20260129" !==
-        isomorphicReactPackageVersion$jscomp$inline_2044
+        "19.3.0-canary-f93b9fd4-20251217" !==
+        isomorphicReactPackageVersion$jscomp$inline_2040
       )
         throw Error(
           formatProdErrorMessage(
             527,
-            isomorphicReactPackageVersion$jscomp$inline_2044,
-            "19.3.0-canary-da641178-20260129"
+            isomorphicReactPackageVersion$jscomp$inline_2040,
+            "19.3.0-canary-f93b9fd4-20251217"
           )
         );
       ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -19210,24 +19165,24 @@
           null === componentOrElement ? null : componentOrElement.stateNode;
         return componentOrElement;
       };
-      var internals$jscomp$inline_2634 = {
+      var internals$jscomp$inline_2628 = {
         bundleType: 0,
-        version: "19.3.0-canary-da641178-20260129",
+        version: "19.3.0-canary-f93b9fd4-20251217",
         rendererPackageName: "react-dom",
         currentDispatcherRef: ReactSharedInternals,
-        reconcilerVersion: "19.3.0-canary-da641178-20260129",
+        reconcilerVersion: "19.3.0-canary-f93b9fd4-20251217",
       };
       if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
-        var hook$jscomp$inline_2635 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
+        var hook$jscomp$inline_2629 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
         if (
-          !hook$jscomp$inline_2635.isDisabled &&
-          hook$jscomp$inline_2635.supportsFiber
+          !hook$jscomp$inline_2629.isDisabled &&
+          hook$jscomp$inline_2629.supportsFiber
         )
           try {
-            (rendererID = hook$jscomp$inline_2635.inject(
-              internals$jscomp$inline_2634
+            (rendererID = hook$jscomp$inline_2629.inject(
+              internals$jscomp$inline_2628
             )),
-              (injectedHook = hook$jscomp$inline_2635);
+              (injectedHook = hook$jscomp$inline_2629);
           } catch (err) {}
       }
       exports.createRoot = function (container, options) {
@@ -19317,7 +19272,7 @@
         listenToAllSupportedEvents(container);
         return new ReactDOMHydrationRoot(initialChildren);
       };
-      exports.version = "19.3.0-canary-da641178-20260129";
+      exports.version = "19.3.0-canary-f93b9fd4-20251217";
 
       /***/
     },
Diff for main-HASH.js

Diff too large to display

Diff for app-page-exp..ntime.dev.js
failed to diff
Diff for app-page-exp..time.prod.js
failed to diff
Diff for app-page-tur..ntime.dev.js
failed to diff
Diff for app-page-tur..time.prod.js
failed to diff
Diff for app-page-tur..ntime.dev.js
failed to diff
Diff for app-page-tur..time.prod.js
failed to diff
Diff for app-page.runtime.dev.js
failed to diff
Diff for app-page.runtime.prod.js
failed to diff
Diff for app-route-ex..ntime.dev.js

Diff too large to display

Diff for app-route-ex..time.prod.js

Diff too large to display

Diff for app-route-tu..ntime.dev.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route-tu..ntime.dev.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route.runtime.dev.js

Diff too large to display

Diff for app-route.ru..time.prod.js

Diff too large to display

Diff for pages-api-tu..ntime.dev.js

Diff too large to display

Diff for pages-api-tu..time.prod.js

Diff too large to display

Diff for pages-api.runtime.dev.js

Diff too large to display

Diff for pages-api.ru..time.prod.js

Diff too large to display

Diff for pages-turbo...ntime.dev.js

Diff too large to display

Diff for pages-turbo...time.prod.js

Diff too large to display

Diff for pages.runtime.dev.js

Diff too large to display

Diff for pages.runtime.prod.js

Diff too large to display

Diff for server.runtime.prod.js

Diff too large to display

Commit: e2f2d80

@nextjs-bot
Copy link
Collaborator

nextjs-bot commented Feb 2, 2026

Tests Passed

@codspeed-hq
Copy link

codspeed-hq bot commented Feb 2, 2026

CodSpeed Performance Report

Merging this PR will degrade performance by 12.32%

Comparing hl/backport-89316 (e2f2d80) with canary (b0facee)1

Summary

❌ 11 regressed benchmarks
✅ 6 untouched benchmarks
⏩ 3 skipped benchmarks2

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation build[framer-motion-all] 2.8 s 3 s -8.24%
Simulation build[date-fns-all] 2.1 s 2.2 s -6.91%
Simulation build[lucide-react-all] 7.3 s 8.3 s -12.32%
Simulation build[framer-motion-single] 2.1 s 2.2 s -5.14%
Simulation build[joy] 2 s 2 s -3.96%
Simulation build[mui] 2.9 s 3.1 s -6.04%
Simulation build[shiki] 5.2 s 5.4 s -3.12%
Simulation jsonwebtoken.js[full] 318.6 ms 362.9 ms -12.2%
Simulation packages-bundle.js[full] 1.1 s 1.1 s -4%
Simulation packages-bundle.js[tracing] 886.6 ms 931.9 ms -4.85%
Simulation jsonwebtoken.js[tracing] 280.5 ms 319.7 ms -12.27%

Footnotes

  1. No successful run was found on next-16-1 (3db9063) during the generation of this report, so canary (b0facee) was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

  2. 3 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@unstubbable
Copy link
Contributor Author

  1. No successful run was found on next-16-1 (3db9063) during the generation of this report, so canary (b0facee) was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

This explains the reported perf changes.

@unstubbable unstubbable merged commit cba6144 into next-16-1 Feb 2, 2026
261 of 266 checks passed
@unstubbable unstubbable deleted the hl/backport-89316 branch February 2, 2026 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

created-by: Next.js team PRs by the Next.js team. tests Turbopack Related to Turbopack with Next.js.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants