From 2fe006cffd1b861e54c0d19101e8426dc57a06e2 Mon Sep 17 00:00:00 2001 From: vercel-release-bot Date: Wed, 9 Oct 2024 16:27:15 +0000 Subject: [PATCH 1/5] Update `react@experimental` --- package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index ce38a48dbdd18..464547b5e0f5e 100644 --- a/package.json +++ b/package.json @@ -214,13 +214,13 @@ "react-dom": "19.0.0-rc-2d16326d-20240930", "react-dom-17": "npm:react-dom@17.0.2", "react-dom-builtin": "npm:react-dom@19.0.0-rc-2d16326d-20240930", - "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-2d16326d-20240930", - "react-experimental-builtin": "npm:react@0.0.0-experimental-2d16326d-20240930", + "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-d5bba18b-20241009", + "react-experimental-builtin": "npm:react@0.0.0-experimental-d5bba18b-20241009", "react-is-builtin": "npm:react-is@19.0.0-rc-2d16326d-20240930", "react-server-dom-turbopack": "19.0.0-rc-2d16326d-20240930", - "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-2d16326d-20240930", + "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009", "react-server-dom-webpack": "19.0.0-rc-2d16326d-20240930", - "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-2d16326d-20240930", + "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009", "react-ssr-prepass": "1.0.8", "react-virtualized": "9.22.3", "relay-compiler": "13.0.2", @@ -231,7 +231,7 @@ "sass": "1.54.0", "satori": "0.10.9", "scheduler-builtin": "npm:scheduler@0.25.0-rc-2d16326d-20240930", - "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-2d16326d-20240930", + "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-d5bba18b-20241009", "seedrandom": "3.0.5", "semver": "7.3.7", "shell-quote": "1.7.3", From 801cb8965a6169c33ad0251a4a28dd3a3f317aad Mon Sep 17 00:00:00 2001 From: vercel-release-bot Date: Wed, 9 Oct 2024 16:27:15 +0000 Subject: [PATCH 2/5] Update `react@rc` --- package.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 464547b5e0f5e..c327967a8ee75 100644 --- a/package.json +++ b/package.json @@ -208,18 +208,18 @@ "pretty-bytes": "5.3.0", "pretty-ms": "7.0.0", "random-seed": "0.3.0", - "react": "19.0.0-rc-2d16326d-20240930", + "react": "19.0.0-rc-d5bba18b-20241009", "react-17": "npm:react@17.0.2", - "react-builtin": "npm:react@19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930", + "react-builtin": "npm:react@19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009", "react-dom-17": "npm:react-dom@17.0.2", - "react-dom-builtin": "npm:react-dom@19.0.0-rc-2d16326d-20240930", + "react-dom-builtin": "npm:react-dom@19.0.0-rc-d5bba18b-20241009", "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-d5bba18b-20241009", "react-experimental-builtin": "npm:react@0.0.0-experimental-d5bba18b-20241009", - "react-is-builtin": "npm:react-is@19.0.0-rc-2d16326d-20240930", - "react-server-dom-turbopack": "19.0.0-rc-2d16326d-20240930", + "react-is-builtin": "npm:react-is@19.0.0-rc-d5bba18b-20241009", + "react-server-dom-turbopack": "19.0.0-rc-d5bba18b-20241009", "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009", - "react-server-dom-webpack": "19.0.0-rc-2d16326d-20240930", + "react-server-dom-webpack": "19.0.0-rc-d5bba18b-20241009", "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009", "react-ssr-prepass": "1.0.8", "react-virtualized": "9.22.3", @@ -230,7 +230,7 @@ "resolve-from": "5.0.0", "sass": "1.54.0", "satori": "0.10.9", - "scheduler-builtin": "npm:scheduler@0.25.0-rc-2d16326d-20240930", + "scheduler-builtin": "npm:scheduler@0.25.0-rc-d5bba18b-20241009", "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-d5bba18b-20241009", "seedrandom": "3.0.5", "semver": "7.3.7", @@ -271,10 +271,10 @@ "@babel/traverse": "7.22.5", "@types/react": "npm:types-react@19.0.0-rc.0", "@types/react-dom": "npm:types-react-dom@19.0.0-rc.0", - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930", - "react-is": "19.0.0-rc-2d16326d-20240930", - "scheduler": "0.25.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009", + "react-is": "19.0.0-rc-d5bba18b-20241009", + "scheduler": "0.25.0-rc-d5bba18b-20241009" }, "patchedDependencies": { "webpack-sources@3.2.3": "patches/webpack-sources@3.2.3.patch" From 2900351a76370840cd65f00c03bbad6a7adcc07f Mon Sep 17 00:00:00 2001 From: vercel-release-bot Date: Wed, 9 Oct 2024 16:27:15 +0000 Subject: [PATCH 3/5] Updated peer dependency references --- examples/reproduction-template/package.json | 4 ++-- packages/create-next-app/templates/index.ts | 2 +- packages/next/package.json | 4 ++-- run-tests.js | 2 +- test/.stats-app/package.json | 4 ++-- test/e2e/next-test/first-time-setup-js/package.json | 4 ++-- test/e2e/next-test/first-time-setup-ts/package.json | 4 ++-- test/lib/next-modes/base.ts | 2 +- 8 files changed, 13 insertions(+), 13 deletions(-) diff --git a/examples/reproduction-template/package.json b/examples/reproduction-template/package.json index 51065260756e0..cb25bc99c8ce0 100644 --- a/examples/reproduction-template/package.json +++ b/examples/reproduction-template/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "next": "canary", - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009" }, "devDependencies": { "@types/node": "20.12.12", diff --git a/packages/create-next-app/templates/index.ts b/packages/create-next-app/templates/index.ts index 81595566bf5bb..5d005dcc43cde 100644 --- a/packages/create-next-app/templates/index.ts +++ b/packages/create-next-app/templates/index.ts @@ -13,7 +13,7 @@ import { GetTemplateFileArgs, InstallTemplateArgs } from "./types"; // Do not rename or format. sync-react script relies on this line. // prettier-ignore -const nextjsReactPeerVersion = "19.0.0-rc-2d16326d-20240930"; +const nextjsReactPeerVersion = "19.0.0-rc-d5bba18b-20241009"; /** * Get the file path for a given file in a template, e.g. "next.config.js". diff --git a/packages/next/package.json b/packages/next/package.json index ddba2154ed480..cc7e35fa40bb8 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -107,8 +107,8 @@ "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.41.2", "babel-plugin-react-compiler": "*", - "react": "^18.2.0 || 19.0.0-rc-2d16326d-20240930", - "react-dom": "^18.2.0 || 19.0.0-rc-2d16326d-20240930", + "react": "^18.2.0 || 19.0.0-rc-d5bba18b-20241009", + "react-dom": "^18.2.0 || 19.0.0-rc-d5bba18b-20241009", "sass": "^1.3.0" }, "peerDependenciesMeta": { diff --git a/run-tests.js b/run-tests.js index 3208165475fb0..355818576ef8f 100644 --- a/run-tests.js +++ b/run-tests.js @@ -20,7 +20,7 @@ const { getTestFilter } = require('./test/get-test-filter') // Do not rename or format. sync-react script relies on this line. // prettier-ignore -const nextjsReactPeerVersion = "19.0.0-rc-2d16326d-20240930"; +const nextjsReactPeerVersion = "19.0.0-rc-d5bba18b-20241009"; let argv = require('yargs/yargs')(process.argv.slice(2)) .string('type') diff --git a/test/.stats-app/package.json b/test/.stats-app/package.json index 3d2ec1401d3e0..d997ec69fef46 100644 --- a/test/.stats-app/package.json +++ b/test/.stats-app/package.json @@ -4,8 +4,8 @@ "license": "MIT", "dependencies": { "next": "latest", - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009" }, "engines": { "node": ">=18.18.0" diff --git a/test/e2e/next-test/first-time-setup-js/package.json b/test/e2e/next-test/first-time-setup-js/package.json index 16d3e117a3045..622220bcb96a7 100644 --- a/test/e2e/next-test/first-time-setup-js/package.json +++ b/test/e2e/next-test/first-time-setup-js/package.json @@ -8,7 +8,7 @@ }, "dependencies": { "next": "canary", - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009" } } diff --git a/test/e2e/next-test/first-time-setup-ts/package.json b/test/e2e/next-test/first-time-setup-ts/package.json index 99cd0dfc58c72..3ccbb18a40f4e 100644 --- a/test/e2e/next-test/first-time-setup-ts/package.json +++ b/test/e2e/next-test/first-time-setup-ts/package.json @@ -8,8 +8,8 @@ }, "dependencies": { "next": "canary", - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009" }, "devDependencies": { "@types/react": "^18", diff --git a/test/lib/next-modes/base.ts b/test/lib/next-modes/base.ts index 6fea66295cc55..15abdfeaceb50 100644 --- a/test/lib/next-modes/base.ts +++ b/test/lib/next-modes/base.ts @@ -51,7 +51,7 @@ type OmitFirstArgument = F extends ( // Do not rename or format. sync-react script relies on this line. // prettier-ignore -const nextjsReactPeerVersion = "19.0.0-rc-2d16326d-20240930"; +const nextjsReactPeerVersion = "19.0.0-rc-d5bba18b-20241009"; export class NextInstance { protected files: FileRef | { [filename: string]: string | FileRef } From 91573d86c9c5af4850e0b4efb6a4aaa80e46b476 Mon Sep 17 00:00:00 2001 From: vercel-release-bot Date: Wed, 9 Oct 2024 16:27:28 +0000 Subject: [PATCH 4/5] Update lockfile --- pnpm-lock.yaml | 386 ++++++++++++++++++++++++------------------------- 1 file changed, 193 insertions(+), 193 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b5d8a16c5d6a6..cd6c72fbe8c54 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,10 +15,10 @@ overrides: '@babel/traverse': 7.22.5 '@types/react': npm:types-react@19.0.0-rc.0 '@types/react-dom': npm:types-react-dom@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 - react-is: 19.0.0-rc-2d16326d-20240930 - scheduler: 0.25.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 + react-is: 19.0.0-rc-d5bba18b-20241009 + scheduler: 0.25.0-rc-d5bba18b-20241009 patchedDependencies: webpack-sources@3.2.3: @@ -64,7 +64,7 @@ importers: version: 11.11.0 '@emotion/react': specifier: 11.11.1 - version: 11.11.1(react@19.0.0-rc-2d16326d-20240930)(types-react@19.0.0-rc.0) + version: 11.11.1(react@19.0.0-rc-d5bba18b-20241009)(types-react@19.0.0-rc.0) '@fullhuman/postcss-purgecss': specifier: 1.3.0 version: 1.3.0 @@ -73,7 +73,7 @@ importers: version: 2.2.1(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))) '@mdx-js/react': specifier: 2.2.1 - version: 2.2.1(react@19.0.0-rc-2d16326d-20240930) + version: 2.2.1(react@19.0.0-rc-d5bba18b-20241009) '@next/bundle-analyzer': specifier: workspace:* version: link:packages/next-bundle-analyzer @@ -142,7 +142,7 @@ importers: version: 6.1.2(@jest/globals@29.7.0)(@types/jest@29.5.5)(jest@29.7.0(@types/node@20.12.3)(babel-plugin-macros@3.1.0)) '@testing-library/react': specifier: ^15.0.5 - version: 15.0.7(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(types-react@19.0.0-rc.0) + version: 15.0.7(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(types-react@19.0.0-rc.0) '@types/busboy': specifier: 1.5.3 version: 1.5.3 @@ -453,50 +453,50 @@ importers: specifier: 0.3.0 version: 0.3.0 react: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930 + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009 react-17: specifier: npm:react@17.0.2 version: react@17.0.2 react-builtin: - specifier: npm:react@19.0.0-rc-2d16326d-20240930 - version: react@19.0.0-rc-2d16326d-20240930 + specifier: npm:react@19.0.0-rc-d5bba18b-20241009 + version: react@19.0.0-rc-d5bba18b-20241009 react-dom: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) react-dom-17: specifier: npm:react-dom@17.0.2 - version: react-dom@17.0.2(react@19.0.0-rc-2d16326d-20240930) + version: react-dom@17.0.2(react@19.0.0-rc-d5bba18b-20241009) react-dom-builtin: - specifier: npm:react-dom@19.0.0-rc-2d16326d-20240930 - version: react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + specifier: npm:react-dom@19.0.0-rc-d5bba18b-20241009 + version: react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) react-dom-experimental-builtin: - specifier: npm:react-dom@0.0.0-experimental-2d16326d-20240930 - version: react-dom@0.0.0-experimental-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + specifier: npm:react-dom@0.0.0-experimental-d5bba18b-20241009 + version: react-dom@0.0.0-experimental-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) react-experimental-builtin: - specifier: npm:react@0.0.0-experimental-2d16326d-20240930 - version: react@0.0.0-experimental-2d16326d-20240930 + specifier: npm:react@0.0.0-experimental-d5bba18b-20241009 + version: react@0.0.0-experimental-d5bba18b-20241009 react-is-builtin: - specifier: npm:react-is@19.0.0-rc-2d16326d-20240930 - version: react-is@19.0.0-rc-2d16326d-20240930 + specifier: npm:react-is@19.0.0-rc-d5bba18b-20241009 + version: react-is@19.0.0-rc-d5bba18b-20241009 react-server-dom-turbopack: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930) + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009) react-server-dom-turbopack-experimental: - specifier: npm:react-server-dom-turbopack@0.0.0-experimental-2d16326d-20240930 - version: react-server-dom-turbopack@0.0.0-experimental-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930) + specifier: npm:react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009 + version: react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009) react-server-dom-webpack: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))) + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))) react-server-dom-webpack-experimental: - specifier: npm:react-server-dom-webpack@0.0.0-experimental-2d16326d-20240930 - version: react-server-dom-webpack@0.0.0-experimental-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))) + specifier: npm:react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009 + version: react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))) react-ssr-prepass: specifier: 1.0.8 - version: 1.0.8(react-is@19.0.0-rc-f90a6bcc-20240827)(react@19.0.0-rc-2d16326d-20240930) + version: 1.0.8(react-is@19.0.0-rc-f90a6bcc-20240827)(react@19.0.0-rc-d5bba18b-20241009) react-virtualized: specifier: 9.22.3 - version: 9.22.3(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930) + version: 9.22.3(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009) relay-compiler: specifier: 13.0.2 version: 13.0.2 @@ -519,11 +519,11 @@ importers: specifier: 0.10.9 version: 0.10.9 scheduler-builtin: - specifier: npm:scheduler@0.25.0-rc-2d16326d-20240930 - version: scheduler@0.25.0-rc-2d16326d-20240930 + specifier: npm:scheduler@0.25.0-rc-d5bba18b-20241009 + version: scheduler@0.25.0-rc-d5bba18b-20241009 scheduler-experimental-builtin: - specifier: npm:scheduler@0.0.0-experimental-2d16326d-20240930 - version: scheduler@0.0.0-experimental-2d16326d-20240930 + specifier: npm:scheduler@0.0.0-experimental-d5bba18b-20241009 + version: scheduler@0.0.0-experimental-d5bba18b-20241009 seedrandom: specifier: 3.0.5 version: 3.0.5 @@ -538,16 +538,16 @@ importers: version: 6.0.0 styled-components: specifier: 6.0.0-rc.3 - version: 6.0.0-rc.3(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930) + version: 6.0.0-rc.3(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009) styled-jsx: specifier: 5.1.6 - version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-2d16326d-20240930) + version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-d5bba18b-20241009) styled-jsx-plugin-postcss: specifier: 3.0.2 version: 3.0.2 swr: specifier: ^2.2.4 - version: 2.2.4(react@19.0.0-rc-2d16326d-20240930) + version: 2.2.4(react@19.0.0-rc-d5bba18b-20241009) tailwindcss: specifier: 3.2.7 version: 3.2.7(postcss@8.4.31) @@ -863,7 +863,7 @@ importers: version: 0.5.13 babel-plugin-react-compiler: specifier: '*' - version: 0.0.0-experimental-58c2b1c-20241007 + version: 0.0.0-experimental-58c2b1c-20241009 busboy: specifier: 1.6.0 version: 1.6.0 @@ -874,17 +874,17 @@ importers: specifier: 8.4.31 version: 8.4.31 react: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930 + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009 react-dom: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) sass: specifier: ^1.3.0 version: 1.77.8 styled-jsx: specifier: 5.1.6 - version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-2d16326d-20240930) + version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-d5bba18b-20241009) optionalDependencies: sharp: specifier: ^0.33.5 @@ -1465,7 +1465,7 @@ importers: version: 1.0.35 unistore: specifier: 3.4.1 - version: 3.4.1(react@19.0.0-rc-2d16326d-20240930) + version: 3.4.1(react@19.0.0-rc-d5bba18b-20241009) util: specifier: 0.12.4 version: 0.12.4 @@ -1614,8 +1614,8 @@ importers: packages/third-parties: dependencies: react: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930 + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009 third-party-capital: specifier: 1.0.20 version: 1.0.20 @@ -1675,14 +1675,14 @@ importers: specifier: 29.5.0 version: 29.5.0 react: - specifier: 19.0.0-rc-2d16326d-20240930 - version: 19.0.0-rc-2d16326d-20240930 + specifier: 19.0.0-rc-d5bba18b-20241009 + version: 19.0.0-rc-d5bba18b-20241009 react-test-renderer: specifier: 18.2.0 - version: 18.2.0(react@19.0.0-rc-2d16326d-20240930) + version: 18.2.0(react@19.0.0-rc-d5bba18b-20241009) styled-jsx: specifier: ^5.1.2 - version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-2d16326d-20240930) + version: 5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-d5bba18b-20241009) turbopack/packages/devlow-bench: dependencies: @@ -3326,7 +3326,7 @@ packages: resolution: {integrity: sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==} peerDependencies: '@types/react': '*' - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -3343,7 +3343,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks@1.0.1': resolution: {integrity: sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 '@emotion/utils@1.2.1': resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==} @@ -3536,14 +3536,14 @@ packages: '@floating-ui/react-dom@2.1.0': resolution: {integrity: sha512-lNzj5EQmEKn5FFKc04+zasr09h/uX8RtJRNj5gUXsSQIXHVWTVh+hVAg1vOMCexkX8EgvemMvIFpQfkosnVNyA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 '@floating-ui/react@0.26.16': resolution: {integrity: sha512-HEf43zxZNAI/E781QIVpYSF3K2VH4TTYZpqecjdsFkjsaU1EbaWcM++kw0HXFffj7gDUcBFevX8s0rQGQpxkow==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 '@floating-ui/utils@0.2.2': resolution: {integrity: sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw==} @@ -4183,13 +4183,13 @@ packages: resolution: {integrity: sha512-l9ypojKN3PjwO1CSLIsqxi7mA25+7w+xc71Q+JuCCREI0tuGwkZsKbIOpuTATIJOjPh8ycLiW7QxX1LYsRTq6w==} peerDependencies: '@mantine/hooks': 7.10.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 '@mantine/hooks@7.11.2': resolution: {integrity: sha512-jhyVe/sbDEG2U8rr2lMecUPgQxcfr5hh9HazqGfkS7ZRIMDO7uJ947yAcTMGGkp5Lxtt5TBFt1Cb6tiB2/1agg==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 '@mapbox/node-pre-gyp@1.0.5': resolution: {integrity: sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==} @@ -4206,7 +4206,7 @@ packages: '@mdx-js/react@2.2.1': resolution: {integrity: sha512-YdXcMcEnqZhzql98RNrqYo9cEhTTesBiCclEtoiQUbJwx87q9453GTapYU6kJ8ZZ2ek1Vp25SiAXEFy5O/eAPw==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 '@mswjs/cookies@1.1.0': resolution: {integrity: sha512-0ZcCVQxifZmhwNBoQIrystCb+2sWBY2Zw8lpfJBPCHGCA/HWqehITeCRVIv4VMy8MPlaHo2w2pTHFV2pFfqKPw==} @@ -4889,8 +4889,8 @@ packages: engines: {node: '>=18'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -5966,8 +5966,8 @@ packages: peerDependencies: '@babel/core': 7.22.5 - babel-plugin-react-compiler@0.0.0-experimental-58c2b1c-20241007: - resolution: {integrity: sha512-46X+FyBb7q+EVea7EFa1GNWpEkvE/ZNZr9jqHKfy5dOvusCJC8qHUzVRSMRikky73MNhLk9XziQ16v+mzs1c9g==} + babel-plugin-react-compiler@0.0.0-experimental-58c2b1c-20241009: + resolution: {integrity: sha512-/DSwpfz7c1hK5dpxxlLxQJtvXCF3RjN3ZCaJ43NM4BEvzTpaS0C0jasXVBEUIFumBcdaoirFbfZkyk9htY+6Xw==} babel-plugin-react-compiler@0.0.0-experimental-c23de8d-20240515: resolution: {integrity: sha512-0XN2gmpT55QtAz5n7d5g91y1AuO9tRhWBaLgCRyc4ExHrlr7+LfxW+YTb3mOwxngkkiggwM8HyYsaEK9MqhnlQ==} @@ -10366,7 +10366,7 @@ packages: lucide-react@0.383.0: resolution: {integrity: sha512-13xlG0CQCJtzjSQYwwJ3WRqMHtRj3EXmLlorrARt7y+IHnxUCp3XyFNL1DfaGySWxHObDvnu1u1dV+0VMKHUSg==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} @@ -12581,28 +12581,28 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true - react-dom@0.0.0-experimental-2d16326d-20240930: - resolution: {integrity: sha512-T+BiGsehI8sG/erfwttI6LmcAk+MQLMJs5bBhZwW5MSsVxyEMNugnYMLBhDTEMxXfUFu/7fYnBQmOzi6AJOdqA==} + react-dom@0.0.0-experimental-d5bba18b-20241009: + resolution: {integrity: sha512-uA29KHY4f2gxhqdTIH4nhvMlcFAEOj+TKkKPgA7Ng1Q3/W0nEsCP+inda4UaCkSaen63GPmfIL22gIrEiKkt6Q==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-dom@17.0.2: resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 - react-dom@19.0.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-eBmzUwg2n0SkG+LFoQbRM/b6GyKSDFDnUEPWS+Oepbv6O6XCLSEzoJzPu7bFgNzL0tOA8gjjtP4ZJChcasldqA==} + react-dom@19.0.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-cYtIXF073LqcDuRhDlJ2LQ/sdrGSPXqtynihzgw8y76fyV1YRO1CKXKhx1yukaglNlKrDK//b7g8cWjh51PsxA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-dom@19.0.0-rc-f90a6bcc-20240827: resolution: {integrity: sha512-oUa/reDvGtjRcxi8u+GYHaDHanudaO28+G+Wvxm50CItW1xwIFN2Nn7foJxxDS9lFLGdRWZvjxldZEPAUSuXbg==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 - react-is@19.0.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-UH59Lq0Pd2CCEyvyJXZYfaV4SI29UIXttGY7kLzGxPIqEjH9vzyJdV7ikJsv2jktjmEiq9itakFL9YtgieWGGQ==} + react-is@19.0.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-te3qyKRQipJN9/sc9Jk0lE8c1W2m2+RHjECMRYXP6LAjIF4jKL/v0+jA89bo5Zf22brlWdO7aR/GkDrkIo+8qQ==} react-is@19.0.0-rc-f90a6bcc-20240827: resolution: {integrity: sha512-1tXoLFzVbqHAQeY3CwpyF5IYbkwgSoNHhrhS8qOrfiZIh2461h/C1BP/JVIxwyL51wHhUgLsAc/M8g0OcEhV1A==} @@ -12613,8 +12613,8 @@ packages: react-number-format@5.4.0: resolution: {integrity: sha512-NWdICrqLhI7rAS8yUeLVd6Wr4cN7UjJ9IBTS0f/a9i7UB4x4Ti70kGnksBtZ7o4Z7YRbvCMMR/jQmkoOBa/4fg==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 react-refresh@0.12.0: resolution: {integrity: sha512-suLIhrU2IHKL5JEKR/fAwJv7bbeq4kJ+pJopf77jHwuR+HmJS/HbrPIGsTBUVfw7tXPOmYv7UJ7PCaN49e8x4A==} @@ -12625,7 +12625,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -12635,58 +12635,58 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true - react-server-dom-turbopack@0.0.0-experimental-2d16326d-20240930: - resolution: {integrity: sha512-bBU20o2XdhV8jg/Jj7hP4zRy/rNz4P77f7TwrQ1RjNIT9+ymy+BmMm+V9hhqDqAm/yUM7XhuXNpPCO4RaZIb0Q==} + react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009: + resolution: {integrity: sha512-RaZXrMqaO3DIbcG36j6GGGAfuveNQl43aiax8ZzEDC3fRRhR32kzjWJ8NT+g7RJEOzrefNy1Cy71OmTYFn0RuQ==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 - react-server-dom-turbopack@19.0.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-D6TSjx+H/x4bPIH9fd2Jy+bxGVK9q2Qu9RZqMCe0opb64YN6KYu+9G3p2q00Nx1vTheQSowfiKPVEWLdwZatQQ==} + react-server-dom-turbopack@19.0.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-tUY6KMUCWdfvNA+hugZG8BXSDUw4lRSx2P0tSPEZEBSwjuybNn6NEUBPlaKYUNM6mg2ehdzCDgNIhlB9J+yFdg==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 - react-server-dom-webpack@0.0.0-experimental-2d16326d-20240930: - resolution: {integrity: sha512-5Vca3LqZSFtEP6ssJhtLDU2YxWUiuZicD9eF5xWKJfW7kEbN53wh84rIhJmFJoZU+axCLPhhBiH8t1SjGN7fsQ==} + react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009: + resolution: {integrity: sha512-k/fcZmoi1yowaRr7rhovO/Z5VvSAscnEMCgtK85EfFNAjTNbAbZFgvZAgW83XKjY9XsM8u4aZslcWyH+syqZQw==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 webpack: 5.90.0 - react-server-dom-webpack@19.0.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-fdXXLJwk+uurnUeVqttDeEa0x8/3PjbztKmMwlj0Lp67/GASZ06QPOSkzfSuZElB09BUrHmjGmVy2clz1JtIWQ==} + react-server-dom-webpack@19.0.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-ZfQxC5mY7UemrrFFdIPiWLvx7cvTBxsLqcyq7i4ItEolS/7zfRrOpIwSHEH/jU4YV5VoWl0/U3M7FGPyUPAGWw==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 webpack: 5.90.0 react-shallow-renderer@16.15.0: resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-ssr-prepass@1.0.8: resolution: {integrity: sha512-O0gfRA1SaK+9ITKxqfnXsej2jF+OHGP/+GxD4unROQaM/0/UczGF9fuF+wTboxaQoKdIf4FvS3h/OigWh704VA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-is: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-is: 19.0.0-rc-d5bba18b-20241009 react-style-singleton@2.2.1: resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -12694,30 +12694,30 @@ packages: react-test-renderer@18.2.0: resolution: {integrity: sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-textarea-autosize@8.5.3: resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-virtualized@9.22.3: resolution: {integrity: sha512-MKovKMxWTcwPSxE1kK1HcheQTWfuCxAuBoSTf2gwyMM21NdX/PXUhnoP8Uc5dRKd+nKm8v41R36OellhdCpkrw==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 - react@0.0.0-experimental-2d16326d-20240930: - resolution: {integrity: sha512-5YyNWeER8j/MORtS2ujfEjx0J/fgp3HdwtsCpmeJC5MdpqTqpA59TLxaeQZgumaB5BMQmatgw6oVThzQkYB/Ag==} + react@0.0.0-experimental-d5bba18b-20241009: + resolution: {integrity: sha512-y1rr0eaSa4BLLKlNP+XQEWCBIf95lMycyXptrTlLh26lUnVaKORS472j0nK/09B0k8e5shtX9ZGJcEWE7B4UOQ==} engines: {node: '>=0.10.0'} react@17.0.2: resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} engines: {node: '>=0.10.0'} - react@19.0.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-XeaCnXQ5lZoOtPaVZPDEcx2TUDDt6JPIEviTKhIBkQNAYKcQkAT6SPbEqxC2KqkLPnilvPi9zz+c8iikstrwRg==} + react@19.0.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-yuShauu0yDnoNEgieM/6TrnqkHc4lwcApMftkgpQe1fKFKjD/dhjK1ZINs97T3ZvN4LlWXOK6RCI/UO9fytPEQ==} engines: {node: '>=0.10.0'} react@19.0.0-rc-f90a6bcc-20240827: @@ -13238,11 +13238,11 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.0.0-experimental-2d16326d-20240930: - resolution: {integrity: sha512-ikUX4on2GTFJjfJrU49Y4gaIPQuE8um9/TR8NImUsbCCGNFkMz5c9xcP9crSa2i5RRLaZxPFijsJn1bl5zKx6g==} + scheduler@0.0.0-experimental-d5bba18b-20241009: + resolution: {integrity: sha512-nE4QTJldu/adp902KLBoegKLDjFJ3u8pz10xHyneZJ1e/89g0HobcfN4SQ4xu39hLbq/taUG+1uAaF4IsBQC1g==} - scheduler@0.25.0-rc-2d16326d-20240930: - resolution: {integrity: sha512-P0lFGsD0rOhDQR2AA3ls0MYXeWnw/Tuu5bERwBC92DXSASB/493N9LQKe4AuCwVC671tjktLckGAxghUqJq7yg==} + scheduler@0.25.0-rc-d5bba18b-20241009: + resolution: {integrity: sha512-OfmbWwuu6c3bJK2B1Q5R+uuQWIB9Ogb2Rc8v31USMaURIyM38nQ/AVkQ3D0gXp9Yfc0wKVycFOxIhVf4P1c7Vg==} schema-utils@2.7.1: resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} @@ -13807,8 +13807,8 @@ packages: engines: {node: '>= 16'} peerDependencies: babel-plugin-styled-components: '>= 2' - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: babel-plugin-styled-components: optional: true @@ -13822,7 +13822,7 @@ packages: peerDependencies: '@babel/core': '*' babel-plugin-macros: '*' - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@babel/core': optional: true @@ -13899,7 +13899,7 @@ packages: swr@2.2.4: resolution: {integrity: sha512-njiZ/4RiIhoOlAaLYDqwz5qH/KZXVilRLvomrx83HjzCWTfa+InyfAjv05PSFxnmLzZkNO9ZfvgoqzAaEI4sGQ==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 symbol-observable@1.0.1: resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} @@ -14640,7 +14640,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -14648,13 +14648,13 @@ packages: use-composed-ref@1.3.0: resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 use-isomorphic-layout-effect@1.1.2: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -14663,7 +14663,7 @@ packages: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -14673,7 +14673,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': npm:types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 peerDependenciesMeta: '@types/react': optional: true @@ -14681,7 +14681,7 @@ packages: use-sync-external-store@1.2.0: resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} peerDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -15497,7 +15497,7 @@ snapshots: '@babel/core': 7.22.5 '@babel/helper-compilation-targets': 7.24.8 '@babel/helper-plugin-utils': 7.24.8 - debug: 4.3.7 + debug: 4.1.1 lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: @@ -17212,17 +17212,17 @@ snapshots: '@emotion/memoize@0.8.1': {} - '@emotion/react@11.11.1(react@19.0.0-rc-2d16326d-20240930)(types-react@19.0.0-rc.0)': + '@emotion/react@11.11.1(react@19.0.0-rc-d5bba18b-20241009)(types-react@19.0.0-rc.0)': dependencies: '@babel/runtime': 7.22.5 '@emotion/babel-plugin': 11.11.0 '@emotion/cache': 11.11.0 '@emotion/serialize': 1.1.2 - '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@19.0.0-rc-2d16326d-20240930) + '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@19.0.0-rc-d5bba18b-20241009) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 hoist-non-react-statics: 3.3.2 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 optionalDependencies: '@types/react': types-react@19.0.0-rc.0 transitivePeerDependencies: @@ -17240,9 +17240,9 @@ snapshots: '@emotion/unitless@0.8.1': {} - '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.0.0-rc-2d16326d-20240930)': + '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.0.0-rc-d5bba18b-20241009)': dependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 '@emotion/utils@1.2.1': {} @@ -18602,11 +18602,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@mdx-js/react@2.2.1(react@19.0.0-rc-2d16326d-20240930)': + '@mdx-js/react@2.2.1(react@19.0.0-rc-d5bba18b-20241009)': dependencies: '@types/mdx': 2.0.3 '@types/react': types-react@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 '@mdx-js/react@2.2.1(react@19.0.0-rc-f90a6bcc-20240827)': dependencies: @@ -19427,13 +19427,13 @@ snapshots: '@types/jest': 29.5.5 jest: 29.7.0(@types/node@20.12.3)(babel-plugin-macros@3.1.0) - '@testing-library/react@15.0.7(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(types-react@19.0.0-rc.0)': + '@testing-library/react@15.0.7(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(types-react@19.0.0-rc.0)': dependencies: '@babel/runtime': 7.22.5 '@testing-library/dom': 10.1.0 '@types/react-dom': types-react-dom@19.0.0-rc.0 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) optionalDependencies: '@types/react': types-react@19.0.0-rc.0 @@ -20705,7 +20705,7 @@ snapshots: - supports-color optional: true - babel-plugin-react-compiler@0.0.0-experimental-58c2b1c-20241007: + babel-plugin-react-compiler@0.0.0-experimental-58c2b1c-20241009: dependencies: '@babel/generator': 7.2.0 '@babel/types': 7.22.5 @@ -24382,7 +24382,7 @@ snapshots: hoist-non-react-statics@3.3.2: dependencies: - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 homedir-polyfill@1.0.3: dependencies: @@ -28738,25 +28738,25 @@ snapshots: '@jest/types': 24.9.0 ansi-regex: 4.1.0 ansi-styles: 3.2.1 - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 pretty-format@27.5.1: dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 pretty-format@29.5.0: dependencies: '@jest/schemas': 29.4.3 ansi-styles: 5.2.0 - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 pretty-ms@7.0.0: dependencies: @@ -28813,7 +28813,7 @@ snapshots: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react-is: 19.0.0-rc-2d16326d-20240930 + react-is: 19.0.0-rc-d5bba18b-20241009 property-information@5.6.0: dependencies: @@ -28987,29 +28987,29 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-dom@0.0.0-experimental-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930): + react-dom@0.0.0-experimental-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009): dependencies: - react: 19.0.0-rc-2d16326d-20240930 - scheduler: 0.25.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + scheduler: 0.25.0-rc-d5bba18b-20241009 - react-dom@17.0.2(react@19.0.0-rc-2d16326d-20240930): + react-dom@17.0.2(react@19.0.0-rc-d5bba18b-20241009): dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react: 19.0.0-rc-2d16326d-20240930 - scheduler: 0.25.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + scheduler: 0.25.0-rc-d5bba18b-20241009 - react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930): + react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009): dependencies: - react: 19.0.0-rc-2d16326d-20240930 - scheduler: 0.25.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + scheduler: 0.25.0-rc-d5bba18b-20241009 react-dom@19.0.0-rc-f90a6bcc-20240827(react@19.0.0-rc-f90a6bcc-20240827): dependencies: react: 19.0.0-rc-f90a6bcc-20240827 - scheduler: 0.25.0-rc-2d16326d-20240930 + scheduler: 0.25.0-rc-d5bba18b-20241009 - react-is@19.0.0-rc-2d16326d-20240930: {} + react-is@19.0.0-rc-d5bba18b-20241009: {} react-is@19.0.0-rc-f90a6bcc-20240827: {} @@ -29042,48 +29042,48 @@ snapshots: optionalDependencies: '@types/react': types-react@19.0.0-rc.0 - react-server-dom-turbopack@0.0.0-experimental-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930): + react-server-dom-turbopack@0.0.0-experimental-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) - react-server-dom-turbopack@19.0.0-rc-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930): + react-server-dom-turbopack@19.0.0-rc-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) - react-server-dom-webpack@0.0.0-experimental-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))): + react-server-dom-webpack@0.0.0-experimental-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) webpack: 5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-server-dom-webpack@19.0.0-rc-2d16326d-20240930(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))): + react-server-dom-webpack@19.0.0-rc-d5bba18b-20241009(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009)(webpack@5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) webpack: 5.90.0(@swc/core@1.6.13(@swc/helpers@0.5.13)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-shallow-renderer@16.15.0(react@19.0.0-rc-2d16326d-20240930): + react-shallow-renderer@16.15.0(react@19.0.0-rc-d5bba18b-20241009): dependencies: object-assign: 4.1.1 - react: 19.0.0-rc-2d16326d-20240930 - react-is: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-is: 19.0.0-rc-d5bba18b-20241009 - react-ssr-prepass@1.0.8(react-is@19.0.0-rc-f90a6bcc-20240827)(react@19.0.0-rc-2d16326d-20240930): + react-ssr-prepass@1.0.8(react-is@19.0.0-rc-f90a6bcc-20240827)(react@19.0.0-rc-d5bba18b-20241009): dependencies: object-is: 1.0.2 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 react-is: 19.0.0-rc-f90a6bcc-20240827 react-style-singleton@2.2.1(react@19.0.0-rc-f90a6bcc-20240827)(types-react@19.0.0-rc.0): @@ -29095,12 +29095,12 @@ snapshots: optionalDependencies: '@types/react': types-react@19.0.0-rc.0 - react-test-renderer@18.2.0(react@19.0.0-rc-2d16326d-20240930): + react-test-renderer@18.2.0(react@19.0.0-rc-d5bba18b-20241009): dependencies: - react: 19.0.0-rc-2d16326d-20240930 - react-is: 19.0.0-rc-2d16326d-20240930 - react-shallow-renderer: 16.15.0(react@19.0.0-rc-2d16326d-20240930) - scheduler: 0.25.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 + react-is: 19.0.0-rc-d5bba18b-20241009 + react-shallow-renderer: 16.15.0(react@19.0.0-rc-d5bba18b-20241009) + scheduler: 0.25.0-rc-d5bba18b-20241009 react-textarea-autosize@8.5.3(react@19.0.0-rc-f90a6bcc-20240827)(types-react@19.0.0-rc.0): dependencies: @@ -29111,25 +29111,25 @@ snapshots: transitivePeerDependencies: - '@types/react' - react-virtualized@9.22.3(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930): + react-virtualized@9.22.3(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009): dependencies: '@babel/runtime': 7.22.5 clsx: 1.1.1 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) react-lifecycles-compat: 3.0.4 - react@0.0.0-experimental-2d16326d-20240930: {} + react@0.0.0-experimental-d5bba18b-20241009: {} react@17.0.2: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react@19.0.0-rc-2d16326d-20240930: {} + react@19.0.0-rc-d5bba18b-20241009: {} react@19.0.0-rc-f90a6bcc-20240827: {} @@ -29825,9 +29825,9 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.0.0-experimental-2d16326d-20240930: {} + scheduler@0.0.0-experimental-d5bba18b-20241009: {} - scheduler@0.25.0-rc-2d16326d-20240930: {} + scheduler@0.25.0-rc-d5bba18b-20241009: {} schema-utils@2.7.1: dependencies: @@ -30464,7 +30464,7 @@ snapshots: dependencies: inline-style-parser: 0.1.1 - styled-components@6.0.0-rc.3(react-dom@19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930))(react@19.0.0-rc-2d16326d-20240930): + styled-components@6.0.0-rc.3(react-dom@19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009))(react@19.0.0-rc-d5bba18b-20241009): dependencies: '@babel/cli': 7.21.5(@babel/core@7.22.5) '@babel/core': 7.22.5 @@ -30479,8 +30479,8 @@ snapshots: '@emotion/unitless': 0.8.1 css-to-react-native: 3.2.0 postcss: 8.4.31 - react: 19.0.0-rc-2d16326d-20240930 - react-dom: 19.0.0-rc-2d16326d-20240930(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + react-dom: 19.0.0-rc-d5bba18b-20241009(react@19.0.0-rc-d5bba18b-20241009) shallowequal: 1.1.0 stylis: 4.2.0 tslib: 2.5.3 @@ -30492,10 +30492,10 @@ snapshots: postcss: 7.0.32 postcss-load-plugins: 2.3.0 - styled-jsx@5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-2d16326d-20240930): + styled-jsx@5.1.6(@babel/core@7.22.5)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-d5bba18b-20241009): dependencies: client-only: 0.0.1 - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 optionalDependencies: '@babel/core': 7.22.5 babel-plugin-macros: 3.1.0 @@ -30585,11 +30585,11 @@ snapshots: picocolors: 1.0.1 stable: 0.1.8 - swr@2.2.4(react@19.0.0-rc-2d16326d-20240930): + swr@2.2.4(react@19.0.0-rc-d5bba18b-20241009): dependencies: client-only: 0.0.1 - react: 19.0.0-rc-2d16326d-20240930 - use-sync-external-store: 1.2.0(react@19.0.0-rc-2d16326d-20240930) + react: 19.0.0-rc-d5bba18b-20241009 + use-sync-external-store: 1.2.0(react@19.0.0-rc-d5bba18b-20241009) symbol-observable@1.0.1: {} @@ -31291,9 +31291,9 @@ snapshots: unist-util-is: 5.2.0 unist-util-visit-parents: 5.1.3 - unistore@3.4.1(react@19.0.0-rc-2d16326d-20240930): + unistore@3.4.1(react@19.0.0-rc-d5bba18b-20241009): optionalDependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 universal-github-app-jwt@1.1.1: dependencies: @@ -31411,9 +31411,9 @@ snapshots: optionalDependencies: '@types/react': types-react@19.0.0-rc.0 - use-sync-external-store@1.2.0(react@19.0.0-rc-2d16326d-20240930): + use-sync-external-store@1.2.0(react@19.0.0-rc-d5bba18b-20241009): dependencies: - react: 19.0.0-rc-2d16326d-20240930 + react: 19.0.0-rc-d5bba18b-20241009 util-deprecate@1.0.2: {} From 7bfb13546bc34748fe9870be6c6bb252a3ee6355 Mon Sep 17 00:00:00 2001 From: vercel-release-bot Date: Wed, 9 Oct 2024 16:28:03 +0000 Subject: [PATCH 5/5] ncc-compiled --- .../cjs/react-dom-client.development.js | 425 +++++++++-------- .../cjs/react-dom-client.production.js | 115 ++--- .../cjs/react-dom-profiling.development.js | 425 +++++++++-------- .../cjs/react-dom-profiling.profiling.js | 127 +++--- ...t-dom-server-legacy.browser.development.js | 2 +- ...ct-dom-server-legacy.browser.production.js | 2 +- ...eact-dom-server-legacy.node.development.js | 2 +- ...react-dom-server-legacy.node.production.js | 2 +- .../react-dom-server.browser.development.js | 6 +- .../react-dom-server.browser.production.js | 6 +- .../cjs/react-dom-server.bun.production.js | 6 +- .../cjs/react-dom-server.edge.development.js | 6 +- .../cjs/react-dom-server.edge.production.js | 6 +- .../cjs/react-dom-server.node.development.js | 6 +- .../cjs/react-dom-server.node.production.js | 6 +- .../react-dom-unstable_testing.development.js | 425 +++++++++-------- .../react-dom-unstable_testing.production.js | 115 ++--- .../cjs/react-dom.development.js | 2 +- .../cjs/react-dom.production.js | 2 +- .../cjs/react-dom.react-server.development.js | 2 +- .../cjs/react-dom.react-server.production.js | 2 +- .../react-dom-experimental/package.json | 4 +- .../cjs/react-dom-client.development.js | 428 +++++++++--------- .../cjs/react-dom-client.production.js | 115 ++--- .../cjs/react-dom-profiling.development.js | 428 +++++++++--------- .../cjs/react-dom-profiling.profiling.js | 125 +++-- ...t-dom-server-legacy.browser.development.js | 2 +- ...ct-dom-server-legacy.browser.production.js | 2 +- ...eact-dom-server-legacy.node.development.js | 2 +- ...react-dom-server-legacy.node.production.js | 2 +- .../react-dom-server.browser.development.js | 6 +- .../react-dom-server.browser.production.js | 6 +- .../cjs/react-dom-server.bun.production.js | 6 +- .../cjs/react-dom-server.edge.development.js | 6 +- .../cjs/react-dom-server.edge.production.js | 6 +- .../cjs/react-dom-server.node.development.js | 6 +- .../cjs/react-dom-server.node.production.js | 6 +- .../react-dom/cjs/react-dom.development.js | 2 +- .../react-dom/cjs/react-dom.production.js | 2 +- .../cjs/react-dom.react-server.development.js | 2 +- .../cjs/react-dom.react-server.production.js | 2 +- .../next/src/compiled/react-dom/package.json | 4 +- .../cjs/react.development.js | 7 +- .../cjs/react.production.js | 7 +- .../cjs/react.react-server.development.js | 2 +- .../cjs/react.react-server.production.js | 2 +- .../next/src/compiled/react-is/package.json | 2 +- ...om-turbopack-client.browser.development.js | 328 ++++++++------ ...dom-turbopack-client.browser.production.js | 44 +- ...r-dom-turbopack-client.edge.development.js | 324 +++++++------ ...er-dom-turbopack-client.edge.production.js | 44 +- ...r-dom-turbopack-client.node.development.js | 311 +++++++------ ...er-dom-turbopack-client.node.production.js | 31 +- ...om-turbopack-server.browser.development.js | 166 ++++--- ...dom-turbopack-server.browser.production.js | 1 + ...r-dom-turbopack-server.edge.development.js | 166 ++++--- ...er-dom-turbopack-server.edge.production.js | 1 + ...r-dom-turbopack-server.node.development.js | 166 ++++--- ...er-dom-turbopack-server.node.production.js | 7 +- .../package.json | 4 +- ...om-turbopack-client.browser.development.js | 297 +++++++----- ...dom-turbopack-client.browser.production.js | 44 +- ...r-dom-turbopack-client.edge.development.js | 293 +++++++----- ...er-dom-turbopack-client.edge.production.js | 44 +- ...r-dom-turbopack-client.node.development.js | 280 +++++++----- ...er-dom-turbopack-client.node.production.js | 31 +- ...om-turbopack-server.browser.development.js | 158 ++++--- ...dom-turbopack-server.browser.production.js | 1 + ...r-dom-turbopack-server.edge.development.js | 158 ++++--- ...er-dom-turbopack-server.edge.production.js | 1 + ...r-dom-turbopack-server.node.development.js | 158 ++++--- ...er-dom-turbopack-server.node.production.js | 7 +- .../react-server-dom-turbopack/package.json | 4 +- ...-dom-webpack-client.browser.development.js | 328 ++++++++------ ...r-dom-webpack-client.browser.production.js | 44 +- ...ver-dom-webpack-client.edge.development.js | 324 +++++++------ ...rver-dom-webpack-client.edge.production.js | 44 +- ...ver-dom-webpack-client.node.development.js | 299 ++++++------ ...rver-dom-webpack-client.node.production.js | 31 +- ...bpack-client.node.unbundled.development.js | 299 ++++++------ ...ebpack-client.node.unbundled.production.js | 31 +- ...-dom-webpack-server.browser.development.js | 166 ++++--- ...r-dom-webpack-server.browser.production.js | 1 + ...ver-dom-webpack-server.edge.development.js | 166 ++++--- ...rver-dom-webpack-server.edge.production.js | 1 + ...ver-dom-webpack-server.node.development.js | 166 ++++--- ...rver-dom-webpack-server.node.production.js | 7 +- ...bpack-server.node.unbundled.development.js | 166 ++++--- ...ebpack-server.node.unbundled.production.js | 7 +- .../package.json | 4 +- ...-dom-webpack-client.browser.development.js | 297 +++++++----- ...r-dom-webpack-client.browser.production.js | 44 +- ...ver-dom-webpack-client.edge.development.js | 293 +++++++----- ...rver-dom-webpack-client.edge.production.js | 44 +- ...ver-dom-webpack-client.node.development.js | 271 ++++++----- ...rver-dom-webpack-client.node.production.js | 31 +- ...bpack-client.node.unbundled.development.js | 271 ++++++----- ...ebpack-client.node.unbundled.production.js | 31 +- ...-dom-webpack-server.browser.development.js | 158 ++++--- ...r-dom-webpack-server.browser.production.js | 1 + ...ver-dom-webpack-server.edge.development.js | 158 ++++--- ...rver-dom-webpack-server.edge.production.js | 1 + ...ver-dom-webpack-server.node.development.js | 158 ++++--- ...rver-dom-webpack-server.node.production.js | 7 +- ...bpack-server.node.unbundled.development.js | 158 ++++--- ...ebpack-server.node.unbundled.production.js | 7 +- .../react-server-dom-webpack/package.json | 4 +- .../compiled/react/cjs/react.development.js | 2 +- .../compiled/react/cjs/react.production.js | 2 +- .../cjs/react.react-server.development.js | 2 +- .../cjs/react.react-server.production.js | 2 +- .../next/src/compiled/unistore/unistore.js | 2 +- 112 files changed, 5747 insertions(+), 4222 deletions(-) diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js index 5f6ae4052126e..e383904333117 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js @@ -1130,6 +1130,13 @@ for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } + function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), + (root.pingedLanes = 0), + (root.warmLanes = 0)); + } function markRootFinished( root, finishedLanes, @@ -3876,7 +3883,20 @@ (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (nestedUpdateCount > NESTED_UPDATE_LIMIT) + throw ( + ((nestedPassiveUpdateCount = nestedUpdateCount = 0), + (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), + Error( + "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." + )) + ); + nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && + ((nestedPassiveUpdateCount = 0), + (rootWithPassiveNestedUpdates = null), + console.error( + "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." + )); null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber); @@ -8883,33 +8903,33 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_componentStack_2283; - var JSCompiler_object_inline_stack_2282 = workInProgress.pendingProps; + var JSCompiler_object_inline_componentStack_2296; + var JSCompiler_object_inline_stack_2295 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2280 = !1; + var JSCompiler_object_inline_message_2293 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_componentStack_2283 = didSuspend) || - (JSCompiler_object_inline_componentStack_2283 = + (JSCompiler_object_inline_componentStack_2296 = didSuspend) || + (JSCompiler_object_inline_componentStack_2296 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_componentStack_2283 && - ((JSCompiler_object_inline_message_2280 = !0), + JSCompiler_object_inline_componentStack_2296 && + ((JSCompiler_object_inline_message_2293 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_componentStack_2283 = + JSCompiler_object_inline_componentStack_2296 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2280 + JSCompiler_object_inline_message_2293 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); if (isHydrating) { - var JSCompiler_object_inline_digest_2281 = nextHydratableInstance; + var JSCompiler_object_inline_digest_2294 = nextHydratableInstance; var JSCompiler_temp; - if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2281)) { + if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2294)) { c: { - var instance = JSCompiler_object_inline_digest_2281; + var instance = JSCompiler_object_inline_digest_2294; for ( JSCompiler_temp = rootOrSingletonContext; 8 !== instance.nodeType; @@ -8950,19 +8970,19 @@ JSCompiler_temp && (warnNonHydratedInstance( workInProgress, - JSCompiler_object_inline_digest_2281 + JSCompiler_object_inline_digest_2294 ), throwOnHydrationMismatch(workInProgress)); } - JSCompiler_object_inline_digest_2281 = workInProgress.memoizedState; + JSCompiler_object_inline_digest_2294 = workInProgress.memoizedState; if ( - null !== JSCompiler_object_inline_digest_2281 && - ((JSCompiler_object_inline_digest_2281 = - JSCompiler_object_inline_digest_2281.dehydrated), - null !== JSCompiler_object_inline_digest_2281) + null !== JSCompiler_object_inline_digest_2294 && + ((JSCompiler_object_inline_digest_2294 = + JSCompiler_object_inline_digest_2294.dehydrated), + null !== JSCompiler_object_inline_digest_2294) ) return ( - JSCompiler_object_inline_digest_2281.data === + JSCompiler_object_inline_digest_2294.data === SUSPENSE_FALLBACK_START_DATA ? (workInProgress.lanes = 16) : (workInProgress.lanes = 536870912), @@ -8970,68 +8990,68 @@ ); popSuspenseHandler(workInProgress); } - JSCompiler_object_inline_digest_2281 = - JSCompiler_object_inline_stack_2282.children; - JSCompiler_temp = JSCompiler_object_inline_stack_2282.fallback; - if (JSCompiler_object_inline_message_2280) + JSCompiler_object_inline_digest_2294 = + JSCompiler_object_inline_stack_2295.children; + JSCompiler_temp = JSCompiler_object_inline_stack_2295.fallback; + if (JSCompiler_object_inline_message_2293) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2282 = + (JSCompiler_object_inline_stack_2295 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2281, + JSCompiler_object_inline_digest_2294, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2280 = workInProgress.child), - (JSCompiler_object_inline_message_2280.memoizedState = + (JSCompiler_object_inline_message_2293 = workInProgress.child), + (JSCompiler_object_inline_message_2293.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2280.childLanes = + (JSCompiler_object_inline_message_2293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2283, + JSCompiler_object_inline_componentStack_2296, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2282 + JSCompiler_object_inline_stack_2295 ); if ( "number" === - typeof JSCompiler_object_inline_stack_2282.unstable_expectedLoadTime + typeof JSCompiler_object_inline_stack_2295.unstable_expectedLoadTime ) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2282 = + (JSCompiler_object_inline_stack_2295 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2281, + JSCompiler_object_inline_digest_2294, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2280 = workInProgress.child), - (JSCompiler_object_inline_message_2280.memoizedState = + (JSCompiler_object_inline_message_2293 = workInProgress.child), + (JSCompiler_object_inline_message_2293.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2280.childLanes = + (JSCompiler_object_inline_message_2293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2283, + JSCompiler_object_inline_componentStack_2296, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - JSCompiler_object_inline_stack_2282 + JSCompiler_object_inline_stack_2295 ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_digest_2281 + JSCompiler_object_inline_digest_2294 ); } var prevState = current.memoizedState; if ( null !== prevState && - ((JSCompiler_object_inline_digest_2281 = prevState.dehydrated), - null !== JSCompiler_object_inline_digest_2281) + ((JSCompiler_object_inline_digest_2294 = prevState.dehydrated), + null !== JSCompiler_object_inline_digest_2294) ) { if (didSuspend) workInProgress.flags & 256 @@ -9048,94 +9068,94 @@ (workInProgress.flags |= 128), (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2280 = - JSCompiler_object_inline_stack_2282.fallback), - (JSCompiler_object_inline_digest_2281 = workInProgress.mode), - (JSCompiler_object_inline_stack_2282 = + (JSCompiler_object_inline_message_2293 = + JSCompiler_object_inline_stack_2295.fallback), + (JSCompiler_object_inline_digest_2294 = workInProgress.mode), + (JSCompiler_object_inline_stack_2295 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2282.children + children: JSCompiler_object_inline_stack_2295.children }, - JSCompiler_object_inline_digest_2281 + JSCompiler_object_inline_digest_2294 )), - (JSCompiler_object_inline_message_2280 = + (JSCompiler_object_inline_message_2293 = createFiberFromFragment( - JSCompiler_object_inline_message_2280, - JSCompiler_object_inline_digest_2281, + JSCompiler_object_inline_message_2293, + JSCompiler_object_inline_digest_2294, renderLanes, null )), - (JSCompiler_object_inline_message_2280.flags |= 2), - (JSCompiler_object_inline_stack_2282.return = workInProgress), - (JSCompiler_object_inline_message_2280.return = workInProgress), - (JSCompiler_object_inline_stack_2282.sibling = - JSCompiler_object_inline_message_2280), - (workInProgress.child = JSCompiler_object_inline_stack_2282), + (JSCompiler_object_inline_message_2293.flags |= 2), + (JSCompiler_object_inline_stack_2295.return = workInProgress), + (JSCompiler_object_inline_message_2293.return = workInProgress), + (JSCompiler_object_inline_stack_2295.sibling = + JSCompiler_object_inline_message_2293), + (workInProgress.child = JSCompiler_object_inline_stack_2295), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2282 = workInProgress.child), - (JSCompiler_object_inline_stack_2282.memoizedState = + (JSCompiler_object_inline_stack_2295 = workInProgress.child), + (JSCompiler_object_inline_stack_2295.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2282.childLanes = + (JSCompiler_object_inline_stack_2295.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2283, + JSCompiler_object_inline_componentStack_2296, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - (workInProgress = JSCompiler_object_inline_message_2280)); + (workInProgress = JSCompiler_object_inline_message_2293)); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), isHydrating && console.error( "We should not be hydrating here. This is a bug in React. Please file a bug." ), - JSCompiler_object_inline_digest_2281.data === + JSCompiler_object_inline_digest_2294.data === SUSPENSE_FALLBACK_START_DATA) ) { - JSCompiler_object_inline_componentStack_2283 = - JSCompiler_object_inline_digest_2281.nextSibling && - JSCompiler_object_inline_digest_2281.nextSibling.dataset; - if (JSCompiler_object_inline_componentStack_2283) { - JSCompiler_temp = JSCompiler_object_inline_componentStack_2283.dgst; - var message = JSCompiler_object_inline_componentStack_2283.msg; - instance = JSCompiler_object_inline_componentStack_2283.stck; + JSCompiler_object_inline_componentStack_2296 = + JSCompiler_object_inline_digest_2294.nextSibling && + JSCompiler_object_inline_digest_2294.nextSibling.dataset; + if (JSCompiler_object_inline_componentStack_2296) { + JSCompiler_temp = JSCompiler_object_inline_componentStack_2296.dgst; + var message = JSCompiler_object_inline_componentStack_2296.msg; + instance = JSCompiler_object_inline_componentStack_2296.stck; var componentStack = - JSCompiler_object_inline_componentStack_2283.cstck; + JSCompiler_object_inline_componentStack_2296.cstck; } - JSCompiler_object_inline_message_2280 = message; - JSCompiler_object_inline_digest_2281 = JSCompiler_temp; - JSCompiler_object_inline_stack_2282 = instance; - JSCompiler_object_inline_componentStack_2283 = componentStack; - "POSTPONE" !== JSCompiler_object_inline_digest_2281 && - ((JSCompiler_object_inline_message_2280 = - JSCompiler_object_inline_message_2280 - ? Error(JSCompiler_object_inline_message_2280) + JSCompiler_object_inline_message_2293 = message; + JSCompiler_object_inline_digest_2294 = JSCompiler_temp; + JSCompiler_object_inline_stack_2295 = instance; + JSCompiler_object_inline_componentStack_2296 = componentStack; + "POSTPONE" !== JSCompiler_object_inline_digest_2294 && + ((JSCompiler_object_inline_message_2293 = + JSCompiler_object_inline_message_2293 + ? Error(JSCompiler_object_inline_message_2293) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." )), - (JSCompiler_object_inline_message_2280.stack = - JSCompiler_object_inline_stack_2282 || ""), - (JSCompiler_object_inline_message_2280.digest = - JSCompiler_object_inline_digest_2281), - (JSCompiler_object_inline_componentStack_2283 = - void 0 === JSCompiler_object_inline_componentStack_2283 + (JSCompiler_object_inline_message_2293.stack = + JSCompiler_object_inline_stack_2295 || ""), + (JSCompiler_object_inline_message_2293.digest = + JSCompiler_object_inline_digest_2294), + (JSCompiler_object_inline_componentStack_2296 = + void 0 === JSCompiler_object_inline_componentStack_2296 ? null - : JSCompiler_object_inline_componentStack_2283), - "string" === typeof JSCompiler_object_inline_componentStack_2283 && + : JSCompiler_object_inline_componentStack_2296), + "string" === typeof JSCompiler_object_inline_componentStack_2296 && CapturedStacks.set( - JSCompiler_object_inline_message_2280, - JSCompiler_object_inline_componentStack_2283 + JSCompiler_object_inline_message_2293, + JSCompiler_object_inline_componentStack_2296 ), queueHydrationError({ - value: JSCompiler_object_inline_message_2280, + value: JSCompiler_object_inline_message_2293, source: null, - stack: JSCompiler_object_inline_componentStack_2283 + stack: JSCompiler_object_inline_componentStack_2296 })); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9150,25 +9170,25 @@ renderLanes, !1 ), - (JSCompiler_object_inline_componentStack_2283 = + (JSCompiler_object_inline_componentStack_2296 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_componentStack_2283) + didReceiveUpdate || JSCompiler_object_inline_componentStack_2296) ) { - JSCompiler_object_inline_componentStack_2283 = workInProgressRoot; - if (null !== JSCompiler_object_inline_componentStack_2283) { - JSCompiler_object_inline_stack_2282 = renderLanes & -renderLanes; - if (0 !== (JSCompiler_object_inline_stack_2282 & 42)) - JSCompiler_object_inline_stack_2282 = 1; + JSCompiler_object_inline_componentStack_2296 = workInProgressRoot; + if (null !== JSCompiler_object_inline_componentStack_2296) { + JSCompiler_object_inline_stack_2295 = renderLanes & -renderLanes; + if (0 !== (JSCompiler_object_inline_stack_2295 & 42)) + JSCompiler_object_inline_stack_2295 = 1; else - switch (JSCompiler_object_inline_stack_2282) { + switch (JSCompiler_object_inline_stack_2295) { case 2: - JSCompiler_object_inline_stack_2282 = 1; + JSCompiler_object_inline_stack_2295 = 1; break; case 8: - JSCompiler_object_inline_stack_2282 = 4; + JSCompiler_object_inline_stack_2295 = 4; break; case 32: - JSCompiler_object_inline_stack_2282 = 16; + JSCompiler_object_inline_stack_2295 = 16; break; case 128: case 256: @@ -9189,40 +9209,40 @@ case 8388608: case 16777216: case 33554432: - JSCompiler_object_inline_stack_2282 = 64; + JSCompiler_object_inline_stack_2295 = 64; break; case 268435456: - JSCompiler_object_inline_stack_2282 = 134217728; + JSCompiler_object_inline_stack_2295 = 134217728; break; default: - JSCompiler_object_inline_stack_2282 = 0; + JSCompiler_object_inline_stack_2295 = 0; } - JSCompiler_object_inline_stack_2282 = + JSCompiler_object_inline_stack_2295 = 0 !== - (JSCompiler_object_inline_stack_2282 & - (JSCompiler_object_inline_componentStack_2283.suspendedLanes | + (JSCompiler_object_inline_stack_2295 & + (JSCompiler_object_inline_componentStack_2296.suspendedLanes | renderLanes)) ? 0 - : JSCompiler_object_inline_stack_2282; + : JSCompiler_object_inline_stack_2295; if ( - 0 !== JSCompiler_object_inline_stack_2282 && - JSCompiler_object_inline_stack_2282 !== prevState.retryLane + 0 !== JSCompiler_object_inline_stack_2295 && + JSCompiler_object_inline_stack_2295 !== prevState.retryLane ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2282), + ((prevState.retryLane = JSCompiler_object_inline_stack_2295), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2282 + JSCompiler_object_inline_stack_2295 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_componentStack_2283, + JSCompiler_object_inline_componentStack_2296, current, - JSCompiler_object_inline_stack_2282 + JSCompiler_object_inline_stack_2295 ), SelectiveHydrationException) ); } - JSCompiler_object_inline_digest_2281.data === + JSCompiler_object_inline_digest_2294.data === SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9230,7 +9250,7 @@ renderLanes ); } else - JSCompiler_object_inline_digest_2281.data === + JSCompiler_object_inline_digest_2294.data === SUSPENSE_PENDING_START_DATA ? ((workInProgress.flags |= 128), (workInProgress.child = current.child), @@ -9238,12 +9258,12 @@ null, current )), - (JSCompiler_object_inline_digest_2281._reactRetry = + (JSCompiler_object_inline_digest_2294._reactRetry = workInProgress), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_digest_2281.nextSibling + JSCompiler_object_inline_digest_2294.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -9261,54 +9281,54 @@ (treeContextProvider = workInProgress)), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2282.children + JSCompiler_object_inline_stack_2295.children )), (workInProgress.flags |= 4096)); return workInProgress; } - if (JSCompiler_object_inline_message_2280) + if (JSCompiler_object_inline_message_2293) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2280 = - JSCompiler_object_inline_stack_2282.fallback), - (JSCompiler_object_inline_digest_2281 = workInProgress.mode), + (JSCompiler_object_inline_message_2293 = + JSCompiler_object_inline_stack_2295.fallback), + (JSCompiler_object_inline_digest_2294 = workInProgress.mode), (JSCompiler_temp = current.child), (instance = JSCompiler_temp.sibling), - (JSCompiler_object_inline_stack_2282 = createWorkInProgress( + (JSCompiler_object_inline_stack_2295 = createWorkInProgress( JSCompiler_temp, { mode: "hidden", - children: JSCompiler_object_inline_stack_2282.children + children: JSCompiler_object_inline_stack_2295.children } )), - (JSCompiler_object_inline_stack_2282.subtreeFlags = + (JSCompiler_object_inline_stack_2295.subtreeFlags = JSCompiler_temp.subtreeFlags & 31457280), null !== instance - ? (JSCompiler_object_inline_message_2280 = createWorkInProgress( + ? (JSCompiler_object_inline_message_2293 = createWorkInProgress( instance, - JSCompiler_object_inline_message_2280 + JSCompiler_object_inline_message_2293 )) - : ((JSCompiler_object_inline_message_2280 = createFiberFromFragment( - JSCompiler_object_inline_message_2280, - JSCompiler_object_inline_digest_2281, + : ((JSCompiler_object_inline_message_2293 = createFiberFromFragment( + JSCompiler_object_inline_message_2293, + JSCompiler_object_inline_digest_2294, renderLanes, null )), - (JSCompiler_object_inline_message_2280.flags |= 2)), - (JSCompiler_object_inline_message_2280.return = workInProgress), - (JSCompiler_object_inline_stack_2282.return = workInProgress), - (JSCompiler_object_inline_stack_2282.sibling = - JSCompiler_object_inline_message_2280), - (workInProgress.child = JSCompiler_object_inline_stack_2282), - (JSCompiler_object_inline_stack_2282 = - JSCompiler_object_inline_message_2280), - (JSCompiler_object_inline_message_2280 = workInProgress.child), - (JSCompiler_object_inline_digest_2281 = current.child.memoizedState), - null === JSCompiler_object_inline_digest_2281 - ? (JSCompiler_object_inline_digest_2281 = + (JSCompiler_object_inline_message_2293.flags |= 2)), + (JSCompiler_object_inline_message_2293.return = workInProgress), + (JSCompiler_object_inline_stack_2295.return = workInProgress), + (JSCompiler_object_inline_stack_2295.sibling = + JSCompiler_object_inline_message_2293), + (workInProgress.child = JSCompiler_object_inline_stack_2295), + (JSCompiler_object_inline_stack_2295 = + JSCompiler_object_inline_message_2293), + (JSCompiler_object_inline_message_2293 = workInProgress.child), + (JSCompiler_object_inline_digest_2294 = current.child.memoizedState), + null === JSCompiler_object_inline_digest_2294 + ? (JSCompiler_object_inline_digest_2294 = mountSuspenseOffscreenState(renderLanes)) : ((JSCompiler_temp = - JSCompiler_object_inline_digest_2281.cachePool), + JSCompiler_object_inline_digest_2294.cachePool), null !== JSCompiler_temp ? ((instance = CacheContext._currentValue), (JSCompiler_temp = @@ -9316,38 +9336,38 @@ ? { parent: instance, pool: instance } : JSCompiler_temp)) : (JSCompiler_temp = getSuspendedCache()), - (JSCompiler_object_inline_digest_2281 = { + (JSCompiler_object_inline_digest_2294 = { baseLanes: - JSCompiler_object_inline_digest_2281.baseLanes | renderLanes, + JSCompiler_object_inline_digest_2294.baseLanes | renderLanes, cachePool: JSCompiler_temp })), - (JSCompiler_object_inline_message_2280.memoizedState = - JSCompiler_object_inline_digest_2281), - (JSCompiler_object_inline_message_2280.childLanes = + (JSCompiler_object_inline_message_2293.memoizedState = + JSCompiler_object_inline_digest_2294), + (JSCompiler_object_inline_message_2293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2283, + JSCompiler_object_inline_componentStack_2296, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2282 + JSCompiler_object_inline_stack_2295 ); pushPrimaryTreeSuspenseHandler(workInProgress); renderLanes = current.child; current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2282.children + children: JSCompiler_object_inline_stack_2295.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_componentStack_2283 = + ((JSCompiler_object_inline_componentStack_2296 = workInProgress.deletions), - null === JSCompiler_object_inline_componentStack_2283 + null === JSCompiler_object_inline_componentStack_2296 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_componentStack_2283.push(current)); + : JSCompiler_object_inline_componentStack_2296.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -14571,7 +14591,7 @@ workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if ( 0 !== (executionContext & RenderContext) && root === workInProgressRoot @@ -14902,18 +14922,6 @@ } return !0; } - function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), - (root.pingedLanes = 0), - (root.warmLanes = 0)); - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); - } function markRootSuspended( root, suspendedLanes, @@ -15607,13 +15615,14 @@ ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings(); if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw Error("Should not already be working."); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; - reusableComponentDevToolDetails.track = - getGroupNameOfHighestPriorityLane(lanes); + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; + reusableComponentDevToolDetails.track = getGroupNameOfHighestPriorityLane( + didIncludeRenderPhaseUpdate + ); logRenderPhase(completedRenderStartTime, completedRenderEndTime); if (null === finishedWork) return null; - 0 === lanes && + 0 === didIncludeRenderPhaseUpdate && console.error( "root.finishedLanes should not be empty during a commit. This is a bug in React." ); @@ -15630,13 +15639,12 @@ completedRenderStartTime |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, completedRenderStartTime, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -15666,12 +15674,16 @@ (updatedLanes = executionContext), (executionContext |= CommitContext), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects( + root, + finishedWork, + didIncludeRenderPhaseUpdate + ), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), (root.current = finishedWork), - commitLayoutEffects(finishedWork, root, lanes), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), requestPaint(), (executionContext = updatedLanes), (ReactDOMSharedInternals.p = spawnedLane), @@ -15682,7 +15694,7 @@ (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : (releaseRootPooledCache(root, completedRenderStartTime), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); @@ -15710,15 +15722,14 @@ ); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); completedRenderStartTime = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (completedRenderStartTime & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (completedRenderStartTime & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); - transitions || finalizeRender(lanes, now$1()); + transitions || finalizeRender(didIncludeRenderPhaseUpdate, now$1()); flushSyncWorkAcrossRoots_impl(0, !1); return null; } @@ -15857,7 +15868,7 @@ sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError( sourceFiber, @@ -15896,7 +15907,7 @@ nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); return; } @@ -15931,11 +15942,6 @@ null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error( @@ -15959,7 +15965,7 @@ 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -15990,26 +15996,6 @@ null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } - function throwIfInfiniteUpdateLoopDetected() { - if (nestedUpdateCount > NESTED_UPDATE_LIMIT) - throw ( - ((nestedPassiveUpdateCount = nestedUpdateCount = 0), - (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), - executionContext & RenderContext && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error( - "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." - )) - ); - nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && - ((nestedPassiveUpdateCount = 0), - (rootWithPassiveNestedUpdates = null), - console.error( - "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." - )); - } function recursivelyTraverseAndDoubleInvokeEffectsInDEV( root$jscomp$0, parentFiber, @@ -24364,7 +24350,6 @@ workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, @@ -24377,12 +24362,12 @@ pendingPassiveEffectsRemainingLanes = 0, pendingPassiveEffectsRenderEndTime = -0, pendingPassiveTransitions = null, - NESTED_UPDATE_LIMIT = 100, + NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = !1, didScheduleUpdateDuringPassiveEffects = !1, - NESTED_PASSIVE_UPDATE_LIMIT = 100, + NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = !1, @@ -24933,11 +24918,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -24974,11 +24959,11 @@ !(function () { var internals = { bundleType: 1, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -25114,13 +25099,13 @@ identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js index 565310563532e..04563b5b10662 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js @@ -691,6 +691,11 @@ function createLaneMap(initial) { for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } +function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); +} function markRootFinished( root, finishedLanes, @@ -2398,7 +2403,12 @@ function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) { (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (50 < nestedUpdateCount) + throw ( + ((nestedUpdateCount = 0), + (rootWithNestedUpdates = null), + Error(formatProdErrorMessage(185))) + ); for (var parent = sourceFiber.return; null !== parent; ) (sourceFiber = parent), (parent = sourceFiber.return); return 3 === sourceFiber.tag ? sourceFiber.stateNode : null; @@ -10334,7 +10344,6 @@ var DefaultAsyncDispatcher = { workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, workInProgressRootRenderTargetTime = Infinity, workInProgressTransitions = null, @@ -10377,7 +10386,7 @@ function scheduleUpdateOnFiber(root, fiber, lane) { workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if (0 === (executionContext & 2) || root !== workInProgressRoot) root === workInProgressRoot && (0 === (executionContext & 2) && @@ -10656,15 +10665,6 @@ function isRenderConsistentWithExternalStores(finishedWork) { } return !0; } -function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); -} function markRootSuspended( root, suspendedLanes, @@ -11163,8 +11163,8 @@ function commitRootImpl( do flushPassiveEffects(); while (null !== rootWithPendingPassiveEffects); if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327)); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; if (null === finishedWork) return null; root.finishedWork = null; root.finishedLanes = 0; @@ -11176,13 +11176,12 @@ function commitRootImpl( remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -11219,7 +11218,7 @@ function commitRootImpl( rootDoesHavePassiveEffects ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : releaseRootPooledCache(root, remainingLanes); remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); @@ -11237,9 +11236,7 @@ function commitRootImpl( }); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && 0 !== (remainingLanes & 42) ? root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root)) @@ -11304,7 +11301,7 @@ function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) { sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { if (3 === sourceFiber.tag) @@ -11337,7 +11334,7 @@ function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); break; } @@ -11366,10 +11363,6 @@ function pingSuspendedRoot(root, wakeable, pingedLanes) { null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); workInProgressRoot === root && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (4 === workInProgressRootExitStatus || @@ -11387,7 +11380,7 @@ function retryTimedOutBoundary(boundaryFiber, retryLane) { 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -11416,18 +11409,6 @@ function resolveRetryWakeable(boundaryFiber, wakeable) { null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } -function throwIfInfiniteUpdateLoopDetected() { - if (100 < nestedUpdateCount) - throw ( - ((nestedUpdateCount = 0), - (rootWithNestedUpdates = null), - executionContext & 2 && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error(formatProdErrorMessage(185))) - ); -} function scheduleCallback$1(priorityLevel, callback) { return scheduleCallback$3(priorityLevel, callback); } @@ -11714,20 +11695,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1412 = 0; - i$jscomp$inline_1412 < simpleEventPluginEvents.length; - i$jscomp$inline_1412++ + var i$jscomp$inline_1425 = 0; + i$jscomp$inline_1425 < simpleEventPluginEvents.length; + i$jscomp$inline_1425++ ) { - var eventName$jscomp$inline_1413 = - simpleEventPluginEvents[i$jscomp$inline_1412], - domEventName$jscomp$inline_1414 = - eventName$jscomp$inline_1413.toLowerCase(), - capitalizedEvent$jscomp$inline_1415 = - eventName$jscomp$inline_1413[0].toUpperCase() + - eventName$jscomp$inline_1413.slice(1); + var eventName$jscomp$inline_1426 = + simpleEventPluginEvents[i$jscomp$inline_1425], + domEventName$jscomp$inline_1427 = + eventName$jscomp$inline_1426.toLowerCase(), + capitalizedEvent$jscomp$inline_1428 = + eventName$jscomp$inline_1426[0].toUpperCase() + + eventName$jscomp$inline_1426.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1414, - "on" + capitalizedEvent$jscomp$inline_1415 + domEventName$jscomp$inline_1427, + "on" + capitalizedEvent$jscomp$inline_1428 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -15168,16 +15149,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_1659 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_1672 = React.version; if ( - "19.0.0-experimental-2d16326d-20240930" !== - isomorphicReactPackageVersion$jscomp$inline_1659 + "19.0.0-experimental-d5bba18b-20241009" !== + isomorphicReactPackageVersion$jscomp$inline_1672 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_1659, - "19.0.0-experimental-2d16326d-20240930" + isomorphicReactPackageVersion$jscomp$inline_1672, + "19.0.0-experimental-d5bba18b-20241009" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -15197,25 +15178,25 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2124 = { +var internals$jscomp$inline_2137 = { bundleType: 0, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2125 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2138 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2125.isDisabled && - hook$jscomp$inline_2125.supportsFiber + !hook$jscomp$inline_2138.isDisabled && + hook$jscomp$inline_2138.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2125.inject( - internals$jscomp$inline_2124 + (rendererID = hook$jscomp$inline_2138.inject( + internals$jscomp$inline_2137 )), - (injectedHook = hook$jscomp$inline_2125); + (injectedHook = hook$jscomp$inline_2138); } catch (err) {} } exports.createRoot = function (container, options) { @@ -15301,10 +15282,10 @@ exports.hydrateRoot = function (container, initialChildren, options) { identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.development.js index 89e846f94100f..59e5648f81e2d 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.development.js @@ -1138,6 +1138,13 @@ for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } + function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), + (root.pingedLanes = 0), + (root.warmLanes = 0)); + } function markRootFinished( root, finishedLanes, @@ -3884,7 +3891,20 @@ (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (nestedUpdateCount > NESTED_UPDATE_LIMIT) + throw ( + ((nestedPassiveUpdateCount = nestedUpdateCount = 0), + (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), + Error( + "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." + )) + ); + nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && + ((nestedPassiveUpdateCount = 0), + (rootWithPassiveNestedUpdates = null), + console.error( + "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." + )); null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber); @@ -8891,33 +8911,33 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_componentStack_2288; - var JSCompiler_object_inline_stack_2287 = workInProgress.pendingProps; + var JSCompiler_object_inline_componentStack_2301; + var JSCompiler_object_inline_stack_2300 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2285 = !1; + var JSCompiler_object_inline_message_2298 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_componentStack_2288 = didSuspend) || - (JSCompiler_object_inline_componentStack_2288 = + (JSCompiler_object_inline_componentStack_2301 = didSuspend) || + (JSCompiler_object_inline_componentStack_2301 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_componentStack_2288 && - ((JSCompiler_object_inline_message_2285 = !0), + JSCompiler_object_inline_componentStack_2301 && + ((JSCompiler_object_inline_message_2298 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_componentStack_2288 = + JSCompiler_object_inline_componentStack_2301 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2285 + JSCompiler_object_inline_message_2298 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); if (isHydrating) { - var JSCompiler_object_inline_digest_2286 = nextHydratableInstance; + var JSCompiler_object_inline_digest_2299 = nextHydratableInstance; var JSCompiler_temp; - if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2286)) { + if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2299)) { c: { - var instance = JSCompiler_object_inline_digest_2286; + var instance = JSCompiler_object_inline_digest_2299; for ( JSCompiler_temp = rootOrSingletonContext; 8 !== instance.nodeType; @@ -8958,19 +8978,19 @@ JSCompiler_temp && (warnNonHydratedInstance( workInProgress, - JSCompiler_object_inline_digest_2286 + JSCompiler_object_inline_digest_2299 ), throwOnHydrationMismatch(workInProgress)); } - JSCompiler_object_inline_digest_2286 = workInProgress.memoizedState; + JSCompiler_object_inline_digest_2299 = workInProgress.memoizedState; if ( - null !== JSCompiler_object_inline_digest_2286 && - ((JSCompiler_object_inline_digest_2286 = - JSCompiler_object_inline_digest_2286.dehydrated), - null !== JSCompiler_object_inline_digest_2286) + null !== JSCompiler_object_inline_digest_2299 && + ((JSCompiler_object_inline_digest_2299 = + JSCompiler_object_inline_digest_2299.dehydrated), + null !== JSCompiler_object_inline_digest_2299) ) return ( - JSCompiler_object_inline_digest_2286.data === + JSCompiler_object_inline_digest_2299.data === SUSPENSE_FALLBACK_START_DATA ? (workInProgress.lanes = 16) : (workInProgress.lanes = 536870912), @@ -8978,68 +8998,68 @@ ); popSuspenseHandler(workInProgress); } - JSCompiler_object_inline_digest_2286 = - JSCompiler_object_inline_stack_2287.children; - JSCompiler_temp = JSCompiler_object_inline_stack_2287.fallback; - if (JSCompiler_object_inline_message_2285) + JSCompiler_object_inline_digest_2299 = + JSCompiler_object_inline_stack_2300.children; + JSCompiler_temp = JSCompiler_object_inline_stack_2300.fallback; + if (JSCompiler_object_inline_message_2298) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2287 = + (JSCompiler_object_inline_stack_2300 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2286, + JSCompiler_object_inline_digest_2299, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2285 = workInProgress.child), - (JSCompiler_object_inline_message_2285.memoizedState = + (JSCompiler_object_inline_message_2298 = workInProgress.child), + (JSCompiler_object_inline_message_2298.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2285.childLanes = + (JSCompiler_object_inline_message_2298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2288, + JSCompiler_object_inline_componentStack_2301, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2287 + JSCompiler_object_inline_stack_2300 ); if ( "number" === - typeof JSCompiler_object_inline_stack_2287.unstable_expectedLoadTime + typeof JSCompiler_object_inline_stack_2300.unstable_expectedLoadTime ) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2287 = + (JSCompiler_object_inline_stack_2300 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2286, + JSCompiler_object_inline_digest_2299, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2285 = workInProgress.child), - (JSCompiler_object_inline_message_2285.memoizedState = + (JSCompiler_object_inline_message_2298 = workInProgress.child), + (JSCompiler_object_inline_message_2298.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2285.childLanes = + (JSCompiler_object_inline_message_2298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2288, + JSCompiler_object_inline_componentStack_2301, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - JSCompiler_object_inline_stack_2287 + JSCompiler_object_inline_stack_2300 ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_digest_2286 + JSCompiler_object_inline_digest_2299 ); } var prevState = current.memoizedState; if ( null !== prevState && - ((JSCompiler_object_inline_digest_2286 = prevState.dehydrated), - null !== JSCompiler_object_inline_digest_2286) + ((JSCompiler_object_inline_digest_2299 = prevState.dehydrated), + null !== JSCompiler_object_inline_digest_2299) ) { if (didSuspend) workInProgress.flags & 256 @@ -9056,94 +9076,94 @@ (workInProgress.flags |= 128), (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2285 = - JSCompiler_object_inline_stack_2287.fallback), - (JSCompiler_object_inline_digest_2286 = workInProgress.mode), - (JSCompiler_object_inline_stack_2287 = + (JSCompiler_object_inline_message_2298 = + JSCompiler_object_inline_stack_2300.fallback), + (JSCompiler_object_inline_digest_2299 = workInProgress.mode), + (JSCompiler_object_inline_stack_2300 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2287.children + children: JSCompiler_object_inline_stack_2300.children }, - JSCompiler_object_inline_digest_2286 + JSCompiler_object_inline_digest_2299 )), - (JSCompiler_object_inline_message_2285 = + (JSCompiler_object_inline_message_2298 = createFiberFromFragment( - JSCompiler_object_inline_message_2285, - JSCompiler_object_inline_digest_2286, + JSCompiler_object_inline_message_2298, + JSCompiler_object_inline_digest_2299, renderLanes, null )), - (JSCompiler_object_inline_message_2285.flags |= 2), - (JSCompiler_object_inline_stack_2287.return = workInProgress), - (JSCompiler_object_inline_message_2285.return = workInProgress), - (JSCompiler_object_inline_stack_2287.sibling = - JSCompiler_object_inline_message_2285), - (workInProgress.child = JSCompiler_object_inline_stack_2287), + (JSCompiler_object_inline_message_2298.flags |= 2), + (JSCompiler_object_inline_stack_2300.return = workInProgress), + (JSCompiler_object_inline_message_2298.return = workInProgress), + (JSCompiler_object_inline_stack_2300.sibling = + JSCompiler_object_inline_message_2298), + (workInProgress.child = JSCompiler_object_inline_stack_2300), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2287 = workInProgress.child), - (JSCompiler_object_inline_stack_2287.memoizedState = + (JSCompiler_object_inline_stack_2300 = workInProgress.child), + (JSCompiler_object_inline_stack_2300.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2287.childLanes = + (JSCompiler_object_inline_stack_2300.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2288, + JSCompiler_object_inline_componentStack_2301, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - (workInProgress = JSCompiler_object_inline_message_2285)); + (workInProgress = JSCompiler_object_inline_message_2298)); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), isHydrating && console.error( "We should not be hydrating here. This is a bug in React. Please file a bug." ), - JSCompiler_object_inline_digest_2286.data === + JSCompiler_object_inline_digest_2299.data === SUSPENSE_FALLBACK_START_DATA) ) { - JSCompiler_object_inline_componentStack_2288 = - JSCompiler_object_inline_digest_2286.nextSibling && - JSCompiler_object_inline_digest_2286.nextSibling.dataset; - if (JSCompiler_object_inline_componentStack_2288) { - JSCompiler_temp = JSCompiler_object_inline_componentStack_2288.dgst; - var message = JSCompiler_object_inline_componentStack_2288.msg; - instance = JSCompiler_object_inline_componentStack_2288.stck; + JSCompiler_object_inline_componentStack_2301 = + JSCompiler_object_inline_digest_2299.nextSibling && + JSCompiler_object_inline_digest_2299.nextSibling.dataset; + if (JSCompiler_object_inline_componentStack_2301) { + JSCompiler_temp = JSCompiler_object_inline_componentStack_2301.dgst; + var message = JSCompiler_object_inline_componentStack_2301.msg; + instance = JSCompiler_object_inline_componentStack_2301.stck; var componentStack = - JSCompiler_object_inline_componentStack_2288.cstck; + JSCompiler_object_inline_componentStack_2301.cstck; } - JSCompiler_object_inline_message_2285 = message; - JSCompiler_object_inline_digest_2286 = JSCompiler_temp; - JSCompiler_object_inline_stack_2287 = instance; - JSCompiler_object_inline_componentStack_2288 = componentStack; - "POSTPONE" !== JSCompiler_object_inline_digest_2286 && - ((JSCompiler_object_inline_message_2285 = - JSCompiler_object_inline_message_2285 - ? Error(JSCompiler_object_inline_message_2285) + JSCompiler_object_inline_message_2298 = message; + JSCompiler_object_inline_digest_2299 = JSCompiler_temp; + JSCompiler_object_inline_stack_2300 = instance; + JSCompiler_object_inline_componentStack_2301 = componentStack; + "POSTPONE" !== JSCompiler_object_inline_digest_2299 && + ((JSCompiler_object_inline_message_2298 = + JSCompiler_object_inline_message_2298 + ? Error(JSCompiler_object_inline_message_2298) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." )), - (JSCompiler_object_inline_message_2285.stack = - JSCompiler_object_inline_stack_2287 || ""), - (JSCompiler_object_inline_message_2285.digest = - JSCompiler_object_inline_digest_2286), - (JSCompiler_object_inline_componentStack_2288 = - void 0 === JSCompiler_object_inline_componentStack_2288 + (JSCompiler_object_inline_message_2298.stack = + JSCompiler_object_inline_stack_2300 || ""), + (JSCompiler_object_inline_message_2298.digest = + JSCompiler_object_inline_digest_2299), + (JSCompiler_object_inline_componentStack_2301 = + void 0 === JSCompiler_object_inline_componentStack_2301 ? null - : JSCompiler_object_inline_componentStack_2288), - "string" === typeof JSCompiler_object_inline_componentStack_2288 && + : JSCompiler_object_inline_componentStack_2301), + "string" === typeof JSCompiler_object_inline_componentStack_2301 && CapturedStacks.set( - JSCompiler_object_inline_message_2285, - JSCompiler_object_inline_componentStack_2288 + JSCompiler_object_inline_message_2298, + JSCompiler_object_inline_componentStack_2301 ), queueHydrationError({ - value: JSCompiler_object_inline_message_2285, + value: JSCompiler_object_inline_message_2298, source: null, - stack: JSCompiler_object_inline_componentStack_2288 + stack: JSCompiler_object_inline_componentStack_2301 })); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9158,25 +9178,25 @@ renderLanes, !1 ), - (JSCompiler_object_inline_componentStack_2288 = + (JSCompiler_object_inline_componentStack_2301 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_componentStack_2288) + didReceiveUpdate || JSCompiler_object_inline_componentStack_2301) ) { - JSCompiler_object_inline_componentStack_2288 = workInProgressRoot; - if (null !== JSCompiler_object_inline_componentStack_2288) { - JSCompiler_object_inline_stack_2287 = renderLanes & -renderLanes; - if (0 !== (JSCompiler_object_inline_stack_2287 & 42)) - JSCompiler_object_inline_stack_2287 = 1; + JSCompiler_object_inline_componentStack_2301 = workInProgressRoot; + if (null !== JSCompiler_object_inline_componentStack_2301) { + JSCompiler_object_inline_stack_2300 = renderLanes & -renderLanes; + if (0 !== (JSCompiler_object_inline_stack_2300 & 42)) + JSCompiler_object_inline_stack_2300 = 1; else - switch (JSCompiler_object_inline_stack_2287) { + switch (JSCompiler_object_inline_stack_2300) { case 2: - JSCompiler_object_inline_stack_2287 = 1; + JSCompiler_object_inline_stack_2300 = 1; break; case 8: - JSCompiler_object_inline_stack_2287 = 4; + JSCompiler_object_inline_stack_2300 = 4; break; case 32: - JSCompiler_object_inline_stack_2287 = 16; + JSCompiler_object_inline_stack_2300 = 16; break; case 128: case 256: @@ -9197,40 +9217,40 @@ case 8388608: case 16777216: case 33554432: - JSCompiler_object_inline_stack_2287 = 64; + JSCompiler_object_inline_stack_2300 = 64; break; case 268435456: - JSCompiler_object_inline_stack_2287 = 134217728; + JSCompiler_object_inline_stack_2300 = 134217728; break; default: - JSCompiler_object_inline_stack_2287 = 0; + JSCompiler_object_inline_stack_2300 = 0; } - JSCompiler_object_inline_stack_2287 = + JSCompiler_object_inline_stack_2300 = 0 !== - (JSCompiler_object_inline_stack_2287 & - (JSCompiler_object_inline_componentStack_2288.suspendedLanes | + (JSCompiler_object_inline_stack_2300 & + (JSCompiler_object_inline_componentStack_2301.suspendedLanes | renderLanes)) ? 0 - : JSCompiler_object_inline_stack_2287; + : JSCompiler_object_inline_stack_2300; if ( - 0 !== JSCompiler_object_inline_stack_2287 && - JSCompiler_object_inline_stack_2287 !== prevState.retryLane + 0 !== JSCompiler_object_inline_stack_2300 && + JSCompiler_object_inline_stack_2300 !== prevState.retryLane ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2287), + ((prevState.retryLane = JSCompiler_object_inline_stack_2300), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2287 + JSCompiler_object_inline_stack_2300 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_componentStack_2288, + JSCompiler_object_inline_componentStack_2301, current, - JSCompiler_object_inline_stack_2287 + JSCompiler_object_inline_stack_2300 ), SelectiveHydrationException) ); } - JSCompiler_object_inline_digest_2286.data === + JSCompiler_object_inline_digest_2299.data === SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9238,7 +9258,7 @@ renderLanes ); } else - JSCompiler_object_inline_digest_2286.data === + JSCompiler_object_inline_digest_2299.data === SUSPENSE_PENDING_START_DATA ? ((workInProgress.flags |= 128), (workInProgress.child = current.child), @@ -9246,12 +9266,12 @@ null, current )), - (JSCompiler_object_inline_digest_2286._reactRetry = + (JSCompiler_object_inline_digest_2299._reactRetry = workInProgress), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_digest_2286.nextSibling + JSCompiler_object_inline_digest_2299.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -9269,54 +9289,54 @@ (treeContextProvider = workInProgress)), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2287.children + JSCompiler_object_inline_stack_2300.children )), (workInProgress.flags |= 4096)); return workInProgress; } - if (JSCompiler_object_inline_message_2285) + if (JSCompiler_object_inline_message_2298) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2285 = - JSCompiler_object_inline_stack_2287.fallback), - (JSCompiler_object_inline_digest_2286 = workInProgress.mode), + (JSCompiler_object_inline_message_2298 = + JSCompiler_object_inline_stack_2300.fallback), + (JSCompiler_object_inline_digest_2299 = workInProgress.mode), (JSCompiler_temp = current.child), (instance = JSCompiler_temp.sibling), - (JSCompiler_object_inline_stack_2287 = createWorkInProgress( + (JSCompiler_object_inline_stack_2300 = createWorkInProgress( JSCompiler_temp, { mode: "hidden", - children: JSCompiler_object_inline_stack_2287.children + children: JSCompiler_object_inline_stack_2300.children } )), - (JSCompiler_object_inline_stack_2287.subtreeFlags = + (JSCompiler_object_inline_stack_2300.subtreeFlags = JSCompiler_temp.subtreeFlags & 31457280), null !== instance - ? (JSCompiler_object_inline_message_2285 = createWorkInProgress( + ? (JSCompiler_object_inline_message_2298 = createWorkInProgress( instance, - JSCompiler_object_inline_message_2285 + JSCompiler_object_inline_message_2298 )) - : ((JSCompiler_object_inline_message_2285 = createFiberFromFragment( - JSCompiler_object_inline_message_2285, - JSCompiler_object_inline_digest_2286, + : ((JSCompiler_object_inline_message_2298 = createFiberFromFragment( + JSCompiler_object_inline_message_2298, + JSCompiler_object_inline_digest_2299, renderLanes, null )), - (JSCompiler_object_inline_message_2285.flags |= 2)), - (JSCompiler_object_inline_message_2285.return = workInProgress), - (JSCompiler_object_inline_stack_2287.return = workInProgress), - (JSCompiler_object_inline_stack_2287.sibling = - JSCompiler_object_inline_message_2285), - (workInProgress.child = JSCompiler_object_inline_stack_2287), - (JSCompiler_object_inline_stack_2287 = - JSCompiler_object_inline_message_2285), - (JSCompiler_object_inline_message_2285 = workInProgress.child), - (JSCompiler_object_inline_digest_2286 = current.child.memoizedState), - null === JSCompiler_object_inline_digest_2286 - ? (JSCompiler_object_inline_digest_2286 = + (JSCompiler_object_inline_message_2298.flags |= 2)), + (JSCompiler_object_inline_message_2298.return = workInProgress), + (JSCompiler_object_inline_stack_2300.return = workInProgress), + (JSCompiler_object_inline_stack_2300.sibling = + JSCompiler_object_inline_message_2298), + (workInProgress.child = JSCompiler_object_inline_stack_2300), + (JSCompiler_object_inline_stack_2300 = + JSCompiler_object_inline_message_2298), + (JSCompiler_object_inline_message_2298 = workInProgress.child), + (JSCompiler_object_inline_digest_2299 = current.child.memoizedState), + null === JSCompiler_object_inline_digest_2299 + ? (JSCompiler_object_inline_digest_2299 = mountSuspenseOffscreenState(renderLanes)) : ((JSCompiler_temp = - JSCompiler_object_inline_digest_2286.cachePool), + JSCompiler_object_inline_digest_2299.cachePool), null !== JSCompiler_temp ? ((instance = CacheContext._currentValue), (JSCompiler_temp = @@ -9324,38 +9344,38 @@ ? { parent: instance, pool: instance } : JSCompiler_temp)) : (JSCompiler_temp = getSuspendedCache()), - (JSCompiler_object_inline_digest_2286 = { + (JSCompiler_object_inline_digest_2299 = { baseLanes: - JSCompiler_object_inline_digest_2286.baseLanes | renderLanes, + JSCompiler_object_inline_digest_2299.baseLanes | renderLanes, cachePool: JSCompiler_temp })), - (JSCompiler_object_inline_message_2285.memoizedState = - JSCompiler_object_inline_digest_2286), - (JSCompiler_object_inline_message_2285.childLanes = + (JSCompiler_object_inline_message_2298.memoizedState = + JSCompiler_object_inline_digest_2299), + (JSCompiler_object_inline_message_2298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2288, + JSCompiler_object_inline_componentStack_2301, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2287 + JSCompiler_object_inline_stack_2300 ); pushPrimaryTreeSuspenseHandler(workInProgress); renderLanes = current.child; current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2287.children + children: JSCompiler_object_inline_stack_2300.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_componentStack_2288 = + ((JSCompiler_object_inline_componentStack_2301 = workInProgress.deletions), - null === JSCompiler_object_inline_componentStack_2288 + null === JSCompiler_object_inline_componentStack_2301 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_componentStack_2288.push(current)); + : JSCompiler_object_inline_componentStack_2301.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -14579,7 +14599,7 @@ workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if ( 0 !== (executionContext & RenderContext) && root === workInProgressRoot @@ -14914,18 +14934,6 @@ } return !0; } - function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), - (root.pingedLanes = 0), - (root.warmLanes = 0)); - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); - } function markRootSuspended( root, suspendedLanes, @@ -15619,13 +15627,14 @@ ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings(); if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw Error("Should not already be working."); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; - reusableComponentDevToolDetails.track = - getGroupNameOfHighestPriorityLane(lanes); + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; + reusableComponentDevToolDetails.track = getGroupNameOfHighestPriorityLane( + didIncludeRenderPhaseUpdate + ); logRenderPhase(completedRenderStartTime, completedRenderEndTime); if (null === finishedWork) return null; - 0 === lanes && + 0 === didIncludeRenderPhaseUpdate && console.error( "root.finishedLanes should not be empty during a commit. This is a bug in React." ); @@ -15642,13 +15651,12 @@ completedRenderStartTime |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, completedRenderStartTime, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -15678,12 +15686,16 @@ (updatedLanes = executionContext), (executionContext |= CommitContext), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects( + root, + finishedWork, + didIncludeRenderPhaseUpdate + ), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), (root.current = finishedWork), - commitLayoutEffects(finishedWork, root, lanes), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), requestPaint(), (executionContext = updatedLanes), (ReactDOMSharedInternals.p = spawnedLane), @@ -15694,7 +15706,7 @@ (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : (releaseRootPooledCache(root, completedRenderStartTime), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); @@ -15722,15 +15734,14 @@ ); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); completedRenderStartTime = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (completedRenderStartTime & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (completedRenderStartTime & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); - transitions || finalizeRender(lanes, now$1()); + transitions || finalizeRender(didIncludeRenderPhaseUpdate, now$1()); flushSyncWorkAcrossRoots_impl(0, !1); return null; } @@ -15869,7 +15880,7 @@ sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError( sourceFiber, @@ -15908,7 +15919,7 @@ nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); return; } @@ -15943,11 +15954,6 @@ null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error( @@ -15971,7 +15977,7 @@ 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -16002,26 +16008,6 @@ null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } - function throwIfInfiniteUpdateLoopDetected() { - if (nestedUpdateCount > NESTED_UPDATE_LIMIT) - throw ( - ((nestedPassiveUpdateCount = nestedUpdateCount = 0), - (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), - executionContext & RenderContext && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error( - "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." - )) - ); - nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && - ((nestedPassiveUpdateCount = 0), - (rootWithPassiveNestedUpdates = null), - console.error( - "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." - )); - } function recursivelyTraverseAndDoubleInvokeEffectsInDEV( root$jscomp$0, parentFiber, @@ -24421,7 +24407,6 @@ workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, @@ -24434,12 +24419,12 @@ pendingPassiveEffectsRemainingLanes = 0, pendingPassiveEffectsRenderEndTime = -0, pendingPassiveTransitions = null, - NESTED_UPDATE_LIMIT = 100, + NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = !1, didScheduleUpdateDuringPassiveEffects = !1, - NESTED_PASSIVE_UPDATE_LIMIT = 100, + NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = !1, @@ -24990,11 +24975,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -25031,11 +25016,11 @@ !(function () { var internals = { bundleType: 1, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -25228,7 +25213,7 @@ identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -25507,7 +25492,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.profiling.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.profiling.js index 9e8edb55a908b..dd544acd9b5cf 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.profiling.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.profiling.js @@ -769,6 +769,11 @@ function createLaneMap(initial) { for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } +function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); +} function markRootFinished( root, finishedLanes, @@ -2575,7 +2580,12 @@ function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) { (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (50 < nestedUpdateCount) + throw ( + ((nestedUpdateCount = 0), + (rootWithNestedUpdates = null), + Error(formatProdErrorMessage(185))) + ); for (var parent = sourceFiber.return; null !== parent; ) (sourceFiber = parent), (parent = sourceFiber.return); return 3 === sourceFiber.tag ? sourceFiber.stateNode : null; @@ -11017,7 +11027,6 @@ var DefaultAsyncDispatcher = { workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, workInProgressRootRenderTargetTime = Infinity, workInProgressTransitions = null, @@ -11061,7 +11070,7 @@ function scheduleUpdateOnFiber(root, fiber, lane) { workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if (0 === (executionContext & 2) || root !== workInProgressRoot) isDevToolsPresent && addFiberToLanesMap(root, fiber, lane), root === workInProgressRoot && @@ -11342,15 +11351,6 @@ function isRenderConsistentWithExternalStores(finishedWork) { } return !0; } -function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); -} function markRootSuspended( root, suspendedLanes, @@ -11961,10 +11961,11 @@ function commitRootImpl( do flushPassiveEffects(); while (null !== rootWithPendingPassiveEffects); if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327)); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; - reusableComponentDevToolDetails.track = - getGroupNameOfHighestPriorityLane(lanes); + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; + reusableComponentDevToolDetails.track = getGroupNameOfHighestPriorityLane( + didIncludeRenderPhaseUpdate + ); logRenderPhase(completedRenderStartTime, completedRenderEndTime); if (null === finishedWork) return null; root.finishedWork = null; @@ -11977,13 +11978,12 @@ function commitRootImpl( completedRenderStartTime |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, completedRenderStartTime, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -12013,12 +12013,12 @@ function commitRootImpl( (updatedLanes = executionContext), (executionContext |= 4), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects(root, finishedWork, didIncludeRenderPhaseUpdate), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), (root.current = finishedWork), - commitLayoutEffects(finishedWork, root, lanes), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), requestPaint(), (executionContext = updatedLanes), (ReactDOMSharedInternals.p = spawnedLane), @@ -12029,7 +12029,7 @@ function commitRootImpl( (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : releaseRootPooledCache(root, completedRenderStartTime); completedRenderStartTime = root.pendingLanes; 0 === completedRenderStartTime && @@ -12049,15 +12049,14 @@ function commitRootImpl( }); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); completedRenderStartTime = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (completedRenderStartTime & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (completedRenderStartTime & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); - transitions || finalizeRender(lanes, now$1()); + transitions || finalizeRender(didIncludeRenderPhaseUpdate, now$1()); flushSyncWorkAcrossRoots_impl(0, !1); return null; } @@ -12155,7 +12154,7 @@ function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) { sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { if (3 === sourceFiber.tag) @@ -12188,7 +12187,7 @@ function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); break; } @@ -12218,10 +12217,6 @@ function pingSuspendedRoot(root, wakeable, pingedLanes) { null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); workInProgressRoot === root && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (4 === workInProgressRootExitStatus || @@ -12239,7 +12234,7 @@ function retryTimedOutBoundary(boundaryFiber, retryLane) { 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -12268,18 +12263,6 @@ function resolveRetryWakeable(boundaryFiber, wakeable) { null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } -function throwIfInfiniteUpdateLoopDetected() { - if (100 < nestedUpdateCount) - throw ( - ((nestedUpdateCount = 0), - (rootWithNestedUpdates = null), - executionContext & 2 && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error(formatProdErrorMessage(185))) - ); -} function restorePendingUpdaters(root, lanes) { isDevToolsPresent && root.memoizedUpdaters.forEach(function (schedulingFiber) { @@ -12575,20 +12558,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1485 = 0; - i$jscomp$inline_1485 < simpleEventPluginEvents.length; - i$jscomp$inline_1485++ + var i$jscomp$inline_1498 = 0; + i$jscomp$inline_1498 < simpleEventPluginEvents.length; + i$jscomp$inline_1498++ ) { - var eventName$jscomp$inline_1486 = - simpleEventPluginEvents[i$jscomp$inline_1485], - domEventName$jscomp$inline_1487 = - eventName$jscomp$inline_1486.toLowerCase(), - capitalizedEvent$jscomp$inline_1488 = - eventName$jscomp$inline_1486[0].toUpperCase() + - eventName$jscomp$inline_1486.slice(1); + var eventName$jscomp$inline_1499 = + simpleEventPluginEvents[i$jscomp$inline_1498], + domEventName$jscomp$inline_1500 = + eventName$jscomp$inline_1499.toLowerCase(), + capitalizedEvent$jscomp$inline_1501 = + eventName$jscomp$inline_1499[0].toUpperCase() + + eventName$jscomp$inline_1499.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1487, - "on" + capitalizedEvent$jscomp$inline_1488 + domEventName$jscomp$inline_1500, + "on" + capitalizedEvent$jscomp$inline_1501 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -16054,16 +16037,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_1732 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_1745 = React.version; if ( - "19.0.0-experimental-2d16326d-20240930" !== - isomorphicReactPackageVersion$jscomp$inline_1732 + "19.0.0-experimental-d5bba18b-20241009" !== + isomorphicReactPackageVersion$jscomp$inline_1745 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_1732, - "19.0.0-experimental-2d16326d-20240930" + isomorphicReactPackageVersion$jscomp$inline_1745, + "19.0.0-experimental-d5bba18b-20241009" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -16083,25 +16066,25 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2170 = { +var internals$jscomp$inline_2183 = { bundleType: 0, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2171 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2184 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2171.isDisabled && - hook$jscomp$inline_2171.supportsFiber + !hook$jscomp$inline_2184.isDisabled && + hook$jscomp$inline_2184.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2171.inject( - internals$jscomp$inline_2170 + (rendererID = hook$jscomp$inline_2184.inject( + internals$jscomp$inline_2183 )), - (injectedHook = hook$jscomp$inline_2171); + (injectedHook = hook$jscomp$inline_2184); } catch (err) {} } function noop() {} @@ -16228,7 +16211,7 @@ exports.hydrateRoot = function (container, initialChildren, options) { identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -16354,7 +16337,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js index 160085ea6b5cb..6842c00310370 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js @@ -9291,5 +9291,5 @@ 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js index 7be2214bc5e2d..c740d20aca96e 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js @@ -6058,4 +6058,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js index fc2f1b435a219..2c17fd66a4283 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js @@ -9291,5 +9291,5 @@ 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js index f38e18c012a65..85b8a574fef2f 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js @@ -6150,4 +6150,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js index dbd60c9759270..e5b223043ec14 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js @@ -8189,11 +8189,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -9973,5 +9973,5 @@ startWork(request); }); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js index ab8ca32d547ed..22bdb68dfc4e3 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js @@ -6587,12 +6587,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.0.0-experimental-2d16326d-20240930" + "19.0.0-experimental-d5bba18b-20241009" ) ); } @@ -6847,4 +6847,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js index a41ccc466b676..7ec2fbd76a0c5 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js @@ -6069,13 +6069,13 @@ function addToReplayParent(node, parentKeyPath, trackedPostpones) { } var isomorphicReactPackageVersion$jscomp$inline_779 = React.version; if ( - "19.0.0-experimental-2d16326d-20240930" !== + "19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion$jscomp$inline_779 ) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion$jscomp$inline_779 + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); exports.renderToReadableStream = function (children, options) { return new Promise(function (resolve, reject) { @@ -6166,4 +6166,4 @@ exports.renderToReadableStream = function (children, options) { startWork(request); }); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js index cb99a49dce055..00c27043471ca 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js @@ -8206,11 +8206,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -9997,5 +9997,5 @@ const setTimeoutOrImmediate = ? globalThis['set' + 'Immediate'] : setTimeout; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js index 95a1295cf8f01..ce633f2705688 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js @@ -6689,11 +6689,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -6958,4 +6958,4 @@ const setTimeoutOrImmediate = ? globalThis['set' + 'Immediate'] : setTimeout; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js index b5f342f00be3b..260f6a2ac6a1d 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js @@ -8070,11 +8070,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -9847,5 +9847,5 @@ } }; }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js index 35e364eedde84..fe36e239180a0 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js @@ -6568,11 +6568,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -6823,4 +6823,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.development.js index 2252aaa0b79b4..6da4d8841c485 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.development.js @@ -1130,6 +1130,13 @@ for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } + function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), + (root.pingedLanes = 0), + (root.warmLanes = 0)); + } function markRootFinished( root, finishedLanes, @@ -3917,7 +3924,20 @@ (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (nestedUpdateCount > NESTED_UPDATE_LIMIT) + throw ( + ((nestedPassiveUpdateCount = nestedUpdateCount = 0), + (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), + Error( + "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." + )) + ); + nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && + ((nestedPassiveUpdateCount = 0), + (rootWithPassiveNestedUpdates = null), + console.error( + "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." + )); null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber); @@ -8924,33 +8944,33 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_componentStack_2317; - var JSCompiler_object_inline_stack_2316 = workInProgress.pendingProps; + var JSCompiler_object_inline_componentStack_2330; + var JSCompiler_object_inline_stack_2329 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2314 = !1; + var JSCompiler_object_inline_message_2327 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_componentStack_2317 = didSuspend) || - (JSCompiler_object_inline_componentStack_2317 = + (JSCompiler_object_inline_componentStack_2330 = didSuspend) || + (JSCompiler_object_inline_componentStack_2330 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_componentStack_2317 && - ((JSCompiler_object_inline_message_2314 = !0), + JSCompiler_object_inline_componentStack_2330 && + ((JSCompiler_object_inline_message_2327 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_componentStack_2317 = + JSCompiler_object_inline_componentStack_2330 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2314 + JSCompiler_object_inline_message_2327 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); if (isHydrating) { - var JSCompiler_object_inline_digest_2315 = nextHydratableInstance; + var JSCompiler_object_inline_digest_2328 = nextHydratableInstance; var JSCompiler_temp; - if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2315)) { + if (!(JSCompiler_temp = !JSCompiler_object_inline_digest_2328)) { c: { - var instance = JSCompiler_object_inline_digest_2315; + var instance = JSCompiler_object_inline_digest_2328; for ( JSCompiler_temp = rootOrSingletonContext; 8 !== instance.nodeType; @@ -8991,19 +9011,19 @@ JSCompiler_temp && (warnNonHydratedInstance( workInProgress, - JSCompiler_object_inline_digest_2315 + JSCompiler_object_inline_digest_2328 ), throwOnHydrationMismatch(workInProgress)); } - JSCompiler_object_inline_digest_2315 = workInProgress.memoizedState; + JSCompiler_object_inline_digest_2328 = workInProgress.memoizedState; if ( - null !== JSCompiler_object_inline_digest_2315 && - ((JSCompiler_object_inline_digest_2315 = - JSCompiler_object_inline_digest_2315.dehydrated), - null !== JSCompiler_object_inline_digest_2315) + null !== JSCompiler_object_inline_digest_2328 && + ((JSCompiler_object_inline_digest_2328 = + JSCompiler_object_inline_digest_2328.dehydrated), + null !== JSCompiler_object_inline_digest_2328) ) return ( - JSCompiler_object_inline_digest_2315.data === + JSCompiler_object_inline_digest_2328.data === SUSPENSE_FALLBACK_START_DATA ? (workInProgress.lanes = 16) : (workInProgress.lanes = 536870912), @@ -9011,68 +9031,68 @@ ); popSuspenseHandler(workInProgress); } - JSCompiler_object_inline_digest_2315 = - JSCompiler_object_inline_stack_2316.children; - JSCompiler_temp = JSCompiler_object_inline_stack_2316.fallback; - if (JSCompiler_object_inline_message_2314) + JSCompiler_object_inline_digest_2328 = + JSCompiler_object_inline_stack_2329.children; + JSCompiler_temp = JSCompiler_object_inline_stack_2329.fallback; + if (JSCompiler_object_inline_message_2327) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2316 = + (JSCompiler_object_inline_stack_2329 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2315, + JSCompiler_object_inline_digest_2328, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2314 = workInProgress.child), - (JSCompiler_object_inline_message_2314.memoizedState = + (JSCompiler_object_inline_message_2327 = workInProgress.child), + (JSCompiler_object_inline_message_2327.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2314.childLanes = + (JSCompiler_object_inline_message_2327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2317, + JSCompiler_object_inline_componentStack_2330, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2316 + JSCompiler_object_inline_stack_2329 ); if ( "number" === - typeof JSCompiler_object_inline_stack_2316.unstable_expectedLoadTime + typeof JSCompiler_object_inline_stack_2329.unstable_expectedLoadTime ) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_stack_2316 = + (JSCompiler_object_inline_stack_2329 = mountSuspenseFallbackChildren( workInProgress, - JSCompiler_object_inline_digest_2315, + JSCompiler_object_inline_digest_2328, JSCompiler_temp, renderLanes )), - (JSCompiler_object_inline_message_2314 = workInProgress.child), - (JSCompiler_object_inline_message_2314.memoizedState = + (JSCompiler_object_inline_message_2327 = workInProgress.child), + (JSCompiler_object_inline_message_2327.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_message_2314.childLanes = + (JSCompiler_object_inline_message_2327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2317, + JSCompiler_object_inline_componentStack_2330, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - JSCompiler_object_inline_stack_2316 + JSCompiler_object_inline_stack_2329 ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_digest_2315 + JSCompiler_object_inline_digest_2328 ); } var prevState = current.memoizedState; if ( null !== prevState && - ((JSCompiler_object_inline_digest_2315 = prevState.dehydrated), - null !== JSCompiler_object_inline_digest_2315) + ((JSCompiler_object_inline_digest_2328 = prevState.dehydrated), + null !== JSCompiler_object_inline_digest_2328) ) { if (didSuspend) workInProgress.flags & 256 @@ -9089,94 +9109,94 @@ (workInProgress.flags |= 128), (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2314 = - JSCompiler_object_inline_stack_2316.fallback), - (JSCompiler_object_inline_digest_2315 = workInProgress.mode), - (JSCompiler_object_inline_stack_2316 = + (JSCompiler_object_inline_message_2327 = + JSCompiler_object_inline_stack_2329.fallback), + (JSCompiler_object_inline_digest_2328 = workInProgress.mode), + (JSCompiler_object_inline_stack_2329 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2316.children + children: JSCompiler_object_inline_stack_2329.children }, - JSCompiler_object_inline_digest_2315 + JSCompiler_object_inline_digest_2328 )), - (JSCompiler_object_inline_message_2314 = + (JSCompiler_object_inline_message_2327 = createFiberFromFragment( - JSCompiler_object_inline_message_2314, - JSCompiler_object_inline_digest_2315, + JSCompiler_object_inline_message_2327, + JSCompiler_object_inline_digest_2328, renderLanes, null )), - (JSCompiler_object_inline_message_2314.flags |= 2), - (JSCompiler_object_inline_stack_2316.return = workInProgress), - (JSCompiler_object_inline_message_2314.return = workInProgress), - (JSCompiler_object_inline_stack_2316.sibling = - JSCompiler_object_inline_message_2314), - (workInProgress.child = JSCompiler_object_inline_stack_2316), + (JSCompiler_object_inline_message_2327.flags |= 2), + (JSCompiler_object_inline_stack_2329.return = workInProgress), + (JSCompiler_object_inline_message_2327.return = workInProgress), + (JSCompiler_object_inline_stack_2329.sibling = + JSCompiler_object_inline_message_2327), + (workInProgress.child = JSCompiler_object_inline_stack_2329), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2316 = workInProgress.child), - (JSCompiler_object_inline_stack_2316.memoizedState = + (JSCompiler_object_inline_stack_2329 = workInProgress.child), + (JSCompiler_object_inline_stack_2329.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2316.childLanes = + (JSCompiler_object_inline_stack_2329.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2317, + JSCompiler_object_inline_componentStack_2330, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - (workInProgress = JSCompiler_object_inline_message_2314)); + (workInProgress = JSCompiler_object_inline_message_2327)); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), isHydrating && console.error( "We should not be hydrating here. This is a bug in React. Please file a bug." ), - JSCompiler_object_inline_digest_2315.data === + JSCompiler_object_inline_digest_2328.data === SUSPENSE_FALLBACK_START_DATA) ) { - JSCompiler_object_inline_componentStack_2317 = - JSCompiler_object_inline_digest_2315.nextSibling && - JSCompiler_object_inline_digest_2315.nextSibling.dataset; - if (JSCompiler_object_inline_componentStack_2317) { - JSCompiler_temp = JSCompiler_object_inline_componentStack_2317.dgst; - var message = JSCompiler_object_inline_componentStack_2317.msg; - instance = JSCompiler_object_inline_componentStack_2317.stck; + JSCompiler_object_inline_componentStack_2330 = + JSCompiler_object_inline_digest_2328.nextSibling && + JSCompiler_object_inline_digest_2328.nextSibling.dataset; + if (JSCompiler_object_inline_componentStack_2330) { + JSCompiler_temp = JSCompiler_object_inline_componentStack_2330.dgst; + var message = JSCompiler_object_inline_componentStack_2330.msg; + instance = JSCompiler_object_inline_componentStack_2330.stck; var componentStack = - JSCompiler_object_inline_componentStack_2317.cstck; + JSCompiler_object_inline_componentStack_2330.cstck; } - JSCompiler_object_inline_message_2314 = message; - JSCompiler_object_inline_digest_2315 = JSCompiler_temp; - JSCompiler_object_inline_stack_2316 = instance; - JSCompiler_object_inline_componentStack_2317 = componentStack; - "POSTPONE" !== JSCompiler_object_inline_digest_2315 && - ((JSCompiler_object_inline_message_2314 = - JSCompiler_object_inline_message_2314 - ? Error(JSCompiler_object_inline_message_2314) + JSCompiler_object_inline_message_2327 = message; + JSCompiler_object_inline_digest_2328 = JSCompiler_temp; + JSCompiler_object_inline_stack_2329 = instance; + JSCompiler_object_inline_componentStack_2330 = componentStack; + "POSTPONE" !== JSCompiler_object_inline_digest_2328 && + ((JSCompiler_object_inline_message_2327 = + JSCompiler_object_inline_message_2327 + ? Error(JSCompiler_object_inline_message_2327) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." )), - (JSCompiler_object_inline_message_2314.stack = - JSCompiler_object_inline_stack_2316 || ""), - (JSCompiler_object_inline_message_2314.digest = - JSCompiler_object_inline_digest_2315), - (JSCompiler_object_inline_componentStack_2317 = - void 0 === JSCompiler_object_inline_componentStack_2317 + (JSCompiler_object_inline_message_2327.stack = + JSCompiler_object_inline_stack_2329 || ""), + (JSCompiler_object_inline_message_2327.digest = + JSCompiler_object_inline_digest_2328), + (JSCompiler_object_inline_componentStack_2330 = + void 0 === JSCompiler_object_inline_componentStack_2330 ? null - : JSCompiler_object_inline_componentStack_2317), - "string" === typeof JSCompiler_object_inline_componentStack_2317 && + : JSCompiler_object_inline_componentStack_2330), + "string" === typeof JSCompiler_object_inline_componentStack_2330 && CapturedStacks.set( - JSCompiler_object_inline_message_2314, - JSCompiler_object_inline_componentStack_2317 + JSCompiler_object_inline_message_2327, + JSCompiler_object_inline_componentStack_2330 ), queueHydrationError({ - value: JSCompiler_object_inline_message_2314, + value: JSCompiler_object_inline_message_2327, source: null, - stack: JSCompiler_object_inline_componentStack_2317 + stack: JSCompiler_object_inline_componentStack_2330 })); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9191,25 +9211,25 @@ renderLanes, !1 ), - (JSCompiler_object_inline_componentStack_2317 = + (JSCompiler_object_inline_componentStack_2330 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_componentStack_2317) + didReceiveUpdate || JSCompiler_object_inline_componentStack_2330) ) { - JSCompiler_object_inline_componentStack_2317 = workInProgressRoot; - if (null !== JSCompiler_object_inline_componentStack_2317) { - JSCompiler_object_inline_stack_2316 = renderLanes & -renderLanes; - if (0 !== (JSCompiler_object_inline_stack_2316 & 42)) - JSCompiler_object_inline_stack_2316 = 1; + JSCompiler_object_inline_componentStack_2330 = workInProgressRoot; + if (null !== JSCompiler_object_inline_componentStack_2330) { + JSCompiler_object_inline_stack_2329 = renderLanes & -renderLanes; + if (0 !== (JSCompiler_object_inline_stack_2329 & 42)) + JSCompiler_object_inline_stack_2329 = 1; else - switch (JSCompiler_object_inline_stack_2316) { + switch (JSCompiler_object_inline_stack_2329) { case 2: - JSCompiler_object_inline_stack_2316 = 1; + JSCompiler_object_inline_stack_2329 = 1; break; case 8: - JSCompiler_object_inline_stack_2316 = 4; + JSCompiler_object_inline_stack_2329 = 4; break; case 32: - JSCompiler_object_inline_stack_2316 = 16; + JSCompiler_object_inline_stack_2329 = 16; break; case 128: case 256: @@ -9230,40 +9250,40 @@ case 8388608: case 16777216: case 33554432: - JSCompiler_object_inline_stack_2316 = 64; + JSCompiler_object_inline_stack_2329 = 64; break; case 268435456: - JSCompiler_object_inline_stack_2316 = 134217728; + JSCompiler_object_inline_stack_2329 = 134217728; break; default: - JSCompiler_object_inline_stack_2316 = 0; + JSCompiler_object_inline_stack_2329 = 0; } - JSCompiler_object_inline_stack_2316 = + JSCompiler_object_inline_stack_2329 = 0 !== - (JSCompiler_object_inline_stack_2316 & - (JSCompiler_object_inline_componentStack_2317.suspendedLanes | + (JSCompiler_object_inline_stack_2329 & + (JSCompiler_object_inline_componentStack_2330.suspendedLanes | renderLanes)) ? 0 - : JSCompiler_object_inline_stack_2316; + : JSCompiler_object_inline_stack_2329; if ( - 0 !== JSCompiler_object_inline_stack_2316 && - JSCompiler_object_inline_stack_2316 !== prevState.retryLane + 0 !== JSCompiler_object_inline_stack_2329 && + JSCompiler_object_inline_stack_2329 !== prevState.retryLane ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2316), + ((prevState.retryLane = JSCompiler_object_inline_stack_2329), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2316 + JSCompiler_object_inline_stack_2329 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_componentStack_2317, + JSCompiler_object_inline_componentStack_2330, current, - JSCompiler_object_inline_stack_2316 + JSCompiler_object_inline_stack_2329 ), SelectiveHydrationException) ); } - JSCompiler_object_inline_digest_2315.data === + JSCompiler_object_inline_digest_2328.data === SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -9271,7 +9291,7 @@ renderLanes ); } else - JSCompiler_object_inline_digest_2315.data === + JSCompiler_object_inline_digest_2328.data === SUSPENSE_PENDING_START_DATA ? ((workInProgress.flags |= 128), (workInProgress.child = current.child), @@ -9279,12 +9299,12 @@ null, current )), - (JSCompiler_object_inline_digest_2315._reactRetry = + (JSCompiler_object_inline_digest_2328._reactRetry = workInProgress), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_digest_2315.nextSibling + JSCompiler_object_inline_digest_2328.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -9302,54 +9322,54 @@ (treeContextProvider = workInProgress)), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2316.children + JSCompiler_object_inline_stack_2329.children )), (workInProgress.flags |= 4096)); return workInProgress; } - if (JSCompiler_object_inline_message_2314) + if (JSCompiler_object_inline_message_2327) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_message_2314 = - JSCompiler_object_inline_stack_2316.fallback), - (JSCompiler_object_inline_digest_2315 = workInProgress.mode), + (JSCompiler_object_inline_message_2327 = + JSCompiler_object_inline_stack_2329.fallback), + (JSCompiler_object_inline_digest_2328 = workInProgress.mode), (JSCompiler_temp = current.child), (instance = JSCompiler_temp.sibling), - (JSCompiler_object_inline_stack_2316 = createWorkInProgress( + (JSCompiler_object_inline_stack_2329 = createWorkInProgress( JSCompiler_temp, { mode: "hidden", - children: JSCompiler_object_inline_stack_2316.children + children: JSCompiler_object_inline_stack_2329.children } )), - (JSCompiler_object_inline_stack_2316.subtreeFlags = + (JSCompiler_object_inline_stack_2329.subtreeFlags = JSCompiler_temp.subtreeFlags & 31457280), null !== instance - ? (JSCompiler_object_inline_message_2314 = createWorkInProgress( + ? (JSCompiler_object_inline_message_2327 = createWorkInProgress( instance, - JSCompiler_object_inline_message_2314 + JSCompiler_object_inline_message_2327 )) - : ((JSCompiler_object_inline_message_2314 = createFiberFromFragment( - JSCompiler_object_inline_message_2314, - JSCompiler_object_inline_digest_2315, + : ((JSCompiler_object_inline_message_2327 = createFiberFromFragment( + JSCompiler_object_inline_message_2327, + JSCompiler_object_inline_digest_2328, renderLanes, null )), - (JSCompiler_object_inline_message_2314.flags |= 2)), - (JSCompiler_object_inline_message_2314.return = workInProgress), - (JSCompiler_object_inline_stack_2316.return = workInProgress), - (JSCompiler_object_inline_stack_2316.sibling = - JSCompiler_object_inline_message_2314), - (workInProgress.child = JSCompiler_object_inline_stack_2316), - (JSCompiler_object_inline_stack_2316 = - JSCompiler_object_inline_message_2314), - (JSCompiler_object_inline_message_2314 = workInProgress.child), - (JSCompiler_object_inline_digest_2315 = current.child.memoizedState), - null === JSCompiler_object_inline_digest_2315 - ? (JSCompiler_object_inline_digest_2315 = + (JSCompiler_object_inline_message_2327.flags |= 2)), + (JSCompiler_object_inline_message_2327.return = workInProgress), + (JSCompiler_object_inline_stack_2329.return = workInProgress), + (JSCompiler_object_inline_stack_2329.sibling = + JSCompiler_object_inline_message_2327), + (workInProgress.child = JSCompiler_object_inline_stack_2329), + (JSCompiler_object_inline_stack_2329 = + JSCompiler_object_inline_message_2327), + (JSCompiler_object_inline_message_2327 = workInProgress.child), + (JSCompiler_object_inline_digest_2328 = current.child.memoizedState), + null === JSCompiler_object_inline_digest_2328 + ? (JSCompiler_object_inline_digest_2328 = mountSuspenseOffscreenState(renderLanes)) : ((JSCompiler_temp = - JSCompiler_object_inline_digest_2315.cachePool), + JSCompiler_object_inline_digest_2328.cachePool), null !== JSCompiler_temp ? ((instance = CacheContext._currentValue), (JSCompiler_temp = @@ -9357,38 +9377,38 @@ ? { parent: instance, pool: instance } : JSCompiler_temp)) : (JSCompiler_temp = getSuspendedCache()), - (JSCompiler_object_inline_digest_2315 = { + (JSCompiler_object_inline_digest_2328 = { baseLanes: - JSCompiler_object_inline_digest_2315.baseLanes | renderLanes, + JSCompiler_object_inline_digest_2328.baseLanes | renderLanes, cachePool: JSCompiler_temp })), - (JSCompiler_object_inline_message_2314.memoizedState = - JSCompiler_object_inline_digest_2315), - (JSCompiler_object_inline_message_2314.childLanes = + (JSCompiler_object_inline_message_2327.memoizedState = + JSCompiler_object_inline_digest_2328), + (JSCompiler_object_inline_message_2327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_componentStack_2317, + JSCompiler_object_inline_componentStack_2330, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2316 + JSCompiler_object_inline_stack_2329 ); pushPrimaryTreeSuspenseHandler(workInProgress); renderLanes = current.child; current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2316.children + children: JSCompiler_object_inline_stack_2329.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_componentStack_2317 = + ((JSCompiler_object_inline_componentStack_2330 = workInProgress.deletions), - null === JSCompiler_object_inline_componentStack_2317 + null === JSCompiler_object_inline_componentStack_2330 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_componentStack_2317.push(current)); + : JSCompiler_object_inline_componentStack_2330.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -14794,7 +14814,7 @@ workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if ( 0 !== (executionContext & RenderContext) && root === workInProgressRoot @@ -15125,18 +15145,6 @@ } return !0; } - function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), - (root.pingedLanes = 0), - (root.warmLanes = 0)); - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); - } function markRootSuspended( root, suspendedLanes, @@ -15830,13 +15838,14 @@ ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings(); if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw Error("Should not already be working."); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; - reusableComponentDevToolDetails.track = - getGroupNameOfHighestPriorityLane(lanes); + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; + reusableComponentDevToolDetails.track = getGroupNameOfHighestPriorityLane( + didIncludeRenderPhaseUpdate + ); logRenderPhase(completedRenderStartTime, completedRenderEndTime); if (null === finishedWork) return null; - 0 === lanes && + 0 === didIncludeRenderPhaseUpdate && console.error( "root.finishedLanes should not be empty during a commit. This is a bug in React." ); @@ -15853,13 +15862,12 @@ completedRenderStartTime |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, completedRenderStartTime, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -15889,12 +15897,16 @@ (updatedLanes = executionContext), (executionContext |= CommitContext), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects( + root, + finishedWork, + didIncludeRenderPhaseUpdate + ), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), (root.current = finishedWork), - commitLayoutEffects(finishedWork, root, lanes), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), requestPaint(), (executionContext = updatedLanes), (ReactDOMSharedInternals.p = spawnedLane), @@ -15905,7 +15917,7 @@ (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : (releaseRootPooledCache(root, completedRenderStartTime), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); @@ -15933,15 +15945,14 @@ ); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); completedRenderStartTime = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (completedRenderStartTime & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (completedRenderStartTime & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); - transitions || finalizeRender(lanes, now$1()); + transitions || finalizeRender(didIncludeRenderPhaseUpdate, now$1()); flushSyncWorkAcrossRoots_impl(0, !1); return null; } @@ -16080,7 +16091,7 @@ sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError( sourceFiber, @@ -16119,7 +16130,7 @@ nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); return; } @@ -16154,11 +16165,6 @@ null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error( @@ -16182,7 +16188,7 @@ 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -16213,26 +16219,6 @@ null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } - function throwIfInfiniteUpdateLoopDetected() { - if (nestedUpdateCount > NESTED_UPDATE_LIMIT) - throw ( - ((nestedPassiveUpdateCount = nestedUpdateCount = 0), - (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), - executionContext & RenderContext && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error( - "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." - )) - ); - nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && - ((nestedPassiveUpdateCount = 0), - (rootWithPassiveNestedUpdates = null), - console.error( - "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." - )); - } function recursivelyTraverseAndDoubleInvokeEffectsInDEV( root$jscomp$0, parentFiber, @@ -24698,7 +24684,6 @@ workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, @@ -24711,12 +24696,12 @@ pendingPassiveEffectsRemainingLanes = 0, pendingPassiveEffectsRenderEndTime = -0, pendingPassiveTransitions = null, - NESTED_UPDATE_LIMIT = 100, + NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = !1, didScheduleUpdateDuringPassiveEffects = !1, - NESTED_PASSIVE_UPDATE_LIMIT = 100, + NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = !1, @@ -25267,11 +25252,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-experimental-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-experimental-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-experimental-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-experimental-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -25308,11 +25293,11 @@ !(function () { var internals = { bundleType: 1, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -25585,7 +25570,7 @@ identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -25620,5 +25605,5 @@ } }; }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.production.js index 9c0d8699de540..84d7af5157230 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.production.js @@ -691,6 +691,11 @@ function createLaneMap(initial) { for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } +function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); +} function markRootFinished( root, finishedLanes, @@ -2484,7 +2489,12 @@ function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) { (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (50 < nestedUpdateCount) + throw ( + ((nestedUpdateCount = 0), + (rootWithNestedUpdates = null), + Error(formatProdErrorMessage(185))) + ); for (var parent = sourceFiber.return; null !== parent; ) (sourceFiber = parent), (parent = sourceFiber.return); return 3 === sourceFiber.tag ? sourceFiber.stateNode : null; @@ -10606,7 +10616,6 @@ var PossiblyWeakMap = "function" === typeof WeakMap ? WeakMap : Map, workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, workInProgressRootRenderTargetTime = Infinity, workInProgressTransitions = null, @@ -10649,7 +10658,7 @@ function scheduleUpdateOnFiber(root, fiber, lane) { workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if (0 === (executionContext & 2) || root !== workInProgressRoot) root === workInProgressRoot && (0 === (executionContext & 2) && @@ -10928,15 +10937,6 @@ function isRenderConsistentWithExternalStores(finishedWork) { } return !0; } -function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); -} function markRootSuspended( root, suspendedLanes, @@ -11435,8 +11435,8 @@ function commitRootImpl( do flushPassiveEffects(); while (null !== rootWithPendingPassiveEffects); if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327)); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; if (null === finishedWork) return null; root.finishedWork = null; root.finishedLanes = 0; @@ -11448,13 +11448,12 @@ function commitRootImpl( remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -11491,7 +11490,7 @@ function commitRootImpl( rootDoesHavePassiveEffects ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : releaseRootPooledCache(root, remainingLanes); remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); @@ -11509,9 +11508,7 @@ function commitRootImpl( }); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && 0 !== (remainingLanes & 42) ? root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root)) @@ -11576,7 +11573,7 @@ function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) { sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { if (3 === sourceFiber.tag) @@ -11609,7 +11606,7 @@ function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); break; } @@ -11638,10 +11635,6 @@ function pingSuspendedRoot(root, wakeable, pingedLanes) { null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); workInProgressRoot === root && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (4 === workInProgressRootExitStatus || @@ -11659,7 +11652,7 @@ function retryTimedOutBoundary(boundaryFiber, retryLane) { 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -11688,18 +11681,6 @@ function resolveRetryWakeable(boundaryFiber, wakeable) { null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } -function throwIfInfiniteUpdateLoopDetected() { - if (100 < nestedUpdateCount) - throw ( - ((nestedUpdateCount = 0), - (rootWithNestedUpdates = null), - executionContext & 2 && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error(formatProdErrorMessage(185))) - ); -} function scheduleCallback$1(priorityLevel, callback) { return scheduleCallback$3(priorityLevel, callback); } @@ -11986,20 +11967,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1441 = 0; - i$jscomp$inline_1441 < simpleEventPluginEvents.length; - i$jscomp$inline_1441++ + var i$jscomp$inline_1454 = 0; + i$jscomp$inline_1454 < simpleEventPluginEvents.length; + i$jscomp$inline_1454++ ) { - var eventName$jscomp$inline_1442 = - simpleEventPluginEvents[i$jscomp$inline_1441], - domEventName$jscomp$inline_1443 = - eventName$jscomp$inline_1442.toLowerCase(), - capitalizedEvent$jscomp$inline_1444 = - eventName$jscomp$inline_1442[0].toUpperCase() + - eventName$jscomp$inline_1442.slice(1); + var eventName$jscomp$inline_1455 = + simpleEventPluginEvents[i$jscomp$inline_1454], + domEventName$jscomp$inline_1456 = + eventName$jscomp$inline_1455.toLowerCase(), + capitalizedEvent$jscomp$inline_1457 = + eventName$jscomp$inline_1455[0].toUpperCase() + + eventName$jscomp$inline_1455.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1443, - "on" + capitalizedEvent$jscomp$inline_1444 + domEventName$jscomp$inline_1456, + "on" + capitalizedEvent$jscomp$inline_1457 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -15497,16 +15478,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_1688 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_1701 = React.version; if ( - "19.0.0-experimental-2d16326d-20240930" !== - isomorphicReactPackageVersion$jscomp$inline_1688 + "19.0.0-experimental-d5bba18b-20241009" !== + isomorphicReactPackageVersion$jscomp$inline_1701 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_1688, - "19.0.0-experimental-2d16326d-20240930" + isomorphicReactPackageVersion$jscomp$inline_1701, + "19.0.0-experimental-d5bba18b-20241009" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -15526,25 +15507,25 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2158 = { +var internals$jscomp$inline_2171 = { bundleType: 0, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930" + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2159 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2172 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2159.isDisabled && - hook$jscomp$inline_2159.supportsFiber + !hook$jscomp$inline_2172.isDisabled && + hook$jscomp$inline_2172.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2159.inject( - internals$jscomp$inline_2158 + (rendererID = hook$jscomp$inline_2172.inject( + internals$jscomp$inline_2171 )), - (injectedHook = hook$jscomp$inline_2159); + (injectedHook = hook$jscomp$inline_2172); } catch (err) {} } exports.createComponentSelector = function (component) { @@ -15763,7 +15744,7 @@ exports.hydrateRoot = function (container, initialChildren, options) { identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -15787,4 +15768,4 @@ exports.observeVisibleRects = function ( } }; }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js index 156f2f0717af0..55f5f48fba53e 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js @@ -416,7 +416,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js index f733250e2bc49..443dd4f90f5bf 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js @@ -207,4 +207,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js index 31cacf29d728d..44501ba461c6f 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js @@ -336,5 +336,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js index 9b81c5a938255..ca45333bb0428 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js @@ -149,4 +149,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom-experimental/package.json b/packages/next/src/compiled/react-dom-experimental/package.json index 522c2e0df1867..59e736ebbf1f0 100644 --- a/packages/next/src/compiled/react-dom-experimental/package.json +++ b/packages/next/src/compiled/react-dom-experimental/package.json @@ -72,10 +72,10 @@ "./package.json": "./package.json" }, "dependencies": { - "scheduler": "0.0.0-experimental-2d16326d-20240930" + "scheduler": "0.0.0-experimental-d5bba18b-20241009" }, "peerDependencies": { - "react": "0.0.0-experimental-2d16326d-20240930" + "react": "0.0.0-experimental-d5bba18b-20241009" }, "browser": { "./server.js": "./server.browser.js", diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-client.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-client.development.js index b46ab9153af47..d1788b37db42b 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-client.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-client.development.js @@ -1097,6 +1097,13 @@ for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } + function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), + (root.pingedLanes = 0), + (root.warmLanes = 0)); + } function markRootFinished( root, finishedLanes, @@ -3775,7 +3782,20 @@ (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (nestedUpdateCount > NESTED_UPDATE_LIMIT) + throw ( + ((nestedPassiveUpdateCount = nestedUpdateCount = 0), + (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), + Error( + "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." + )) + ); + nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && + ((nestedPassiveUpdateCount = 0), + (rootWithPassiveNestedUpdates = null), + console.error( + "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." + )); null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber); @@ -8628,32 +8648,32 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2298; - var JSCompiler_object_inline_stack_2299 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2311; + var JSCompiler_object_inline_stack_2312 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_componentStack_2300 = !1; + var JSCompiler_object_inline_componentStack_2313 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2298 = didSuspend) || - (JSCompiler_object_inline_digest_2298 = + (JSCompiler_object_inline_digest_2311 = didSuspend) || + (JSCompiler_object_inline_digest_2311 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2298 && - ((JSCompiler_object_inline_componentStack_2300 = !0), + JSCompiler_object_inline_digest_2311 && + ((JSCompiler_object_inline_componentStack_2313 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2298 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2311 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_componentStack_2300 + JSCompiler_object_inline_componentStack_2313 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); if (isHydrating) { - var JSCompiler_object_inline_message_2297 = nextHydratableInstance; + var JSCompiler_object_inline_message_2310 = nextHydratableInstance; var JSCompiler_temp; - if (!(JSCompiler_temp = !JSCompiler_object_inline_message_2297)) { + if (!(JSCompiler_temp = !JSCompiler_object_inline_message_2310)) { c: { - var instance = JSCompiler_object_inline_message_2297; + var instance = JSCompiler_object_inline_message_2310; for ( JSCompiler_temp = rootOrSingletonContext; 8 !== instance.nodeType; @@ -8694,19 +8714,19 @@ JSCompiler_temp && (warnNonHydratedInstance( workInProgress, - JSCompiler_object_inline_message_2297 + JSCompiler_object_inline_message_2310 ), throwOnHydrationMismatch(workInProgress)); } - JSCompiler_object_inline_message_2297 = workInProgress.memoizedState; + JSCompiler_object_inline_message_2310 = workInProgress.memoizedState; if ( - null !== JSCompiler_object_inline_message_2297 && - ((JSCompiler_object_inline_message_2297 = - JSCompiler_object_inline_message_2297.dehydrated), - null !== JSCompiler_object_inline_message_2297) + null !== JSCompiler_object_inline_message_2310 && + ((JSCompiler_object_inline_message_2310 = + JSCompiler_object_inline_message_2310.dehydrated), + null !== JSCompiler_object_inline_message_2310) ) return ( - JSCompiler_object_inline_message_2297.data === + JSCompiler_object_inline_message_2310.data === SUSPENSE_FALLBACK_START_DATA ? (workInProgress.lanes = 16) : (workInProgress.lanes = 536870912), @@ -8714,58 +8734,58 @@ ); popSuspenseHandler(workInProgress); } - JSCompiler_object_inline_message_2297 = - JSCompiler_object_inline_stack_2299.children; - JSCompiler_object_inline_stack_2299 = - JSCompiler_object_inline_stack_2299.fallback; - if (JSCompiler_object_inline_componentStack_2300) + JSCompiler_object_inline_message_2310 = + JSCompiler_object_inline_stack_2312.children; + JSCompiler_object_inline_stack_2312 = + JSCompiler_object_inline_stack_2312.fallback; + if (JSCompiler_object_inline_componentStack_2313) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2300 = + (JSCompiler_object_inline_componentStack_2313 = workInProgress.mode), - (JSCompiler_object_inline_message_2297 = + (JSCompiler_object_inline_message_2310 = mountWorkInProgressOffscreenFiber( { mode: "hidden", - children: JSCompiler_object_inline_message_2297 + children: JSCompiler_object_inline_message_2310 }, - JSCompiler_object_inline_componentStack_2300 + JSCompiler_object_inline_componentStack_2313 )), - (JSCompiler_object_inline_stack_2299 = createFiberFromFragment( - JSCompiler_object_inline_stack_2299, - JSCompiler_object_inline_componentStack_2300, + (JSCompiler_object_inline_stack_2312 = createFiberFromFragment( + JSCompiler_object_inline_stack_2312, + JSCompiler_object_inline_componentStack_2313, renderLanes, null )), - (JSCompiler_object_inline_message_2297.return = workInProgress), - (JSCompiler_object_inline_stack_2299.return = workInProgress), - (JSCompiler_object_inline_message_2297.sibling = - JSCompiler_object_inline_stack_2299), - (workInProgress.child = JSCompiler_object_inline_message_2297), - (JSCompiler_object_inline_componentStack_2300 = + (JSCompiler_object_inline_message_2310.return = workInProgress), + (JSCompiler_object_inline_stack_2312.return = workInProgress), + (JSCompiler_object_inline_message_2310.sibling = + JSCompiler_object_inline_stack_2312), + (workInProgress.child = JSCompiler_object_inline_message_2310), + (JSCompiler_object_inline_componentStack_2313 = workInProgress.child), - (JSCompiler_object_inline_componentStack_2300.memoizedState = + (JSCompiler_object_inline_componentStack_2313.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_componentStack_2300.childLanes = + (JSCompiler_object_inline_componentStack_2313.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2298, + JSCompiler_object_inline_digest_2311, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2299 + JSCompiler_object_inline_stack_2312 ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_message_2297 + JSCompiler_object_inline_message_2310 ); } var prevState = current.memoizedState; if ( null !== prevState && - ((JSCompiler_object_inline_message_2297 = prevState.dehydrated), - null !== JSCompiler_object_inline_message_2297) + ((JSCompiler_object_inline_message_2310 = prevState.dehydrated), + null !== JSCompiler_object_inline_message_2310) ) { if (didSuspend) workInProgress.flags & 256 @@ -8782,94 +8802,94 @@ (workInProgress.flags |= 128), (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2300 = - JSCompiler_object_inline_stack_2299.fallback), - (JSCompiler_object_inline_message_2297 = workInProgress.mode), - (JSCompiler_object_inline_stack_2299 = + (JSCompiler_object_inline_componentStack_2313 = + JSCompiler_object_inline_stack_2312.fallback), + (JSCompiler_object_inline_message_2310 = workInProgress.mode), + (JSCompiler_object_inline_stack_2312 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2299.children + children: JSCompiler_object_inline_stack_2312.children }, - JSCompiler_object_inline_message_2297 + JSCompiler_object_inline_message_2310 )), - (JSCompiler_object_inline_componentStack_2300 = + (JSCompiler_object_inline_componentStack_2313 = createFiberFromFragment( - JSCompiler_object_inline_componentStack_2300, - JSCompiler_object_inline_message_2297, + JSCompiler_object_inline_componentStack_2313, + JSCompiler_object_inline_message_2310, renderLanes, null )), - (JSCompiler_object_inline_componentStack_2300.flags |= 2), - (JSCompiler_object_inline_stack_2299.return = workInProgress), - (JSCompiler_object_inline_componentStack_2300.return = + (JSCompiler_object_inline_componentStack_2313.flags |= 2), + (JSCompiler_object_inline_stack_2312.return = workInProgress), + (JSCompiler_object_inline_componentStack_2313.return = workInProgress), - (JSCompiler_object_inline_stack_2299.sibling = - JSCompiler_object_inline_componentStack_2300), - (workInProgress.child = JSCompiler_object_inline_stack_2299), + (JSCompiler_object_inline_stack_2312.sibling = + JSCompiler_object_inline_componentStack_2313), + (workInProgress.child = JSCompiler_object_inline_stack_2312), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2299 = workInProgress.child), - (JSCompiler_object_inline_stack_2299.memoizedState = + (JSCompiler_object_inline_stack_2312 = workInProgress.child), + (JSCompiler_object_inline_stack_2312.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2299.childLanes = + (JSCompiler_object_inline_stack_2312.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2298, + JSCompiler_object_inline_digest_2311, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = - JSCompiler_object_inline_componentStack_2300)); + JSCompiler_object_inline_componentStack_2313)); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), isHydrating && console.error( "We should not be hydrating here. This is a bug in React. Please file a bug." ), - JSCompiler_object_inline_message_2297.data === + JSCompiler_object_inline_message_2310.data === SUSPENSE_FALLBACK_START_DATA) ) { - JSCompiler_object_inline_digest_2298 = - JSCompiler_object_inline_message_2297.nextSibling && - JSCompiler_object_inline_message_2297.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2298) { - JSCompiler_temp = JSCompiler_object_inline_digest_2298.dgst; - var message = JSCompiler_object_inline_digest_2298.msg; - instance = JSCompiler_object_inline_digest_2298.stck; - var componentStack = JSCompiler_object_inline_digest_2298.cstck; + JSCompiler_object_inline_digest_2311 = + JSCompiler_object_inline_message_2310.nextSibling && + JSCompiler_object_inline_message_2310.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2311) { + JSCompiler_temp = JSCompiler_object_inline_digest_2311.dgst; + var message = JSCompiler_object_inline_digest_2311.msg; + instance = JSCompiler_object_inline_digest_2311.stck; + var componentStack = JSCompiler_object_inline_digest_2311.cstck; } - JSCompiler_object_inline_message_2297 = message; - JSCompiler_object_inline_digest_2298 = JSCompiler_temp; - JSCompiler_object_inline_stack_2299 = instance; - JSCompiler_object_inline_componentStack_2300 = componentStack; - JSCompiler_object_inline_message_2297 = - JSCompiler_object_inline_message_2297 - ? Error(JSCompiler_object_inline_message_2297) + JSCompiler_object_inline_message_2310 = message; + JSCompiler_object_inline_digest_2311 = JSCompiler_temp; + JSCompiler_object_inline_stack_2312 = instance; + JSCompiler_object_inline_componentStack_2313 = componentStack; + JSCompiler_object_inline_message_2310 = + JSCompiler_object_inline_message_2310 + ? Error(JSCompiler_object_inline_message_2310) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); - JSCompiler_object_inline_message_2297.stack = - JSCompiler_object_inline_stack_2299 || ""; - JSCompiler_object_inline_message_2297.digest = - JSCompiler_object_inline_digest_2298; - JSCompiler_object_inline_digest_2298 = - void 0 === JSCompiler_object_inline_componentStack_2300 + JSCompiler_object_inline_message_2310.stack = + JSCompiler_object_inline_stack_2312 || ""; + JSCompiler_object_inline_message_2310.digest = + JSCompiler_object_inline_digest_2311; + JSCompiler_object_inline_digest_2311 = + void 0 === JSCompiler_object_inline_componentStack_2313 ? null - : JSCompiler_object_inline_componentStack_2300; - "string" === typeof JSCompiler_object_inline_digest_2298 && + : JSCompiler_object_inline_componentStack_2313; + "string" === typeof JSCompiler_object_inline_digest_2311 && CapturedStacks.set( - JSCompiler_object_inline_message_2297, - JSCompiler_object_inline_digest_2298 + JSCompiler_object_inline_message_2310, + JSCompiler_object_inline_digest_2311 ); queueHydrationError({ - value: JSCompiler_object_inline_message_2297, + value: JSCompiler_object_inline_message_2310, source: null, - stack: JSCompiler_object_inline_digest_2298 + stack: JSCompiler_object_inline_digest_2311 }); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -8884,25 +8904,25 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2298 = + (JSCompiler_object_inline_digest_2311 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2298) + didReceiveUpdate || JSCompiler_object_inline_digest_2311) ) { - JSCompiler_object_inline_digest_2298 = workInProgressRoot; - if (null !== JSCompiler_object_inline_digest_2298) { - JSCompiler_object_inline_stack_2299 = renderLanes & -renderLanes; - if (0 !== (JSCompiler_object_inline_stack_2299 & 42)) - JSCompiler_object_inline_stack_2299 = 1; + JSCompiler_object_inline_digest_2311 = workInProgressRoot; + if (null !== JSCompiler_object_inline_digest_2311) { + JSCompiler_object_inline_stack_2312 = renderLanes & -renderLanes; + if (0 !== (JSCompiler_object_inline_stack_2312 & 42)) + JSCompiler_object_inline_stack_2312 = 1; else - switch (JSCompiler_object_inline_stack_2299) { + switch (JSCompiler_object_inline_stack_2312) { case 2: - JSCompiler_object_inline_stack_2299 = 1; + JSCompiler_object_inline_stack_2312 = 1; break; case 8: - JSCompiler_object_inline_stack_2299 = 4; + JSCompiler_object_inline_stack_2312 = 4; break; case 32: - JSCompiler_object_inline_stack_2299 = 16; + JSCompiler_object_inline_stack_2312 = 16; break; case 128: case 256: @@ -8923,40 +8943,40 @@ case 8388608: case 16777216: case 33554432: - JSCompiler_object_inline_stack_2299 = 64; + JSCompiler_object_inline_stack_2312 = 64; break; case 268435456: - JSCompiler_object_inline_stack_2299 = 134217728; + JSCompiler_object_inline_stack_2312 = 134217728; break; default: - JSCompiler_object_inline_stack_2299 = 0; + JSCompiler_object_inline_stack_2312 = 0; } - JSCompiler_object_inline_stack_2299 = + JSCompiler_object_inline_stack_2312 = 0 !== - (JSCompiler_object_inline_stack_2299 & - (JSCompiler_object_inline_digest_2298.suspendedLanes | + (JSCompiler_object_inline_stack_2312 & + (JSCompiler_object_inline_digest_2311.suspendedLanes | renderLanes)) ? 0 - : JSCompiler_object_inline_stack_2299; + : JSCompiler_object_inline_stack_2312; if ( - 0 !== JSCompiler_object_inline_stack_2299 && - JSCompiler_object_inline_stack_2299 !== prevState.retryLane + 0 !== JSCompiler_object_inline_stack_2312 && + JSCompiler_object_inline_stack_2312 !== prevState.retryLane ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2299), + ((prevState.retryLane = JSCompiler_object_inline_stack_2312), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2299 + JSCompiler_object_inline_stack_2312 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2298, + JSCompiler_object_inline_digest_2311, current, - JSCompiler_object_inline_stack_2299 + JSCompiler_object_inline_stack_2312 ), SelectiveHydrationException) ); } - JSCompiler_object_inline_message_2297.data === + JSCompiler_object_inline_message_2310.data === SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -8964,7 +8984,7 @@ renderLanes ); } else - JSCompiler_object_inline_message_2297.data === + JSCompiler_object_inline_message_2310.data === SUSPENSE_PENDING_START_DATA ? ((workInProgress.flags |= 128), (workInProgress.child = current.child), @@ -8972,12 +8992,12 @@ null, current )), - (JSCompiler_object_inline_message_2297._reactRetry = + (JSCompiler_object_inline_message_2310._reactRetry = workInProgress), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_message_2297.nextSibling + JSCompiler_object_inline_message_2310.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -8995,57 +9015,57 @@ (treeContextProvider = workInProgress)), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2299.children + JSCompiler_object_inline_stack_2312.children )), (workInProgress.flags |= 4096)); return workInProgress; } - if (JSCompiler_object_inline_componentStack_2300) + if (JSCompiler_object_inline_componentStack_2313) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2300 = - JSCompiler_object_inline_stack_2299.fallback), - (JSCompiler_object_inline_message_2297 = workInProgress.mode), + (JSCompiler_object_inline_componentStack_2313 = + JSCompiler_object_inline_stack_2312.fallback), + (JSCompiler_object_inline_message_2310 = workInProgress.mode), (JSCompiler_temp = current.child), (instance = JSCompiler_temp.sibling), - (JSCompiler_object_inline_stack_2299 = createWorkInProgress( + (JSCompiler_object_inline_stack_2312 = createWorkInProgress( JSCompiler_temp, { mode: "hidden", - children: JSCompiler_object_inline_stack_2299.children + children: JSCompiler_object_inline_stack_2312.children } )), - (JSCompiler_object_inline_stack_2299.subtreeFlags = + (JSCompiler_object_inline_stack_2312.subtreeFlags = JSCompiler_temp.subtreeFlags & 31457280), null !== instance - ? (JSCompiler_object_inline_componentStack_2300 = + ? (JSCompiler_object_inline_componentStack_2313 = createWorkInProgress( instance, - JSCompiler_object_inline_componentStack_2300 + JSCompiler_object_inline_componentStack_2313 )) - : ((JSCompiler_object_inline_componentStack_2300 = + : ((JSCompiler_object_inline_componentStack_2313 = createFiberFromFragment( - JSCompiler_object_inline_componentStack_2300, - JSCompiler_object_inline_message_2297, + JSCompiler_object_inline_componentStack_2313, + JSCompiler_object_inline_message_2310, renderLanes, null )), - (JSCompiler_object_inline_componentStack_2300.flags |= 2)), - (JSCompiler_object_inline_componentStack_2300.return = + (JSCompiler_object_inline_componentStack_2313.flags |= 2)), + (JSCompiler_object_inline_componentStack_2313.return = workInProgress), - (JSCompiler_object_inline_stack_2299.return = workInProgress), - (JSCompiler_object_inline_stack_2299.sibling = - JSCompiler_object_inline_componentStack_2300), - (workInProgress.child = JSCompiler_object_inline_stack_2299), - (JSCompiler_object_inline_stack_2299 = - JSCompiler_object_inline_componentStack_2300), - (JSCompiler_object_inline_componentStack_2300 = workInProgress.child), - (JSCompiler_object_inline_message_2297 = current.child.memoizedState), - null === JSCompiler_object_inline_message_2297 - ? (JSCompiler_object_inline_message_2297 = + (JSCompiler_object_inline_stack_2312.return = workInProgress), + (JSCompiler_object_inline_stack_2312.sibling = + JSCompiler_object_inline_componentStack_2313), + (workInProgress.child = JSCompiler_object_inline_stack_2312), + (JSCompiler_object_inline_stack_2312 = + JSCompiler_object_inline_componentStack_2313), + (JSCompiler_object_inline_componentStack_2313 = workInProgress.child), + (JSCompiler_object_inline_message_2310 = current.child.memoizedState), + null === JSCompiler_object_inline_message_2310 + ? (JSCompiler_object_inline_message_2310 = mountSuspenseOffscreenState(renderLanes)) : ((JSCompiler_temp = - JSCompiler_object_inline_message_2297.cachePool), + JSCompiler_object_inline_message_2310.cachePool), null !== JSCompiler_temp ? ((instance = CacheContext._currentValue), (JSCompiler_temp = @@ -9053,37 +9073,37 @@ ? { parent: instance, pool: instance } : JSCompiler_temp)) : (JSCompiler_temp = getSuspendedCache()), - (JSCompiler_object_inline_message_2297 = { + (JSCompiler_object_inline_message_2310 = { baseLanes: - JSCompiler_object_inline_message_2297.baseLanes | renderLanes, + JSCompiler_object_inline_message_2310.baseLanes | renderLanes, cachePool: JSCompiler_temp })), - (JSCompiler_object_inline_componentStack_2300.memoizedState = - JSCompiler_object_inline_message_2297), - (JSCompiler_object_inline_componentStack_2300.childLanes = + (JSCompiler_object_inline_componentStack_2313.memoizedState = + JSCompiler_object_inline_message_2310), + (JSCompiler_object_inline_componentStack_2313.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2298, + JSCompiler_object_inline_digest_2311, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2299 + JSCompiler_object_inline_stack_2312 ); pushPrimaryTreeSuspenseHandler(workInProgress); renderLanes = current.child; current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2299.children + children: JSCompiler_object_inline_stack_2312.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2298 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2298 + ((JSCompiler_object_inline_digest_2311 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2311 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2298.push(current)); + : JSCompiler_object_inline_digest_2311.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -14217,7 +14237,7 @@ workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if ( 0 !== (executionContext & RenderContext) && root === workInProgressRoot @@ -14547,18 +14567,6 @@ } return !0; } - function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), - (root.pingedLanes = 0), - (root.warmLanes = 0)); - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); - } function markRootSuspended( root, suspendedLanes, @@ -15211,13 +15219,13 @@ ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings(); if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw Error("Should not already be working."); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markCommitStarted && - injectedProfilingHooks.markCommitStarted(lanes); + injectedProfilingHooks.markCommitStarted(didIncludeRenderPhaseUpdate); if (null === finishedWork) return markCommitStopped(), null; - 0 === lanes && + 0 === didIncludeRenderPhaseUpdate && console.error( "root.finishedLanes should not be empty during a commit. This is a bug in React." ); @@ -15234,13 +15242,12 @@ remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -15264,7 +15271,11 @@ (updatedLanes = executionContext), (executionContext |= CommitContext), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects( + root, + finishedWork, + didIncludeRenderPhaseUpdate + ), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), @@ -15272,8 +15283,10 @@ null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStarted && - injectedProfilingHooks.markLayoutEffectsStarted(lanes), - commitLayoutEffects(finishedWork, root, lanes), + injectedProfilingHooks.markLayoutEffectsStarted( + didIncludeRenderPhaseUpdate + ), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStopped && @@ -15286,7 +15299,7 @@ (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : (releaseRootPooledCache(root, remainingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); @@ -15313,9 +15326,8 @@ ); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ @@ -15436,7 +15448,7 @@ sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError( sourceFiber, @@ -15475,7 +15487,7 @@ nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); return; } @@ -15510,11 +15522,6 @@ null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error( @@ -15538,7 +15545,7 @@ 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -15569,26 +15576,6 @@ null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } - function throwIfInfiniteUpdateLoopDetected() { - if (nestedUpdateCount > NESTED_UPDATE_LIMIT) - throw ( - ((nestedPassiveUpdateCount = nestedUpdateCount = 0), - (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), - executionContext & RenderContext && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error( - "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." - )) - ); - nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && - ((nestedPassiveUpdateCount = 0), - (rootWithPassiveNestedUpdates = null), - console.error( - "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." - )); - } function recursivelyTraverseAndDoubleInvokeEffectsInDEV( root$jscomp$0, parentFiber, @@ -23897,7 +23884,6 @@ workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, @@ -23909,12 +23895,12 @@ pendingPassiveEffectsLanes = 0, pendingPassiveEffectsRemainingLanes = 0, pendingPassiveTransitions = null, - NESTED_UPDATE_LIMIT = 100, + NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = !1, didScheduleUpdateDuringPassiveEffects = !1, - NESTED_PASSIVE_UPDATE_LIMIT = 100, + NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = !1, @@ -24465,11 +24451,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-rc-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -24506,11 +24492,11 @@ !(function () { var internals = { bundleType: 1, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930" + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -24648,13 +24634,13 @@ identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-client.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-client.production.js index dfa20385a8fb0..5e0474af7d79f 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-client.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-client.production.js @@ -689,6 +689,11 @@ function createLaneMap(initial) { for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } +function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); +} function markRootFinished( root, finishedLanes, @@ -2396,7 +2401,12 @@ function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) { (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (50 < nestedUpdateCount) + throw ( + ((nestedUpdateCount = 0), + (rootWithNestedUpdates = null), + Error(formatProdErrorMessage(185))) + ); for (var parent = sourceFiber.return; null !== parent; ) (sourceFiber = parent), (parent = sourceFiber.return); return 3 === sourceFiber.tag ? sourceFiber.stateNode : null; @@ -10177,7 +10187,6 @@ var DefaultAsyncDispatcher = { workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, workInProgressRootRenderTargetTime = Infinity, workInProgressTransitions = null, @@ -10220,7 +10229,7 @@ function scheduleUpdateOnFiber(root, fiber, lane) { workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if (0 === (executionContext & 2) || root !== workInProgressRoot) root === workInProgressRoot && (0 === (executionContext & 2) && @@ -10499,15 +10508,6 @@ function isRenderConsistentWithExternalStores(finishedWork) { } return !0; } -function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); -} function markRootSuspended( root, suspendedLanes, @@ -11001,8 +11001,8 @@ function commitRootImpl( do flushPassiveEffects(); while (null !== rootWithPendingPassiveEffects); if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327)); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; if (null === finishedWork) return null; root.finishedWork = null; root.finishedLanes = 0; @@ -11014,13 +11014,12 @@ function commitRootImpl( remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -11057,7 +11056,7 @@ function commitRootImpl( rootDoesHavePassiveEffects ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : releaseRootPooledCache(root, remainingLanes); remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); @@ -11075,9 +11074,7 @@ function commitRootImpl( }); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && 0 !== (remainingLanes & 42) ? root === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root)) @@ -11142,7 +11139,7 @@ function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) { sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { if (3 === sourceFiber.tag) @@ -11175,7 +11172,7 @@ function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); break; } @@ -11204,10 +11201,6 @@ function pingSuspendedRoot(root, wakeable, pingedLanes) { null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); workInProgressRoot === root && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (4 === workInProgressRootExitStatus || @@ -11225,7 +11218,7 @@ function retryTimedOutBoundary(boundaryFiber, retryLane) { 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -11254,18 +11247,6 @@ function resolveRetryWakeable(boundaryFiber, wakeable) { null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } -function throwIfInfiniteUpdateLoopDetected() { - if (100 < nestedUpdateCount) - throw ( - ((nestedUpdateCount = 0), - (rootWithNestedUpdates = null), - executionContext & 2 && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error(formatProdErrorMessage(185))) - ); -} function scheduleCallback$1(priorityLevel, callback) { return scheduleCallback$3(priorityLevel, callback); } @@ -11552,20 +11533,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1419 = 0; - i$jscomp$inline_1419 < simpleEventPluginEvents.length; - i$jscomp$inline_1419++ + var i$jscomp$inline_1432 = 0; + i$jscomp$inline_1432 < simpleEventPluginEvents.length; + i$jscomp$inline_1432++ ) { - var eventName$jscomp$inline_1420 = - simpleEventPluginEvents[i$jscomp$inline_1419], - domEventName$jscomp$inline_1421 = - eventName$jscomp$inline_1420.toLowerCase(), - capitalizedEvent$jscomp$inline_1422 = - eventName$jscomp$inline_1420[0].toUpperCase() + - eventName$jscomp$inline_1420.slice(1); + var eventName$jscomp$inline_1433 = + simpleEventPluginEvents[i$jscomp$inline_1432], + domEventName$jscomp$inline_1434 = + eventName$jscomp$inline_1433.toLowerCase(), + capitalizedEvent$jscomp$inline_1435 = + eventName$jscomp$inline_1433[0].toUpperCase() + + eventName$jscomp$inline_1433.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1421, - "on" + capitalizedEvent$jscomp$inline_1422 + domEventName$jscomp$inline_1434, + "on" + capitalizedEvent$jscomp$inline_1435 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -15006,16 +14987,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_1666 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_1679 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== - isomorphicReactPackageVersion$jscomp$inline_1666 + "19.0.0-rc-d5bba18b-20241009" !== + isomorphicReactPackageVersion$jscomp$inline_1679 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_1666, - "19.0.0-rc-2d16326d-20240930" + isomorphicReactPackageVersion$jscomp$inline_1679, + "19.0.0-rc-d5bba18b-20241009" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -15035,25 +15016,25 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2137 = { +var internals$jscomp$inline_2150 = { bundleType: 0, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930" + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2138 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2151 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2138.isDisabled && - hook$jscomp$inline_2138.supportsFiber + !hook$jscomp$inline_2151.isDisabled && + hook$jscomp$inline_2151.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2138.inject( - internals$jscomp$inline_2137 + (rendererID = hook$jscomp$inline_2151.inject( + internals$jscomp$inline_2150 )), - (injectedHook = hook$jscomp$inline_2138); + (injectedHook = hook$jscomp$inline_2151); } catch (err) {} } exports.createRoot = function (container, options) { @@ -15139,10 +15120,10 @@ exports.hydrateRoot = function (container, initialChildren, options) { identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.development.js index 8106f302b219a..a7dfc57d72e92 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.development.js @@ -1105,6 +1105,13 @@ for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } + function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), + (root.pingedLanes = 0), + (root.warmLanes = 0)); + } function markRootFinished( root, finishedLanes, @@ -3783,7 +3790,20 @@ (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (nestedUpdateCount > NESTED_UPDATE_LIMIT) + throw ( + ((nestedPassiveUpdateCount = nestedUpdateCount = 0), + (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), + Error( + "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." + )) + ); + nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && + ((nestedPassiveUpdateCount = 0), + (rootWithPassiveNestedUpdates = null), + console.error( + "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." + )); null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber); @@ -8636,32 +8656,32 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2303; - var JSCompiler_object_inline_stack_2304 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2316; + var JSCompiler_object_inline_stack_2317 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_componentStack_2305 = !1; + var JSCompiler_object_inline_componentStack_2318 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2303 = didSuspend) || - (JSCompiler_object_inline_digest_2303 = + (JSCompiler_object_inline_digest_2316 = didSuspend) || + (JSCompiler_object_inline_digest_2316 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2303 && - ((JSCompiler_object_inline_componentStack_2305 = !0), + JSCompiler_object_inline_digest_2316 && + ((JSCompiler_object_inline_componentStack_2318 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2303 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2316 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_componentStack_2305 + JSCompiler_object_inline_componentStack_2318 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); if (isHydrating) { - var JSCompiler_object_inline_message_2302 = nextHydratableInstance; + var JSCompiler_object_inline_message_2315 = nextHydratableInstance; var JSCompiler_temp; - if (!(JSCompiler_temp = !JSCompiler_object_inline_message_2302)) { + if (!(JSCompiler_temp = !JSCompiler_object_inline_message_2315)) { c: { - var instance = JSCompiler_object_inline_message_2302; + var instance = JSCompiler_object_inline_message_2315; for ( JSCompiler_temp = rootOrSingletonContext; 8 !== instance.nodeType; @@ -8702,19 +8722,19 @@ JSCompiler_temp && (warnNonHydratedInstance( workInProgress, - JSCompiler_object_inline_message_2302 + JSCompiler_object_inline_message_2315 ), throwOnHydrationMismatch(workInProgress)); } - JSCompiler_object_inline_message_2302 = workInProgress.memoizedState; + JSCompiler_object_inline_message_2315 = workInProgress.memoizedState; if ( - null !== JSCompiler_object_inline_message_2302 && - ((JSCompiler_object_inline_message_2302 = - JSCompiler_object_inline_message_2302.dehydrated), - null !== JSCompiler_object_inline_message_2302) + null !== JSCompiler_object_inline_message_2315 && + ((JSCompiler_object_inline_message_2315 = + JSCompiler_object_inline_message_2315.dehydrated), + null !== JSCompiler_object_inline_message_2315) ) return ( - JSCompiler_object_inline_message_2302.data === + JSCompiler_object_inline_message_2315.data === SUSPENSE_FALLBACK_START_DATA ? (workInProgress.lanes = 16) : (workInProgress.lanes = 536870912), @@ -8722,58 +8742,58 @@ ); popSuspenseHandler(workInProgress); } - JSCompiler_object_inline_message_2302 = - JSCompiler_object_inline_stack_2304.children; - JSCompiler_object_inline_stack_2304 = - JSCompiler_object_inline_stack_2304.fallback; - if (JSCompiler_object_inline_componentStack_2305) + JSCompiler_object_inline_message_2315 = + JSCompiler_object_inline_stack_2317.children; + JSCompiler_object_inline_stack_2317 = + JSCompiler_object_inline_stack_2317.fallback; + if (JSCompiler_object_inline_componentStack_2318) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2305 = + (JSCompiler_object_inline_componentStack_2318 = workInProgress.mode), - (JSCompiler_object_inline_message_2302 = + (JSCompiler_object_inline_message_2315 = mountWorkInProgressOffscreenFiber( { mode: "hidden", - children: JSCompiler_object_inline_message_2302 + children: JSCompiler_object_inline_message_2315 }, - JSCompiler_object_inline_componentStack_2305 + JSCompiler_object_inline_componentStack_2318 )), - (JSCompiler_object_inline_stack_2304 = createFiberFromFragment( - JSCompiler_object_inline_stack_2304, - JSCompiler_object_inline_componentStack_2305, + (JSCompiler_object_inline_stack_2317 = createFiberFromFragment( + JSCompiler_object_inline_stack_2317, + JSCompiler_object_inline_componentStack_2318, renderLanes, null )), - (JSCompiler_object_inline_message_2302.return = workInProgress), - (JSCompiler_object_inline_stack_2304.return = workInProgress), - (JSCompiler_object_inline_message_2302.sibling = - JSCompiler_object_inline_stack_2304), - (workInProgress.child = JSCompiler_object_inline_message_2302), - (JSCompiler_object_inline_componentStack_2305 = + (JSCompiler_object_inline_message_2315.return = workInProgress), + (JSCompiler_object_inline_stack_2317.return = workInProgress), + (JSCompiler_object_inline_message_2315.sibling = + JSCompiler_object_inline_stack_2317), + (workInProgress.child = JSCompiler_object_inline_message_2315), + (JSCompiler_object_inline_componentStack_2318 = workInProgress.child), - (JSCompiler_object_inline_componentStack_2305.memoizedState = + (JSCompiler_object_inline_componentStack_2318.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_componentStack_2305.childLanes = + (JSCompiler_object_inline_componentStack_2318.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2303, + JSCompiler_object_inline_digest_2316, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2304 + JSCompiler_object_inline_stack_2317 ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_message_2302 + JSCompiler_object_inline_message_2315 ); } var prevState = current.memoizedState; if ( null !== prevState && - ((JSCompiler_object_inline_message_2302 = prevState.dehydrated), - null !== JSCompiler_object_inline_message_2302) + ((JSCompiler_object_inline_message_2315 = prevState.dehydrated), + null !== JSCompiler_object_inline_message_2315) ) { if (didSuspend) workInProgress.flags & 256 @@ -8790,94 +8810,94 @@ (workInProgress.flags |= 128), (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2305 = - JSCompiler_object_inline_stack_2304.fallback), - (JSCompiler_object_inline_message_2302 = workInProgress.mode), - (JSCompiler_object_inline_stack_2304 = + (JSCompiler_object_inline_componentStack_2318 = + JSCompiler_object_inline_stack_2317.fallback), + (JSCompiler_object_inline_message_2315 = workInProgress.mode), + (JSCompiler_object_inline_stack_2317 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2304.children + children: JSCompiler_object_inline_stack_2317.children }, - JSCompiler_object_inline_message_2302 + JSCompiler_object_inline_message_2315 )), - (JSCompiler_object_inline_componentStack_2305 = + (JSCompiler_object_inline_componentStack_2318 = createFiberFromFragment( - JSCompiler_object_inline_componentStack_2305, - JSCompiler_object_inline_message_2302, + JSCompiler_object_inline_componentStack_2318, + JSCompiler_object_inline_message_2315, renderLanes, null )), - (JSCompiler_object_inline_componentStack_2305.flags |= 2), - (JSCompiler_object_inline_stack_2304.return = workInProgress), - (JSCompiler_object_inline_componentStack_2305.return = + (JSCompiler_object_inline_componentStack_2318.flags |= 2), + (JSCompiler_object_inline_stack_2317.return = workInProgress), + (JSCompiler_object_inline_componentStack_2318.return = workInProgress), - (JSCompiler_object_inline_stack_2304.sibling = - JSCompiler_object_inline_componentStack_2305), - (workInProgress.child = JSCompiler_object_inline_stack_2304), + (JSCompiler_object_inline_stack_2317.sibling = + JSCompiler_object_inline_componentStack_2318), + (workInProgress.child = JSCompiler_object_inline_stack_2317), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2304 = workInProgress.child), - (JSCompiler_object_inline_stack_2304.memoizedState = + (JSCompiler_object_inline_stack_2317 = workInProgress.child), + (JSCompiler_object_inline_stack_2317.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2304.childLanes = + (JSCompiler_object_inline_stack_2317.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2303, + JSCompiler_object_inline_digest_2316, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = - JSCompiler_object_inline_componentStack_2305)); + JSCompiler_object_inline_componentStack_2318)); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), isHydrating && console.error( "We should not be hydrating here. This is a bug in React. Please file a bug." ), - JSCompiler_object_inline_message_2302.data === + JSCompiler_object_inline_message_2315.data === SUSPENSE_FALLBACK_START_DATA) ) { - JSCompiler_object_inline_digest_2303 = - JSCompiler_object_inline_message_2302.nextSibling && - JSCompiler_object_inline_message_2302.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2303) { - JSCompiler_temp = JSCompiler_object_inline_digest_2303.dgst; - var message = JSCompiler_object_inline_digest_2303.msg; - instance = JSCompiler_object_inline_digest_2303.stck; - var componentStack = JSCompiler_object_inline_digest_2303.cstck; + JSCompiler_object_inline_digest_2316 = + JSCompiler_object_inline_message_2315.nextSibling && + JSCompiler_object_inline_message_2315.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2316) { + JSCompiler_temp = JSCompiler_object_inline_digest_2316.dgst; + var message = JSCompiler_object_inline_digest_2316.msg; + instance = JSCompiler_object_inline_digest_2316.stck; + var componentStack = JSCompiler_object_inline_digest_2316.cstck; } - JSCompiler_object_inline_message_2302 = message; - JSCompiler_object_inline_digest_2303 = JSCompiler_temp; - JSCompiler_object_inline_stack_2304 = instance; - JSCompiler_object_inline_componentStack_2305 = componentStack; - JSCompiler_object_inline_message_2302 = - JSCompiler_object_inline_message_2302 - ? Error(JSCompiler_object_inline_message_2302) + JSCompiler_object_inline_message_2315 = message; + JSCompiler_object_inline_digest_2316 = JSCompiler_temp; + JSCompiler_object_inline_stack_2317 = instance; + JSCompiler_object_inline_componentStack_2318 = componentStack; + JSCompiler_object_inline_message_2315 = + JSCompiler_object_inline_message_2315 + ? Error(JSCompiler_object_inline_message_2315) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); - JSCompiler_object_inline_message_2302.stack = - JSCompiler_object_inline_stack_2304 || ""; - JSCompiler_object_inline_message_2302.digest = - JSCompiler_object_inline_digest_2303; - JSCompiler_object_inline_digest_2303 = - void 0 === JSCompiler_object_inline_componentStack_2305 + JSCompiler_object_inline_message_2315.stack = + JSCompiler_object_inline_stack_2317 || ""; + JSCompiler_object_inline_message_2315.digest = + JSCompiler_object_inline_digest_2316; + JSCompiler_object_inline_digest_2316 = + void 0 === JSCompiler_object_inline_componentStack_2318 ? null - : JSCompiler_object_inline_componentStack_2305; - "string" === typeof JSCompiler_object_inline_digest_2303 && + : JSCompiler_object_inline_componentStack_2318; + "string" === typeof JSCompiler_object_inline_digest_2316 && CapturedStacks.set( - JSCompiler_object_inline_message_2302, - JSCompiler_object_inline_digest_2303 + JSCompiler_object_inline_message_2315, + JSCompiler_object_inline_digest_2316 ); queueHydrationError({ - value: JSCompiler_object_inline_message_2302, + value: JSCompiler_object_inline_message_2315, source: null, - stack: JSCompiler_object_inline_digest_2303 + stack: JSCompiler_object_inline_digest_2316 }); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -8892,25 +8912,25 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2303 = + (JSCompiler_object_inline_digest_2316 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2303) + didReceiveUpdate || JSCompiler_object_inline_digest_2316) ) { - JSCompiler_object_inline_digest_2303 = workInProgressRoot; - if (null !== JSCompiler_object_inline_digest_2303) { - JSCompiler_object_inline_stack_2304 = renderLanes & -renderLanes; - if (0 !== (JSCompiler_object_inline_stack_2304 & 42)) - JSCompiler_object_inline_stack_2304 = 1; + JSCompiler_object_inline_digest_2316 = workInProgressRoot; + if (null !== JSCompiler_object_inline_digest_2316) { + JSCompiler_object_inline_stack_2317 = renderLanes & -renderLanes; + if (0 !== (JSCompiler_object_inline_stack_2317 & 42)) + JSCompiler_object_inline_stack_2317 = 1; else - switch (JSCompiler_object_inline_stack_2304) { + switch (JSCompiler_object_inline_stack_2317) { case 2: - JSCompiler_object_inline_stack_2304 = 1; + JSCompiler_object_inline_stack_2317 = 1; break; case 8: - JSCompiler_object_inline_stack_2304 = 4; + JSCompiler_object_inline_stack_2317 = 4; break; case 32: - JSCompiler_object_inline_stack_2304 = 16; + JSCompiler_object_inline_stack_2317 = 16; break; case 128: case 256: @@ -8931,40 +8951,40 @@ case 8388608: case 16777216: case 33554432: - JSCompiler_object_inline_stack_2304 = 64; + JSCompiler_object_inline_stack_2317 = 64; break; case 268435456: - JSCompiler_object_inline_stack_2304 = 134217728; + JSCompiler_object_inline_stack_2317 = 134217728; break; default: - JSCompiler_object_inline_stack_2304 = 0; + JSCompiler_object_inline_stack_2317 = 0; } - JSCompiler_object_inline_stack_2304 = + JSCompiler_object_inline_stack_2317 = 0 !== - (JSCompiler_object_inline_stack_2304 & - (JSCompiler_object_inline_digest_2303.suspendedLanes | + (JSCompiler_object_inline_stack_2317 & + (JSCompiler_object_inline_digest_2316.suspendedLanes | renderLanes)) ? 0 - : JSCompiler_object_inline_stack_2304; + : JSCompiler_object_inline_stack_2317; if ( - 0 !== JSCompiler_object_inline_stack_2304 && - JSCompiler_object_inline_stack_2304 !== prevState.retryLane + 0 !== JSCompiler_object_inline_stack_2317 && + JSCompiler_object_inline_stack_2317 !== prevState.retryLane ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2304), + ((prevState.retryLane = JSCompiler_object_inline_stack_2317), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2304 + JSCompiler_object_inline_stack_2317 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2303, + JSCompiler_object_inline_digest_2316, current, - JSCompiler_object_inline_stack_2304 + JSCompiler_object_inline_stack_2317 ), SelectiveHydrationException) ); } - JSCompiler_object_inline_message_2302.data === + JSCompiler_object_inline_message_2315.data === SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -8972,7 +8992,7 @@ renderLanes ); } else - JSCompiler_object_inline_message_2302.data === + JSCompiler_object_inline_message_2315.data === SUSPENSE_PENDING_START_DATA ? ((workInProgress.flags |= 128), (workInProgress.child = current.child), @@ -8980,12 +9000,12 @@ null, current )), - (JSCompiler_object_inline_message_2302._reactRetry = + (JSCompiler_object_inline_message_2315._reactRetry = workInProgress), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_message_2302.nextSibling + JSCompiler_object_inline_message_2315.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -9003,57 +9023,57 @@ (treeContextProvider = workInProgress)), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2304.children + JSCompiler_object_inline_stack_2317.children )), (workInProgress.flags |= 4096)); return workInProgress; } - if (JSCompiler_object_inline_componentStack_2305) + if (JSCompiler_object_inline_componentStack_2318) return ( reuseSuspenseHandlerOnStack(workInProgress), - (JSCompiler_object_inline_componentStack_2305 = - JSCompiler_object_inline_stack_2304.fallback), - (JSCompiler_object_inline_message_2302 = workInProgress.mode), + (JSCompiler_object_inline_componentStack_2318 = + JSCompiler_object_inline_stack_2317.fallback), + (JSCompiler_object_inline_message_2315 = workInProgress.mode), (JSCompiler_temp = current.child), (instance = JSCompiler_temp.sibling), - (JSCompiler_object_inline_stack_2304 = createWorkInProgress( + (JSCompiler_object_inline_stack_2317 = createWorkInProgress( JSCompiler_temp, { mode: "hidden", - children: JSCompiler_object_inline_stack_2304.children + children: JSCompiler_object_inline_stack_2317.children } )), - (JSCompiler_object_inline_stack_2304.subtreeFlags = + (JSCompiler_object_inline_stack_2317.subtreeFlags = JSCompiler_temp.subtreeFlags & 31457280), null !== instance - ? (JSCompiler_object_inline_componentStack_2305 = + ? (JSCompiler_object_inline_componentStack_2318 = createWorkInProgress( instance, - JSCompiler_object_inline_componentStack_2305 + JSCompiler_object_inline_componentStack_2318 )) - : ((JSCompiler_object_inline_componentStack_2305 = + : ((JSCompiler_object_inline_componentStack_2318 = createFiberFromFragment( - JSCompiler_object_inline_componentStack_2305, - JSCompiler_object_inline_message_2302, + JSCompiler_object_inline_componentStack_2318, + JSCompiler_object_inline_message_2315, renderLanes, null )), - (JSCompiler_object_inline_componentStack_2305.flags |= 2)), - (JSCompiler_object_inline_componentStack_2305.return = + (JSCompiler_object_inline_componentStack_2318.flags |= 2)), + (JSCompiler_object_inline_componentStack_2318.return = workInProgress), - (JSCompiler_object_inline_stack_2304.return = workInProgress), - (JSCompiler_object_inline_stack_2304.sibling = - JSCompiler_object_inline_componentStack_2305), - (workInProgress.child = JSCompiler_object_inline_stack_2304), - (JSCompiler_object_inline_stack_2304 = - JSCompiler_object_inline_componentStack_2305), - (JSCompiler_object_inline_componentStack_2305 = workInProgress.child), - (JSCompiler_object_inline_message_2302 = current.child.memoizedState), - null === JSCompiler_object_inline_message_2302 - ? (JSCompiler_object_inline_message_2302 = + (JSCompiler_object_inline_stack_2317.return = workInProgress), + (JSCompiler_object_inline_stack_2317.sibling = + JSCompiler_object_inline_componentStack_2318), + (workInProgress.child = JSCompiler_object_inline_stack_2317), + (JSCompiler_object_inline_stack_2317 = + JSCompiler_object_inline_componentStack_2318), + (JSCompiler_object_inline_componentStack_2318 = workInProgress.child), + (JSCompiler_object_inline_message_2315 = current.child.memoizedState), + null === JSCompiler_object_inline_message_2315 + ? (JSCompiler_object_inline_message_2315 = mountSuspenseOffscreenState(renderLanes)) : ((JSCompiler_temp = - JSCompiler_object_inline_message_2302.cachePool), + JSCompiler_object_inline_message_2315.cachePool), null !== JSCompiler_temp ? ((instance = CacheContext._currentValue), (JSCompiler_temp = @@ -9061,37 +9081,37 @@ ? { parent: instance, pool: instance } : JSCompiler_temp)) : (JSCompiler_temp = getSuspendedCache()), - (JSCompiler_object_inline_message_2302 = { + (JSCompiler_object_inline_message_2315 = { baseLanes: - JSCompiler_object_inline_message_2302.baseLanes | renderLanes, + JSCompiler_object_inline_message_2315.baseLanes | renderLanes, cachePool: JSCompiler_temp })), - (JSCompiler_object_inline_componentStack_2305.memoizedState = - JSCompiler_object_inline_message_2302), - (JSCompiler_object_inline_componentStack_2305.childLanes = + (JSCompiler_object_inline_componentStack_2318.memoizedState = + JSCompiler_object_inline_message_2315), + (JSCompiler_object_inline_componentStack_2318.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2303, + JSCompiler_object_inline_digest_2316, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - JSCompiler_object_inline_stack_2304 + JSCompiler_object_inline_stack_2317 ); pushPrimaryTreeSuspenseHandler(workInProgress); renderLanes = current.child; current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2304.children + children: JSCompiler_object_inline_stack_2317.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2303 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2303 + ((JSCompiler_object_inline_digest_2316 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2316 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2303.push(current)); + : JSCompiler_object_inline_digest_2316.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -14225,7 +14245,7 @@ workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if ( 0 !== (executionContext & RenderContext) && root === workInProgressRoot @@ -14559,18 +14579,6 @@ } return !0; } - function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), - (root.pingedLanes = 0), - (root.warmLanes = 0)); - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); - } function markRootSuspended( root, suspendedLanes, @@ -15223,13 +15231,13 @@ ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings(); if ((executionContext & (RenderContext | CommitContext)) !== NoContext) throw Error("Should not already be working."); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markCommitStarted && - injectedProfilingHooks.markCommitStarted(lanes); + injectedProfilingHooks.markCommitStarted(didIncludeRenderPhaseUpdate); if (null === finishedWork) return markCommitStopped(), null; - 0 === lanes && + 0 === didIncludeRenderPhaseUpdate && console.error( "root.finishedLanes should not be empty during a commit. This is a bug in React." ); @@ -15246,13 +15254,12 @@ remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -15276,7 +15283,11 @@ (updatedLanes = executionContext), (executionContext |= CommitContext), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects( + root, + finishedWork, + didIncludeRenderPhaseUpdate + ), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), @@ -15284,8 +15295,10 @@ null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStarted && - injectedProfilingHooks.markLayoutEffectsStarted(lanes), - commitLayoutEffects(finishedWork, root, lanes), + injectedProfilingHooks.markLayoutEffectsStarted( + didIncludeRenderPhaseUpdate + ), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStopped && @@ -15298,7 +15311,7 @@ (transitions = rootDoesHavePassiveEffects) ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : (releaseRootPooledCache(root, remainingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); @@ -15325,9 +15338,8 @@ ); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && + 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ @@ -15448,7 +15460,7 @@ sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError( sourceFiber, @@ -15487,7 +15499,7 @@ nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); return; } @@ -15522,11 +15534,6 @@ null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & RenderContext - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & CommitContext && - (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error( @@ -15550,7 +15557,7 @@ 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -15581,26 +15588,6 @@ null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } - function throwIfInfiniteUpdateLoopDetected() { - if (nestedUpdateCount > NESTED_UPDATE_LIMIT) - throw ( - ((nestedPassiveUpdateCount = nestedUpdateCount = 0), - (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null), - executionContext & RenderContext && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error( - "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops." - )) - ); - nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && - ((nestedPassiveUpdateCount = 0), - (rootWithPassiveNestedUpdates = null), - console.error( - "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render." - )); - } function recursivelyTraverseAndDoubleInvokeEffectsInDEV( root$jscomp$0, parentFiber, @@ -23954,7 +23941,6 @@ workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, @@ -23966,12 +23952,12 @@ pendingPassiveEffectsLanes = 0, pendingPassiveEffectsRemainingLanes = 0, pendingPassiveTransitions = null, - NESTED_UPDATE_LIMIT = 100, + NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = !1, didScheduleUpdateDuringPassiveEffects = !1, - NESTED_PASSIVE_UPDATE_LIMIT = 100, + NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = !1, @@ -24522,11 +24508,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-rc-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -24563,11 +24549,11 @@ !(function () { var internals = { bundleType: 1, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930" + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -24762,7 +24748,7 @@ identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -25041,7 +25027,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.profiling.js b/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.profiling.js index 514d63ba58746..f2a7bb4c5769c 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.profiling.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-profiling.profiling.js @@ -758,6 +758,11 @@ function createLaneMap(initial) { for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial); return laneMap; } +function markRootUpdated$1(root, updateLane) { + root.pendingLanes |= updateLane; + 268435456 !== updateLane && + ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); +} function markRootFinished( root, finishedLanes, @@ -2495,7 +2500,12 @@ function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) { (update.lane = lane | 536870912)); } function getRootForUpdatedFiber(sourceFiber) { - throwIfInfiniteUpdateLoopDetected(); + if (50 < nestedUpdateCount) + throw ( + ((nestedUpdateCount = 0), + (rootWithNestedUpdates = null), + Error(formatProdErrorMessage(185))) + ); for (var parent = sourceFiber.return; null !== parent; ) (sourceFiber = parent), (parent = sourceFiber.return); return 3 === sourceFiber.tag ? sourceFiber.stateNode : null; @@ -10698,7 +10708,6 @@ var DefaultAsyncDispatcher = { workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = !1, - didIncludeCommitPhaseUpdate = !1, globalMostRecentFallbackTime = 0, workInProgressRootRenderTargetTime = Infinity, workInProgressTransitions = null, @@ -10741,7 +10750,7 @@ function scheduleUpdateOnFiber(root, fiber, lane) { workInProgressDeferredLane, workInProgressRootDidSkipSuspendedSiblings ); - markRootUpdated(root, lane); + markRootUpdated$1(root, lane); if (0 === (executionContext & 2) || root !== workInProgressRoot) isDevToolsPresent && addFiberToLanesMap(root, fiber, lane), root === workInProgressRoot && @@ -11021,15 +11030,6 @@ function isRenderConsistentWithExternalStores(finishedWork) { } return !0; } -function markRootUpdated(root, updatedLanes) { - root.pendingLanes |= updatedLanes; - 268435456 !== updatedLanes && - ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0)); - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); -} function markRootSuspended( root, suspendedLanes, @@ -11598,11 +11598,11 @@ function commitRootImpl( do flushPassiveEffects(); while (null !== rootWithPendingPassiveEffects); if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327)); - var finishedWork = root.finishedWork, - lanes = root.finishedLanes; + var finishedWork = root.finishedWork; + didIncludeRenderPhaseUpdate = root.finishedLanes; null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markCommitStarted && - injectedProfilingHooks.markCommitStarted(lanes); + injectedProfilingHooks.markCommitStarted(didIncludeRenderPhaseUpdate); if (null === finishedWork) return markCommitStopped(), null; root.finishedWork = null; root.finishedLanes = 0; @@ -11614,13 +11614,12 @@ function commitRootImpl( remainingLanes |= concurrentlyUpdatedLanes; markRootFinished( root, - lanes, + didIncludeRenderPhaseUpdate, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes ); - didIncludeCommitPhaseUpdate = !1; root === workInProgressRoot && ((workInProgress = workInProgressRoot = null), (workInProgressRootRenderLanes = 0)); @@ -11644,15 +11643,17 @@ function commitRootImpl( (updatedLanes = executionContext), (executionContext |= 4), commitBeforeMutationEffects(root, finishedWork), - commitMutationEffects(root, finishedWork, lanes), + commitMutationEffects(root, finishedWork, didIncludeRenderPhaseUpdate), restoreSelection(selectionInformation, root.containerInfo), (_enabled = !!eventsEnabled), (selectionInformation = eventsEnabled = null), (root.current = finishedWork), null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStarted && - injectedProfilingHooks.markLayoutEffectsStarted(lanes), - commitLayoutEffects(finishedWork, root, lanes), + injectedProfilingHooks.markLayoutEffectsStarted( + didIncludeRenderPhaseUpdate + ), + commitLayoutEffects(finishedWork, root, didIncludeRenderPhaseUpdate), null !== injectedProfilingHooks && "function" === typeof injectedProfilingHooks.markLayoutEffectsStopped && injectedProfilingHooks.markLayoutEffectsStopped(), @@ -11664,7 +11665,7 @@ function commitRootImpl( rootDoesHavePassiveEffects ? ((rootDoesHavePassiveEffects = !1), (rootWithPendingPassiveEffects = root), - (pendingPassiveEffectsLanes = lanes)) + (pendingPassiveEffectsLanes = didIncludeRenderPhaseUpdate)) : releaseRootPooledCache(root, remainingLanes); remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); @@ -11683,9 +11684,7 @@ function commitRootImpl( }); 0 !== (pendingPassiveEffectsLanes & 3) && flushPassiveEffects(); remainingLanes = root.pendingLanes; - didIncludeRenderPhaseUpdate || - didIncludeCommitPhaseUpdate || - (0 !== (lanes & 4194218) && 0 !== (remainingLanes & 42)) + 0 !== (didIncludeRenderPhaseUpdate & 4194218) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), root === rootWithNestedUpdates ? nestedUpdateCount++ @@ -11763,7 +11762,7 @@ function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) { sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2); rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2); null !== rootFiber && - (markRootUpdated(rootFiber, 2), ensureRootIsScheduled(rootFiber)); + (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber)); } function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { if (3 === sourceFiber.tag) @@ -11796,7 +11795,7 @@ function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) { nearestMountedAncestor, sourceFiber ), - markRootUpdated(instance, 2), + markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance)); break; } @@ -11826,10 +11825,6 @@ function pingSuspendedRoot(root, wakeable, pingedLanes) { null !== pingCache && pingCache.delete(wakeable); root.pingedLanes |= root.suspendedLanes & pingedLanes; root.warmLanes &= ~pingedLanes; - executionContext & 2 - ? (workInProgressRootDidIncludeRecursiveRenderUpdate = !0) - : executionContext & 4 && (didIncludeCommitPhaseUpdate = !0); - throwIfInfiniteUpdateLoopDetected(); workInProgressRoot === root && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (4 === workInProgressRootExitStatus || @@ -11847,7 +11842,7 @@ function retryTimedOutBoundary(boundaryFiber, retryLane) { 0 === retryLane && (retryLane = claimNextRetryLane()); boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane); null !== boundaryFiber && - (markRootUpdated(boundaryFiber, retryLane), + (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber)); } function retryDehydratedSuspenseBoundary(boundaryFiber) { @@ -11876,18 +11871,6 @@ function resolveRetryWakeable(boundaryFiber, wakeable) { null !== retryCache && retryCache.delete(wakeable); retryTimedOutBoundary(boundaryFiber, retryLane); } -function throwIfInfiniteUpdateLoopDetected() { - if (100 < nestedUpdateCount) - throw ( - ((nestedUpdateCount = 0), - (rootWithNestedUpdates = null), - executionContext & 2 && - null !== workInProgressRoot && - (workInProgressRoot.errorRecoveryDisabledLanes |= - workInProgressRootRenderLanes), - Error(formatProdErrorMessage(185))) - ); -} function restorePendingUpdaters(root, lanes) { isDevToolsPresent && root.memoizedUpdaters.forEach(function (schedulingFiber) { @@ -12183,20 +12166,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1508 = 0; - i$jscomp$inline_1508 < simpleEventPluginEvents.length; - i$jscomp$inline_1508++ + var i$jscomp$inline_1521 = 0; + i$jscomp$inline_1521 < simpleEventPluginEvents.length; + i$jscomp$inline_1521++ ) { - var eventName$jscomp$inline_1509 = - simpleEventPluginEvents[i$jscomp$inline_1508], - domEventName$jscomp$inline_1510 = - eventName$jscomp$inline_1509.toLowerCase(), - capitalizedEvent$jscomp$inline_1511 = - eventName$jscomp$inline_1509[0].toUpperCase() + - eventName$jscomp$inline_1509.slice(1); + var eventName$jscomp$inline_1522 = + simpleEventPluginEvents[i$jscomp$inline_1521], + domEventName$jscomp$inline_1523 = + eventName$jscomp$inline_1522.toLowerCase(), + capitalizedEvent$jscomp$inline_1524 = + eventName$jscomp$inline_1522[0].toUpperCase() + + eventName$jscomp$inline_1522.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1510, - "on" + capitalizedEvent$jscomp$inline_1511 + domEventName$jscomp$inline_1523, + "on" + capitalizedEvent$jscomp$inline_1524 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -15656,16 +15639,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_1757 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_1770 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== - isomorphicReactPackageVersion$jscomp$inline_1757 + "19.0.0-rc-d5bba18b-20241009" !== + isomorphicReactPackageVersion$jscomp$inline_1770 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_1757, - "19.0.0-rc-2d16326d-20240930" + isomorphicReactPackageVersion$jscomp$inline_1770, + "19.0.0-rc-d5bba18b-20241009" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -15685,13 +15668,13 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_1764 = { +var internals$jscomp$inline_1777 = { bundleType: 0, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, findFiberByHostInstance: getClosestInstanceFromNode, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930", + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009", getLaneLabelMap: function () { for ( var map = new Map(), lane = 1, index$275 = 0; @@ -15709,16 +15692,16 @@ var internals$jscomp$inline_1764 = { } }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2193 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2206 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2193.isDisabled && - hook$jscomp$inline_2193.supportsFiber + !hook$jscomp$inline_2206.isDisabled && + hook$jscomp$inline_2206.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2193.inject( - internals$jscomp$inline_1764 + (rendererID = hook$jscomp$inline_2206.inject( + internals$jscomp$inline_1777 )), - (injectedHook = hook$jscomp$inline_2193); + (injectedHook = hook$jscomp$inline_2206); } catch (err) {} } function noop() {} @@ -15845,7 +15828,7 @@ exports.hydrateRoot = function (container, initialChildren, options) { identifierPrefix.callback = null; enqueueUpdate(options, identifierPrefix, isStrictMode); initialChildren.current.lanes = isStrictMode; - markRootUpdated(initialChildren, isStrictMode); + markRootUpdated$1(initialChildren, isStrictMode); ensureRootIsScheduled(initialChildren); container[internalContainerInstanceKey] = initialChildren.current; listenToAllSupportedEvents(container); @@ -15971,7 +15954,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js index b4b22de24837d..c451547f77031 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js @@ -8566,5 +8566,5 @@ 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js index 332ca5229c82d..0503a357000cb 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js @@ -5621,4 +5621,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js index 413c6e7e16ba7..b690880b5e448 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js @@ -8566,5 +8566,5 @@ 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js index 35b6137391907..6100a57f1599e 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js @@ -5699,4 +5699,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.development.js index aaa45c9242668..0414a2c21afc9 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.development.js @@ -8751,11 +8751,11 @@ didWarnAboutMaps = !1; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-rc-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); exports.renderToReadableStream = function (children, options) { @@ -8848,5 +8848,5 @@ startWork(request$jscomp$0); }); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js index 749f4d89cd80b..453b4f4afe21c 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js @@ -5908,14 +5908,14 @@ function abort(request, reason) { } var isomorphicReactPackageVersion$jscomp$inline_729 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== + "19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion$jscomp$inline_729 ) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion$jscomp$inline_729, - "19.0.0-rc-2d16326d-20240930" + "19.0.0-rc-d5bba18b-20241009" ) ); exports.renderToReadableStream = function (children, options) { @@ -6007,4 +6007,4 @@ exports.renderToReadableStream = function (children, options) { startWork(request); }); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js index 745cff7e59244..fb298a2555323 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js @@ -5592,13 +5592,13 @@ function abort(request, reason) { } var isomorphicReactPackageVersion$jscomp$inline_731 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== + "19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion$jscomp$inline_731 ) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion$jscomp$inline_731 + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); exports.renderToReadableStream = function (children, options) { return new Promise(function (resolve, reject) { @@ -5689,4 +5689,4 @@ exports.renderToReadableStream = function (children, options) { startWork(request); }); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.development.js index 69a54eb929ad1..23890aae8a490 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.development.js @@ -8764,11 +8764,11 @@ didWarnAboutMaps = !1; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-rc-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); exports.renderToReadableStream = function (children, options) { @@ -8872,5 +8872,5 @@ const setTimeoutOrImmediate = ? globalThis['set' + 'Immediate'] : setTimeout; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js index a643c2037e4ac..0b157b1463720 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js @@ -5996,13 +5996,13 @@ function abort(request, reason) { } var isomorphicReactPackageVersion$jscomp$inline_732 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== + "19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion$jscomp$inline_732 ) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion$jscomp$inline_732 + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); exports.renderToReadableStream = function (children, options) { return new Promise(function (resolve, reject) { @@ -6104,4 +6104,4 @@ const setTimeoutOrImmediate = ? globalThis['set' + 'Immediate'] : setTimeout; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.development.js index ac92cb8a8f958..532de354139b3 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.development.js @@ -8621,11 +8621,11 @@ didWarnAboutMaps = !1; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.0.0-rc-2d16326d-20240930" !== isomorphicReactPackageVersion) + if ("19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); exports.renderToPipeableStream = function (children, options) { @@ -8667,5 +8667,5 @@ } }; }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js index e22717f0c5d87..e88b44f2ab02c 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js @@ -5624,13 +5624,13 @@ function abort(request, reason) { } var isomorphicReactPackageVersion$jscomp$inline_759 = React.version; if ( - "19.0.0-rc-2d16326d-20240930" !== + "19.0.0-rc-d5bba18b-20241009" !== isomorphicReactPackageVersion$jscomp$inline_759 ) throw Error( 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion$jscomp$inline_759 + - "\n - react-dom: 19.0.0-rc-2d16326d-20240930\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.0.0-rc-d5bba18b-20241009\nLearn more: https://react.dev/warnings/version-mismatch") ); function createDrainHandler(destination, request) { return function () { @@ -5932,4 +5932,4 @@ exports.renderToPipeableStream = function (children, options) { } }; }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom.development.js index 72c60599d9bae..782775fa17af4 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.development.js @@ -416,7 +416,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom.production.js index 9dc23312c5333..92ce7548ea035 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.production.js @@ -207,4 +207,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js index 85e764f7f0c2d..ad1640ee04a81 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js @@ -336,5 +336,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js index eda85fed0cbf7..8a3f8ba7e4a19 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js @@ -149,4 +149,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-dom/package.json b/packages/next/src/compiled/react-dom/package.json index 212e84213ac29..efe0df69c9b7e 100644 --- a/packages/next/src/compiled/react-dom/package.json +++ b/packages/next/src/compiled/react-dom/package.json @@ -67,10 +67,10 @@ "./package.json": "./package.json" }, "dependencies": { - "scheduler": "0.25.0-rc-2d16326d-20240930" + "scheduler": "0.25.0-rc-d5bba18b-20241009" }, "peerDependencies": { - "react": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009" }, "browser": { "./server.js": "./server.browser.js", diff --git a/packages/next/src/compiled/react-experimental/cjs/react.development.js b/packages/next/src/compiled/react-experimental/cjs/react.development.js index 2e815bb15773a..46f7fd7223eb3 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.development.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.development.js @@ -771,6 +771,11 @@ exports.Suspense = REACT_SUSPENSE_TYPE; exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals; + exports.__COMPILER_RUNTIME = { + c: function (size) { + return resolveDispatcher().useMemoCache(size); + } + }; exports.act = function (callback) { var prevActQueue = ReactSharedInternals.actQueue, prevActScopeDepth = actScopeDepth; @@ -1232,7 +1237,7 @@ exports.useTransition = function () { return resolveDispatcher().useTransition(); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react-experimental/cjs/react.production.js b/packages/next/src/compiled/react-experimental/cjs/react.production.js index 4efb1d261fd16..096c01f4257d1 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.production.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.production.js @@ -365,6 +365,11 @@ exports.StrictMode = REACT_STRICT_MODE_TYPE; exports.Suspense = REACT_SUSPENSE_TYPE; exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals; +exports.__COMPILER_RUNTIME = { + c: function (size) { + return ReactSharedInternals.H.useMemoCache(size); + } +}; exports.act = function () { throw Error("act(...) is not supported in production builds of React."); }; @@ -562,4 +567,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-experimental/cjs/react.react-server.development.js b/packages/next/src/compiled/react-experimental/cjs/react.react-server.development.js index 558b958f4587e..beddfc6c00b79 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.react-server.development.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.react-server.development.js @@ -978,5 +978,5 @@ exports.useMemo = function (create, deps) { return resolveDispatcher().useMemo(create, deps); }; - exports.version = "19.0.0-experimental-2d16326d-20240930"; + exports.version = "19.0.0-experimental-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react-experimental/cjs/react.react-server.production.js b/packages/next/src/compiled/react-experimental/cjs/react.react-server.production.js index 43840352a0715..1d29145f54be4 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.react-server.production.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.react-server.production.js @@ -567,4 +567,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.0.0-experimental-2d16326d-20240930"; +exports.version = "19.0.0-experimental-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react-is/package.json b/packages/next/src/compiled/react-is/package.json index 2dc37470144b3..982e3860198e5 100644 --- a/packages/next/src/compiled/react-is/package.json +++ b/packages/next/src/compiled/react-is/package.json @@ -1,6 +1,6 @@ { "name": "react-is", - "version": "19.0.0-rc-2d16326d-20240930", + "version": "19.0.0-rc-d5bba18b-20241009", "description": "Brand checking of React Elements.", "main": "index.js", "sideEffects": false, diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.development.js index b1db236ca6cb8..4cf3c0266b385 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.development.js @@ -692,12 +692,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function createFakeServerFunction( name, @@ -1332,6 +1337,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1426,6 +1442,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1660,6 +1693,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1801,6 +1915,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -1856,6 +1983,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -1943,122 +2088,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - chunk = JSON.parse(buffer); - buffer = chunk.digest; - tag = chunk.env; - chunk = buildFakeCallStack( - response, - chunk.stack, - tag, - Error.bind( - null, - chunk.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - stringDecoder = getRootTask(response, tag); - chunk = null != stringDecoder ? stringDecoder.run(chunk) : chunk(); - chunk.digest = buffer; - chunk.environmentName = tag; - buffer = response._chunks; - (tag = buffer.get(id)) - ? triggerErrorOnChunk(tag, chunk) - : buffer.set( - id, - new ReactPromise("rejected", null, chunk, response) - ); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - initializeFakeTask( - response, - buffer, - void 0 === buffer.env ? response._rootEnvironmentName : buffer.env - ); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((stringDecoder = JSON.parse(buffer, response._fromJSON)), - (id = stringDecoder[0]), - (buffer = stringDecoder[1]), - (tag = stringDecoder[2]), - (chunk = stringDecoder[3]), - (stringDecoder = stringDecoder.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - buffer, - tag, - chunk, - stringDecoder - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2073,34 +2140,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; case 80: - buffer = JSON.parse(buffer); - buffer = buildFakeCallStack( - response, - buffer.stack, - buffer.env, - Error.bind(null, buffer.reason || "") - ); - tag = response._debugRootTask; - buffer = null != tag ? tag.run(buffer) : buffer(); - buffer.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2499,10 +2546,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930", + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009", getCurrentComponentInfo: function () { return currentOwnerInDEV; } @@ -2562,7 +2609,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2571,6 +2618,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.production.js index f0ff41e81568c..17ccde76041ec 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.production.js @@ -448,12 +448,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function registerServerReference(proxy, reference) { knownServerReferences.set(proxy, reference); @@ -877,6 +882,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1150,6 +1157,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1285,12 +1299,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1518,7 +1529,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1527,5 +1538,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.development.js index 6ff93eafd9324..7c57c114d72c0 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.development.js @@ -717,12 +717,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1540,6 +1545,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1634,6 +1650,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1873,6 +1906,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -2014,6 +2128,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -2069,6 +2196,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2156,122 +2301,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - chunk = JSON.parse(buffer); - buffer = chunk.digest; - tag = chunk.env; - chunk = buildFakeCallStack( - response, - chunk.stack, - tag, - Error.bind( - null, - chunk.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - stringDecoder = getRootTask(response, tag); - chunk = null != stringDecoder ? stringDecoder.run(chunk) : chunk(); - chunk.digest = buffer; - chunk.environmentName = tag; - buffer = response._chunks; - (tag = buffer.get(id)) - ? triggerErrorOnChunk(tag, chunk) - : buffer.set( - id, - new ReactPromise("rejected", null, chunk, response) - ); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - initializeFakeTask( - response, - buffer, - void 0 === buffer.env ? response._rootEnvironmentName : buffer.env - ); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((stringDecoder = JSON.parse(buffer, response._fromJSON)), - (id = stringDecoder[0]), - (buffer = stringDecoder[1]), - (tag = stringDecoder[2]), - (chunk = stringDecoder[3]), - (stringDecoder = stringDecoder.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - buffer, - tag, - chunk, - stringDecoder - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2286,34 +2353,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; case 80: - buffer = JSON.parse(buffer); - buffer = buildFakeCallStack( - response, - buffer.stack, - buffer.env, - Error.bind(null, buffer.reason || "") - ); - tag = response._debugRootTask; - buffer = null != tag ? tag.run(buffer) : buffer(); - buffer.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2733,7 +2780,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2742,6 +2789,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.production.js index 27beef6e83cdc..bf9444b2588d8 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.production.js @@ -469,12 +469,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1044,6 +1049,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1322,6 +1329,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1457,12 +1471,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1690,7 +1701,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1699,5 +1710,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.development.js index 4fd90c5b15325..1fa214f67f820 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.development.js @@ -717,12 +717,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1540,6 +1545,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1634,6 +1650,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1873,6 +1906,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -2014,6 +2128,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -2069,6 +2196,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2156,122 +2301,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - chunk = JSON.parse(buffer); - buffer = chunk.digest; - tag = chunk.env; - chunk = buildFakeCallStack( - response, - chunk.stack, - tag, - Error.bind( - null, - chunk.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - stringDecoder = getRootTask(response, tag); - chunk = null != stringDecoder ? stringDecoder.run(chunk) : chunk(); - chunk.digest = buffer; - chunk.environmentName = tag; - buffer = response._chunks; - (tag = buffer.get(id)) - ? triggerErrorOnChunk(tag, chunk) - : buffer.set( - id, - new ReactPromise("rejected", null, chunk, response) - ); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - initializeFakeTask( - response, - buffer, - void 0 === buffer.env ? response._rootEnvironmentName : buffer.env - ); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((stringDecoder = JSON.parse(buffer, response._fromJSON)), - (id = stringDecoder[0]), - (buffer = stringDecoder[1]), - (tag = stringDecoder[2]), - (chunk = stringDecoder[3]), - (stringDecoder = stringDecoder.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - buffer, - tag, - chunk, - stringDecoder - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2286,34 +2353,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; case 80: - buffer = JSON.parse(buffer); - buffer = buildFakeCallStack( - response, - buffer.stack, - buffer.env, - Error.bind(null, buffer.reason || "") - ); - tag = response._debugRootTask; - buffer = null != tag ? tag.run(buffer) : buffer(); - buffer.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.production.js index 966be4694ea1e..04e42ce6bb950 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.production.js @@ -470,12 +470,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1045,6 +1050,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1323,6 +1330,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1458,12 +1472,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.development.js index e191eddf26cab..8f6ca7c8e6f01 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.development.js @@ -1069,9 +1069,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1271,6 +1272,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1338,6 +1340,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1644,18 +1648,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1864,6 +1856,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1918,17 +1911,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2109,6 +2091,27 @@ id = stringToChunk(id); request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2143,7 +2146,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2157,6 +2160,33 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2217,11 +2247,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2243,20 +2301,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2300,17 +2357,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2355,7 +2402,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2373,8 +2423,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2387,7 +2438,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2398,7 +2452,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js index d35aaca564e0b..8a446221de88c 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js @@ -1545,6 +1545,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.development.js index 10d7b52135a3c..18d842762b7d1 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.development.js @@ -1078,9 +1078,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1328,6 +1329,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1395,6 +1397,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1701,18 +1705,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1921,6 +1913,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1975,17 +1968,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2188,6 +2170,27 @@ id = stringToChunk(id); request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2222,7 +2225,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2236,6 +2239,33 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2296,11 +2326,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2322,20 +2380,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2379,17 +2436,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2434,7 +2481,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2452,8 +2502,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2466,7 +2517,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2477,7 +2531,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js index bafb4e460b56a..506c80f048b1b 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js @@ -1550,6 +1550,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.development.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.development.js index f00c6945e615f..98001675d7af0 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.development.js @@ -1098,9 +1098,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1326,6 +1327,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1393,6 +1395,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1697,18 +1701,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1917,6 +1909,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1971,17 +1964,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2174,6 +2156,27 @@ "\n"; request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2206,7 +2209,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2219,6 +2222,33 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2275,11 +2305,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2301,20 +2359,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2358,17 +2415,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2413,7 +2460,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2430,8 +2480,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2444,7 +2495,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2454,7 +2508,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js index b5d45794c3b49..dda3414cc4ee9 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js @@ -1564,6 +1564,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2957,12 +2958,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, turbopackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_229 = []; + var JSCompiler_object_inline_chunks_233 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_229.push(chunk); + JSCompiler_object_inline_chunks_233.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_229, { + var blob = new Blob(JSCompiler_object_inline_chunks_233, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/package.json b/packages/next/src/compiled/react-server-dom-turbopack-experimental/package.json index 075fde27d4bbf..eb970c184f094 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/package.json +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/package.json @@ -48,7 +48,7 @@ "neo-async": "^2.6.1" }, "peerDependencies": { - "react": "0.0.0-experimental-2d16326d-20240930", - "react-dom": "0.0.0-experimental-2d16326d-20240930" + "react": "0.0.0-experimental-d5bba18b-20241009", + "react-dom": "0.0.0-experimental-d5bba18b-20241009" } } \ No newline at end of file diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.development.js index 0f577cf18c7db..aeac35aba2aa4 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.development.js @@ -724,12 +724,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function createFakeServerFunction( name, @@ -1340,6 +1345,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1430,6 +1446,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1664,6 +1697,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1752,9 +1867,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -1842,120 +1974,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - stringDecoder = JSON.parse(buffer); - tag = stringDecoder.digest; - chunk = stringDecoder.env; - buffer = Error( - stringDecoder.message || - "An error occurred in the Server Components render but no message was provided" - ); - stringDecoder = stringDecoder.stack; - row = buffer.name + ": " + buffer.message; - if (stringDecoder) - for (i = 0; i < stringDecoder.length; i++) { - var frame = stringDecoder[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - row = name - ? row + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : row + ("\n at " + filename + ":" + line + ":" + frame); - } - buffer.stack = row; - buffer.digest = tag; - buffer.environmentName = chunk; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((buffer = JSON.parse(buffer, response._fromJSON)), - (response = buffer[0]), - (id = buffer[3]), - (buffer = buffer.slice(4)), - bindToConsole(response, buffer, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -1970,18 +2026,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2299,10 +2347,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930", + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009", getCurrentComponentInfo: function () { return currentOwnerInDEV; } @@ -2362,7 +2410,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2371,6 +2419,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.production.js index a2cab896a7f1b..96a461e4887a2 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.production.js @@ -447,12 +447,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function registerServerReference(proxy, reference) { knownServerReferences.set(proxy, reference); @@ -876,6 +881,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1149,6 +1156,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1284,12 +1298,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1506,7 +1517,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1515,5 +1526,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.development.js index 73103e5411e38..22cb8949d4a06 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.development.js @@ -749,12 +749,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1548,6 +1553,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1638,6 +1654,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1877,6 +1910,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1965,9 +2080,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2055,120 +2187,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - stringDecoder = JSON.parse(buffer); - tag = stringDecoder.digest; - chunk = stringDecoder.env; - buffer = Error( - stringDecoder.message || - "An error occurred in the Server Components render but no message was provided" - ); - stringDecoder = stringDecoder.stack; - row = buffer.name + ": " + buffer.message; - if (stringDecoder) - for (i = 0; i < stringDecoder.length; i++) { - var frame = stringDecoder[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - row = name - ? row + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : row + ("\n at " + filename + ":" + line + ":" + frame); - } - buffer.stack = row; - buffer.digest = tag; - buffer.environmentName = chunk; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((buffer = JSON.parse(buffer, response._fromJSON)), - (response = buffer[0]), - (id = buffer[3]), - (buffer = buffer.slice(4)), - bindToConsole(response, buffer, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2183,18 +2239,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2530,7 +2578,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2539,6 +2587,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.production.js index 435913724c14f..a9598f248777a 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.production.js @@ -468,12 +468,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1043,6 +1048,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1321,6 +1328,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1456,12 +1470,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1678,7 +1689,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1687,5 +1698,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js index 0d03e46523530..fb7e4230f8039 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js @@ -749,12 +749,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1548,6 +1553,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1638,6 +1654,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1877,6 +1910,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1965,9 +2080,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2055,120 +2187,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - stringDecoder = JSON.parse(buffer); - tag = stringDecoder.digest; - chunk = stringDecoder.env; - buffer = Error( - stringDecoder.message || - "An error occurred in the Server Components render but no message was provided" - ); - stringDecoder = stringDecoder.stack; - row = buffer.name + ": " + buffer.message; - if (stringDecoder) - for (i = 0; i < stringDecoder.length; i++) { - var frame = stringDecoder[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - row = name - ? row + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : row + ("\n at " + filename + ":" + line + ":" + frame); - } - buffer.stack = row; - buffer.digest = tag; - buffer.environmentName = chunk; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((buffer = JSON.parse(buffer, response._fromJSON)), - (response = buffer[0]), - (id = buffer[3]), - (buffer = buffer.slice(4)), - bindToConsole(response, buffer, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2183,18 +2239,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.production.js index ebfb140491e98..4d58eebd51dd3 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.production.js @@ -469,12 +469,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1044,6 +1049,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1322,6 +1329,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1457,12 +1471,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.development.js index 9412fc82a4908..6d30c883032b7 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.development.js @@ -927,7 +927,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1088,7 +1089,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1096,7 +1097,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1122,13 +1123,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1398,18 +1398,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1596,6 +1584,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1650,13 +1639,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1797,6 +1779,27 @@ closeWithError(request.destination, error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1831,7 +1834,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1845,6 +1848,32 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; var buffer = new Uint8Array( @@ -1892,11 +1921,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1914,20 +1957,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -1971,14 +2013,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2023,7 +2058,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2041,8 +2079,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2055,7 +2094,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2066,7 +2108,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js index c8f8dcf3f6dd3..0c6445054c7e5 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js @@ -1459,6 +1459,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.development.js index 2de6917697524..675a9901dbf20 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.development.js @@ -936,7 +936,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1105,7 +1106,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1113,7 +1114,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1139,13 +1140,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1415,18 +1415,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1613,6 +1601,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1667,13 +1656,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1825,6 +1807,27 @@ closeWithError(request.destination, error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1859,7 +1862,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1873,6 +1876,32 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; var buffer = new Uint8Array( @@ -1920,11 +1949,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1942,20 +1985,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -1999,14 +2041,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2051,7 +2086,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2069,8 +2107,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2083,7 +2122,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2094,7 +2136,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js index c51b670753fc1..b1551003813c1 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js @@ -1464,6 +1464,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.development.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.development.js index feaa02910e419..1c534c9341d7d 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.development.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.development.js @@ -956,7 +956,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1123,7 +1124,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1131,7 +1132,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1157,13 +1158,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1431,18 +1431,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1629,6 +1617,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1683,13 +1672,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1836,6 +1818,27 @@ ? ((request.status = CLOSED), request.destination.destroy(error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1868,7 +1871,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1881,6 +1884,32 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; typedArray = new Uint8Array( @@ -1924,11 +1953,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1946,20 +1989,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2003,14 +2045,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2055,7 +2090,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2072,8 +2110,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2086,7 +2125,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2096,7 +2138,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js index 451412483fb86..b2c2ec1b430ab 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js @@ -1477,6 +1477,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2773,12 +2774,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, turbopackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_212 = []; + var JSCompiler_object_inline_chunks_216 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_212.push(chunk); + JSCompiler_object_inline_chunks_216.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_212, { + var blob = new Blob(JSCompiler_object_inline_chunks_216, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-turbopack/package.json b/packages/next/src/compiled/react-server-dom-turbopack/package.json index d741006371ee1..60e5b8a047c4f 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/package.json +++ b/packages/next/src/compiled/react-server-dom-turbopack/package.json @@ -48,7 +48,7 @@ "neo-async": "^2.6.1" }, "peerDependencies": { - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930" + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009" } } \ No newline at end of file diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js index 03dec13b5ab89..4ba128c2d48d9 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js @@ -697,12 +697,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function createFakeServerFunction( name, @@ -1337,6 +1342,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1431,6 +1447,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1665,6 +1698,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1806,6 +1920,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -1861,6 +1988,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -1948,122 +2093,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - chunk = JSON.parse(buffer); - buffer = chunk.digest; - tag = chunk.env; - chunk = buildFakeCallStack( - response, - chunk.stack, - tag, - Error.bind( - null, - chunk.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - stringDecoder = getRootTask(response, tag); - chunk = null != stringDecoder ? stringDecoder.run(chunk) : chunk(); - chunk.digest = buffer; - chunk.environmentName = tag; - buffer = response._chunks; - (tag = buffer.get(id)) - ? triggerErrorOnChunk(tag, chunk) - : buffer.set( - id, - new ReactPromise("rejected", null, chunk, response) - ); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - initializeFakeTask( - response, - buffer, - void 0 === buffer.env ? response._rootEnvironmentName : buffer.env - ); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((stringDecoder = JSON.parse(buffer, response._fromJSON)), - (id = stringDecoder[0]), - (buffer = stringDecoder[1]), - (tag = stringDecoder[2]), - (chunk = stringDecoder[3]), - (stringDecoder = stringDecoder.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - buffer, - tag, - chunk, - stringDecoder - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2078,34 +2145,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; case 80: - buffer = JSON.parse(buffer); - buffer = buildFakeCallStack( - response, - buffer.stack, - buffer.env, - Error.bind(null, buffer.reason || "") - ); - tag = response._debugRootTask; - buffer = null != tag ? tag.run(buffer) : buffer(); - buffer.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2512,10 +2559,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.0.0-experimental-2d16326d-20240930", + version: "19.0.0-experimental-d5bba18b-20241009", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.0.0-experimental-2d16326d-20240930", + reconcilerVersion: "19.0.0-experimental-d5bba18b-20241009", getCurrentComponentInfo: function () { return currentOwnerInDEV; } @@ -2575,7 +2622,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2584,6 +2631,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.js index 5e9fb3131031a..9655a380b595c 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.js @@ -458,12 +458,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function registerServerReference(proxy, reference) { knownServerReferences.set(proxy, reference); @@ -887,6 +892,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1160,6 +1167,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1295,12 +1309,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1528,7 +1539,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1537,5 +1548,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js index 9926673a9ce66..4a0c41be0b05c 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js @@ -718,12 +718,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1541,6 +1546,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1635,6 +1651,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1874,6 +1907,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -2015,6 +2129,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -2070,6 +2197,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2157,122 +2302,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - chunk = JSON.parse(buffer); - buffer = chunk.digest; - tag = chunk.env; - chunk = buildFakeCallStack( - response, - chunk.stack, - tag, - Error.bind( - null, - chunk.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - stringDecoder = getRootTask(response, tag); - chunk = null != stringDecoder ? stringDecoder.run(chunk) : chunk(); - chunk.digest = buffer; - chunk.environmentName = tag; - buffer = response._chunks; - (tag = buffer.get(id)) - ? triggerErrorOnChunk(tag, chunk) - : buffer.set( - id, - new ReactPromise("rejected", null, chunk, response) - ); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - initializeFakeTask( - response, - buffer, - void 0 === buffer.env ? response._rootEnvironmentName : buffer.env - ); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((stringDecoder = JSON.parse(buffer, response._fromJSON)), - (id = stringDecoder[0]), - (buffer = stringDecoder[1]), - (tag = stringDecoder[2]), - (chunk = stringDecoder[3]), - (stringDecoder = stringDecoder.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - buffer, - tag, - chunk, - stringDecoder - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2287,34 +2354,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; case 80: - buffer = JSON.parse(buffer); - buffer = buildFakeCallStack( - response, - buffer.stack, - buffer.env, - Error.bind(null, buffer.reason || "") - ); - tag = response._debugRootTask; - buffer = null != tag ? tag.run(buffer) : buffer(); - buffer.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2734,7 +2781,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2743,6 +2790,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.js index 379be5588c48a..4ac53ab724cbe 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.js @@ -470,12 +470,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1045,6 +1050,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1323,6 +1330,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1458,12 +1472,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1691,7 +1702,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1700,5 +1711,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.development.js index 26568ec942508..a8affd8d36b31 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.development.js @@ -718,12 +718,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1541,6 +1546,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1635,6 +1651,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1874,6 +1907,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -2015,6 +2129,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -2070,6 +2197,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2166,113 +2311,35 @@ resolveModule(response, id, row); break; case 72: - id = row[0]; - row = row.slice(1); - response = JSON.parse(row, response._fromJSON); - row = ReactDOMSharedInternals.d; - switch (id) { - case "D": - row.D(response); - break; - case "C": - "string" === typeof response - ? row.C(response) - : row.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? row.L(id, tag, response[2]) - : row.L(id, tag); - break; - case "m": - "string" === typeof response - ? row.m(response) - : row.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? row.X(response) - : row.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? row.S(response) - : row.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? row.M(response) - : row.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - var errorInfo = JSON.parse(row); - row = errorInfo.digest; - tag = errorInfo.env; - errorInfo = buildFakeCallStack( - response, - errorInfo.stack, - tag, - Error.bind( - null, - errorInfo.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - var rootTask = getRootTask(response, tag); - errorInfo = null != rootTask ? rootTask.run(errorInfo) : errorInfo(); - errorInfo.digest = row; - errorInfo.environmentName = tag; + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; row = response._chunks; - (tag = row.get(id)) - ? triggerErrorOnChunk(tag, errorInfo) - : row.set( - id, - new ReactPromise("rejected", null, errorInfo, response) - ); + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (errorInfo = tag.get(id)) && "pending" !== errorInfo.status - ? errorInfo.reason.enqueueValue(row) - : tag.set(id, new ReactPromise("fulfilled", row, null, response)); + resolveText(response, id, row); break; case 68: - row = JSON.parse(row, response._fromJSON); - initializeFakeTask( - response, - row, - void 0 === row.env ? response._rootEnvironmentName : row.env - ); - null === row.owner && null != response._debugRootOwner - ? ((row.owner = response._debugRootOwner), - (row.debugStack = response._debugRootStack)) - : initializeFakeStack(response, row); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(row); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((rootTask = JSON.parse(row, response._fromJSON)), - (id = rootTask[0]), - (row = rootTask[1]), - (tag = rootTask[2]), - (errorInfo = rootTask[3]), - (rootTask = rootTask.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - row, - tag, - errorInfo, - rootTask - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2287,34 +2354,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === row ? '"$undefined"' : row); + stopStream(response, id, row); break; case 80: - row = JSON.parse(row); - row = buildFakeCallStack( - response, - row.stack, - row.env, - Error.bind(null, row.reason || "") - ); - tag = response._debugRootTask; - row = null != tag ? tag.run(row) : row(); - row.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (errorInfo = tag.get(id)) - ? triggerErrorOnChunk(errorInfo, row) - : tag.set(id, new ReactPromise("rejected", null, row, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (errorInfo = tag.get(id)) - ? resolveModelChunk(errorInfo, row) - : tag.set( - id, - new ReactPromise("resolved_model", row, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.production.js index 33b33c8e7a9d3..75c75f427ec8b 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.production.js @@ -471,12 +471,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1046,6 +1051,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1324,6 +1331,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1460,12 +1474,9 @@ function processFullStringRow(response, id, tag, row) { } break; case 69: - tag = JSON.parse(row).digest; - row = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - row.stack = "Error: " + row.message; - row.digest = tag; + tag = JSON.parse(row); + row = resolveErrorProd(); + row.digest = tag.digest; tag = response._chunks; var chunk = tag.get(id); chunk diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.development.js index 5c3b6d8a8e2fb..9c5386f55cc1c 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.development.js @@ -697,12 +697,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1516,6 +1521,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1610,6 +1626,23 @@ this._rootEnvironmentName = environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1849,6 +1882,87 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + var env = errorInfo.env; + errorInfo = buildFakeCallStack( + response, + errorInfo.stack, + env, + Error.bind( + null, + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ) + ); + response = getRootTask(response, env); + response = null != response ? response.run(errorInfo) : errorInfo(); + response.environmentName = env; + return response; + } + function resolvePostponeDev(response, id, reason, stack, env) { + reason = buildFakeCallStack( + response, + stack, + env, + Error.bind(null, reason || "") + ); + stack = response._debugRootTask; + reason = null != stack ? stack.run(reason) : reason(); + reason.$$typeof = REACT_POSTPONE_TYPE; + stack = response._chunks; + (env = stack.get(id)) + ? triggerErrorOnChunk(env, reason) + : stack.set(id, new ReactPromise("rejected", null, reason, response)); + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1990,6 +2104,19 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + initializeFakeTask( + response, + debugInfo, + void 0 === debugInfo.env ? response._rootEnvironmentName : debugInfo.env + ); + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { var owner = currentOwnerInDEV; if (null === owner) return ""; @@ -2045,6 +2172,24 @@ } return JSCompiler_inline_result$jscomp$0; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + value = payload[0]; + var stackTrace = payload[1], + owner = payload[2], + env = payload[3]; + payload = payload.slice(4); + replayConsoleWithCallStackInDEV( + response, + value, + stackTrace, + owner, + env, + payload + ); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2141,113 +2286,35 @@ resolveModule(response, id, row); break; case 72: - id = row[0]; - row = row.slice(1); - response = JSON.parse(row, response._fromJSON); - row = ReactDOMSharedInternals.d; - switch (id) { - case "D": - row.D(response); - break; - case "C": - "string" === typeof response - ? row.C(response) - : row.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? row.L(id, tag, response[2]) - : row.L(id, tag); - break; - case "m": - "string" === typeof response - ? row.m(response) - : row.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? row.X(response) - : row.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? row.S(response) - : row.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? row.M(response) - : row.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - var errorInfo = JSON.parse(row); - row = errorInfo.digest; - tag = errorInfo.env; - errorInfo = buildFakeCallStack( - response, - errorInfo.stack, - tag, - Error.bind( - null, - errorInfo.message || - "An error occurred in the Server Components render but no message was provided" - ) - ); - var rootTask = getRootTask(response, tag); - errorInfo = null != rootTask ? rootTask.run(errorInfo) : errorInfo(); - errorInfo.digest = row; - errorInfo.environmentName = tag; + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; row = response._chunks; - (tag = row.get(id)) - ? triggerErrorOnChunk(tag, errorInfo) - : row.set( - id, - new ReactPromise("rejected", null, errorInfo, response) - ); + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (errorInfo = tag.get(id)) && "pending" !== errorInfo.status - ? errorInfo.reason.enqueueValue(row) - : tag.set(id, new ReactPromise("fulfilled", row, null, response)); + resolveText(response, id, row); break; case 68: - row = JSON.parse(row, response._fromJSON); - initializeFakeTask( - response, - row, - void 0 === row.env ? response._rootEnvironmentName : row.env - ); - null === row.owner && null != response._debugRootOwner - ? ((row.owner = response._debugRootOwner), - (row.debugStack = response._debugRootStack)) - : initializeFakeStack(response, row); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(row); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((rootTask = JSON.parse(row, response._fromJSON)), - (id = rootTask[0]), - (row = rootTask[1]), - (tag = rootTask[2]), - (errorInfo = rootTask[3]), - (rootTask = rootTask.slice(4)), - replayConsoleWithCallStackInDEV( - response, - id, - row, - tag, - errorInfo, - rootTask - )); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2262,34 +2329,14 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === row ? '"$undefined"' : row); + stopStream(response, id, row); break; case 80: - row = JSON.parse(row); - row = buildFakeCallStack( - response, - row.stack, - row.env, - Error.bind(null, row.reason || "") - ); - tag = response._debugRootTask; - row = null != tag ? tag.run(row) : row(); - row.$$typeof = REACT_POSTPONE_TYPE; - tag = response._chunks; - (errorInfo = tag.get(id)) - ? triggerErrorOnChunk(errorInfo, row) - : tag.set(id, new ReactPromise("rejected", null, row, response)); + tag = JSON.parse(row); + resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env); break; default: - (tag = response._chunks), - (errorInfo = tag.get(id)) - ? resolveModelChunk(errorInfo, row) - : tag.set( - id, - new ReactPromise("resolved_model", row, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.production.js index 0b46271364b46..7d32d9d409443 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.unbundled.production.js @@ -454,12 +454,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1025,6 +1030,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1303,6 +1310,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1439,12 +1453,9 @@ function processFullStringRow(response, id, tag, row) { } break; case 69: - tag = JSON.parse(row).digest; - row = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - row.stack = "Error: " + row.message; - row.digest = tag; + tag = JSON.parse(row); + row = resolveErrorProd(); + row.digest = tag.digest; tag = response._chunks; var chunk = tag.get(id); chunk diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.development.js index adfd63037a303..6d9b746523574 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.development.js @@ -1069,9 +1069,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1271,6 +1272,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1338,6 +1340,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1644,18 +1648,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1864,6 +1856,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1918,17 +1911,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2109,6 +2091,27 @@ id = stringToChunk(id); request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2143,7 +2146,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2157,6 +2160,33 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2217,11 +2247,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2243,20 +2301,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2300,17 +2357,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2355,7 +2402,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2373,8 +2423,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2387,7 +2438,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2398,7 +2452,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js index 507f1bff591e6..7e3d6374600ae 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js @@ -1545,6 +1545,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js index 45f38a29e5243..1f350ece95eb4 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js @@ -1078,9 +1078,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1328,6 +1329,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1395,6 +1397,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1701,18 +1705,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1921,6 +1913,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1975,17 +1968,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2188,6 +2170,27 @@ id = stringToChunk(id); request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2222,7 +2225,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2236,6 +2239,33 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2296,11 +2326,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2322,20 +2380,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2379,17 +2436,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2434,7 +2481,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2452,8 +2502,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2466,7 +2517,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2477,7 +2531,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js index 66cd986cb8b6f..f64a4416a9a26 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js @@ -1550,6 +1550,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js index 60c33f50624a6..313ae45c18ee7 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js @@ -1098,9 +1098,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1326,6 +1327,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1393,6 +1395,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1697,18 +1701,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1917,6 +1909,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1971,17 +1964,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2174,6 +2156,27 @@ "\n"; request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2206,7 +2209,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2219,6 +2222,33 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2275,11 +2305,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2301,20 +2359,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2358,17 +2415,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2413,7 +2460,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2430,8 +2480,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2444,7 +2495,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2454,7 +2508,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js index 7342f80a6866b..f5591256eb494 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js @@ -1564,6 +1564,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2958,12 +2959,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_229 = []; + var JSCompiler_object_inline_chunks_233 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_229.push(chunk); + JSCompiler_object_inline_chunks_233.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_229, { + var blob = new Blob(JSCompiler_object_inline_chunks_233, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.development.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.development.js index 27c73a2b9b74a..b85ba578ec53b 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.development.js @@ -1098,9 +1098,10 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1); + componentDebugInfo.props = props; componentDebugInfo.debugStack = task.debugStack; componentDebugInfo.debugTask = task.debugTask; - outlineModel(request, componentDebugInfo); + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; 2 === validated && @@ -1326,6 +1327,7 @@ null === task.debugStack ? null : filterStackTrace(request, task.debugStack, 1), + props: props, debugStack: task.debugStack, debugTask: task.debugTask }), @@ -1393,6 +1395,8 @@ ); ref = task.keyPath; null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); request = [ REACT_ELEMENT_TYPE, type, @@ -1697,18 +1701,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - (isArrayImpl(value.stack) || null === value.stack) && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1917,6 +1909,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1971,17 +1964,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return ( - (request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = value.stack), - request - ); if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -2174,6 +2156,27 @@ "\n"; request.completedErrorChunks.push(id); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -2206,7 +2209,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -2219,6 +2222,33 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.stack = componentInfo.stack; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { if (TaintRegistryByteLengths.has(typedArray.byteLength)) { var tainted = TaintRegistryValues.get( @@ -2275,11 +2305,39 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + (counter = null), + null != value._debugStack && + ((counter = filterStackTrace(request, value._debugStack, 1)), + (parent = outlineConsoleValue( + request, + { objectLimit: counter.length + 2 }, + counter + )), + request.writtenObjects.set( + counter, + serializeByValueID(parent) + )), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner, + counter, + value._store.validated + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -2301,20 +2359,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2358,17 +2415,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? ((request = { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }), - (request.stack = - value.stack), - request) - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2413,7 +2460,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2430,8 +2480,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2444,7 +2495,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2454,7 +2508,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.production.js index c78253048b9e4..4e657cd22d078 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.unbundled.production.js @@ -1564,6 +1564,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2926,12 +2927,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_229 = []; + var JSCompiler_object_inline_chunks_233 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_229.push(chunk); + JSCompiler_object_inline_chunks_233.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_229, { + var blob = new Blob(JSCompiler_object_inline_chunks_233, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/package.json b/packages/next/src/compiled/react-server-dom-webpack-experimental/package.json index 798c78cdba57c..9c09f7ab7bfac 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/package.json +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/package.json @@ -64,8 +64,8 @@ "webpack-sources": "^3.2.0" }, "peerDependencies": { - "react": "0.0.0-experimental-2d16326d-20240930", - "react-dom": "0.0.0-experimental-2d16326d-20240930", + "react": "0.0.0-experimental-d5bba18b-20241009", + "react-dom": "0.0.0-experimental-d5bba18b-20241009", "webpack": "^5.59.0" } } \ No newline at end of file diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js index 4c5d8faefc732..2afa43e2f4459 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js @@ -729,12 +729,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function createFakeServerFunction( name, @@ -1345,6 +1350,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1435,6 +1451,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1669,6 +1702,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1757,9 +1872,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -1847,120 +1979,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - stringDecoder = JSON.parse(buffer); - tag = stringDecoder.digest; - chunk = stringDecoder.env; - buffer = Error( - stringDecoder.message || - "An error occurred in the Server Components render but no message was provided" - ); - stringDecoder = stringDecoder.stack; - row = buffer.name + ": " + buffer.message; - if (stringDecoder) - for (i = 0; i < stringDecoder.length; i++) { - var frame = stringDecoder[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - row = name - ? row + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : row + ("\n at " + filename + ":" + line + ":" + frame); - } - buffer.stack = row; - buffer.digest = tag; - buffer.environmentName = chunk; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((buffer = JSON.parse(buffer, response._fromJSON)), - (response = buffer[0]), - (id = buffer[3]), - (buffer = buffer.slice(4)), - bindToConsole(response, buffer, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -1975,18 +2031,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2312,10 +2360,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.0.0-rc-2d16326d-20240930", + version: "19.0.0-rc-d5bba18b-20241009", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.0.0-rc-2d16326d-20240930", + reconcilerVersion: "19.0.0-rc-d5bba18b-20241009", getCurrentComponentInfo: function () { return currentOwnerInDEV; } @@ -2375,7 +2423,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2384,6 +2432,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.js index dbb05bff6351a..deffe55f0189f 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.js @@ -457,12 +457,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function registerServerReference(proxy, reference) { knownServerReferences.set(proxy, reference); @@ -886,6 +891,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1159,6 +1166,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1294,12 +1308,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1516,7 +1527,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1525,5 +1536,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js index 128d518568bc7..20d7637fcfe86 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js @@ -750,12 +750,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1549,6 +1554,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1639,6 +1655,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1878,6 +1911,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1966,9 +2081,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2056,120 +2188,44 @@ i++ ) row += stringDecoder.decode(buffer[i], decoderOptions); - buffer = row += stringDecoder.decode(chunk); + row += stringDecoder.decode(chunk); + processFullStringRow(response, id, tag, row); + } + function processFullStringRow(response, id, tag, row) { switch (tag) { case 73: - resolveModule(response, id, buffer); + resolveModule(response, id, row); break; case 72: - id = buffer[0]; - buffer = buffer.slice(1); - response = JSON.parse(buffer, response._fromJSON); - buffer = ReactDOMSharedInternals.d; - switch (id) { - case "D": - buffer.D(response); - break; - case "C": - "string" === typeof response - ? buffer.C(response) - : buffer.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? buffer.L(id, tag, response[2]) - : buffer.L(id, tag); - break; - case "m": - "string" === typeof response - ? buffer.m(response) - : buffer.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? buffer.X(response) - : buffer.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? buffer.S(response) - : buffer.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? buffer.M(response) - : buffer.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - stringDecoder = JSON.parse(buffer); - tag = stringDecoder.digest; - chunk = stringDecoder.env; - buffer = Error( - stringDecoder.message || - "An error occurred in the Server Components render but no message was provided" - ); - stringDecoder = stringDecoder.stack; - row = buffer.name + ": " + buffer.message; - if (stringDecoder) - for (i = 0; i < stringDecoder.length; i++) { - var frame = stringDecoder[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - row = name - ? row + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : row + ("\n at " + filename + ":" + line + ":" + frame); - } - buffer.stack = row; - buffer.digest = tag; - buffer.environmentName = chunk; - tag = response._chunks; - (chunk = tag.get(id)) - ? triggerErrorOnChunk(chunk, buffer) - : tag.set(id, new ReactPromise("rejected", null, buffer, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (chunk = tag.get(id)) && "pending" !== chunk.status - ? chunk.reason.enqueueValue(buffer) - : tag.set( - id, - new ReactPromise("fulfilled", buffer, null, response) - ); + resolveText(response, id, row); break; case 68: - buffer = JSON.parse(buffer, response._fromJSON); - null === buffer.owner && null != response._debugRootOwner - ? ((buffer.owner = response._debugRootOwner), - (buffer.debugStack = response._debugRootStack)) - : initializeFakeStack(response, buffer); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(buffer); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((buffer = JSON.parse(buffer, response._fromJSON)), - (response = buffer[0]), - (id = buffer[3]), - (buffer = buffer.slice(4)), - bindToConsole(response, buffer, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2184,18 +2240,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === buffer ? '"$undefined"' : buffer); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (chunk = tag.get(id)) - ? resolveModelChunk(chunk, buffer) - : tag.set( - id, - new ReactPromise("resolved_model", buffer, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { @@ -2531,7 +2579,7 @@ }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -2540,6 +2588,17 @@ resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; })(); diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.js index d37850f831c83..174a180e64cf7 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.js @@ -469,12 +469,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1044,6 +1049,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1322,6 +1329,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1457,12 +1471,9 @@ function processFullBinaryRow(response, id, tag, buffer, chunk) { } break; case 69: - tag = JSON.parse(buffer).digest; - buffer = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - buffer.stack = "Error: " + buffer.message; - buffer.digest = tag; + tag = JSON.parse(buffer); + buffer = resolveErrorProd(); + buffer.digest = tag.digest; tag = response._chunks; (chunk = tag.get(id)) ? triggerErrorOnChunk(chunk, buffer) @@ -1679,7 +1690,7 @@ exports.createTemporaryReferenceSet = function () { }; exports.encodeReply = function (value, options) { return new Promise(function (resolve, reject) { - processReply( + var abort = processReply( value, "", options && options.temporaryReferences @@ -1688,5 +1699,16 @@ exports.encodeReply = function (value, options) { resolve, reject ); + if (options && options.signal) { + var signal = options.signal; + if (signal.aborted) abort(signal.reason); + else { + var listener = function () { + abort(signal.reason); + signal.removeEventListener("abort", listener); + }; + signal.addEventListener("abort", listener); + } + } }); }; diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.development.js index 76cde1d3f7ef2..ee1f83574109a 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.development.js @@ -750,12 +750,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1549,6 +1554,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1639,6 +1655,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1878,6 +1911,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1966,9 +2081,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2065,112 +2197,35 @@ resolveModule(response, id, row); break; case 72: - id = row[0]; - row = row.slice(1); - response = JSON.parse(row, response._fromJSON); - row = ReactDOMSharedInternals.d; - switch (id) { - case "D": - row.D(response); - break; - case "C": - "string" === typeof response - ? row.C(response) - : row.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? row.L(id, tag, response[2]) - : row.L(id, tag); - break; - case "m": - "string" === typeof response - ? row.m(response) - : row.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? row.X(response) - : row.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? row.S(response) - : row.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? row.M(response) - : row.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - var errorInfo = JSON.parse(row); - tag = errorInfo.digest; - var env = errorInfo.env; - row = Error( - errorInfo.message || - "An error occurred in the Server Components render but no message was provided" - ); - errorInfo = errorInfo.stack; - var v8StyleStack = row.name + ": " + row.message; - if (errorInfo) - for (var i = 0; i < errorInfo.length; i++) { - var frame = errorInfo[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - v8StyleStack = name - ? v8StyleStack + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : v8StyleStack + - ("\n at " + filename + ":" + line + ":" + frame); - } - row.stack = v8StyleStack; - row.digest = tag; - row.environmentName = env; - tag = response._chunks; - (env = tag.get(id)) - ? triggerErrorOnChunk(env, row) - : tag.set(id, new ReactPromise("rejected", null, row, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (env = tag.get(id)) && "pending" !== env.status - ? env.reason.enqueueValue(row) - : tag.set(id, new ReactPromise("fulfilled", row, null, response)); + resolveText(response, id, row); break; case 68: - row = JSON.parse(row, response._fromJSON); - null === row.owner && null != response._debugRootOwner - ? ((row.owner = response._debugRootOwner), - (row.debugStack = response._debugRootStack)) - : initializeFakeStack(response, row); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(row); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((row = JSON.parse(row, response._fromJSON)), - (response = row[0]), - (id = row[3]), - (row = row.slice(4)), - bindToConsole(response, row, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2185,18 +2240,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === row ? '"$undefined"' : row); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (env = tag.get(id)) - ? resolveModelChunk(env, row) - : tag.set( - id, - new ReactPromise("resolved_model", row, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.js index 50258515567f2..193ff8720afea 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.js @@ -470,12 +470,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1045,6 +1050,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1323,6 +1330,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1459,12 +1473,9 @@ function processFullStringRow(response, id, tag, row) { } break; case 69: - tag = JSON.parse(row).digest; - row = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - row.stack = "Error: " + row.message; - row.digest = tag; + tag = JSON.parse(row); + row = resolveErrorProd(); + row.digest = tag.digest; tag = response._chunks; var chunk = tag.get(id); chunk diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js index 52b18b183411f..daf238ac79312 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js @@ -729,12 +729,17 @@ pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } function encodeFormData(reference) { var resolve, @@ -1524,6 +1529,17 @@ createFormData ) ); + case "Z": + return ( + (value = value.slice(2)), + getOutlinedModel( + response, + value, + parentObject, + key, + resolveErrorDev + ) + ); case "i": return ( (value = value.slice(2)), @@ -1614,6 +1630,23 @@ void 0 === environmentName ? "Server" : environmentName; this._fromJSON = createFromJSONCallback(this); } + function resolveModel(response, id, model) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk + ? resolveModelChunk(chunk, model) + : chunks.set( + id, + new ReactPromise("resolved_model", model, null, response) + ); + } + function resolveText(response, id, text) { + var chunks = response._chunks, + chunk = chunks.get(id); + chunk && "pending" !== chunk.status + ? chunk.reason.enqueueValue(text) + : chunks.set(id, new ReactPromise("fulfilled", text, null, response)); + } function resolveBuffer(response, id, buffer) { var chunks = response._chunks, chunk = chunks.get(id); @@ -1853,6 +1886,88 @@ } ); } + function stopStream(response, id, row) { + (response = response._chunks.get(id)) && + "fulfilled" === response.status && + response.reason.close("" === row ? '"$undefined"' : row); + } + function resolveErrorDev(response, errorInfo) { + response = errorInfo.stack; + var env = errorInfo.env; + errorInfo = Error( + errorInfo.message || + "An error occurred in the Server Components render but no message was provided" + ); + var v8StyleStack = errorInfo.name + ": " + errorInfo.message; + if (response) + for (var i = 0; i < response.length; i++) { + var frame = response[i], + name = frame[0], + filename = frame[1], + line = frame[2]; + frame = frame[3]; + v8StyleStack = name + ? v8StyleStack + + ("\n at " + + name + + " (" + + filename + + ":" + + line + + ":" + + frame + + ")") + : v8StyleStack + + ("\n at " + filename + ":" + line + ":" + frame); + } + errorInfo.stack = v8StyleStack; + errorInfo.environmentName = env; + return errorInfo; + } + function resolveHint(response, code, model) { + response = JSON.parse(model, response._fromJSON); + model = ReactDOMSharedInternals.d; + switch (code) { + case "D": + model.D(response); + break; + case "C": + "string" === typeof response + ? model.C(response) + : model.C(response[0], response[1]); + break; + case "L": + code = response[0]; + var as = response[1]; + 3 === response.length + ? model.L(code, as, response[2]) + : model.L(code, as); + break; + case "m": + "string" === typeof response + ? model.m(response) + : model.m(response[0], response[1]); + break; + case "X": + "string" === typeof response + ? model.X(response) + : model.X(response[0], response[1]); + break; + case "S": + "string" === typeof response + ? model.S(response) + : model.S( + response[0], + 0 === response[1] ? void 0 : response[1], + 3 === response.length ? response[2] : void 0 + ); + break; + case "M": + "string" === typeof response + ? model.M(response) + : model.M(response[0], response[1]); + } + } function createFakeFunction( name, filename, @@ -1941,9 +2056,26 @@ null != debugInfo.owner && initializeFakeStack(response, debugInfo.owner)); } + function resolveDebugInfo(response, id, debugInfo) { + null === debugInfo.owner && null != response._debugRootOwner + ? ((debugInfo.owner = response._debugRootOwner), + (debugInfo.debugStack = response._debugRootStack)) + : initializeFakeStack(response, debugInfo); + response = getChunk(response, id); + (response._debugInfo || (response._debugInfo = [])).push(debugInfo); + } function getCurrentStackInDEV() { return ""; } + function resolveConsoleEntry(response, value) { + if (response._replayConsole) { + var payload = JSON.parse(value, response._fromJSON); + response = payload[0]; + value = payload[3]; + payload = payload.slice(4); + bindToConsole(response, payload, value)(); + } + } function mergeBuffer(buffer, lastChunk) { for ( var l = buffer.length, byteLength = lastChunk.length, i = 0; @@ -2040,112 +2172,35 @@ resolveModule(response, id, row); break; case 72: - id = row[0]; - row = row.slice(1); - response = JSON.parse(row, response._fromJSON); - row = ReactDOMSharedInternals.d; - switch (id) { - case "D": - row.D(response); - break; - case "C": - "string" === typeof response - ? row.C(response) - : row.C(response[0], response[1]); - break; - case "L": - id = response[0]; - tag = response[1]; - 3 === response.length - ? row.L(id, tag, response[2]) - : row.L(id, tag); - break; - case "m": - "string" === typeof response - ? row.m(response) - : row.m(response[0], response[1]); - break; - case "X": - "string" === typeof response - ? row.X(response) - : row.X(response[0], response[1]); - break; - case "S": - "string" === typeof response - ? row.S(response) - : row.S( - response[0], - 0 === response[1] ? void 0 : response[1], - 3 === response.length ? response[2] : void 0 - ); - break; - case "M": - "string" === typeof response - ? row.M(response) - : row.M(response[0], response[1]); - } + resolveHint(response, row[0], row.slice(1)); break; case 69: - var errorInfo = JSON.parse(row); - tag = errorInfo.digest; - var env = errorInfo.env; - row = Error( - errorInfo.message || - "An error occurred in the Server Components render but no message was provided" - ); - errorInfo = errorInfo.stack; - var v8StyleStack = row.name + ": " + row.message; - if (errorInfo) - for (var i = 0; i < errorInfo.length; i++) { - var frame = errorInfo[i], - name = frame[0], - filename = frame[1], - line = frame[2]; - frame = frame[3]; - v8StyleStack = name - ? v8StyleStack + - ("\n at " + - name + - " (" + - filename + - ":" + - line + - ":" + - frame + - ")") - : v8StyleStack + - ("\n at " + filename + ":" + line + ":" + frame); - } - row.stack = v8StyleStack; - row.digest = tag; - row.environmentName = env; - tag = response._chunks; - (env = tag.get(id)) - ? triggerErrorOnChunk(env, row) - : tag.set(id, new ReactPromise("rejected", null, row, response)); + row = JSON.parse(row); + tag = resolveErrorDev(response, row); + tag.digest = row.digest; + row = response._chunks; + var chunk = row.get(id); + chunk + ? triggerErrorOnChunk(chunk, tag) + : row.set(id, new ReactPromise("rejected", null, tag, response)); break; case 84: - tag = response._chunks; - (env = tag.get(id)) && "pending" !== env.status - ? env.reason.enqueueValue(row) - : tag.set(id, new ReactPromise("fulfilled", row, null, response)); + resolveText(response, id, row); break; case 68: - row = JSON.parse(row, response._fromJSON); - null === row.owner && null != response._debugRootOwner - ? ((row.owner = response._debugRootOwner), - (row.debugStack = response._debugRootStack)) - : initializeFakeStack(response, row); - response = getChunk(response, id); - (response._debugInfo || (response._debugInfo = [])).push(row); + tag = new ReactPromise("resolved_model", row, null, response); + initializeModelChunk(tag); + "fulfilled" === tag.status + ? resolveDebugInfo(response, id, tag.value) + : tag.then( + function (v) { + return resolveDebugInfo(response, id, v); + }, + function () {} + ); break; case 87: - response._replayConsole && - ((row = JSON.parse(row, response._fromJSON)), - (response = row[0]), - (id = row[3]), - (row = row.slice(4)), - bindToConsole(response, row, id)()); + resolveConsoleEntry(response, row); break; case 82: startReadableStream(response, id, void 0); @@ -2160,18 +2215,10 @@ startAsyncIterable(response, id, !0); break; case 67: - (response = response._chunks.get(id)) && - "fulfilled" === response.status && - response.reason.close("" === row ? '"$undefined"' : row); + stopStream(response, id, row); break; default: - (tag = response._chunks), - (env = tag.get(id)) - ? resolveModelChunk(env, row) - : tag.set( - id, - new ReactPromise("resolved_model", row, null, response) - ); + resolveModel(response, id, row); } } function createFromJSONCallback(response) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.js index bfe9e0469a5a0..db7a5663552eb 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.js @@ -453,12 +453,17 @@ function processReply( pendingParts = 0, formData = null, writtenObjects = new WeakMap(), - modelRoot = root; - root = serializeModel(root, 0); + modelRoot = root, + json = serializeModel(root, 0); null === formData - ? resolve(root) - : (formData.set(formFieldPrefix + "0", root), + ? resolve(json) + : (formData.set(formFieldPrefix + "0", json), 0 === pendingParts && resolve(formData)); + return function () { + 0 < pendingParts && + ((pendingParts = 0), + null === formData ? resolve(json) : resolve(formData)); + }; } var boundCache = new WeakMap(); function encodeFormData(reference) { @@ -1024,6 +1029,8 @@ function parseModelString(response, parentObject, key, value) { (value = value.slice(2)), getOutlinedModel(response, value, parentObject, key, createFormData) ); + case "Z": + return resolveErrorProd(); case "i": return ( (value = value.slice(2)), @@ -1302,6 +1309,13 @@ function startAsyncIterable(response, id, iterator) { } ); } +function resolveErrorProd() { + var error = Error( + "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." + ); + error.stack = "Error: " + error.message; + return error; +} function mergeBuffer(buffer, lastChunk) { for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++) byteLength += buffer[i].byteLength; @@ -1438,12 +1452,9 @@ function processFullStringRow(response, id, tag, row) { } break; case 69: - tag = JSON.parse(row).digest; - row = Error( - "An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error." - ); - row.stack = "Error: " + row.message; - row.digest = tag; + tag = JSON.parse(row); + row = resolveErrorProd(); + row.digest = tag.digest; tag = response._chunks; var chunk = tag.get(id); chunk diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js index 736c01c78101c..55dc3905ce1fc 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js @@ -927,7 +927,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1088,7 +1089,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1096,7 +1097,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1122,13 +1123,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1398,18 +1398,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1596,6 +1584,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1650,13 +1639,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1797,6 +1779,27 @@ closeWithError(request.destination, error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1831,7 +1834,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1845,6 +1848,32 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; var buffer = new Uint8Array( @@ -1892,11 +1921,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1914,20 +1957,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -1971,14 +2013,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2023,7 +2058,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2041,8 +2079,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2055,7 +2094,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2066,7 +2108,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js index 9f8436e528cb2..e89c6e0eea0ef 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js @@ -1459,6 +1459,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js index 4bb05c5c1b019..6ef8c407eab24 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js @@ -936,7 +936,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1105,7 +1106,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1113,7 +1114,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1139,13 +1140,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1415,18 +1415,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1613,6 +1601,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1667,13 +1656,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1825,6 +1807,27 @@ closeWithError(request.destination, error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1859,7 +1862,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1873,6 +1876,32 @@ id = stringToChunk(id); request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; var buffer = new Uint8Array( @@ -1920,11 +1949,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1942,20 +1985,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -1999,14 +2041,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2051,7 +2086,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2069,8 +2107,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2083,7 +2122,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2094,7 +2136,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js index 3693cda7d9df4..6f9174380d3e4 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js @@ -1464,6 +1464,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js index 19bc1046a49c6..badfc88de3737 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js @@ -956,7 +956,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1123,7 +1124,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1131,7 +1132,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1157,13 +1158,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1431,18 +1431,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1629,6 +1617,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1683,13 +1672,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1836,6 +1818,27 @@ ? ((request.status = CLOSED), request.destination.destroy(error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1868,7 +1871,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1881,6 +1884,32 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; typedArray = new Uint8Array( @@ -1924,11 +1953,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1946,20 +1989,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2003,14 +2045,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2055,7 +2090,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2072,8 +2110,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2086,7 +2125,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2096,7 +2138,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js index a60144160e89e..59254da953883 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js @@ -1477,6 +1477,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2774,12 +2775,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_212 = []; + var JSCompiler_object_inline_chunks_216 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_212.push(chunk); + JSCompiler_object_inline_chunks_216.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_212, { + var blob = new Blob(JSCompiler_object_inline_chunks_216, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js index 94042eac2e09a..b6cc30f7e455e 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js @@ -956,7 +956,8 @@ key: key, owner: task.debugOwner }; - outlineModel(request, componentDebugInfo); + componentDebugInfo.props = props; + outlineComponentInfo(request, componentDebugInfo); emitDebugChunk(request, componentDebugID, componentDebugInfo); task.environmentName = componentEnv; } @@ -1123,7 +1124,7 @@ return ( (type = task.implicitSlot), null === task.keyPath && (task.implicitSlot = !0), - (props = renderModelDestructive( + (request = renderModelDestructive( request, task, emptyRoot, @@ -1131,7 +1132,7 @@ props.children )), (task.implicitSlot = type), - props + request ); if ( null != type && @@ -1157,13 +1158,12 @@ type._store.validated = 1; } } else return renderFunctionComponent(request, task, key, type, props); - request = key; - key = task.keyPath; - null === request - ? (request = key) - : null !== key && (request = key + "," + request); - props = [REACT_ELEMENT_TYPE, type, request, props, task.debugOwner]; - task = task.implicitSlot && null !== request ? [props] : props; + ref = task.keyPath; + null === key ? (key = ref) : null !== ref && (key = ref + "," + key); + null !== task.debugOwner && + outlineComponentInfo(request, task.debugOwner); + request = [REACT_ELEMENT_TYPE, type, key, props, task.debugOwner]; + task = task.implicitSlot && null !== key ? [request] : request; return task; } function pingTask(request, task) { @@ -1431,18 +1431,6 @@ reader.read().then(progress).catch(error); return "$B" + newTask.id.toString(16); } - function isReactComponentInfo(value) { - return ( - (("object" === typeof value.debugTask && - null !== value.debugTask && - "function" === typeof value.debugTask.run) || - value.debugStack instanceof Error) && - "undefined" === typeof value.stack && - "string" === typeof value.name && - "string" === typeof value.env && - void 0 !== value.owner - ); - } function renderModel(request, task, parent, key, value) { var prevKeyPath = task.keyPath, prevImplicitSlot = task.implicitSlot; @@ -1629,6 +1617,7 @@ if (value instanceof Set) return serializeSet(request, value); if ("function" === typeof FormData && value instanceof FormData) return serializeFormData(request, value); + if (value instanceof Error) return serializeErrorValue(request, value); if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -1683,13 +1672,6 @@ "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." + describeObjectForErrorMessage(parent, parentPropertyName) ); - if (isReactComponentInfo(value)) - return { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - }; if ("Object" !== objectName(value)) callWithDebugContextInDEV(request, task, function () { console.error( @@ -1836,6 +1818,27 @@ ? ((request.status = CLOSED), request.destination.destroy(error)) : ((request.status = CLOSING), (request.fatalError = error)); } + function serializeErrorValue(request, error) { + var env = (0, request.environmentName)(); + try { + var message = String(error.message); + var stack = filterStackTrace(request, error, 0); + var errorEnv = error.environmentName; + "string" === typeof errorEnv && (env = errorEnv); + } catch (x) { + (message = + "An error occurred but serializing the error message failed."), + (stack = []); + } + return ( + "$Z" + + outlineModel(request, { + message: message, + stack: stack, + env: env + }).toString(16) + ); + } function emitErrorChunk(request, id, digest, error) { var env = (0, request.environmentName)(); try { @@ -1868,7 +1871,7 @@ request.completedRegularChunks.push(id); } function emitDebugChunk(request, id, debugInfo) { - var counter = { objectCount: 0 }; + var counter = { objectLimit: 500 }; debugInfo = stringify(debugInfo, function (parentPropertyName, value) { return renderConsoleValue( request, @@ -1881,6 +1884,32 @@ id = serializeRowHeader("D", id) + debugInfo + "\n"; request.completedRegularChunks.push(id); } + function outlineComponentInfo(request, componentInfo) { + if (!request.writtenObjects.has(componentInfo)) { + null != componentInfo.owner && + outlineComponentInfo(request, componentInfo.owner); + var objectLimit = 10; + null != componentInfo.stack && + (objectLimit += componentInfo.stack.length); + objectLimit = { objectLimit: objectLimit }; + var componentDebugInfo = { + name: componentInfo.name, + env: componentInfo.env, + key: componentInfo.key, + owner: componentInfo.owner + }; + componentDebugInfo.props = componentInfo.props; + objectLimit = outlineConsoleValue( + request, + objectLimit, + componentDebugInfo + ); + request.writtenObjects.set( + componentInfo, + serializeByValueID(objectLimit) + ); + } + } function emitTypedArrayChunk(request, id, tag, typedArray) { request.pendingChunks++; typedArray = new Uint8Array( @@ -1924,11 +1953,25 @@ ((parent = request.temporaryReferences.get(value)), void 0 !== parent) ) return "$T" + parent; - if (500 < counter.objectCount) return "$Y"; - counter.objectCount++; parent = request.writtenObjects.get(value); + if (void 0 !== parent) return parent; + if (0 >= counter.objectLimit) return "$Y"; + counter.objectLimit--; + switch (value.$$typeof) { + case REACT_ELEMENT_TYPE: + return ( + null != value._owner && + outlineComponentInfo(request, value._owner), + [ + REACT_ELEMENT_TYPE, + value.type, + value.key, + value.props, + value._owner + ] + ); + } if ("function" === typeof value.then) { - if (void 0 !== parent) return parent; switch (value.status) { case "fulfilled": return ( @@ -1946,20 +1989,19 @@ } return "$@"; } - return void 0 !== parent - ? parent - : isArrayImpl(value) - ? value - : value instanceof Map + return isArrayImpl(value) + ? value + : value instanceof Map + ? ((value = Array.from(value)), + "$Q" + outlineConsoleValue(request, counter, value).toString(16)) + : value instanceof Set ? ((value = Array.from(value)), - "$Q" + + "$W" + outlineConsoleValue(request, counter, value).toString(16)) - : value instanceof Set - ? ((value = Array.from(value)), - "$W" + - outlineConsoleValue(request, counter, value).toString(16)) - : "function" === typeof FormData && value instanceof FormData - ? serializeFormData(request, value) + : "function" === typeof FormData && value instanceof FormData + ? serializeFormData(request, value) + : value instanceof Error + ? serializeErrorValue(request, value) : value instanceof ArrayBuffer ? serializeTypedArray(request, "A", new Uint8Array(value)) : value instanceof Int8Array @@ -2003,14 +2045,7 @@ ? serializeBlob(request, value) : getIteratorFn(value) ? Array.from(value) - : isReactComponentInfo(value) - ? { - name: value.name, - env: value.env, - key: value.key, - owner: value.owner - } - : value; + : value; } if ("string" === typeof value) return "Z" === value[value.length - 1] && originalValue instanceof Date @@ -2055,7 +2090,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); request.pendingChunks++; @@ -2072,8 +2110,9 @@ stackTrace, args ) { - var counter = { objectCount: 0 }, - env = (0, request.environmentName)(); + var counter = { objectLimit: 500 }; + null != owner && outlineComponentInfo(request, owner); + var env = (0, request.environmentName)(); methodName = [methodName, stackTrace, owner, env]; methodName.push.apply(methodName, args); args = stringify(methodName, function (parentPropertyName, value) { @@ -2086,7 +2125,10 @@ value ); } catch (x) { - return "unknown value"; + return ( + "Unknown Value: React could not send it from the server.\n" + + x.message + ); } }); id = serializeRowHeader("W", id) + args + "\n"; @@ -2096,7 +2138,7 @@ for (var i = 0; i < debugInfo.length; i++) request.pendingChunks++, "string" === typeof debugInfo[i].name && - outlineModel(request, debugInfo[i]), + outlineComponentInfo(request, debugInfo[i]), emitDebugChunk(request, id, debugInfo[i]); } function emitChunk(request, task, value) { diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.js index cf3c6c75cd473..07873c3594d4b 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.js @@ -1477,6 +1477,7 @@ function renderModelDestructive( (value = Array.from(value.entries())), "$K" + outlineModel(request, value).toString(16) ); + if (value instanceof Error) return "$Z"; if (value instanceof ArrayBuffer) return serializeTypedArray(request, "A", new Uint8Array(value)); if (value instanceof Int8Array) @@ -2742,12 +2743,12 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it." ); pendingFiles++; - var JSCompiler_object_inline_chunks_212 = []; + var JSCompiler_object_inline_chunks_216 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_212.push(chunk); + JSCompiler_object_inline_chunks_216.push(chunk); }); value.on("end", function () { - var blob = new Blob(JSCompiler_object_inline_chunks_212, { + var blob = new Blob(JSCompiler_object_inline_chunks_216, { type: mimeType }); response._formData.append(name, blob, filename); diff --git a/packages/next/src/compiled/react-server-dom-webpack/package.json b/packages/next/src/compiled/react-server-dom-webpack/package.json index 212eb8110eb53..4096ff7a095f5 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/package.json +++ b/packages/next/src/compiled/react-server-dom-webpack/package.json @@ -64,8 +64,8 @@ "webpack-sources": "^3.2.0" }, "peerDependencies": { - "react": "19.0.0-rc-2d16326d-20240930", - "react-dom": "19.0.0-rc-2d16326d-20240930", + "react": "19.0.0-rc-d5bba18b-20241009", + "react-dom": "19.0.0-rc-d5bba18b-20241009", "webpack": "^5.59.0" } } \ No newline at end of file diff --git a/packages/next/src/compiled/react/cjs/react.development.js b/packages/next/src/compiled/react/cjs/react.development.js index 3ec2a969fc470..ceafd4586efcf 100644 --- a/packages/next/src/compiled/react/cjs/react.development.js +++ b/packages/next/src/compiled/react/cjs/react.development.js @@ -1516,7 +1516,7 @@ exports.useTransition = function () { return resolveDispatcher().useTransition(); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && diff --git a/packages/next/src/compiled/react/cjs/react.production.js b/packages/next/src/compiled/react/cjs/react.production.js index 61da7506f8c98..260a538672f29 100644 --- a/packages/next/src/compiled/react/cjs/react.production.js +++ b/packages/next/src/compiled/react/cjs/react.production.js @@ -536,4 +536,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/react/cjs/react.react-server.development.js b/packages/next/src/compiled/react/cjs/react.react-server.development.js index f159898a062e9..1f8a8334ca2da 100644 --- a/packages/next/src/compiled/react/cjs/react.react-server.development.js +++ b/packages/next/src/compiled/react/cjs/react.react-server.development.js @@ -1113,5 +1113,5 @@ exports.useMemo = function (create, deps) { return resolveDispatcher().useMemo(create, deps); }; - exports.version = "19.0.0-rc-2d16326d-20240930"; + exports.version = "19.0.0-rc-d5bba18b-20241009"; })(); diff --git a/packages/next/src/compiled/react/cjs/react.react-server.production.js b/packages/next/src/compiled/react/cjs/react.react-server.production.js index 82f37c62674a0..fb89d22ff6ff9 100644 --- a/packages/next/src/compiled/react/cjs/react.react-server.production.js +++ b/packages/next/src/compiled/react/cjs/react.react-server.production.js @@ -424,4 +424,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.0.0-rc-2d16326d-20240930"; +exports.version = "19.0.0-rc-d5bba18b-20241009"; diff --git a/packages/next/src/compiled/unistore/unistore.js b/packages/next/src/compiled/unistore/unistore.js index b6368abb2b14e..0afe0717b38b2 100644 --- a/packages/next/src/compiled/unistore/unistore.js +++ b/packages/next/src/compiled/unistore/unistore.js @@ -1 +1 @@ -(()=>{var t={826:t=>{function n(t,i){for(var _ in i)t[_]=i[_];return t}t.exports=function(t){var i=[];function u(t){for(var _=[],a=0;a{var t={779:t=>{function n(t,i){for(var _ in i)t[_]=i[_];return t}t.exports=function(t){var i=[];function u(t){for(var _=[],a=0;a