From 7f21ab36e486e6e9e01fbb05bc591442051e0232 Mon Sep 17 00:00:00 2001 From: Sebastian Sebbie Silbermann Date: Thu, 11 Dec 2025 21:50:14 +0100 Subject: [PATCH] Upgrade React from `55480b4d-20251208` to `80cb7a99-20251211` --- examples/reproduction-template/package.json | 4 +- package.json | 32 +- packages/create-next-app/templates/index.ts | 2 +- .../cjs/react-dom-client.development.js | 72 +- .../cjs/react-dom-client.production.js | 167 +- .../cjs/react-dom-profiling.development.js | 72 +- .../cjs/react-dom-profiling.profiling.js | 167 +- ...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 | 72 +- .../react-dom-unstable_testing.production.js | 167 +- .../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 | 262 ++- .../cjs/react-dom-client.production.js | 81 +- .../cjs/react-dom-profiling.development.js | 262 ++- .../cjs/react-dom-profiling.profiling.js | 81 +- ...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 | 2 +- .../cjs/react.production.js | 2 +- .../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 | 330 ++-- ...dom-turbopack-client.browser.production.js | 319 ++-- ...r-dom-turbopack-client.edge.development.js | 326 ++-- ...er-dom-turbopack-client.edge.production.js | 319 ++-- ...r-dom-turbopack-client.node.development.js | 326 ++-- ...er-dom-turbopack-client.node.production.js | 319 ++-- ...om-turbopack-server.browser.development.js | 356 ++-- ...dom-turbopack-server.browser.production.js | 341 ++-- ...r-dom-turbopack-server.edge.development.js | 356 ++-- ...er-dom-turbopack-server.edge.production.js | 341 ++-- ...r-dom-turbopack-server.node.development.js | 362 ++-- ...er-dom-turbopack-server.node.production.js | 347 ++-- .../package.json | 4 +- ...om-turbopack-client.browser.development.js | 330 ++-- ...dom-turbopack-client.browser.production.js | 319 ++-- ...r-dom-turbopack-client.edge.development.js | 326 ++-- ...er-dom-turbopack-client.edge.production.js | 319 ++-- ...r-dom-turbopack-client.node.development.js | 326 ++-- ...er-dom-turbopack-client.node.production.js | 319 ++-- ...om-turbopack-server.browser.development.js | 356 ++-- ...dom-turbopack-server.browser.production.js | 341 ++-- ...r-dom-turbopack-server.edge.development.js | 356 ++-- ...er-dom-turbopack-server.edge.production.js | 341 ++-- ...r-dom-turbopack-server.node.development.js | 362 ++-- ...er-dom-turbopack-server.node.production.js | 347 ++-- .../react-server-dom-turbopack/package.json | 4 +- ...-dom-webpack-client.browser.development.js | 330 ++-- ...r-dom-webpack-client.browser.production.js | 319 ++-- ...ver-dom-webpack-client.edge.development.js | 326 ++-- ...rver-dom-webpack-client.edge.production.js | 319 ++-- ...ver-dom-webpack-client.node.development.js | 326 ++-- ...rver-dom-webpack-client.node.production.js | 319 ++-- ...-dom-webpack-server.browser.development.js | 356 ++-- ...r-dom-webpack-server.browser.production.js | 341 ++-- ...ver-dom-webpack-server.edge.development.js | 356 ++-- ...rver-dom-webpack-server.edge.production.js | 341 ++-- ...ver-dom-webpack-server.node.development.js | 362 ++-- ...rver-dom-webpack-server.node.production.js | 347 ++-- .../package.json | 4 +- ...-dom-webpack-client.browser.development.js | 330 ++-- ...r-dom-webpack-client.browser.production.js | 319 ++-- ...ver-dom-webpack-client.edge.development.js | 326 ++-- ...rver-dom-webpack-client.edge.production.js | 319 ++-- ...ver-dom-webpack-client.node.development.js | 326 ++-- ...rver-dom-webpack-client.node.production.js | 319 ++-- ...-dom-webpack-server.browser.development.js | 356 ++-- ...r-dom-webpack-server.browser.production.js | 341 ++-- ...ver-dom-webpack-server.edge.development.js | 356 ++-- ...rver-dom-webpack-server.edge.production.js | 341 ++-- ...ver-dom-webpack-server.node.development.js | 362 ++-- ...rver-dom-webpack-server.node.production.js | 347 ++-- .../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 +- pnpm-lock.yaml | 1574 ++++++++--------- run-tests.js | 2 +- test/.stats-app/package.json | 4 +- .../first-time-setup-js/package.json | 4 +- .../first-time-setup-ts/package.json | 4 +- test/lib/next-modes/base.ts | 2 +- 113 files changed, 10033 insertions(+), 9326 deletions(-) diff --git a/examples/reproduction-template/package.json b/examples/reproduction-template/package.json index acaa09b5d6785..f45ae22a1b431 100644 --- a/examples/reproduction-template/package.json +++ b/examples/reproduction-template/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "next": "canary", - "react": "19.2.1", - "react-dom": "19.2.1" + "react": "19.2.2", + "react-dom": "19.2.2" }, "devDependencies": { "@types/node": "^22", diff --git a/package.json b/package.json index 62fe060f1e537..8c4f74f05ee6c 100644 --- a/package.json +++ b/package.json @@ -197,7 +197,7 @@ "eslint-plugin-jsdoc": "48.0.4", "eslint-plugin-mdx": "3.1.5", "eslint-plugin-react": "7.37.0", - "eslint-plugin-react-hooks": "0.0.0-experimental-55480b4d-20251208", + "eslint-plugin-react-hooks": "0.0.0-experimental-80cb7a99-20251211", "event-stream": "4.0.1", "execa": "2.0.3", "expect": "29.7.0", @@ -257,16 +257,16 @@ "pretty-ms": "7.0.0", "random-seed": "0.3.0", "react": "19.0.0", - "react-builtin": "npm:react@19.3.0-canary-55480b4d-20251208", + "react-builtin": "npm:react@19.3.0-canary-80cb7a99-20251211", "react-dom": "19.0.0", - "react-dom-builtin": "npm:react-dom@19.3.0-canary-55480b4d-20251208", - "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-55480b4d-20251208", - "react-experimental-builtin": "npm:react@0.0.0-experimental-55480b4d-20251208", - "react-is-builtin": "npm:react-is@19.3.0-canary-55480b4d-20251208", - "react-server-dom-turbopack": "19.3.0-canary-55480b4d-20251208", - "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-55480b4d-20251208", - "react-server-dom-webpack": "19.3.0-canary-55480b4d-20251208", - "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-55480b4d-20251208", + "react-dom-builtin": "npm:react-dom@19.3.0-canary-80cb7a99-20251211", + "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-80cb7a99-20251211", + "react-experimental-builtin": "npm:react@0.0.0-experimental-80cb7a99-20251211", + "react-is-builtin": "npm:react-is@19.3.0-canary-80cb7a99-20251211", + "react-server-dom-turbopack": "19.3.0-canary-80cb7a99-20251211", + "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-80cb7a99-20251211", + "react-server-dom-webpack": "19.3.0-canary-80cb7a99-20251211", + "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-80cb7a99-20251211", "react-ssr-prepass": "1.0.8", "react-virtualized": "9.22.3", "relay-compiler": "13.0.2", @@ -276,8 +276,8 @@ "resolve-from": "5.0.0", "sass": "1.54.0", "satori": "0.15.2", - "scheduler-builtin": "npm:scheduler@0.28.0-canary-55480b4d-20251208", - "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-55480b4d-20251208", + "scheduler-builtin": "npm:scheduler@0.28.0-canary-80cb7a99-20251211", + "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-80cb7a99-20251211", "seedrandom": "3.0.5", "semver": "7.3.7", "serve-handler": "6.1.6", @@ -322,10 +322,10 @@ "@types/react-dom": "19.2.1", "@types/retry": "0.12.0", "jest-snapshot": "30.0.0-alpha.6", - "react": "19.3.0-canary-55480b4d-20251208", - "react-dom": "19.3.0-canary-55480b4d-20251208", - "react-is": "19.3.0-canary-55480b4d-20251208", - "scheduler": "0.28.0-canary-55480b4d-20251208" + "react": "19.3.0-canary-80cb7a99-20251211", + "react-dom": "19.3.0-canary-80cb7a99-20251211", + "react-is": "19.3.0-canary-80cb7a99-20251211", + "scheduler": "0.28.0-canary-80cb7a99-20251211" }, "packageExtensions": { "eslint-plugin-react-hooks@0.0.0-experimental-6de32a5a-20250822": { diff --git a/packages/create-next-app/templates/index.ts b/packages/create-next-app/templates/index.ts index 112c46f36a842..c2b1f62270676 100644 --- a/packages/create-next-app/templates/index.ts +++ b/packages/create-next-app/templates/index.ts @@ -14,7 +14,7 @@ import { Bundler, GetTemplateFileArgs, InstallTemplateArgs } from "./types"; // Do not rename or format. sync-react script relies on this line. // prettier-ignore -const nextjsReactPeerVersion = "19.2.1"; +const nextjsReactPeerVersion = "19.2.2"; function sorted(obj: Record) { return Object.keys(obj) .sort() 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 69952c7906943..5d2963d889aa0 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 @@ -25640,21 +25640,6 @@ var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } - function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } - } function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -25789,6 +25774,7 @@ types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -25799,25 +25785,26 @@ i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -25832,23 +25819,22 @@ "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = - pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -25868,7 +25854,8 @@ } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -26006,6 +25993,7 @@ }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -26021,7 +26009,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26124,8 +26113,9 @@ } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -32446,11 +32436,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32487,10 +32477,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -32638,7 +32628,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; "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 e76ff54b8d64b..ccbf79e8dc2cd 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 @@ -14657,20 +14657,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1795 = 0; - i$jscomp$inline_1795 < simpleEventPluginEvents.length; - i$jscomp$inline_1795++ + var i$jscomp$inline_1796 = 0; + i$jscomp$inline_1796 < simpleEventPluginEvents.length; + i$jscomp$inline_1796++ ) { - var eventName$jscomp$inline_1796 = - simpleEventPluginEvents[i$jscomp$inline_1795], - domEventName$jscomp$inline_1797 = - eventName$jscomp$inline_1796.toLowerCase(), - capitalizedEvent$jscomp$inline_1798 = - eventName$jscomp$inline_1796[0].toUpperCase() + - eventName$jscomp$inline_1796.slice(1); + var eventName$jscomp$inline_1797 = + simpleEventPluginEvents[i$jscomp$inline_1796], + domEventName$jscomp$inline_1798 = + eventName$jscomp$inline_1797.toLowerCase(), + capitalizedEvent$jscomp$inline_1799 = + eventName$jscomp$inline_1797[0].toUpperCase() + + eventName$jscomp$inline_1797.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1797, - "on" + capitalizedEvent$jscomp$inline_1798 + domEventName$jscomp$inline_1798, + "on" + capitalizedEvent$jscomp$inline_1799 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -16847,21 +16847,6 @@ function measureClonedInstance(instance) { var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } -function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } -} function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -16969,6 +16954,7 @@ function startViewTransition( types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -16979,25 +16965,26 @@ function startViewTransition( i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -17012,22 +16999,22 @@ function startViewTransition( "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -17044,7 +17031,8 @@ function startViewTransition( } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); passiveCallback(); @@ -17168,6 +17156,7 @@ function startGestureTransition( }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -17183,7 +17172,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -17286,8 +17276,9 @@ function startGestureTransition( } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -18360,26 +18351,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$285 = getResourcesFromRoot( + var styles$286 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$286 = styles$285.get(type); - resource$286 || + resource$287 = styles$286.get(type); + resource$287 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$286 = { + (resource$287 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$285.set(type, resource$286), - (styles$285 = JSCompiler_inline_result.querySelector( + styles$286.set(type, resource$287), + (styles$286 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$285._p && - ((resource$286.instance = styles$285), - (resource$286.state.loading = 5)), + !styles$286._p && + ((resource$287.instance = styles$286), + (resource$287.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -18392,16 +18383,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$285 || + styles$286 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$286.state + resource$287.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$286; + return resource$287; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -18498,37 +18489,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$291 = hoistableRoot.querySelector( + var instance$292 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$291) + if (instance$292) return ( (resource.state.loading |= 4), - (resource.instance = instance$291), - markNodeAsHoistable(instance$291), - instance$291 + (resource.instance = instance$292), + markNodeAsHoistable(instance$292), + instance$292 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$291 = ( + instance$292 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$291); - var linkInstance = instance$291; + markNodeAsHoistable(instance$292); + var linkInstance = instance$292; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$291, "link", instance); + setInitialProperties(instance$292, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$291, props.precedence, hoistableRoot); - return (resource.instance = instance$291); + insertStylesheet(instance$292, props.precedence, hoistableRoot); + return (resource.instance = instance$292); case "script": - instance$291 = getScriptKey(props.src); + instance$292 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$291) + getScriptSelectorFromKey(instance$292) )) ) return ( @@ -18537,7 +18528,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$291))) + if ((styleProps = preloadPropsMap.get(instance$292))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -19664,16 +19655,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2213 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2214 = React.version; if ( - "19.3.0-experimental-55480b4d-20251208" !== - isomorphicReactPackageVersion$jscomp$inline_2213 + "19.3.0-experimental-80cb7a99-20251211" !== + isomorphicReactPackageVersion$jscomp$inline_2214 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2213, - "19.3.0-experimental-55480b4d-20251208" + isomorphicReactPackageVersion$jscomp$inline_2214, + "19.3.0-experimental-80cb7a99-20251211" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -19693,24 +19684,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2916 = { +var internals$jscomp$inline_2917 = { bundleType: 0, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2917 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2918 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2917.isDisabled && - hook$jscomp$inline_2917.supportsFiber + !hook$jscomp$inline_2918.isDisabled && + hook$jscomp$inline_2918.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2917.inject( - internals$jscomp$inline_2916 + (rendererID = hook$jscomp$inline_2918.inject( + internals$jscomp$inline_2917 )), - (injectedHook = hook$jscomp$inline_2917); + (injectedHook = hook$jscomp$inline_2918); } catch (err) {} } exports.createRoot = function (container, options) { @@ -19805,4 +19796,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 31f00504f0714..4242731067f87 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 @@ -25648,21 +25648,6 @@ var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } - function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } - } function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -25797,6 +25782,7 @@ types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -25807,25 +25793,26 @@ i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -25840,23 +25827,22 @@ "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = - pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -25876,7 +25862,8 @@ } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -26014,6 +26001,7 @@ }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -26029,7 +26017,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26132,8 +26121,9 @@ } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -32503,11 +32493,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32544,10 +32534,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -33025,7 +33015,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; "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 4540ded4beea7..ce42312cc7509 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 @@ -16665,20 +16665,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_2091 = 0; - i$jscomp$inline_2091 < simpleEventPluginEvents.length; - i$jscomp$inline_2091++ + var i$jscomp$inline_2092 = 0; + i$jscomp$inline_2092 < simpleEventPluginEvents.length; + i$jscomp$inline_2092++ ) { - var eventName$jscomp$inline_2092 = - simpleEventPluginEvents[i$jscomp$inline_2091], - domEventName$jscomp$inline_2093 = - eventName$jscomp$inline_2092.toLowerCase(), - capitalizedEvent$jscomp$inline_2094 = - eventName$jscomp$inline_2092[0].toUpperCase() + - eventName$jscomp$inline_2092.slice(1); + var eventName$jscomp$inline_2093 = + simpleEventPluginEvents[i$jscomp$inline_2092], + domEventName$jscomp$inline_2094 = + eventName$jscomp$inline_2093.toLowerCase(), + capitalizedEvent$jscomp$inline_2095 = + eventName$jscomp$inline_2093[0].toUpperCase() + + eventName$jscomp$inline_2093.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_2093, - "on" + capitalizedEvent$jscomp$inline_2094 + domEventName$jscomp$inline_2094, + "on" + capitalizedEvent$jscomp$inline_2095 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -18864,21 +18864,6 @@ function measureClonedInstance(instance) { var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } -function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } -} function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -18995,6 +18980,7 @@ function startViewTransition( types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -19005,25 +18991,26 @@ function startViewTransition( i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -19038,22 +19025,22 @@ function startViewTransition( "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -19073,7 +19060,8 @@ function startViewTransition( } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -19205,6 +19193,7 @@ function startGestureTransition( }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -19220,7 +19209,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -19323,8 +19313,9 @@ function startGestureTransition( } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -20398,26 +20389,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$328 = getResourcesFromRoot( + var styles$329 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$329 = styles$328.get(type); - resource$329 || + resource$330 = styles$329.get(type); + resource$330 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$329 = { + (resource$330 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$328.set(type, resource$329), - (styles$328 = JSCompiler_inline_result.querySelector( + styles$329.set(type, resource$330), + (styles$329 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$328._p && - ((resource$329.instance = styles$328), - (resource$329.state.loading = 5)), + !styles$329._p && + ((resource$330.instance = styles$329), + (resource$330.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -20430,16 +20421,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$328 || + styles$329 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$329.state + resource$330.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$329; + return resource$330; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -20536,37 +20527,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$334 = hoistableRoot.querySelector( + var instance$335 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$334) + if (instance$335) return ( (resource.state.loading |= 4), - (resource.instance = instance$334), - markNodeAsHoistable(instance$334), - instance$334 + (resource.instance = instance$335), + markNodeAsHoistable(instance$335), + instance$335 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$334 = ( + instance$335 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$334); - var linkInstance = instance$334; + markNodeAsHoistable(instance$335); + var linkInstance = instance$335; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$334, "link", instance); + setInitialProperties(instance$335, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$334, props.precedence, hoistableRoot); - return (resource.instance = instance$334); + insertStylesheet(instance$335, props.precedence, hoistableRoot); + return (resource.instance = instance$335); case "script": - instance$334 = getScriptKey(props.src); + instance$335 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$334) + getScriptSelectorFromKey(instance$335) )) ) return ( @@ -20575,7 +20566,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$334))) + if ((styleProps = preloadPropsMap.get(instance$335))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -21724,16 +21715,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2509 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2510 = React.version; if ( - "19.3.0-experimental-55480b4d-20251208" !== - isomorphicReactPackageVersion$jscomp$inline_2509 + "19.3.0-experimental-80cb7a99-20251211" !== + isomorphicReactPackageVersion$jscomp$inline_2510 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2509, - "19.3.0-experimental-55480b4d-20251208" + isomorphicReactPackageVersion$jscomp$inline_2510, + "19.3.0-experimental-80cb7a99-20251211" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -21753,24 +21744,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_3225 = { +var internals$jscomp$inline_3226 = { bundleType: 0, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_3226 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_3227 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_3226.isDisabled && - hook$jscomp$inline_3226.supportsFiber + !hook$jscomp$inline_3227.isDisabled && + hook$jscomp$inline_3227.supportsFiber ) try { - (rendererID = hook$jscomp$inline_3226.inject( - internals$jscomp$inline_3225 + (rendererID = hook$jscomp$inline_3227.inject( + internals$jscomp$inline_3226 )), - (injectedHook = hook$jscomp$inline_3226); + (injectedHook = hook$jscomp$inline_3227); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -22026,7 +22017,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; "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 f4e78144f206f..b92128c56ae16 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 @@ -10411,5 +10411,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.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 63414449d266f..b037b4cc8f74b 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 @@ -7035,4 +7035,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.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 3870388c2f246..54a5f40826557 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 @@ -10411,5 +10411,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.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 3d916dd689ad8..40890f50b34fb 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 @@ -7138,4 +7138,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.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 ebe5613c6fc66..4d10ccc3ee360 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 @@ -9390,11 +9390,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -11214,5 +11214,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 cf2b72591a09f..834c35ca9f02c 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 @@ -7688,12 +7688,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-experimental-55480b4d-20251208" + "19.3.0-experimental-80cb7a99-20251211" ) ); } @@ -7944,4 +7944,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 5bf038694d62a..1b28a6a8b6200 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 @@ -7383,11 +7383,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7932,4 +7932,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 fe836ed7f882f..e092db37b8a3e 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 @@ -9419,11 +9419,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -11239,5 +11239,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 6d67a79fe81df..cdba4dde2bc8e 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 @@ -7806,11 +7806,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8060,4 +8060,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 75d11d6f19e4b..5462639bb052b 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 @@ -9279,11 +9279,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -11405,5 +11405,5 @@ } }; }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 9b34a13b7adc5..48d7740238da4 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 @@ -7685,11 +7685,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8239,4 +8239,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 78dc84576aa87..ca4e53593250f 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 @@ -25863,21 +25863,6 @@ var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } - function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } - } function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -26012,6 +25997,7 @@ types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -26022,25 +26008,26 @@ i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -26055,23 +26042,22 @@ "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = - pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -26091,7 +26077,8 @@ } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -26229,6 +26216,7 @@ }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -26244,7 +26232,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26347,8 +26336,9 @@ } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -32767,11 +32757,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-80cb7a99-20251211" !== 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.3.0-experimental-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32808,10 +32798,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -33125,5 +33115,5 @@ } }; }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 a89b69064f027..867305375b743 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 @@ -14929,20 +14929,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1824 = 0; - i$jscomp$inline_1824 < simpleEventPluginEvents.length; - i$jscomp$inline_1824++ + var i$jscomp$inline_1825 = 0; + i$jscomp$inline_1825 < simpleEventPluginEvents.length; + i$jscomp$inline_1825++ ) { - var eventName$jscomp$inline_1825 = - simpleEventPluginEvents[i$jscomp$inline_1824], - domEventName$jscomp$inline_1826 = - eventName$jscomp$inline_1825.toLowerCase(), - capitalizedEvent$jscomp$inline_1827 = - eventName$jscomp$inline_1825[0].toUpperCase() + - eventName$jscomp$inline_1825.slice(1); + var eventName$jscomp$inline_1826 = + simpleEventPluginEvents[i$jscomp$inline_1825], + domEventName$jscomp$inline_1827 = + eventName$jscomp$inline_1826.toLowerCase(), + capitalizedEvent$jscomp$inline_1828 = + eventName$jscomp$inline_1826[0].toUpperCase() + + eventName$jscomp$inline_1826.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1826, - "on" + capitalizedEvent$jscomp$inline_1827 + domEventName$jscomp$inline_1827, + "on" + capitalizedEvent$jscomp$inline_1828 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -17119,21 +17119,6 @@ function measureClonedInstance(instance) { var computedStyle = getComputedStyle(instance); return createMeasurement(measuredRect, computedStyle, instance); } -function cancelAllViewTransitionAnimations(scope) { - for ( - var animations = scope.getAnimations({ subtree: !0 }), i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } -} function customizeViewTransitionError(error, ignoreAbort) { if ("object" === typeof error && null !== error) switch (error.name) { @@ -17241,6 +17226,7 @@ function startViewTransition( types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -17251,25 +17237,26 @@ function startViewTransition( i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -17284,22 +17271,22 @@ function startViewTransition( "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -17316,7 +17303,8 @@ function startViewTransition( } ); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); passiveCallback(); @@ -17440,6 +17428,7 @@ function startGestureTransition( }); ownerDocument.__reactViewTransition = transition; var customTimelineCleanup = [], + viewTransitionAnimations = [], readyCallback = function () { for ( var documentElement = ownerDocument.documentElement, @@ -17455,7 +17444,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - ((effect = effect.getTiming()), + (viewTransitionAnimations.push(animations[i]), + (effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -17558,8 +17548,9 @@ function startGestureTransition( } }); transition.finished.finally(function () { - cancelAllViewTransitionAnimations(ownerDocument.documentElement); - for (var i = 0; i < customTimelineCleanup.length; i++) + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); + for (i = 0; i < customTimelineCleanup.length; i++) (0, customTimelineCleanup[i])(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); @@ -18676,26 +18667,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$286 = getResourcesFromRoot( + var styles$287 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$287 = styles$286.get(type); - resource$287 || + resource$288 = styles$287.get(type); + resource$288 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$287 = { + (resource$288 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$286.set(type, resource$287), - (styles$286 = JSCompiler_inline_result.querySelector( + styles$287.set(type, resource$288), + (styles$287 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$286._p && - ((resource$287.instance = styles$286), - (resource$287.state.loading = 5)), + !styles$287._p && + ((resource$288.instance = styles$287), + (resource$288.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -18708,16 +18699,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$286 || + styles$287 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$287.state + resource$288.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$287; + return resource$288; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -18814,37 +18805,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$292 = hoistableRoot.querySelector( + var instance$293 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$292) + if (instance$293) return ( (resource.state.loading |= 4), - (resource.instance = instance$292), - markNodeAsHoistable(instance$292), - instance$292 + (resource.instance = instance$293), + markNodeAsHoistable(instance$293), + instance$293 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$292 = ( + instance$293 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$292); - var linkInstance = instance$292; + markNodeAsHoistable(instance$293); + var linkInstance = instance$293; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$292, "link", instance); + setInitialProperties(instance$293, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$292, props.precedence, hoistableRoot); - return (resource.instance = instance$292); + insertStylesheet(instance$293, props.precedence, hoistableRoot); + return (resource.instance = instance$293); case "script": - instance$292 = getScriptKey(props.src); + instance$293 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$292) + getScriptSelectorFromKey(instance$293) )) ) return ( @@ -18853,7 +18844,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$292))) + if ((styleProps = preloadPropsMap.get(instance$293))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -19980,16 +19971,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2242 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2243 = React.version; if ( - "19.3.0-experimental-55480b4d-20251208" !== - isomorphicReactPackageVersion$jscomp$inline_2242 + "19.3.0-experimental-80cb7a99-20251211" !== + isomorphicReactPackageVersion$jscomp$inline_2243 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2242, - "19.3.0-experimental-55480b4d-20251208" + isomorphicReactPackageVersion$jscomp$inline_2243, + "19.3.0-experimental-80cb7a99-20251211" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -20009,24 +20000,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2950 = { +var internals$jscomp$inline_2951 = { bundleType: 0, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208" + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2951 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2952 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2951.isDisabled && - hook$jscomp$inline_2951.supportsFiber + !hook$jscomp$inline_2952.isDisabled && + hook$jscomp$inline_2952.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2951.inject( - internals$jscomp$inline_2950 + (rendererID = hook$jscomp$inline_2952.inject( + internals$jscomp$inline_2951 )), - (injectedHook = hook$jscomp$inline_2951); + (injectedHook = hook$jscomp$inline_2952); } catch (err) {} } exports.createComponentSelector = function (component) { @@ -20272,4 +20263,4 @@ exports.observeVisibleRects = function ( } }; }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 944c01386599e..82604eab25772 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 @@ -422,7 +422,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; "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 c18aa4822beef..4a07bd184602d 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 @@ -213,4 +213,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 763defdfa4282..512ee45a99d09 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.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 2193fefbd482e..05ee81e3e81a6 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.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; diff --git a/packages/next/src/compiled/react-dom-experimental/package.json b/packages/next/src/compiled/react-dom-experimental/package.json index ef6435a5c6905..964b2b823ff1c 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-55480b4d-20251208" + "scheduler": "0.0.0-experimental-80cb7a99-20251211" }, "peerDependencies": { - "react": "0.0.0-experimental-55480b4d-20251208" + "react": "0.0.0-experimental-80cb7a99-20251211" }, "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 fb3ec6bd9c98a..6113f480449d1 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 @@ -11145,24 +11145,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2946; - var JSCompiler_object_inline_stack_2947 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2939; + var JSCompiler_object_inline_stack_2940 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2945 = !1; + var JSCompiler_object_inline_message_2938 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2946 = didSuspend) || - (JSCompiler_object_inline_digest_2946 = + (JSCompiler_object_inline_digest_2939 = didSuspend) || + (JSCompiler_object_inline_digest_2939 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2946 && - ((JSCompiler_object_inline_message_2945 = !0), + JSCompiler_object_inline_digest_2939 && + ((JSCompiler_object_inline_message_2938 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2946 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2939 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2945 + JSCompiler_object_inline_message_2938 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11175,18 +11175,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_2946 = { + ((JSCompiler_object_inline_digest_2939 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_2946), - (JSCompiler_object_inline_digest_2946 = + JSCompiler_object_inline_digest_2939), + (JSCompiler_object_inline_digest_2939 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_2946.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_2946), + (JSCompiler_object_inline_digest_2939.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_2939), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11200,39 +11200,39 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_2947.children; - JSCompiler_object_inline_stack_2947 = - JSCompiler_object_inline_stack_2947.fallback; - if (JSCompiler_object_inline_message_2945) { + var nextPrimaryChildren = JSCompiler_object_inline_stack_2940.children; + JSCompiler_object_inline_stack_2940 = + JSCompiler_object_inline_stack_2940.fallback; + if (JSCompiler_object_inline_message_2938) { reuseSuspenseHandlerOnStack(workInProgress); var mode = workInProgress.mode; nextPrimaryChildren = mountWorkInProgressOffscreenFiber( { mode: "hidden", children: nextPrimaryChildren }, mode ); - JSCompiler_object_inline_stack_2947 = createFiberFromFragment( - JSCompiler_object_inline_stack_2947, + JSCompiler_object_inline_stack_2940 = createFiberFromFragment( + JSCompiler_object_inline_stack_2940, mode, renderLanes, null ); nextPrimaryChildren.return = workInProgress; - JSCompiler_object_inline_stack_2947.return = workInProgress; - nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2947; + JSCompiler_object_inline_stack_2940.return = workInProgress; + nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2940; workInProgress.child = nextPrimaryChildren; - JSCompiler_object_inline_stack_2947 = workInProgress.child; - JSCompiler_object_inline_stack_2947.memoizedState = + JSCompiler_object_inline_stack_2940 = workInProgress.child; + JSCompiler_object_inline_stack_2940.memoizedState = mountSuspenseOffscreenState(renderLanes); - JSCompiler_object_inline_stack_2947.childLanes = + JSCompiler_object_inline_stack_2940.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2946, + JSCompiler_object_inline_digest_2939, renderLanes ); workInProgress.memoizedState = SUSPENDED_MARKER; return bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ); } pushPrimaryTreeSuspenseHandler(workInProgress); @@ -11243,8 +11243,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_2948 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_2948) { + var JSCompiler_object_inline_componentStack_2941 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_2941) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11261,13 +11261,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_2947.fallback), + JSCompiler_object_inline_stack_2940.fallback), (mode = workInProgress.mode), - (JSCompiler_object_inline_stack_2947 = + (JSCompiler_object_inline_stack_2940 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2947.children + children: JSCompiler_object_inline_stack_2940.children }, mode )), @@ -11278,30 +11278,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_2947.return = workInProgress), + (JSCompiler_object_inline_stack_2940.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2947.sibling = + (JSCompiler_object_inline_stack_2940.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2947), + (workInProgress.child = JSCompiler_object_inline_stack_2940), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2947 = workInProgress.child), - (JSCompiler_object_inline_stack_2947.memoizedState = + (JSCompiler_object_inline_stack_2940 = workInProgress.child), + (JSCompiler_object_inline_stack_2940.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2947.childLanes = + (JSCompiler_object_inline_stack_2940.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2946, + JSCompiler_object_inline_digest_2939, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11309,45 +11309,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_2948 + JSCompiler_object_inline_componentStack_2941 )) ) { - JSCompiler_object_inline_digest_2946 = - JSCompiler_object_inline_componentStack_2948.nextSibling && - JSCompiler_object_inline_componentStack_2948.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2946) { - nextPrimaryChildren = JSCompiler_object_inline_digest_2946.dgst; - var message = JSCompiler_object_inline_digest_2946.msg; - mode = JSCompiler_object_inline_digest_2946.stck; - var componentStack = JSCompiler_object_inline_digest_2946.cstck; + JSCompiler_object_inline_digest_2939 = + JSCompiler_object_inline_componentStack_2941.nextSibling && + JSCompiler_object_inline_componentStack_2941.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2939) { + nextPrimaryChildren = JSCompiler_object_inline_digest_2939.dgst; + var message = JSCompiler_object_inline_digest_2939.msg; + mode = JSCompiler_object_inline_digest_2939.stck; + var componentStack = JSCompiler_object_inline_digest_2939.cstck; } - JSCompiler_object_inline_message_2945 = message; - JSCompiler_object_inline_digest_2946 = nextPrimaryChildren; - JSCompiler_object_inline_stack_2947 = mode; - JSCompiler_object_inline_componentStack_2948 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_2945; - mode = JSCompiler_object_inline_componentStack_2948; + JSCompiler_object_inline_message_2938 = message; + JSCompiler_object_inline_digest_2939 = nextPrimaryChildren; + JSCompiler_object_inline_stack_2940 = mode; + JSCompiler_object_inline_componentStack_2941 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_2938; + mode = JSCompiler_object_inline_componentStack_2941; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_2947 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2946; - JSCompiler_object_inline_digest_2946 = + JSCompiler_object_inline_stack_2940 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2939; + JSCompiler_object_inline_digest_2939 = void 0 === mode ? null : mode; - JSCompiler_object_inline_stack_2947 = { + JSCompiler_object_inline_stack_2940 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_2946 + stack: JSCompiler_object_inline_digest_2939 }; - "string" === typeof JSCompiler_object_inline_digest_2946 && + "string" === typeof JSCompiler_object_inline_digest_2939 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ); - queueHydrationError(JSCompiler_object_inline_stack_2947); + queueHydrationError(JSCompiler_object_inline_stack_2940); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11361,35 +11361,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2946 = + (JSCompiler_object_inline_digest_2939 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2946) + didReceiveUpdate || JSCompiler_object_inline_digest_2939) ) { - JSCompiler_object_inline_digest_2946 = workInProgressRoot; + JSCompiler_object_inline_digest_2939 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_2946 && - ((JSCompiler_object_inline_stack_2947 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_2946, + null !== JSCompiler_object_inline_digest_2939 && + ((JSCompiler_object_inline_stack_2940 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_2939, renderLanes )), - 0 !== JSCompiler_object_inline_stack_2947 && - JSCompiler_object_inline_stack_2947 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_2940 && + JSCompiler_object_inline_stack_2940 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2947), + ((prevState.retryLane = JSCompiler_object_inline_stack_2940), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2946, + JSCompiler_object_inline_digest_2939, current, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2948 + JSCompiler_object_inline_componentStack_2941 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11398,14 +11398,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2948 + JSCompiler_object_inline_componentStack_2941 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_2948.nextSibling + JSCompiler_object_inline_componentStack_2941.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11417,32 +11417,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2947.children + JSCompiler_object_inline_stack_2940.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_2945) + if (JSCompiler_object_inline_message_2938) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_2947.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_2940.fallback), (mode = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_2948 = + (JSCompiler_object_inline_componentStack_2941 = componentStack.sibling), - (JSCompiler_object_inline_stack_2947 = createWorkInProgress( + (JSCompiler_object_inline_stack_2940 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_2947.children + children: JSCompiler_object_inline_stack_2940.children } )), - (JSCompiler_object_inline_stack_2947.subtreeFlags = + (JSCompiler_object_inline_stack_2940.subtreeFlags = componentStack.subtreeFlags & 132120576), - null !== JSCompiler_object_inline_componentStack_2948 + null !== JSCompiler_object_inline_componentStack_2941 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_2948, + JSCompiler_object_inline_componentStack_2941, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11453,11 +11453,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2947.return = workInProgress), - (JSCompiler_object_inline_stack_2947.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2947), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2947), - (JSCompiler_object_inline_stack_2947 = workInProgress.child), + (JSCompiler_object_inline_stack_2940.return = workInProgress), + (JSCompiler_object_inline_stack_2940.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_2940), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2940), + (JSCompiler_object_inline_stack_2940 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11473,18 +11473,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: mode })), - (JSCompiler_object_inline_stack_2947.memoizedState = + (JSCompiler_object_inline_stack_2940.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_2947.childLanes = + (JSCompiler_object_inline_stack_2940.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2946, + JSCompiler_object_inline_digest_2939, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_2947 + JSCompiler_object_inline_stack_2940 ) ); null !== prevState && @@ -11496,16 +11496,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2947.children + children: JSCompiler_object_inline_stack_2940.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2946 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2946 + ((JSCompiler_object_inline_digest_2939 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2939 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2946.push(current)); + : JSCompiler_object_inline_digest_2939.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -24029,6 +24029,7 @@ types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -24039,25 +24040,26 @@ i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -24072,23 +24074,22 @@ "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = - pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -24108,21 +24109,8 @@ } ); transition.finished.finally(function () { - for ( - var scope = ownerDocument.documentElement, - animations = scope.getAnimations({ subtree: !0 }), - i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -30396,11 +30384,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -30437,10 +30425,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208" + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -30578,7 +30566,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; "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 fd36dae28480c..49ab733bc9624 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 @@ -15523,6 +15523,7 @@ function startViewTransition( types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -15533,25 +15534,26 @@ function startViewTransition( i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -15566,22 +15568,22 @@ function startViewTransition( "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -15612,21 +15614,8 @@ function startViewTransition( } ); transition.finished.finally(function () { - for ( - var scope = ownerDocument.documentElement, - animations = scope.getAnimations({ subtree: !0 }), - i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); passiveCallback(); @@ -18011,16 +18000,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2047 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2040 = React.version; if ( - "19.3.0-canary-55480b4d-20251208" !== - isomorphicReactPackageVersion$jscomp$inline_2047 + "19.3.0-canary-80cb7a99-20251211" !== + isomorphicReactPackageVersion$jscomp$inline_2040 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2047, - "19.3.0-canary-55480b4d-20251208" + isomorphicReactPackageVersion$jscomp$inline_2040, + "19.3.0-canary-80cb7a99-20251211" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -18040,24 +18029,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2635 = { +var internals$jscomp$inline_2628 = { bundleType: 0, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208" + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2636 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2629 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2636.isDisabled && - hook$jscomp$inline_2636.supportsFiber + !hook$jscomp$inline_2629.isDisabled && + hook$jscomp$inline_2629.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2636.inject( - internals$jscomp$inline_2635 + (rendererID = hook$jscomp$inline_2629.inject( + internals$jscomp$inline_2628 )), - (injectedHook = hook$jscomp$inline_2636); + (injectedHook = hook$jscomp$inline_2629); } catch (err) {} } exports.createRoot = function (container, options) { @@ -18143,4 +18132,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 af9b393d0476c..8ce5036b6fc69 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 @@ -11153,24 +11153,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2951; - var JSCompiler_object_inline_stack_2952 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2944; + var JSCompiler_object_inline_stack_2945 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2950 = !1; + var JSCompiler_object_inline_message_2943 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2951 = didSuspend) || - (JSCompiler_object_inline_digest_2951 = + (JSCompiler_object_inline_digest_2944 = didSuspend) || + (JSCompiler_object_inline_digest_2944 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2951 && - ((JSCompiler_object_inline_message_2950 = !0), + JSCompiler_object_inline_digest_2944 && + ((JSCompiler_object_inline_message_2943 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2951 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2944 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2950 + JSCompiler_object_inline_message_2943 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11183,18 +11183,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_2951 = { + ((JSCompiler_object_inline_digest_2944 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_2951), - (JSCompiler_object_inline_digest_2951 = + JSCompiler_object_inline_digest_2944), + (JSCompiler_object_inline_digest_2944 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_2951.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_2951), + (JSCompiler_object_inline_digest_2944.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_2944), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11208,39 +11208,39 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_2952.children; - JSCompiler_object_inline_stack_2952 = - JSCompiler_object_inline_stack_2952.fallback; - if (JSCompiler_object_inline_message_2950) { + var nextPrimaryChildren = JSCompiler_object_inline_stack_2945.children; + JSCompiler_object_inline_stack_2945 = + JSCompiler_object_inline_stack_2945.fallback; + if (JSCompiler_object_inline_message_2943) { reuseSuspenseHandlerOnStack(workInProgress); var mode = workInProgress.mode; nextPrimaryChildren = mountWorkInProgressOffscreenFiber( { mode: "hidden", children: nextPrimaryChildren }, mode ); - JSCompiler_object_inline_stack_2952 = createFiberFromFragment( - JSCompiler_object_inline_stack_2952, + JSCompiler_object_inline_stack_2945 = createFiberFromFragment( + JSCompiler_object_inline_stack_2945, mode, renderLanes, null ); nextPrimaryChildren.return = workInProgress; - JSCompiler_object_inline_stack_2952.return = workInProgress; - nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2952; + JSCompiler_object_inline_stack_2945.return = workInProgress; + nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2945; workInProgress.child = nextPrimaryChildren; - JSCompiler_object_inline_stack_2952 = workInProgress.child; - JSCompiler_object_inline_stack_2952.memoizedState = + JSCompiler_object_inline_stack_2945 = workInProgress.child; + JSCompiler_object_inline_stack_2945.memoizedState = mountSuspenseOffscreenState(renderLanes); - JSCompiler_object_inline_stack_2952.childLanes = + JSCompiler_object_inline_stack_2945.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2951, + JSCompiler_object_inline_digest_2944, renderLanes ); workInProgress.memoizedState = SUSPENDED_MARKER; return bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ); } pushPrimaryTreeSuspenseHandler(workInProgress); @@ -11251,8 +11251,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_2953 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_2953) { + var JSCompiler_object_inline_componentStack_2946 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_2946) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11269,13 +11269,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_2952.fallback), + JSCompiler_object_inline_stack_2945.fallback), (mode = workInProgress.mode), - (JSCompiler_object_inline_stack_2952 = + (JSCompiler_object_inline_stack_2945 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2952.children + children: JSCompiler_object_inline_stack_2945.children }, mode )), @@ -11286,30 +11286,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_2952.return = workInProgress), + (JSCompiler_object_inline_stack_2945.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2952.sibling = + (JSCompiler_object_inline_stack_2945.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2952), + (workInProgress.child = JSCompiler_object_inline_stack_2945), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2952 = workInProgress.child), - (JSCompiler_object_inline_stack_2952.memoizedState = + (JSCompiler_object_inline_stack_2945 = workInProgress.child), + (JSCompiler_object_inline_stack_2945.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2952.childLanes = + (JSCompiler_object_inline_stack_2945.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2951, + JSCompiler_object_inline_digest_2944, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11317,45 +11317,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_2953 + JSCompiler_object_inline_componentStack_2946 )) ) { - JSCompiler_object_inline_digest_2951 = - JSCompiler_object_inline_componentStack_2953.nextSibling && - JSCompiler_object_inline_componentStack_2953.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2951) { - nextPrimaryChildren = JSCompiler_object_inline_digest_2951.dgst; - var message = JSCompiler_object_inline_digest_2951.msg; - mode = JSCompiler_object_inline_digest_2951.stck; - var componentStack = JSCompiler_object_inline_digest_2951.cstck; + JSCompiler_object_inline_digest_2944 = + JSCompiler_object_inline_componentStack_2946.nextSibling && + JSCompiler_object_inline_componentStack_2946.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2944) { + nextPrimaryChildren = JSCompiler_object_inline_digest_2944.dgst; + var message = JSCompiler_object_inline_digest_2944.msg; + mode = JSCompiler_object_inline_digest_2944.stck; + var componentStack = JSCompiler_object_inline_digest_2944.cstck; } - JSCompiler_object_inline_message_2950 = message; - JSCompiler_object_inline_digest_2951 = nextPrimaryChildren; - JSCompiler_object_inline_stack_2952 = mode; - JSCompiler_object_inline_componentStack_2953 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_2950; - mode = JSCompiler_object_inline_componentStack_2953; + JSCompiler_object_inline_message_2943 = message; + JSCompiler_object_inline_digest_2944 = nextPrimaryChildren; + JSCompiler_object_inline_stack_2945 = mode; + JSCompiler_object_inline_componentStack_2946 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_2943; + mode = JSCompiler_object_inline_componentStack_2946; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_2952 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2951; - JSCompiler_object_inline_digest_2951 = + JSCompiler_object_inline_stack_2945 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2944; + JSCompiler_object_inline_digest_2944 = void 0 === mode ? null : mode; - JSCompiler_object_inline_stack_2952 = { + JSCompiler_object_inline_stack_2945 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_2951 + stack: JSCompiler_object_inline_digest_2944 }; - "string" === typeof JSCompiler_object_inline_digest_2951 && + "string" === typeof JSCompiler_object_inline_digest_2944 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ); - queueHydrationError(JSCompiler_object_inline_stack_2952); + queueHydrationError(JSCompiler_object_inline_stack_2945); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11369,35 +11369,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2951 = + (JSCompiler_object_inline_digest_2944 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2951) + didReceiveUpdate || JSCompiler_object_inline_digest_2944) ) { - JSCompiler_object_inline_digest_2951 = workInProgressRoot; + JSCompiler_object_inline_digest_2944 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_2951 && - ((JSCompiler_object_inline_stack_2952 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_2951, + null !== JSCompiler_object_inline_digest_2944 && + ((JSCompiler_object_inline_stack_2945 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_2944, renderLanes )), - 0 !== JSCompiler_object_inline_stack_2952 && - JSCompiler_object_inline_stack_2952 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_2945 && + JSCompiler_object_inline_stack_2945 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2952), + ((prevState.retryLane = JSCompiler_object_inline_stack_2945), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2951, + JSCompiler_object_inline_digest_2944, current, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2953 + JSCompiler_object_inline_componentStack_2946 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11406,14 +11406,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2953 + JSCompiler_object_inline_componentStack_2946 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_2953.nextSibling + JSCompiler_object_inline_componentStack_2946.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11425,32 +11425,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2952.children + JSCompiler_object_inline_stack_2945.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_2950) + if (JSCompiler_object_inline_message_2943) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_2952.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_2945.fallback), (mode = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_2953 = + (JSCompiler_object_inline_componentStack_2946 = componentStack.sibling), - (JSCompiler_object_inline_stack_2952 = createWorkInProgress( + (JSCompiler_object_inline_stack_2945 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_2952.children + children: JSCompiler_object_inline_stack_2945.children } )), - (JSCompiler_object_inline_stack_2952.subtreeFlags = + (JSCompiler_object_inline_stack_2945.subtreeFlags = componentStack.subtreeFlags & 132120576), - null !== JSCompiler_object_inline_componentStack_2953 + null !== JSCompiler_object_inline_componentStack_2946 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_2953, + JSCompiler_object_inline_componentStack_2946, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11461,11 +11461,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2952.return = workInProgress), - (JSCompiler_object_inline_stack_2952.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2952), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2952), - (JSCompiler_object_inline_stack_2952 = workInProgress.child), + (JSCompiler_object_inline_stack_2945.return = workInProgress), + (JSCompiler_object_inline_stack_2945.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_2945), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2945), + (JSCompiler_object_inline_stack_2945 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11481,18 +11481,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: mode })), - (JSCompiler_object_inline_stack_2952.memoizedState = + (JSCompiler_object_inline_stack_2945.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_2952.childLanes = + (JSCompiler_object_inline_stack_2945.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2951, + JSCompiler_object_inline_digest_2944, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_2952 + JSCompiler_object_inline_stack_2945 ) ); null !== prevState && @@ -11504,16 +11504,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2952.children + children: JSCompiler_object_inline_stack_2945.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2951 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2951 + ((JSCompiler_object_inline_digest_2944 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2944 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2951.push(current)); + : JSCompiler_object_inline_digest_2944.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -24037,6 +24037,7 @@ types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -24047,25 +24048,26 @@ i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -24080,23 +24082,22 @@ "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = - pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -24116,21 +24117,8 @@ } ); transition.finished.finally(function () { - for ( - var scope = ownerDocument.documentElement, - animations = scope.getAnimations({ subtree: !0 }), - i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -30454,11 +30442,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -30495,10 +30483,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208" + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -30966,7 +30954,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; "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 50210333e6c45..73c839a3e343a 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 @@ -17419,6 +17419,7 @@ function startViewTransition( types: transitionTypes }); ownerDocument.__reactViewTransition = transition; + var viewTransitionAnimations = []; transition.ready.then( function () { for ( @@ -17429,25 +17430,26 @@ function startViewTransition( i < animations.length; i++ ) { - var effect = animations[i].effect, + var animation = animations[i], + effect = animation.effect, pseudoElement = effect.pseudoElement; if ( null != pseudoElement && pseudoElement.startsWith("::view-transition") ) { - pseudoElement = effect.getKeyframes(); + viewTransitionAnimations.push(animation); + animation = effect.getKeyframes(); for ( - var width = void 0, - height = void 0, + var height = (pseudoElement = void 0), unchangedDimensions = !0, j = 0; - j < pseudoElement.length; + j < animation.length; j++ ) { - var keyframe = pseudoElement[j], + var keyframe = animation[j], w = keyframe.width; - if (void 0 === width) width = w; - else if (width !== w) { + if (void 0 === pseudoElement) pseudoElement = w; + else if (pseudoElement !== w) { unchangedDimensions = !1; break; } @@ -17462,22 +17464,22 @@ function startViewTransition( "none" === keyframe.transform && delete keyframe.transform; } unchangedDimensions && - void 0 !== width && + void 0 !== pseudoElement && void 0 !== height && - (effect.setKeyframes(pseudoElement), + (effect.setKeyframes(animation), (unchangedDimensions = getComputedStyle( effect.target, effect.pseudoElement )), - unchangedDimensions.width !== width || + unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && - ((unchangedDimensions = pseudoElement[0]), - (unchangedDimensions.width = width), + ((unchangedDimensions = animation[0]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - (unchangedDimensions = pseudoElement[pseudoElement.length - 1]), - (unchangedDimensions.width = width), + (unchangedDimensions = animation[animation.length - 1]), + (unchangedDimensions.width = pseudoElement), (unchangedDimensions.height = height), - effect.setKeyframes(pseudoElement)); + effect.setKeyframes(animation)); } } spawnedWorkCallback(); @@ -17511,21 +17513,8 @@ function startViewTransition( } ); transition.finished.finally(function () { - for ( - var scope = ownerDocument.documentElement, - animations = scope.getAnimations({ subtree: !0 }), - i = 0; - i < animations.length; - i++ - ) { - var anim = animations[i], - effect = anim.effect, - pseudo = effect.pseudoElement; - null != pseudo && - pseudo.startsWith("::view-transition") && - effect.target === scope && - anim.cancel(); - } + for (var i = 0; i < viewTransitionAnimations.length; i++) + viewTransitionAnimations[i].cancel(); ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null); finishedAnimation(); @@ -19939,16 +19928,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2344 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2337 = React.version; if ( - "19.3.0-canary-55480b4d-20251208" !== - isomorphicReactPackageVersion$jscomp$inline_2344 + "19.3.0-canary-80cb7a99-20251211" !== + isomorphicReactPackageVersion$jscomp$inline_2337 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2344, - "19.3.0-canary-55480b4d-20251208" + isomorphicReactPackageVersion$jscomp$inline_2337, + "19.3.0-canary-80cb7a99-20251211" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -19968,24 +19957,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2945 = { +var internals$jscomp$inline_2938 = { bundleType: 0, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208" + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2946 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2939 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2946.isDisabled && - hook$jscomp$inline_2946.supportsFiber + !hook$jscomp$inline_2939.isDisabled && + hook$jscomp$inline_2939.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2946.inject( - internals$jscomp$inline_2945 + (rendererID = hook$jscomp$inline_2939.inject( + internals$jscomp$inline_2938 )), - (injectedHook = hook$jscomp$inline_2946); + (injectedHook = hook$jscomp$inline_2939); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -20232,7 +20221,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; "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 ef6cd4b5cd4c3..1e9938eabd9fd 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 @@ -10035,5 +10035,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.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 5d0aa3556633f..fd94d6fb25e50 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 @@ -6763,4 +6763,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.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 44c8a3e95f39b..2a228bb94b67a 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 @@ -10035,5 +10035,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.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 be53ac82f28f3..d7b25a41610ee 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 @@ -6855,4 +6855,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.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 e38db58a12ed0..27fd2eac04a7a 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 @@ -9001,11 +9001,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -10808,5 +10808,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 77bd629bd210a..404aca9360a33 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 @@ -7365,12 +7365,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-canary-55480b4d-20251208" + "19.3.0-canary-80cb7a99-20251211" ) ); } @@ -7621,4 +7621,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 6e18f7cfbcf55..2b28ee38b394b 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 @@ -7073,11 +7073,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7622,4 +7622,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 416f215526e2a..130f8dc7467c7 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 @@ -9024,11 +9024,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -10827,5 +10827,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 a4a2d08742862..ae367b0086d14 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 @@ -7472,11 +7472,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7726,4 +7726,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 16bff33816603..4b8ce1b551e01 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 @@ -8898,11 +8898,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -11007,5 +11007,5 @@ } }; }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 1b2c54120f2e8..a6c6d8c64db67 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 @@ -7363,11 +7363,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-55480b4d-20251208" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-80cb7a99-20251211" !== 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.3.0-canary-55480b4d-20251208\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-80cb7a99-20251211\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7917,4 +7917,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 7f101c67e492b..a22ee9cfb5612 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 @@ -422,7 +422,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; "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 178a627afee0d..f78ae81fde18b 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 @@ -213,4 +213,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 05cd70fd744a4..1bdc0fd5f20ba 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.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 0794eec97a43f..d4a893ae6a8df 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.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; diff --git a/packages/next/src/compiled/react-dom/package.json b/packages/next/src/compiled/react-dom/package.json index 5ae346c1baf5e..0a15baf7d9609 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.28.0-canary-55480b4d-20251208" + "scheduler": "0.28.0-canary-80cb7a99-20251211" }, "peerDependencies": { - "react": "19.3.0-canary-55480b4d-20251208" + "react": "19.3.0-canary-80cb7a99-20251211" }, "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 2d6f2b92d7ddb..26c299845d4eb 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.development.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.development.js @@ -1391,7 +1391,7 @@ exports.useTransition = function () { return resolveDispatcher().useTransition(); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; "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 0cee036988dca..a5b2ce723cc2a 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.production.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.production.js @@ -605,4 +605,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; 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 5c36ab91b6f03..6d170325e4878 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 @@ -1061,5 +1061,5 @@ exports.useMemo = function (create, deps) { return resolveDispatcher().useMemo(create, deps); }; - exports.version = "19.3.0-experimental-55480b4d-20251208"; + exports.version = "19.3.0-experimental-80cb7a99-20251211"; })(); 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 3a61b6007461d..cd38cc3e01502 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 @@ -571,4 +571,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.3.0-experimental-55480b4d-20251208"; +exports.version = "19.3.0-experimental-80cb7a99-20251211"; diff --git a/packages/next/src/compiled/react-is/package.json b/packages/next/src/compiled/react-is/package.json index 314b73948d0bb..4e5df69748bd1 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.3.0-canary-55480b4d-20251208", + "version": "19.3.0-canary-80cb7a99-20251211", "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 217a856db6820..08a4dfdd2bbc7 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 @@ -488,13 +488,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -503,9 +513,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -663,7 +672,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1668,6 +1677,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = value[1]; for (var debugInfo = [], i = 0; i < value.length; ) { var chunkFilename = value[i++], @@ -1853,8 +1863,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -1959,125 +1972,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2223,6 +2247,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2548,7 +2573,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -2926,7 +2951,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2981,24 +3007,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3054,6 +3084,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3080,36 +3111,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState @@ -4966,10 +5000,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208", + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 0b3712107717f..b2df86e17d76e 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 @@ -292,13 +292,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -307,9 +317,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -433,7 +442,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -568,12 +577,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -613,7 +622,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -622,7 +631,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -631,7 +640,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -707,6 +716,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -769,8 +779,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -787,109 +800,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -993,7 +1017,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1198,7 +1224,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1337,12 +1363,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1392,24 +1419,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1463,6 +1493,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1489,36 +1520,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 ed4f6f4a4cc4f..5950f374b7ed8 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 @@ -513,13 +513,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -528,9 +538,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -688,7 +697,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1880,6 +1889,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2009,8 +2019,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2115,125 +2128,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2385,6 +2409,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2710,7 +2735,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3073,7 +3098,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3128,24 +3154,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3201,6 +3231,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3227,36 +3258,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 32de853f569ad..58ab74ad57a20 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 @@ -313,13 +313,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -328,9 +338,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -454,7 +463,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -738,12 +747,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -783,7 +792,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -792,7 +801,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -801,7 +810,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -877,6 +886,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -939,8 +949,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -957,109 +970,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1177,7 +1201,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1382,7 +1408,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1526,12 +1552,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1581,24 +1608,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1652,6 +1682,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1678,36 +1709,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 76f3b6b34853e..0b20360fd0765 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 @@ -513,13 +513,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -528,9 +538,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -688,7 +697,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1880,6 +1889,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2009,8 +2019,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2115,125 +2128,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2385,6 +2409,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2710,7 +2735,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3093,7 +3118,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3148,24 +3174,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3221,6 +3251,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3247,36 +3278,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 0a84fd7f5ff1f..c81ea6caa5a1f 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 @@ -314,13 +314,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -329,9 +339,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -455,7 +464,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -739,12 +748,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -784,7 +793,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -793,7 +802,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -802,7 +811,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -878,6 +887,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -940,8 +950,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -958,109 +971,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1178,7 +1202,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1383,7 +1409,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1530,12 +1556,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1585,24 +1612,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1656,6 +1686,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1682,36 +1713,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 a99e6cada5a8e..2c8942305c3da 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 @@ -2150,7 +2150,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2176,7 +2176,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2572,7 +2572,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3173,7 +3173,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4135,6 +4135,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4238,6 +4239,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4248,8 +4250,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4271,58 +4276,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4334,33 +4322,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4371,59 +4332,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4463,9 +4412,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4494,6 +4444,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4528,7 +4479,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4575,24 +4529,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4607,6 +4565,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4647,36 +4607,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4690,7 +4660,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -4964,6 +4934,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5349,7 +5326,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5380,7 +5357,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5395,7 +5388,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5523,7 +5518,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 01e6cd8296e3d..a8af4620e5972 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 @@ -101,7 +101,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -820,7 +827,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1726,7 +1733,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1779,7 +1786,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1791,7 +1798,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2319,7 +2326,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2332,6 +2355,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2509,6 +2534,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2600,6 +2626,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2610,7 +2637,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2628,58 +2659,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2691,33 +2705,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2728,53 +2715,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2813,9 +2789,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2841,6 +2818,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2873,7 +2851,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2916,24 +2897,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2948,6 +2932,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2991,36 +2977,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3032,7 +3028,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3293,7 +3289,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 31894a2e9ed12..9e95183a53d23 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 @@ -2210,7 +2210,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2236,7 +2236,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2632,7 +2632,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3243,7 +3243,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4209,6 +4209,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4312,6 +4313,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4322,8 +4324,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4345,58 +4350,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4408,33 +4396,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4445,59 +4406,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4537,9 +4486,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4568,6 +4518,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4602,7 +4553,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4649,24 +4603,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4681,6 +4639,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4721,36 +4681,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4764,7 +4734,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5046,6 +5016,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5423,7 +5400,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5454,7 +5431,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5469,7 +5462,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5636,7 +5631,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 c010eb01a883e..c6c8884db58ee 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 @@ -112,7 +112,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -811,7 +818,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1725,7 +1732,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1778,7 +1785,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1790,7 +1797,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2323,7 +2330,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2336,6 +2359,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2513,6 +2538,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2604,6 +2630,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2614,7 +2641,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2632,58 +2663,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2695,33 +2709,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2732,53 +2719,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2817,9 +2793,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2845,6 +2822,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2877,7 +2855,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2920,24 +2901,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2952,6 +2936,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2995,36 +2981,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3036,7 +3032,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3335,7 +3331,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 79ec06fc2f087..994443474cd0f 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 @@ -2458,7 +2458,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2484,7 +2484,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2880,7 +2880,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3581,7 +3581,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4656,6 +4656,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4759,6 +4760,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4769,8 +4771,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4792,58 +4797,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4855,33 +4843,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4892,59 +4853,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4984,9 +4933,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -5015,6 +4965,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -5049,7 +5000,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -5096,24 +5050,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -5128,6 +5086,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -5168,36 +5128,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -5211,7 +5181,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5551,6 +5521,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -6102,7 +6079,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -6133,7 +6110,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -6148,7 +6141,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -6276,13 +6271,13 @@ ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_276 = []; + var JSCompiler_object_inline_chunks_286 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_276.push(chunk); + JSCompiler_object_inline_chunks_286.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_276, { + var blob = new Blob(JSCompiler_object_inline_chunks_286, { type: mimeType }); response._formData.append(name, blob, filename); @@ -6416,7 +6411,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, turbopackMap, options) { 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 d5facfbc5c35e..3b6893f5d49f9 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 @@ -139,7 +139,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -837,7 +844,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1745,7 +1752,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1798,7 +1805,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1810,7 +1817,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2353,7 +2360,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2366,6 +2389,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2543,6 +2568,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2634,6 +2660,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2644,7 +2671,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2662,58 +2693,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2725,33 +2739,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2762,53 +2749,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2847,9 +2823,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2875,6 +2852,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2907,7 +2885,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2950,24 +2931,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2982,6 +2966,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -3025,36 +3011,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - value, - !0 - )) - : resolveIteratorResultChunk( - response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3066,7 +3062,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3377,13 +3373,13 @@ exports.decodeReplyFromBusboy = function (busboyStream, turbopackMap, options) { ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_284 = []; + var JSCompiler_object_inline_chunks_294 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_284.push(chunk); + JSCompiler_object_inline_chunks_294.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_284, { + var blob = new Blob(JSCompiler_object_inline_chunks_294, { type: mimeType }); response._formData.append(name, blob, filename); @@ -3510,7 +3506,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, turbopackMap, options) { 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 ab6d4c259b4ea..0d543d18c69fe 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-55480b4d-20251208", - "react-dom": "0.0.0-experimental-55480b4d-20251208" + "react": "0.0.0-experimental-80cb7a99-20251211", + "react-dom": "0.0.0-experimental-80cb7a99-20251211" } } \ 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 b9ab546c13a06..8291db8185e0d 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 @@ -488,13 +488,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -503,9 +513,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -663,7 +672,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1668,6 +1677,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = value[1]; for (var debugInfo = [], i = 0; i < value.length; ) { var chunkFilename = value[i++], @@ -1853,8 +1863,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -1959,125 +1972,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2223,6 +2247,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2548,7 +2573,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -2926,7 +2951,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2981,24 +3007,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3054,6 +3084,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3080,36 +3111,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState @@ -4966,10 +5000,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208", + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 0b3712107717f..b2df86e17d76e 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 @@ -292,13 +292,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -307,9 +317,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -433,7 +442,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -568,12 +577,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -613,7 +622,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -622,7 +631,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -631,7 +640,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -707,6 +716,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -769,8 +779,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -787,109 +800,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -993,7 +1017,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1198,7 +1224,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1337,12 +1363,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1392,24 +1419,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1463,6 +1493,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1489,36 +1520,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 ed4f6f4a4cc4f..5950f374b7ed8 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 @@ -513,13 +513,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -528,9 +538,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -688,7 +697,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1880,6 +1889,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2009,8 +2019,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2115,125 +2128,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2385,6 +2409,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2710,7 +2735,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3073,7 +3098,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3128,24 +3154,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3201,6 +3231,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3227,36 +3258,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 32de853f569ad..58ab74ad57a20 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 @@ -313,13 +313,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -328,9 +338,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -454,7 +463,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -738,12 +747,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -783,7 +792,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -792,7 +801,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -801,7 +810,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -877,6 +886,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -939,8 +949,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -957,109 +970,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1177,7 +1201,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1382,7 +1408,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1526,12 +1552,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1581,24 +1608,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1652,6 +1682,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1678,36 +1709,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 76f3b6b34853e..0b20360fd0765 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 @@ -513,13 +513,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -528,9 +538,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -688,7 +697,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1880,6 +1889,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2009,8 +2019,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2115,125 +2128,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2385,6 +2409,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2710,7 +2735,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3093,7 +3118,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3148,24 +3174,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3221,6 +3251,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3247,36 +3278,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 0a84fd7f5ff1f..c81ea6caa5a1f 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 @@ -314,13 +314,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -329,9 +339,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -455,7 +464,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -739,12 +748,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -784,7 +793,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -793,7 +802,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -802,7 +811,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -878,6 +887,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -940,8 +950,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -958,109 +971,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1178,7 +1202,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1383,7 +1409,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1530,12 +1556,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1585,24 +1612,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1656,6 +1686,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1682,36 +1713,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 18ed57b96ba26..4194e2df3cef3 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 @@ -2132,7 +2132,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2158,7 +2158,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2552,7 +2552,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3130,7 +3130,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4089,6 +4089,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4192,6 +4193,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4202,8 +4204,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4225,58 +4230,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4288,33 +4276,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4325,59 +4286,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4417,9 +4366,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4448,6 +4398,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4482,7 +4433,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4529,24 +4483,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4561,6 +4519,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4601,36 +4561,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4644,7 +4614,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -4918,6 +4888,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5303,7 +5280,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5328,7 +5305,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5343,7 +5336,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5471,7 +5466,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 5a8cb41dc8388..f3d068a1c36db 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 @@ -101,7 +101,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -820,7 +827,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1700,7 +1707,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1751,7 +1758,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1763,7 +1770,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2267,7 +2274,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2280,6 +2303,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2457,6 +2482,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2548,6 +2574,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2558,7 +2585,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2576,58 +2607,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2639,33 +2653,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2676,53 +2663,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2761,9 +2737,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2789,6 +2766,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2821,7 +2799,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2864,24 +2845,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2896,6 +2880,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2939,36 +2925,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -2980,7 +2976,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3241,7 +3237,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 9a11d7d02a01b..86d55db888dc4 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 @@ -2192,7 +2192,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2218,7 +2218,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2612,7 +2612,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3200,7 +3200,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4163,6 +4163,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4266,6 +4267,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4276,8 +4278,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4299,58 +4304,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4362,33 +4350,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4399,59 +4360,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4491,9 +4440,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4522,6 +4472,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4556,7 +4507,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4603,24 +4557,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4635,6 +4593,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4675,36 +4635,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4718,7 +4688,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5000,6 +4970,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5377,7 +5354,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5402,7 +5379,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5417,7 +5410,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5584,7 +5579,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 f1c5df5ef0b4e..fb5a35106fbe9 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 @@ -112,7 +112,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -811,7 +818,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1699,7 +1706,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1750,7 +1757,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1762,7 +1769,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2271,7 +2278,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2284,6 +2307,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2461,6 +2486,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2552,6 +2578,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2562,7 +2589,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2580,58 +2611,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2643,33 +2657,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2680,53 +2667,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2765,9 +2741,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2793,6 +2770,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2825,7 +2803,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2868,24 +2849,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2900,6 +2884,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2943,36 +2929,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -2984,7 +2980,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3283,7 +3279,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, turbopackMap, options) { 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 9c0b3533b429a..f32aa276810c9 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 @@ -2440,7 +2440,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2466,7 +2466,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2860,7 +2860,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3538,7 +3538,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4610,6 +4610,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4713,6 +4714,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4723,8 +4725,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4746,58 +4751,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4809,33 +4797,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4846,59 +4807,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4938,9 +4887,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4969,6 +4919,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -5003,7 +4954,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -5050,24 +5004,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -5082,6 +5040,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -5122,36 +5082,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -5165,7 +5135,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5505,6 +5475,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -6056,7 +6033,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -6081,7 +6058,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -6096,7 +6089,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -6224,13 +6219,13 @@ ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_276 = []; + var JSCompiler_object_inline_chunks_286 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_276.push(chunk); + JSCompiler_object_inline_chunks_286.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_276, { + var blob = new Blob(JSCompiler_object_inline_chunks_286, { type: mimeType }); response._formData.append(name, blob, filename); @@ -6364,7 +6359,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, turbopackMap, options) { 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 9a144df909293..f03a5d0b5a7bf 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 @@ -139,7 +139,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -837,7 +844,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1719,7 +1726,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1770,7 +1777,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1782,7 +1789,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2301,7 +2308,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2314,6 +2337,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2491,6 +2516,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2582,6 +2608,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2592,7 +2619,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2610,58 +2641,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2673,33 +2687,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2710,53 +2697,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2795,9 +2771,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2823,6 +2800,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2855,7 +2833,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2898,24 +2879,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2930,6 +2914,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2973,36 +2959,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - value, - !0 - )) - : resolveIteratorResultChunk( - response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3014,7 +3010,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3325,13 +3321,13 @@ exports.decodeReplyFromBusboy = function (busboyStream, turbopackMap, options) { ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_281 = []; + var JSCompiler_object_inline_chunks_291 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_281.push(chunk); + JSCompiler_object_inline_chunks_291.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_281, { + var blob = new Blob(JSCompiler_object_inline_chunks_291, { type: mimeType }); response._formData.append(name, blob, filename); @@ -3458,7 +3454,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, turbopackMap, options) { 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 fa88880d45b76..c9c5a37a31c73 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.3.0-canary-55480b4d-20251208", - "react-dom": "19.3.0-canary-55480b4d-20251208" + "react": "19.3.0-canary-80cb7a99-20251211", + "react-dom": "19.3.0-canary-80cb7a99-20251211" } } \ 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 dfb1c40d4accf..5250f453dce7e 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 @@ -495,13 +495,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -510,9 +520,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -670,7 +679,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1675,6 +1684,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = value[1]; for (var debugInfo = [], i = 0; i < value.length; ) { var chunkId = value[i++]; @@ -1862,8 +1872,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -1968,125 +1981,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2232,6 +2256,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2557,7 +2582,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -2935,7 +2960,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2990,24 +3016,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3063,6 +3093,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3089,36 +3120,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState @@ -4982,10 +5016,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-55480b4d-20251208", + version: "19.3.0-experimental-80cb7a99-20251211", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-55480b4d-20251208", + reconcilerVersion: "19.3.0-experimental-80cb7a99-20251211", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 227adcd588dc0..4fe0afc4934c8 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 @@ -303,13 +303,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -318,9 +328,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -444,7 +453,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -579,12 +588,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -624,7 +633,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -633,7 +642,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -642,7 +651,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -718,6 +727,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -780,8 +790,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -798,109 +811,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1004,7 +1028,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1209,7 +1235,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1348,12 +1374,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1403,24 +1430,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1474,6 +1504,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1500,36 +1531,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 36797863b2275..f16b2625fbc72 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 @@ -516,13 +516,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -531,9 +541,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -691,7 +700,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1883,6 +1892,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2012,8 +2022,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2118,125 +2131,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2388,6 +2412,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2713,7 +2738,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3076,7 +3101,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3131,24 +3157,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3204,6 +3234,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3230,36 +3261,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 34cdddeccf10f..1fed366e75cc0 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 @@ -315,13 +315,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -330,9 +340,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -456,7 +465,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -740,12 +749,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -785,7 +794,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -794,7 +803,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -803,7 +812,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -879,6 +888,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -941,8 +951,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -959,109 +972,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1179,7 +1203,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1384,7 +1410,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1528,12 +1554,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1583,24 +1610,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1654,6 +1684,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1680,36 +1711,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 e63f6d2cf778d..c8d915ff6ff65 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 @@ -516,13 +516,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -531,9 +541,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -691,7 +700,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1883,6 +1892,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2012,8 +2022,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2118,125 +2131,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2388,6 +2412,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2713,7 +2738,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3096,7 +3121,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3151,24 +3177,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3224,6 +3254,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3250,36 +3281,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 487fd4ba84215..4b2cc78580ea1 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 @@ -316,13 +316,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -331,9 +341,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -457,7 +466,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -741,12 +750,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -786,7 +795,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -795,7 +804,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -804,7 +813,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -880,6 +889,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -942,8 +952,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -960,109 +973,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1180,7 +1204,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1385,7 +1411,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1532,12 +1558,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1587,24 +1614,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1658,6 +1688,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1684,36 +1715,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 86f4e5be7c939..7043d9eb0772b 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 @@ -2150,7 +2150,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2176,7 +2176,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2572,7 +2572,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3173,7 +3173,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4142,6 +4142,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4245,6 +4246,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4255,8 +4257,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4278,58 +4283,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4341,33 +4329,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4378,59 +4339,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4470,9 +4419,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4501,6 +4451,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4535,7 +4486,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4582,24 +4536,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4614,6 +4572,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4654,36 +4614,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4697,7 +4667,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -4971,6 +4941,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5356,7 +5333,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5394,7 +5371,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5409,7 +5402,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5537,7 +5532,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 15ad082ab0448..01b2017f80944 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 @@ -101,7 +101,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -820,7 +827,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1726,7 +1733,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1779,7 +1786,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1791,7 +1798,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2330,7 +2337,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2343,6 +2366,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2520,6 +2545,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2611,6 +2637,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2621,7 +2648,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2639,58 +2670,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2702,33 +2716,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2739,53 +2726,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2824,9 +2800,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2852,6 +2829,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2884,7 +2862,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2927,24 +2908,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2959,6 +2943,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -3002,36 +2988,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3043,7 +3039,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3304,7 +3300,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 82f1008431b12..ba7c2afd99c93 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 @@ -2210,7 +2210,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2236,7 +2236,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2632,7 +2632,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3243,7 +3243,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4212,6 +4212,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4315,6 +4316,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4325,8 +4327,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4348,58 +4353,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4411,33 +4399,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4448,59 +4409,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4540,9 +4489,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4571,6 +4521,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4605,7 +4556,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4652,24 +4606,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4684,6 +4642,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4724,36 +4684,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4767,7 +4737,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5049,6 +5019,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5426,7 +5403,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5456,7 +5433,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5471,7 +5464,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5638,7 +5633,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 49008a5342e9f..34db42e8208f4 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 @@ -112,7 +112,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -811,7 +818,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1725,7 +1732,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1778,7 +1785,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1790,7 +1797,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2325,7 +2332,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2338,6 +2361,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2515,6 +2540,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2606,6 +2632,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2616,7 +2643,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2634,58 +2665,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2697,33 +2711,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2734,53 +2721,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2819,9 +2795,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2847,6 +2824,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2879,7 +2857,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2922,24 +2903,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2954,6 +2938,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2997,36 +2983,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3038,7 +3034,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3337,7 +3333,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 1bcf6b5717c5c..a5fd073dd2fd7 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 @@ -2458,7 +2458,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2484,7 +2484,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2880,7 +2880,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3581,7 +3581,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4659,6 +4659,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4762,6 +4763,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4772,8 +4774,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4795,58 +4800,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4858,33 +4846,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4895,59 +4856,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4987,9 +4936,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -5018,6 +4968,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -5052,7 +5003,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -5099,24 +5053,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -5131,6 +5089,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -5171,36 +5131,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -5214,7 +5184,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5554,6 +5524,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -6105,7 +6082,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -6135,7 +6112,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -6150,7 +6143,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -6278,13 +6273,13 @@ ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_276 = []; + var JSCompiler_object_inline_chunks_286 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_276.push(chunk); + JSCompiler_object_inline_chunks_286.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_276, { + var blob = new Blob(JSCompiler_object_inline_chunks_286, { type: mimeType }); response._formData.append(name, blob, filename); @@ -6418,7 +6413,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, webpackMap, options) { 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 546183e4ef414..d4c11f02e8ddc 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 @@ -139,7 +139,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -837,7 +844,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, TaintRegistryObjects = ReactSharedInternalsServer.TaintRegistryObjects, TaintRegistryValues = ReactSharedInternalsServer.TaintRegistryValues, @@ -1745,7 +1752,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1798,7 +1805,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (value = "$F" + parentPropertyName.toString(16)) + ? (value = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1810,7 +1817,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (value = "$F" + request.toString(16))), + (value = "$h" + request.toString(16))), value ); if ( @@ -2355,7 +2362,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2368,6 +2391,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2545,6 +2570,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2636,6 +2662,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2646,7 +2673,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2664,58 +2695,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2727,33 +2741,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2764,53 +2751,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2849,9 +2825,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2877,6 +2854,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2909,7 +2887,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2952,24 +2933,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2984,6 +2968,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -3027,36 +3013,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - value, - !0 - )) - : resolveIteratorResultChunk( - response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3068,7 +3064,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3379,13 +3375,13 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_284 = []; + var JSCompiler_object_inline_chunks_294 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_284.push(chunk); + JSCompiler_object_inline_chunks_294.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_284, { + var blob = new Blob(JSCompiler_object_inline_chunks_294, { type: mimeType }); response._formData.append(name, blob, filename); @@ -3512,7 +3508,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, webpackMap, options) { 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 177d11a61f3ae..eea9597937a3b 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 @@ -52,8 +52,8 @@ "webpack-sources": "^3.2.0" }, "peerDependencies": { - "react": "0.0.0-experimental-55480b4d-20251208", - "react-dom": "0.0.0-experimental-55480b4d-20251208", + "react": "0.0.0-experimental-80cb7a99-20251211", + "react-dom": "0.0.0-experimental-80cb7a99-20251211", "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 28c93b42f3ace..4c9e7f2018533 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 @@ -495,13 +495,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -510,9 +520,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -670,7 +679,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1675,6 +1684,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = value[1]; for (var debugInfo = [], i = 0; i < value.length; ) { var chunkId = value[i++]; @@ -1862,8 +1872,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -1968,125 +1981,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2232,6 +2256,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2557,7 +2582,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -2935,7 +2960,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2990,24 +3016,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3063,6 +3093,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3089,36 +3120,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState @@ -4982,10 +5016,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-55480b4d-20251208", + version: "19.3.0-canary-80cb7a99-20251211", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-55480b4d-20251208", + reconcilerVersion: "19.3.0-canary-80cb7a99-20251211", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 227adcd588dc0..4fe0afc4934c8 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 @@ -303,13 +303,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -318,9 +328,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -444,7 +453,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -579,12 +588,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -624,7 +633,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -633,7 +642,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -642,7 +651,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -718,6 +727,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -780,8 +790,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -798,109 +811,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1004,7 +1028,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1209,7 +1235,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1348,12 +1374,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1403,24 +1430,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1474,6 +1504,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1500,36 +1531,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 36797863b2275..f16b2625fbc72 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 @@ -516,13 +516,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -531,9 +541,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -691,7 +700,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1883,6 +1892,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2012,8 +2022,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2118,125 +2131,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2388,6 +2412,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2713,7 +2738,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3076,7 +3101,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3131,24 +3157,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3204,6 +3234,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3230,36 +3261,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 34cdddeccf10f..1fed366e75cc0 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 @@ -315,13 +315,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -330,9 +340,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -456,7 +465,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -740,12 +749,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -785,7 +794,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -794,7 +803,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -803,7 +812,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -879,6 +888,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -941,8 +951,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -959,109 +972,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1179,7 +1203,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1384,7 +1410,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1528,12 +1554,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1583,24 +1610,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1654,6 +1684,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1680,36 +1711,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 e63f6d2cf778d..c8d915ff6ff65 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 @@ -516,13 +516,23 @@ pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var _partJSON3 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var _partJSON3 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, _partJSON3); pendingParts--; @@ -531,9 +541,8 @@ reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -691,7 +700,7 @@ null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -1883,6 +1892,7 @@ rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; value = []; null !== value && chunk._debugInfo.push.apply(chunk._debugInfo, value); null !== resolveListeners && @@ -2012,8 +2022,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); weakResponse = response._debugChannel; void 0 !== weakResponse && @@ -2118,125 +2131,136 @@ return chunk; } function fulfillReference(response, reference, value, fulfilledChunk) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var _referencedChunk = value._payload; + if (_referencedChunk === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (_referencedChunk.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(_referencedChunk); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(_referencedChunk); } - switch (value.status) { + switch (_referencedChunk.status) { case "fulfilled": - value = value.value; + value = _referencedChunk.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((path = value._payload), path === handler.chunk)) - value = handler.value; - else { - switch (path.status) { - case "resolved_model": - initializeModelChunk(path); + } + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + element.props = mappedValue; break; - case "resolved_module": - initializeModuleChunk(path); - } - switch (path.status) { - case "fulfilled": - value = path.value; - continue; + case "4": + element._owner = mappedValue; + break; + case "5": + element._debugStack = mappedValue; + break; + default: + transferReferencedDebugInfo(handler.chunk, fulfilledChunk); } - break; - } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((reference = handler.value), key)) { - case "3": - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - reference.props = map; - break; - case "4": - reference._owner = map; - break; - case "5": - reference._debugStack = map; - break; - default: + } else + reference.isDebug || transferReferencedDebugInfo(handler.chunk, fulfilledChunk); - } - else - reference.isDebug || - transferReferencedDebugInfo(handler.chunk, fulfilledChunk); + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((fulfilledChunk = handler.chunk), - null !== fulfilledChunk && - "blocked" === fulfilledChunk.status && - ((key = fulfilledChunk.value), - (fulfilledChunk.status = "fulfilled"), - (fulfilledChunk.value = handler.value), - (fulfilledChunk.reason = handler.reason), - null !== key - ? wakeChunk(response, key, handler.value, fulfilledChunk) + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value + ? wakeChunk(response, value, handler.value, reference) : ((handler = handler.value), - filterDebugInfo(response, fulfilledChunk), - moveDebugInfoFromChunkToInnerValue(fulfilledChunk, handler)))); + filterDebugInfo(response, reference), + moveDebugInfoFromChunkToInnerValue(reference, handler)))); } function rejectReference(response, handler, error) { if (!handler.errored) { @@ -2388,6 +2412,7 @@ ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== boundArgs ? wakeChunk(response, boundArgs, handler.value, resolvedValue) : ((boundArgs = handler.value), @@ -2713,7 +2738,7 @@ ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": var ref = value.slice(2); return getOutlinedModel( response, @@ -3096,7 +3121,8 @@ chunks.set(id, stream); } function startReadableStream(response, id, type, streamState) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -3151,24 +3177,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }, streamState @@ -3224,6 +3254,7 @@ rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -3250,36 +3281,39 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = + createResolvedIteratorResultChunk(response, value, !0)) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = createPendingChunk(response)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = createPendingChunk(response)); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }, streamState 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 487fd4ba84215..4b2cc78580ea1 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 @@ -316,13 +316,23 @@ function processReply( pendingParts--; } } + parentReference = writtenObjects.get(value); if ("function" === typeof value.then) { + if (void 0 !== parentReference) + if (modelRoot === value) modelRoot = null; + else return parentReference; null === formData && (formData = new FormData()); pendingParts++; var promiseId = nextPartId++; + key = "$@" + promiseId.toString(16); + writtenObjects.set(value, key); value.then(function (partValue) { try { - var partJSON$27 = serializeModel(partValue, promiseId); + var previousReference = writtenObjects.get(partValue); + var partJSON$27 = + void 0 !== previousReference + ? JSON.stringify(previousReference) + : serializeModel(partValue, promiseId); partValue = formData; partValue.append(formFieldPrefix + promiseId, partJSON$27); pendingParts--; @@ -331,9 +341,8 @@ function processReply( reject(reason); } }, reject); - return "$@" + promiseId.toString(16); + return key; } - parentReference = writtenObjects.get(value); if (void 0 !== parentReference) if (modelRoot === value) modelRoot = null; else return parentReference; @@ -457,7 +466,7 @@ function processReply( null === formData && (formData = new FormData()), (parentReference = nextPartId++), formData.set(formFieldPrefix + parentReference, key), - "$F" + parentReference.toString(16) + "$h" + parentReference.toString(16) ); if ( void 0 !== temporaryReferences && @@ -741,12 +750,12 @@ function readChunk(chunk) { throw chunk.reason; } } -function wakeChunk(response, listeners, value) { +function wakeChunk(response, listeners, value, chunk) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; "function" === typeof listener ? listener(value) - : fulfillReference(response, listener, value); + : fulfillReference(response, listener, value, chunk); } } function rejectChunk(response, listeners, error) { @@ -786,7 +795,7 @@ function wakeChunkIfInitialized( ) { switch (chunk.status) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); break; case "blocked": for (var i = 0; i < resolveListeners.length; i++) { @@ -795,7 +804,7 @@ function wakeChunkIfInitialized( var cyclicHandler = resolveBlockedCycle(chunk, listener); if (null !== cyclicHandler) switch ( - (fulfillReference(response, listener, cyclicHandler.value), + (fulfillReference(response, listener, cyclicHandler.value, chunk), resolveListeners.splice(i, 1), i--, null !== rejectListeners && @@ -804,7 +813,7 @@ function wakeChunkIfInitialized( chunk.status) ) { case "fulfilled": - wakeChunk(response, resolveListeners, chunk.value); + wakeChunk(response, resolveListeners, chunk.value, chunk); return; case "rejected": null !== rejectListeners && @@ -880,6 +889,7 @@ function resolveModuleChunk(response, chunk, value) { rejectListeners = chunk.reason; chunk.status = "resolved_module"; chunk.value = value; + chunk.reason = null; null !== resolveListeners && (initializeModuleChunk(chunk), wakeChunkIfInitialized( @@ -942,8 +952,11 @@ function reportGlobalError(weakResponse, error) { weakResponse._closed = !0; weakResponse._closedReason = error; weakResponse._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(weakResponse, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(weakResponse, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function createLazyChunkWrapper(chunk) { @@ -960,109 +973,120 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + for ( + ; + "object" === typeof value && + null !== value && + value.$$typeof === REACT_LAZY_TYPE; + + ) { + var referencedChunk = value._payload; + if (referencedChunk === handler.chunk) value = handler.value; + else { + switch (referencedChunk.status) { + case "resolved_model": + initializeModelChunk(referencedChunk); + break; + case "resolved_module": + initializeModuleChunk(referencedChunk); + } + switch (referencedChunk.status) { + case "fulfilled": + value = referencedChunk.value; + continue; + case "blocked": + var cyclicHandler = resolveBlockedCycle( + referencedChunk, + reference + ); + if (null !== cyclicHandler) { + value = cyclicHandler.value; + continue; + } + case "pending": + path.splice(0, i - 1); + null === referencedChunk.value + ? (referencedChunk.value = [reference]) + : referencedChunk.value.push(reference); + null === referencedChunk.reason + ? (referencedChunk.reason = [reference]) + : referencedChunk.reason.push(reference); + return; + case "halted": + return; + default: + rejectReference( + response, + reference.handler, + referencedChunk.reason + ); + return; + } + } + } + value = value[path[i]]; + } for ( ; "object" === typeof value && null !== value && value.$$typeof === REACT_LAZY_TYPE; - ) - if (((value = value._payload), value === handler.chunk)) - value = handler.value; + ) { + var referencedChunk$43 = value._payload; + if (referencedChunk$43 === handler.chunk) value = handler.value; else { - switch (value.status) { + switch (referencedChunk$43.status) { case "resolved_model": - initializeModelChunk(value); + initializeModelChunk(referencedChunk$43); break; case "resolved_module": - initializeModuleChunk(value); + initializeModuleChunk(referencedChunk$43); } - switch (value.status) { + switch (referencedChunk$43.status) { case "fulfilled": - value = value.value; + value = referencedChunk$43.value; continue; - case "blocked": - var cyclicHandler = resolveBlockedCycle(value, reference); - if (null !== cyclicHandler) { - value = cyclicHandler.value; - continue; - } - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - case "halted": - return; - default: - rejectReference(response, reference.handler, value.reason); - return; } + break; } - value = value[path[i]]; - } - for ( - ; - "object" === typeof value && - null !== value && - value.$$typeof === REACT_LAZY_TYPE; - - ) - if (((reference = value._payload), reference === handler.chunk)) - value = handler.value; - else { - switch (reference.status) { - case "resolved_model": - initializeModelChunk(reference); - break; - case "resolved_module": - initializeModuleChunk(reference); - } - switch (reference.status) { - case "fulfilled": - value = reference.value; - continue; - } - break; } - map = map(response, value, parentObject, key); - parentObject[key] = map; - "" === key && null === handler.value && (handler.value = map); - if ( - parentObject[0] === REACT_ELEMENT_TYPE && - "object" === typeof handler.value && - null !== handler.value && - handler.value.$$typeof === REACT_ELEMENT_TYPE - ) - switch (((parentObject = handler.value), key)) { - case "3": - parentObject.props = map; + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + if ( + parentObject[0] === REACT_ELEMENT_TYPE && + "object" === typeof handler.value && + null !== handler.value && + handler.value.$$typeof === REACT_ELEMENT_TYPE + ) { + var element = handler.value; + switch (key) { + case "3": + element.props = mappedValue; + } } + } catch (error) { + rejectReference(response, reference.handler, error); + return; + } handler.deps--; 0 === handler.deps && - ((key = handler.chunk), - null !== key && - "blocked" === key.status && - ((parentObject = key.value), - (key.status = "fulfilled"), - (key.value = handler.value), - (key.reason = handler.reason), - null !== parentObject && - wakeChunk(response, parentObject, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value, reference))); } function rejectReference(response, handler, error) { handler.errored || @@ -1180,7 +1204,9 @@ function loadServerReference(response, metaData, parentObject, key) { ((boundArgs = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), - null !== boundArgs && wakeChunk(response, boundArgs, handler.value))); + (resolvedValue.reason = null), + null !== boundArgs && + wakeChunk(response, boundArgs, handler.value, resolvedValue))); }, function (error) { if (!handler.errored) { @@ -1385,7 +1411,7 @@ function parseModelString(response, parentObject, key, value) { ); case "S": return Symbol.for(value.slice(2)); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel( @@ -1532,12 +1558,13 @@ function resolveStream(response, id, stream, controller) { (chunk.status = "fulfilled"), (chunk.value = stream), (chunk.reason = controller), - null !== id && wakeChunk(response, id, chunk.value)) + null !== id && wakeChunk(response, id, chunk.value, chunk)) : ((response = new ReactPromise("fulfilled", stream, controller)), chunks.set(id, response)); } function startReadableStream(response, id, type) { - var controller = null; + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -1587,24 +1614,27 @@ function startReadableStream(response, id, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); } @@ -1658,6 +1688,7 @@ function startAsyncIterable(response, id, iterator) { rejectListeners = chunk.reason; chunk.status = "fulfilled"; chunk.value = { done: !1, value: value }; + chunk.reason = null; null !== resolveListeners && wakeChunkIfInitialized( response, @@ -1684,36 +1715,46 @@ function startAsyncIterable(response, id, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } } ); 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 7bae2c5a40024..78a5759d19f32 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 @@ -2132,7 +2132,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2158,7 +2158,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2552,7 +2552,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3130,7 +3130,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4096,6 +4096,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4199,6 +4200,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4209,8 +4211,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4232,58 +4237,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4295,33 +4283,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4332,59 +4293,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4424,9 +4373,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4455,6 +4405,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4489,7 +4440,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4536,24 +4490,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4568,6 +4526,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4608,36 +4568,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4651,7 +4621,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -4925,6 +4895,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5310,7 +5287,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5342,7 +5319,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5357,7 +5350,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5485,7 +5480,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 c3e48c1fbf98f..7d67ffcb7fed1 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 @@ -101,7 +101,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -820,7 +827,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1700,7 +1707,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1751,7 +1758,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1763,7 +1770,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2278,7 +2285,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2291,6 +2314,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2468,6 +2493,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2559,6 +2585,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2569,7 +2596,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2587,58 +2618,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2650,33 +2664,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2687,53 +2674,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2772,9 +2748,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2800,6 +2777,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2832,7 +2810,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2875,24 +2856,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2907,6 +2891,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2950,36 +2936,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -2991,7 +2987,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3252,7 +3248,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 ac11043c5690c..d72ee1229843b 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 @@ -2192,7 +2192,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2218,7 +2218,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2612,7 +2612,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3200,7 +3200,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4166,6 +4166,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4269,6 +4270,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4279,8 +4281,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4302,58 +4307,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4365,33 +4353,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4402,59 +4363,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4494,9 +4443,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4525,6 +4475,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -4559,7 +4510,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -4606,24 +4560,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -4638,6 +4596,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -4678,36 +4638,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -4721,7 +4691,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5003,6 +4973,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -5380,7 +5357,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -5404,7 +5381,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -5419,7 +5412,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -5586,7 +5581,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 1f11a2a7672ee..eed2085d59306 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 @@ -112,7 +112,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -811,7 +818,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1699,7 +1706,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1750,7 +1757,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1762,7 +1769,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2273,7 +2280,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2286,6 +2309,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2463,6 +2488,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2554,6 +2580,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2564,7 +2591,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2582,58 +2613,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2645,33 +2659,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2682,53 +2669,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2767,9 +2743,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2795,6 +2772,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2827,7 +2805,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2870,24 +2851,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2902,6 +2886,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2945,36 +2931,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -2986,7 +2982,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3285,7 +3281,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToReadableStream = function (model, webpackMap, options) { 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 d0dc1fb9f25fc..012357a2bb676 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 @@ -2440,7 +2440,7 @@ function serializeServerReference(request, serverReference) { var writtenServerReferences = request.writtenServerReferences, existingId = writtenServerReferences.get(serverReference); - if (void 0 !== existingId) return "$F" + existingId.toString(16); + if (void 0 !== existingId) return "$h" + existingId.toString(16); existingId = serverReference.$$bound; existingId = null === existingId ? null : Promise.resolve(existingId); var id = serverReference.$$id, @@ -2466,7 +2466,7 @@ : { id: id, bound: existingId }; request = outlineModel(request, existingId); writtenServerReferences.set(serverReference, request); - return "$F" + request.toString(16); + return "$h" + request.toString(16); } function serializeLargeTextString(request, text) { request.pendingChunks++; @@ -2860,7 +2860,7 @@ if (value instanceof Date) return "$D" + value.toJSON(); elementReference = getPrototypeOf(value); if ( - elementReference !== ObjectPrototype && + elementReference !== ObjectPrototype$1 && (null === elementReference || null !== getPrototypeOf(elementReference)) ) @@ -3538,7 +3538,7 @@ return serializeDebugBlob(request, value); if (getIteratorFn(value)) return Array.from(value); request = getPrototypeOf(value); - if (request !== ObjectPrototype && null !== request) { + if (request !== ObjectPrototype$1 && null !== request) { counter = Object.create(null); for (env in value) if (hasOwnProperty.call(value, env) || isGetter(request, env)) @@ -4613,6 +4613,7 @@ ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -4716,6 +4717,7 @@ } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -4726,8 +4728,11 @@ response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && - triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -4749,58 +4754,41 @@ return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -4812,33 +4800,6 @@ "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } - function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path - ) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; - } function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -4849,59 +4810,47 @@ } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference( - id, - parentObject, - key, - response, - map, - reference + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { + chunk: null, + value: null, + reason: null, + deps: 1, + errored: !1 + }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null ); default: return ( @@ -4941,9 +4890,10 @@ parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -4972,6 +4922,7 @@ var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -5006,7 +4957,10 @@ } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -5053,24 +5007,28 @@ } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -5085,6 +5043,8 @@ } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -5125,36 +5085,46 @@ nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( - response, - value, - !0 - )) - : resolveIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -5168,7 +5138,7 @@ return ( (obj = parseInt(value.slice(2), 16)), getChunk(response, obj) ); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -5508,6 +5478,13 @@ SERVER_REFERENCE_TAG = Symbol.for("react.server.reference"), FunctionBind = Function.prototype.bind, ArraySlice = Array.prototype.slice, + serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { @@ -6059,7 +6036,7 @@ patchConsole(console, "table"), patchConsole(console, "trace"), patchConsole(console, "warn")); - var ObjectPrototype = Object.prototype, + var ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify, ABORTING = 12, CLOSED = 14, @@ -6083,7 +6060,23 @@ } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -6098,7 +6091,9 @@ "function" === typeof reject && reject(this.reason); } }; - var initializingHandler = null; + var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype, + initializingHandler = null; exports.createClientModuleProxy = function (moduleId) { moduleId = registerClientReferenceImpl({}, moduleId, !1); return new Proxy(moduleId, proxyHandlers$1); @@ -6226,13 +6221,13 @@ ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_276 = []; + var JSCompiler_object_inline_chunks_286 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_276.push(chunk); + JSCompiler_object_inline_chunks_286.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_276, { + var blob = new Blob(JSCompiler_object_inline_chunks_286, { type: mimeType }); response._formData.append(name, blob, filename); @@ -6366,7 +6361,8 @@ }, $$bound: { value: null, configurable: !0 }, $$location: { value: Error("react-stack-top-frame"), configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, webpackMap, options) { 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 226176962c885..ca72129c7453f 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 @@ -139,7 +139,14 @@ function bind() { } return newFn; } -var PROMISE_PROTOTYPE = Promise.prototype, +var serverReferenceToString = { + value: function () { + return "function () { [omitted code] }"; + }, + configurable: !0, + writable: !0 + }, + PROMISE_PROTOTYPE = Promise.prototype, deepProxyHandlers = { get: function (target, name) { switch (name) { @@ -837,7 +844,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) { : "\n " + str; } var hasOwnProperty = Object.prototype.hasOwnProperty, - ObjectPrototype = Object.prototype, + ObjectPrototype$1 = Object.prototype, stringify = JSON.stringify; function defaultErrorHandler(error) { console.error(error); @@ -1719,7 +1726,7 @@ function renderModelDestructive( if (value instanceof Date) return "$D" + value.toJSON(); request = getPrototypeOf(value); if ( - request !== ObjectPrototype && + request !== ObjectPrototype$1 && (null === request || null !== getPrototypeOf(request)) ) throw Error( @@ -1770,7 +1777,7 @@ function renderModelDestructive( (task = request.writtenServerReferences), (parentPropertyName = task.get(value)), void 0 !== parentPropertyName - ? (request = "$F" + parentPropertyName.toString(16)) + ? (request = "$h" + parentPropertyName.toString(16)) : ((parentPropertyName = value.$$bound), (parentPropertyName = null === parentPropertyName @@ -1782,7 +1789,7 @@ function renderModelDestructive( 0 )), task.set(value, request), - (request = "$F" + request.toString(16))), + (request = "$h" + request.toString(16))), request ); if ( @@ -2303,7 +2310,23 @@ ReactPromise.prototype.then = function (resolve, reject) { } switch (this.status) { case "fulfilled": - "function" === typeof resolve && resolve(this.value); + if ("function" === typeof resolve) { + for ( + var inspectedValue = this.value; + inspectedValue instanceof ReactPromise; + + ) { + if (inspectedValue === this) { + "function" === typeof reject && + reject(Error("Cannot have cyclic thenables.")); + return; + } + if ("fulfilled" === inspectedValue.status) + inspectedValue = inspectedValue.value; + else break; + } + resolve(this.value); + } break; case "pending": case "blocked": @@ -2316,6 +2339,8 @@ ReactPromise.prototype.then = function (resolve, reject) { "function" === typeof reject && reject(this.reason); } }; +var ObjectPrototype = Object.prototype, + ArrayPrototype = Array.prototype; function wakeChunk(response, listeners, value) { for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; @@ -2493,6 +2518,7 @@ function loadServerReference$1(response, metaData, parentObject, key) { ((promiseValue = resolvedValue.value), (resolvedValue.status = "fulfilled"), (resolvedValue.value = handler.value), + (resolvedValue.reason = null), null !== promiseValue && wakeChunk(response, promiseValue, handler.value))); }, @@ -2584,6 +2610,7 @@ function initializeModelChunk(chunk) { } chunk.status = "fulfilled"; chunk.value = value; + chunk.reason = null; } catch (error) { (chunk.status = "rejected"), (chunk.reason = error); } finally { @@ -2594,7 +2621,11 @@ function reportGlobalError(response, error) { response._closed = !0; response._closedReason = error; response._chunks.forEach(function (chunk) { - "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error); + "pending" === chunk.status + ? triggerErrorOnChunk(response, chunk, error) + : "fulfilled" === chunk.status && + null !== chunk.reason && + chunk.reason.error(error); }); } function getChunk(response, id) { @@ -2612,58 +2643,41 @@ function getChunk(response, id) { return chunk; } function fulfillReference(response, reference, value) { - for ( - var handler = reference.handler, - parentObject = reference.parentObject, - key = reference.key, - map = reference.map, - path = reference.path, - i = 1; - i < path.length; - i++ - ) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - continue; - case "blocked": - case "pending": - path.splice(0, i - 1); - null === value.value - ? (value.value = [reference]) - : value.value.push(reference); - null === value.reason - ? (value.reason = [reference]) - : value.reason.push(reference); - return; - default: - rejectReference(response, reference.handler, value.reason); - return; - } + var handler = reference.handler, + parentObject = reference.parentObject, + key = reference.key, + map = reference.map, + path = reference.path; + try { + for (var i = 1; i < path.length; i++) { + var name = path[i]; + if ( + "object" !== typeof value || + null === value || + (getPrototypeOf(value) !== ObjectPrototype && + getPrototypeOf(value) !== ArrayPrototype) || + !hasOwnProperty.call(value, name) + ) + throw Error("Invalid reference."); + value = value[name]; } - var name = path[i]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + var mappedValue = map(response, value, parentObject, key); + parentObject[key] = mappedValue; + "" === key && null === handler.value && (handler.value = mappedValue); + } catch (error) { + rejectReference(response, reference.handler, error); + return; } - reference = map(response, value, parentObject, key); - parentObject[key] = reference; - "" === key && null === handler.value && (handler.value = reference); handler.deps--; 0 === handler.deps && - ((parentObject = handler.chunk), - null !== parentObject && - "blocked" === parentObject.status && - ((key = parentObject.value), - (parentObject.status = "fulfilled"), - (parentObject.value = handler.value), - (parentObject.reason = handler.reason), - null !== key && wakeChunk(response, key, handler.value))); + ((reference = handler.chunk), + null !== reference && + "blocked" === reference.status && + ((value = reference.value), + (reference.status = "fulfilled"), + (reference.value = handler.value), + (reference.reason = handler.reason), + null !== value && wakeChunk(response, value, handler.value))); } function rejectReference(response, handler, error) { handler.errored || @@ -2675,33 +2689,6 @@ function rejectReference(response, handler, error) { "blocked" === handler.status && triggerErrorOnChunk(response, handler, error)); } -function waitForReference( - referencedChunk, - parentObject, - key, - response, - map, - path -) { - initializingHandler - ? ((response = initializingHandler), response.deps++) - : (response = initializingHandler = - { chunk: null, value: null, reason: null, deps: 1, errored: !1 }); - parentObject = { - handler: response, - parentObject: parentObject, - key: key, - map: map, - path: path - }; - null === referencedChunk.value - ? (referencedChunk.value = [parentObject]) - : referencedChunk.value.push(parentObject); - null === referencedChunk.reason - ? (referencedChunk.reason = [parentObject]) - : referencedChunk.reason.push(parentObject); - return null; -} function getOutlinedModel(response, reference, parentObject, key, map) { reference = reference.split(":"); var id = parseInt(reference[0], 16); @@ -2712,53 +2699,42 @@ function getOutlinedModel(response, reference, parentObject, key, map) { } switch (id.status) { case "fulfilled": - var value = id.value; - for (id = 1; id < reference.length; id++) { - for (; value instanceof ReactPromise; ) { - switch (value.status) { - case "resolved_model": - initializeModelChunk(value); - } - switch (value.status) { - case "fulfilled": - value = value.value; - break; - case "blocked": - case "pending": - return waitForReference( - value, - parentObject, - key, - response, - map, - reference.slice(id - 1) - ); - default: - return ( - initializingHandler - ? ((initializingHandler.errored = !0), - (initializingHandler.value = null), - (initializingHandler.reason = value.reason)) - : (initializingHandler = { - chunk: null, - value: null, - reason: value.reason, - deps: 0, - errored: !0 - }), - null - ); - } - } - var name = reference[id]; - "object" === typeof value && - hasOwnProperty.call(value, name) && - (value = value[name]); + id = id.value; + for (var i = 1; i < reference.length; i++) { + var name = reference[i]; + if ( + "object" !== typeof id || + null === id || + (getPrototypeOf(id) !== ObjectPrototype && + getPrototypeOf(id) !== ArrayPrototype) || + !hasOwnProperty.call(id, name) + ) + throw Error("Invalid reference."); + id = id[name]; } - return map(response, value, parentObject, key); + return map(response, id, parentObject, key); case "pending": case "blocked": - return waitForReference(id, parentObject, key, response, map, reference); + return ( + initializingHandler + ? ((response = initializingHandler), response.deps++) + : (response = initializingHandler = + { chunk: null, value: null, reason: null, deps: 1, errored: !1 }), + (parentObject = { + handler: response, + parentObject: parentObject, + key: key, + map: map, + path: reference + }), + null === id.value + ? (id.value = [parentObject]) + : id.value.push(parentObject), + null === id.reason + ? (id.reason = [parentObject]) + : id.reason.push(parentObject), + null + ); default: return ( initializingHandler @@ -2797,9 +2773,10 @@ function parseTypedArray( parentKey ) { reference = parseInt(reference.slice(2), 16); - reference = response._formData - .get(response._prefix + reference) - .arrayBuffer(); + bytesPerElement = response._prefix + reference; + if (response._chunks.has(reference)) + throw Error("Already initialized typed array."); + reference = response._formData.get(bytesPerElement).arrayBuffer(); if (initializingHandler) { var handler = initializingHandler; handler.deps++; @@ -2825,6 +2802,7 @@ function parseTypedArray( var resolveListeners = buffer.value; buffer.status = "fulfilled"; buffer.value = handler.value; + buffer.reason = null; null !== resolveListeners && wakeChunk(response, resolveListeners, handler.value); } @@ -2857,7 +2835,10 @@ function resolveStream(response, id, stream, controller) { } function parseReadableStream(response, reference, type) { reference = parseInt(reference.slice(2), 16); - var controller = null; + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); + var controller = null, + closed = !1; type = new ReadableStream({ type: type, start: function (c) { @@ -2900,24 +2881,27 @@ function parseReadableStream(response, reference, type) { } }, close: function () { - if (null === previousBlockedChunk) controller.close(); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.close(); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) controller.close(); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.close(); + }); + } }, error: function (error) { - if (null === previousBlockedChunk) controller.error(error); - else { - var blockedChunk = previousBlockedChunk; - previousBlockedChunk = null; - blockedChunk.then(function () { - return controller.error(error); - }); - } + if (!closed) + if (((closed = !0), null === previousBlockedChunk)) + controller.error(error); + else { + var blockedChunk = previousBlockedChunk; + previousBlockedChunk = null; + blockedChunk.then(function () { + return controller.error(error); + }); + } } }); return type; @@ -2932,6 +2916,8 @@ function createIterator(next) { } function parseAsyncIterable(response, reference, iterator) { reference = parseInt(reference.slice(2), 16); + if (response._chunks.has(reference)) + throw Error("Already initialized stream."); var buffer = [], closed = !1, nextWriteIndex = 0, @@ -2975,36 +2961,46 @@ function parseAsyncIterable(response, reference, iterator) { nextWriteIndex++; }, close: function (value) { - closed = !0; - nextWriteIndex === buffer.length - ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length + ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk( + response, + value, + !0 + )) + : resolveIteratorResultChunk( + response, + buffer[nextWriteIndex], + value, + !0 + ), + nextWriteIndex++; + nextWriteIndex < buffer.length; + + ) + resolveIteratorResultChunk( response, - value, - !0 - )) - : resolveIteratorResultChunk( - response, - buffer[nextWriteIndex], - value, + buffer[nextWriteIndex++], + '"$undefined"', !0 ); - for (nextWriteIndex++; nextWriteIndex < buffer.length; ) - resolveIteratorResultChunk( - response, - buffer[nextWriteIndex++], - '"$undefined"', - !0 - ); }, error: function (error) { - closed = !0; - for ( - nextWriteIndex === buffer.length && - (buffer[nextWriteIndex] = new ReactPromise("pending", null, null)); - nextWriteIndex < buffer.length; + if (!closed) + for ( + closed = !0, + nextWriteIndex === buffer.length && + (buffer[nextWriteIndex] = new ReactPromise( + "pending", + null, + null + )); + nextWriteIndex < buffer.length; - ) - triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); + ) + triggerErrorOnChunk(response, buffer[nextWriteIndex++], error); } }); return iterator; @@ -3016,7 +3012,7 @@ function parseModelString(response, obj, key, value, reference) { return value.slice(1); case "@": return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj); - case "F": + case "h": return ( (value = value.slice(2)), getOutlinedModel(response, value, obj, key, loadServerReference$1) @@ -3327,13 +3323,13 @@ exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) { ); else { pendingFiles++; - var JSCompiler_object_inline_chunks_281 = []; + var JSCompiler_object_inline_chunks_291 = []; value.on("data", function (chunk) { - JSCompiler_object_inline_chunks_281.push(chunk); + JSCompiler_object_inline_chunks_291.push(chunk); }); value.on("end", function () { try { - var blob = new Blob(JSCompiler_object_inline_chunks_281, { + var blob = new Blob(JSCompiler_object_inline_chunks_291, { type: mimeType }); response._formData.append(name, blob, filename); @@ -3460,7 +3456,8 @@ exports.registerServerReference = function (reference, id, exportName) { configurable: !0 }, $$bound: { value: null, configurable: !0 }, - bind: { value: bind, configurable: !0 } + bind: { value: bind, configurable: !0 }, + toString: serverReferenceToString }); }; exports.renderToPipeableStream = function (model, webpackMap, options) { 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 716e0d3681eb9..b27806f16c611 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/package.json +++ b/packages/next/src/compiled/react-server-dom-webpack/package.json @@ -52,8 +52,8 @@ "webpack-sources": "^3.2.0" }, "peerDependencies": { - "react": "19.3.0-canary-55480b4d-20251208", - "react-dom": "19.3.0-canary-55480b4d-20251208", + "react": "19.3.0-canary-80cb7a99-20251211", + "react-dom": "19.3.0-canary-80cb7a99-20251211", "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 938e2c5868b2c..bad9ca990c05b 100644 --- a/packages/next/src/compiled/react/cjs/react.development.js +++ b/packages/next/src/compiled/react/cjs/react.development.js @@ -1322,7 +1322,7 @@ exports.useTransition = function () { return resolveDispatcher().useTransition(); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; "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 16661760d1030..d827fc133c80f 100644 --- a/packages/next/src/compiled/react/cjs/react.production.js +++ b/packages/next/src/compiled/react/cjs/react.production.js @@ -554,4 +554,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; 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 7316994d343f8..1ed2037858ae7 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 @@ -874,5 +874,5 @@ exports.useMemo = function (create, deps) { return resolveDispatcher().useMemo(create, deps); }; - exports.version = "19.3.0-canary-55480b4d-20251208"; + exports.version = "19.3.0-canary-80cb7a99-20251211"; })(); 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 9f69c994b45a1..a2cb1a2976276 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 @@ -425,4 +425,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.3.0-canary-55480b4d-20251208"; +exports.version = "19.3.0-canary-80cb7a99-20251211"; diff --git a/packages/next/src/compiled/unistore/unistore.js b/packages/next/src/compiled/unistore/unistore.js index 57c6e14e70eac..d687b6d24b904 100644 --- a/packages/next/src/compiled/unistore/unistore.js +++ b/packages/next/src/compiled/unistore/unistore.js @@ -1 +1 @@ -(()=>{var t={578: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={752: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=14.0.0'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -2881,8 +2881,8 @@ packages: resolution: {integrity: sha512-9+uaWyF1o/PgXqHLJnC81IIG0HlV3o9eFCQ5hWZDMx5NHrFk0rrwqEFGQOB8lti/rnbxNPi+kYYw1D4e8xSn/Q==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -3034,7 +3034,7 @@ packages: resolution: {integrity: sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -3051,7 +3051,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks@1.0.1': resolution: {integrity: sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@emotion/utils@1.2.1': resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==} @@ -3556,20 +3556,20 @@ packages: '@floating-ui/react-dom@2.1.0': resolution: {integrity: sha512-lNzj5EQmEKn5FFKc04+zasr09h/uX8RtJRNj5gUXsSQIXHVWTVh+hVAg1vOMCexkX8EgvemMvIFpQfkosnVNyA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 '@floating-ui/react-dom@2.1.5': resolution: {integrity: sha512-HDO/1/1oH9fjj4eLgegrlH3dklZpHtUYYFiVwMUwfGvk9jWDRWqkklA2/NFScknrcNSspbV868WjXORvreDX+Q==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 '@floating-ui/react@0.26.16': resolution: {integrity: sha512-HEf43zxZNAI/E781QIVpYSF3K2VH4TTYZpqecjdsFkjsaU1EbaWcM++kw0HXFffj7gDUcBFevX8s0rQGQpxkow==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 '@floating-ui/utils@0.2.10': resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} @@ -4292,13 +4292,13 @@ packages: resolution: {integrity: sha512-l9ypojKN3PjwO1CSLIsqxi7mA25+7w+xc71Q+JuCCREI0tuGwkZsKbIOpuTATIJOjPh8ycLiW7QxX1LYsRTq6w==} peerDependencies: '@mantine/hooks': 7.10.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 '@mantine/hooks@7.11.2': resolution: {integrity: sha512-jhyVe/sbDEG2U8rr2lMecUPgQxcfr5hh9HazqGfkS7ZRIMDO7uJ947yAcTMGGkp5Lxtt5TBFt1Cb6tiB2/1agg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@mapbox/node-pre-gyp@1.0.5': resolution: {integrity: sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==} @@ -4318,13 +4318,13 @@ packages: '@mdx-js/react@2.2.1': resolution: {integrity: sha512-YdXcMcEnqZhzql98RNrqYo9cEhTTesBiCclEtoiQUbJwx87q9453GTapYU6kJ8ZZ2ek1Vp25SiAXEFy5O/eAPw==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@mdx-js/react@3.1.0': resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@modelcontextprotocol/sdk@1.18.1': resolution: {integrity: sha512-d//GE8/Yh7aC3e7p+kZG8JqqEAwwDUmAfvH1quogtbk+ksS6E0RR6toKKESPYYZVre0meqkJb27zb+dhqE9Sgw==} @@ -4873,8 +4873,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4886,8 +4886,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4899,8 +4899,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4912,8 +4912,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4925,8 +4925,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4938,8 +4938,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4950,7 +4950,7 @@ packages: resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4959,7 +4959,7 @@ packages: resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4968,7 +4968,7 @@ packages: resolution: {integrity: sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4977,7 +4977,7 @@ packages: resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -4987,8 +4987,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5000,8 +5000,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5012,7 +5012,7 @@ packages: resolution: {integrity: sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5021,7 +5021,7 @@ packages: resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5031,8 +5031,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5044,8 +5044,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5056,7 +5056,7 @@ packages: resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5065,7 +5065,7 @@ packages: resolution: {integrity: sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5075,8 +5075,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5088,8 +5088,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5100,7 +5100,7 @@ packages: resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5109,7 +5109,7 @@ packages: resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5119,8 +5119,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5132,8 +5132,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5145,8 +5145,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5158,8 +5158,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5171,8 +5171,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5184,8 +5184,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5197,8 +5197,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5210,8 +5210,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5223,8 +5223,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5236,8 +5236,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5249,8 +5249,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5262,8 +5262,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5275,8 +5275,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5288,8 +5288,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5300,7 +5300,7 @@ packages: resolution: {integrity: sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5309,7 +5309,7 @@ packages: resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5319,8 +5319,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5332,8 +5332,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5345,8 +5345,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5357,7 +5357,7 @@ packages: resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5366,7 +5366,7 @@ packages: resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5375,7 +5375,7 @@ packages: resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5384,7 +5384,7 @@ packages: resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5393,7 +5393,7 @@ packages: resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5402,7 +5402,7 @@ packages: resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5411,7 +5411,7 @@ packages: resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5420,7 +5420,7 @@ packages: resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5429,7 +5429,7 @@ packages: resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5438,7 +5438,7 @@ packages: resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5447,7 +5447,7 @@ packages: resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5456,7 +5456,7 @@ packages: resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5465,7 +5465,7 @@ packages: resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5474,7 +5474,7 @@ packages: resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5484,8 +5484,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -5763,8 +5763,8 @@ packages: '@storybook/blocks@8.6.0': resolution: {integrity: sha512-3PNxlB5Ooj8CIhttbDxeV6kW7ui+2GEdTngtqhnsUHVjzeTKpilsk2lviOeUzqlyq5FDK+rhpZ3L3DJ9pDvioA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 storybook: ^8.6.0 peerDependenciesMeta: react: @@ -5814,8 +5814,8 @@ packages: resolution: {integrity: sha512-Nz/UzeYQdUZUhacrPyfkiiysSjydyjgg/p0P9HxB4p/WaJUUjMAcaoaLgy3EXx61zZJ3iD36WPuDkZs5QYrA0A==} engines: {node: '>=14.0.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 '@storybook/instrumenter@8.6.0': resolution: {integrity: sha512-eEY/Hfa3Vj5Nv4vHRHlSqjoyW6oAKNK3rKIXfL/eawQwb7rKhzijDLG5YBH44Hh7dEPIqUp0LEdgpyIY7GXezg==} @@ -5831,8 +5831,8 @@ packages: resolution: {integrity: sha512-04T86VG0UJtiozgZkTR5sY1qM3E0Rgwqwllvyy7kFFdkV+Sv/VsPjW9sC38s9C8FtCYRL8pJZz81ey3oylpIMA==} engines: {node: '>=18.0.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 storybook: ^8.6.0 typescript: '*' peerDependenciesMeta: @@ -5853,16 +5853,16 @@ packages: '@storybook/react-dom-shim@8.6.0': resolution: {integrity: sha512-5Y+vMHhcx0xnaNsLQMbkmjc3zkDn/fGBNsiLH2e4POvW3ZQvOxjoyxAsEQaKwLtFgsdCFSd2tR89F6ItYrA2JQ==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 storybook: ^8.6.0 '@storybook/react-webpack5@8.6.0': resolution: {integrity: sha512-2L9CYDPn1OL0B8K5EU/Wpo9Slg8f0vkYPaPioQnmcK3Q4SJR4JAuDVWHUtNdxhaPOkHIy887Tfrf6BEC/blMaQ==} engines: {node: '>=18.0.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 storybook: ^8.6.0 typescript: '>= 4.2.x' peerDependenciesMeta: @@ -5874,8 +5874,8 @@ packages: engines: {node: '>=18.0.0'} peerDependencies: '@storybook/test': 8.6.0 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 storybook: ^8.6.0 typescript: '>= 4.2.x' peerDependenciesMeta: @@ -6143,8 +6143,8 @@ packages: engines: {node: '>=18'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -8052,8 +8052,8 @@ packages: cmdk@1.0.4: resolution: {integrity: sha512-AnsjfHyHpQ/EFeAnG216WY7A5LiYCoZzCSygiLvfXC3H3LFGCprErteUcszaVluGOhuOTbJS3jWHrSDYPBBygg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 co@4.6.0: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} @@ -9703,8 +9703,8 @@ packages: peerDependencies: eslint: '>=8.0.0' - eslint-plugin-react-hooks@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-Dk8EUREvILBgEroygOUi/4GB5VUaNlBZGYR75euvapgX14IVWK/IfiaizaxTDcODSjgtr4VjCUqqBol1ATXvHA==} + eslint-plugin-react-hooks@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-FdgkEYejmUY/re7NyQ91G7y8KmXCCeXKXjY4knw8leyhkDg0YgWM8Is21UCj0IDclvQiIB2RoCAgEqiBGTufow==} engines: {node: '>=18'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 @@ -10339,8 +10339,8 @@ packages: '@types/react': 19.2.2 algoliasearch: 5.x.x next: 14.x.x || 15.x.x - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 react-router: 7.x.x waku: ^0.26.0 peerDependenciesMeta: @@ -10372,7 +10372,7 @@ packages: '@fumadocs/mdx-remote': ^1.4.0 fumadocs-core: ^14.0.0 || ^15.0.0 next: ^15.3.0 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 vite: 6.x.x || 7.x.x peerDependenciesMeta: '@fumadocs/mdx-remote': @@ -10389,8 +10389,8 @@ packages: peerDependencies: '@types/react': 19.2.2 next: 14.x.x || 15.x.x - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 tailwindcss: ^3.4.14 || ^4.0.0 peerDependenciesMeta: '@types/react': @@ -12668,12 +12668,12 @@ packages: lucide-react@0.383.0: resolution: {integrity: sha512-13xlG0CQCJtzjSQYwwJ3WRqMHtRj3EXmLlorrARt7y+IHnxUCp3XyFNL1DfaGySWxHObDvnu1u1dV+0VMKHUSg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 lucide-react@0.554.0: resolution: {integrity: sha512-St+z29uthEJVx0Is7ellNkgTEhaeSoA42I7JjOCBCrc5X6LYMGSv0P/2uS5HDLTExP5tpiqRD2PyUEOS6s9UXA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} @@ -13456,8 +13456,8 @@ packages: next-themes@0.4.6: resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 next-tick@1.0.0: resolution: {integrity: sha512-mc/caHeUcdjnC/boPWJefDr4KUIWQNv+tlnFnJd38QMou86QtxQzBJfxgGRzvx8jazYRqrVlaHarfO72uNxPOg==} @@ -13470,8 +13470,8 @@ packages: '@opentelemetry/api': ^1.1.0 '@playwright/test': ^1.51.1 babel-plugin-react-compiler: '*' - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 sass: ^1.3.0 peerDependenciesMeta: '@opentelemetry/api': @@ -13491,8 +13491,8 @@ packages: '@opentelemetry/api': ^1.1.0 '@playwright/test': ^1.51.1 babel-plugin-react-compiler: '*' - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 sass: ^1.3.0 peerDependenciesMeta: '@opentelemetry/api': @@ -15334,23 +15334,23 @@ packages: resolution: {integrity: sha512-APPU8HB2uZnpl6Vt/+0AFoVYgSRtfiP6FLrZgPPTDmqSb2R4qZRbgd0A3VzIFxDt5e+Fozjx79WjLWnF69DK8g==} engines: {node: '>=16.14.0'} - react-dom@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-zGzv+TaOnRHg25+iVUsQ7B9kG9ECH3BHvzTdSQQSfRkj+mTjOwgDPL6kbaCS62zSxGKJFwUXu0oPBKfthfoC4A==} + react-dom@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-EIl0aDFX+0vXz3uYRUs3sWehqKZiSa657qh/lbZkbgt+rGLPulAsAUH42IKiWoZz+W5jOcOMhXHPojeCnIgrsA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 - react-dom@19.3.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-od+ZTH77jkDmDXMuFuKRgRhRDRtfj9DwxEc1z7OqVgmPPOoemxYWL73qh31KXfG4jBsKPJUMwSeaQOgeyfLC9w==} + react-dom@19.3.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-fluLI43jQfTd8QsmF1XzShWrdSrjA+iHtbGZR+ICGsFUcsEFDNiA1PPIDxfi72ERjm/JY05CRzmF4OhUq9tRTg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-dom@19.3.0-canary-fd524fe0-20251121: resolution: {integrity: sha512-+M3m+8ysDcPmt7ncitPOX5O71OOKF6lq6INFZFUMJjEGDxvl4CS2D41DJG5MnXcwiWTZLAp/uILZtt4sKTRSyQ==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 - react-is@19.3.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-0rI1p3nBBsF+t5ZVyPeH2FU+0Xnuedr+wI3jtAI3W0Zr/Op653ljopYb8c+o3ORfSITeU73SXWfeosc8hWby+w==} + react-is@19.3.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-VR3puHR2M4WLSFfvJyCx3+DSKZ4gM6ieUafLR8kEqA30b7X9r5vKN90XGE+jP5rKZO7OZudyt0NXS9b80f6U/A==} react-is@19.3.0-canary-fd524fe0-20251121: resolution: {integrity: sha512-06VG41yCv5V7FPCLxo4hBaiLEoReJ35LK9VvEqveBJq5cbEhakZznJLnPU1oJ3CCrL4DyBsPXw9EiYlrOL8c3Q==} @@ -15361,14 +15361,14 @@ packages: react-medium-image-zoom@5.3.0: resolution: {integrity: sha512-RCIzVlsKqy3BYgGgYbolUfuvx0aSKC7YhX/IJGEp+WJxsqdIVYJHkBdj++FAj6VD7RiWj6VVmdCfa/9vJE9hZg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 react-number-format@5.4.0: resolution: {integrity: sha512-NWdICrqLhI7rAS8yUeLVd6Wr4cN7UjJ9IBTS0f/a9i7UB4x4Ti70kGnksBtZ7o4Z7YRbvCMMR/jQmkoOBa/4fg==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 react-refresh@0.12.0: resolution: {integrity: sha512-suLIhrU2IHKL5JEKR/fAwJv7bbeq4kJ+pJopf77jHwuR+HmJS/HbrPIGsTBUVfw7tXPOmYv7UJ7PCaN49e8x4A==} @@ -15379,7 +15379,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -15389,7 +15389,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -15399,7 +15399,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -15409,58 +15409,58 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true - react-server-dom-turbopack@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-RCEIRA2P9eMvJXoHbSLsjAFxSnbTbjKdAh9nQFQRzJzPje4Tn34l1vnZWgXSvZXdPYCyG7XoYqTOEADAfJSVxw==} + react-server-dom-turbopack@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-SaQ/l9vcbXTk5C2AFHwfiTFi6UFY/WdDDtA/90XG/WeAhml3QqLkN8Bwn3UeElIBSDdd6QQRKSNIjwEvZnmwmA==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 - react-server-dom-turbopack@19.3.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-hD/pipq0FM8CeOruQy8lrrJ3qd6xGHpexjz7S6TR5C4GsTnGgYaRjm9ZWqWTKfkp/Xxj9bOsP9UpDNw9k8HBxg==} + react-server-dom-turbopack@19.3.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-ogLQCS7hd2H2Ei7A/TNYHGd6sRFAP2ZnhSpXT2mdF5AHa2mkmIEEYHmol60S5dMiWGW+6MjBS/wt3Of9GZJ5Iw==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 - react-server-dom-webpack@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-TgNHljP04J6ZY6pdCKZFhyoD1Db6urUSSn6Y2Nh5Is+Efkc3YJ4lxeLn4eZxHPISQEbbYEIO/+32PpoQn1AWCg==} + react-server-dom-webpack@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-BM1UxDg8fM/s4XnM3E7voTO2rFJLNePRu6rKI8XUgb4fQcqwN42j3wDtTdEFsH8FFoEhN6lKniP3e1B2dGlvNA==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 webpack: 5.98.0 - react-server-dom-webpack@19.3.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-+IwJ/wLsq4OtI7GnH0rMG8Au1R5vBSk6iTe94Fhia+5myTR4HjLvK/kHu9LdzzLh5oJXReTMHCpSbKoWQc0uaQ==} + react-server-dom-webpack@19.3.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-Kul1OMaHn326FiFTelo7ZXIe2IWfJFEmwHAIh9rNyamv8CQyGwrSWMtYp2J5/eHVt6fxu/OIDeMR3t2rPQ3n6A==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 webpack: 5.98.0 react-shallow-renderer@16.15.0: resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-ssr-prepass@1.0.8: resolution: {integrity: sha512-O0gfRA1SaK+9ITKxqfnXsej2jF+OHGP/+GxD4unROQaM/0/UczGF9fuF+wTboxaQoKdIf4FvS3h/OigWh704VA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-is: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-is: 19.3.0-canary-80cb7a99-20251211 react-style-singleton@2.2.1: resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -15470,7 +15470,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -15478,26 +15478,26 @@ packages: react-test-renderer@18.2.0: resolution: {integrity: sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-textarea-autosize@8.5.3: resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-virtualized@9.22.3: resolution: {integrity: sha512-MKovKMxWTcwPSxE1kK1HcheQTWfuCxAuBoSTf2gwyMM21NdX/PXUhnoP8Uc5dRKd+nKm8v41R36OellhdCpkrw==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211 - react@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-P0yYljLOBiqkPwAwpSbWkET5uipzX7qt16w31Tj2LxYRPPgZHygfc2GOzAk7QTAnDBeMmrbIB4K4VEAbsTrqzQ==} + react@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-HHiiRcI9h9iEBvUP7L9ty8rURehyrPmwwNmSIH3pc7UvMtr4cBNrkQADXtTc5XKDTvtLG9i0Nd8ZaWAVB9OT/A==} engines: {node: '>=0.10.0'} - react@19.3.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-ms5OdcsbyuCCp3WaGyh7UyKRU+NRa9pTcZMq9H/60xIO547eJg0MfoQZiVDB/+Psp6B3zNoC+/wMCi3g5DUMZQ==} + react@19.3.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-i11qdPc0ljxorCofZfojY+5RC2H9pOm9A3bJ5La9bAfilHW+I1bNgFHRvbWWtcpGDt8PUhDEZutlerJ+FCVGzg==} engines: {node: '>=0.10.0'} react@19.3.0-canary-fd524fe0-20251121: @@ -16124,11 +16124,11 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.0.0-experimental-55480b4d-20251208: - resolution: {integrity: sha512-0K6IlVgMIpWqe+4kbCREt0aT2IckA5QMRK+lj5MxQZ/HFQJ1/SCTu035d7D8n2pRvq8uHxHBqEYNYvHpHJyzhg==} + scheduler@0.0.0-experimental-80cb7a99-20251211: + resolution: {integrity: sha512-0QbU5wYK7PyeABCubAJ/Ui58dh/Qm/JqbQ+yc3zESn97aqTh2eRdnshTAUcWzmCzncijJgqXBZrku1YZA+IXKg==} - scheduler@0.28.0-canary-55480b4d-20251208: - resolution: {integrity: sha512-ZA3g4v/RepR32siMAeU0dFVAsJAXQhY4VQd4qEj4Q4qhK1BywtdVlrDuoHTR3LKX2e/06brUBVgdQmq2+c4DzA==} + scheduler@0.28.0-canary-80cb7a99-20251211: + resolution: {integrity: sha512-MbZ4090tWiRNAXHQM0uMHvuoWyafQD1WnICv7yaDILXPh89m++lo/Y+KnH/aOgODt11P6O2FFPXyRRfELypykw==} schema-utils@2.7.1: resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} @@ -16822,7 +16822,7 @@ packages: peerDependencies: '@babel/core': '*' babel-plugin-macros: '*' - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@babel/core': optional: true @@ -16909,7 +16909,7 @@ packages: swr@2.2.4: resolution: {integrity: sha512-njiZ/4RiIhoOlAaLYDqwz5qH/KZXVilRLvomrx83HjzCWTfa+InyfAjv05PSFxnmLzZkNO9ZfvgoqzAaEI4sGQ==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 symbol-observable@1.0.1: resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} @@ -17737,7 +17737,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17747,7 +17747,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17755,13 +17755,13 @@ packages: use-composed-ref@1.3.0: resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 use-isomorphic-layout-effect@1.1.2: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17770,7 +17770,7 @@ packages: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17780,7 +17780,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17790,7 +17790,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 peerDependenciesMeta: '@types/react': optional: true @@ -17798,7 +17798,7 @@ packages: use-sync-external-store@1.5.0: resolution: {integrity: sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A==} peerDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -19396,28 +19396,28 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@babel/runtime': 7.27.6 - '@base-ui-components/utils': 0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + '@base-ui-components/utils': 0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) reselect: 5.1.1 tabbable: 6.2.0 - use-sync-external-store: 1.5.0(react@19.3.0-canary-55480b4d-20251208) + use-sync-external-store: 1.5.0(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 - '@base-ui-components/utils@0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@base-ui-components/utils@0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@babel/runtime': 7.27.6 '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) reselect: 5.1.1 - use-sync-external-store: 1.5.0(react@19.3.0-canary-55480b4d-20251208) + use-sync-external-store: 1.5.0(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 @@ -19588,17 +19588,17 @@ snapshots: '@emotion/memoize@0.8.1': {} - '@emotion/react@11.11.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@emotion/react@11.11.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@babel/runtime': 7.27.0 '@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.3.0-canary-55480b4d-20251208) + '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@19.3.0-canary-80cb7a99-20251211) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 hoist-non-react-statics: 3.3.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 transitivePeerDependencies: @@ -19616,9 +19616,9 @@ snapshots: '@emotion/unitless@0.8.1': {} - '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-55480b4d-20251208)': + '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@emotion/utils@1.2.1': {} @@ -20041,11 +20041,11 @@ snapshots: react: 19.3.0-canary-fd524fe0-20251121 react-dom: 19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121) - '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@floating-ui/dom': 1.7.3 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) '@floating-ui/react@0.26.16(react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121))(react@19.3.0-canary-fd524fe0-20251121)': dependencies: @@ -21214,11 +21214,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@mdx-js/react@2.2.1(react@19.3.0-canary-55480b4d-20251208)': + '@mdx-js/react@2.2.1(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@mdx-js/react@2.2.1(react@19.3.0-canary-fd524fe0-20251121)': dependencies: @@ -21226,11 +21226,11 @@ snapshots: '@types/react': 19.2.2 react: 19.3.0-canary-fd524fe0-20251121 - '@mdx-js/react@3.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@mdx-js/react@3.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 '@modelcontextprotocol/sdk@1.18.1': dependencies: @@ -21860,603 +21860,603 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-context@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-context@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-context@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-context@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) aria-hidden: 1.2.6 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) aria-hidden: 1.2.6 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-direction@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-direction@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-direction@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-direction@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-id@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-id@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-id@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-id@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) aria-hidden: 1.2.6 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) aria-hidden: 1.2.6 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-scroll-area@1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-scroll-area@1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/number': 1.1.1 '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-slot@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-slot@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-slot@1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-slot@1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-size@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-size@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-size@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-use-size@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) @@ -22720,12 +22720,12 @@ snapshots: '@storybook/addon-docs@8.6.0(@types/react@19.2.2)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@mdx-js/react': 3.1.0(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2)) + '@mdx-js/react': 3.1.0(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2)) '@storybook/csf-plugin': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2)) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2)) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 transitivePeerDependencies: @@ -22790,14 +22790,14 @@ snapshots: - '@swc/helpers' - webpack - '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 optionalDependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) '@storybook/builder-webpack5@8.6.0(@rspack/core@1.6.0(@swc/helpers@0.5.15))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: @@ -22876,10 +22876,10 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@1.3.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@storybook/icons@1.3.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) '@storybook/instrumenter@8.6.0(storybook@8.6.0(prettier@3.6.2))': dependencies: @@ -22891,17 +22891,17 @@ snapshots: dependencies: storybook: 8.6.0(prettier@3.6.2) - '@storybook/preset-react-webpack@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/preset-react-webpack@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/core-webpack': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.9.2)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)) '@types/semver': 7.5.6 find-up: 5.0.0 magic-string: 0.30.19 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-docgen: 7.1.0 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) resolve: 1.22.10 semver: 7.6.3 storybook: 8.6.0(prettier@3.6.2) @@ -22935,19 +22935,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))': dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) storybook: 8.6.0(prettier@3.6.2) - '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.0(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.0(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/builder-webpack5': 8.6.0(@rspack/core@1.6.0(@swc/helpers@0.5.15))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - '@storybook/preset-react-webpack': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + '@storybook/preset-react-webpack': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: typescript: 5.9.2 @@ -22960,16 +22960,16 @@ snapshots: - uglify-js - webpack-cli - '@storybook/react@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/react@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/components': 8.6.0(storybook@8.6.0(prettier@3.6.2)) '@storybook/global': 5.0.0 '@storybook/manager-api': 8.6.0(storybook@8.6.0(prettier@3.6.2)) '@storybook/preview-api': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(storybook@8.6.0(prettier@3.6.2)) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(storybook@8.6.0(prettier@3.6.2)) '@storybook/theming': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: '@storybook/test': 8.6.0(storybook@8.6.0(prettier@3.6.2)) @@ -23247,13 +23247,13 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/react@15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)': + '@testing-library/react@15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)': dependencies: '@babel/runtime': 7.27.0 '@testing-library/dom': 10.1.0 '@types/react-dom': 19.2.1(@types/react@19.2.2) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 @@ -25453,14 +25453,14 @@ snapshots: dependencies: mkdirp-infer-owner: 2.0.0 - cmdk@1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + cmdk@1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: - '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - use-sync-external-store: 1.5.0(react@19.3.0-canary-55480b4d-20251208) + '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + use-sync-external-store: 1.5.0(react@19.3.0-canary-80cb7a99-20251211) transitivePeerDependencies: - '@types/react' - '@types/react-dom' @@ -27280,13 +27280,13 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-next@16.1.0-canary.16(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2): + eslint-config-next@16.1.0-canary.16(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2): dependencies: '@next/eslint-plugin-next': 16.1.0-canary.16 eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.37.0(jiti@2.5.1)) eslint-plugin-react: 7.37.0(eslint@9.37.0(jiti@2.5.1)) eslint-plugin-react-hooks: 7.0.0(eslint@9.37.0(jiti@2.5.1)) @@ -27313,7 +27313,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0 @@ -27324,7 +27324,7 @@ snapshots: tinyglobby: 0.2.15 unrs-resolver: 1.11.1 optionalDependencies: - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) eslint-plugin-import-x: 4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) transitivePeerDependencies: - supports-color @@ -27366,35 +27366,33 @@ snapshots: - bluebird - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint@9.37.0(jiti@2.5.1)): + eslint-module-utils@2.12.0(eslint-import-resolver-node@0.3.9)(eslint@9.37.0(jiti@2.5.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): + eslint-module-utils@2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) transitivePeerDependencies: - supports-color @@ -27422,7 +27420,7 @@ snapshots: - typescript optional: true - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)): + eslint-plugin-import@2.31.0(eslint@9.37.0(jiti@2.5.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -27433,7 +27431,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint@9.37.0(jiti@2.5.1)) + eslint-module-utils: 2.12.0(eslint-import-resolver-node@0.3.9)(eslint@9.37.0(jiti@2.5.1)) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -27444,14 +27442,12 @@ snapshots: semver: 6.3.1 string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.37.0(jiti@2.5.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -27462,7 +27458,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -27480,7 +27476,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.37.0(jiti@2.5.1)): + eslint-plugin-import@2.32.0(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -27491,7 +27487,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.37.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0)(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) + eslint-module-utils: 2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import-x@4.3.1(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2))(eslint-plugin-import@2.32.0(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)))(eslint@9.37.0(jiti@2.5.1)) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -27502,8 +27498,6 @@ snapshots: semver: 6.3.1 string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.9.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -27575,7 +27569,7 @@ snapshots: - bluebird - supports-color - eslint-plugin-react-hooks@0.0.0-experimental-55480b4d-20251208(eslint@9.37.0(jiti@2.5.1)): + eslint-plugin-react-hooks@0.0.0-experimental-80cb7a99-20251211(eslint@9.37.0(jiti@2.5.1)): dependencies: '@babel/core': 7.26.10 '@babel/parser': 7.27.0 @@ -28519,7 +28513,7 @@ snapshots: fsevents@2.3.3: optional: true - fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: '@formatjs/intl-localematcher': 0.6.1 '@orama/orama': 3.1.13 @@ -28531,7 +28525,7 @@ snapshots: image-size: 2.0.2 negotiator: 1.0.0 npm-to-yarn: 3.0.1 - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) remark: 15.0.1 remark-gfm: 4.0.1 remark-rehype: 11.1.2 @@ -28540,20 +28534,20 @@ snapshots: unist-util-visit: 5.0.0 optionalDependencies: '@types/react': 19.2.2 - next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8) - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) transitivePeerDependencies: - supports-color - fumadocs-mdx@11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208))(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react@19.3.0-canary-55480b4d-20251208): + fumadocs-mdx@11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211))(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react@19.3.0-canary-80cb7a99-20251211): dependencies: '@mdx-js/mdx': 3.1.1 '@standard-schema/spec': 1.0.0 chokidar: 4.0.3 esbuild: 0.25.9 estree-util-value-to-estree: 3.5.0 - fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) js-yaml: 4.1.0 lru-cache: 11.2.1 picocolors: 1.1.1 @@ -28565,36 +28559,36 @@ snapshots: unist-util-visit: 5.0.0 zod: 4.1.13 optionalDependencies: - next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8) - react: 19.3.0-canary-55480b4d-20251208 + next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8) + react: 19.3.0-canary-80cb7a99-20251211 transitivePeerDependencies: - supports-color - fumadocs-ui@15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(tailwindcss@4.1.13): - dependencies: - '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-popover': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + fumadocs-ui@15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(tailwindcss@4.1.13): + dependencies: + '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-popover': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) class-variance-authority: 0.7.1 - fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8))(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8))(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) lodash.merge: 4.6.2 - next-themes: 0.4.6(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + next-themes: 0.4.6(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) postcss-selector-parser: 7.1.0 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - react-medium-image-zoom: 5.3.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + react-medium-image-zoom: 5.3.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211) scroll-into-view-if-needed: 3.1.0 tailwind-merge: 3.3.1 optionalDependencies: '@types/react': 19.2.2 - next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8) + next: 15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8) tailwindcss: 4.1.13 transitivePeerDependencies: - '@mixedbread/sdk' @@ -29249,7 +29243,7 @@ snapshots: hoist-non-react-statics@3.3.2: dependencies: - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 homedir-polyfill@1.0.3: dependencies: @@ -31432,9 +31426,9 @@ snapshots: dependencies: react: 19.3.0-canary-fd524fe0-20251121 - lucide-react@0.554.0(react@19.3.0-canary-55480b4d-20251208): + lucide-react@0.554.0(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 lz-string@1.5.0: {} @@ -32790,22 +32784,22 @@ snapshots: dependencies: inherits: 2.0.4 - next-themes@0.4.6(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + next-themes@0.4.6(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) next-tick@1.0.0: {} - next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8): + next@15.5.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8): dependencies: '@next/env': 15.5.7 '@swc/helpers': 0.5.15 caniuse-lite: 1.0.30001746 postcss: 8.4.31 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@next/swc-darwin-arm64': 15.5.7 '@next/swc-darwin-x64': 15.5.7 @@ -32824,15 +32818,15 @@ snapshots: - '@babel/core' - babel-plugin-macros - next@16.0.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(sass@1.77.8): + next@16.0.7(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(sass@1.77.8): dependencies: '@next/env': 16.0.7 '@swc/helpers': 0.5.15 caniuse-lite: 1.0.30001746 postcss: 8.4.31 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) - styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) + styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@next/swc-darwin-arm64': 16.0.7 '@next/swc-darwin-x64': 16.0.7 @@ -34586,25 +34580,25 @@ snapshots: dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 pretty-format@29.5.0: dependencies: '@jest/schemas': 29.4.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 pretty-format@30.0.0-alpha.6: dependencies: '@jest/schemas': 30.0.0-alpha.6 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 pretty-ms@7.0.0: dependencies: @@ -34663,7 +34657,7 @@ snapshots: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react-is: 19.3.0-canary-55480b4d-20251208 + react-is: 19.3.0-canary-80cb7a99-20251211 property-information@5.6.0: dependencies: @@ -34879,31 +34873,31 @@ snapshots: transitivePeerDependencies: - supports-color - react-dom@0.0.0-experimental-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208): + react-dom@0.0.0-experimental-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - scheduler: 0.28.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + scheduler: 0.28.0-canary-80cb7a99-20251211 - react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208): + react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - scheduler: 0.28.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + scheduler: 0.28.0-canary-80cb7a99-20251211 react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121): dependencies: react: 19.3.0-canary-fd524fe0-20251121 - scheduler: 0.28.0-canary-55480b4d-20251208 + scheduler: 0.28.0-canary-80cb7a99-20251211 - react-is@19.3.0-canary-55480b4d-20251208: {} + react-is@19.3.0-canary-80cb7a99-20251211: {} react-is@19.3.0-canary-fd524fe0-20251121: {} react-lifecycles-compat@3.0.4: {} - react-medium-image-zoom@5.3.0(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + react-medium-image-zoom@5.3.0(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) react-number-format@5.4.0(react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121))(react@19.3.0-canary-fd524fe0-20251121): dependencies: @@ -34921,10 +34915,10 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-remove-scroll-bar@2.3.8(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208): + react-remove-scroll-bar@2.3.8(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -34940,59 +34934,59 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-remove-scroll@2.7.1(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208): + react-remove-scroll@2.7.1(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-remove-scroll-bar: 2.3.8(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-remove-scroll-bar: 2.3.8(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) - use-sidecar: 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208) + use-callback-ref: 1.3.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) + use-sidecar: 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211) optionalDependencies: '@types/react': 19.2.2 - react-server-dom-turbopack@0.0.0-experimental-55480b4d-20251208(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + react-server-dom-turbopack@0.0.0-experimental-80cb7a99-20251211(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) - react-server-dom-turbopack@19.3.0-canary-55480b4d-20251208(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + react-server-dom-turbopack@19.3.0-canary-80cb7a99-20251211(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) - react-server-dom-webpack@0.0.0-experimental-55480b4d-20251208(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): + react-server-dom-webpack@0.0.0-experimental-80cb7a99-20251211(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-server-dom-webpack@19.3.0-canary-55480b4d-20251208(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): + react-server-dom-webpack@19.3.0-canary-80cb7a99-20251211(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-shallow-renderer@16.15.0(react@19.3.0-canary-55480b4d-20251208): + react-shallow-renderer@16.15.0(react@19.3.0-canary-80cb7a99-20251211): dependencies: object-assign: 4.1.1 - react: 19.3.0-canary-55480b4d-20251208 - react-is: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-is: 19.3.0-canary-80cb7a99-20251211 - react-ssr-prepass@1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-55480b4d-20251208): + react-ssr-prepass@1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-80cb7a99-20251211): dependencies: object-is: 1.0.2 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 react-is: 19.3.0-canary-fd524fe0-20251121 react-style-singleton@2.2.1(@types/react@19.2.2)(react@19.3.0-canary-fd524fe0-20251121): @@ -35004,10 +34998,10 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-style-singleton@2.2.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208): + react-style-singleton@2.2.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211): dependencies: get-nonce: 1.0.1 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -35020,12 +35014,12 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-test-renderer@18.2.0(react@19.3.0-canary-55480b4d-20251208): + react-test-renderer@18.2.0(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 - react-is: 19.3.0-canary-55480b4d-20251208 - react-shallow-renderer: 16.15.0(react@19.3.0-canary-55480b4d-20251208) - scheduler: 0.28.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 + react-is: 19.3.0-canary-80cb7a99-20251211 + react-shallow-renderer: 16.15.0(react@19.3.0-canary-80cb7a99-20251211) + scheduler: 0.28.0-canary-80cb7a99-20251211 react-textarea-autosize@8.5.3(@types/react@19.2.2)(react@19.3.0-canary-fd524fe0-20251121): dependencies: @@ -35036,20 +35030,20 @@ snapshots: transitivePeerDependencies: - '@types/react' - react-virtualized@9.22.3(react-dom@19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208))(react@19.3.0-canary-55480b4d-20251208): + react-virtualized@9.22.3(react-dom@19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211))(react@19.3.0-canary-80cb7a99-20251211): dependencies: '@babel/runtime': 7.27.0 clsx: 1.1.1 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 - react: 19.3.0-canary-55480b4d-20251208 - react-dom: 19.3.0-canary-55480b4d-20251208(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + react-dom: 19.3.0-canary-80cb7a99-20251211(react@19.3.0-canary-80cb7a99-20251211) react-lifecycles-compat: 3.0.4 - react@0.0.0-experimental-55480b4d-20251208: {} + react@0.0.0-experimental-80cb7a99-20251211: {} - react@19.3.0-canary-55480b4d-20251208: {} + react@19.3.0-canary-80cb7a99-20251211: {} react@19.3.0-canary-fd524fe0-20251121: {} @@ -35921,9 +35915,9 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.0.0-experimental-55480b4d-20251208: {} + scheduler@0.0.0-experimental-80cb7a99-20251211: {} - scheduler@0.28.0-canary-55480b4d-20251208: {} + scheduler@0.28.0-canary-80cb7a99-20251211: {} schema-utils@2.7.1: dependencies: @@ -36795,10 +36789,10 @@ snapshots: postcss: 7.0.32 postcss-load-plugins: 2.3.0 - styled-jsx@5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-55480b4d-20251208): + styled-jsx@5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-80cb7a99-20251211): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 optionalDependencies: '@babel/core': 7.26.10 babel-plugin-macros: 3.1.0 @@ -36902,11 +36896,11 @@ snapshots: '@swc/counter': 0.1.3 webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9) - swr@2.2.4(react@19.3.0-canary-55480b4d-20251208): + swr@2.2.4(react@19.3.0-canary-80cb7a99-20251211): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-55480b4d-20251208 - use-sync-external-store: 1.5.0(react@19.3.0-canary-55480b4d-20251208) + react: 19.3.0-canary-80cb7a99-20251211 + use-sync-external-store: 1.5.0(react@19.3.0-canary-80cb7a99-20251211) symbol-observable@1.0.1: {} @@ -37732,9 +37726,9 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - unistore@3.4.1(react@19.3.0-canary-55480b4d-20251208): + unistore@3.4.1(react@19.3.0-canary-80cb7a99-20251211): optionalDependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 universal-github-app-jwt@1.1.1: dependencies: @@ -37869,9 +37863,9 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - use-callback-ref@1.3.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208): + use-callback-ref@1.3.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -37901,17 +37895,17 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - use-sidecar@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-55480b4d-20251208): + use-sidecar@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-80cb7a99-20251211): dependencies: detect-node-es: 1.1.0 - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 - use-sync-external-store@1.5.0(react@19.3.0-canary-55480b4d-20251208): + use-sync-external-store@1.5.0(react@19.3.0-canary-80cb7a99-20251211): dependencies: - react: 19.3.0-canary-55480b4d-20251208 + react: 19.3.0-canary-80cb7a99-20251211 util-deprecate@1.0.2: {} diff --git a/run-tests.js b/run-tests.js index 15d6c2fb6fa61..2d2b3c3c753ad 100644 --- a/run-tests.js +++ b/run-tests.js @@ -16,7 +16,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.2.1"; +const nextjsReactPeerVersion = "19.2.2"; 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 237350135e76f..8f2e702c1875b 100644 --- a/test/.stats-app/package.json +++ b/test/.stats-app/package.json @@ -4,8 +4,8 @@ "license": "MIT", "dependencies": { "next": "latest", - "react": "19.2.1", - "react-dom": "19.2.1" + "react": "19.2.2", + "react-dom": "19.2.2" }, "engines": { "node": ">=20.9.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 fb4c9a08e0050..2d6a268e71455 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.2.1", - "react-dom": "19.2.1" + "react": "19.2.2", + "react-dom": "19.2.2" } } 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 47f747d0f1066..990158fa1f6c7 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.2.1", - "react-dom": "19.2.1" + "react": "19.2.2", + "react-dom": "19.2.2" }, "devDependencies": { "@types/react": "^18", diff --git a/test/lib/next-modes/base.ts b/test/lib/next-modes/base.ts index e85229180ecad..d82a8ddadcfac 100644 --- a/test/lib/next-modes/base.ts +++ b/test/lib/next-modes/base.ts @@ -68,7 +68,7 @@ type OmitFirstArgument = F extends ( // Do not rename or format. sync-react script relies on this line. // prettier-ignore -const nextjsReactPeerVersion = "19.2.1"; +const nextjsReactPeerVersion = "19.2.2"; export class NextInstance { protected files: ResolvedFileConfig