From 65e29e4abe5af241e2a042ba3ad81ce30f70dc3a Mon Sep 17 00:00:00 2001 From: "next-js-bot[bot]" <279046576+next-js-bot[bot]@users.noreply.github.com> Date: Wed, 16 Sep 2026 10:14:47 +0200 Subject: [PATCH 1/6] Upgrade React from `019019be-20260911` to `ff8f88fc-20260915` (#98693) --- package.json | 30 +- .../cjs/react-dom-client.development.js | 44 +- .../cjs/react-dom-client.production.js | 88 +- .../cjs/react-dom-profiling.development.js | 44 +- .../cjs/react-dom-profiling.profiling.js | 88 +- ...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 | 44 +- .../react-dom-unstable_testing.production.js | 88 +- .../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 | 44 +- .../cjs/react-dom-client.production.js | 108 +- .../cjs/react-dom-profiling.development.js | 44 +- .../cjs/react-dom-profiling.profiling.js | 108 +- ...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 | 4 +- ...om-turbopack-server.browser.development.js | 2 +- ...r-dom-turbopack-server.edge.development.js | 2 +- ...r-dom-turbopack-server.node.development.js | 2 +- .../package.json | 4 +- ...om-turbopack-client.browser.development.js | 4 +- ...om-turbopack-server.browser.development.js | 2 +- ...r-dom-turbopack-server.edge.development.js | 2 +- ...r-dom-turbopack-server.node.development.js | 2 +- .../react-server-dom-turbopack/package.json | 4 +- ...-dom-webpack-client.browser.development.js | 4 +- ...-dom-webpack-server.browser.development.js | 2 +- ...ver-dom-webpack-server.edge.development.js | 2 +- ...ver-dom-webpack-server.node.development.js | 2 +- .../package.json | 4 +- ...-dom-webpack-client.browser.development.js | 4 +- ...-dom-webpack-server.browser.development.js | 2 +- ...ver-dom-webpack-server.edge.development.js | 2 +- ...ver-dom-webpack-server.node.development.js | 2 +- .../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 | 1186 ++++++++--------- 74 files changed, 1128 insertions(+), 988 deletions(-) diff --git a/package.json b/package.json index 5018da0a6563..10ef5e03ffaa 100644 --- a/package.json +++ b/package.json @@ -255,24 +255,24 @@ "pretty-ms": "7.0.0", "random-seed": "0.3.0", "react": "19.0.0", - "react-builtin": "npm:react@19.3.0-canary-019019be-20260911", + "react-builtin": "npm:react@19.3.0-canary-ff8f88fc-20260915", "react-dom": "19.0.0", - "react-dom-builtin": "npm:react-dom@19.3.0-canary-019019be-20260911", - "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-019019be-20260911", - "react-experimental-builtin": "npm:react@0.0.0-experimental-019019be-20260911", - "react-is-builtin": "npm:react-is@19.3.0-canary-019019be-20260911", - "react-server-dom-turbopack": "npm:react-server-dom-turbopack@19.3.0-canary-019019be-20260911", - "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-019019be-20260911", - "react-server-dom-webpack": "npm:react-server-dom-webpack@19.3.0-canary-019019be-20260911", - "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-019019be-20260911", + "react-dom-builtin": "npm:react-dom@19.3.0-canary-ff8f88fc-20260915", + "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-ff8f88fc-20260915", + "react-experimental-builtin": "npm:react@0.0.0-experimental-ff8f88fc-20260915", + "react-is-builtin": "npm:react-is@19.3.0-canary-ff8f88fc-20260915", + "react-server-dom-turbopack": "npm:react-server-dom-turbopack@19.3.0-canary-ff8f88fc-20260915", + "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-ff8f88fc-20260915", + "react-server-dom-webpack": "npm:react-server-dom-webpack@19.3.0-canary-ff8f88fc-20260915", + "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-ff8f88fc-20260915", "react-ssr-prepass": "1.0.8", "react-virtualized": "9.22.3", "request-promise-core": "1.1.2", "resolve-from": "5.0.0", "sass": "1.54.0", "satori": "0.29.0", - "scheduler-builtin": "npm:scheduler@0.28.0-canary-019019be-20260911", - "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-019019be-20260911", + "scheduler-builtin": "npm:scheduler@0.28.0-canary-ff8f88fc-20260915", + "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-ff8f88fc-20260915", "seedrandom": "3.0.5", "semver": "7.3.7", "serve-handler": "6.1.6", @@ -316,10 +316,10 @@ "@types/react-dom": "19.2.4", "@types/retry": "0.12.0", "jest-snapshot": "30.0.0-alpha.6", - "react": "npm:react@19.3.0-canary-019019be-20260911", - "react-dom": "npm:react-dom@19.3.0-canary-019019be-20260911", - "react-is": "npm:react-is@19.3.0-canary-019019be-20260911", - "scheduler": "npm:scheduler@0.28.0-canary-019019be-20260911" + "react": "npm:react@19.3.0-canary-ff8f88fc-20260915", + "react-dom": "npm:react-dom@19.3.0-canary-ff8f88fc-20260915", + "react-is": "npm:react-is@19.3.0-canary-ff8f88fc-20260915", + "scheduler": "npm:scheduler@0.28.0-canary-ff8f88fc-20260915" }, "packageExtensions": { "eslint-plugin-react-hooks@0.0.0-experimental-6de32a5a-20250822": { 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 9f77b57439a7..3350b9cb7528 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 @@ -22821,6 +22821,7 @@ case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -22865,7 +22866,10 @@ nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -26979,13 +26983,19 @@ return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -30410,6 +30420,7 @@ lastSelection = null, mouseDown = !1, vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -30423,12 +30434,14 @@ canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition); - var ANIMATION_END = getVendorPrefixedEventName("animationend"), + var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -32467,6 +32480,7 @@ eventName = eventName[0].toUpperCase() + eventName.slice(1); registerSimpleEvent(domEventName, "on" + eventName); } + registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -33463,11 +33477,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -33504,10 +33518,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -33655,7 +33669,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; "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 74302b6e152f..87ddc094ddb4 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 @@ -2409,6 +2409,7 @@ function makePrefixMap(styleProp, eventName) { return prefixes; } var vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -2422,7 +2423,8 @@ var vendorPrefixes = { canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || @@ -2437,7 +2439,8 @@ function getVendorPrefixedEventName(eventName) { return (prefixedEventNames[eventName] = prefixMap[styleProp]); return eventName; } -var ANIMATION_END = getVendorPrefixedEventName("animationend"), +var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -15177,22 +15180,23 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1791 = 0; - i$jscomp$inline_1791 < simpleEventPluginEvents.length; - i$jscomp$inline_1791++ + var i$jscomp$inline_1792 = 0; + i$jscomp$inline_1792 < simpleEventPluginEvents.length; + i$jscomp$inline_1792++ ) { - var eventName$jscomp$inline_1792 = - simpleEventPluginEvents[i$jscomp$inline_1791], - domEventName$jscomp$inline_1793 = - eventName$jscomp$inline_1792.toLowerCase(), - capitalizedEvent$jscomp$inline_1794 = - eventName$jscomp$inline_1792[0].toUpperCase() + - eventName$jscomp$inline_1792.slice(1); + var eventName$jscomp$inline_1793 = + simpleEventPluginEvents[i$jscomp$inline_1792], + domEventName$jscomp$inline_1794 = + eventName$jscomp$inline_1793.toLowerCase(), + capitalizedEvent$jscomp$inline_1795 = + eventName$jscomp$inline_1793[0].toUpperCase() + + eventName$jscomp$inline_1793.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1793, - "on" + capitalizedEvent$jscomp$inline_1794 + domEventName$jscomp$inline_1794, + "on" + capitalizedEvent$jscomp$inline_1795 ); } +registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -15489,6 +15493,7 @@ function dispatchEventForPluginEventSystem( case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -15533,7 +15538,10 @@ function dispatchEventForPluginEventSystem( nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -18368,13 +18376,19 @@ function validateDocumentPositionWithFiberTree( return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -20456,16 +20470,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2236 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2240 = React.version; if ( - "19.3.0-experimental-019019be-20260911" !== - isomorphicReactPackageVersion$jscomp$inline_2236 + "19.3.0-experimental-ff8f88fc-20260915" !== + isomorphicReactPackageVersion$jscomp$inline_2240 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2236, - "19.3.0-experimental-019019be-20260911" + isomorphicReactPackageVersion$jscomp$inline_2240, + "19.3.0-experimental-ff8f88fc-20260915" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -20485,24 +20499,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2892 = { +var internals$jscomp$inline_2896 = { bundleType: 0, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2893 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2897 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2893.isDisabled && - hook$jscomp$inline_2893.supportsFiber + !hook$jscomp$inline_2897.isDisabled && + hook$jscomp$inline_2897.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2893.inject( - internals$jscomp$inline_2892 + (rendererID = hook$jscomp$inline_2897.inject( + internals$jscomp$inline_2896 )), - (injectedHook = hook$jscomp$inline_2893); + (injectedHook = hook$jscomp$inline_2897); } catch (err) {} } exports.createRoot = function (container, options) { @@ -20597,4 +20611,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 b5d14dc53f3a..ce4f8ca77415 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 @@ -22829,6 +22829,7 @@ case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -22873,7 +22874,10 @@ nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -26987,13 +26991,19 @@ return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -30467,6 +30477,7 @@ lastSelection = null, mouseDown = !1, vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -30480,12 +30491,14 @@ canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition); - var ANIMATION_END = getVendorPrefixedEventName("animationend"), + var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -32524,6 +32537,7 @@ eventName = eventName[0].toUpperCase() + eventName.slice(1); registerSimpleEvent(domEventName, "on" + eventName); } + registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -33520,11 +33534,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -33561,10 +33575,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -34054,7 +34068,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; "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 9a0c82e2022e..4084d9fc6b03 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 @@ -2505,6 +2505,7 @@ function makePrefixMap(styleProp, eventName) { return prefixes; } var vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -2518,7 +2519,8 @@ var vendorPrefixes = { canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || @@ -2533,7 +2535,8 @@ function getVendorPrefixedEventName(eventName) { return (prefixedEventNames[eventName] = prefixMap[styleProp]); return eventName; } -var ANIMATION_END = getVendorPrefixedEventName("animationend"), +var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -17212,22 +17215,23 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_2095 = 0; - i$jscomp$inline_2095 < simpleEventPluginEvents.length; - i$jscomp$inline_2095++ + var i$jscomp$inline_2096 = 0; + i$jscomp$inline_2096 < simpleEventPluginEvents.length; + i$jscomp$inline_2096++ ) { - var eventName$jscomp$inline_2096 = - simpleEventPluginEvents[i$jscomp$inline_2095], - domEventName$jscomp$inline_2097 = - eventName$jscomp$inline_2096.toLowerCase(), - capitalizedEvent$jscomp$inline_2098 = - eventName$jscomp$inline_2096[0].toUpperCase() + - eventName$jscomp$inline_2096.slice(1); + var eventName$jscomp$inline_2097 = + simpleEventPluginEvents[i$jscomp$inline_2096], + domEventName$jscomp$inline_2098 = + eventName$jscomp$inline_2097.toLowerCase(), + capitalizedEvent$jscomp$inline_2099 = + eventName$jscomp$inline_2097[0].toUpperCase() + + eventName$jscomp$inline_2097.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_2097, - "on" + capitalizedEvent$jscomp$inline_2098 + domEventName$jscomp$inline_2098, + "on" + capitalizedEvent$jscomp$inline_2099 ); } +registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -17524,6 +17528,7 @@ function dispatchEventForPluginEventSystem( case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -17568,7 +17573,10 @@ function dispatchEventForPluginEventSystem( nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -20433,13 +20441,19 @@ function validateDocumentPositionWithFiberTree( return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -22543,16 +22557,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2540 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2544 = React.version; if ( - "19.3.0-experimental-019019be-20260911" !== - isomorphicReactPackageVersion$jscomp$inline_2540 + "19.3.0-experimental-ff8f88fc-20260915" !== + isomorphicReactPackageVersion$jscomp$inline_2544 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2540, - "19.3.0-experimental-019019be-20260911" + isomorphicReactPackageVersion$jscomp$inline_2544, + "19.3.0-experimental-ff8f88fc-20260915" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -22572,24 +22586,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_3213 = { +var internals$jscomp$inline_3217 = { bundleType: 0, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_3214 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_3218 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_3214.isDisabled && - hook$jscomp$inline_3214.supportsFiber + !hook$jscomp$inline_3218.isDisabled && + hook$jscomp$inline_3218.supportsFiber ) try { - (rendererID = hook$jscomp$inline_3214.inject( - internals$jscomp$inline_3213 + (rendererID = hook$jscomp$inline_3218.inject( + internals$jscomp$inline_3217 )), - (injectedHook = hook$jscomp$inline_3214); + (injectedHook = hook$jscomp$inline_3218); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -22857,7 +22871,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; "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 848836b330cd..e0079c67e0dd 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 @@ -10825,5 +10825,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-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 9bbc9ea05f37..8b5ccfa26a16 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 @@ -7253,4 +7253,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-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 3e3ff62f746e..e5159d2adf7d 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 @@ -10825,5 +10825,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-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 96bc30acbf6e..ecfd62b629de 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 @@ -7358,4 +7358,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-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 8702267e4cda..370144045eec 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 @@ -9857,11 +9857,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -11658,5 +11658,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 29015578d3d5..881168749b3f 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 @@ -7980,12 +7980,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-experimental-019019be-20260911" + "19.3.0-experimental-ff8f88fc-20260915" ) ); } @@ -8200,4 +8200,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 c16e439fc1fc..0dd84fb1faf8 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 @@ -7674,11 +7674,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8171,4 +8171,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 ecbf01b9d31b..91715ee93983 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 @@ -9886,11 +9886,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -11683,5 +11683,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 816c24c468d4..daf25a4c633d 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 @@ -8100,11 +8100,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8318,4 +8318,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 d97a27bfa9ee..e28745da2f6d 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 @@ -9747,11 +9747,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -11834,5 +11834,5 @@ } }; }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 76635395d39a..e9fe1f49ebc1 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 @@ -7979,11 +7979,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8481,4 +8481,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 233be3e1696e..0a19e4e3a718 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 @@ -23044,6 +23044,7 @@ case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -23088,7 +23089,10 @@ nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -27202,13 +27206,19 @@ return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -30726,6 +30736,7 @@ lastSelection = null, mouseDown = !1, vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -30739,12 +30750,14 @@ canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition); - var ANIMATION_END = getVendorPrefixedEventName("animationend"), + var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -32788,6 +32801,7 @@ eventName = eventName[0].toUpperCase() + eventName.slice(1); registerSimpleEvent(domEventName, "on" + eventName); } + registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -33784,11 +33798,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -33825,10 +33839,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -34142,5 +34156,5 @@ } }; }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 3248dc218dcc..b5329905e1cc 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 @@ -2495,6 +2495,7 @@ function makePrefixMap(styleProp, eventName) { return prefixes; } var vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -2508,7 +2509,8 @@ var vendorPrefixes = { canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || @@ -2523,7 +2525,8 @@ function getVendorPrefixedEventName(eventName) { return (prefixedEventNames[eventName] = prefixMap[styleProp]); return eventName; } -var ANIMATION_END = getVendorPrefixedEventName("animationend"), +var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -15449,22 +15452,23 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1820 = 0; - i$jscomp$inline_1820 < simpleEventPluginEvents.length; - i$jscomp$inline_1820++ + var i$jscomp$inline_1821 = 0; + i$jscomp$inline_1821 < simpleEventPluginEvents.length; + i$jscomp$inline_1821++ ) { - var eventName$jscomp$inline_1821 = - simpleEventPluginEvents[i$jscomp$inline_1820], - domEventName$jscomp$inline_1822 = - eventName$jscomp$inline_1821.toLowerCase(), - capitalizedEvent$jscomp$inline_1823 = - eventName$jscomp$inline_1821[0].toUpperCase() + - eventName$jscomp$inline_1821.slice(1); + var eventName$jscomp$inline_1822 = + simpleEventPluginEvents[i$jscomp$inline_1821], + domEventName$jscomp$inline_1823 = + eventName$jscomp$inline_1822.toLowerCase(), + capitalizedEvent$jscomp$inline_1824 = + eventName$jscomp$inline_1822[0].toUpperCase() + + eventName$jscomp$inline_1822.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1822, - "on" + capitalizedEvent$jscomp$inline_1823 + domEventName$jscomp$inline_1823, + "on" + capitalizedEvent$jscomp$inline_1824 ); } +registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -15761,6 +15765,7 @@ function dispatchEventForPluginEventSystem( case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -15805,7 +15810,10 @@ function dispatchEventForPluginEventSystem( nativeEvent.type, inCapturePhase, !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName) + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName) ); 0 < inCapturePhase.length && ((reactName = new SyntheticEventCtor( @@ -18640,13 +18648,19 @@ function validateDocumentPositionWithFiberTree( return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -20772,16 +20786,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2265 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2269 = React.version; if ( - "19.3.0-experimental-019019be-20260911" !== - isomorphicReactPackageVersion$jscomp$inline_2265 + "19.3.0-experimental-ff8f88fc-20260915" !== + isomorphicReactPackageVersion$jscomp$inline_2269 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2265, - "19.3.0-experimental-019019be-20260911" + isomorphicReactPackageVersion$jscomp$inline_2269, + "19.3.0-experimental-ff8f88fc-20260915" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -20801,24 +20815,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2926 = { +var internals$jscomp$inline_2930 = { bundleType: 0, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911" + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2927 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2931 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2927.isDisabled && - hook$jscomp$inline_2927.supportsFiber + !hook$jscomp$inline_2931.isDisabled && + hook$jscomp$inline_2931.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2927.inject( - internals$jscomp$inline_2926 + (rendererID = hook$jscomp$inline_2931.inject( + internals$jscomp$inline_2930 )), - (injectedHook = hook$jscomp$inline_2927); + (injectedHook = hook$jscomp$inline_2931); } catch (err) {} } exports.createComponentSelector = function (component) { @@ -21064,4 +21078,4 @@ exports.observeVisibleRects = function ( } }; }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 18a87683a19d..b16061df12fc 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 @@ -435,7 +435,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; "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 531b4981368e..d2b5544bb5a0 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 @@ -226,4 +226,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 951b34d1fb94..c79131725d46 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 @@ -345,5 +345,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.3.0-experimental-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 a379b2bd0497..4582a2541365 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 @@ -158,4 +158,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; diff --git a/packages/next/src/compiled/react-dom-experimental/package.json b/packages/next/src/compiled/react-dom-experimental/package.json index c62dd1445c07..f0e4b2c2fe31 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-019019be-20260911" + "scheduler": "0.0.0-experimental-ff8f88fc-20260915" }, "peerDependencies": { - "react": "0.0.0-experimental-019019be-20260911" + "react": "0.0.0-experimental-ff8f88fc-20260915" }, "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 2a19b060bd39..2d76e440b8d4 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 @@ -21061,6 +21061,7 @@ case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -21101,7 +21102,10 @@ var inCapturePhase = 0 !== (eventSystemFlags & 4), accumulateTargetOnly = !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName), + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName), reactEventName = inCapturePhase ? null !== reactName ? reactName + "Capture" @@ -24640,13 +24644,19 @@ return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -28080,6 +28090,7 @@ lastSelection = null, mouseDown = !1, vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -28093,12 +28104,14 @@ canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition); - var ANIMATION_END = getVendorPrefixedEventName("animationend"), + var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -30087,6 +30100,7 @@ eventName = eventName[0].toUpperCase() + eventName.slice(1); registerSimpleEvent(domEventName, "on" + eventName); } + registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -31075,11 +31089,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -31116,10 +31130,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911" + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -31257,7 +31271,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; "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 7bf3549645c1..b4fd89ccf16c 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 @@ -2216,19 +2216,19 @@ function getTargetInstForChangeEvent(domEventName, targetInst) { } var isInputEventSupported = !1; if (canUseDOM) { - var JSCompiler_inline_result$jscomp$318; + var JSCompiler_inline_result$jscomp$319; if (canUseDOM) { - var isSupported$jscomp$inline_474 = "oninput" in document; - if (!isSupported$jscomp$inline_474) { - var element$jscomp$inline_475 = document.createElement("div"); - element$jscomp$inline_475.setAttribute("oninput", "return;"); - isSupported$jscomp$inline_474 = - "function" === typeof element$jscomp$inline_475.oninput; + var isSupported$jscomp$inline_475 = "oninput" in document; + if (!isSupported$jscomp$inline_475) { + var element$jscomp$inline_476 = document.createElement("div"); + element$jscomp$inline_476.setAttribute("oninput", "return;"); + isSupported$jscomp$inline_475 = + "function" === typeof element$jscomp$inline_476.oninput; } - JSCompiler_inline_result$jscomp$318 = isSupported$jscomp$inline_474; - } else JSCompiler_inline_result$jscomp$318 = !1; + JSCompiler_inline_result$jscomp$319 = isSupported$jscomp$inline_475; + } else JSCompiler_inline_result$jscomp$319 = !1; isInputEventSupported = - JSCompiler_inline_result$jscomp$318 && + JSCompiler_inline_result$jscomp$319 && (!document.documentMode || 9 < document.documentMode); } function stopWatchingForValueChange() { @@ -2440,6 +2440,7 @@ function makePrefixMap(styleProp, eventName) { return prefixes; } var vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -2453,7 +2454,8 @@ var vendorPrefixes = { canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || @@ -2468,7 +2470,8 @@ function getVendorPrefixedEventName(eventName) { return (prefixedEventNames[eventName] = prefixMap[styleProp]); return eventName; } -var ANIMATION_END = getVendorPrefixedEventName("animationend"), +var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -13678,22 +13681,23 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1667 = 0; - i$jscomp$inline_1667 < simpleEventPluginEvents.length; - i$jscomp$inline_1667++ + var i$jscomp$inline_1668 = 0; + i$jscomp$inline_1668 < simpleEventPluginEvents.length; + i$jscomp$inline_1668++ ) { - var eventName$jscomp$inline_1668 = - simpleEventPluginEvents[i$jscomp$inline_1667], - domEventName$jscomp$inline_1669 = - eventName$jscomp$inline_1668.toLowerCase(), - capitalizedEvent$jscomp$inline_1670 = - eventName$jscomp$inline_1668[0].toUpperCase() + - eventName$jscomp$inline_1668.slice(1); + var eventName$jscomp$inline_1669 = + simpleEventPluginEvents[i$jscomp$inline_1668], + domEventName$jscomp$inline_1670 = + eventName$jscomp$inline_1669.toLowerCase(), + capitalizedEvent$jscomp$inline_1671 = + eventName$jscomp$inline_1669[0].toUpperCase() + + eventName$jscomp$inline_1669.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1669, - "on" + capitalizedEvent$jscomp$inline_1670 + domEventName$jscomp$inline_1670, + "on" + capitalizedEvent$jscomp$inline_1671 ); } +registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -13984,6 +13988,7 @@ function dispatchEventForPluginEventSystem( case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -14024,7 +14029,10 @@ function dispatchEventForPluginEventSystem( var inCapturePhase = 0 !== (eventSystemFlags & 4), accumulateTargetOnly = !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName), + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName), reactEventName = inCapturePhase ? null !== reactName ? reactName + "Capture" @@ -16425,13 +16433,19 @@ function validateDocumentPositionWithFiberTree( return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -18525,16 +18539,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2043 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2047 = React.version; if ( - "19.3.0-canary-019019be-20260911" !== - isomorphicReactPackageVersion$jscomp$inline_2043 + "19.3.0-canary-ff8f88fc-20260915" !== + isomorphicReactPackageVersion$jscomp$inline_2047 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2043, - "19.3.0-canary-019019be-20260911" + isomorphicReactPackageVersion$jscomp$inline_2047, + "19.3.0-canary-ff8f88fc-20260915" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -18554,24 +18568,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2586 = { +var internals$jscomp$inline_2590 = { bundleType: 0, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911" + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2587 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2591 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2587.isDisabled && - hook$jscomp$inline_2587.supportsFiber + !hook$jscomp$inline_2591.isDisabled && + hook$jscomp$inline_2591.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2587.inject( - internals$jscomp$inline_2586 + (rendererID = hook$jscomp$inline_2591.inject( + internals$jscomp$inline_2590 )), - (injectedHook = hook$jscomp$inline_2587); + (injectedHook = hook$jscomp$inline_2591); } catch (err) {} } exports.createRoot = function (container, options) { @@ -18657,4 +18671,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 344bc4e4ff7e..0a32f8640152 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 @@ -21069,6 +21069,7 @@ case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -21109,7 +21110,10 @@ var inCapturePhase = 0 !== (eventSystemFlags & 4), accumulateTargetOnly = !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName), + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName), reactEventName = inCapturePhase ? null !== reactName ? reactName + "Capture" @@ -24648,13 +24652,19 @@ return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -28138,6 +28148,7 @@ lastSelection = null, mouseDown = !1, vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -28151,12 +28162,14 @@ canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition); - var ANIMATION_END = getVendorPrefixedEventName("animationend"), + var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -30145,6 +30158,7 @@ eventName = eventName[0].toUpperCase() + eventName.slice(1); registerSimpleEvent(domEventName, "on" + eventName); } + registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -31133,11 +31147,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -31174,10 +31188,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911" + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -31657,7 +31671,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; "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 db3f00006adb..080a5b1739bb 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 @@ -2313,19 +2313,19 @@ function getTargetInstForChangeEvent(domEventName, targetInst) { } var isInputEventSupported = !1; if (canUseDOM) { - var JSCompiler_inline_result$jscomp$362; + var JSCompiler_inline_result$jscomp$363; if (canUseDOM) { - var isSupported$jscomp$inline_520 = "oninput" in document; - if (!isSupported$jscomp$inline_520) { - var element$jscomp$inline_521 = document.createElement("div"); - element$jscomp$inline_521.setAttribute("oninput", "return;"); - isSupported$jscomp$inline_520 = - "function" === typeof element$jscomp$inline_521.oninput; + var isSupported$jscomp$inline_521 = "oninput" in document; + if (!isSupported$jscomp$inline_521) { + var element$jscomp$inline_522 = document.createElement("div"); + element$jscomp$inline_522.setAttribute("oninput", "return;"); + isSupported$jscomp$inline_521 = + "function" === typeof element$jscomp$inline_522.oninput; } - JSCompiler_inline_result$jscomp$362 = isSupported$jscomp$inline_520; - } else JSCompiler_inline_result$jscomp$362 = !1; + JSCompiler_inline_result$jscomp$363 = isSupported$jscomp$inline_521; + } else JSCompiler_inline_result$jscomp$363 = !1; isInputEventSupported = - JSCompiler_inline_result$jscomp$362 && + JSCompiler_inline_result$jscomp$363 && (!document.documentMode || 9 < document.documentMode); } function stopWatchingForValueChange() { @@ -2537,6 +2537,7 @@ function makePrefixMap(styleProp, eventName) { return prefixes; } var vendorPrefixes = { + animationcancel: makePrefixMap("Animation", "AnimationCancel"), animationend: makePrefixMap("Animation", "AnimationEnd"), animationiteration: makePrefixMap("Animation", "AnimationIteration"), animationstart: makePrefixMap("Animation", "AnimationStart"), @@ -2550,7 +2551,8 @@ var vendorPrefixes = { canUseDOM && ((style = document.createElement("div").style), "AnimationEvent" in window || - (delete vendorPrefixes.animationend.animation, + (delete vendorPrefixes.animationcancel.animation, + delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || @@ -2565,7 +2567,8 @@ function getVendorPrefixedEventName(eventName) { return (prefixedEventNames[eventName] = prefixMap[styleProp]); return eventName; } -var ANIMATION_END = getVendorPrefixedEventName("animationend"), +var ANIMATION_CANCEL = getVendorPrefixedEventName("animationcancel"), + ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), @@ -15562,22 +15565,23 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1971 = 0; - i$jscomp$inline_1971 < simpleEventPluginEvents.length; - i$jscomp$inline_1971++ + var i$jscomp$inline_1972 = 0; + i$jscomp$inline_1972 < simpleEventPluginEvents.length; + i$jscomp$inline_1972++ ) { - var eventName$jscomp$inline_1972 = - simpleEventPluginEvents[i$jscomp$inline_1971], - domEventName$jscomp$inline_1973 = - eventName$jscomp$inline_1972.toLowerCase(), - capitalizedEvent$jscomp$inline_1974 = - eventName$jscomp$inline_1972[0].toUpperCase() + - eventName$jscomp$inline_1972.slice(1); + var eventName$jscomp$inline_1973 = + simpleEventPluginEvents[i$jscomp$inline_1972], + domEventName$jscomp$inline_1974 = + eventName$jscomp$inline_1973.toLowerCase(), + capitalizedEvent$jscomp$inline_1975 = + eventName$jscomp$inline_1973[0].toUpperCase() + + eventName$jscomp$inline_1973.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1973, - "on" + capitalizedEvent$jscomp$inline_1974 + domEventName$jscomp$inline_1974, + "on" + capitalizedEvent$jscomp$inline_1975 ); } +registerSimpleEvent(ANIMATION_CANCEL, "onAnimationCancel"); registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration"); registerSimpleEvent(ANIMATION_START, "onAnimationStart"); @@ -15868,6 +15872,7 @@ function dispatchEventForPluginEventSystem( case "touchstart": SyntheticEventCtor = SyntheticTouchEvent; break; + case ANIMATION_CANCEL: case ANIMATION_END: case ANIMATION_ITERATION: case ANIMATION_START: @@ -15908,7 +15913,10 @@ function dispatchEventForPluginEventSystem( var inCapturePhase = 0 !== (eventSystemFlags & 4), accumulateTargetOnly = !inCapturePhase && - ("scroll" === domEventName || "scrollend" === domEventName), + ("scroll" === domEventName || + "scrollend" === domEventName || + "toggle" === domEventName || + "beforetoggle" === domEventName), reactEventName = inCapturePhase ? null !== reactName ? reactName + "Capture" @@ -18337,13 +18345,19 @@ function validateDocumentPositionWithFiberTree( return precedingBoundaryFiber; } if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) { - if (null === otherFiber) - return ( - (otherFiber = getOwnerDocumentFromRootContainer(otherNode)), - otherNode === otherFiber || - otherNode === otherFiber.documentElement || - otherNode === otherFiber.body - ); + if (null === otherFiber) { + a: { + for (otherFiber = fragmentFiber.return; null !== otherFiber; ) { + if (3 === otherFiber.tag) { + otherFiber = otherFiber.stateNode.containerInfo; + break a; + } + otherFiber = otherFiber.return; + } + otherFiber = null; + } + return null !== otherFiber && otherNode.contains(otherFiber); + } a: { otherFiber = fragmentFiber; for ( @@ -20459,16 +20473,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2347 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2351 = React.version; if ( - "19.3.0-canary-019019be-20260911" !== - isomorphicReactPackageVersion$jscomp$inline_2347 + "19.3.0-canary-ff8f88fc-20260915" !== + isomorphicReactPackageVersion$jscomp$inline_2351 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2347, - "19.3.0-canary-019019be-20260911" + isomorphicReactPackageVersion$jscomp$inline_2351, + "19.3.0-canary-ff8f88fc-20260915" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -20488,24 +20502,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2903 = { +var internals$jscomp$inline_2907 = { bundleType: 0, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911" + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2904 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2908 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2904.isDisabled && - hook$jscomp$inline_2904.supportsFiber + !hook$jscomp$inline_2908.isDisabled && + hook$jscomp$inline_2908.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2904.inject( - internals$jscomp$inline_2903 + (rendererID = hook$jscomp$inline_2908.inject( + internals$jscomp$inline_2907 )), - (injectedHook = hook$jscomp$inline_2904); + (injectedHook = hook$jscomp$inline_2908); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -20764,7 +20778,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; "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 a0b038a373f0..bdb0d0995b72 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 @@ -10438,5 +10438,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-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 9270b5177d46..8df7efee93fb 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 @@ -6975,4 +6975,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-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 f7470ed4137d..10bb975e6998 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 @@ -10438,5 +10438,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-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 78b88a38346e..2f5c04d76c21 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 @@ -7069,4 +7069,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-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 ad86b05da81d..eb38ecffea38 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 @@ -9425,11 +9425,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -11209,5 +11209,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 c07eed6a9f02..6e54769727e4 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 @@ -7619,12 +7619,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-canary-019019be-20260911" + "19.3.0-canary-ff8f88fc-20260915" ) ); } @@ -7839,4 +7839,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 4b68e1227882..dd534d5f94ae 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 @@ -7328,11 +7328,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7825,4 +7825,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 59d2406eb102..c289ea78679c 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 @@ -9448,11 +9448,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -11228,5 +11228,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 26e658cc700a..7f68626aa721 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 @@ -7728,11 +7728,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7946,4 +7946,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 c83ebeed60f6..fb5bfcef6603 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 @@ -9323,11 +9323,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -11393,5 +11393,5 @@ } }; }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 47949252291a..2ff31651840e 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 @@ -7621,11 +7621,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-019019be-20260911" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-ff8f88fc-20260915" !== 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-019019be-20260911\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-ff8f88fc-20260915\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8123,4 +8123,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 006cadabdc21..d05b805e680d 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 @@ -435,7 +435,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; "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 d81637c0f704..3eb0fe2c258c 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 @@ -226,4 +226,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 f2a6791ba69b..93b61aee189c 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 @@ -345,5 +345,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.3.0-canary-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 310c05d3f4e5..a2a6592d7b3b 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 @@ -158,4 +158,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; diff --git a/packages/next/src/compiled/react-dom/package.json b/packages/next/src/compiled/react-dom/package.json index 6ce6184bfb01..43276dc6e25e 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-019019be-20260911" + "scheduler": "0.28.0-canary-ff8f88fc-20260915" }, "peerDependencies": { - "react": "19.3.0-canary-019019be-20260911" + "react": "19.3.0-canary-ff8f88fc-20260915" }, "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 9ee54dafea21..de90d518bde9 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-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; "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 42221f48cbf0..ef85acb05789 100644 --- a/packages/next/src/compiled/react-experimental/cjs/react.production.js +++ b/packages/next/src/compiled/react-experimental/cjs/react.production.js @@ -613,4 +613,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; 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 9e58439f80e2..f2f4bc76b0c9 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-019019be-20260911"; + exports.version = "19.3.0-experimental-ff8f88fc-20260915"; })(); 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 a4f20f76bf6c..bc788942a3c6 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 @@ -579,4 +579,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.3.0-experimental-019019be-20260911"; +exports.version = "19.3.0-experimental-ff8f88fc-20260915"; diff --git a/packages/next/src/compiled/react-is/package.json b/packages/next/src/compiled/react-is/package.json index 8295b4ece43a..df2c9e0af549 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-019019be-20260911", + "version": "19.3.0-canary-ff8f88fc-20260915", "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 2b941f6d6ae8..b7b8e350735d 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 @@ -5332,10 +5332,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911", + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 de2f0336de48..ccad5e42c2b7 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 @@ -462,7 +462,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 4f352cd59bfe..97be0bd31af2 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 @@ -467,7 +467,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 554982bfa7a6..6e072f7128d8 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 @@ -526,7 +526,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 b559f40466f8..af01a82ae033 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-019019be-20260911", - "react-dom": "0.0.0-experimental-019019be-20260911" + "react": "0.0.0-experimental-ff8f88fc-20260915", + "react-dom": "0.0.0-experimental-ff8f88fc-20260915" } } \ 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 ae1d6a9df7ee..4fb1b5a56292 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 @@ -5313,10 +5313,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911", + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 bab4aea95599..259251cd0366 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 @@ -462,7 +462,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 cd9002655f95..3ae2508b3e91 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 @@ -467,7 +467,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 00cb1f3ba47f..e3434040af11 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 @@ -526,7 +526,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 3828949660f7..5afca4da23f0 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-019019be-20260911", - "react-dom": "19.3.0-canary-019019be-20260911" + "react": "19.3.0-canary-ff8f88fc-20260915", + "react-dom": "19.3.0-canary-ff8f88fc-20260915" } } \ 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 1bffaa997727..4e8f764325eb 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 @@ -5344,10 +5344,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-019019be-20260911", + version: "19.3.0-experimental-ff8f88fc-20260915", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-019019be-20260911", + reconcilerVersion: "19.3.0-experimental-ff8f88fc-20260915", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 d6fd16f4f5b8..c9b7738dce1c 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 @@ -462,7 +462,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 e56e3695c041..7c2ffd0ea408 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 @@ -467,7 +467,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 9b57c600b9de..94f13c8f9b42 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 @@ -526,7 +526,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 fece3eb43465..8c1c2f62b5e8 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-019019be-20260911", - "react-dom": "0.0.0-experimental-019019be-20260911", + "react": "0.0.0-experimental-ff8f88fc-20260915", + "react-dom": "0.0.0-experimental-ff8f88fc-20260915", "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 02ba48924c54..01d10e2870bf 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 @@ -5325,10 +5325,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-019019be-20260911", + version: "19.3.0-canary-ff8f88fc-20260915", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-019019be-20260911", + reconcilerVersion: "19.3.0-canary-ff8f88fc-20260915", getCurrentComponentInfo: function () { return currentOwnerInDEV; } 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 2e26bf9e8efd..05ef4ee69cbf 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 @@ -462,7 +462,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 20e4836353a4..e315ce45f895 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 @@ -467,7 +467,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 6ca524ab90b5..75451d92423f 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 @@ -526,7 +526,7 @@ "" === name ? (name = "") : name.startsWith("async ") && - ((name = name.slice(5)), (isAsync = !0)); + ((name = name.slice(6)), (isAsync = !0)); var filename = parsed[2] || parsed[5] || ""; "" === filename && (filename = ""); existing.push([ 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 f2c6fa491942..3f46aafa6c6c 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-019019be-20260911", - "react-dom": "19.3.0-canary-019019be-20260911", + "react": "19.3.0-canary-ff8f88fc-20260915", + "react-dom": "19.3.0-canary-ff8f88fc-20260915", "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 1a759cb1a9f2..0a0a4169da1a 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-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; "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 b8731f19d056..a1f211ed6627 100644 --- a/packages/next/src/compiled/react/cjs/react.production.js +++ b/packages/next/src/compiled/react/cjs/react.production.js @@ -562,4 +562,4 @@ exports.useSyncExternalStore = function ( exports.useTransition = function () { return ReactSharedInternals.H.useTransition(); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; 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 54acffc5cd32..e0a634c39c1e 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-019019be-20260911"; + exports.version = "19.3.0-canary-ff8f88fc-20260915"; })(); 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 24d91eaa1a0c..a4039087d447 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 @@ -433,4 +433,4 @@ exports.useId = function () { exports.useMemo = function (create, deps) { return ReactSharedInternals.H.useMemo(create, deps); }; -exports.version = "19.3.0-canary-019019be-20260911"; +exports.version = "19.3.0-canary-ff8f88fc-20260915"; diff --git a/packages/next/src/compiled/unistore/unistore.js b/packages/next/src/compiled/unistore/unistore.js index cc3ca3f79138..957bd6894db4 100644 --- a/packages/next/src/compiled/unistore/unistore.js +++ b/packages/next/src/compiled/unistore/unistore.js @@ -1 +1 @@ -(()=>{var t={327: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={311: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=0.15.0' - version: 2.2.1(react@19.3.0-canary-019019be-20260911) + version: 2.2.1(react@19.3.0-canary-ff8f88fc-20260915) source-map: specifier: ^0.7.0 version: 0.7.3 @@ -1964,8 +1964,8 @@ importers: packages/third-parties: dependencies: react: - specifier: npm:react@19.3.0-canary-019019be-20260911 - version: 19.3.0-canary-019019be-20260911 + specifier: npm:react@19.3.0-canary-ff8f88fc-20260915 + version: 19.3.0-canary-ff8f88fc-20260915 third-party-capital: specifier: 1.0.20 version: 1.0.20 @@ -2028,14 +2028,14 @@ importers: specifier: 29.5.0 version: 29.5.0 react: - specifier: npm:react@19.3.0-canary-019019be-20260911 - version: 19.3.0-canary-019019be-20260911 + specifier: npm:react@19.3.0-canary-ff8f88fc-20260915 + version: 19.3.0-canary-ff8f88fc-20260915 react-test-renderer: specifier: 18.2.0 - version: 18.2.0(react@19.3.0-canary-019019be-20260911) + version: 18.2.0(react@19.3.0-canary-ff8f88fc-20260915) styled-jsx: specifier: ^5.1.2 - version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-019019be-20260911) + version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-ff8f88fc-20260915) packages: @@ -16007,18 +16007,18 @@ packages: resolution: {integrity: sha512-APPU8HB2uZnpl6Vt/+0AFoVYgSRtfiP6FLrZgPPTDmqSb2R4qZRbgd0A3VzIFxDt5e+Fozjx79WjLWnF69DK8g==} engines: {node: '>=16.14.0'} - react-dom@0.0.0-experimental-019019be-20260911: - resolution: {integrity: sha512-AfLXtFN1ctuKcWXwLcuT4zem71sy4ngaH8eOceAz+VXipBlXs306LCv4AfrPzMsfFSmQ051qj+bAWtrD6U/9Tw==} + react-dom@0.0.0-experimental-ff8f88fc-20260915: + resolution: {integrity: sha512-yomvWEPd8h5/ov6Y02J97bPSu9A05ihSUqRKoi+uRWEWXokBAvc2pk+Av0cYG17E+HPOtPCpfw76E4mJ/AZnJQ==} peerDependencies: - react: 0.0.0-experimental-019019be-20260911 + react: 0.0.0-experimental-ff8f88fc-20260915 - react-dom@19.3.0-canary-019019be-20260911: - resolution: {integrity: sha512-4xxnra/PuzGddAbhw+b6VrIdhx2WTtACav6J8w6dlZuUeLdpIpNyl14LR8En4IDf7942syyCTIOsHtOZBL2i2w==} + react-dom@19.3.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-VI2q2ZckvJPBeOJ0qd8G5Pv9TmRm2hO+eVZdiFLJIqN+Ad4tAfY+eETlzCQgWy+MrA2EYyJpbHQBmnzgl3qdpg==} peerDependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 - react-is@19.3.0-canary-019019be-20260911: - resolution: {integrity: sha512-MO0b5rsUgg9WvJT4xSJHpBlMk2XGBth2YLNBSyHRSMCSQ1Ja2i5JZ0kJ0KdBTrqKMDJXS/pdQCEYgBoHnU/j0w==} + react-is@19.3.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-ntHnebn3cZfEz7DWSXv6/G61Pyj2/uEE6EjjaQWygd39uTiLnjs5sJa3JkBcviwuuaTYcWVZ/jN0IoFbNU5yFw==} react-lifecycles-compat@3.0.4: resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} @@ -16073,34 +16073,34 @@ packages: '@types/react': optional: true - react-server-dom-turbopack@0.0.0-experimental-019019be-20260911: - resolution: {integrity: sha512-hAXxINcdHIPoK3MHYsbazVVlEafUf+gaH5iDx3kOaT6PQXX0N3OMxIGrF+pWgolccWbj1BXuwlN+GhyaGHmgYw==} + react-server-dom-turbopack@0.0.0-experimental-ff8f88fc-20260915: + resolution: {integrity: sha512-0EuNxJbFhzpKJpf0dT49sPthmVzPRvA9Nz1uWMNCDgDYeSVm6H0oUejiYhOmd1G/iy9pFWlifMKLp+CL5V6MZg==} engines: {node: '>=0.10.0'} peerDependencies: - react: 0.0.0-experimental-019019be-20260911 - react-dom: 0.0.0-experimental-019019be-20260911 + react: 0.0.0-experimental-ff8f88fc-20260915 + react-dom: 0.0.0-experimental-ff8f88fc-20260915 - react-server-dom-turbopack@19.3.0-canary-019019be-20260911: - resolution: {integrity: sha512-Zt2BfsfSmpQ7HU2Fud2cRjd/OiWqegM5mC6UXPUydijaAnLgXDiCxrFhiYnKLkxh1mmHSodxaaKlTn45QmRSpQ==} + react-server-dom-turbopack@19.3.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-eWq7v/eYI02nLI81snBg7k1XF0zyboljb6K+Ay1EZTQMbiDPYWfyh1aWjsmuz/RT/rFnyVVszPU3l4CJeJ5SNA==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915 - react-server-dom-webpack@0.0.0-experimental-019019be-20260911: - resolution: {integrity: sha512-tsE/Y2KDLXBcWCHvEDcYjRulDIBYlfc/NvUYmk077SqKANxjvCDyiBmGZk9e7p82IPfZ/u8ko4a3G+1l0RecxA==} + react-server-dom-webpack@0.0.0-experimental-ff8f88fc-20260915: + resolution: {integrity: sha512-L2Re6rH+XrlOS64P/stuGxEZWNXL9FDB8naN3D1WU7JXiiyS7hgPVTq9wJnsjqDaKbsivCIy1KMQbAZhlzQleQ==} engines: {node: '>=0.10.0'} peerDependencies: - react: 0.0.0-experimental-019019be-20260911 - react-dom: 0.0.0-experimental-019019be-20260911 + react: 0.0.0-experimental-ff8f88fc-20260915 + react-dom: 0.0.0-experimental-ff8f88fc-20260915 webpack: 5.98.0 - react-server-dom-webpack@19.3.0-canary-019019be-20260911: - resolution: {integrity: sha512-600dMH7dkF0wKGKumC0en8/LlbQfow2HwvfttjUmHlipyCwBieYqVN+X713mr/mlqlZyqbsCk5QLb+W950wnRw==} + react-server-dom-webpack@19.3.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-feLyDZFSGNQNIjlS+uwSFUlDr3HMli30LRC28qJxK12Llx5sfYw3SH27ADauIxn6aSW1HmSkuRVIQqcHmUywmw==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915 webpack: 5.98.0 react-shallow-renderer@16.15.0: @@ -16151,12 +16151,12 @@ packages: react: ^15.3.0 || ^16.0.0-alpha react-dom: ^15.3.0 || ^16.0.0-alpha - react@0.0.0-experimental-019019be-20260911: - resolution: {integrity: sha512-9vIvq/7kC6qJ/38Xt1xd+dWVeM/Pgr/WqmmhXY82wrkrgvvwDxgzAl3QW6x+M5i8lbcSmTQMadTOWnPBY4b0Sw==} + react@0.0.0-experimental-ff8f88fc-20260915: + resolution: {integrity: sha512-R81scYyermJkqNBoMg6jD1usyOObT4Yp63JWqpseC0SiHgRcFeLDWCeQaxYx/e7mP//yXt5a9bD59bDwwE9EaA==} engines: {node: '>=0.10.0'} - react@19.3.0-canary-019019be-20260911: - resolution: {integrity: sha512-V5rDav6NZ5Pl0T3jxSop3mFPh/AMsfCBZXhlp8hgZ4iWhch5PDSDoRy98+D1mDT8HHxOhIgmxk8qc7yJ84KOuQ==} + react@19.3.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-OS1w6Lz8fpigUGYSAh7/+lcvDjpeWDiU6vFcDiOFLzsbuNpm9GoxJruFOcrgYXoTu6QtWgfkH+HSX4QdpRZ7MA==} engines: {node: '>=0.10.0'} read-all-stream@3.1.0: @@ -16688,11 +16688,11 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.0.0-experimental-019019be-20260911: - resolution: {integrity: sha512-8ztgM1FQdRhClSqpsf/m3khKpZkeNEZj1bE+hTVcE6GJ6lhiOPeWQzsKougAnWnEBTBitLK5RR5LTcq4z3IEaQ==} + scheduler@0.0.0-experimental-ff8f88fc-20260915: + resolution: {integrity: sha512-lZaZemrtLrUcJe5PP2Bs8Tc9Vgi/vxcJhQpUVUjeBkduPlJIOK722UJgzgsp7kh+DArx5+x88Ry5lJE5savOBQ==} - scheduler@0.28.0-canary-019019be-20260911: - resolution: {integrity: sha512-3sBZZREI5vnnN3FM/igmS0bFKvVPEskqzinLLOhrM3foMMIsFtJ3tRBydDu7UGKzFmuEhxwa6aahfZ/rPDLVYw==} + scheduler@0.28.0-canary-ff8f88fc-20260915: + resolution: {integrity: sha512-2DAAwOAp3LR1jLx0Jtb4e+pMfbqsWRl5T0jvA0a7wnj/jOXJXXoUFr8+imvjQdoYiV2TOvdXA66p8dbyaWXUCw==} schema-utils@2.7.1: resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} @@ -20006,28 +20006,28 @@ snapshots: '@balena/dockerignore@1.0.2': {} - '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@babel/runtime': 7.27.6 - '@base-ui-components/utils': 0.1.0(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) + '@base-ui-components/utils': 0.1.0(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) reselect: 5.1.1 tabbable: 6.2.0 - use-sync-external-store: 1.5.0(react@19.3.0-canary-019019be-20260911) + use-sync-external-store: 1.5.0(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 - '@base-ui-components/utils@0.1.0(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@base-ui-components/utils@0.1.0(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@babel/runtime': 7.27.6 '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) reselect: 5.1.1 - use-sync-external-store: 1.5.0(react@19.3.0-canary-019019be-20260911) + use-sync-external-store: 1.5.0(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 @@ -20225,17 +20225,17 @@ snapshots: '@emotion/memoize@0.8.1': {} - '@emotion/react@11.11.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@emotion/react@11.11.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': 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-019019be-20260911) + '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@19.3.0-canary-ff8f88fc-20260915) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 hoist-non-react-statics: 3.3.2 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 transitivePeerDependencies: @@ -20253,9 +20253,9 @@ snapshots: '@emotion/unitless@0.8.1': {} - '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-019019be-20260911)': + '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 '@emotion/utils@1.2.1': {} @@ -20677,24 +20677,24 @@ snapshots: '@floating-ui/core': 1.7.3 '@floating-ui/utils': 0.2.10 - '@floating-ui/react-dom@2.1.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@floating-ui/react-dom@2.1.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@floating-ui/dom': 1.7.3 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) - '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@floating-ui/dom': 1.7.3 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) - '@floating-ui/react@0.26.16(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@floating-ui/react@0.26.16(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@floating-ui/react-dom': 2.1.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) + '@floating-ui/react-dom': 2.1.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) '@floating-ui/utils': 0.2.2 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) tabbable: 6.2.0 '@floating-ui/utils@0.2.10': {} @@ -21705,23 +21705,23 @@ snapshots: dependencies: call-bind: 1.0.8 - '@mantine/core@7.10.1(@mantine/hooks@7.10.1(react@19.3.0-canary-019019be-20260911))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@mantine/core@7.10.1(@mantine/hooks@7.10.1(react@19.3.0-canary-ff8f88fc-20260915))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@floating-ui/react': 0.26.16(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@mantine/hooks': 7.10.1(react@19.3.0-canary-019019be-20260911) + '@floating-ui/react': 0.26.16(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@mantine/hooks': 7.10.1(react@19.3.0-canary-ff8f88fc-20260915) clsx: 2.1.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - react-number-format: 5.4.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react-remove-scroll: 2.5.10(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react-textarea-autosize: 8.5.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + react-number-format: 5.4.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react-remove-scroll: 2.5.10(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react-textarea-autosize: 8.5.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) type-fest: 4.18.3 transitivePeerDependencies: - '@types/react' - '@mantine/hooks@7.10.1(react@19.3.0-canary-019019be-20260911)': + '@mantine/hooks@7.10.1(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 '@mapbox/node-pre-gyp@2.0.3(encoding@0.1.13)': dependencies: @@ -21766,17 +21766,17 @@ snapshots: transitivePeerDependencies: - supports-color - '@mdx-js/react@2.2.1(react@19.3.0-canary-019019be-20260911)': + '@mdx-js/react@2.2.1(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.18 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 - '@mdx-js/react@3.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@mdx-js/react@3.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.18 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 '@modelcontextprotocol/sdk@1.18.1(patch_hash=680fe4edb7abd1de29d08cdf217a22506e815a8cc1c2282201d5d47aa3e5da12)': dependencies: @@ -22841,589 +22841,589 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - '@radix-ui/react-arrow@1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-arrow@1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-compose-refs@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-compose-refs@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-context@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-context@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-context@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-context@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-context@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-context@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) aria-hidden: 1.2.6 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-direction@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-direction@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-direction@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-direction@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-id@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-id@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-id@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-id@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) aria-hidden: 1.2.6 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-popper@1.2.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-arrow': 1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-popper@1.2.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-arrow': 1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-portal@1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-portal@1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-presence@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-presence@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-primitive@2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-primitive@2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-slot': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-slot': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/number': 1.1.1 '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) aria-hidden: 1.2.6 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + react-remove-scroll: 2.7.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-slot@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-slot@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-slot@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-slot@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-slot@1.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-slot@1.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-tooltip@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-tooltip@1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-popper': 1.2.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-portal': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-slot': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-portal': 1.1.2(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-presence': 1.1.1(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-slot': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-size@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-size@1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-use-size@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-use-size@1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) - '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 '@types/react-dom': 19.2.4(@types/react@19.2.18) @@ -23730,12 +23730,12 @@ snapshots: '@storybook/addon-docs@8.6.0(@types/react@19.2.18)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@mdx-js/react': 3.1.0(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2)) + '@mdx-js/react': 3.1.0(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(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-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2)) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2)) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 transitivePeerDependencies: @@ -23800,14 +23800,14 @@ snapshots: - '@swc/helpers' - webpack - '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) + '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 optionalDependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) '@storybook/builder-webpack5@8.6.0(@rspack/core@1.6.7(patch_hash=4cf28ea116b0e27c7c80b09035905f9d16a7b18d1f2b7d312fc80d42cd57068d)(@swc/helpers@0.5.23))(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2)': dependencies: @@ -23886,10 +23886,10 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@1.3.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@storybook/icons@1.3.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) '@storybook/instrumenter@8.6.0(storybook@8.6.0(prettier@3.6.2))': dependencies: @@ -23901,17 +23901,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.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@6.0.2)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9)) '@types/semver': 7.5.6 find-up: 5.0.0 magic-string: 0.30.19 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 react-docgen: 7.1.0 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) resolve: 1.22.10 semver: 7.6.3 storybook: 8.6.0(prettier@3.6.2) @@ -23945,19 +23945,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))': dependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) storybook: 8.6.0(prettier@3.6.2) - '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.7(patch_hash=4cf28ea116b0e27c7c80b09035905f9d16a7b18d1f2b7d312fc80d42cd57068d)(@swc/helpers@0.5.23))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2)': + '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.7(patch_hash=4cf28ea116b0e27c7c80b09035905f9d16a7b18d1f2b7d312fc80d42cd57068d)(@swc/helpers@0.5.23))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2)': dependencies: '@storybook/builder-webpack5': 8.6.0(@rspack/core@1.6.7(patch_hash=4cf28ea116b0e27c7c80b09035905f9d16a7b18d1f2b7d312fc80d42cd57068d)(@swc/helpers@0.5.23))(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + '@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.23))(esbuild@0.25.9)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.2) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: typescript: 6.0.2 @@ -23970,16 +23970,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-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(storybook@8.6.0(prettier@3.6.2))(typescript@6.0.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-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(storybook@8.6.0(prettier@3.6.2)) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(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-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: '@storybook/test': 8.6.0(storybook@8.6.0(prettier@3.6.2)) @@ -24261,13 +24261,13 @@ snapshots: lodash: 4.18.1 redent: 3.0.0 - '@testing-library/react@15.0.7(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)': + '@testing-library/react@15.0.7(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)': dependencies: '@babel/runtime': 7.27.0 '@testing-library/dom': 10.1.0 '@types/react-dom': 19.2.4(@types/react@19.2.18) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 @@ -26553,14 +26553,14 @@ snapshots: cmd-shim@7.0.0: {} - cmdk@1.0.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + cmdk@1.0.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911) - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - use-sync-external-store: 1.5.0(react@19.3.0-canary-019019be-20260911) + '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.4(@types/react@19.2.18))(@types/react@19.2.18)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + use-sync-external-store: 1.5.0(react@19.3.0-canary-ff8f88fc-20260915) transitivePeerDependencies: - '@types/react' - '@types/react-dom' @@ -29993,7 +29993,7 @@ snapshots: hoist-non-react-statics@3.3.2: dependencies: - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 homedir-polyfill@1.0.3: dependencies: @@ -32211,13 +32211,13 @@ snapshots: lru-cache@7.18.3: {} - lucide-react@0.383.0(react@19.3.0-canary-019019be-20260911): + lucide-react@0.383.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 - lucide-react@0.554.0(react@19.3.0-canary-019019be-20260911): + lucide-react@0.554.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 lz-string@1.5.0: {} @@ -33425,23 +33425,23 @@ snapshots: dependencies: inherits: 2.0.4 - next-themes@0.4.6(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + next-themes@0.4.6(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) next-tick@1.0.0: {} - next@16.2.3(@babel/core@7.26.10)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.0)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-1371fcb-20260227)(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(sass@1.77.8): + next@16.2.3(@babel/core@7.26.10)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.0)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-1371fcb-20260227)(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(sass@1.77.8): dependencies: '@next/env': 16.2.3 '@swc/helpers': 0.5.15 baseline-browser-mapping: 2.9.19 caniuse-lite: 1.0.30001746 postcss: 8.5.23 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) - styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) + styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@next/swc-darwin-arm64': 16.2.3 '@next/swc-darwin-x64': 16.2.3 @@ -35144,31 +35144,31 @@ snapshots: dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 pretty-format@29.5.0: dependencies: '@jest/schemas': 29.4.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 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-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 pretty-format@30.2.0: dependencies: '@jest/schemas': 30.0.5 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 pretty-ms@7.0.0: dependencies: @@ -35230,7 +35230,7 @@ snapshots: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react-is: 19.3.0-canary-019019be-20260911 + react-is: 19.3.0-canary-ff8f88fc-20260915 property-information@5.6.0: dependencies: @@ -35453,157 +35453,157 @@ snapshots: transitivePeerDependencies: - supports-color - react-dom@0.0.0-experimental-019019be-20260911(react@19.3.0-canary-019019be-20260911): + react-dom@0.0.0-experimental-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - scheduler: 0.28.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + scheduler: 0.28.0-canary-ff8f88fc-20260915 - react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911): + react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - scheduler: 0.28.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + scheduler: 0.28.0-canary-ff8f88fc-20260915 - react-is@19.3.0-canary-019019be-20260911: {} + react-is@19.3.0-canary-ff8f88fc-20260915: {} react-lifecycles-compat@3.0.4: {} - react-number-format@5.4.0(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + react-number-format@5.4.0(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): dependencies: prop-types: 15.8.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) react-refresh@0.12.0: {} - react-remove-scroll-bar@2.3.6(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-remove-scroll-bar@2.3.6(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - react-remove-scroll-bar@2.3.8(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-remove-scroll-bar@2.3.8(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - react-remove-scroll@2.5.10(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-remove-scroll@2.5.10(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-remove-scroll-bar: 2.3.6(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react-style-singleton: 2.2.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-remove-scroll-bar: 2.3.6(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react-style-singleton: 2.2.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) tslib: 2.8.1 - use-callback-ref: 1.3.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - use-sidecar: 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + use-callback-ref: 1.3.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + use-sidecar: 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 - react-remove-scroll@2.7.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-remove-scroll@2.7.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-remove-scroll-bar: 2.3.8(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-remove-scroll-bar: 2.3.8(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + react-style-singleton: 2.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) - use-sidecar: 1.1.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + use-callback-ref: 1.3.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) + use-sidecar: 1.1.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 - react-server-dom-turbopack@0.0.0-experimental-019019be-20260911(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + react-server-dom-turbopack@0.0.0-experimental-ff8f88fc-20260915(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) - react-server-dom-turbopack@19.3.0-canary-019019be-20260911(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + react-server-dom-turbopack@19.3.0-canary-ff8f88fc-20260915(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) - react-server-dom-webpack@0.0.0-experimental-019019be-20260911(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))): + react-server-dom-webpack@0.0.0-experimental-ff8f88fc-20260915(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23)) webpack-sources: 3.2.3(patch_hash=26afc15966a3fc37a3d1d366312a95ce66723513f6a3a720e4166a37147da8bd) - react-server-dom-webpack@19.3.0-canary-019019be-20260911(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))): + react-server-dom-webpack@19.3.0-canary-ff8f88fc-20260915(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23)) webpack-sources: 3.2.3(patch_hash=26afc15966a3fc37a3d1d366312a95ce66723513f6a3a720e4166a37147da8bd) - react-shallow-renderer@16.15.0(react@19.3.0-canary-019019be-20260911): + react-shallow-renderer@16.15.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: object-assign: 4.1.1 - react: 19.3.0-canary-019019be-20260911 - react-is: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + react-is: 19.3.0-canary-ff8f88fc-20260915 - react-ssr-prepass@1.0.8(react-is@19.3.0-canary-019019be-20260911)(react@19.3.0-canary-019019be-20260911): + react-ssr-prepass@1.0.8(react-is@19.3.0-canary-ff8f88fc-20260915)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: object-is: 1.0.2 - react: 19.3.0-canary-019019be-20260911 - react-is: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + react-is: 19.3.0-canary-ff8f88fc-20260915 - react-style-singleton@2.2.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-style-singleton@2.2.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: get-nonce: 1.0.1 invariant: 2.2.4 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - react-style-singleton@2.2.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-style-singleton@2.2.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: get-nonce: 1.0.1 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - react-test-renderer@18.2.0(react@19.3.0-canary-019019be-20260911): + react-test-renderer@18.2.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - react-is: 19.3.0-canary-019019be-20260911 - react-shallow-renderer: 16.15.0(react@19.3.0-canary-019019be-20260911) - scheduler: 0.28.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 + react-is: 19.3.0-canary-ff8f88fc-20260915 + react-shallow-renderer: 16.15.0(react@19.3.0-canary-ff8f88fc-20260915) + scheduler: 0.28.0-canary-ff8f88fc-20260915 - react-textarea-autosize@8.5.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + react-textarea-autosize@8.5.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: '@babel/runtime': 7.27.0 - react: 19.3.0-canary-019019be-20260911 - use-composed-ref: 1.3.0(react@19.3.0-canary-019019be-20260911) - use-latest: 1.2.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + use-composed-ref: 1.3.0(react@19.3.0-canary-ff8f88fc-20260915) + use-latest: 1.2.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) transitivePeerDependencies: - '@types/react' - react-virtualized@9.22.3(react-dom@19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911))(react@19.3.0-canary-019019be-20260911): + react-virtualized@9.22.3(react-dom@19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915))(react@19.3.0-canary-ff8f88fc-20260915): 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-019019be-20260911 - react-dom: 19.3.0-canary-019019be-20260911(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + react-dom: 19.3.0-canary-ff8f88fc-20260915(react@19.3.0-canary-ff8f88fc-20260915) react-lifecycles-compat: 3.0.4 - react@0.0.0-experimental-019019be-20260911: {} + react@0.0.0-experimental-ff8f88fc-20260915: {} - react@19.3.0-canary-019019be-20260911: {} + react@19.3.0-canary-ff8f88fc-20260915: {} read-all-stream@3.1.0: dependencies: @@ -36294,9 +36294,9 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.0.0-experimental-019019be-20260911: {} + scheduler@0.0.0-experimental-ff8f88fc-20260915: {} - scheduler@0.28.0-canary-019019be-20260911: {} + scheduler@0.28.0-canary-ff8f88fc-20260915: {} schema-utils@2.7.1: dependencies: @@ -37176,10 +37176,10 @@ snapshots: postcss: 8.5.23 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-019019be-20260911): + styled-jsx@5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@babel/core': 7.26.10 babel-plugin-macros: 3.1.0 @@ -37279,11 +37279,11 @@ snapshots: '@swc/counter': 0.1.3 webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.23))(esbuild@0.25.9) - swr@2.2.4(react@19.3.0-canary-019019be-20260911): + swr@2.2.4(react@19.3.0-canary-ff8f88fc-20260915): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-019019be-20260911 - use-sync-external-store: 1.5.0(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + use-sync-external-store: 1.5.0(react@19.3.0-canary-ff8f88fc-20260915) symbol-tree@3.2.4: {} @@ -38109,9 +38109,9 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - unistore@3.4.1(react@19.3.0-canary-019019be-20260911): + unistore@3.4.1(react@19.3.0-canary-ff8f88fc-20260915): optionalDependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 universal-github-app-jwt@1.1.1: dependencies: @@ -38228,56 +38228,56 @@ snapshots: punycode: 1.4.1 qs: 6.14.0 - use-callback-ref@1.3.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-callback-ref@1.3.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - use-callback-ref@1.3.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-callback-ref@1.3.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - use-composed-ref@1.3.0(react@19.3.0-canary-019019be-20260911): + use-composed-ref@1.3.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 - use-isomorphic-layout-effect@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-isomorphic-layout-effect@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 optionalDependencies: '@types/react': 19.2.18 - use-latest@1.2.1(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-latest@1.2.1(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 - use-isomorphic-layout-effect: 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911) + react: 19.3.0-canary-ff8f88fc-20260915 + use-isomorphic-layout-effect: 1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915) optionalDependencies: '@types/react': 19.2.18 - use-sidecar@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-sidecar@1.1.2(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: detect-node-es: 1.1.0 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - use-sidecar@1.1.3(@types/react@19.2.18)(react@19.3.0-canary-019019be-20260911): + use-sidecar@1.1.3(@types/react@19.2.18)(react@19.3.0-canary-ff8f88fc-20260915): dependencies: detect-node-es: 1.1.0 - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.18 - use-sync-external-store@1.5.0(react@19.3.0-canary-019019be-20260911): + use-sync-external-store@1.5.0(react@19.3.0-canary-ff8f88fc-20260915): dependencies: - react: 19.3.0-canary-019019be-20260911 + react: 19.3.0-canary-ff8f88fc-20260915 util-deprecate@1.0.2: {} From 1d5dd6720010520d7d8bc1350183300234d3bd18 Mon Sep 17 00:00:00 2001 From: Tim Neutkens Date: Wed, 16 Sep 2026 10:40:09 +0200 Subject: [PATCH 2/6] Fix App Router locale path matching with Pages i18n (#98095) ## Summary Fix hybrid App Router and Pages Router projects using Pages i18n so explicit or rewritten locale segments remain available to App Router route matching, while Pages routes continue using locale-normalized paths. The built-in filesystem matcher now carries each route owner through `RouteKind`, avoids duplicate App routes being treated as Pages routes in production, and preserves literal App path parameters through the router server, direct route-module invocation, and static export paths. The same ownership information is maintained by the development bundler. Adds regression coverage for domain locales, proxy rewrites, exact and dynamic App pages, catch-all parameters, route handlers, inferred default locales, and Pages routes. Adapter-generated routing metadata is intentionally handled in the follow-up layers #97366 and #97500. Closes #86048 ## Verification - `pnpm build-all` - `NEXT_TEST_PREFER_OFFLINE=1 pnpm test-start-webpack test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts` (9 passed) - Prettier and ESLint checks on all changed files --- packages/next/src/export/worker.ts | 4 +- packages/next/src/server/base-server.ts | 15 ++- packages/next/src/server/lib/router-server.ts | 3 + .../src/server/lib/router-utils/filesystem.ts | 44 +++++++-- .../server/lib/router-utils/resolve-routes.ts | 41 ++++++--- .../lib/router-utils/setup-dev-bundler.ts | 13 +++ packages/next/src/server/request-meta.ts | 5 + .../src/server/route-modules/route-module.ts | 18 ++-- .../app/[lang]/[...slug]/page.tsx | 21 +++++ .../app/[lang]/endpoint/route.ts | 10 ++ .../app/[lang]/test/page.tsx | 13 +++ .../app/layout.tsx | 9 ++ .../app/nl-NL/static/page.tsx | 3 + .../app/plain/[id]/page.tsx | 13 +++ .../app/plain/static/page.tsx | 3 + .../i18n-app-pages-domain-routing.test.ts | 91 +++++++++++++++++++ .../next.config.js | 22 +++++ .../pages/index.tsx | 7 ++ .../pages/product/[slug].tsx | 7 ++ .../i18n-app-pages-domain-routing/proxy.ts | 17 ++++ test/lib/next-modes/next-deploy.ts | 13 +++ 21 files changed, 340 insertions(+), 32 deletions(-) create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx create mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts diff --git a/packages/next/src/export/worker.ts b/packages/next/src/export/worker.ts index b93442fdc9c8..dc5da1b9b014 100644 --- a/packages/next/src/export/worker.ts +++ b/packages/next/src/export/worker.ts @@ -140,7 +140,7 @@ async function exportPageImpl( let updatedPath = exportPath._ssgPath || path let locale = exportPath._locale || commonRenderOpts.locale - if (commonRenderOpts.locale) { + if (commonRenderOpts.locale && !isAppDir) { const localePathResult = normalizeLocalePath(path, commonRenderOpts.locales) if (localePathResult.detectedLocale) { @@ -164,7 +164,7 @@ async function exportPageImpl( if (isDynamic && page !== nonLocalizedPath) { const normalizedPage = isAppDir ? normalizeAppPath(page) : page - params = getParams(normalizedPage, updatedPath) + params = getParams(normalizedPage, isAppDir ? path : updatedPath) } const { req, res } = createRequestResponseMocks({ url: updatedPath }) diff --git a/packages/next/src/server/base-server.ts b/packages/next/src/server/base-server.ts index f5a7358b8184..ffda8864e28d 100644 --- a/packages/next/src/server/base-server.ts +++ b/packages/next/src/server/base-server.ts @@ -1616,15 +1616,26 @@ export default abstract class Server< parsedUrl.pathname = parsedMatchedPath.pathname addRequestMeta(req, 'rewrittenPathname', invokePathnameInfo.pathname) } + const pathnameNoBasePath = removePathPrefix( + parsedUrl.pathname, + this.nextConfig.basePath || '' + ) const normalizeResult = normalizeLocalePath( - removePathPrefix(parsedUrl.pathname, this.nextConfig.basePath || ''), + pathnameNoBasePath, this.nextConfig.i18n?.locales ) if (normalizeResult.detectedLocale) { addRequestMeta(req, 'locale', normalizeResult.detectedLocale) } - parsedUrl.pathname = normalizeResult.pathname + // The resolver already selected an App route using this literal + // pathname, so keep its locale segment for App Router param parsing. + if (getRequestMeta(req, 'didMatchLocalePrefixedPath')) { + parsedUrl.pathname = pathnameNoBasePath + removeRequestMeta(req, 'localeInferredFromDefault') + } else { + parsedUrl.pathname = normalizeResult.pathname + } for (const key of Object.keys(parsedUrl.query)) { delete parsedUrl.query[key] diff --git a/packages/next/src/server/lib/router-server.ts b/packages/next/src/server/lib/router-server.ts index 031f0ab32400..47dcde0bbb1d 100644 --- a/packages/next/src/server/lib/router-server.ts +++ b/packages/next/src/server/lib/router-server.ts @@ -745,6 +745,9 @@ export async function initialize(opts: { handleIndex, { invokeOutput: matchedOutput.itemPath, + ...(matchedOutput.didMatchLocalePrefixedPath + ? { didMatchLocalePrefixedPath: true } + : undefined), ...(matchedOutput.error ? { invokeStatus: 500, diff --git a/packages/next/src/server/lib/router-utils/filesystem.ts b/packages/next/src/server/lib/router-utils/filesystem.ts index a9b453e193d3..04813a9b2fb7 100644 --- a/packages/next/src/server/lib/router-utils/filesystem.ts +++ b/packages/next/src/server/lib/router-utils/filesystem.ts @@ -80,6 +80,7 @@ export type FsOutput = { locale?: string route?: RouteDefinition params?: Params + didMatchLocalePrefixedPath?: boolean requestPath?: string error?: Error } @@ -93,13 +94,17 @@ type FilesystemRouteDefinition = RouteDefinition & { const debug = setupDebug('next:router-server:filesystem') export type FilesystemDynamicRoute = ManifestRoute & { + kind: RouteKind /** * The path matcher that can be used to match paths against this route. */ match: PatchMatcher } -const buildFilesystemDynamicRoute = (page: string): FilesystemDynamicRoute => { +const buildFilesystemDynamicRoute = ( + page: string, + kind: RouteKind +): FilesystemDynamicRoute => { const routeRegex = getNamedRouteRegex(page, { prefixRouteKeys: true, includePrefix: true, @@ -112,6 +117,7 @@ const buildFilesystemDynamicRoute = (page: string): FilesystemDynamicRoute => { routeKeys: routeRegex.routeKeys, match: getRouteMatcher(routeRegex), page, + kind, } } @@ -396,13 +402,13 @@ export async function setupFsCheck(opts: { ) const appDynamicRoutes: FilesystemDynamicRoute[] = [] const appDynamicRoutePathnames = new Set() - const addAppDynamicRoute = (pathname: string) => { + const addAppDynamicRoute = (pathname: string, kind: RouteKind) => { if (!isDynamicRoute(pathname) || appDynamicRoutePathnames.has(pathname)) { return } appDynamicRoutePathnames.add(pathname) - appDynamicRoutes.push(buildFilesystemDynamicRoute(pathname)) + appDynamicRoutes.push(buildFilesystemDynamicRoute(pathname, kind)) } for (const key of Object.keys(pagesManifest)) { @@ -463,7 +469,7 @@ export async function setupFsCheck(opts: { filename: appNormalizers.filename.normalize(appPathsManifest[page]), appPaths, } as FilesystemRouteDefinition) - addAppDynamicRoute(pathname) + addAppDynamicRoute(pathname, RouteKind.APP_PAGE) } const appRouteHandlers = Object.keys(appPathsManifest).filter((page) => @@ -478,7 +484,7 @@ export async function setupFsCheck(opts: { bundlePath: appNormalizers.bundlePath.normalize(page), filename: appNormalizers.filename.normalize(appPathsManifest[page]), } as FilesystemRouteDefinition) - addAppDynamicRoute(pathname) + addAppDynamicRoute(pathname, RouteKind.APP_ROUTE) } for (const route of routesManifest.dataRoutes) { @@ -501,6 +507,7 @@ export async function setupFsCheck(opts: { : new RegExp(route.dataRouteRegex), groups: routeRegex.groups, }), + kind: isAPIRoute(route.page) ? RouteKind.PAGES_API : RouteKind.PAGES, }) } nextDataRoutes.add(route.page) @@ -517,9 +524,19 @@ export async function setupFsCheck(opts: { continue } + // App routes were built from app-paths-manifest above with their + // authoritative kind. routes-manifest also contains those paths, so + // avoid registering a second copy that would be mistaken for Pages. + if (appDynamicRoutePathnames.has(route.page)) { + continue + } + filesystemDynamicRoutes.push({ ...route, - ...buildFilesystemDynamicRoute(route.page), + ...buildFilesystemDynamicRoute( + route.page, + isAPIRoute(route.page) ? RouteKind.PAGES_API : RouteKind.PAGES + ), }) } @@ -692,10 +709,13 @@ export async function setupFsCheck(opts: { async getItem( itemPath: string, - requestPath?: string + requestPath?: string, + preserveAppLocalePath = false ): Promise { const originalItemPath = itemPath - const itemKey = originalItemPath + const itemKey = preserveAppLocalePath + ? `app-locale:${originalItemPath}` + : originalItemPath const lruResult = getItemsLru?.get(itemKey) if (lruResult !== undefined) { @@ -765,12 +785,17 @@ export async function setupFsCheck(opts: { for (let [items, type] of itemsToCheck) { let locale: string | undefined + let didMatchLocalePrefixedPath = false let curItemPath = itemPath let curDecodedItemPath = decodedItemPath const isPageOrAppFile = type === 'pageFile' || type === 'appFile' - if (i18n) { + if (i18n && type === 'appFile' && preserveAppLocalePath) { + didMatchLocalePrefixedPath = Boolean( + normalizeLocalePath(itemPath, i18n.locales).detectedLocale + ) + } else if (i18n) { const localeResult = handleLocale( itemPath, // legacy behavior allows visiting static assets under @@ -1007,6 +1032,7 @@ export async function setupFsCheck(opts: { itemPath: flatKeyCopy(curItemPath), route, params, + didMatchLocalePrefixedPath, error, } diff --git a/packages/next/src/server/lib/router-utils/resolve-routes.ts b/packages/next/src/server/lib/router-utils/resolve-routes.ts index 01803ef268f9..891e4ff2e4ff 100644 --- a/packages/next/src/server/lib/router-utils/resolve-routes.ts +++ b/packages/next/src/server/lib/router-utils/resolve-routes.ts @@ -31,6 +31,7 @@ import { normalizeLocalePath } from '../../../shared/lib/i18n/normalize-locale-p import { removePathPrefix } from '../../../shared/lib/router/utils/remove-path-prefix' import { NextDataPathnameNormalizer } from '../../normalizers/request/next-data' import { BasePathPathnameNormalizer } from '../../normalizers/request/base-path' +import { RouteKind } from '../../route-kind' import { addRequestMeta } from '../../request-meta' import { isRSCRequestHeader } from '../is-rsc-request' @@ -208,6 +209,10 @@ export function getResolveRoutes( let domainLocale: ReturnType | undefined let defaultLocale: string | undefined + // The Pages Router needs an internal default-locale prefix while applying + // rewrites. App routes should only see a locale segment that was actually + // present in the request or introduced by a rewrite. + let localePathWasInferred = false let initialLocaleResult: | ReturnType | undefined = undefined @@ -252,6 +257,7 @@ export function getResolveRoutes( !initialLocaleResult.detectedLocale && !initialLocaleResult.pathname.startsWith('/_next/') ) { + localePathWasInferred = true parsedUrl.pathname = addPathPrefix( initialLocaleResult.pathname === '/' ? `/${defaultLocale}` @@ -286,7 +292,11 @@ export function getResolveRoutes( return } if (!invokedOutputs?.has(pathname)) { - const output = await fsChecker.getItem(pathname) + const output = await fsChecker.getItem( + pathname, + undefined, + Boolean(config.i18n && !localePathWasInferred) + ) if (output) { if ( @@ -318,7 +328,16 @@ export function getResolveRoutes( if (invokedOutputs?.has(route.page)) { continue } - const params = route.match(localeResult.pathname) + const isAppRoute = + route.kind === RouteKind.APP_PAGE || + route.kind === RouteKind.APP_ROUTE + // Pages routes match their locale-normalized pathname. App routes own + // explicit locale segments and therefore match the literal pathname. + const routePathname = + isAppRoute && !localePathWasInferred + ? curPathname || '/' + : localeResult.pathname + const params = route.match(routePathname) if (params) { const pageOutput = await fsChecker.getItem( @@ -326,14 +345,6 @@ export function getResolveRoutes( curPathname || undefined ) - // i18n locales aren't matched for app dir - if ( - pageOutput?.type === 'appFile' && - initialLocaleResult?.detectedLocale - ) { - continue - } - if (pageOutput && curPathname?.startsWith('/_next/data')) { setIsNextDataRequest() } @@ -345,6 +356,8 @@ export function getResolveRoutes( // The dynamic-route scan matched the concrete request path; // keep those params with the fsChecker route definition. params, + didMatchLocalePrefixedPath: + isAppRoute && routePathname !== localeResult.pathname, } : null } @@ -502,7 +515,11 @@ export function getResolveRoutes( if (invokedOutputs?.has(pathname) || checkLocaleApi(pathname)) { return } - const output = await fsChecker.getItem(pathname) + const output = await fsChecker.getItem( + pathname, + undefined, + Boolean(config.i18n && !localePathWasInferred) + ) if ( output && @@ -742,6 +759,7 @@ export function getResolveRoutes( resHeaders['x-middleware-rewrite'] = destination parsedUrl = parseUrl(destination) + localePathWasInferred = false if (parsedUrl.protocol) { return { @@ -928,6 +946,7 @@ export function getResolveRoutes( } } didRewrite = true + localePathWasInferred = false parsedUrl.pathname = parsedDestination.pathname Object.assign(parsedUrl.query, parsedDestination.query) } diff --git a/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts b/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts index 2db6020a8429..ba618506fbc3 100644 --- a/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts +++ b/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts @@ -1239,6 +1239,13 @@ async function startWatcher( opts.fsChecker.setRouteDefinitions('pageFile', pageRouteDefinitions) opts.fsChecker.setRouteDefinitions('appFile', appRouteDefinitions) + const routeKinds = new Map( + [...pageRouteDefinitions, ...appRouteDefinitions].map((definition) => [ + definition.pathname, + definition.kind, + ]) + ) + // TODO: pass this to fsChecker/next-dev-server? serverFields.middleware = middlewareMatchers ? { @@ -1321,6 +1328,9 @@ async function startWatcher( routeKeys: regex.routeKeys, match: getRouteMatcher(regex), page, + kind: + routeKinds.get(page) ?? + (isAPIRoute(page) ? RouteKind.PAGES_API : RouteKind.PAGES), } } ) @@ -1350,6 +1360,9 @@ async function startWatcher( : new RegExp(route.dataRouteRegex), groups: routeRegex.groups, }), + kind: isAPIRoute(route.page) + ? RouteKind.PAGES_API + : RouteKind.PAGES, }) } opts.fsChecker.dynamicRoutes.unshift(...dataRoutes) diff --git a/packages/next/src/server/request-meta.ts b/packages/next/src/server/request-meta.ts index a00d59557c0a..89072ffb40aa 100644 --- a/packages/next/src/server/request-meta.ts +++ b/packages/next/src/server/request-meta.ts @@ -201,6 +201,11 @@ export interface RequestMeta { */ invokePath?: string + /** + * True when an App route matched the locale-prefixed invocation pathname. + */ + didMatchLocalePrefixedPath?: boolean + /** * The specific page output we should be matching */ diff --git a/packages/next/src/server/route-modules/route-module.ts b/packages/next/src/server/route-modules/route-module.ts index 29f62ee47bef..d830baf98cc8 100644 --- a/packages/next/src/server/route-modules/route-module.ts +++ b/packages/next/src/server/route-modules/route-module.ts @@ -760,8 +760,13 @@ export abstract class RouteModule< let localeResult: PathLocale | undefined let detectedLocale: string | undefined + const isPagesRoute = + this.definition.kind === RouteKind.PAGES || + this.definition.kind === RouteKind.PAGES_API - if (i18n) { + // `i18n` is a Pages Router feature. App routes own their locale segment, + // so their pathname must remain intact for dynamic param matching. + if (i18n && isPagesRoute) { localeResult = normalizeLocalePath( parsedUrl.pathname || '/', i18n.locales @@ -784,7 +789,7 @@ export abstract class RouteModule< const serverUtils = getServerUtils({ page: normalizedSrcPage, - i18n, + i18n: isPagesRoute ? i18n : undefined, basePath, rewrites, pageIsDynamic, @@ -809,7 +814,7 @@ export abstract class RouteModule< // Ensure parsedUrl.pathname includes locale before processing // rewrites or they won't match correctly. - if (defaultLocale && !detectedLocale) { + if (defaultLocale && !detectedLocale && isPagesRoute) { parsedUrl.pathname = `/${defaultLocale}${parsedUrl.pathname === '/' ? '' : parsedUrl.pathname}` } const locale = @@ -826,7 +831,7 @@ export abstract class RouteModule< // after processing rewrites we want to remove locale // from parsedUrl pathname - if (i18n) { + if (i18n && isPagesRoute) { parsedUrl.pathname = normalizeLocalePath( parsedUrl.pathname || '/', i18n.locales @@ -878,10 +883,7 @@ export abstract class RouteModule< // for app router since the searchParams is populated from the // URL so we don't want to strip the rewrite params from the URL // so that searchParams can include them. - if ( - this.definition.kind === RouteKind.PAGES || - this.definition.kind === RouteKind.PAGES_API - ) { + if (isPagesRoute) { for (const key of [ ...rewriteParamKeys, ...Object.keys(serverUtils.defaultRouteMatches || {}), diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx new file mode 100644 index 000000000000..40284b22c97d --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx @@ -0,0 +1,21 @@ +export function generateStaticParams() { + return [ + { lang: 'nl-NL', slug: ['blog', 'post'] }, + { lang: 'en-US', slug: ['plain', 'static'] }, + ] +} + +export default async function Page({ + params, +}: { + params: Promise<{ lang: string; slug: string[] }> +}) { + const { lang, slug } = await params + + return ( + <> +

{lang}

+

{slug.join('/')}

+ + ) +} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts new file mode 100644 index 000000000000..d222dd85f655 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts @@ -0,0 +1,10 @@ +import { NextResponse } from 'next/server' + +export async function GET( + _request: Request, + { params }: { params: Promise<{ lang: string }> } +) { + const { lang } = await params + + return NextResponse.json({ locale: lang }) +} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx new file mode 100644 index 000000000000..0e5ddbfa2332 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx @@ -0,0 +1,13 @@ +export function generateStaticParams() { + return [{ lang: 'en-US' }, { lang: 'nl-NL' }] +} + +export default async function Page({ + params, +}: { + params: Promise<{ lang: string }> +}) { + const { lang } = await params + + return

{lang}

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx new file mode 100644 index 000000000000..7c3f422f0039 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx @@ -0,0 +1,9 @@ +import type { ReactNode } from 'react' + +export default function Root({ children }: { children: ReactNode }) { + return ( + + {children} + + ) +} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx new file mode 100644 index 000000000000..7368ec917f35 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx @@ -0,0 +1,3 @@ +export default function Page() { + return

nl-NL

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx new file mode 100644 index 000000000000..e43602966f7a --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx @@ -0,0 +1,13 @@ +export function generateStaticParams() { + return [{ id: '123' }] +} + +export default async function Page({ + params, +}: { + params: Promise<{ id: string }> +}) { + const { id } = await params + + return

{id}

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx new file mode 100644 index 000000000000..ecdecdabcc57 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx @@ -0,0 +1,3 @@ +export default function Page() { + return

plain

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts new file mode 100644 index 000000000000..d3dfe3c973e6 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts @@ -0,0 +1,91 @@ +import { nextTestSetup } from 'e2e-utils' +import { load } from 'cheerio' + +describe('i18n-app-pages-domain-routing', () => { + const { next } = nextTestSetup({ + files: __dirname, + // Adapter-generated routing metadata is covered separately. This suite + // verifies the built-in router and cannot run in deploy mode until the + // adapter-specific follow-up is applied. + skipDeployment: true, + }) + + function fetchFromDomain(pathname: string, host = 'nl.example.local') { + return next.fetch(pathname, { + headers: { host }, + }) + } + + it('keeps Pages Router domain locale handling', async () => { + const response = await fetchFromDomain('/') + + expect(response.status).toBe(200) + expect(load(await response.text())('#pages-locale').text()).toBe('nl-NL') + }) + + it('routes a proxy locale rewrite to a dynamic App page', async () => { + const response = await fetchFromDomain('/test') + + expect(response.status).toBe(200) + expect(load(await response.text())('#app-locale').text()).toBe('nl-NL') + }) + + it('routes an explicit locale pathname to a dynamic App page', async () => { + const response = await fetchFromDomain('/en-US/test', 'en.example.local') + + expect(response.status).toBe(200) + expect(load(await response.text())('#app-locale').text()).toBe('en-US') + }) + + it('matches App catch-all params against the locale-prefixed pathname', async () => { + const response = await fetchFromDomain('/nl-NL/blog/post') + + expect(response.status).toBe(200) + const $ = load(await response.text()) + expect($('#app-locale').text()).toBe('nl-NL') + expect($('#app-slug').text()).toBe('blog/post') + }) + + it('routes an explicit locale pathname to an exact App page', async () => { + const response = await fetchFromDomain('/nl-NL/static') + + expect(response.status).toBe(200) + expect(load(await response.text())('#static-app-locale').text()).toBe( + 'nl-NL' + ) + }) + + it('does not strip an explicit locale to match an unlocalized exact App page', async () => { + const response = await fetchFromDomain( + '/en-US/plain/static', + 'en.example.local' + ) + + expect(response.status).toBe(200) + const $ = load(await response.text()) + expect($('#plain-static').length).toBe(0) + expect($('#app-locale').text()).toBe('en-US') + expect($('#app-slug').text()).toBe('plain/static') + }) + + it('does not expose an inferred domain locale to an unlocalized App route', async () => { + const response = await fetchFromDomain('/plain/123') + + expect(response.status).toBe(200) + expect(load(await response.text())('#plain-id').text()).toBe('123') + }) + + it('keeps locale normalization for dynamic Pages routes', async () => { + const response = await fetchFromDomain('/nl-NL/product/widget') + + expect(response.status).toBe(200) + expect(load(await response.text())('#product-locale').text()).toBe('nl-NL') + }) + + it('routes an explicit locale pathname to an App route handler', async () => { + const response = await fetchFromDomain('/nl-NL/endpoint') + + expect(response.status).toBe(200) + expect(await response.json()).toEqual({ locale: 'nl-NL' }) + }) +}) diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js b/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js new file mode 100644 index 000000000000..5d2bfbf85286 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js @@ -0,0 +1,22 @@ +/** + * @type {import('next').NextConfig} + */ +const nextConfig = { + i18n: { + locales: ['en-US', 'nl-NL'], + defaultLocale: 'en-US', + localeDetection: false, + domains: [ + { + domain: 'en.example.local', + defaultLocale: 'en-US', + }, + { + domain: 'nl.example.local', + defaultLocale: 'nl-NL', + }, + ], + }, +} + +module.exports = nextConfig diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx new file mode 100644 index 000000000000..f26d5b8a65ce --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx @@ -0,0 +1,7 @@ +import { useRouter } from 'next/router' + +export default function Page() { + const { locale } = useRouter() + + return

{locale}

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx new file mode 100644 index 000000000000..09d70ee98d11 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx @@ -0,0 +1,7 @@ +import { useRouter } from 'next/router' + +export default function Page() { + const { locale } = useRouter() + + return

{locale}

+} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts new file mode 100644 index 000000000000..401a56969650 --- /dev/null +++ b/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts @@ -0,0 +1,17 @@ +import { NextRequest, NextResponse } from 'next/server' + +const localeByHost = new Map([ + ['en.example.local', 'en-US'], + ['nl.example.local', 'nl-NL'], +]) + +export function proxy(request: NextRequest) { + const hostname = request.headers.get('host')?.split(':', 1)[0] || '' + const locale = localeByHost.get(hostname) || 'en-US' + + return NextResponse.rewrite(new URL(`/${locale}/test`, request.url)) +} + +export const config = { + matcher: '/test', +} diff --git a/test/lib/next-modes/next-deploy.ts b/test/lib/next-modes/next-deploy.ts index 7fae1d3c3482..b4bca9bbb4cd 100644 --- a/test/lib/next-modes/next-deploy.ts +++ b/test/lib/next-modes/next-deploy.ts @@ -427,6 +427,19 @@ export class NextDeployInstance extends NextInstance { additionalEnv.push(`${key}=${this.env[key]}`) } + // Providers can expose the hostname that routes to this deployment so + // fixtures can use it in host-sensitive configuration such as + // `i18n.domains`. Vercel fixtures can use the system-provided VERCEL_URL + // instead, but forward an explicit generic hostname when one is supplied. + if ( + process.env.NEXT_TEST_DEPLOYMENT_HOST && + this.env?.NEXT_TEST_DEPLOYMENT_HOST === undefined + ) { + additionalEnv.push( + `NEXT_TEST_DEPLOYMENT_HOST=${process.env.NEXT_TEST_DEPLOYMENT_HOST}` + ) + } + additionalEnv.push( `VERCEL_CLI_VERSION=${process.env.VERCEL_CLI_VERSION || 'vercel@latest'}` ) From c709412355acb4d52a66f3febcb9b1e28ec1695b Mon Sep 17 00:00:00 2001 From: "next-js-bot[bot]" <279046576+next-js-bot[bot]@users.noreply.github.com> Date: Wed, 16 Sep 2026 08:41:55 +0000 Subject: [PATCH 3/6] v16.4.0-canary.33 --- lerna.json | 2 +- packages/create-next-app/package.json | 2 +- packages/devlow-bench/package.json | 2 +- packages/eslint-config-next/package.json | 4 ++-- packages/eslint-plugin-internal/package.json | 2 +- packages/eslint-plugin-next/package.json | 2 +- packages/font/package.json | 2 +- packages/next-bundle-analyzer/package.json | 2 +- packages/next-codemod/package.json | 2 +- packages/next-env/package.json | 2 +- packages/next-mdx/package.json | 2 +- packages/next-playwright/package.json | 2 +- packages/next-plugin-storybook/package.json | 2 +- packages/next-polyfill-module/package.json | 2 +- packages/next-polyfill-nomodule/package.json | 2 +- packages/next-routing/package.json | 2 +- packages/next-rspack/package.json | 2 +- packages/next-swc/package.json | 2 +- packages/next/package.json | 14 +++++++------- packages/react-refresh-utils/package.json | 2 +- packages/third-parties/package.json | 4 ++-- pnpm-lock.yaml | 16 ++++++++-------- 22 files changed, 37 insertions(+), 37 deletions(-) diff --git a/lerna.json b/lerna.json index 0d7773a7c159..91e5e209ce5d 100644 --- a/lerna.json +++ b/lerna.json @@ -15,5 +15,5 @@ "registry": "https://registry.npmjs.org/" } }, - "version": "16.4.0-canary.32" + "version": "16.4.0-canary.33" } \ No newline at end of file diff --git a/packages/create-next-app/package.json b/packages/create-next-app/package.json index cba79da5f1ca..ed7fee8b91b9 100644 --- a/packages/create-next-app/package.json +++ b/packages/create-next-app/package.json @@ -1,6 +1,6 @@ { "name": "create-next-app", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "keywords": [ "react", "next", diff --git a/packages/devlow-bench/package.json b/packages/devlow-bench/package.json index a67324f10aa3..ce5e4f841285 100644 --- a/packages/devlow-bench/package.json +++ b/packages/devlow-bench/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/devlow-bench", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "Benchmarking tool for the developer workflow", "repository": { "type": "git", diff --git a/packages/eslint-config-next/package.json b/packages/eslint-config-next/package.json index 71572654a38c..9f53fb4e484b 100644 --- a/packages/eslint-config-next/package.json +++ b/packages/eslint-config-next/package.json @@ -1,6 +1,6 @@ { "name": "eslint-config-next", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "ESLint configuration used by Next.js.", "license": "MIT", "repository": { @@ -12,7 +12,7 @@ "dist" ], "dependencies": { - "@next/eslint-plugin-next": "16.4.0-canary.32", + "@next/eslint-plugin-next": "16.4.0-canary.33", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^3.5.2", "eslint-plugin-import": "^2.32.0", diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json index 96f010580e99..5dce27344c5e 100644 --- a/packages/eslint-plugin-internal/package.json +++ b/packages/eslint-plugin-internal/package.json @@ -1,7 +1,7 @@ { "name": "@next/eslint-plugin-internal", "private": true, - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "ESLint plugin for working on Next.js.", "exports": { ".": "./src/eslint-plugin-internal.js" diff --git a/packages/eslint-plugin-next/package.json b/packages/eslint-plugin-next/package.json index a78eb0b28f2e..391dd2b8eb9d 100644 --- a/packages/eslint-plugin-next/package.json +++ b/packages/eslint-plugin-next/package.json @@ -1,6 +1,6 @@ { "name": "@next/eslint-plugin-next", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "ESLint plugin for Next.js.", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/font/package.json b/packages/font/package.json index 44a4e067b9d7..1ab67a1df745 100644 --- a/packages/font/package.json +++ b/packages/font/package.json @@ -1,7 +1,7 @@ { "name": "@next/font", "private": true, - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "repository": { "url": "vercel/next.js", "directory": "packages/font" diff --git a/packages/next-bundle-analyzer/package.json b/packages/next-bundle-analyzer/package.json index 227d7d11aca6..58d2c97a5cf3 100644 --- a/packages/next-bundle-analyzer/package.json +++ b/packages/next-bundle-analyzer/package.json @@ -1,6 +1,6 @@ { "name": "@next/bundle-analyzer", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "main": "index.js", "types": "index.d.ts", "license": "MIT", diff --git a/packages/next-codemod/package.json b/packages/next-codemod/package.json index 39d34f894f1f..e78f3067f147 100644 --- a/packages/next-codemod/package.json +++ b/packages/next-codemod/package.json @@ -1,6 +1,6 @@ { "name": "@next/codemod", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "license": "MIT", "repository": { "type": "git", diff --git a/packages/next-env/package.json b/packages/next-env/package.json index cc3d72f986a1..f6884f292b1d 100644 --- a/packages/next-env/package.json +++ b/packages/next-env/package.json @@ -1,6 +1,6 @@ { "name": "@next/env", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "keywords": [ "react", "next", diff --git a/packages/next-mdx/package.json b/packages/next-mdx/package.json index d397518712af..0ef88ad65bad 100644 --- a/packages/next-mdx/package.json +++ b/packages/next-mdx/package.json @@ -1,6 +1,6 @@ { "name": "@next/mdx", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "main": "index.js", "license": "MIT", "repository": { diff --git a/packages/next-playwright/package.json b/packages/next-playwright/package.json index 951d479bb5a8..6cb073b20ded 100644 --- a/packages/next-playwright/package.json +++ b/packages/next-playwright/package.json @@ -1,6 +1,6 @@ { "name": "@next/playwright", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "repository": { "url": "vercel/next.js", "directory": "packages/next-playwright" diff --git a/packages/next-plugin-storybook/package.json b/packages/next-plugin-storybook/package.json index cac33410c6f1..da538bfcffc8 100644 --- a/packages/next-plugin-storybook/package.json +++ b/packages/next-plugin-storybook/package.json @@ -1,6 +1,6 @@ { "name": "@next/plugin-storybook", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "repository": { "url": "vercel/next.js", "directory": "packages/next-plugin-storybook" diff --git a/packages/next-polyfill-module/package.json b/packages/next-polyfill-module/package.json index 802128fba60f..d6409084ec1a 100644 --- a/packages/next-polyfill-module/package.json +++ b/packages/next-polyfill-module/package.json @@ -1,6 +1,6 @@ { "name": "@next/polyfill-module", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "A standard library polyfill for ES Modules supporting browsers (Edge 16+, Firefox 60+, Chrome 61+, Safari 10.1+)", "main": "dist/polyfill-module.js", "license": "MIT", diff --git a/packages/next-polyfill-nomodule/package.json b/packages/next-polyfill-nomodule/package.json index a362d50cac07..5ca010298165 100644 --- a/packages/next-polyfill-nomodule/package.json +++ b/packages/next-polyfill-nomodule/package.json @@ -1,6 +1,6 @@ { "name": "@next/polyfill-nomodule", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "A polyfill for non-dead, nomodule browsers.", "main": "dist/polyfill-nomodule.js", "license": "MIT", diff --git a/packages/next-routing/package.json b/packages/next-routing/package.json index f8f1dad759c7..40211b9c9770 100644 --- a/packages/next-routing/package.json +++ b/packages/next-routing/package.json @@ -1,6 +1,6 @@ { "name": "@next/routing", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "keywords": [ "react", "next", diff --git a/packages/next-rspack/package.json b/packages/next-rspack/package.json index 000b03bd85d8..774fdc8eab01 100644 --- a/packages/next-rspack/package.json +++ b/packages/next-rspack/package.json @@ -1,6 +1,6 @@ { "name": "next-rspack", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "repository": { "url": "vercel/next.js", "directory": "packages/next-rspack" diff --git a/packages/next-swc/package.json b/packages/next-swc/package.json index 7fa00e0f3cc8..5db7a35cf3e8 100644 --- a/packages/next-swc/package.json +++ b/packages/next-swc/package.json @@ -1,6 +1,6 @@ { "name": "@next/swc", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "private": true, "files": [ "native/" diff --git a/packages/next/package.json b/packages/next/package.json index d4766b565699..0836110a32f7 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -1,6 +1,6 @@ { "name": "next", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "The React Framework", "main": "./dist/server/next.js", "license": "MIT", @@ -100,7 +100,7 @@ ] }, "dependencies": { - "@next/env": "16.4.0-canary.32", + "@next/env": "16.4.0-canary.33", "@swc/helpers": "0.5.23", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", @@ -164,11 +164,11 @@ "@modelcontextprotocol/sdk": "1.18.1", "@mswjs/interceptors": "0.42.5", "@napi-rs/triples": "1.2.0", - "@next/font": "16.4.0-canary.32", - "@next/polyfill-module": "16.4.0-canary.32", - "@next/polyfill-nomodule": "16.4.0-canary.32", - "@next/react-refresh-utils": "16.4.0-canary.32", - "@next/swc": "16.4.0-canary.32", + "@next/font": "16.4.0-canary.33", + "@next/polyfill-module": "16.4.0-canary.33", + "@next/polyfill-nomodule": "16.4.0-canary.33", + "@next/react-refresh-utils": "16.4.0-canary.33", + "@next/swc": "16.4.0-canary.33", "@opentelemetry/api": "1.6.0", "@playwright/test": "1.61.0", "@rspack/core": "1.6.7", diff --git a/packages/react-refresh-utils/package.json b/packages/react-refresh-utils/package.json index 70d2c21fd1b1..eb182a4bcb45 100644 --- a/packages/react-refresh-utils/package.json +++ b/packages/react-refresh-utils/package.json @@ -1,6 +1,6 @@ { "name": "@next/react-refresh-utils", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "description": "An experimental package providing utilities for React Refresh.", "repository": { "url": "vercel/next.js", diff --git a/packages/third-parties/package.json b/packages/third-parties/package.json index e3f25a9cf5b4..7a2406754163 100644 --- a/packages/third-parties/package.json +++ b/packages/third-parties/package.json @@ -1,6 +1,6 @@ { "name": "@next/third-parties", - "version": "16.4.0-canary.32", + "version": "16.4.0-canary.33", "repository": { "url": "vercel/next.js", "directory": "packages/third-parties" @@ -26,7 +26,7 @@ "third-party-capital": "1.0.20" }, "devDependencies": { - "next": "16.4.0-canary.32", + "next": "16.4.0-canary.33", "outdent": "0.8.0", "prettier": "2.5.1", "typescript": "6.0.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b63fd131f5ad..f4f895d164c5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1012,7 +1012,7 @@ importers: packages/eslint-config-next: dependencies: '@next/eslint-plugin-next': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../eslint-plugin-next eslint: specifier: '>=9.0.0' @@ -1095,7 +1095,7 @@ importers: packages/next: dependencies: '@next/env': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../next-env '@swc/helpers': specifier: 0.5.23 @@ -1216,19 +1216,19 @@ importers: specifier: 1.2.0 version: 1.2.0 '@next/font': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../font '@next/polyfill-module': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../next-polyfill-module '@next/polyfill-nomodule': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../next-polyfill-nomodule '@next/react-refresh-utils': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../react-refresh-utils '@next/swc': - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../next-swc '@opentelemetry/api': specifier: 1.6.0 @@ -1971,7 +1971,7 @@ importers: version: 1.0.20 devDependencies: next: - specifier: 16.4.0-canary.32 + specifier: 16.4.0-canary.33 version: link:../next outdent: specifier: 0.8.0 From 52788bdfe16de091f037748fc8a1837d770aef4f Mon Sep 17 00:00:00 2001 From: Tim Neutkens Date: Wed, 16 Sep 2026 12:14:59 +0200 Subject: [PATCH 4/6] Revert "Fix App Router locale path matching with Pages i18n" (#98715) Reverts vercel/next.js#98095 A stale merge of #98095 caused failures on canary: https://github.com/vercel/next.js/actions/runs/35075051322 Co-authored-by: Hendrik Liebau --- packages/next/src/export/worker.ts | 4 +- packages/next/src/server/base-server.ts | 15 +-- packages/next/src/server/lib/router-server.ts | 3 - .../src/server/lib/router-utils/filesystem.ts | 44 ++------- .../server/lib/router-utils/resolve-routes.ts | 41 +++------ .../lib/router-utils/setup-dev-bundler.ts | 13 --- packages/next/src/server/request-meta.ts | 5 - .../src/server/route-modules/route-module.ts | 18 ++-- .../app/[lang]/[...slug]/page.tsx | 21 ----- .../app/[lang]/endpoint/route.ts | 10 -- .../app/[lang]/test/page.tsx | 13 --- .../app/layout.tsx | 9 -- .../app/nl-NL/static/page.tsx | 3 - .../app/plain/[id]/page.tsx | 13 --- .../app/plain/static/page.tsx | 3 - .../i18n-app-pages-domain-routing.test.ts | 91 ------------------- .../next.config.js | 22 ----- .../pages/index.tsx | 7 -- .../pages/product/[slug].tsx | 7 -- .../i18n-app-pages-domain-routing/proxy.ts | 17 ---- test/lib/next-modes/next-deploy.ts | 13 --- 21 files changed, 32 insertions(+), 340 deletions(-) delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx delete mode 100644 test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts diff --git a/packages/next/src/export/worker.ts b/packages/next/src/export/worker.ts index dc5da1b9b014..b93442fdc9c8 100644 --- a/packages/next/src/export/worker.ts +++ b/packages/next/src/export/worker.ts @@ -140,7 +140,7 @@ async function exportPageImpl( let updatedPath = exportPath._ssgPath || path let locale = exportPath._locale || commonRenderOpts.locale - if (commonRenderOpts.locale && !isAppDir) { + if (commonRenderOpts.locale) { const localePathResult = normalizeLocalePath(path, commonRenderOpts.locales) if (localePathResult.detectedLocale) { @@ -164,7 +164,7 @@ async function exportPageImpl( if (isDynamic && page !== nonLocalizedPath) { const normalizedPage = isAppDir ? normalizeAppPath(page) : page - params = getParams(normalizedPage, isAppDir ? path : updatedPath) + params = getParams(normalizedPage, updatedPath) } const { req, res } = createRequestResponseMocks({ url: updatedPath }) diff --git a/packages/next/src/server/base-server.ts b/packages/next/src/server/base-server.ts index ffda8864e28d..f5a7358b8184 100644 --- a/packages/next/src/server/base-server.ts +++ b/packages/next/src/server/base-server.ts @@ -1616,26 +1616,15 @@ export default abstract class Server< parsedUrl.pathname = parsedMatchedPath.pathname addRequestMeta(req, 'rewrittenPathname', invokePathnameInfo.pathname) } - const pathnameNoBasePath = removePathPrefix( - parsedUrl.pathname, - this.nextConfig.basePath || '' - ) const normalizeResult = normalizeLocalePath( - pathnameNoBasePath, + removePathPrefix(parsedUrl.pathname, this.nextConfig.basePath || ''), this.nextConfig.i18n?.locales ) if (normalizeResult.detectedLocale) { addRequestMeta(req, 'locale', normalizeResult.detectedLocale) } - // The resolver already selected an App route using this literal - // pathname, so keep its locale segment for App Router param parsing. - if (getRequestMeta(req, 'didMatchLocalePrefixedPath')) { - parsedUrl.pathname = pathnameNoBasePath - removeRequestMeta(req, 'localeInferredFromDefault') - } else { - parsedUrl.pathname = normalizeResult.pathname - } + parsedUrl.pathname = normalizeResult.pathname for (const key of Object.keys(parsedUrl.query)) { delete parsedUrl.query[key] diff --git a/packages/next/src/server/lib/router-server.ts b/packages/next/src/server/lib/router-server.ts index 47dcde0bbb1d..031f0ab32400 100644 --- a/packages/next/src/server/lib/router-server.ts +++ b/packages/next/src/server/lib/router-server.ts @@ -745,9 +745,6 @@ export async function initialize(opts: { handleIndex, { invokeOutput: matchedOutput.itemPath, - ...(matchedOutput.didMatchLocalePrefixedPath - ? { didMatchLocalePrefixedPath: true } - : undefined), ...(matchedOutput.error ? { invokeStatus: 500, diff --git a/packages/next/src/server/lib/router-utils/filesystem.ts b/packages/next/src/server/lib/router-utils/filesystem.ts index 04813a9b2fb7..a9b453e193d3 100644 --- a/packages/next/src/server/lib/router-utils/filesystem.ts +++ b/packages/next/src/server/lib/router-utils/filesystem.ts @@ -80,7 +80,6 @@ export type FsOutput = { locale?: string route?: RouteDefinition params?: Params - didMatchLocalePrefixedPath?: boolean requestPath?: string error?: Error } @@ -94,17 +93,13 @@ type FilesystemRouteDefinition = RouteDefinition & { const debug = setupDebug('next:router-server:filesystem') export type FilesystemDynamicRoute = ManifestRoute & { - kind: RouteKind /** * The path matcher that can be used to match paths against this route. */ match: PatchMatcher } -const buildFilesystemDynamicRoute = ( - page: string, - kind: RouteKind -): FilesystemDynamicRoute => { +const buildFilesystemDynamicRoute = (page: string): FilesystemDynamicRoute => { const routeRegex = getNamedRouteRegex(page, { prefixRouteKeys: true, includePrefix: true, @@ -117,7 +112,6 @@ const buildFilesystemDynamicRoute = ( routeKeys: routeRegex.routeKeys, match: getRouteMatcher(routeRegex), page, - kind, } } @@ -402,13 +396,13 @@ export async function setupFsCheck(opts: { ) const appDynamicRoutes: FilesystemDynamicRoute[] = [] const appDynamicRoutePathnames = new Set() - const addAppDynamicRoute = (pathname: string, kind: RouteKind) => { + const addAppDynamicRoute = (pathname: string) => { if (!isDynamicRoute(pathname) || appDynamicRoutePathnames.has(pathname)) { return } appDynamicRoutePathnames.add(pathname) - appDynamicRoutes.push(buildFilesystemDynamicRoute(pathname, kind)) + appDynamicRoutes.push(buildFilesystemDynamicRoute(pathname)) } for (const key of Object.keys(pagesManifest)) { @@ -469,7 +463,7 @@ export async function setupFsCheck(opts: { filename: appNormalizers.filename.normalize(appPathsManifest[page]), appPaths, } as FilesystemRouteDefinition) - addAppDynamicRoute(pathname, RouteKind.APP_PAGE) + addAppDynamicRoute(pathname) } const appRouteHandlers = Object.keys(appPathsManifest).filter((page) => @@ -484,7 +478,7 @@ export async function setupFsCheck(opts: { bundlePath: appNormalizers.bundlePath.normalize(page), filename: appNormalizers.filename.normalize(appPathsManifest[page]), } as FilesystemRouteDefinition) - addAppDynamicRoute(pathname, RouteKind.APP_ROUTE) + addAppDynamicRoute(pathname) } for (const route of routesManifest.dataRoutes) { @@ -507,7 +501,6 @@ export async function setupFsCheck(opts: { : new RegExp(route.dataRouteRegex), groups: routeRegex.groups, }), - kind: isAPIRoute(route.page) ? RouteKind.PAGES_API : RouteKind.PAGES, }) } nextDataRoutes.add(route.page) @@ -524,19 +517,9 @@ export async function setupFsCheck(opts: { continue } - // App routes were built from app-paths-manifest above with their - // authoritative kind. routes-manifest also contains those paths, so - // avoid registering a second copy that would be mistaken for Pages. - if (appDynamicRoutePathnames.has(route.page)) { - continue - } - filesystemDynamicRoutes.push({ ...route, - ...buildFilesystemDynamicRoute( - route.page, - isAPIRoute(route.page) ? RouteKind.PAGES_API : RouteKind.PAGES - ), + ...buildFilesystemDynamicRoute(route.page), }) } @@ -709,13 +692,10 @@ export async function setupFsCheck(opts: { async getItem( itemPath: string, - requestPath?: string, - preserveAppLocalePath = false + requestPath?: string ): Promise { const originalItemPath = itemPath - const itemKey = preserveAppLocalePath - ? `app-locale:${originalItemPath}` - : originalItemPath + const itemKey = originalItemPath const lruResult = getItemsLru?.get(itemKey) if (lruResult !== undefined) { @@ -785,17 +765,12 @@ export async function setupFsCheck(opts: { for (let [items, type] of itemsToCheck) { let locale: string | undefined - let didMatchLocalePrefixedPath = false let curItemPath = itemPath let curDecodedItemPath = decodedItemPath const isPageOrAppFile = type === 'pageFile' || type === 'appFile' - if (i18n && type === 'appFile' && preserveAppLocalePath) { - didMatchLocalePrefixedPath = Boolean( - normalizeLocalePath(itemPath, i18n.locales).detectedLocale - ) - } else if (i18n) { + if (i18n) { const localeResult = handleLocale( itemPath, // legacy behavior allows visiting static assets under @@ -1032,7 +1007,6 @@ export async function setupFsCheck(opts: { itemPath: flatKeyCopy(curItemPath), route, params, - didMatchLocalePrefixedPath, error, } diff --git a/packages/next/src/server/lib/router-utils/resolve-routes.ts b/packages/next/src/server/lib/router-utils/resolve-routes.ts index 891e4ff2e4ff..01803ef268f9 100644 --- a/packages/next/src/server/lib/router-utils/resolve-routes.ts +++ b/packages/next/src/server/lib/router-utils/resolve-routes.ts @@ -31,7 +31,6 @@ import { normalizeLocalePath } from '../../../shared/lib/i18n/normalize-locale-p import { removePathPrefix } from '../../../shared/lib/router/utils/remove-path-prefix' import { NextDataPathnameNormalizer } from '../../normalizers/request/next-data' import { BasePathPathnameNormalizer } from '../../normalizers/request/base-path' -import { RouteKind } from '../../route-kind' import { addRequestMeta } from '../../request-meta' import { isRSCRequestHeader } from '../is-rsc-request' @@ -209,10 +208,6 @@ export function getResolveRoutes( let domainLocale: ReturnType | undefined let defaultLocale: string | undefined - // The Pages Router needs an internal default-locale prefix while applying - // rewrites. App routes should only see a locale segment that was actually - // present in the request or introduced by a rewrite. - let localePathWasInferred = false let initialLocaleResult: | ReturnType | undefined = undefined @@ -257,7 +252,6 @@ export function getResolveRoutes( !initialLocaleResult.detectedLocale && !initialLocaleResult.pathname.startsWith('/_next/') ) { - localePathWasInferred = true parsedUrl.pathname = addPathPrefix( initialLocaleResult.pathname === '/' ? `/${defaultLocale}` @@ -292,11 +286,7 @@ export function getResolveRoutes( return } if (!invokedOutputs?.has(pathname)) { - const output = await fsChecker.getItem( - pathname, - undefined, - Boolean(config.i18n && !localePathWasInferred) - ) + const output = await fsChecker.getItem(pathname) if (output) { if ( @@ -328,16 +318,7 @@ export function getResolveRoutes( if (invokedOutputs?.has(route.page)) { continue } - const isAppRoute = - route.kind === RouteKind.APP_PAGE || - route.kind === RouteKind.APP_ROUTE - // Pages routes match their locale-normalized pathname. App routes own - // explicit locale segments and therefore match the literal pathname. - const routePathname = - isAppRoute && !localePathWasInferred - ? curPathname || '/' - : localeResult.pathname - const params = route.match(routePathname) + const params = route.match(localeResult.pathname) if (params) { const pageOutput = await fsChecker.getItem( @@ -345,6 +326,14 @@ export function getResolveRoutes( curPathname || undefined ) + // i18n locales aren't matched for app dir + if ( + pageOutput?.type === 'appFile' && + initialLocaleResult?.detectedLocale + ) { + continue + } + if (pageOutput && curPathname?.startsWith('/_next/data')) { setIsNextDataRequest() } @@ -356,8 +345,6 @@ export function getResolveRoutes( // The dynamic-route scan matched the concrete request path; // keep those params with the fsChecker route definition. params, - didMatchLocalePrefixedPath: - isAppRoute && routePathname !== localeResult.pathname, } : null } @@ -515,11 +502,7 @@ export function getResolveRoutes( if (invokedOutputs?.has(pathname) || checkLocaleApi(pathname)) { return } - const output = await fsChecker.getItem( - pathname, - undefined, - Boolean(config.i18n && !localePathWasInferred) - ) + const output = await fsChecker.getItem(pathname) if ( output && @@ -759,7 +742,6 @@ export function getResolveRoutes( resHeaders['x-middleware-rewrite'] = destination parsedUrl = parseUrl(destination) - localePathWasInferred = false if (parsedUrl.protocol) { return { @@ -946,7 +928,6 @@ export function getResolveRoutes( } } didRewrite = true - localePathWasInferred = false parsedUrl.pathname = parsedDestination.pathname Object.assign(parsedUrl.query, parsedDestination.query) } diff --git a/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts b/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts index ba618506fbc3..2db6020a8429 100644 --- a/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts +++ b/packages/next/src/server/lib/router-utils/setup-dev-bundler.ts @@ -1239,13 +1239,6 @@ async function startWatcher( opts.fsChecker.setRouteDefinitions('pageFile', pageRouteDefinitions) opts.fsChecker.setRouteDefinitions('appFile', appRouteDefinitions) - const routeKinds = new Map( - [...pageRouteDefinitions, ...appRouteDefinitions].map((definition) => [ - definition.pathname, - definition.kind, - ]) - ) - // TODO: pass this to fsChecker/next-dev-server? serverFields.middleware = middlewareMatchers ? { @@ -1328,9 +1321,6 @@ async function startWatcher( routeKeys: regex.routeKeys, match: getRouteMatcher(regex), page, - kind: - routeKinds.get(page) ?? - (isAPIRoute(page) ? RouteKind.PAGES_API : RouteKind.PAGES), } } ) @@ -1360,9 +1350,6 @@ async function startWatcher( : new RegExp(route.dataRouteRegex), groups: routeRegex.groups, }), - kind: isAPIRoute(route.page) - ? RouteKind.PAGES_API - : RouteKind.PAGES, }) } opts.fsChecker.dynamicRoutes.unshift(...dataRoutes) diff --git a/packages/next/src/server/request-meta.ts b/packages/next/src/server/request-meta.ts index 89072ffb40aa..a00d59557c0a 100644 --- a/packages/next/src/server/request-meta.ts +++ b/packages/next/src/server/request-meta.ts @@ -201,11 +201,6 @@ export interface RequestMeta { */ invokePath?: string - /** - * True when an App route matched the locale-prefixed invocation pathname. - */ - didMatchLocalePrefixedPath?: boolean - /** * The specific page output we should be matching */ diff --git a/packages/next/src/server/route-modules/route-module.ts b/packages/next/src/server/route-modules/route-module.ts index d830baf98cc8..29f62ee47bef 100644 --- a/packages/next/src/server/route-modules/route-module.ts +++ b/packages/next/src/server/route-modules/route-module.ts @@ -760,13 +760,8 @@ export abstract class RouteModule< let localeResult: PathLocale | undefined let detectedLocale: string | undefined - const isPagesRoute = - this.definition.kind === RouteKind.PAGES || - this.definition.kind === RouteKind.PAGES_API - // `i18n` is a Pages Router feature. App routes own their locale segment, - // so their pathname must remain intact for dynamic param matching. - if (i18n && isPagesRoute) { + if (i18n) { localeResult = normalizeLocalePath( parsedUrl.pathname || '/', i18n.locales @@ -789,7 +784,7 @@ export abstract class RouteModule< const serverUtils = getServerUtils({ page: normalizedSrcPage, - i18n: isPagesRoute ? i18n : undefined, + i18n, basePath, rewrites, pageIsDynamic, @@ -814,7 +809,7 @@ export abstract class RouteModule< // Ensure parsedUrl.pathname includes locale before processing // rewrites or they won't match correctly. - if (defaultLocale && !detectedLocale && isPagesRoute) { + if (defaultLocale && !detectedLocale) { parsedUrl.pathname = `/${defaultLocale}${parsedUrl.pathname === '/' ? '' : parsedUrl.pathname}` } const locale = @@ -831,7 +826,7 @@ export abstract class RouteModule< // after processing rewrites we want to remove locale // from parsedUrl pathname - if (i18n && isPagesRoute) { + if (i18n) { parsedUrl.pathname = normalizeLocalePath( parsedUrl.pathname || '/', i18n.locales @@ -883,7 +878,10 @@ export abstract class RouteModule< // for app router since the searchParams is populated from the // URL so we don't want to strip the rewrite params from the URL // so that searchParams can include them. - if (isPagesRoute) { + if ( + this.definition.kind === RouteKind.PAGES || + this.definition.kind === RouteKind.PAGES_API + ) { for (const key of [ ...rewriteParamKeys, ...Object.keys(serverUtils.defaultRouteMatches || {}), diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx deleted file mode 100644 index 40284b22c97d..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/[...slug]/page.tsx +++ /dev/null @@ -1,21 +0,0 @@ -export function generateStaticParams() { - return [ - { lang: 'nl-NL', slug: ['blog', 'post'] }, - { lang: 'en-US', slug: ['plain', 'static'] }, - ] -} - -export default async function Page({ - params, -}: { - params: Promise<{ lang: string; slug: string[] }> -}) { - const { lang, slug } = await params - - return ( - <> -

{lang}

-

{slug.join('/')}

- - ) -} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts deleted file mode 100644 index d222dd85f655..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/endpoint/route.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NextResponse } from 'next/server' - -export async function GET( - _request: Request, - { params }: { params: Promise<{ lang: string }> } -) { - const { lang } = await params - - return NextResponse.json({ locale: lang }) -} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx deleted file mode 100644 index 0e5ddbfa2332..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/[lang]/test/page.tsx +++ /dev/null @@ -1,13 +0,0 @@ -export function generateStaticParams() { - return [{ lang: 'en-US' }, { lang: 'nl-NL' }] -} - -export default async function Page({ - params, -}: { - params: Promise<{ lang: string }> -}) { - const { lang } = await params - - return

{lang}

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx deleted file mode 100644 index 7c3f422f0039..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/layout.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import type { ReactNode } from 'react' - -export default function Root({ children }: { children: ReactNode }) { - return ( - - {children} - - ) -} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx deleted file mode 100644 index 7368ec917f35..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/nl-NL/static/page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -export default function Page() { - return

nl-NL

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx deleted file mode 100644 index e43602966f7a..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/[id]/page.tsx +++ /dev/null @@ -1,13 +0,0 @@ -export function generateStaticParams() { - return [{ id: '123' }] -} - -export default async function Page({ - params, -}: { - params: Promise<{ id: string }> -}) { - const { id } = await params - - return

{id}

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx deleted file mode 100644 index ecdecdabcc57..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/app/plain/static/page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -export default function Page() { - return

plain

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts deleted file mode 100644 index d3dfe3c973e6..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/i18n-app-pages-domain-routing.test.ts +++ /dev/null @@ -1,91 +0,0 @@ -import { nextTestSetup } from 'e2e-utils' -import { load } from 'cheerio' - -describe('i18n-app-pages-domain-routing', () => { - const { next } = nextTestSetup({ - files: __dirname, - // Adapter-generated routing metadata is covered separately. This suite - // verifies the built-in router and cannot run in deploy mode until the - // adapter-specific follow-up is applied. - skipDeployment: true, - }) - - function fetchFromDomain(pathname: string, host = 'nl.example.local') { - return next.fetch(pathname, { - headers: { host }, - }) - } - - it('keeps Pages Router domain locale handling', async () => { - const response = await fetchFromDomain('/') - - expect(response.status).toBe(200) - expect(load(await response.text())('#pages-locale').text()).toBe('nl-NL') - }) - - it('routes a proxy locale rewrite to a dynamic App page', async () => { - const response = await fetchFromDomain('/test') - - expect(response.status).toBe(200) - expect(load(await response.text())('#app-locale').text()).toBe('nl-NL') - }) - - it('routes an explicit locale pathname to a dynamic App page', async () => { - const response = await fetchFromDomain('/en-US/test', 'en.example.local') - - expect(response.status).toBe(200) - expect(load(await response.text())('#app-locale').text()).toBe('en-US') - }) - - it('matches App catch-all params against the locale-prefixed pathname', async () => { - const response = await fetchFromDomain('/nl-NL/blog/post') - - expect(response.status).toBe(200) - const $ = load(await response.text()) - expect($('#app-locale').text()).toBe('nl-NL') - expect($('#app-slug').text()).toBe('blog/post') - }) - - it('routes an explicit locale pathname to an exact App page', async () => { - const response = await fetchFromDomain('/nl-NL/static') - - expect(response.status).toBe(200) - expect(load(await response.text())('#static-app-locale').text()).toBe( - 'nl-NL' - ) - }) - - it('does not strip an explicit locale to match an unlocalized exact App page', async () => { - const response = await fetchFromDomain( - '/en-US/plain/static', - 'en.example.local' - ) - - expect(response.status).toBe(200) - const $ = load(await response.text()) - expect($('#plain-static').length).toBe(0) - expect($('#app-locale').text()).toBe('en-US') - expect($('#app-slug').text()).toBe('plain/static') - }) - - it('does not expose an inferred domain locale to an unlocalized App route', async () => { - const response = await fetchFromDomain('/plain/123') - - expect(response.status).toBe(200) - expect(load(await response.text())('#plain-id').text()).toBe('123') - }) - - it('keeps locale normalization for dynamic Pages routes', async () => { - const response = await fetchFromDomain('/nl-NL/product/widget') - - expect(response.status).toBe(200) - expect(load(await response.text())('#product-locale').text()).toBe('nl-NL') - }) - - it('routes an explicit locale pathname to an App route handler', async () => { - const response = await fetchFromDomain('/nl-NL/endpoint') - - expect(response.status).toBe(200) - expect(await response.json()).toEqual({ locale: 'nl-NL' }) - }) -}) diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js b/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js deleted file mode 100644 index 5d2bfbf85286..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/next.config.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * @type {import('next').NextConfig} - */ -const nextConfig = { - i18n: { - locales: ['en-US', 'nl-NL'], - defaultLocale: 'en-US', - localeDetection: false, - domains: [ - { - domain: 'en.example.local', - defaultLocale: 'en-US', - }, - { - domain: 'nl.example.local', - defaultLocale: 'nl-NL', - }, - ], - }, -} - -module.exports = nextConfig diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx deleted file mode 100644 index f26d5b8a65ce..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/index.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import { useRouter } from 'next/router' - -export default function Page() { - const { locale } = useRouter() - - return

{locale}

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx b/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx deleted file mode 100644 index 09d70ee98d11..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/pages/product/[slug].tsx +++ /dev/null @@ -1,7 +0,0 @@ -import { useRouter } from 'next/router' - -export default function Page() { - const { locale } = useRouter() - - return

{locale}

-} diff --git a/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts b/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts deleted file mode 100644 index 401a56969650..000000000000 --- a/test/e2e/app-dir/i18n-app-pages-domain-routing/proxy.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { NextRequest, NextResponse } from 'next/server' - -const localeByHost = new Map([ - ['en.example.local', 'en-US'], - ['nl.example.local', 'nl-NL'], -]) - -export function proxy(request: NextRequest) { - const hostname = request.headers.get('host')?.split(':', 1)[0] || '' - const locale = localeByHost.get(hostname) || 'en-US' - - return NextResponse.rewrite(new URL(`/${locale}/test`, request.url)) -} - -export const config = { - matcher: '/test', -} diff --git a/test/lib/next-modes/next-deploy.ts b/test/lib/next-modes/next-deploy.ts index b4bca9bbb4cd..7fae1d3c3482 100644 --- a/test/lib/next-modes/next-deploy.ts +++ b/test/lib/next-modes/next-deploy.ts @@ -427,19 +427,6 @@ export class NextDeployInstance extends NextInstance { additionalEnv.push(`${key}=${this.env[key]}`) } - // Providers can expose the hostname that routes to this deployment so - // fixtures can use it in host-sensitive configuration such as - // `i18n.domains`. Vercel fixtures can use the system-provided VERCEL_URL - // instead, but forward an explicit generic hostname when one is supplied. - if ( - process.env.NEXT_TEST_DEPLOYMENT_HOST && - this.env?.NEXT_TEST_DEPLOYMENT_HOST === undefined - ) { - additionalEnv.push( - `NEXT_TEST_DEPLOYMENT_HOST=${process.env.NEXT_TEST_DEPLOYMENT_HOST}` - ) - } - additionalEnv.push( `VERCEL_CLI_VERSION=${process.env.VERCEL_CLI_VERSION || 'vercel@latest'}` ) From c92542c99c0c55237d2966243852ab5b18622569 Mon Sep 17 00:00:00 2001 From: Hendrik Liebau Date: Wed, 16 Sep 2026 12:53:23 +0200 Subject: [PATCH 5/6] [test] Fix Webpack deployment failures in PostCSS tests (#98710) #98527 enabled deployment coverage for a Turbopack-only fixture, but `skipStart` did not prevent deployment during `setup()`. The suite now uses `@force-gate turbopack` to skip setup for other bundlers while preserving Turbopack deployment coverage. This fixes the failure in https://github.com/vercel/next.js/actions/runs/35037213782/job/104625995824. --- ...turbopack-postcss-multiple-configs.test.ts | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/test/e2e/app-dir/turbopack-postcss-multiple-configs/turbopack-postcss-multiple-configs.test.ts b/test/e2e/app-dir/turbopack-postcss-multiple-configs/turbopack-postcss-multiple-configs.test.ts index 0b938649011f..7547fa4136c7 100644 --- a/test/e2e/app-dir/turbopack-postcss-multiple-configs/turbopack-postcss-multiple-configs.test.ts +++ b/test/e2e/app-dir/turbopack-postcss-multiple-configs/turbopack-postcss-multiple-configs.test.ts @@ -1,21 +1,12 @@ import { nextTestSetup } from 'e2e-utils' +// Per-directory PostCSS config resolution is a Turbopack-only feature +// (turbopackLocalPostcssConfig). Webpack does not support this feature and does +// not accept function-valued PostCSS plugins, so skip non-Turbopack runs. +// @force-gate turbopack describe('turbopack-postcss-multiple-configs', () => { - const { next, isTurbopack } = nextTestSetup({ + const { next } = nextTestSetup({ files: __dirname, - // Per-directory PostCSS config resolution is a Turbopack-only feature - // (turbopackLocalPostcssConfig). Webpack does not support this feature and - // does not accept function-valued PostCSS plugins, so skip non-Turbopack runs. - skipStart: true, - }) - - if (!isTurbopack) { - it('should only run with Turbopack', () => {}) - return - } - - beforeAll(async () => { - await next.start() }) // Each directory's postcss.config.js passes a unique color option to the From f1a7e1db621761c2b82b0fad34762ab4f2121737 Mon Sep 17 00:00:00 2001 From: Arya <60646682+aryabyte21@users.noreply.github.com> Date: Wed, 16 Sep 2026 19:58:06 +0800 Subject: [PATCH 6/6] fix(use-cache): track root params read in "use cache" as vary params (#98674) ### What? A `"use cache"` segment that reads a root param via `next/root-params` is reused after a client-side navigation that changes that param. With `cacheComponents`, a production build and ``: open `/en`, click `de`. URL, `usePathname()` and layout say `de`; the page segment still says `en`. ### Why? Inside a `"use cache"` scope, `getRootParam` only records the name in `readRootParamNames`, which keys the server cache entry. Nothing forwards it to the response's root vary params, so the client re-keys the segment as `Fallback` and reuses it for every locale. `await params` masks the bug because serializing the cache key touches the tracked params object. ### How? `propagateCacheEntryMetadata` adds `readRootParamNames` to the outer store's root vary accumulator when one exists. The client already unions root vary params into every segment. Not covered: `"use cache: private"` root-param reads are only tracked in dev, so the same reuse can still happen there in production. Review order: `use-cache-wrapper.ts` is the whole change (one block after the propagation switch, plus the doc note above `maybePropagateCacheEntryMetadata`). The fixture adds a `[locale]` route under the existing `vary-params` app. Test: `vary-params.test.ts`, "does not reuse a "use cache" segment across root param values", fails with `Received: "Locale: en"` before the fix. Reporter's repro renders `de` after navigation on the patched package. Fixes #98493 cc @unstubbable @lubieowoce (use cache vary params) --- .../src/server/use-cache/use-cache-wrapper.ts | 23 ++++++++++++--- .../cached-root-params/[locale]/layout.tsx | 28 +++++++++++++++++++ .../app/cached-root-params/[locale]/page.tsx | 7 +++++ .../vary-params/vary-params.test.ts | 26 +++++++++++++++++ 4 files changed, 80 insertions(+), 4 deletions(-) create mode 100644 test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/layout.tsx create mode 100644 test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/page.tsx diff --git a/packages/next/src/server/use-cache/use-cache-wrapper.ts b/packages/next/src/server/use-cache/use-cache-wrapper.ts index 918f9558393b..6840ff1230d7 100644 --- a/packages/next/src/server/use-cache/use-cache-wrapper.ts +++ b/packages/next/src/server/use-cache/use-cache-wrapper.ts @@ -28,6 +28,7 @@ import type { import { getHmrRefreshHash, getResumeDataCache, + getVaryParamsAccumulator, workUnitAsyncStorage, getDraftModeProviderForCacheScope, getCacheSignal, @@ -35,6 +36,7 @@ import { getServerComponentsHmrCache, willConsumerServerCache, } from '../app-render/work-unit-async-storage.external' +import { accumulateVaryParam } from '../app-render/vary-params' import { applyOwnerStack, @@ -1029,6 +1031,17 @@ function propagateCacheEntryMetadata( cacheContext.outerWorkUnitStore satisfies never } } + + if (metadata.readRootParamNames) { + const varyParamsAccumulator = getVaryParamsAccumulator( + cacheContext.outerWorkUnitStore + ) + if (varyParamsAccumulator) { + for (const paramName of metadata.readRootParamNames) { + accumulateVaryParam(varyParamsAccumulator.rootParams, paramName) + } + } + } } /** @@ -1041,10 +1054,12 @@ function propagateCacheEntryMetadata( * `propagateCacheEntryMetadata` is called unconditionally (after the omission * checks have already filtered out short-lived entries). * - * Note: Root param names are only propagated when the outer context is a - * `cache` store (i.e. an enclosing `"use cache"` function), which is never - * deferred. For prerender contexts, root param names are tracked separately - * via `addKnownRootParamNames` in the resume data cache read path. + * Note: Root param names are only propagated to `readRootParamNames` when the + * outer context is a `cache` store (i.e. an enclosing `"use cache"` function), + * which is never deferred. For prerender contexts, root param names are + * tracked separately via `addKnownRootParamNames` in the resume data cache + * read path. They're also recorded as root vary params (if tracked), so that + * the client doesn't reuse the segment across different values. */ function maybePropagateCacheEntryMetadata( cacheContext: CacheContext, diff --git a/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/layout.tsx b/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/layout.tsx new file mode 100644 index 000000000000..0b798779b592 --- /dev/null +++ b/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/layout.tsx @@ -0,0 +1,28 @@ +'use cache' + +import Link from 'next/link' +import { locale } from 'next/root-params' + +export async function generateStaticParams() { + return [{ locale: 'en' }, { locale: 'de' }] +} + +export default async function Layout({ + children, +}: { + children: React.ReactNode +}) { + return ( + + + + en + + + de + + {children} + + + ) +} diff --git a/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/page.tsx b/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/page.tsx new file mode 100644 index 000000000000..8bc2a4ca3a39 --- /dev/null +++ b/test/e2e/app-dir/segment-cache/vary-params/app/cached-root-params/[locale]/page.tsx @@ -0,0 +1,7 @@ +'use cache' + +import { locale } from 'next/root-params' + +export default async function Page() { + return
{`Locale: ${await locale()}`}
+} diff --git a/test/e2e/app-dir/segment-cache/vary-params/vary-params.test.ts b/test/e2e/app-dir/segment-cache/vary-params/vary-params.test.ts index 89b046905ffb..e0353daa898d 100644 --- a/test/e2e/app-dir/segment-cache/vary-params/vary-params.test.ts +++ b/test/e2e/app-dir/segment-cache/vary-params/vary-params.test.ts @@ -822,4 +822,30 @@ describe('segment cache - vary params', () => { { includes: 'Root param page content - param: bbb' } ) }) + + it('does not reuse a "use cache" segment across root param values', async () => { + let act: ReturnType + const browser = await next.browser('/cached-root-params/en', { + beforePageLoad(p: Playwright.Page) { + act = createRouterAct(p) + }, + }) + + expect(await browser.elementById('cached-root-param').text()).toBe( + 'Locale: en' + ) + + // Not prefetched, so the navigation fetches /de and must not reuse the + // page segment cached for /en. + await act(async () => { + const link = await browser.elementByCss( + 'a[href="/cached-root-params/de"]' + ) + await link.click() + }) + + expect(await browser.elementById('cached-root-param').text()).toBe( + 'Locale: de' + ) + }) })