diff --git a/crates/next-core/src/next_config.rs b/crates/next-core/src/next_config.rs index 900b58e72b150..d9ef99cc329df 100644 --- a/crates/next-core/src/next_config.rs +++ b/crates/next-core/src/next_config.rs @@ -1012,6 +1012,7 @@ pub struct ExperimentalConfig { server_source_maps: Option, swc_trace_profiling: Option, transition_indicator: Option, + gesture_transition: Option, /// @internal Used by the Next.js internals only. trust_host_header: Option, @@ -1782,6 +1783,11 @@ impl NextConfig { Vc::cell(self.experimental.transition_indicator.unwrap_or(false)) } + #[turbo_tasks::function] + pub fn enable_gesture_transition(&self) -> Vc { + Vc::cell(self.experimental.gesture_transition.unwrap_or(false)) + } + #[turbo_tasks::function] pub fn enable_cache_components(&self) -> Vc { Vc::cell(self.cache_components.unwrap_or(false)) diff --git a/crates/next-core/src/next_import_map.rs b/crates/next-core/src/next_import_map.rs index 82c5a99d46c20..a734c931f9845 100644 --- a/crates/next-core/src/next_import_map.rs +++ b/crates/next-core/src/next_import_map.rs @@ -130,7 +130,8 @@ pub async fn get_next_client_import_map( // Keep in sync with file:///./../../../packages/next/src/lib/needs-experimental-react.ts let taint = *next_config.enable_taint().await?; let transition_indicator = *next_config.enable_transition_indicator().await?; - let react_channel = if taint || transition_indicator { + let gesture_transition = *next_config.enable_gesture_transition().await?; + let react_channel = if taint || transition_indicator || gesture_transition { "-experimental" } else { "" @@ -834,7 +835,8 @@ async fn apply_vendored_react_aliases_server( ) -> Result<()> { let taint = *next_config.enable_taint().await?; let transition_indicator = *next_config.enable_transition_indicator().await?; - let react_channel = if taint || transition_indicator { + let gesture_transition = *next_config.enable_gesture_transition().await?; + let react_channel = if taint || transition_indicator || gesture_transition { "-experimental" } else { "" diff --git a/lerna.json b/lerna.json index c1551a4ee72d3..0589fb4ffaadd 100644 --- a/lerna.json +++ b/lerna.json @@ -15,5 +15,5 @@ "registry": "https://registry.npmjs.org/" } }, - "version": "16.1.1-canary.33" + "version": "16.1.1-canary.35" } \ No newline at end of file diff --git a/package.json b/package.json index cc9859ba039a7..d57ca232d9b53 100644 --- a/package.json +++ b/package.json @@ -198,7 +198,7 @@ "eslint-plugin-jsdoc": "48.0.4", "eslint-plugin-mdx": "3.1.5", "eslint-plugin-react": "7.37.0", - "eslint-plugin-react-hooks": "0.0.0-experimental-bef88f7c-20260116", + "eslint-plugin-react-hooks": "0.0.0-experimental-d2908752-20260119", "event-stream": "4.0.1", "execa": "2.0.3", "expect": "29.7.0", @@ -258,16 +258,16 @@ "pretty-ms": "7.0.0", "random-seed": "0.3.0", "react": "19.0.0", - "react-builtin": "npm:react@19.3.0-canary-bef88f7c-20260116", + "react-builtin": "npm:react@19.3.0-canary-d2908752-20260119", "react-dom": "19.0.0", - "react-dom-builtin": "npm:react-dom@19.3.0-canary-bef88f7c-20260116", - "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-bef88f7c-20260116", - "react-experimental-builtin": "npm:react@0.0.0-experimental-bef88f7c-20260116", - "react-is-builtin": "npm:react-is@19.3.0-canary-bef88f7c-20260116", - "react-server-dom-turbopack": "19.3.0-canary-bef88f7c-20260116", - "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-bef88f7c-20260116", - "react-server-dom-webpack": "19.3.0-canary-bef88f7c-20260116", - "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-bef88f7c-20260116", + "react-dom-builtin": "npm:react-dom@19.3.0-canary-d2908752-20260119", + "react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-d2908752-20260119", + "react-experimental-builtin": "npm:react@0.0.0-experimental-d2908752-20260119", + "react-is-builtin": "npm:react-is@19.3.0-canary-d2908752-20260119", + "react-server-dom-turbopack": "19.3.0-canary-d2908752-20260119", + "react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-d2908752-20260119", + "react-server-dom-webpack": "19.3.0-canary-d2908752-20260119", + "react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-d2908752-20260119", "react-ssr-prepass": "1.0.8", "react-virtualized": "9.22.3", "relay-compiler": "13.0.2", @@ -277,8 +277,8 @@ "resolve-from": "5.0.0", "sass": "1.54.0", "satori": "0.15.2", - "scheduler-builtin": "npm:scheduler@0.28.0-canary-bef88f7c-20260116", - "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-bef88f7c-20260116", + "scheduler-builtin": "npm:scheduler@0.28.0-canary-d2908752-20260119", + "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-d2908752-20260119", "seedrandom": "3.0.5", "semver": "7.3.7", "serve-handler": "6.1.6", @@ -323,10 +323,10 @@ "@types/react-dom": "19.2.1", "@types/retry": "0.12.0", "jest-snapshot": "30.0.0-alpha.6", - "react": "19.3.0-canary-bef88f7c-20260116", - "react-dom": "19.3.0-canary-bef88f7c-20260116", - "react-is": "19.3.0-canary-bef88f7c-20260116", - "scheduler": "0.28.0-canary-bef88f7c-20260116" + "react": "19.3.0-canary-d2908752-20260119", + "react-dom": "19.3.0-canary-d2908752-20260119", + "react-is": "19.3.0-canary-d2908752-20260119", + "scheduler": "0.28.0-canary-d2908752-20260119" }, "packageExtensions": { "eslint-plugin-react-hooks@0.0.0-experimental-6de32a5a-20250822": { diff --git a/packages/create-next-app/package.json b/packages/create-next-app/package.json index 62b58d0568060..da3f02d9ea447 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.1.1-canary.33", + "version": "16.1.1-canary.35", "keywords": [ "react", "next", diff --git a/packages/eslint-config-next/package.json b/packages/eslint-config-next/package.json index 15cd240eac310..50bdb5c0115df 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.1.1-canary.33", + "version": "16.1.1-canary.35", "description": "ESLint configuration used by Next.js.", "license": "MIT", "repository": { @@ -12,7 +12,7 @@ "dist" ], "dependencies": { - "@next/eslint-plugin-next": "16.1.1-canary.33", + "@next/eslint-plugin-next": "16.1.1-canary.35", "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 4ba331d3d1283..23a95f85c0bd9 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 8b1e38168b0c3..9f0afd41aa55f 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 5b6d926353b92..265fa7914ac14 100644 --- a/packages/font/package.json +++ b/packages/font/package.json @@ -1,7 +1,7 @@ { "name": "@next/font", "private": true, - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "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 d828e497fb3a6..1e47eedb2e6ed 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.1.1-canary.33", + "version": "16.1.1-canary.35", "main": "index.js", "types": "index.d.ts", "license": "MIT", diff --git a/packages/next-codemod/package.json b/packages/next-codemod/package.json index 3720d6979fba7..f517d971d6b92 100644 --- a/packages/next-codemod/package.json +++ b/packages/next-codemod/package.json @@ -1,6 +1,6 @@ { "name": "@next/codemod", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "license": "MIT", "repository": { "type": "git", diff --git a/packages/next-env/package.json b/packages/next-env/package.json index ba3a94caa31ed..a0715e5d42123 100644 --- a/packages/next-env/package.json +++ b/packages/next-env/package.json @@ -1,6 +1,6 @@ { "name": "@next/env", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "keywords": [ "react", "next", diff --git a/packages/next-mdx/package.json b/packages/next-mdx/package.json index 0dfa8decaf0c6..5ddc3be046f09 100644 --- a/packages/next-mdx/package.json +++ b/packages/next-mdx/package.json @@ -1,6 +1,6 @@ { "name": "@next/mdx", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "main": "index.js", "license": "MIT", "repository": { diff --git a/packages/next-plugin-storybook/package.json b/packages/next-plugin-storybook/package.json index fcfbd0e7fc69c..76dbc91c8c6fb 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 c9394593c825a..a1b959abb3462 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 7a179760353e9..e2aa53280b0c3 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 8f9fb0ba14eb2..bb6f460f796f0 100644 --- a/packages/next-routing/package.json +++ b/packages/next-routing/package.json @@ -1,6 +1,6 @@ { "name": "@next/routing", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "keywords": [ "react", "next", diff --git a/packages/next-rspack/package.json b/packages/next-rspack/package.json index 7cab9247abad5..663929cd40b71 100644 --- a/packages/next-rspack/package.json +++ b/packages/next-rspack/package.json @@ -1,6 +1,6 @@ { "name": "next-rspack", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "repository": { "url": "vercel/next.js", "directory": "packages/next-rspack" diff --git a/packages/next-swc/package.json b/packages/next-swc/package.json index d8d2b55751dac..1edc62d8aa702 100644 --- a/packages/next-swc/package.json +++ b/packages/next-swc/package.json @@ -1,6 +1,6 @@ { "name": "@next/swc", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "private": true, "files": [ "native/" diff --git a/packages/next/package.json b/packages/next/package.json index 60f4a8a08a27f..afbe3c9c17894 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -1,6 +1,6 @@ { "name": "next", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "description": "The React Framework", "main": "./dist/server/next.js", "license": "MIT", @@ -97,7 +97,7 @@ ] }, "dependencies": { - "@next/env": "16.1.1-canary.33", + "@next/env": "16.1.1-canary.35", "@swc/helpers": "0.5.15", "baseline-browser-mapping": "^2.8.3", "caniuse-lite": "^1.0.30001579", @@ -162,11 +162,11 @@ "@modelcontextprotocol/sdk": "1.18.1", "@mswjs/interceptors": "0.23.0", "@napi-rs/triples": "1.2.0", - "@next/font": "16.1.1-canary.33", - "@next/polyfill-module": "16.1.1-canary.33", - "@next/polyfill-nomodule": "16.1.1-canary.33", - "@next/react-refresh-utils": "16.1.1-canary.33", - "@next/swc": "16.1.1-canary.33", + "@next/font": "16.1.1-canary.35", + "@next/polyfill-module": "16.1.1-canary.35", + "@next/polyfill-nomodule": "16.1.1-canary.35", + "@next/react-refresh-utils": "16.1.1-canary.35", + "@next/swc": "16.1.1-canary.35", "@opentelemetry/api": "1.6.0", "@playwright/test": "1.51.1", "@rspack/core": "1.6.7", diff --git a/packages/next/src/build/define-env.ts b/packages/next/src/build/define-env.ts index 725223d76f677..f6e3c588b67a2 100644 --- a/packages/next/src/build/define-env.ts +++ b/packages/next/src/build/define-env.ts @@ -343,6 +343,8 @@ export function getDefineEnv({ config.experimental.reactDebugChannel ?? false, 'process.env.__NEXT_TRANSITION_INDICATOR': config.experimental.transitionIndicator ?? false, + 'process.env.__NEXT_GESTURE_TRANSITION': + config.experimental.gestureTransition ?? false, 'process.env.__NEXT_CACHE_LIFE': config.cacheLife, 'process.env.__NEXT_CLIENT_PARAM_PARSING_ORIGINS': config.experimental.clientParamParsingOrigins || [], diff --git a/packages/next/src/client/components/app-router-instance.ts b/packages/next/src/client/components/app-router-instance.ts index 01ed832c2f09f..bf5a85d308cc2 100644 --- a/packages/next/src/client/components/app-router-instance.ts +++ b/packages/next/src/client/components/app-router-instance.ts @@ -19,7 +19,12 @@ import { type PrefetchTaskFetchStrategy, } from './segment-cache/types' import { prefetch as prefetchWithSegmentCache } from './segment-cache/prefetch' -import { dispatchAppRouterAction } from './use-action-queue' +import { navigate } from './segment-cache/navigation' +import { + dispatchAppRouterAction, + dispatchGestureState, +} from './use-action-queue' +import { FreshnessPolicy } from './router-reducer/ppr-navigations' import { addBasePath } from '../add-base-path' import { isExternalURL } from './app-router-utils' import type { @@ -313,6 +318,59 @@ export function dispatchTraverseAction( }) } +/** + * (Experimental) Perform a gesture navigation. This dispatches through React's + * useOptimistic instead of the main action queue, allowing the state to be + * shown during a gesture transition and discarded when the canonical navigation + * completes. + * + * Only available when experimental.gestureTransition is enabled. + */ +function gesturePush(href: string, options?: NavigateOptions): void { + if (process.env.__NEXT_GESTURE_TRANSITION) { + // TODO: Trigger a prefetch so the cache starts populating if there isn't + // already a prefetch for this route. + if (isJavaScriptURLString(href)) { + throw new Error( + 'Next.js has blocked a javascript: URL as a security precaution.' + ) + } + + const state = getCurrentAppRouterState() + if (state === null) { + return + } + const url = new URL(addBasePath(href), location.href) + if (isExternalURL(url)) { + return + } + + // Fork the router state for the duration of the gesture transition. + const currentUrl = new URL(state.canonicalUrl, location.href) + const shouldScroll = options?.scroll ?? true + // This is a special freshness policy that prevents dynamic requests from + // being spawned. During the gesture, we should only show the cached + // prefetched UI, not dynamic data. + // TODO: In the case of navigations to an unknown route, this will still + // end up performing a dynamic request. The plan is to do prefetch instead. + // There's a separate TODO for this. + const freshnessPolicy = FreshnessPolicy.Gesture + const forkedGestureState = navigate( + state, + url, + currentUrl, + state.renderedSearch, + state.cache, + state.tree, + state.nextUrl, + freshnessPolicy, + shouldScroll, + 'push' + ) + dispatchGestureState(forkedGestureState) + } +} + /** * The app router that is exposed through `useRouter`. These are public API * methods. Internal Next.js code should call the lower level methods directly @@ -407,6 +465,11 @@ export const publicAppRouterInstance: AppRouterInstance = { }, } +// Conditionally add experimental_gesturePush when gestureTransition is enabled +if (process.env.__NEXT_GESTURE_TRANSITION) { + ;(publicAppRouterInstance as any).experimental_gesturePush = gesturePush +} + // Exists for debugging purposes. Don't use in application code. if (typeof window !== 'undefined' && window.next) { window.next.router = publicAppRouterInstance diff --git a/packages/next/src/client/components/router-reducer/ppr-navigations.ts b/packages/next/src/client/components/router-reducer/ppr-navigations.ts index b436c4740a49d..55c08e68dc331 100644 --- a/packages/next/src/client/components/router-reducer/ppr-navigations.ts +++ b/packages/next/src/client/components/router-reducer/ppr-navigations.ts @@ -73,6 +73,7 @@ export const enum FreshnessPolicy { HistoryTraversal, RefreshAll, HMRRefresh, + Gesture, } const enum NavigationTaskStatus { @@ -315,6 +316,7 @@ function updateCacheNodeOnNavigation( case FreshnessPolicy.Default: case FreshnessPolicy.HistoryTraversal: case FreshnessPolicy.Hydration: // <- shouldn't happen during client nav + case FreshnessPolicy.Gesture: // We should never drop dynamic data in shared layouts, except during // a refresh. shouldRefreshDynamicData = false @@ -954,6 +956,7 @@ function createCacheNodeForSegment( break case FreshnessPolicy.RefreshAll: case FreshnessPolicy.HMRRefresh: + case FreshnessPolicy.Gesture: // Don't consult the BFCache. break default: @@ -1118,7 +1121,12 @@ function createCacheNodeForSegment( // Now that we're creating a new segment, write its data to the BFCache. A // subsequent back/forward navigation will reuse this same data, until or // unless it's cleared by a refresh/revalidation. - writeToBFCache(now, tree.varyPath, rsc, prefetchRsc, head, prefetchHead) + // + // Skip BFCache writes for optimistic navigations since they are transient + // and will be replaced by the canonical navigation. + if (freshness !== FreshnessPolicy.Gesture) { + writeToBFCache(now, tree.varyPath, rsc, prefetchRsc, head, prefetchHead) + } return { cacheNode: createCacheNode(rsc, prefetchRsc, head, prefetchHead), diff --git a/packages/next/src/client/components/segment-cache/navigation.ts b/packages/next/src/client/components/segment-cache/navigation.ts index 3a4face7f91e7..6215933d2b2a0 100644 --- a/packages/next/src/client/components/segment-cache/navigation.ts +++ b/packages/next/src/client/components/segment-cache/navigation.ts @@ -102,6 +102,8 @@ export function navigate( } // There's no matching prefetch for this route in the cache. + // TODO: If this is an optimistic navigation, instead of performing a + // dynamic request, we should do a runtime prefetch. return navigateToUnknownRoute( now, state, @@ -176,7 +178,12 @@ export function navigateToKnownRoute( accumulation ) if (task !== null) { - spawnDynamicRequests(task, url, nextUrl, freshnessPolicy, accumulation) + // Skip spawning dynamic requests for gesture navigations. Only the + // cached UI will be shown. The gesture state will be discarded when + // the canonical navigation completes. + if (freshnessPolicy !== FreshnessPolicy.Gesture) { + spawnDynamicRequests(task, url, nextUrl, freshnessPolicy, accumulation) + } return completeSoftNavigation( state, url, @@ -278,6 +285,7 @@ async function navigateToUnknownRoute( switch (freshnessPolicy) { case FreshnessPolicy.Default: case FreshnessPolicy.HistoryTraversal: + case FreshnessPolicy.Gesture: dynamicRequestTree = currentFlightRouterState break case FreshnessPolicy.Hydration: // <- shouldn't happen during client nav diff --git a/packages/next/src/client/components/use-action-queue.ts b/packages/next/src/client/components/use-action-queue.ts index daacdc445ef3d..69af788ac2ae9 100644 --- a/packages/next/src/client/components/use-action-queue.ts +++ b/packages/next/src/client/components/use-action-queue.ts @@ -1,5 +1,5 @@ import type { Dispatch } from 'react' -import React, { use, useMemo } from 'react' +import React, { use, useMemo, useOptimistic } from 'react' import { isThenable } from '../../shared/lib/is-thenable' import type { AppRouterActionQueue } from './app-router-instance' import type { @@ -22,6 +22,19 @@ export function dispatchAppRouterAction(action: ReducerActions) { dispatch(action) } +// Optimistic state setter for experimental_gesturePush. Only should be used +// during a gesture transition. +let setGestureRouterState: ((state: ReducerState) => void) | null = null + +export function dispatchGestureState(state: ReducerState) { + if (setGestureRouterState === null) { + throw new Error( + 'Internal Next.js error: Router action dispatched before initialization.' + ) + } + setGestureRouterState(state) +} + const __DEV__ = process.env.NODE_ENV !== 'production' const promisesWithDebugInfo: WeakMap< Promise, @@ -31,7 +44,16 @@ const promisesWithDebugInfo: WeakMap< export function useActionQueue( actionQueue: AppRouterActionQueue ): AppRouterState { - const [state, setState] = React.useState(actionQueue.state) + const [canonicalState, setState] = React.useState( + actionQueue.state + ) + + // Wrap the canonical state in useOptimistic to support + // experimental_gesturePush. During a gesture transition, this returns a fork + // of the router state that represents the eventual target if/when the gesture + // completes. Otherwise it returns the canonical state. + const [state, setGesture] = useOptimistic(canonicalState) + setGestureRouterState = setGesture // Because of a known issue that requires to decode Flight streams inside the // render phase, we have to be a bit clever and assign the dispatch method to 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 ac9f4af54a7ce..ce13015f483eb 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 @@ -11354,24 +11354,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_3284; - var JSCompiler_object_inline_stack_3285 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_3292; + var JSCompiler_object_inline_stack_3293 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_3283 = !1; + var JSCompiler_object_inline_message_3291 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_3284 = didSuspend) || - (JSCompiler_object_inline_digest_3284 = + (JSCompiler_object_inline_digest_3292 = didSuspend) || + (JSCompiler_object_inline_digest_3292 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_3284 && - ((JSCompiler_object_inline_message_3283 = !0), + JSCompiler_object_inline_digest_3292 && + ((JSCompiler_object_inline_message_3291 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_3284 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_3292 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_3283 + JSCompiler_object_inline_message_3291 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11384,18 +11384,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_3284 = { + ((JSCompiler_object_inline_digest_3292 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_3284), - (JSCompiler_object_inline_digest_3284 = + JSCompiler_object_inline_digest_3292), + (JSCompiler_object_inline_digest_3292 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_3284.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_3284), + (JSCompiler_object_inline_digest_3292.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_3292), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11409,9 +11409,9 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_3285.children, - nextFallbackChildren = JSCompiler_object_inline_stack_3285.fallback; - if (JSCompiler_object_inline_message_3283) + var nextPrimaryChildren = JSCompiler_object_inline_stack_3293.children, + nextFallbackChildren = JSCompiler_object_inline_stack_3293.fallback; + if (JSCompiler_object_inline_message_3291) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11420,19 +11420,19 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3285 = workInProgress.child), - (JSCompiler_object_inline_stack_3285.memoizedState = + (JSCompiler_object_inline_stack_3293 = workInProgress.child), + (JSCompiler_object_inline_stack_3293.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3285.childLanes = + (JSCompiler_object_inline_stack_3293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3284, + JSCompiler_object_inline_digest_3292, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3285) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3293) ); - if (!0 === JSCompiler_object_inline_stack_3285.defer) + if (!0 === JSCompiler_object_inline_stack_3293.defer) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11441,18 +11441,18 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3285 = workInProgress.child), - (JSCompiler_object_inline_stack_3285.memoizedState = + (JSCompiler_object_inline_stack_3293 = workInProgress.child), + (JSCompiler_object_inline_stack_3293.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3285.childLanes = + (JSCompiler_object_inline_stack_3293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3284, + JSCompiler_object_inline_digest_3292, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3285) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3293) ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( @@ -11462,8 +11462,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_3286 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_3286) { + var JSCompiler_object_inline_componentStack_3294 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_3294) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11480,13 +11480,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_3285.fallback), + JSCompiler_object_inline_stack_3293.fallback), (nextFallbackChildren = workInProgress.mode), - (JSCompiler_object_inline_stack_3285 = + (JSCompiler_object_inline_stack_3293 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_3285.children + children: JSCompiler_object_inline_stack_3293.children }, nextFallbackChildren )), @@ -11497,30 +11497,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_3285.return = workInProgress), + (JSCompiler_object_inline_stack_3293.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3285.sibling = + (JSCompiler_object_inline_stack_3293.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3285), + (workInProgress.child = JSCompiler_object_inline_stack_3293), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_3285 = workInProgress.child), - (JSCompiler_object_inline_stack_3285.memoizedState = + (JSCompiler_object_inline_stack_3293 = workInProgress.child), + (JSCompiler_object_inline_stack_3293.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3285.childLanes = + (JSCompiler_object_inline_stack_3293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3284, + JSCompiler_object_inline_digest_3292, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_3285 + JSCompiler_object_inline_stack_3293 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11528,45 +11528,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_3286 + JSCompiler_object_inline_componentStack_3294 )) ) { - JSCompiler_object_inline_digest_3284 = - JSCompiler_object_inline_componentStack_3286.nextSibling && - JSCompiler_object_inline_componentStack_3286.nextSibling.dataset; - if (JSCompiler_object_inline_digest_3284) { - nextPrimaryChildren = JSCompiler_object_inline_digest_3284.dgst; - var message = JSCompiler_object_inline_digest_3284.msg; - nextFallbackChildren = JSCompiler_object_inline_digest_3284.stck; - var componentStack = JSCompiler_object_inline_digest_3284.cstck; + JSCompiler_object_inline_digest_3292 = + JSCompiler_object_inline_componentStack_3294.nextSibling && + JSCompiler_object_inline_componentStack_3294.nextSibling.dataset; + if (JSCompiler_object_inline_digest_3292) { + nextPrimaryChildren = JSCompiler_object_inline_digest_3292.dgst; + var message = JSCompiler_object_inline_digest_3292.msg; + nextFallbackChildren = JSCompiler_object_inline_digest_3292.stck; + var componentStack = JSCompiler_object_inline_digest_3292.cstck; } - JSCompiler_object_inline_message_3283 = message; - JSCompiler_object_inline_digest_3284 = nextPrimaryChildren; - JSCompiler_object_inline_stack_3285 = nextFallbackChildren; - JSCompiler_object_inline_componentStack_3286 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_3283; - nextFallbackChildren = JSCompiler_object_inline_componentStack_3286; + JSCompiler_object_inline_message_3291 = message; + JSCompiler_object_inline_digest_3292 = nextPrimaryChildren; + JSCompiler_object_inline_stack_3293 = nextFallbackChildren; + JSCompiler_object_inline_componentStack_3294 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_3291; + nextFallbackChildren = JSCompiler_object_inline_componentStack_3294; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_3285 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3284; - JSCompiler_object_inline_digest_3284 = + JSCompiler_object_inline_stack_3293 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3292; + JSCompiler_object_inline_digest_3292 = void 0 === nextFallbackChildren ? null : nextFallbackChildren; - JSCompiler_object_inline_stack_3285 = { + JSCompiler_object_inline_stack_3293 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_3284 + stack: JSCompiler_object_inline_digest_3292 }; - "string" === typeof JSCompiler_object_inline_digest_3284 && + "string" === typeof JSCompiler_object_inline_digest_3292 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_3285 + JSCompiler_object_inline_stack_3293 ); - queueHydrationError(JSCompiler_object_inline_stack_3285); + queueHydrationError(JSCompiler_object_inline_stack_3293); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11580,35 +11580,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_3284 = + (JSCompiler_object_inline_digest_3292 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_3284) + didReceiveUpdate || JSCompiler_object_inline_digest_3292) ) { - JSCompiler_object_inline_digest_3284 = workInProgressRoot; + JSCompiler_object_inline_digest_3292 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_3284 && - ((JSCompiler_object_inline_stack_3285 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_3284, + null !== JSCompiler_object_inline_digest_3292 && + ((JSCompiler_object_inline_stack_3293 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_3292, renderLanes )), - 0 !== JSCompiler_object_inline_stack_3285 && - JSCompiler_object_inline_stack_3285 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_3293 && + JSCompiler_object_inline_stack_3293 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_3285), + ((prevState.retryLane = JSCompiler_object_inline_stack_3293), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_3285 + JSCompiler_object_inline_stack_3293 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_3284, + JSCompiler_object_inline_digest_3292, current, - JSCompiler_object_inline_stack_3285 + JSCompiler_object_inline_stack_3293 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3286 + JSCompiler_object_inline_componentStack_3294 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11617,14 +11617,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3286 + JSCompiler_object_inline_componentStack_3294 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_3286.nextSibling + JSCompiler_object_inline_componentStack_3294.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11636,32 +11636,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_3285.children + JSCompiler_object_inline_stack_3293.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_3283) + if (JSCompiler_object_inline_message_3291) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_3285.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_3293.fallback), (nextFallbackChildren = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_3286 = + (JSCompiler_object_inline_componentStack_3294 = componentStack.sibling), - (JSCompiler_object_inline_stack_3285 = createWorkInProgress( + (JSCompiler_object_inline_stack_3293 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_3285.children + children: JSCompiler_object_inline_stack_3293.children } )), - (JSCompiler_object_inline_stack_3285.subtreeFlags = + (JSCompiler_object_inline_stack_3293.subtreeFlags = componentStack.subtreeFlags & 133169152), - null !== JSCompiler_object_inline_componentStack_3286 + null !== JSCompiler_object_inline_componentStack_3294 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_3286, + JSCompiler_object_inline_componentStack_3294, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11672,11 +11672,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3285.return = workInProgress), - (JSCompiler_object_inline_stack_3285.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3285), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3285), - (JSCompiler_object_inline_stack_3285 = workInProgress.child), + (JSCompiler_object_inline_stack_3293.return = workInProgress), + (JSCompiler_object_inline_stack_3293.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_3293), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3293), + (JSCompiler_object_inline_stack_3293 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11692,18 +11692,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: nextFallbackChildren })), - (JSCompiler_object_inline_stack_3285.memoizedState = + (JSCompiler_object_inline_stack_3293.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_3285.childLanes = + (JSCompiler_object_inline_stack_3293.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3284, + JSCompiler_object_inline_digest_3292, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_3285 + JSCompiler_object_inline_stack_3293 ) ); null !== prevState && @@ -11715,16 +11715,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_3285.children + children: JSCompiler_object_inline_stack_3293.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_3284 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_3284 + ((JSCompiler_object_inline_digest_3292 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_3292 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_3284.push(current)); + : JSCompiler_object_inline_digest_3292.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -12900,6 +12900,13 @@ ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (returnFiber = workInProgress.pendingProps), null != returnFiber.name && "auto" !== returnFiber.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -14702,8 +14709,12 @@ ) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent( + placement, + props.onGestureEnter + ) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -14985,8 +14996,12 @@ ); 0 !== (changedParent.flags & 4) && className && - (gesture || - scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent( + changedParent, + props.onGestureUpdate + ) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -17957,27 +17972,32 @@ throw Error( "Found a pair with an auto name. This is a bug in React." ); - var name = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), null !== state && - applyViewTransitionToClones(name, props, state, child)); + applyViewTransitionToClones(name, className, state, child), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, props = placement.memoizedProps, - name = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && - applyViewTransitionToClones(name, props, state, placement)); + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && + applyViewTransitionToClones(name, className, clones, placement); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -17988,7 +18008,7 @@ if ( visitPhase !== INSERT_APPEARING_PAIR || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -18006,6 +18026,19 @@ visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && + commitHookEffectListMount(Insertion | HasEffect, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -18115,14 +18148,14 @@ _nextPhase = CLONE_UNCHANGED; } _nextPhase !== CLONE_UNCHANGED - ? ((instance = instance.cloneNode(!1)), + ? ((instance = cloneMutableInstance(instance, !1)), recursivelyInsertClonesFromExistingTree( parentFiber, instance, null, _nextPhase )) - : (instance = instance.cloneNode(!0)); + : (instance = cloneMutableInstance(instance, !0)); hostParentClone.appendChild(instance); null !== parentViewTransition && (null === parentViewTransition.clones @@ -18281,11 +18314,11 @@ case 5: var clone = deletions.stateNode; null === deletions.child - ? ((clone = clone.cloneNode(!0)), + ? ((clone = cloneMutableInstance(clone, !0)), deletions.flags & 32 && (resetTextContent(clone), (viewTransitionMutationContext = !0))) - : (clone = clone.cloneNode(!1)); + : (clone = cloneMutableInstance(clone, !1)); flags & 4 && commitUpdate( clone, @@ -18408,6 +18441,25 @@ visitPhase$jscomp$0 ); } + function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount( + Insertion | HasEffect, + finishedWork, + nearestMountedAncestor + ); + } + } function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -18417,31 +18469,35 @@ null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -18450,14 +18506,13 @@ (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -18562,6 +18617,30 @@ pendingViewTransitionEvents.push(callback.bind(null, instance)); } } + function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } + } function scheduleUpdateOnFiber(root, fiber, lane) { isRunningInsertionEffect && console.error("useInsertionEffect must not schedule updates."); @@ -20352,7 +20431,7 @@ ensureRootIsScheduled(root); else { animatingLanes |= pendingEffectsLanes; - animatingTask = null; + pendingViewTransitionEvents = animatingTask = null; startTime = ReactSharedInternals.T; ReactSharedInternals.T = null; endTime = ReactDOMSharedInternals.p; @@ -20360,11 +20439,6 @@ hydrationFailed = executionContext; executionContext |= CommitContext; try { - didWarnForRootClone || - ((didWarnForRootClone = !0), - console.warn( - "startGestureTransition() caused something to mutate or relayout the root. This currently requires a clone of the whole document. Make sure to add a directly around an absolutely positioned DOM node to minimize the impact of any changes caused by the Gesture Transition." - )); var rootContainer = root.containerInfo, documentElement = 9 === rootContainer.nodeType @@ -20947,10 +21021,11 @@ (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT); } pendingEffectsStatus = NO_PENDING_EFFECTS; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; - var finishedWork = pendingFinishedWork, + var root = pendingEffectsRoot, + finishedWork = pendingFinishedWork, lanes = pendingEffectsLanes, recoverableErrors = pendingRecoverableErrors, passiveSubtreeMask = (lanes & 335544064) === lanes ? 10262 : 10256; @@ -20961,16 +21036,12 @@ ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE) : ((pendingEffectsStatus = NO_PENDING_EFFECTS), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - ), + releaseRootPooledCache(root, root.pendingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - passiveSubtreeMask || - commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime); + passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(root); remainingLanes = lanesToEventPriority(lanes); finishedWork = finishedWork.stateNode; if ( @@ -21009,8 +21080,7 @@ err )); } - isDevToolsPresent && - startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && root.memoizedUpdaters.clear(); onCommitRoot(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; @@ -21018,8 +21088,7 @@ ReactDOMSharedInternals.p = DiscreteEventPriority; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = root.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -21042,24 +21111,32 @@ onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - errorInfo = 0; + errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++ ) - (0, onRecoverableError[errorInfo])(recoverableError); + (recoverableErrors = (0, onRecoverableError[errorInfo])( + recoverableError + )), + void 0 !== recoverableErrors && + startViewTransitionStartTime.finished.finally( + recoverableErrors + ); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; + ensureRootIsScheduled(root); + remainingLanes = root.pendingLanes; 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + root === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); passiveSubtreeMask || finalizeRender(lanes, commitEndTime); if (hasScheduledReplayAttempt) { @@ -21082,23 +21159,21 @@ startViewTransitionStartTime < queuedChangeEventTargets.length; startViewTransitionStartTime++ ) - (lanes = queuedChangeEventTargets[startViewTransitionStartTime]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + (root = queuedChangeEventTargets[startViewTransitionStartTime]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent( - new InputEvent("input", { bubbles: !0 }) - ) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -21223,6 +21298,28 @@ (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = startViewTransitionStartTime.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])( + prevTransition + ); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } finalizeRender(lanes, commitEndTime); ensureRootIsScheduled(startViewTransitionStartTime); } @@ -25288,6 +25385,20 @@ ? HostContextNamespaceNone : parentNamespace; } + function cloneMutableInstance(instance, keepChildren) { + var tagName = instance.tagName; + switch (tagName) { + case "VIDEO": + case "IFRAME": + didWarnForClone || + ((didWarnForClone = !0), + console.warn( + 'startGestureTransition() required cloning a <%s> element since it exists in both states of the gesture. This can be problematic since it will load it twice Try removing or hiding it with in the optimistic state.', + tagName.toLowerCase() + )); + } + return instance.cloneNode(keepChildren); + } function shouldSetTextContent(type, props) { return ( "textarea" === type || @@ -26013,6 +26124,7 @@ targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26071,7 +26183,7 @@ delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -26079,7 +26191,8 @@ direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -26088,8 +26201,9 @@ delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -26131,8 +26245,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26186,6 +26300,7 @@ pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -26202,6 +26317,7 @@ pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26210,12 +26326,12 @@ ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -30413,10 +30529,10 @@ useActionState: throwInvalidHookError, useOptimistic: throwInvalidHookError, useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError - }; - ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; - var HooksDispatcherOnMountInDEV = null, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, @@ -31545,7 +31661,6 @@ currentHoistableRoot = null, inHydratedSubtree = !1, suspenseyCommitFlag = 8192, - didWarnForRootClone = !1, viewTransitionContextChanged = !1, CLONE_UPDATE = 0, CLONE_EXIT = 1, @@ -31783,6 +31898,7 @@ eventsEnabled = null, selectionInformation = null, warnedUnknownTags = { dialog: !0, webview: !0 }, + didWarnForClone = !1, currentPopstateTransitionEvent = null, schedulerEvent = void 0, scheduleTimeout = "function" === typeof setTimeout ? setTimeout : void 0, @@ -32562,11 +32678,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32603,10 +32719,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -32754,7 +32870,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; "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 9dbfbde6039b1..d66c1cfea2a91 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 @@ -5922,32 +5922,32 @@ function entangleTransitionUpdate(root, queue, lane) { } } var ContextOnlyDispatcher = { - readContext: readContext, - use: use, - useCallback: throwInvalidHookError, - useContext: throwInvalidHookError, - useEffect: throwInvalidHookError, - useImperativeHandle: throwInvalidHookError, - useLayoutEffect: throwInvalidHookError, - useInsertionEffect: throwInvalidHookError, - useMemo: throwInvalidHookError, - useReducer: throwInvalidHookError, - useRef: throwInvalidHookError, - useState: throwInvalidHookError, - useDebugValue: throwInvalidHookError, - useDeferredValue: throwInvalidHookError, - useTransition: throwInvalidHookError, - useSyncExternalStore: throwInvalidHookError, - useId: throwInvalidHookError, - useHostTransitionStatus: throwInvalidHookError, - useFormState: throwInvalidHookError, - useActionState: throwInvalidHookError, - useOptimistic: throwInvalidHookError, - useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError -}; -ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; -var HooksDispatcherOnMount = { + readContext: readContext, + use: use, + useCallback: throwInvalidHookError, + useContext: throwInvalidHookError, + useEffect: throwInvalidHookError, + useImperativeHandle: throwInvalidHookError, + useLayoutEffect: throwInvalidHookError, + useInsertionEffect: throwInvalidHookError, + useMemo: throwInvalidHookError, + useReducer: throwInvalidHookError, + useRef: throwInvalidHookError, + useState: throwInvalidHookError, + useDebugValue: throwInvalidHookError, + useDeferredValue: throwInvalidHookError, + useTransition: throwInvalidHookError, + useSyncExternalStore: throwInvalidHookError, + useId: throwInvalidHookError, + useHostTransitionStatus: throwInvalidHookError, + useFormState: throwInvalidHookError, + useActionState: throwInvalidHookError, + useOptimistic: throwInvalidHookError, + useMemoCache: throwInvalidHookError, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMount = { readContext: readContext, use: use, useCallback: function (callback, deps) { @@ -6194,62 +6194,62 @@ var HooksDispatcherOnMount = { return updateOptimisticImpl(hook, currentHook, passthrough, reducer); }, useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh - }; -HooksDispatcherOnUpdate.useEffectEvent = updateEvent; -var HooksDispatcherOnRerender = { - readContext: readContext, - use: use, - useCallback: updateCallback, - useContext: readContext, - useEffect: updateEffect, - useImperativeHandle: updateImperativeHandle, - useInsertionEffect: updateInsertionEffect, - useLayoutEffect: updateLayoutEffect, - useMemo: updateMemo, - useReducer: rerenderReducer, - useRef: updateRef, - useState: function () { - return rerenderReducer(basicStateReducer); - }, - useDebugValue: mountDebugValue, - useDeferredValue: function (value, initialValue) { - var hook = updateWorkInProgressHook(); - return null === currentHook - ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl( - hook, - currentHook.memoizedState, - value, - initialValue - ); + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent }, - useTransition: function () { - var booleanOrThenable = rerenderReducer(basicStateReducer)[0], - start = updateWorkInProgressHook().memoizedState; - return [ - "boolean" === typeof booleanOrThenable - ? booleanOrThenable - : useThenable(booleanOrThenable), - start - ]; - }, - useSyncExternalStore: updateSyncExternalStore, - useId: updateId, - useHostTransitionStatus: useHostTransitionStatus, - useFormState: rerenderActionState, - useActionState: rerenderActionState, - useOptimistic: function (passthrough, reducer) { - var hook = updateWorkInProgressHook(); - if (null !== currentHook) - return updateOptimisticImpl(hook, currentHook, passthrough, reducer); - hook.baseState = passthrough; - return [passthrough, hook.queue.dispatch]; - }, - useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh -}; -HooksDispatcherOnRerender.useEffectEvent = updateEvent; + HooksDispatcherOnRerender = { + readContext: readContext, + use: use, + useCallback: updateCallback, + useContext: readContext, + useEffect: updateEffect, + useImperativeHandle: updateImperativeHandle, + useInsertionEffect: updateInsertionEffect, + useLayoutEffect: updateLayoutEffect, + useMemo: updateMemo, + useReducer: rerenderReducer, + useRef: updateRef, + useState: function () { + return rerenderReducer(basicStateReducer); + }, + useDebugValue: mountDebugValue, + useDeferredValue: function (value, initialValue) { + var hook = updateWorkInProgressHook(); + return null === currentHook + ? mountDeferredValueImpl(hook, value, initialValue) + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); + }, + useTransition: function () { + var booleanOrThenable = rerenderReducer(basicStateReducer)[0], + start = updateWorkInProgressHook().memoizedState; + return [ + "boolean" === typeof booleanOrThenable + ? booleanOrThenable + : useThenable(booleanOrThenable), + start + ]; + }, + useSyncExternalStore: updateSyncExternalStore, + useId: updateId, + useHostTransitionStatus: useHostTransitionStatus, + useFormState: rerenderActionState, + useActionState: rerenderActionState, + useOptimistic: function (passthrough, reducer) { + var hook = updateWorkInProgressHook(); + if (null !== currentHook) + return updateOptimisticImpl(hook, currentHook, passthrough, reducer); + hook.baseState = passthrough; + return [passthrough, hook.queue.dispatch]; + }, + useMemoCache: useMemoCache, + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent + }; function applyDerivedStateFromProps( workInProgress, ctor, @@ -8395,6 +8395,13 @@ function beginWork(current, workInProgress, renderLanes) { ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (props = workInProgress.pendingProps), null != props.name && "auto" !== props.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -9654,8 +9661,9 @@ function commitEnterViewTransitions(placement, gesture) { ? applyViewTransitionToHostInstances(placement, name, className, null, !1) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent(placement, props.onGestureEnter) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -9926,7 +9934,9 @@ function measureNestedViewTransitions(changedParent, gesture) { ); 0 !== (changedParent.flags & 4) && name && - (gesture || scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent(changedParent, props.onGestureUpdate) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -12150,25 +12160,30 @@ function applyAppearingPairViewTransition(child) { var props = child.memoizedProps; if (null == props.name || "auto" === props.name) throw Error(formatProdErrorMessage(544)); - child = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), - null !== state && applyViewTransitionToClones(child, props, state)); + null !== state && applyViewTransitionToClones(name, className, state), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, - props = placement.memoizedProps; - placement = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && applyViewTransitionToClones(placement, props, state)); + props = placement.memoizedProps, + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && applyViewTransitionToClones(name, className, clones); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -12179,7 +12194,7 @@ function recursivelyInsertNew( if ( 7 !== visitPhase || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -12197,6 +12212,18 @@ function recursivelyInsertNewFiber( visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && commitHookEffectListMount(3, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -12514,6 +12541,21 @@ function recursivelyInsertClones( visitPhase$jscomp$0 ); } +function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount(3, finishedWork, nearestMountedAncestor); + } +} function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -12523,30 +12565,34 @@ function recursivelyApplyViewTransitions(parentFiber) { null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -12554,14 +12600,13 @@ function recursivelyApplyViewTransitions(parentFiber) { ), (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -12690,6 +12735,30 @@ function scheduleViewTransitionEvent(fiber, callback) { pendingViewTransitionEvents.push(callback.bind(null, instance)); } } +function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } +} function scheduleUpdateOnFiber(root, fiber, lane) { if ( (root === workInProgressRoot && @@ -13228,8 +13297,8 @@ function renderRootSync(root, lanes, shouldYieldForPrerendering) { workLoopSync(); exitStatus = workInProgressRootExitStatus; break; - } catch (thrownValue$188) { - handleThrow(root, thrownValue$188); + } catch (thrownValue$189) { + handleThrow(root, thrownValue$189); } while (1); lanes && root.shellSuspendCounter++; @@ -13348,8 +13417,8 @@ function renderRootConcurrent(root, lanes) { } workLoopConcurrentByScheduler(); break; - } catch (thrownValue$190) { - handleThrow(root, thrownValue$190); + } catch (thrownValue$191) { + handleThrow(root, thrownValue$191); } while (1); lastContextDependency = currentlyRenderingFiber$1 = null; @@ -13569,6 +13638,7 @@ function completeRoot( var finishedGesture = root.pendingGestures; if (null === finishedGesture) ensureRootIsScheduled(root); else { + pendingViewTransitionEvents = null; var prevTransition = ReactSharedInternals.T; ReactSharedInternals.T = null; var previousPriority = ReactDOMSharedInternals.p; @@ -13659,26 +13729,26 @@ function completeRoot( } var rotate = computedStyle.rotate; if ("none" !== rotate && "" !== rotate) { - var parts$269 = rotate.split(" "); + var parts$270 = rotate.split(" "); transform = - 1 === parts$269.length - ? "rotate(" + parts$269[0] + ") " + transform - : 2 === parts$269.length + 1 === parts$270.length + ? "rotate(" + parts$270[0] + ") " + transform + : 2 === parts$270.length ? "rotate" + - parts$269[0].toUpperCase() + + parts$270[0].toUpperCase() + "(" + - parts$269[1] + + parts$270[1] + ") " + transform - : "rotate3d(" + parts$269.join(", ") + ") " + transform; + : "rotate3d(" + parts$270.join(", ") + ") " + transform; } var translate = computedStyle.translate; if ("none" !== translate && "" !== translate) { - var parts$270 = translate.split(" "); + var parts$271 = translate.split(" "); transform = - (3 === parts$270.length ? "translate3d" : "translate") + + (3 === parts$271.length ? "translate3d" : "translate") + "(" + - parts$270.join(", ") + + parts$271.join(", ") + ") " + transform; } @@ -14004,6 +14074,7 @@ function flushLayoutEffects() { function flushSpawnedWork() { if (4 === pendingEffectsStatus || 3 === pendingEffectsStatus) { pendingEffectsStatus = 0; + var committedViewTransition = pendingViewTransition; pendingViewTransition = null; requestPaint(); var root = pendingEffectsRoot, @@ -14054,15 +14125,22 @@ function flushSpawnedWork() { recoverableErrors = pendingViewTransitionEvents; onRecoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== recoverableErrors) + if ( + null !== recoverableErrors && + ((pendingViewTransitionEvents = null), + null === onRecoverableError && (onRecoverableError = []), + null !== committedViewTransition) + ) for ( - pendingViewTransitionEvents = null, - null === onRecoverableError && (onRecoverableError = []), - recoverableError = 0; + recoverableError = 0; recoverableError < recoverableErrors.length; recoverableError++ ) - (0, recoverableErrors[recoverableError])(onRecoverableError); + (finishedWork = (0, recoverableErrors[recoverableError])( + onRecoverableError + )), + void 0 !== finishedWork && + committedViewTransition.finished.finally(finishedWork); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); ensureRootIsScheduled(root); passiveSubtreeMask = root.pendingLanes; @@ -14084,22 +14162,26 @@ function flushSpawnedWork() { (queuedMouse = null); queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap); queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap); - for (root = 0; root < queuedChangeEventTargets.length; root++) - (lanes = queuedChangeEventTargets[root]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + for ( + committedViewTransition = 0; + committedViewTransition < queuedChangeEventTargets.length; + committedViewTransition++ + ) + (root = queuedChangeEventTargets[committedViewTransition]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -14179,6 +14261,26 @@ function flushGestureAnimations() { (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = root.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])(prevTransition); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } ensureRootIsScheduled(root); } } @@ -14379,14 +14481,14 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { isFlushingWork = !0; do { var didPerformSomeWork = !1; - for (var root$197 = firstScheduledRoot; null !== root$197; ) { + for (var root$198 = firstScheduledRoot; null !== root$198; ) { if (!onlyLegacy) if (0 !== syncTransitionLanes) { - var pendingLanes = root$197.pendingLanes; + var pendingLanes = root$198.pendingLanes; if (0 === pendingLanes) var JSCompiler_inline_result = 0; else { - var suspendedLanes = root$197.suspendedLanes, - pingedLanes = root$197.pingedLanes; + var suspendedLanes = root$198.suspendedLanes, + pingedLanes = root$198.pingedLanes; JSCompiler_inline_result = (1 << (31 - clz32(42 | syncTransitionLanes) + 1)) - 1; JSCompiler_inline_result &= @@ -14400,21 +14502,21 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { } 0 !== JSCompiler_inline_result && ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$197, JSCompiler_inline_result)); + performSyncWorkOnRoot(root$198, JSCompiler_inline_result)); } else (JSCompiler_inline_result = workInProgressRootRenderLanes), (JSCompiler_inline_result = getNextLanes( - root$197, - root$197 === workInProgressRoot ? JSCompiler_inline_result : 0, - null !== root$197.cancelPendingCommit || - -1 !== root$197.timeoutHandle + root$198, + root$198 === workInProgressRoot ? JSCompiler_inline_result : 0, + null !== root$198.cancelPendingCommit || + -1 !== root$198.timeoutHandle )), (0 === (JSCompiler_inline_result & 3) && 64 !== JSCompiler_inline_result) || - checkIfRootIsPrerendering(root$197, JSCompiler_inline_result) || + checkIfRootIsPrerendering(root$198, JSCompiler_inline_result) || ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$197, JSCompiler_inline_result)); - root$197 = root$197.next; + performSyncWorkOnRoot(root$198, JSCompiler_inline_result)); + root$198 = root$198.next; } } while (didPerformSomeWork); isFlushingWork = !1; @@ -14723,20 +14825,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1809 = 0; - i$jscomp$inline_1809 < simpleEventPluginEvents.length; - i$jscomp$inline_1809++ + var i$jscomp$inline_1819 = 0; + i$jscomp$inline_1819 < simpleEventPluginEvents.length; + i$jscomp$inline_1819++ ) { - var eventName$jscomp$inline_1810 = - simpleEventPluginEvents[i$jscomp$inline_1809], - domEventName$jscomp$inline_1811 = - eventName$jscomp$inline_1810.toLowerCase(), - capitalizedEvent$jscomp$inline_1812 = - eventName$jscomp$inline_1810[0].toUpperCase() + - eventName$jscomp$inline_1810.slice(1); + var eventName$jscomp$inline_1820 = + simpleEventPluginEvents[i$jscomp$inline_1819], + domEventName$jscomp$inline_1821 = + eventName$jscomp$inline_1820.toLowerCase(), + capitalizedEvent$jscomp$inline_1822 = + eventName$jscomp$inline_1820[0].toUpperCase() + + eventName$jscomp$inline_1820.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1811, - "on" + capitalizedEvent$jscomp$inline_1812 + domEventName$jscomp$inline_1821, + "on" + capitalizedEvent$jscomp$inline_1822 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -15970,34 +16072,34 @@ function setInitialProperties(domElement, tag, props) { var propKey = null; for (hasSrc in props) if (props.hasOwnProperty(hasSrc)) { - var propValue$211 = props[hasSrc]; - if (null != propValue$211) + var propValue$212 = props[hasSrc]; + if (null != propValue$212) switch (hasSrc) { case "name": - hasSrcSet = propValue$211; + hasSrcSet = propValue$212; break; case "type": - propValue = propValue$211; + propValue = propValue$212; break; case "checked": - checked = propValue$211; + checked = propValue$212; break; case "defaultChecked": - propKey = propValue$211; + propKey = propValue$212; break; case "value": - value = propValue$211; + value = propValue$212; break; case "defaultValue": - defaultValue = propValue$211; + defaultValue = propValue$212; break; case "children": case "dangerouslySetInnerHTML": - if (null != propValue$211) + if (null != propValue$212) throw Error(formatProdErrorMessage(137, tag)); break; default: - setProp(domElement, tag, hasSrc, propValue$211, props, null); + setProp(domElement, tag, hasSrc, propValue$212, props, null); } } a: { @@ -16180,14 +16282,14 @@ function setInitialProperties(domElement, tag, props) { return; default: if (isCustomElement(tag)) { - for (propValue$211 in props) - props.hasOwnProperty(propValue$211) && - ((hasSrc = props[propValue$211]), + for (propValue$212 in props) + props.hasOwnProperty(propValue$212) && + ((hasSrc = props[propValue$212]), void 0 !== hasSrc && setPropOnCustomElement( domElement, tag, - propValue$211, + propValue$212, hasSrc, props, void 0 @@ -16234,14 +16336,14 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp(domElement, tag, propKey, null, nextProps, lastProp); } } - for (var propKey$228 in nextProps) { - var propKey = nextProps[propKey$228]; - lastProp = lastProps[propKey$228]; + for (var propKey$229 in nextProps) { + var propKey = nextProps[propKey$229]; + lastProp = lastProps[propKey$229]; if ( - nextProps.hasOwnProperty(propKey$228) && + nextProps.hasOwnProperty(propKey$229) && (null != propKey || null != lastProp) ) - switch (propKey$228) { + switch (propKey$229) { case "type": propKey !== lastProp && (viewTransitionMutationContext = !0); type = propKey; @@ -16276,7 +16378,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$228, + propKey$229, propKey, nextProps, lastProp @@ -16295,7 +16397,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { ); return; case "select": - propKey = value = defaultValue = propKey$228 = null; + propKey = value = defaultValue = propKey$229 = null; for (type in lastProps) if ( ((lastDefaultValue = lastProps[type]), @@ -16327,7 +16429,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (name) { case "value": type !== lastDefaultValue && (viewTransitionMutationContext = !0); - propKey$228 = type; + propKey$229 = type; break; case "defaultValue": type !== lastDefaultValue && (viewTransitionMutationContext = !0); @@ -16350,15 +16452,15 @@ function updateProperties(domElement, tag, lastProps, nextProps) { tag = defaultValue; lastProps = value; nextProps = propKey; - null != propKey$228 - ? updateOptions(domElement, !!lastProps, propKey$228, !1) + null != propKey$229 + ? updateOptions(domElement, !!lastProps, propKey$229, !1) : !!nextProps !== !!lastProps && (null != tag ? updateOptions(domElement, !!lastProps, tag, !0) : updateOptions(domElement, !!lastProps, lastProps ? [] : "", !1)); return; case "textarea": - propKey = propKey$228 = null; + propKey = propKey$229 = null; for (defaultValue in lastProps) if ( ((name = lastProps[defaultValue]), @@ -16383,7 +16485,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (value) { case "value": name !== type && (viewTransitionMutationContext = !0); - propKey$228 = name; + propKey$229 = name; break; case "defaultValue": name !== type && (viewTransitionMutationContext = !0); @@ -16398,17 +16500,17 @@ function updateProperties(domElement, tag, lastProps, nextProps) { name !== type && setProp(domElement, tag, value, name, nextProps, type); } - updateTextarea(domElement, propKey$228, propKey); + updateTextarea(domElement, propKey$229, propKey); return; case "option": - for (var propKey$244 in lastProps) + for (var propKey$245 in lastProps) if ( - ((propKey$228 = lastProps[propKey$244]), - lastProps.hasOwnProperty(propKey$244) && - null != propKey$228 && - !nextProps.hasOwnProperty(propKey$244)) + ((propKey$229 = lastProps[propKey$245]), + lastProps.hasOwnProperty(propKey$245) && + null != propKey$229 && + !nextProps.hasOwnProperty(propKey$245)) ) - switch (propKey$244) { + switch (propKey$245) { case "selected": domElement.selected = !1; break; @@ -16416,34 +16518,34 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$244, + propKey$245, null, nextProps, - propKey$228 + propKey$229 ); } for (lastDefaultValue in nextProps) if ( - ((propKey$228 = nextProps[lastDefaultValue]), + ((propKey$229 = nextProps[lastDefaultValue]), (propKey = lastProps[lastDefaultValue]), nextProps.hasOwnProperty(lastDefaultValue) && - propKey$228 !== propKey && - (null != propKey$228 || null != propKey)) + propKey$229 !== propKey && + (null != propKey$229 || null != propKey)) ) switch (lastDefaultValue) { case "selected": - propKey$228 !== propKey && (viewTransitionMutationContext = !0); + propKey$229 !== propKey && (viewTransitionMutationContext = !0); domElement.selected = - propKey$228 && - "function" !== typeof propKey$228 && - "symbol" !== typeof propKey$228; + propKey$229 && + "function" !== typeof propKey$229 && + "symbol" !== typeof propKey$229; break; default: setProp( domElement, tag, lastDefaultValue, - propKey$228, + propKey$229, nextProps, propKey ); @@ -16464,24 +16566,24 @@ function updateProperties(domElement, tag, lastProps, nextProps) { case "track": case "wbr": case "menuitem": - for (var propKey$249 in lastProps) - (propKey$228 = lastProps[propKey$249]), - lastProps.hasOwnProperty(propKey$249) && - null != propKey$228 && - !nextProps.hasOwnProperty(propKey$249) && - setProp(domElement, tag, propKey$249, null, nextProps, propKey$228); + for (var propKey$250 in lastProps) + (propKey$229 = lastProps[propKey$250]), + lastProps.hasOwnProperty(propKey$250) && + null != propKey$229 && + !nextProps.hasOwnProperty(propKey$250) && + setProp(domElement, tag, propKey$250, null, nextProps, propKey$229); for (checked in nextProps) if ( - ((propKey$228 = nextProps[checked]), + ((propKey$229 = nextProps[checked]), (propKey = lastProps[checked]), nextProps.hasOwnProperty(checked) && - propKey$228 !== propKey && - (null != propKey$228 || null != propKey)) + propKey$229 !== propKey && + (null != propKey$229 || null != propKey)) ) switch (checked) { case "children": case "dangerouslySetInnerHTML": - if (null != propKey$228) + if (null != propKey$229) throw Error(formatProdErrorMessage(137, tag)); break; default: @@ -16489,7 +16591,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { domElement, tag, checked, - propKey$228, + propKey$229, nextProps, propKey ); @@ -16497,49 +16599,49 @@ function updateProperties(domElement, tag, lastProps, nextProps) { return; default: if (isCustomElement(tag)) { - for (var propKey$254 in lastProps) - (propKey$228 = lastProps[propKey$254]), - lastProps.hasOwnProperty(propKey$254) && - void 0 !== propKey$228 && - !nextProps.hasOwnProperty(propKey$254) && + for (var propKey$255 in lastProps) + (propKey$229 = lastProps[propKey$255]), + lastProps.hasOwnProperty(propKey$255) && + void 0 !== propKey$229 && + !nextProps.hasOwnProperty(propKey$255) && setPropOnCustomElement( domElement, tag, - propKey$254, + propKey$255, void 0, nextProps, - propKey$228 + propKey$229 ); for (defaultChecked in nextProps) - (propKey$228 = nextProps[defaultChecked]), + (propKey$229 = nextProps[defaultChecked]), (propKey = lastProps[defaultChecked]), !nextProps.hasOwnProperty(defaultChecked) || - propKey$228 === propKey || - (void 0 === propKey$228 && void 0 === propKey) || + propKey$229 === propKey || + (void 0 === propKey$229 && void 0 === propKey) || setPropOnCustomElement( domElement, tag, defaultChecked, - propKey$228, + propKey$229, nextProps, propKey ); return; } } - for (var propKey$259 in lastProps) - (propKey$228 = lastProps[propKey$259]), - lastProps.hasOwnProperty(propKey$259) && - null != propKey$228 && - !nextProps.hasOwnProperty(propKey$259) && - setProp(domElement, tag, propKey$259, null, nextProps, propKey$228); + for (var propKey$260 in lastProps) + (propKey$229 = lastProps[propKey$260]), + lastProps.hasOwnProperty(propKey$260) && + null != propKey$229 && + !nextProps.hasOwnProperty(propKey$260) && + setProp(domElement, tag, propKey$260, null, nextProps, propKey$229); for (lastProp in nextProps) - (propKey$228 = nextProps[lastProp]), + (propKey$229 = nextProps[lastProp]), (propKey = lastProps[lastProp]), !nextProps.hasOwnProperty(lastProp) || - propKey$228 === propKey || - (null == propKey$228 && null == propKey) || - setProp(domElement, tag, lastProp, propKey$228, nextProps, propKey); + propKey$229 === propKey || + (null == propKey$229 && null == propKey) || + setProp(domElement, tag, lastProp, propKey$229, nextProps, propKey); } function isLikelyStaticResource(initiatorType) { switch (initiatorType) { @@ -17127,6 +17229,7 @@ function animateGesture( targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -17181,7 +17284,7 @@ function animateGesture( (height = keyframes[width]), delete height.width, delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -17189,7 +17292,8 @@ function animateGesture( direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -17198,8 +17302,9 @@ function animateGesture( delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -17238,8 +17343,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -17274,25 +17379,26 @@ function startGestureTransition( ))) : (isExitGroupAnim = !0); } - var timing$276 = pseudoElement.getTiming(); + var timing$278 = pseudoElement.getTiming(); anim = rangeEnd - - (("number" === typeof timing$276.duration - ? timing$276.duration + (("number" === typeof timing$278.duration + ? timing$278.duration : 0) + - timing$276.delay) * + timing$278.delay) * longestDuration; - groupName = rangeEnd - timing$276.delay * longestDuration; + groupName = rangeEnd - timing$278.delay * longestDuration; if ( - "reverse" === timing$276.direction || - "alternate-reverse" === timing$276.direction + "reverse" === timing$278.direction || + "alternate-reverse" === timing$278.direction ) - (timing$276 = anim), (anim = groupName), (groupName = timing$276); + (timing$278 = anim), (anim = groupName), (groupName = timing$278); animateGesture( pseudoElement.getKeyframes(), pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -17309,6 +17415,7 @@ function startGestureTransition( pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -17317,12 +17424,12 @@ function startGestureTransition( ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -18422,26 +18529,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$286 = getResourcesFromRoot( + var styles$288 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$287 = styles$286.get(type); - resource$287 || + resource$289 = styles$288.get(type); + resource$289 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$287 = { + (resource$289 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$286.set(type, resource$287), - (styles$286 = JSCompiler_inline_result.querySelector( + styles$288.set(type, resource$289), + (styles$288 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$286._p && - ((resource$287.instance = styles$286), - (resource$287.state.loading = 5)), + !styles$288._p && + ((resource$289.instance = styles$288), + (resource$289.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -18454,16 +18561,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$286 || + styles$288 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$287.state + resource$289.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$287; + return resource$289; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -18560,37 +18667,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$292 = hoistableRoot.querySelector( + var instance$294 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$292) + if (instance$294) return ( (resource.state.loading |= 4), - (resource.instance = instance$292), - markNodeAsHoistable(instance$292), - instance$292 + (resource.instance = instance$294), + markNodeAsHoistable(instance$294), + instance$294 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$292 = ( + instance$294 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$292); - var linkInstance = instance$292; + markNodeAsHoistable(instance$294); + var linkInstance = instance$294; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$292, "link", instance); + setInitialProperties(instance$294, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$292, props.precedence, hoistableRoot); - return (resource.instance = instance$292); + insertStylesheet(instance$294, props.precedence, hoistableRoot); + return (resource.instance = instance$294); case "script": - instance$292 = getScriptKey(props.src); + instance$294 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$292) + getScriptSelectorFromKey(instance$294) )) ) return ( @@ -18599,7 +18706,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$292))) + if ((styleProps = preloadPropsMap.get(instance$294))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -19722,16 +19829,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2227 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2237 = React.version; if ( - "19.3.0-experimental-bef88f7c-20260116" !== - isomorphicReactPackageVersion$jscomp$inline_2227 + "19.3.0-experimental-d2908752-20260119" !== + isomorphicReactPackageVersion$jscomp$inline_2237 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2227, - "19.3.0-experimental-bef88f7c-20260116" + isomorphicReactPackageVersion$jscomp$inline_2237, + "19.3.0-experimental-d2908752-20260119" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -19751,24 +19858,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2930 = { +var internals$jscomp$inline_2940 = { bundleType: 0, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2931 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2941 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2931.isDisabled && - hook$jscomp$inline_2931.supportsFiber + !hook$jscomp$inline_2941.isDisabled && + hook$jscomp$inline_2941.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2931.inject( - internals$jscomp$inline_2930 + (rendererID = hook$jscomp$inline_2941.inject( + internals$jscomp$inline_2940 )), - (injectedHook = hook$jscomp$inline_2931); + (injectedHook = hook$jscomp$inline_2941); } catch (err) {} } exports.createRoot = function (container, options) { @@ -19863,4 +19970,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 de52b64df0b4d..0c95df5619e00 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 @@ -11362,24 +11362,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_3289; - var JSCompiler_object_inline_stack_3290 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_3297; + var JSCompiler_object_inline_stack_3298 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_3288 = !1; + var JSCompiler_object_inline_message_3296 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_3289 = didSuspend) || - (JSCompiler_object_inline_digest_3289 = + (JSCompiler_object_inline_digest_3297 = didSuspend) || + (JSCompiler_object_inline_digest_3297 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_3289 && - ((JSCompiler_object_inline_message_3288 = !0), + JSCompiler_object_inline_digest_3297 && + ((JSCompiler_object_inline_message_3296 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_3289 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_3297 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_3288 + JSCompiler_object_inline_message_3296 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11392,18 +11392,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_3289 = { + ((JSCompiler_object_inline_digest_3297 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_3289), - (JSCompiler_object_inline_digest_3289 = + JSCompiler_object_inline_digest_3297), + (JSCompiler_object_inline_digest_3297 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_3289.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_3289), + (JSCompiler_object_inline_digest_3297.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_3297), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11417,9 +11417,9 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_3290.children, - nextFallbackChildren = JSCompiler_object_inline_stack_3290.fallback; - if (JSCompiler_object_inline_message_3288) + var nextPrimaryChildren = JSCompiler_object_inline_stack_3298.children, + nextFallbackChildren = JSCompiler_object_inline_stack_3298.fallback; + if (JSCompiler_object_inline_message_3296) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11428,19 +11428,19 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3290 = workInProgress.child), - (JSCompiler_object_inline_stack_3290.memoizedState = + (JSCompiler_object_inline_stack_3298 = workInProgress.child), + (JSCompiler_object_inline_stack_3298.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3290.childLanes = + (JSCompiler_object_inline_stack_3298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3289, + JSCompiler_object_inline_digest_3297, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3290) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3298) ); - if (!0 === JSCompiler_object_inline_stack_3290.defer) + if (!0 === JSCompiler_object_inline_stack_3298.defer) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11449,18 +11449,18 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3290 = workInProgress.child), - (JSCompiler_object_inline_stack_3290.memoizedState = + (JSCompiler_object_inline_stack_3298 = workInProgress.child), + (JSCompiler_object_inline_stack_3298.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3290.childLanes = + (JSCompiler_object_inline_stack_3298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3289, + JSCompiler_object_inline_digest_3297, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3290) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3298) ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( @@ -11470,8 +11470,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_3291 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_3291) { + var JSCompiler_object_inline_componentStack_3299 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_3299) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11488,13 +11488,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_3290.fallback), + JSCompiler_object_inline_stack_3298.fallback), (nextFallbackChildren = workInProgress.mode), - (JSCompiler_object_inline_stack_3290 = + (JSCompiler_object_inline_stack_3298 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_3290.children + children: JSCompiler_object_inline_stack_3298.children }, nextFallbackChildren )), @@ -11505,30 +11505,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_3290.return = workInProgress), + (JSCompiler_object_inline_stack_3298.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3290.sibling = + (JSCompiler_object_inline_stack_3298.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3290), + (workInProgress.child = JSCompiler_object_inline_stack_3298), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_3290 = workInProgress.child), - (JSCompiler_object_inline_stack_3290.memoizedState = + (JSCompiler_object_inline_stack_3298 = workInProgress.child), + (JSCompiler_object_inline_stack_3298.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3290.childLanes = + (JSCompiler_object_inline_stack_3298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3289, + JSCompiler_object_inline_digest_3297, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_3290 + JSCompiler_object_inline_stack_3298 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11536,45 +11536,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_3291 + JSCompiler_object_inline_componentStack_3299 )) ) { - JSCompiler_object_inline_digest_3289 = - JSCompiler_object_inline_componentStack_3291.nextSibling && - JSCompiler_object_inline_componentStack_3291.nextSibling.dataset; - if (JSCompiler_object_inline_digest_3289) { - nextPrimaryChildren = JSCompiler_object_inline_digest_3289.dgst; - var message = JSCompiler_object_inline_digest_3289.msg; - nextFallbackChildren = JSCompiler_object_inline_digest_3289.stck; - var componentStack = JSCompiler_object_inline_digest_3289.cstck; + JSCompiler_object_inline_digest_3297 = + JSCompiler_object_inline_componentStack_3299.nextSibling && + JSCompiler_object_inline_componentStack_3299.nextSibling.dataset; + if (JSCompiler_object_inline_digest_3297) { + nextPrimaryChildren = JSCompiler_object_inline_digest_3297.dgst; + var message = JSCompiler_object_inline_digest_3297.msg; + nextFallbackChildren = JSCompiler_object_inline_digest_3297.stck; + var componentStack = JSCompiler_object_inline_digest_3297.cstck; } - JSCompiler_object_inline_message_3288 = message; - JSCompiler_object_inline_digest_3289 = nextPrimaryChildren; - JSCompiler_object_inline_stack_3290 = nextFallbackChildren; - JSCompiler_object_inline_componentStack_3291 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_3288; - nextFallbackChildren = JSCompiler_object_inline_componentStack_3291; + JSCompiler_object_inline_message_3296 = message; + JSCompiler_object_inline_digest_3297 = nextPrimaryChildren; + JSCompiler_object_inline_stack_3298 = nextFallbackChildren; + JSCompiler_object_inline_componentStack_3299 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_3296; + nextFallbackChildren = JSCompiler_object_inline_componentStack_3299; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_3290 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3289; - JSCompiler_object_inline_digest_3289 = + JSCompiler_object_inline_stack_3298 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3297; + JSCompiler_object_inline_digest_3297 = void 0 === nextFallbackChildren ? null : nextFallbackChildren; - JSCompiler_object_inline_stack_3290 = { + JSCompiler_object_inline_stack_3298 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_3289 + stack: JSCompiler_object_inline_digest_3297 }; - "string" === typeof JSCompiler_object_inline_digest_3289 && + "string" === typeof JSCompiler_object_inline_digest_3297 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_3290 + JSCompiler_object_inline_stack_3298 ); - queueHydrationError(JSCompiler_object_inline_stack_3290); + queueHydrationError(JSCompiler_object_inline_stack_3298); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11588,35 +11588,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_3289 = + (JSCompiler_object_inline_digest_3297 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_3289) + didReceiveUpdate || JSCompiler_object_inline_digest_3297) ) { - JSCompiler_object_inline_digest_3289 = workInProgressRoot; + JSCompiler_object_inline_digest_3297 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_3289 && - ((JSCompiler_object_inline_stack_3290 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_3289, + null !== JSCompiler_object_inline_digest_3297 && + ((JSCompiler_object_inline_stack_3298 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_3297, renderLanes )), - 0 !== JSCompiler_object_inline_stack_3290 && - JSCompiler_object_inline_stack_3290 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_3298 && + JSCompiler_object_inline_stack_3298 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_3290), + ((prevState.retryLane = JSCompiler_object_inline_stack_3298), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_3290 + JSCompiler_object_inline_stack_3298 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_3289, + JSCompiler_object_inline_digest_3297, current, - JSCompiler_object_inline_stack_3290 + JSCompiler_object_inline_stack_3298 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3291 + JSCompiler_object_inline_componentStack_3299 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11625,14 +11625,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3291 + JSCompiler_object_inline_componentStack_3299 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_3291.nextSibling + JSCompiler_object_inline_componentStack_3299.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11644,32 +11644,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_3290.children + JSCompiler_object_inline_stack_3298.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_3288) + if (JSCompiler_object_inline_message_3296) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_3290.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_3298.fallback), (nextFallbackChildren = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_3291 = + (JSCompiler_object_inline_componentStack_3299 = componentStack.sibling), - (JSCompiler_object_inline_stack_3290 = createWorkInProgress( + (JSCompiler_object_inline_stack_3298 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_3290.children + children: JSCompiler_object_inline_stack_3298.children } )), - (JSCompiler_object_inline_stack_3290.subtreeFlags = + (JSCompiler_object_inline_stack_3298.subtreeFlags = componentStack.subtreeFlags & 133169152), - null !== JSCompiler_object_inline_componentStack_3291 + null !== JSCompiler_object_inline_componentStack_3299 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_3291, + JSCompiler_object_inline_componentStack_3299, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11680,11 +11680,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3290.return = workInProgress), - (JSCompiler_object_inline_stack_3290.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3290), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3290), - (JSCompiler_object_inline_stack_3290 = workInProgress.child), + (JSCompiler_object_inline_stack_3298.return = workInProgress), + (JSCompiler_object_inline_stack_3298.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_3298), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3298), + (JSCompiler_object_inline_stack_3298 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11700,18 +11700,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: nextFallbackChildren })), - (JSCompiler_object_inline_stack_3290.memoizedState = + (JSCompiler_object_inline_stack_3298.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_3290.childLanes = + (JSCompiler_object_inline_stack_3298.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3289, + JSCompiler_object_inline_digest_3297, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_3290 + JSCompiler_object_inline_stack_3298 ) ); null !== prevState && @@ -11723,16 +11723,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_3290.children + children: JSCompiler_object_inline_stack_3298.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_3289 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_3289 + ((JSCompiler_object_inline_digest_3297 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_3297 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_3289.push(current)); + : JSCompiler_object_inline_digest_3297.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -12908,6 +12908,13 @@ ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (returnFiber = workInProgress.pendingProps), null != returnFiber.name && "auto" !== returnFiber.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -14710,8 +14717,12 @@ ) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent( + placement, + props.onGestureEnter + ) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -14993,8 +15004,12 @@ ); 0 !== (changedParent.flags & 4) && className && - (gesture || - scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent( + changedParent, + props.onGestureUpdate + ) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -17965,27 +17980,32 @@ throw Error( "Found a pair with an auto name. This is a bug in React." ); - var name = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), null !== state && - applyViewTransitionToClones(name, props, state, child)); + applyViewTransitionToClones(name, className, state, child), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, props = placement.memoizedProps, - name = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && - applyViewTransitionToClones(name, props, state, placement)); + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && + applyViewTransitionToClones(name, className, clones, placement); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -17996,7 +18016,7 @@ if ( visitPhase !== INSERT_APPEARING_PAIR || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -18014,6 +18034,19 @@ visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && + commitHookEffectListMount(Insertion | HasEffect, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -18123,14 +18156,14 @@ _nextPhase = CLONE_UNCHANGED; } _nextPhase !== CLONE_UNCHANGED - ? ((instance = instance.cloneNode(!1)), + ? ((instance = cloneMutableInstance(instance, !1)), recursivelyInsertClonesFromExistingTree( parentFiber, instance, null, _nextPhase )) - : (instance = instance.cloneNode(!0)); + : (instance = cloneMutableInstance(instance, !0)); hostParentClone.appendChild(instance); null !== parentViewTransition && (null === parentViewTransition.clones @@ -18289,11 +18322,11 @@ case 5: var clone = deletions.stateNode; null === deletions.child - ? ((clone = clone.cloneNode(!0)), + ? ((clone = cloneMutableInstance(clone, !0)), deletions.flags & 32 && (resetTextContent(clone), (viewTransitionMutationContext = !0))) - : (clone = clone.cloneNode(!1)); + : (clone = cloneMutableInstance(clone, !1)); flags & 4 && commitUpdate( clone, @@ -18416,6 +18449,25 @@ visitPhase$jscomp$0 ); } + function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount( + Insertion | HasEffect, + finishedWork, + nearestMountedAncestor + ); + } + } function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -18425,31 +18477,35 @@ null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -18458,14 +18514,13 @@ (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -18570,6 +18625,30 @@ pendingViewTransitionEvents.push(callback.bind(null, instance)); } } + function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } + } function scheduleUpdateOnFiber(root, fiber, lane) { isRunningInsertionEffect && console.error("useInsertionEffect must not schedule updates."); @@ -20360,7 +20439,7 @@ ensureRootIsScheduled(root); else { animatingLanes |= pendingEffectsLanes; - animatingTask = null; + pendingViewTransitionEvents = animatingTask = null; startTime = ReactSharedInternals.T; ReactSharedInternals.T = null; endTime = ReactDOMSharedInternals.p; @@ -20368,11 +20447,6 @@ hydrationFailed = executionContext; executionContext |= CommitContext; try { - didWarnForRootClone || - ((didWarnForRootClone = !0), - console.warn( - "startGestureTransition() caused something to mutate or relayout the root. This currently requires a clone of the whole document. Make sure to add a directly around an absolutely positioned DOM node to minimize the impact of any changes caused by the Gesture Transition." - )); var rootContainer = root.containerInfo, documentElement = 9 === rootContainer.nodeType @@ -20955,10 +21029,11 @@ (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT); } pendingEffectsStatus = NO_PENDING_EFFECTS; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; - var finishedWork = pendingFinishedWork, + var root = pendingEffectsRoot, + finishedWork = pendingFinishedWork, lanes = pendingEffectsLanes, recoverableErrors = pendingRecoverableErrors, passiveSubtreeMask = (lanes & 335544064) === lanes ? 10262 : 10256; @@ -20969,16 +21044,12 @@ ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE) : ((pendingEffectsStatus = NO_PENDING_EFFECTS), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - ), + releaseRootPooledCache(root, root.pendingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - passiveSubtreeMask || - commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime); + passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(root); remainingLanes = lanesToEventPriority(lanes); finishedWork = finishedWork.stateNode; if ( @@ -21017,8 +21088,7 @@ err )); } - isDevToolsPresent && - startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && root.memoizedUpdaters.clear(); onCommitRoot(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; @@ -21026,8 +21096,7 @@ ReactDOMSharedInternals.p = DiscreteEventPriority; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = root.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -21050,24 +21119,32 @@ onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - errorInfo = 0; + errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++ ) - (0, onRecoverableError[errorInfo])(recoverableError); + (recoverableErrors = (0, onRecoverableError[errorInfo])( + recoverableError + )), + void 0 !== recoverableErrors && + startViewTransitionStartTime.finished.finally( + recoverableErrors + ); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; + ensureRootIsScheduled(root); + remainingLanes = root.pendingLanes; 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + root === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); passiveSubtreeMask || finalizeRender(lanes, commitEndTime); if (hasScheduledReplayAttempt) { @@ -21090,23 +21167,21 @@ startViewTransitionStartTime < queuedChangeEventTargets.length; startViewTransitionStartTime++ ) - (lanes = queuedChangeEventTargets[startViewTransitionStartTime]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + (root = queuedChangeEventTargets[startViewTransitionStartTime]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent( - new InputEvent("input", { bubbles: !0 }) - ) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -21231,6 +21306,28 @@ (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = startViewTransitionStartTime.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])( + prevTransition + ); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } finalizeRender(lanes, commitEndTime); ensureRootIsScheduled(startViewTransitionStartTime); } @@ -25296,6 +25393,20 @@ ? HostContextNamespaceNone : parentNamespace; } + function cloneMutableInstance(instance, keepChildren) { + var tagName = instance.tagName; + switch (tagName) { + case "VIDEO": + case "IFRAME": + didWarnForClone || + ((didWarnForClone = !0), + console.warn( + 'startGestureTransition() required cloning a <%s> element since it exists in both states of the gesture. This can be problematic since it will load it twice Try removing or hiding it with in the optimistic state.', + tagName.toLowerCase() + )); + } + return instance.cloneNode(keepChildren); + } function shouldSetTextContent(type, props) { return ( "textarea" === type || @@ -26021,6 +26132,7 @@ targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26079,7 +26191,7 @@ delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -26087,7 +26199,8 @@ direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -26096,8 +26209,9 @@ delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -26139,8 +26253,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26194,6 +26308,7 @@ pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -26210,6 +26325,7 @@ pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26218,12 +26334,12 @@ ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -30470,10 +30586,10 @@ useActionState: throwInvalidHookError, useOptimistic: throwInvalidHookError, useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError - }; - ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; - var HooksDispatcherOnMountInDEV = null, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, @@ -31602,7 +31718,6 @@ currentHoistableRoot = null, inHydratedSubtree = !1, suspenseyCommitFlag = 8192, - didWarnForRootClone = !1, viewTransitionContextChanged = !1, CLONE_UPDATE = 0, CLONE_EXIT = 1, @@ -31840,6 +31955,7 @@ eventsEnabled = null, selectionInformation = null, warnedUnknownTags = { dialog: !0, webview: !0 }, + didWarnForClone = !1, currentPopstateTransitionEvent = null, schedulerEvent = void 0, scheduleTimeout = "function" === typeof setTimeout ? setTimeout : void 0, @@ -32619,11 +32735,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32660,10 +32776,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -33141,7 +33257,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; "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 234632dc3279f..ae3f29e7f6c8a 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 @@ -6457,32 +6457,32 @@ function entangleTransitionUpdate(root, queue, lane) { } } var ContextOnlyDispatcher = { - readContext: readContext, - use: use, - useCallback: throwInvalidHookError, - useContext: throwInvalidHookError, - useEffect: throwInvalidHookError, - useImperativeHandle: throwInvalidHookError, - useLayoutEffect: throwInvalidHookError, - useInsertionEffect: throwInvalidHookError, - useMemo: throwInvalidHookError, - useReducer: throwInvalidHookError, - useRef: throwInvalidHookError, - useState: throwInvalidHookError, - useDebugValue: throwInvalidHookError, - useDeferredValue: throwInvalidHookError, - useTransition: throwInvalidHookError, - useSyncExternalStore: throwInvalidHookError, - useId: throwInvalidHookError, - useHostTransitionStatus: throwInvalidHookError, - useFormState: throwInvalidHookError, - useActionState: throwInvalidHookError, - useOptimistic: throwInvalidHookError, - useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError -}; -ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; -var HooksDispatcherOnMount = { + readContext: readContext, + use: use, + useCallback: throwInvalidHookError, + useContext: throwInvalidHookError, + useEffect: throwInvalidHookError, + useImperativeHandle: throwInvalidHookError, + useLayoutEffect: throwInvalidHookError, + useInsertionEffect: throwInvalidHookError, + useMemo: throwInvalidHookError, + useReducer: throwInvalidHookError, + useRef: throwInvalidHookError, + useState: throwInvalidHookError, + useDebugValue: throwInvalidHookError, + useDeferredValue: throwInvalidHookError, + useTransition: throwInvalidHookError, + useSyncExternalStore: throwInvalidHookError, + useId: throwInvalidHookError, + useHostTransitionStatus: throwInvalidHookError, + useFormState: throwInvalidHookError, + useActionState: throwInvalidHookError, + useOptimistic: throwInvalidHookError, + useMemoCache: throwInvalidHookError, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMount = { readContext: readContext, use: use, useCallback: function (callback, deps) { @@ -6729,62 +6729,62 @@ var HooksDispatcherOnMount = { return updateOptimisticImpl(hook, currentHook, passthrough, reducer); }, useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh - }; -HooksDispatcherOnUpdate.useEffectEvent = updateEvent; -var HooksDispatcherOnRerender = { - readContext: readContext, - use: use, - useCallback: updateCallback, - useContext: readContext, - useEffect: updateEffect, - useImperativeHandle: updateImperativeHandle, - useInsertionEffect: updateInsertionEffect, - useLayoutEffect: updateLayoutEffect, - useMemo: updateMemo, - useReducer: rerenderReducer, - useRef: updateRef, - useState: function () { - return rerenderReducer(basicStateReducer); - }, - useDebugValue: mountDebugValue, - useDeferredValue: function (value, initialValue) { - var hook = updateWorkInProgressHook(); - return null === currentHook - ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl( - hook, - currentHook.memoizedState, - value, - initialValue - ); + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent }, - useTransition: function () { - var booleanOrThenable = rerenderReducer(basicStateReducer)[0], - start = updateWorkInProgressHook().memoizedState; - return [ - "boolean" === typeof booleanOrThenable - ? booleanOrThenable - : useThenable(booleanOrThenable), - start - ]; - }, - useSyncExternalStore: updateSyncExternalStore, - useId: updateId, - useHostTransitionStatus: useHostTransitionStatus, - useFormState: rerenderActionState, - useActionState: rerenderActionState, - useOptimistic: function (passthrough, reducer) { - var hook = updateWorkInProgressHook(); - if (null !== currentHook) - return updateOptimisticImpl(hook, currentHook, passthrough, reducer); - hook.baseState = passthrough; - return [passthrough, hook.queue.dispatch]; - }, - useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh -}; -HooksDispatcherOnRerender.useEffectEvent = updateEvent; + HooksDispatcherOnRerender = { + readContext: readContext, + use: use, + useCallback: updateCallback, + useContext: readContext, + useEffect: updateEffect, + useImperativeHandle: updateImperativeHandle, + useInsertionEffect: updateInsertionEffect, + useLayoutEffect: updateLayoutEffect, + useMemo: updateMemo, + useReducer: rerenderReducer, + useRef: updateRef, + useState: function () { + return rerenderReducer(basicStateReducer); + }, + useDebugValue: mountDebugValue, + useDeferredValue: function (value, initialValue) { + var hook = updateWorkInProgressHook(); + return null === currentHook + ? mountDeferredValueImpl(hook, value, initialValue) + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); + }, + useTransition: function () { + var booleanOrThenable = rerenderReducer(basicStateReducer)[0], + start = updateWorkInProgressHook().memoizedState; + return [ + "boolean" === typeof booleanOrThenable + ? booleanOrThenable + : useThenable(booleanOrThenable), + start + ]; + }, + useSyncExternalStore: updateSyncExternalStore, + useId: updateId, + useHostTransitionStatus: useHostTransitionStatus, + useFormState: rerenderActionState, + useActionState: rerenderActionState, + useOptimistic: function (passthrough, reducer) { + var hook = updateWorkInProgressHook(); + if (null !== currentHook) + return updateOptimisticImpl(hook, currentHook, passthrough, reducer); + hook.baseState = passthrough; + return [passthrough, hook.queue.dispatch]; + }, + useMemoCache: useMemoCache, + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent + }; function applyDerivedStateFromProps( workInProgress, ctor, @@ -8947,6 +8947,13 @@ function beginWork(current, workInProgress, renderLanes) { ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (props = workInProgress.pendingProps), null != props.name && "auto" !== props.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -10399,8 +10406,9 @@ function commitEnterViewTransitions(placement, gesture) { ? applyViewTransitionToHostInstances(placement, name, className, null, !1) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent(placement, props.onGestureEnter) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -10671,7 +10679,9 @@ function measureNestedViewTransitions(changedParent, gesture) { ); 0 !== (changedParent.flags & 4) && name && - (gesture || scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent(changedParent, props.onGestureUpdate) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -13477,25 +13487,30 @@ function applyAppearingPairViewTransition(child) { var props = child.memoizedProps; if (null == props.name || "auto" === props.name) throw Error(formatProdErrorMessage(544)); - child = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), - null !== state && applyViewTransitionToClones(child, props, state)); + null !== state && applyViewTransitionToClones(name, className, state), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, - props = placement.memoizedProps; - placement = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && applyViewTransitionToClones(placement, props, state)); + props = placement.memoizedProps, + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && applyViewTransitionToClones(name, className, clones); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -13506,7 +13521,7 @@ function recursivelyInsertNew( if ( 7 !== visitPhase || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -13524,6 +13539,18 @@ function recursivelyInsertNewFiber( visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && commitHookEffectListMount(3, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -13841,6 +13868,21 @@ function recursivelyInsertClones( visitPhase$jscomp$0 ); } +function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount(3, finishedWork, nearestMountedAncestor); + } +} function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -13850,30 +13892,34 @@ function recursivelyApplyViewTransitions(parentFiber) { null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -13881,14 +13927,13 @@ function recursivelyApplyViewTransitions(parentFiber) { ), (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -14021,6 +14066,30 @@ function scheduleViewTransitionEvent(fiber, callback) { pendingViewTransitionEvents.push(callback.bind(null, instance)); } } +function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } +} function scheduleUpdateOnFiber(root, fiber, lane) { if ( (root === workInProgressRoot && @@ -14962,8 +15031,8 @@ function renderRootSync(root, lanes, shouldYieldForPrerendering) { workLoopSync(); memoizedUpdaters = workInProgressRootExitStatus; break; - } catch (thrownValue$231) { - handleThrow(root, thrownValue$231); + } catch (thrownValue$232) { + handleThrow(root, thrownValue$232); } while (1); lanes && root.shellSuspendCounter++; @@ -15088,8 +15157,8 @@ function renderRootConcurrent(root, lanes) { } workLoopConcurrentByScheduler(); break; - } catch (thrownValue$233) { - handleThrow(root, thrownValue$233); + } catch (thrownValue$234) { + handleThrow(root, thrownValue$234); } while (1); lastContextDependency = currentlyRenderingFiber$1 = null; @@ -15372,6 +15441,7 @@ function completeRoot( ensureRootIsScheduled(root); else { animatingLanes |= pendingEffectsLanes; + pendingViewTransitionEvents = null; endTime = ReactSharedInternals.T; ReactSharedInternals.T = null; var previousPriority = ReactDOMSharedInternals.p; @@ -15462,26 +15532,26 @@ function completeRoot( } var rotate = computedStyle.rotate; if ("none" !== rotate && "" !== rotate) { - var parts$312 = rotate.split(" "); + var parts$313 = rotate.split(" "); transform = - 1 === parts$312.length - ? "rotate(" + parts$312[0] + ") " + transform - : 2 === parts$312.length + 1 === parts$313.length + ? "rotate(" + parts$313[0] + ") " + transform + : 2 === parts$313.length ? "rotate" + - parts$312[0].toUpperCase() + + parts$313[0].toUpperCase() + "(" + - parts$312[1] + + parts$313[1] + ") " + transform - : "rotate3d(" + parts$312.join(", ") + ") " + transform; + : "rotate3d(" + parts$313.join(", ") + ") " + transform; } var translate = computedStyle.translate; if ("none" !== translate && "" !== translate) { - var parts$313 = translate.split(" "); + var parts$314 = translate.split(" "); transform = - (3 === parts$313.length ? "translate3d" : "translate") + + (3 === parts$314.length ? "translate3d" : "translate") + "(" + - parts$313.join(", ") + + parts$314.join(", ") + ") " + transform; } @@ -15920,10 +15990,11 @@ function flushSpawnedWork() { 1 !== pendingDelayedCommitReason && (pendingDelayedCommitReason = 3); } pendingEffectsStatus = 0; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; - var finishedWork = pendingFinishedWork, + var root = pendingEffectsRoot, + finishedWork = pendingFinishedWork, lanes = pendingEffectsLanes, recoverableErrors = pendingRecoverableErrors, passiveSubtreeMask = (lanes & 335544064) === lanes ? 10262 : 10256; @@ -15934,11 +16005,8 @@ function flushSpawnedWork() { ? (pendingEffectsStatus = 5) : ((pendingEffectsStatus = 0), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - )); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + releaseRootPooledCache(root, root.pendingLanes)); + var remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); remainingLanes = lanesToEventPriority(lanes); finishedWork = finishedWork.stateNode; @@ -15968,15 +16036,14 @@ function flushSpawnedWork() { didError ); } catch (err) {} - isDevToolsPresent && startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && root.memoizedUpdaters.clear(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; schedulerPriority = ReactDOMSharedInternals.p; ReactDOMSharedInternals.p = 2; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = root.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -15995,24 +16062,30 @@ function flushSpawnedWork() { onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - recoverableErrors = 0; + recoverableErrors = 0; recoverableErrors < onRecoverableError.length; recoverableErrors++ ) - (0, onRecoverableError[recoverableErrors])(recoverableError); + (didError = (0, onRecoverableError[recoverableErrors])( + recoverableError + )), + void 0 !== didError && + startViewTransitionStartTime.finished.finally(didError); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; + ensureRootIsScheduled(root); + remainingLanes = root.pendingLanes; 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + root === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); passiveSubtreeMask || finalizeRender(lanes, commitEndTime); if (hasScheduledReplayAttempt) { @@ -16033,21 +16106,21 @@ function flushSpawnedWork() { startViewTransitionStartTime < queuedChangeEventTargets.length; startViewTransitionStartTime++ ) - (lanes = queuedChangeEventTargets[startViewTransitionStartTime]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + (root = queuedChangeEventTargets[startViewTransitionStartTime]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -16149,6 +16222,26 @@ function flushGestureAnimations() { (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = startViewTransitionStartTime.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])(prevTransition); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } finalizeRender(lanes, commitEndTime); ensureRootIsScheduled(startViewTransitionStartTime); } @@ -16412,14 +16505,14 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { isFlushingWork = !0; do { var didPerformSomeWork = !1; - for (var root$240 = firstScheduledRoot; null !== root$240; ) { + for (var root$241 = firstScheduledRoot; null !== root$241; ) { if (!onlyLegacy) if (0 !== syncTransitionLanes) { - var pendingLanes = root$240.pendingLanes; + var pendingLanes = root$241.pendingLanes; if (0 === pendingLanes) var JSCompiler_inline_result = 0; else { - var suspendedLanes = root$240.suspendedLanes, - pingedLanes = root$240.pingedLanes; + var suspendedLanes = root$241.suspendedLanes, + pingedLanes = root$241.pingedLanes; JSCompiler_inline_result = (1 << (31 - clz32(42 | syncTransitionLanes) + 1)) - 1; JSCompiler_inline_result &= @@ -16433,21 +16526,21 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { } 0 !== JSCompiler_inline_result && ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$240, JSCompiler_inline_result)); + performSyncWorkOnRoot(root$241, JSCompiler_inline_result)); } else (JSCompiler_inline_result = workInProgressRootRenderLanes), (JSCompiler_inline_result = getNextLanes( - root$240, - root$240 === workInProgressRoot ? JSCompiler_inline_result : 0, - null !== root$240.cancelPendingCommit || - -1 !== root$240.timeoutHandle + root$241, + root$241 === workInProgressRoot ? JSCompiler_inline_result : 0, + null !== root$241.cancelPendingCommit || + -1 !== root$241.timeoutHandle )), (0 === (JSCompiler_inline_result & 3) && 64 !== JSCompiler_inline_result) || - checkIfRootIsPrerendering(root$240, JSCompiler_inline_result) || + checkIfRootIsPrerendering(root$241, JSCompiler_inline_result) || ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$240, JSCompiler_inline_result)); - root$240 = root$240.next; + performSyncWorkOnRoot(root$241, JSCompiler_inline_result)); + root$241 = root$241.next; } } while (didPerformSomeWork); isFlushingWork = !1; @@ -16762,20 +16855,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_2113 = 0; - i$jscomp$inline_2113 < simpleEventPluginEvents.length; - i$jscomp$inline_2113++ + var i$jscomp$inline_2123 = 0; + i$jscomp$inline_2123 < simpleEventPluginEvents.length; + i$jscomp$inline_2123++ ) { - var eventName$jscomp$inline_2114 = - simpleEventPluginEvents[i$jscomp$inline_2113], - domEventName$jscomp$inline_2115 = - eventName$jscomp$inline_2114.toLowerCase(), - capitalizedEvent$jscomp$inline_2116 = - eventName$jscomp$inline_2114[0].toUpperCase() + - eventName$jscomp$inline_2114.slice(1); + var eventName$jscomp$inline_2124 = + simpleEventPluginEvents[i$jscomp$inline_2123], + domEventName$jscomp$inline_2125 = + eventName$jscomp$inline_2124.toLowerCase(), + capitalizedEvent$jscomp$inline_2126 = + eventName$jscomp$inline_2124[0].toUpperCase() + + eventName$jscomp$inline_2124.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_2115, - "on" + capitalizedEvent$jscomp$inline_2116 + domEventName$jscomp$inline_2125, + "on" + capitalizedEvent$jscomp$inline_2126 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -18009,34 +18102,34 @@ function setInitialProperties(domElement, tag, props) { var propKey = null; for (hasSrc in props) if (props.hasOwnProperty(hasSrc)) { - var propValue$254 = props[hasSrc]; - if (null != propValue$254) + var propValue$255 = props[hasSrc]; + if (null != propValue$255) switch (hasSrc) { case "name": - hasSrcSet = propValue$254; + hasSrcSet = propValue$255; break; case "type": - propValue = propValue$254; + propValue = propValue$255; break; case "checked": - checked = propValue$254; + checked = propValue$255; break; case "defaultChecked": - propKey = propValue$254; + propKey = propValue$255; break; case "value": - value = propValue$254; + value = propValue$255; break; case "defaultValue": - defaultValue = propValue$254; + defaultValue = propValue$255; break; case "children": case "dangerouslySetInnerHTML": - if (null != propValue$254) + if (null != propValue$255) throw Error(formatProdErrorMessage(137, tag)); break; default: - setProp(domElement, tag, hasSrc, propValue$254, props, null); + setProp(domElement, tag, hasSrc, propValue$255, props, null); } } a: { @@ -18219,14 +18312,14 @@ function setInitialProperties(domElement, tag, props) { return; default: if (isCustomElement(tag)) { - for (propValue$254 in props) - props.hasOwnProperty(propValue$254) && - ((hasSrc = props[propValue$254]), + for (propValue$255 in props) + props.hasOwnProperty(propValue$255) && + ((hasSrc = props[propValue$255]), void 0 !== hasSrc && setPropOnCustomElement( domElement, tag, - propValue$254, + propValue$255, hasSrc, props, void 0 @@ -18273,14 +18366,14 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp(domElement, tag, propKey, null, nextProps, lastProp); } } - for (var propKey$271 in nextProps) { - var propKey = nextProps[propKey$271]; - lastProp = lastProps[propKey$271]; + for (var propKey$272 in nextProps) { + var propKey = nextProps[propKey$272]; + lastProp = lastProps[propKey$272]; if ( - nextProps.hasOwnProperty(propKey$271) && + nextProps.hasOwnProperty(propKey$272) && (null != propKey || null != lastProp) ) - switch (propKey$271) { + switch (propKey$272) { case "type": propKey !== lastProp && (viewTransitionMutationContext = !0); type = propKey; @@ -18315,7 +18408,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$271, + propKey$272, propKey, nextProps, lastProp @@ -18334,7 +18427,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { ); return; case "select": - propKey = value = defaultValue = propKey$271 = null; + propKey = value = defaultValue = propKey$272 = null; for (type in lastProps) if ( ((lastDefaultValue = lastProps[type]), @@ -18366,7 +18459,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (name) { case "value": type !== lastDefaultValue && (viewTransitionMutationContext = !0); - propKey$271 = type; + propKey$272 = type; break; case "defaultValue": type !== lastDefaultValue && (viewTransitionMutationContext = !0); @@ -18389,15 +18482,15 @@ function updateProperties(domElement, tag, lastProps, nextProps) { tag = defaultValue; lastProps = value; nextProps = propKey; - null != propKey$271 - ? updateOptions(domElement, !!lastProps, propKey$271, !1) + null != propKey$272 + ? updateOptions(domElement, !!lastProps, propKey$272, !1) : !!nextProps !== !!lastProps && (null != tag ? updateOptions(domElement, !!lastProps, tag, !0) : updateOptions(domElement, !!lastProps, lastProps ? [] : "", !1)); return; case "textarea": - propKey = propKey$271 = null; + propKey = propKey$272 = null; for (defaultValue in lastProps) if ( ((name = lastProps[defaultValue]), @@ -18422,7 +18515,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (value) { case "value": name !== type && (viewTransitionMutationContext = !0); - propKey$271 = name; + propKey$272 = name; break; case "defaultValue": name !== type && (viewTransitionMutationContext = !0); @@ -18437,17 +18530,17 @@ function updateProperties(domElement, tag, lastProps, nextProps) { name !== type && setProp(domElement, tag, value, name, nextProps, type); } - updateTextarea(domElement, propKey$271, propKey); + updateTextarea(domElement, propKey$272, propKey); return; case "option": - for (var propKey$287 in lastProps) + for (var propKey$288 in lastProps) if ( - ((propKey$271 = lastProps[propKey$287]), - lastProps.hasOwnProperty(propKey$287) && - null != propKey$271 && - !nextProps.hasOwnProperty(propKey$287)) + ((propKey$272 = lastProps[propKey$288]), + lastProps.hasOwnProperty(propKey$288) && + null != propKey$272 && + !nextProps.hasOwnProperty(propKey$288)) ) - switch (propKey$287) { + switch (propKey$288) { case "selected": domElement.selected = !1; break; @@ -18455,34 +18548,34 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$287, + propKey$288, null, nextProps, - propKey$271 + propKey$272 ); } for (lastDefaultValue in nextProps) if ( - ((propKey$271 = nextProps[lastDefaultValue]), + ((propKey$272 = nextProps[lastDefaultValue]), (propKey = lastProps[lastDefaultValue]), nextProps.hasOwnProperty(lastDefaultValue) && - propKey$271 !== propKey && - (null != propKey$271 || null != propKey)) + propKey$272 !== propKey && + (null != propKey$272 || null != propKey)) ) switch (lastDefaultValue) { case "selected": - propKey$271 !== propKey && (viewTransitionMutationContext = !0); + propKey$272 !== propKey && (viewTransitionMutationContext = !0); domElement.selected = - propKey$271 && - "function" !== typeof propKey$271 && - "symbol" !== typeof propKey$271; + propKey$272 && + "function" !== typeof propKey$272 && + "symbol" !== typeof propKey$272; break; default: setProp( domElement, tag, lastDefaultValue, - propKey$271, + propKey$272, nextProps, propKey ); @@ -18503,24 +18596,24 @@ function updateProperties(domElement, tag, lastProps, nextProps) { case "track": case "wbr": case "menuitem": - for (var propKey$292 in lastProps) - (propKey$271 = lastProps[propKey$292]), - lastProps.hasOwnProperty(propKey$292) && - null != propKey$271 && - !nextProps.hasOwnProperty(propKey$292) && - setProp(domElement, tag, propKey$292, null, nextProps, propKey$271); + for (var propKey$293 in lastProps) + (propKey$272 = lastProps[propKey$293]), + lastProps.hasOwnProperty(propKey$293) && + null != propKey$272 && + !nextProps.hasOwnProperty(propKey$293) && + setProp(domElement, tag, propKey$293, null, nextProps, propKey$272); for (checked in nextProps) if ( - ((propKey$271 = nextProps[checked]), + ((propKey$272 = nextProps[checked]), (propKey = lastProps[checked]), nextProps.hasOwnProperty(checked) && - propKey$271 !== propKey && - (null != propKey$271 || null != propKey)) + propKey$272 !== propKey && + (null != propKey$272 || null != propKey)) ) switch (checked) { case "children": case "dangerouslySetInnerHTML": - if (null != propKey$271) + if (null != propKey$272) throw Error(formatProdErrorMessage(137, tag)); break; default: @@ -18528,7 +18621,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { domElement, tag, checked, - propKey$271, + propKey$272, nextProps, propKey ); @@ -18536,49 +18629,49 @@ function updateProperties(domElement, tag, lastProps, nextProps) { return; default: if (isCustomElement(tag)) { - for (var propKey$297 in lastProps) - (propKey$271 = lastProps[propKey$297]), - lastProps.hasOwnProperty(propKey$297) && - void 0 !== propKey$271 && - !nextProps.hasOwnProperty(propKey$297) && + for (var propKey$298 in lastProps) + (propKey$272 = lastProps[propKey$298]), + lastProps.hasOwnProperty(propKey$298) && + void 0 !== propKey$272 && + !nextProps.hasOwnProperty(propKey$298) && setPropOnCustomElement( domElement, tag, - propKey$297, + propKey$298, void 0, nextProps, - propKey$271 + propKey$272 ); for (defaultChecked in nextProps) - (propKey$271 = nextProps[defaultChecked]), + (propKey$272 = nextProps[defaultChecked]), (propKey = lastProps[defaultChecked]), !nextProps.hasOwnProperty(defaultChecked) || - propKey$271 === propKey || - (void 0 === propKey$271 && void 0 === propKey) || + propKey$272 === propKey || + (void 0 === propKey$272 && void 0 === propKey) || setPropOnCustomElement( domElement, tag, defaultChecked, - propKey$271, + propKey$272, nextProps, propKey ); return; } } - for (var propKey$302 in lastProps) - (propKey$271 = lastProps[propKey$302]), - lastProps.hasOwnProperty(propKey$302) && - null != propKey$271 && - !nextProps.hasOwnProperty(propKey$302) && - setProp(domElement, tag, propKey$302, null, nextProps, propKey$271); + for (var propKey$303 in lastProps) + (propKey$272 = lastProps[propKey$303]), + lastProps.hasOwnProperty(propKey$303) && + null != propKey$272 && + !nextProps.hasOwnProperty(propKey$303) && + setProp(domElement, tag, propKey$303, null, nextProps, propKey$272); for (lastProp in nextProps) - (propKey$271 = nextProps[lastProp]), + (propKey$272 = nextProps[lastProp]), (propKey = lastProps[lastProp]), !nextProps.hasOwnProperty(lastProp) || - propKey$271 === propKey || - (null == propKey$271 && null == propKey) || - setProp(domElement, tag, lastProp, propKey$271, nextProps, propKey); + propKey$272 === propKey || + (null == propKey$272 && null == propKey) || + setProp(domElement, tag, lastProp, propKey$272, nextProps, propKey); } function isLikelyStaticResource(initiatorType) { switch (initiatorType) { @@ -19194,6 +19287,7 @@ function animateGesture( targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -19248,7 +19342,7 @@ function animateGesture( (height = keyframes[width]), delete height.width, delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -19256,7 +19350,8 @@ function animateGesture( direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -19265,8 +19360,9 @@ function animateGesture( delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -19306,8 +19402,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -19342,25 +19438,26 @@ function startGestureTransition( ))) : (isExitGroupAnim = !0); } - var timing$319 = pseudoElement.getTiming(); + var timing$321 = pseudoElement.getTiming(); anim = rangeEnd - - (("number" === typeof timing$319.duration - ? timing$319.duration + (("number" === typeof timing$321.duration + ? timing$321.duration : 0) + - timing$319.delay) * + timing$321.delay) * longestDuration; - groupName = rangeEnd - timing$319.delay * longestDuration; + groupName = rangeEnd - timing$321.delay * longestDuration; if ( - "reverse" === timing$319.direction || - "alternate-reverse" === timing$319.direction + "reverse" === timing$321.direction || + "alternate-reverse" === timing$321.direction ) - (timing$319 = anim), (anim = groupName), (groupName = timing$319); + (timing$321 = anim), (anim = groupName), (groupName = timing$321); animateGesture( pseudoElement.getKeyframes(), pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -19377,6 +19474,7 @@ function startGestureTransition( pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -19385,12 +19483,12 @@ function startGestureTransition( ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -20491,26 +20589,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$329 = getResourcesFromRoot( + var styles$331 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$330 = styles$329.get(type); - resource$330 || + resource$332 = styles$331.get(type); + resource$332 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$330 = { + (resource$332 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$329.set(type, resource$330), - (styles$329 = JSCompiler_inline_result.querySelector( + styles$331.set(type, resource$332), + (styles$331 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$329._p && - ((resource$330.instance = styles$329), - (resource$330.state.loading = 5)), + !styles$331._p && + ((resource$332.instance = styles$331), + (resource$332.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -20523,16 +20621,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$329 || + styles$331 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$330.state + resource$332.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$330; + return resource$332; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -20629,37 +20727,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$335 = hoistableRoot.querySelector( + var instance$337 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$335) + if (instance$337) return ( (resource.state.loading |= 4), - (resource.instance = instance$335), - markNodeAsHoistable(instance$335), - instance$335 + (resource.instance = instance$337), + markNodeAsHoistable(instance$337), + instance$337 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$335 = ( + instance$337 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$335); - var linkInstance = instance$335; + markNodeAsHoistable(instance$337); + var linkInstance = instance$337; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$335, "link", instance); + setInitialProperties(instance$337, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$335, props.precedence, hoistableRoot); - return (resource.instance = instance$335); + insertStylesheet(instance$337, props.precedence, hoistableRoot); + return (resource.instance = instance$337); case "script": - instance$335 = getScriptKey(props.src); + instance$337 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$335) + getScriptSelectorFromKey(instance$337) )) ) return ( @@ -20668,7 +20766,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$335))) + if ((styleProps = preloadPropsMap.get(instance$337))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -21813,16 +21911,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2531 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2541 = React.version; if ( - "19.3.0-experimental-bef88f7c-20260116" !== - isomorphicReactPackageVersion$jscomp$inline_2531 + "19.3.0-experimental-d2908752-20260119" !== + isomorphicReactPackageVersion$jscomp$inline_2541 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2531, - "19.3.0-experimental-bef88f7c-20260116" + isomorphicReactPackageVersion$jscomp$inline_2541, + "19.3.0-experimental-d2908752-20260119" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -21842,24 +21940,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_3251 = { +var internals$jscomp$inline_3261 = { bundleType: 0, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_3252 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_3262 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_3252.isDisabled && - hook$jscomp$inline_3252.supportsFiber + !hook$jscomp$inline_3262.isDisabled && + hook$jscomp$inline_3262.supportsFiber ) try { - (rendererID = hook$jscomp$inline_3252.inject( - internals$jscomp$inline_3251 + (rendererID = hook$jscomp$inline_3262.inject( + internals$jscomp$inline_3261 )), - (injectedHook = hook$jscomp$inline_3252); + (injectedHook = hook$jscomp$inline_3262); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -22115,7 +22213,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; "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 1a9aa7284f456..25d993ec5eb1b 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 @@ -4053,6 +4053,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4065,6 +4066,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -4976,6 +5021,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6436,7 +6536,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7462,6 +7562,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -10194,10 +10296,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10312,7 +10418,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10411,5 +10516,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-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 350cfe8ad4886..508cb96f67dc2 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js @@ -7035,4 +7035,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 6b1dcfa83604c..236f7799aa670 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 @@ -4053,6 +4053,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4065,6 +4066,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -4976,6 +5021,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6436,7 +6536,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7462,6 +7562,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -10194,10 +10296,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10312,7 +10418,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10411,5 +10516,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-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 a6522f8dd786e..0f18a73fb0f6f 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js @@ -7138,4 +7138,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 598e93086c17c..44c210eb5f6f5 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 @@ -4246,6 +4246,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4258,6 +4259,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5349,6 +5394,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6855,7 +6955,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7887,6 +7987,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9390,11 +9492,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -10763,10 +10865,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10881,7 +10987,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -11214,5 +11319,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 651733d44b0ff..d51e68ee38545 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js @@ -7688,12 +7688,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-experimental-bef88f7c-20260116" + "19.3.0-experimental-d2908752-20260119" ) ); } @@ -7944,4 +7944,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 ecc7783c248c4..410e396675604 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js @@ -7383,11 +7383,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7932,4 +7932,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 729b03ff87426..4b8c35680e570 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 @@ -4248,6 +4248,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4260,6 +4261,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5365,6 +5410,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6871,7 +6971,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7903,6 +8003,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9419,11 +9521,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react-experimental"), @@ -10788,10 +10890,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10906,7 +11012,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -11239,5 +11344,5 @@ startWork(request); }); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 80a27827e7481..14d89a185b9da 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js @@ -7806,11 +7806,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8060,4 +8060,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 5740ef5a3a92c..b9591e58275dd 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 @@ -4140,6 +4140,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4152,6 +4153,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5251,6 +5296,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6756,7 +6856,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7788,6 +7888,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9279,11 +9381,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -10749,10 +10851,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10867,7 +10973,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -11405,5 +11510,5 @@ } }; }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 509840b9172f4..be5dd27619d9d 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js @@ -7685,11 +7685,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -8239,4 +8239,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 367d368748bf0..5189639b47e92 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 @@ -11395,24 +11395,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_3318; - var JSCompiler_object_inline_stack_3319 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_3326; + var JSCompiler_object_inline_stack_3327 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_3317 = !1; + var JSCompiler_object_inline_message_3325 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_3318 = didSuspend) || - (JSCompiler_object_inline_digest_3318 = + (JSCompiler_object_inline_digest_3326 = didSuspend) || + (JSCompiler_object_inline_digest_3326 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_3318 && - ((JSCompiler_object_inline_message_3317 = !0), + JSCompiler_object_inline_digest_3326 && + ((JSCompiler_object_inline_message_3325 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_3318 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_3326 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_3317 + JSCompiler_object_inline_message_3325 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11425,18 +11425,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_3318 = { + ((JSCompiler_object_inline_digest_3326 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_3318), - (JSCompiler_object_inline_digest_3318 = + JSCompiler_object_inline_digest_3326), + (JSCompiler_object_inline_digest_3326 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_3318.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_3318), + (JSCompiler_object_inline_digest_3326.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_3326), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11450,9 +11450,9 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_3319.children, - nextFallbackChildren = JSCompiler_object_inline_stack_3319.fallback; - if (JSCompiler_object_inline_message_3317) + var nextPrimaryChildren = JSCompiler_object_inline_stack_3327.children, + nextFallbackChildren = JSCompiler_object_inline_stack_3327.fallback; + if (JSCompiler_object_inline_message_3325) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11461,19 +11461,19 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3319 = workInProgress.child), - (JSCompiler_object_inline_stack_3319.memoizedState = + (JSCompiler_object_inline_stack_3327 = workInProgress.child), + (JSCompiler_object_inline_stack_3327.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3319.childLanes = + (JSCompiler_object_inline_stack_3327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3318, + JSCompiler_object_inline_digest_3326, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3319) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3327) ); - if (!0 === JSCompiler_object_inline_stack_3319.defer) + if (!0 === JSCompiler_object_inline_stack_3327.defer) return ( reuseSuspenseHandlerOnStack(workInProgress), mountSuspenseFallbackChildren( @@ -11482,18 +11482,18 @@ nextFallbackChildren, renderLanes ), - (JSCompiler_object_inline_stack_3319 = workInProgress.child), - (JSCompiler_object_inline_stack_3319.memoizedState = + (JSCompiler_object_inline_stack_3327 = workInProgress.child), + (JSCompiler_object_inline_stack_3327.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3319.childLanes = + (JSCompiler_object_inline_stack_3327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3318, + JSCompiler_object_inline_digest_3326, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress.lanes = 4194304), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3319) + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3327) ); pushPrimaryTreeSuspenseHandler(workInProgress); return mountSuspensePrimaryChildren( @@ -11503,8 +11503,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_3320 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_3320) { + var JSCompiler_object_inline_componentStack_3328 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_3328) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11521,13 +11521,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_3319.fallback), + JSCompiler_object_inline_stack_3327.fallback), (nextFallbackChildren = workInProgress.mode), - (JSCompiler_object_inline_stack_3319 = + (JSCompiler_object_inline_stack_3327 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_3319.children + children: JSCompiler_object_inline_stack_3327.children }, nextFallbackChildren )), @@ -11538,30 +11538,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_3319.return = workInProgress), + (JSCompiler_object_inline_stack_3327.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3319.sibling = + (JSCompiler_object_inline_stack_3327.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3319), + (workInProgress.child = JSCompiler_object_inline_stack_3327), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_3319 = workInProgress.child), - (JSCompiler_object_inline_stack_3319.memoizedState = + (JSCompiler_object_inline_stack_3327 = workInProgress.child), + (JSCompiler_object_inline_stack_3327.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_3319.childLanes = + (JSCompiler_object_inline_stack_3327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3318, + JSCompiler_object_inline_digest_3326, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_3319 + JSCompiler_object_inline_stack_3327 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11569,45 +11569,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_3320 + JSCompiler_object_inline_componentStack_3328 )) ) { - JSCompiler_object_inline_digest_3318 = - JSCompiler_object_inline_componentStack_3320.nextSibling && - JSCompiler_object_inline_componentStack_3320.nextSibling.dataset; - if (JSCompiler_object_inline_digest_3318) { - nextPrimaryChildren = JSCompiler_object_inline_digest_3318.dgst; - var message = JSCompiler_object_inline_digest_3318.msg; - nextFallbackChildren = JSCompiler_object_inline_digest_3318.stck; - var componentStack = JSCompiler_object_inline_digest_3318.cstck; + JSCompiler_object_inline_digest_3326 = + JSCompiler_object_inline_componentStack_3328.nextSibling && + JSCompiler_object_inline_componentStack_3328.nextSibling.dataset; + if (JSCompiler_object_inline_digest_3326) { + nextPrimaryChildren = JSCompiler_object_inline_digest_3326.dgst; + var message = JSCompiler_object_inline_digest_3326.msg; + nextFallbackChildren = JSCompiler_object_inline_digest_3326.stck; + var componentStack = JSCompiler_object_inline_digest_3326.cstck; } - JSCompiler_object_inline_message_3317 = message; - JSCompiler_object_inline_digest_3318 = nextPrimaryChildren; - JSCompiler_object_inline_stack_3319 = nextFallbackChildren; - JSCompiler_object_inline_componentStack_3320 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_3317; - nextFallbackChildren = JSCompiler_object_inline_componentStack_3320; + JSCompiler_object_inline_message_3325 = message; + JSCompiler_object_inline_digest_3326 = nextPrimaryChildren; + JSCompiler_object_inline_stack_3327 = nextFallbackChildren; + JSCompiler_object_inline_componentStack_3328 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_3325; + nextFallbackChildren = JSCompiler_object_inline_componentStack_3328; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_3319 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3318; - JSCompiler_object_inline_digest_3318 = + JSCompiler_object_inline_stack_3327 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_3326; + JSCompiler_object_inline_digest_3326 = void 0 === nextFallbackChildren ? null : nextFallbackChildren; - JSCompiler_object_inline_stack_3319 = { + JSCompiler_object_inline_stack_3327 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_3318 + stack: JSCompiler_object_inline_digest_3326 }; - "string" === typeof JSCompiler_object_inline_digest_3318 && + "string" === typeof JSCompiler_object_inline_digest_3326 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_3319 + JSCompiler_object_inline_stack_3327 ); - queueHydrationError(JSCompiler_object_inline_stack_3319); + queueHydrationError(JSCompiler_object_inline_stack_3327); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11621,35 +11621,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_3318 = + (JSCompiler_object_inline_digest_3326 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_3318) + didReceiveUpdate || JSCompiler_object_inline_digest_3326) ) { - JSCompiler_object_inline_digest_3318 = workInProgressRoot; + JSCompiler_object_inline_digest_3326 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_3318 && - ((JSCompiler_object_inline_stack_3319 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_3318, + null !== JSCompiler_object_inline_digest_3326 && + ((JSCompiler_object_inline_stack_3327 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_3326, renderLanes )), - 0 !== JSCompiler_object_inline_stack_3319 && - JSCompiler_object_inline_stack_3319 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_3327 && + JSCompiler_object_inline_stack_3327 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_3319), + ((prevState.retryLane = JSCompiler_object_inline_stack_3327), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_3319 + JSCompiler_object_inline_stack_3327 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_3318, + JSCompiler_object_inline_digest_3326, current, - JSCompiler_object_inline_stack_3319 + JSCompiler_object_inline_stack_3327 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3320 + JSCompiler_object_inline_componentStack_3328 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11658,14 +11658,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_3320 + JSCompiler_object_inline_componentStack_3328 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_3320.nextSibling + JSCompiler_object_inline_componentStack_3328.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11677,32 +11677,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_3319.children + JSCompiler_object_inline_stack_3327.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_3317) + if (JSCompiler_object_inline_message_3325) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_3319.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_3327.fallback), (nextFallbackChildren = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_3320 = + (JSCompiler_object_inline_componentStack_3328 = componentStack.sibling), - (JSCompiler_object_inline_stack_3319 = createWorkInProgress( + (JSCompiler_object_inline_stack_3327 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_3319.children + children: JSCompiler_object_inline_stack_3327.children } )), - (JSCompiler_object_inline_stack_3319.subtreeFlags = + (JSCompiler_object_inline_stack_3327.subtreeFlags = componentStack.subtreeFlags & 133169152), - null !== JSCompiler_object_inline_componentStack_3320 + null !== JSCompiler_object_inline_componentStack_3328 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_3320, + JSCompiler_object_inline_componentStack_3328, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11713,11 +11713,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_3319.return = workInProgress), - (JSCompiler_object_inline_stack_3319.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_3319), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3319), - (JSCompiler_object_inline_stack_3319 = workInProgress.child), + (JSCompiler_object_inline_stack_3327.return = workInProgress), + (JSCompiler_object_inline_stack_3327.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_3327), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_3327), + (JSCompiler_object_inline_stack_3327 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11733,18 +11733,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: nextFallbackChildren })), - (JSCompiler_object_inline_stack_3319.memoizedState = + (JSCompiler_object_inline_stack_3327.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_3319.childLanes = + (JSCompiler_object_inline_stack_3327.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_3318, + JSCompiler_object_inline_digest_3326, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_3319 + JSCompiler_object_inline_stack_3327 ) ); null !== prevState && @@ -11756,16 +11756,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_3319.children + children: JSCompiler_object_inline_stack_3327.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_3318 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_3318 + ((JSCompiler_object_inline_digest_3326 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_3326 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_3318.push(current)); + : JSCompiler_object_inline_digest_3326.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -12941,6 +12941,13 @@ ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (returnFiber = workInProgress.pendingProps), null != returnFiber.name && "auto" !== returnFiber.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -14743,8 +14750,12 @@ ) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent( + placement, + props.onGestureEnter + ) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -15026,8 +15037,12 @@ ); 0 !== (changedParent.flags & 4) && className && - (gesture || - scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent( + changedParent, + props.onGestureUpdate + ) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -17998,27 +18013,32 @@ throw Error( "Found a pair with an auto name. This is a bug in React." ); - var name = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), null !== state && - applyViewTransitionToClones(name, props, state, child)); + applyViewTransitionToClones(name, className, state, child), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, props = placement.memoizedProps, - name = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && - applyViewTransitionToClones(name, props, state, placement)); + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && + applyViewTransitionToClones(name, className, clones, placement); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -18029,7 +18049,7 @@ if ( visitPhase !== INSERT_APPEARING_PAIR || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -18047,6 +18067,19 @@ visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && + commitHookEffectListMount(Insertion | HasEffect, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -18156,14 +18189,14 @@ _nextPhase = CLONE_UNCHANGED; } _nextPhase !== CLONE_UNCHANGED - ? ((instance = instance.cloneNode(!1)), + ? ((instance = cloneMutableInstance(instance, !1)), recursivelyInsertClonesFromExistingTree( parentFiber, instance, null, _nextPhase )) - : (instance = instance.cloneNode(!0)); + : (instance = cloneMutableInstance(instance, !0)); hostParentClone.appendChild(instance); null !== parentViewTransition && (null === parentViewTransition.clones @@ -18322,11 +18355,11 @@ case 5: var clone = deletions.stateNode; null === deletions.child - ? ((clone = clone.cloneNode(!0)), + ? ((clone = cloneMutableInstance(clone, !0)), deletions.flags & 32 && (resetTextContent(clone), (viewTransitionMutationContext = !0))) - : (clone = clone.cloneNode(!1)); + : (clone = cloneMutableInstance(clone, !1)); flags & 4 && commitUpdate( clone, @@ -18449,6 +18482,25 @@ visitPhase$jscomp$0 ); } + function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount( + Insertion | HasEffect, + finishedWork, + nearestMountedAncestor + ); + } + } function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -18458,31 +18510,35 @@ null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -18491,14 +18547,13 @@ (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -18785,6 +18840,30 @@ pendingViewTransitionEvents.push(callback.bind(null, instance)); } } + function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } + } function scheduleUpdateOnFiber(root, fiber, lane) { isRunningInsertionEffect && console.error("useInsertionEffect must not schedule updates."); @@ -20575,7 +20654,7 @@ ensureRootIsScheduled(root); else { animatingLanes |= pendingEffectsLanes; - animatingTask = null; + pendingViewTransitionEvents = animatingTask = null; startTime = ReactSharedInternals.T; ReactSharedInternals.T = null; endTime = ReactDOMSharedInternals.p; @@ -20583,11 +20662,6 @@ hydrationFailed = executionContext; executionContext |= CommitContext; try { - didWarnForRootClone || - ((didWarnForRootClone = !0), - console.warn( - "startGestureTransition() caused something to mutate or relayout the root. This currently requires a clone of the whole document. Make sure to add a directly around an absolutely positioned DOM node to minimize the impact of any changes caused by the Gesture Transition." - )); var rootContainer = root.containerInfo, documentElement = 9 === rootContainer.nodeType @@ -21170,10 +21244,11 @@ (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT); } pendingEffectsStatus = NO_PENDING_EFFECTS; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; - var finishedWork = pendingFinishedWork, + var root = pendingEffectsRoot, + finishedWork = pendingFinishedWork, lanes = pendingEffectsLanes, recoverableErrors = pendingRecoverableErrors, passiveSubtreeMask = (lanes & 335544064) === lanes ? 10262 : 10256; @@ -21184,16 +21259,12 @@ ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE) : ((pendingEffectsStatus = NO_PENDING_EFFECTS), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - ), + releaseRootPooledCache(root, root.pendingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = root.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - passiveSubtreeMask || - commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime); + passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(root); remainingLanes = lanesToEventPriority(lanes); finishedWork = finishedWork.stateNode; if ( @@ -21232,8 +21303,7 @@ err )); } - isDevToolsPresent && - startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && root.memoizedUpdaters.clear(); onCommitRoot(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; @@ -21241,8 +21311,7 @@ ReactDOMSharedInternals.p = DiscreteEventPriority; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = root.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -21265,24 +21334,32 @@ onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - errorInfo = 0; + errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++ ) - (0, onRecoverableError[errorInfo])(recoverableError); + (recoverableErrors = (0, onRecoverableError[errorInfo])( + recoverableError + )), + void 0 !== recoverableErrors && + startViewTransitionStartTime.finished.finally( + recoverableErrors + ); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; + ensureRootIsScheduled(root); + remainingLanes = root.pendingLanes; 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + root === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))) : (nestedUpdateCount = 0); passiveSubtreeMask || finalizeRender(lanes, commitEndTime); if (hasScheduledReplayAttempt) { @@ -21305,23 +21382,21 @@ startViewTransitionStartTime < queuedChangeEventTargets.length; startViewTransitionStartTime++ ) - (lanes = queuedChangeEventTargets[startViewTransitionStartTime]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + (root = queuedChangeEventTargets[startViewTransitionStartTime]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent( - new InputEvent("input", { bubbles: !0 }) - ) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -21446,6 +21521,28 @@ (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = startViewTransitionStartTime.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])( + prevTransition + ); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } finalizeRender(lanes, commitEndTime); ensureRootIsScheduled(startViewTransitionStartTime); } @@ -25511,6 +25608,20 @@ ? HostContextNamespaceNone : parentNamespace; } + function cloneMutableInstance(instance, keepChildren) { + var tagName = instance.tagName; + switch (tagName) { + case "VIDEO": + case "IFRAME": + didWarnForClone || + ((didWarnForClone = !0), + console.warn( + 'startGestureTransition() required cloning a <%s> element since it exists in both states of the gesture. This can be problematic since it will load it twice Try removing or hiding it with in the optimistic state.', + tagName.toLowerCase() + )); + } + return instance.cloneNode(keepChildren); + } function shouldSetTextContent(type, props) { return ( "textarea" === type || @@ -26236,6 +26347,7 @@ targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26294,7 +26406,7 @@ delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -26302,7 +26414,8 @@ direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -26311,8 +26424,9 @@ delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -26354,8 +26468,8 @@ pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -26409,6 +26523,7 @@ pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -26425,6 +26540,7 @@ pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -26433,12 +26549,12 @@ ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -30729,10 +30845,10 @@ useActionState: throwInvalidHookError, useOptimistic: throwInvalidHookError, useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError - }; - ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; - var HooksDispatcherOnMountInDEV = null, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, @@ -31861,7 +31977,6 @@ currentHoistableRoot = null, inHydratedSubtree = !1, suspenseyCommitFlag = 8192, - didWarnForRootClone = !1, viewTransitionContextChanged = !1, CLONE_UPDATE = 0, CLONE_EXIT = 1, @@ -32104,6 +32219,7 @@ eventsEnabled = null, selectionInformation = null, warnedUnknownTags = { dialog: !0, webview: !0 }, + didWarnForClone = !1, currentPopstateTransitionEvent = null, schedulerEvent = void 0, scheduleTimeout = "function" === typeof setTimeout ? setTimeout : void 0, @@ -32883,11 +32999,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-experimental-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-experimental-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-experimental-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -32924,10 +33040,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -33241,5 +33357,5 @@ } }; }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 62deac03650dc..d7e63c4ef634d 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 @@ -6008,32 +6008,32 @@ function entangleTransitionUpdate(root, queue, lane) { } } var ContextOnlyDispatcher = { - readContext: readContext, - use: use, - useCallback: throwInvalidHookError, - useContext: throwInvalidHookError, - useEffect: throwInvalidHookError, - useImperativeHandle: throwInvalidHookError, - useLayoutEffect: throwInvalidHookError, - useInsertionEffect: throwInvalidHookError, - useMemo: throwInvalidHookError, - useReducer: throwInvalidHookError, - useRef: throwInvalidHookError, - useState: throwInvalidHookError, - useDebugValue: throwInvalidHookError, - useDeferredValue: throwInvalidHookError, - useTransition: throwInvalidHookError, - useSyncExternalStore: throwInvalidHookError, - useId: throwInvalidHookError, - useHostTransitionStatus: throwInvalidHookError, - useFormState: throwInvalidHookError, - useActionState: throwInvalidHookError, - useOptimistic: throwInvalidHookError, - useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError -}; -ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; -var HooksDispatcherOnMount = { + readContext: readContext, + use: use, + useCallback: throwInvalidHookError, + useContext: throwInvalidHookError, + useEffect: throwInvalidHookError, + useImperativeHandle: throwInvalidHookError, + useLayoutEffect: throwInvalidHookError, + useInsertionEffect: throwInvalidHookError, + useMemo: throwInvalidHookError, + useReducer: throwInvalidHookError, + useRef: throwInvalidHookError, + useState: throwInvalidHookError, + useDebugValue: throwInvalidHookError, + useDeferredValue: throwInvalidHookError, + useTransition: throwInvalidHookError, + useSyncExternalStore: throwInvalidHookError, + useId: throwInvalidHookError, + useHostTransitionStatus: throwInvalidHookError, + useFormState: throwInvalidHookError, + useActionState: throwInvalidHookError, + useOptimistic: throwInvalidHookError, + useMemoCache: throwInvalidHookError, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMount = { readContext: readContext, use: use, useCallback: function (callback, deps) { @@ -6280,62 +6280,62 @@ var HooksDispatcherOnMount = { return updateOptimisticImpl(hook, currentHook, passthrough, reducer); }, useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh - }; -HooksDispatcherOnUpdate.useEffectEvent = updateEvent; -var HooksDispatcherOnRerender = { - readContext: readContext, - use: use, - useCallback: updateCallback, - useContext: readContext, - useEffect: updateEffect, - useImperativeHandle: updateImperativeHandle, - useInsertionEffect: updateInsertionEffect, - useLayoutEffect: updateLayoutEffect, - useMemo: updateMemo, - useReducer: rerenderReducer, - useRef: updateRef, - useState: function () { - return rerenderReducer(basicStateReducer); - }, - useDebugValue: mountDebugValue, - useDeferredValue: function (value, initialValue) { - var hook = updateWorkInProgressHook(); - return null === currentHook - ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl( - hook, - currentHook.memoizedState, - value, - initialValue - ); + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent }, - useTransition: function () { - var booleanOrThenable = rerenderReducer(basicStateReducer)[0], - start = updateWorkInProgressHook().memoizedState; - return [ - "boolean" === typeof booleanOrThenable - ? booleanOrThenable - : useThenable(booleanOrThenable), - start - ]; - }, - useSyncExternalStore: updateSyncExternalStore, - useId: updateId, - useHostTransitionStatus: useHostTransitionStatus, - useFormState: rerenderActionState, - useActionState: rerenderActionState, - useOptimistic: function (passthrough, reducer) { - var hook = updateWorkInProgressHook(); - if (null !== currentHook) - return updateOptimisticImpl(hook, currentHook, passthrough, reducer); - hook.baseState = passthrough; - return [passthrough, hook.queue.dispatch]; - }, - useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh -}; -HooksDispatcherOnRerender.useEffectEvent = updateEvent; + HooksDispatcherOnRerender = { + readContext: readContext, + use: use, + useCallback: updateCallback, + useContext: readContext, + useEffect: updateEffect, + useImperativeHandle: updateImperativeHandle, + useInsertionEffect: updateInsertionEffect, + useLayoutEffect: updateLayoutEffect, + useMemo: updateMemo, + useReducer: rerenderReducer, + useRef: updateRef, + useState: function () { + return rerenderReducer(basicStateReducer); + }, + useDebugValue: mountDebugValue, + useDeferredValue: function (value, initialValue) { + var hook = updateWorkInProgressHook(); + return null === currentHook + ? mountDeferredValueImpl(hook, value, initialValue) + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); + }, + useTransition: function () { + var booleanOrThenable = rerenderReducer(basicStateReducer)[0], + start = updateWorkInProgressHook().memoizedState; + return [ + "boolean" === typeof booleanOrThenable + ? booleanOrThenable + : useThenable(booleanOrThenable), + start + ]; + }, + useSyncExternalStore: updateSyncExternalStore, + useId: updateId, + useHostTransitionStatus: useHostTransitionStatus, + useFormState: rerenderActionState, + useActionState: rerenderActionState, + useOptimistic: function (passthrough, reducer) { + var hook = updateWorkInProgressHook(); + if (null !== currentHook) + return updateOptimisticImpl(hook, currentHook, passthrough, reducer); + hook.baseState = passthrough; + return [passthrough, hook.queue.dispatch]; + }, + useMemoCache: useMemoCache, + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent + }; function applyDerivedStateFromProps( workInProgress, ctor, @@ -8481,6 +8481,13 @@ function beginWork(current, workInProgress, renderLanes) { ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (props = workInProgress.pendingProps), null != props.name && "auto" !== props.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -9740,8 +9747,9 @@ function commitEnterViewTransitions(placement, gesture) { ? applyViewTransitionToHostInstances(placement, name, className, null, !1) ? (commitAppearingPairViewTransitions(placement), state.paired || - gesture || - scheduleViewTransitionEvent(placement, props.onEnter)) + (gesture + ? scheduleGestureTransitionEvent(placement, props.onGestureEnter) + : scheduleViewTransitionEvent(placement, props.onEnter))) : restoreViewTransitionOnHostInstances(placement.child, !1) : commitAppearingPairViewTransitions(placement); } else if (0 !== (placement.subtreeFlags & 33554432)) @@ -10012,7 +10020,9 @@ function measureNestedViewTransitions(changedParent, gesture) { ); 0 !== (changedParent.flags & 4) && name && - (gesture || scheduleViewTransitionEvent(changedParent, props.onUpdate)); + (gesture + ? scheduleGestureTransitionEvent(changedParent, props.onGestureUpdate) + : scheduleViewTransitionEvent(changedParent, props.onUpdate)); } else 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture); @@ -12236,25 +12246,30 @@ function applyAppearingPairViewTransition(child) { var props = child.memoizedProps; if (null == props.name || "auto" === props.name) throw Error(formatProdErrorMessage(544)); - child = props.name; - props = getViewTransitionClassName(props.default, props.share); - "none" !== props && + var name = props.name, + className = getViewTransitionClassName(props.default, props.share); + "none" !== className && ((state = state.clones), - null !== state && applyViewTransitionToClones(child, props, state)); + null !== state && applyViewTransitionToClones(name, className, state), + scheduleGestureTransitionEvent(child, props.onGestureShare)); } } } function applyExitViewTransition(placement) { var state = placement.stateNode, - props = placement.memoizedProps; - placement = getViewTransitionName(props, state); - props = getViewTransitionClassName( - props.default, - state.paired ? props.share : props.exit - ); - "none" !== props && - ((state = state.clones), - null !== state && applyViewTransitionToClones(placement, props, state)); + props = placement.memoizedProps, + name = getViewTransitionName(props, state), + className = getViewTransitionClassName( + props.default, + state.paired ? props.share : props.exit + ); + if ("none" !== className) { + var clones = state.clones; + null !== clones && applyViewTransitionToClones(name, className, clones); + state.paired + ? scheduleGestureTransitionEvent(placement, props.onGestureShare) + : scheduleGestureTransitionEvent(placement, props.onGestureExit); + } } function recursivelyInsertNew( parentFiber, @@ -12265,7 +12280,7 @@ function recursivelyInsertNew( if ( 7 !== visitPhase || null !== parentViewTransition || - 0 !== (parentFiber.subtreeFlags & 18874368) + 0 !== (parentFiber.subtreeFlags & 18874370) ) for (parentFiber = parentFiber.child; null !== parentFiber; ) recursivelyInsertNewFiber( @@ -12283,6 +12298,18 @@ function recursivelyInsertNewFiber( visitPhase ) { switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + recursivelyInsertNew( + finishedWork, + hostParentClone, + parentViewTransition, + visitPhase + ); + finishedWork.flags & 4 && commitHookEffectListMount(3, finishedWork); + break; case 26: recursivelyInsertNew( finishedWork, @@ -12600,6 +12627,21 @@ function recursivelyInsertClones( visitPhase$jscomp$0 ); } +function recursivelyRestoreNew(finishedWork, nearestMountedAncestor) { + if (0 !== (6 & finishedWork.subtreeFlags)) + for (var child = finishedWork.child; null !== child; ) + recursivelyRestoreNew(child, nearestMountedAncestor), + (child = child.sibling); + switch (finishedWork.tag) { + case 0: + case 11: + case 14: + case 15: + null === finishedWork.alternate && + finishedWork.flags & 4 && + commitHookEffectListUnmount(3, finishedWork, nearestMountedAncestor); + } +} function recursivelyApplyViewTransitions(parentFiber) { var deletions = parentFiber.deletions; if (null !== deletions) @@ -12609,30 +12651,34 @@ function recursivelyApplyViewTransitions(parentFiber) { null === parentFiber.alternate || 0 !== (parentFiber.subtreeFlags & 13878) ) - for (parentFiber = parentFiber.child; null !== parentFiber; ) { - deletions = parentFiber; - i = deletions.alternate; - if (null !== i) { - var flags = deletions.flags; - switch (deletions.tag) { + for (deletions = parentFiber.child; null !== deletions; ) { + var current = deletions.alternate; + if (null === current) recursivelyRestoreNew(deletions, parentFiber); + else + switch (((i = deletions), i.tag)) { case 4: break; case 22: - flags & 8192 && - null !== deletions.memoizedState && - null !== i && - null === i.memoizedState && - commitEnterViewTransitions(i, !0); + var wasHidden = null !== current.memoizedState; + null === i.memoizedState + ? wasHidden + ? recursivelyRestoreNew(i, i) + : recursivelyApplyViewTransitions(i) + : wasHidden || commitEnterViewTransitions(current, !0); break; case 30: - flags = viewTransitionContextChanged; + wasHidden = viewTransitionContextChanged; var prevCancelableChildren = pushViewTransitionCancelableScope(); viewTransitionContextChanged = !1; - recursivelyApplyViewTransitions(deletions); - viewTransitionContextChanged && (deletions.flags |= 4); - i = measureUpdateViewTransition(i, deletions, !0); - 0 !== (deletions.flags & 4) && i - ? (viewTransitionCancelableChildren = prevCancelableChildren) + recursivelyApplyViewTransitions(i); + viewTransitionContextChanged && (i.flags |= 4); + current = measureUpdateViewTransition(current, i, !0); + 0 !== (i.flags & 4) && current + ? (scheduleGestureTransitionEvent( + i, + i.memoizedProps.onGestureUpdate + ), + (viewTransitionCancelableChildren = prevCancelableChildren)) : null !== prevCancelableChildren && (prevCancelableChildren.push.apply( prevCancelableChildren, @@ -12640,14 +12686,13 @@ function recursivelyApplyViewTransitions(parentFiber) { ), (viewTransitionCancelableChildren = prevCancelableChildren)); viewTransitionContextChanged = - 0 !== (deletions.flags & 32) ? !0 : flags; - deletions.stateNode.clones = null; + 0 !== (i.flags & 32) ? !0 : wasHidden; + i.stateNode.clones = null; break; default: - recursivelyApplyViewTransitions(deletions); + recursivelyApplyViewTransitions(i); } - } - parentFiber = parentFiber.sibling; + deletions = deletions.sibling; } else measureNestedViewTransitions(parentFiber, !0); } @@ -12962,6 +13007,30 @@ function scheduleViewTransitionEvent(fiber, callback) { pendingViewTransitionEvents.push(callback.bind(null, instance)); } } +function scheduleGestureTransitionEvent(fiber, callback) { + if (null != callback) { + var applyingGesture = pendingEffectsRoot.pendingGestures; + if (null !== applyingGesture) { + var state = fiber.stateNode, + instance = state.ref; + null === instance && + (instance = state.ref = + createViewTransitionInstance( + getViewTransitionName(fiber.memoizedProps, state) + )); + fiber = applyingGesture.provider; + applyingGesture = { + rangeStart: applyingGesture.rangeStart, + rangeEnd: applyingGesture.rangeEnd + }; + null === pendingViewTransitionEvents && + (pendingViewTransitionEvents = []); + pendingViewTransitionEvents.push( + callback.bind(null, fiber, applyingGesture, instance) + ); + } + } +} function scheduleUpdateOnFiber(root, fiber, lane) { if ( (root === workInProgressRoot && @@ -13500,8 +13569,8 @@ function renderRootSync(root, lanes, shouldYieldForPrerendering) { workLoopSync(); exitStatus = workInProgressRootExitStatus; break; - } catch (thrownValue$189) { - handleThrow(root, thrownValue$189); + } catch (thrownValue$190) { + handleThrow(root, thrownValue$190); } while (1); lanes && root.shellSuspendCounter++; @@ -13620,8 +13689,8 @@ function renderRootConcurrent(root, lanes) { } workLoopConcurrentByScheduler(); break; - } catch (thrownValue$191) { - handleThrow(root, thrownValue$191); + } catch (thrownValue$192) { + handleThrow(root, thrownValue$192); } while (1); lastContextDependency = currentlyRenderingFiber$1 = null; @@ -13841,6 +13910,7 @@ function completeRoot( var finishedGesture = root.pendingGestures; if (null === finishedGesture) ensureRootIsScheduled(root); else { + pendingViewTransitionEvents = null; var prevTransition = ReactSharedInternals.T; ReactSharedInternals.T = null; var previousPriority = ReactDOMSharedInternals.p; @@ -13931,26 +14001,26 @@ function completeRoot( } var rotate = computedStyle.rotate; if ("none" !== rotate && "" !== rotate) { - var parts$270 = rotate.split(" "); + var parts$271 = rotate.split(" "); transform = - 1 === parts$270.length - ? "rotate(" + parts$270[0] + ") " + transform - : 2 === parts$270.length + 1 === parts$271.length + ? "rotate(" + parts$271[0] + ") " + transform + : 2 === parts$271.length ? "rotate" + - parts$270[0].toUpperCase() + + parts$271[0].toUpperCase() + "(" + - parts$270[1] + + parts$271[1] + ") " + transform - : "rotate3d(" + parts$270.join(", ") + ") " + transform; + : "rotate3d(" + parts$271.join(", ") + ") " + transform; } var translate = computedStyle.translate; if ("none" !== translate && "" !== translate) { - var parts$271 = translate.split(" "); + var parts$272 = translate.split(" "); transform = - (3 === parts$271.length ? "translate3d" : "translate") + + (3 === parts$272.length ? "translate3d" : "translate") + "(" + - parts$271.join(", ") + + parts$272.join(", ") + ") " + transform; } @@ -14276,6 +14346,7 @@ function flushLayoutEffects() { function flushSpawnedWork() { if (4 === pendingEffectsStatus || 3 === pendingEffectsStatus) { pendingEffectsStatus = 0; + var committedViewTransition = pendingViewTransition; pendingViewTransition = null; requestPaint(); var root = pendingEffectsRoot, @@ -14326,15 +14397,22 @@ function flushSpawnedWork() { recoverableErrors = pendingViewTransitionEvents; onRecoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== recoverableErrors) + if ( + null !== recoverableErrors && + ((pendingViewTransitionEvents = null), + null === onRecoverableError && (onRecoverableError = []), + null !== committedViewTransition) + ) for ( - pendingViewTransitionEvents = null, - null === onRecoverableError && (onRecoverableError = []), - recoverableError = 0; + recoverableError = 0; recoverableError < recoverableErrors.length; recoverableError++ ) - (0, recoverableErrors[recoverableError])(onRecoverableError); + (finishedWork = (0, recoverableErrors[recoverableError])( + onRecoverableError + )), + void 0 !== finishedWork && + committedViewTransition.finished.finally(finishedWork); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); ensureRootIsScheduled(root); passiveSubtreeMask = root.pendingLanes; @@ -14356,22 +14434,26 @@ function flushSpawnedWork() { (queuedMouse = null); queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap); queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap); - for (root = 0; root < queuedChangeEventTargets.length; root++) - (lanes = queuedChangeEventTargets[root]), - "INPUT" === lanes.nodeName - ? "checkbox" === lanes.type || "radio" === lanes.type - ? (lanes.dispatchEvent( + for ( + committedViewTransition = 0; + committedViewTransition < queuedChangeEventTargets.length; + committedViewTransition++ + ) + (root = queuedChangeEventTargets[committedViewTransition]), + "INPUT" === root.nodeName + ? "checkbox" === root.type || "radio" === root.type + ? (root.dispatchEvent( new ("function" === typeof PointerEvent ? PointerEvent : Event)("click", { bubbles: !0 }) ), - lanes.dispatchEvent(new Event("input", { bubbles: !0 }))) + root.dispatchEvent(new Event("input", { bubbles: !0 }))) : "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })) - : "TEXTAREA" === lanes.nodeName && + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })) + : "TEXTAREA" === root.nodeName && "function" === typeof InputEvent && - lanes.dispatchEvent(new InputEvent("input", { bubbles: !0 })), - lanes.dispatchEvent(new Event("change", { bubbles: !0 })); + root.dispatchEvent(new InputEvent("input", { bubbles: !0 })), + root.dispatchEvent(new Event("change", { bubbles: !0 })); queuedChangeEventTargets.length = 0; } flushSyncWorkAcrossRoots_impl(0, !1); @@ -14451,6 +14533,26 @@ function flushGestureAnimations() { (ReactDOMSharedInternals.p = previousPriority), (ReactSharedInternals.T = prevTransition); } + finishedWork = pendingViewTransitionEvents; + prevTransition = pendingTransitionTypes; + pendingTransitionTypes = null; + if ( + null !== finishedWork && + ((pendingViewTransitionEvents = null), + null === prevTransition && (prevTransition = []), + (previousPriority = root.pendingGestures), + null !== previousPriority && + ((previousPriority = previousPriority.running), + null !== previousPriority)) + ) + for ( + prevExecutionContext = 0; + prevExecutionContext < finishedWork.length; + prevExecutionContext++ + ) { + var cleanup = (0, finishedWork[prevExecutionContext])(prevTransition); + void 0 !== cleanup && previousPriority.finished.finally(cleanup); + } ensureRootIsScheduled(root); } } @@ -14651,14 +14753,14 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { isFlushingWork = !0; do { var didPerformSomeWork = !1; - for (var root$198 = firstScheduledRoot; null !== root$198; ) { + for (var root$199 = firstScheduledRoot; null !== root$199; ) { if (!onlyLegacy) if (0 !== syncTransitionLanes) { - var pendingLanes = root$198.pendingLanes; + var pendingLanes = root$199.pendingLanes; if (0 === pendingLanes) var JSCompiler_inline_result = 0; else { - var suspendedLanes = root$198.suspendedLanes, - pingedLanes = root$198.pingedLanes; + var suspendedLanes = root$199.suspendedLanes, + pingedLanes = root$199.pingedLanes; JSCompiler_inline_result = (1 << (31 - clz32(42 | syncTransitionLanes) + 1)) - 1; JSCompiler_inline_result &= @@ -14672,21 +14774,21 @@ function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) { } 0 !== JSCompiler_inline_result && ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$198, JSCompiler_inline_result)); + performSyncWorkOnRoot(root$199, JSCompiler_inline_result)); } else (JSCompiler_inline_result = workInProgressRootRenderLanes), (JSCompiler_inline_result = getNextLanes( - root$198, - root$198 === workInProgressRoot ? JSCompiler_inline_result : 0, - null !== root$198.cancelPendingCommit || - -1 !== root$198.timeoutHandle + root$199, + root$199 === workInProgressRoot ? JSCompiler_inline_result : 0, + null !== root$199.cancelPendingCommit || + -1 !== root$199.timeoutHandle )), (0 === (JSCompiler_inline_result & 3) && 64 !== JSCompiler_inline_result) || - checkIfRootIsPrerendering(root$198, JSCompiler_inline_result) || + checkIfRootIsPrerendering(root$199, JSCompiler_inline_result) || ((didPerformSomeWork = !0), - performSyncWorkOnRoot(root$198, JSCompiler_inline_result)); - root$198 = root$198.next; + performSyncWorkOnRoot(root$199, JSCompiler_inline_result)); + root$199 = root$199.next; } } while (didPerformSomeWork); isFlushingWork = !1; @@ -14995,20 +15097,20 @@ function debounceScrollEnd(targetInst, nativeEvent, nativeEventTarget) { (nativeEventTarget[internalScrollTimer] = targetInst)); } for ( - var i$jscomp$inline_1838 = 0; - i$jscomp$inline_1838 < simpleEventPluginEvents.length; - i$jscomp$inline_1838++ + var i$jscomp$inline_1848 = 0; + i$jscomp$inline_1848 < simpleEventPluginEvents.length; + i$jscomp$inline_1848++ ) { - var eventName$jscomp$inline_1839 = - simpleEventPluginEvents[i$jscomp$inline_1838], - domEventName$jscomp$inline_1840 = - eventName$jscomp$inline_1839.toLowerCase(), - capitalizedEvent$jscomp$inline_1841 = - eventName$jscomp$inline_1839[0].toUpperCase() + - eventName$jscomp$inline_1839.slice(1); + var eventName$jscomp$inline_1849 = + simpleEventPluginEvents[i$jscomp$inline_1848], + domEventName$jscomp$inline_1850 = + eventName$jscomp$inline_1849.toLowerCase(), + capitalizedEvent$jscomp$inline_1851 = + eventName$jscomp$inline_1849[0].toUpperCase() + + eventName$jscomp$inline_1849.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1840, - "on" + capitalizedEvent$jscomp$inline_1841 + domEventName$jscomp$inline_1850, + "on" + capitalizedEvent$jscomp$inline_1851 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -16242,34 +16344,34 @@ function setInitialProperties(domElement, tag, props) { var propKey = null; for (hasSrc in props) if (props.hasOwnProperty(hasSrc)) { - var propValue$212 = props[hasSrc]; - if (null != propValue$212) + var propValue$213 = props[hasSrc]; + if (null != propValue$213) switch (hasSrc) { case "name": - hasSrcSet = propValue$212; + hasSrcSet = propValue$213; break; case "type": - propValue = propValue$212; + propValue = propValue$213; break; case "checked": - checked = propValue$212; + checked = propValue$213; break; case "defaultChecked": - propKey = propValue$212; + propKey = propValue$213; break; case "value": - value = propValue$212; + value = propValue$213; break; case "defaultValue": - defaultValue = propValue$212; + defaultValue = propValue$213; break; case "children": case "dangerouslySetInnerHTML": - if (null != propValue$212) + if (null != propValue$213) throw Error(formatProdErrorMessage(137, tag)); break; default: - setProp(domElement, tag, hasSrc, propValue$212, props, null); + setProp(domElement, tag, hasSrc, propValue$213, props, null); } } a: { @@ -16452,14 +16554,14 @@ function setInitialProperties(domElement, tag, props) { return; default: if (isCustomElement(tag)) { - for (propValue$212 in props) - props.hasOwnProperty(propValue$212) && - ((hasSrc = props[propValue$212]), + for (propValue$213 in props) + props.hasOwnProperty(propValue$213) && + ((hasSrc = props[propValue$213]), void 0 !== hasSrc && setPropOnCustomElement( domElement, tag, - propValue$212, + propValue$213, hasSrc, props, void 0 @@ -16506,14 +16608,14 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp(domElement, tag, propKey, null, nextProps, lastProp); } } - for (var propKey$229 in nextProps) { - var propKey = nextProps[propKey$229]; - lastProp = lastProps[propKey$229]; + for (var propKey$230 in nextProps) { + var propKey = nextProps[propKey$230]; + lastProp = lastProps[propKey$230]; if ( - nextProps.hasOwnProperty(propKey$229) && + nextProps.hasOwnProperty(propKey$230) && (null != propKey || null != lastProp) ) - switch (propKey$229) { + switch (propKey$230) { case "type": propKey !== lastProp && (viewTransitionMutationContext = !0); type = propKey; @@ -16548,7 +16650,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$229, + propKey$230, propKey, nextProps, lastProp @@ -16567,7 +16669,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { ); return; case "select": - propKey = value = defaultValue = propKey$229 = null; + propKey = value = defaultValue = propKey$230 = null; for (type in lastProps) if ( ((lastDefaultValue = lastProps[type]), @@ -16599,7 +16701,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (name) { case "value": type !== lastDefaultValue && (viewTransitionMutationContext = !0); - propKey$229 = type; + propKey$230 = type; break; case "defaultValue": type !== lastDefaultValue && (viewTransitionMutationContext = !0); @@ -16622,15 +16724,15 @@ function updateProperties(domElement, tag, lastProps, nextProps) { tag = defaultValue; lastProps = value; nextProps = propKey; - null != propKey$229 - ? updateOptions(domElement, !!lastProps, propKey$229, !1) + null != propKey$230 + ? updateOptions(domElement, !!lastProps, propKey$230, !1) : !!nextProps !== !!lastProps && (null != tag ? updateOptions(domElement, !!lastProps, tag, !0) : updateOptions(domElement, !!lastProps, lastProps ? [] : "", !1)); return; case "textarea": - propKey = propKey$229 = null; + propKey = propKey$230 = null; for (defaultValue in lastProps) if ( ((name = lastProps[defaultValue]), @@ -16655,7 +16757,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { switch (value) { case "value": name !== type && (viewTransitionMutationContext = !0); - propKey$229 = name; + propKey$230 = name; break; case "defaultValue": name !== type && (viewTransitionMutationContext = !0); @@ -16670,17 +16772,17 @@ function updateProperties(domElement, tag, lastProps, nextProps) { name !== type && setProp(domElement, tag, value, name, nextProps, type); } - updateTextarea(domElement, propKey$229, propKey); + updateTextarea(domElement, propKey$230, propKey); return; case "option": - for (var propKey$245 in lastProps) + for (var propKey$246 in lastProps) if ( - ((propKey$229 = lastProps[propKey$245]), - lastProps.hasOwnProperty(propKey$245) && - null != propKey$229 && - !nextProps.hasOwnProperty(propKey$245)) + ((propKey$230 = lastProps[propKey$246]), + lastProps.hasOwnProperty(propKey$246) && + null != propKey$230 && + !nextProps.hasOwnProperty(propKey$246)) ) - switch (propKey$245) { + switch (propKey$246) { case "selected": domElement.selected = !1; break; @@ -16688,34 +16790,34 @@ function updateProperties(domElement, tag, lastProps, nextProps) { setProp( domElement, tag, - propKey$245, + propKey$246, null, nextProps, - propKey$229 + propKey$230 ); } for (lastDefaultValue in nextProps) if ( - ((propKey$229 = nextProps[lastDefaultValue]), + ((propKey$230 = nextProps[lastDefaultValue]), (propKey = lastProps[lastDefaultValue]), nextProps.hasOwnProperty(lastDefaultValue) && - propKey$229 !== propKey && - (null != propKey$229 || null != propKey)) + propKey$230 !== propKey && + (null != propKey$230 || null != propKey)) ) switch (lastDefaultValue) { case "selected": - propKey$229 !== propKey && (viewTransitionMutationContext = !0); + propKey$230 !== propKey && (viewTransitionMutationContext = !0); domElement.selected = - propKey$229 && - "function" !== typeof propKey$229 && - "symbol" !== typeof propKey$229; + propKey$230 && + "function" !== typeof propKey$230 && + "symbol" !== typeof propKey$230; break; default: setProp( domElement, tag, lastDefaultValue, - propKey$229, + propKey$230, nextProps, propKey ); @@ -16736,24 +16838,24 @@ function updateProperties(domElement, tag, lastProps, nextProps) { case "track": case "wbr": case "menuitem": - for (var propKey$250 in lastProps) - (propKey$229 = lastProps[propKey$250]), - lastProps.hasOwnProperty(propKey$250) && - null != propKey$229 && - !nextProps.hasOwnProperty(propKey$250) && - setProp(domElement, tag, propKey$250, null, nextProps, propKey$229); + for (var propKey$251 in lastProps) + (propKey$230 = lastProps[propKey$251]), + lastProps.hasOwnProperty(propKey$251) && + null != propKey$230 && + !nextProps.hasOwnProperty(propKey$251) && + setProp(domElement, tag, propKey$251, null, nextProps, propKey$230); for (checked in nextProps) if ( - ((propKey$229 = nextProps[checked]), + ((propKey$230 = nextProps[checked]), (propKey = lastProps[checked]), nextProps.hasOwnProperty(checked) && - propKey$229 !== propKey && - (null != propKey$229 || null != propKey)) + propKey$230 !== propKey && + (null != propKey$230 || null != propKey)) ) switch (checked) { case "children": case "dangerouslySetInnerHTML": - if (null != propKey$229) + if (null != propKey$230) throw Error(formatProdErrorMessage(137, tag)); break; default: @@ -16761,7 +16863,7 @@ function updateProperties(domElement, tag, lastProps, nextProps) { domElement, tag, checked, - propKey$229, + propKey$230, nextProps, propKey ); @@ -16769,49 +16871,49 @@ function updateProperties(domElement, tag, lastProps, nextProps) { return; default: if (isCustomElement(tag)) { - for (var propKey$255 in lastProps) - (propKey$229 = lastProps[propKey$255]), - lastProps.hasOwnProperty(propKey$255) && - void 0 !== propKey$229 && - !nextProps.hasOwnProperty(propKey$255) && + for (var propKey$256 in lastProps) + (propKey$230 = lastProps[propKey$256]), + lastProps.hasOwnProperty(propKey$256) && + void 0 !== propKey$230 && + !nextProps.hasOwnProperty(propKey$256) && setPropOnCustomElement( domElement, tag, - propKey$255, + propKey$256, void 0, nextProps, - propKey$229 + propKey$230 ); for (defaultChecked in nextProps) - (propKey$229 = nextProps[defaultChecked]), + (propKey$230 = nextProps[defaultChecked]), (propKey = lastProps[defaultChecked]), !nextProps.hasOwnProperty(defaultChecked) || - propKey$229 === propKey || - (void 0 === propKey$229 && void 0 === propKey) || + propKey$230 === propKey || + (void 0 === propKey$230 && void 0 === propKey) || setPropOnCustomElement( domElement, tag, defaultChecked, - propKey$229, + propKey$230, nextProps, propKey ); return; } } - for (var propKey$260 in lastProps) - (propKey$229 = lastProps[propKey$260]), - lastProps.hasOwnProperty(propKey$260) && - null != propKey$229 && - !nextProps.hasOwnProperty(propKey$260) && - setProp(domElement, tag, propKey$260, null, nextProps, propKey$229); + for (var propKey$261 in lastProps) + (propKey$230 = lastProps[propKey$261]), + lastProps.hasOwnProperty(propKey$261) && + null != propKey$230 && + !nextProps.hasOwnProperty(propKey$261) && + setProp(domElement, tag, propKey$261, null, nextProps, propKey$230); for (lastProp in nextProps) - (propKey$229 = nextProps[lastProp]), + (propKey$230 = nextProps[lastProp]), (propKey = lastProps[lastProp]), !nextProps.hasOwnProperty(lastProp) || - propKey$229 === propKey || - (null == propKey$229 && null == propKey) || - setProp(domElement, tag, lastProp, propKey$229, nextProps, propKey); + propKey$230 === propKey || + (null == propKey$230 && null == propKey) || + setProp(domElement, tag, lastProp, propKey$230, nextProps, propKey); } function isLikelyStaticResource(initiatorType) { switch (initiatorType) { @@ -17399,6 +17501,7 @@ function animateGesture( targetElement, pseudoElement, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -17453,7 +17556,7 @@ function animateGesture( (height = keyframes[width]), delete height.width, delete height.height; width = rangeStart > rangeEnd; timeline instanceof AnimationTimeline - ? targetElement.animate(keyframes, { + ? ((customTimelineCleanup = targetElement.animate(keyframes, { pseudoElement: pseudoElement, timeline: timeline, easing: "linear", @@ -17461,7 +17564,8 @@ function animateGesture( direction: width ? "normal" : "reverse", rangeStart: (width ? rangeEnd : rangeStart) + "%", rangeEnd: (width ? rangeStart : rangeEnd) + "%" - }) + })), + viewTransitionAnimations.push(customTimelineCleanup)) : ((keyframes = targetElement.animate(keyframes, { pseudoElement: pseudoElement, easing: "linear", @@ -17470,8 +17574,9 @@ function animateGesture( delay: width ? rangeEnd : rangeStart, duration: width ? rangeStart - rangeEnd : rangeEnd - rangeStart })), - (timeline = timeline.animate(keyframes)) && - customTimelineCleanup.push(timeline)); + viewTransitionAnimations.push(keyframes), + (viewTransitionAnimations = timeline.animate(keyframes)) && + customTimelineCleanup.push(viewTransitionAnimations)); } function startGestureTransition( suspendedState, @@ -17510,8 +17615,8 @@ function startGestureTransition( pseudoElement = effect.pseudoElement; null != pseudoElement && pseudoElement.startsWith("::view-transition") && - (viewTransitionAnimations.push(animations[i]), - (effect = effect.getTiming()), + effect.target === documentElement && + ((effect = effect.getTiming()), (effect = effect.delay + ("number" === typeof effect.duration ? effect.duration : 0)), @@ -17546,25 +17651,26 @@ function startGestureTransition( ))) : (isExitGroupAnim = !0); } - var timing$277 = pseudoElement.getTiming(); + var timing$279 = pseudoElement.getTiming(); anim = rangeEnd - - (("number" === typeof timing$277.duration - ? timing$277.duration + (("number" === typeof timing$279.duration + ? timing$279.duration : 0) + - timing$277.delay) * + timing$279.delay) * longestDuration; - groupName = rangeEnd - timing$277.delay * longestDuration; + groupName = rangeEnd - timing$279.delay * longestDuration; if ( - "reverse" === timing$277.direction || - "alternate-reverse" === timing$277.direction + "reverse" === timing$279.direction || + "alternate-reverse" === timing$279.direction ) - (timing$277 = anim), (anim = groupName), (groupName = timing$277); + (timing$279 = anim), (anim = groupName), (groupName = timing$279); animateGesture( pseudoElement.getKeyframes(), pseudoElement.target, effect, timeline, + viewTransitionAnimations, customTimelineCleanup, anim, groupName, @@ -17581,6 +17687,7 @@ function startGestureTransition( pseudoElement.target, "::view-transition-group" + effect, timeline, + viewTransitionAnimations, customTimelineCleanup, rangeStart, rangeEnd, @@ -17589,12 +17696,12 @@ function startGestureTransition( ))); } } - documentElement - .animate([{}, {}], { - pseudoElement: "::view-transition", - duration: 1 - }) - .pause(); + documentElement = documentElement.animate([{}, {}], { + pseudoElement: "::view-transition", + duration: 1 + }); + documentElement.pause(); + viewTransitionAnimations.push(documentElement); animateCallback(); }, readyForAnimations = @@ -18738,26 +18845,26 @@ function getResource(type, currentProps, pendingProps, currentResource) { "string" === typeof pendingProps.precedence ) { type = getStyleKey(pendingProps.href); - var styles$287 = getResourcesFromRoot( + var styles$289 = getResourcesFromRoot( JSCompiler_inline_result ).hoistableStyles, - resource$288 = styles$287.get(type); - resource$288 || + resource$290 = styles$289.get(type); + resource$290 || ((JSCompiler_inline_result = JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result), - (resource$288 = { + (resource$290 = { type: "stylesheet", instance: null, count: 0, state: { loading: 0, preload: null } }), - styles$287.set(type, resource$288), - (styles$287 = JSCompiler_inline_result.querySelector( + styles$289.set(type, resource$290), + (styles$289 = JSCompiler_inline_result.querySelector( getStylesheetSelectorFromKey(type) )) && - !styles$287._p && - ((resource$288.instance = styles$287), - (resource$288.state.loading = 5)), + !styles$289._p && + ((resource$290.instance = styles$289), + (resource$290.state.loading = 5)), preloadPropsMap.has(type) || ((pendingProps = { rel: "preload", @@ -18770,16 +18877,16 @@ function getResource(type, currentProps, pendingProps, currentResource) { referrerPolicy: pendingProps.referrerPolicy }), preloadPropsMap.set(type, pendingProps), - styles$287 || + styles$289 || preloadStylesheet( JSCompiler_inline_result, type, pendingProps, - resource$288.state + resource$290.state ))); if (currentProps && null === currentResource) throw Error(formatProdErrorMessage(528, "")); - return resource$288; + return resource$290; } if (currentProps && null !== currentResource) throw Error(formatProdErrorMessage(529, "")); @@ -18876,37 +18983,37 @@ function acquireResource(hoistableRoot, resource, props) { return (resource.instance = instance); case "stylesheet": styleProps = getStyleKey(props.href); - var instance$293 = hoistableRoot.querySelector( + var instance$295 = hoistableRoot.querySelector( getStylesheetSelectorFromKey(styleProps) ); - if (instance$293) + if (instance$295) return ( (resource.state.loading |= 4), - (resource.instance = instance$293), - markNodeAsHoistable(instance$293), - instance$293 + (resource.instance = instance$295), + markNodeAsHoistable(instance$295), + instance$295 ); instance = stylesheetPropsFromRawProps(props); (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps); - instance$293 = ( + instance$295 = ( hoistableRoot.ownerDocument || hoistableRoot ).createElement("link"); - markNodeAsHoistable(instance$293); - var linkInstance = instance$293; + markNodeAsHoistable(instance$295); + var linkInstance = instance$295; linkInstance._p = new Promise(function (resolve, reject) { linkInstance.onload = resolve; linkInstance.onerror = reject; }); - setInitialProperties(instance$293, "link", instance); + setInitialProperties(instance$295, "link", instance); resource.state.loading |= 4; - insertStylesheet(instance$293, props.precedence, hoistableRoot); - return (resource.instance = instance$293); + insertStylesheet(instance$295, props.precedence, hoistableRoot); + return (resource.instance = instance$295); case "script": - instance$293 = getScriptKey(props.src); + instance$295 = getScriptKey(props.src); if ( (styleProps = hoistableRoot.querySelector( - getScriptSelectorFromKey(instance$293) + getScriptSelectorFromKey(instance$295) )) ) return ( @@ -18915,7 +19022,7 @@ function acquireResource(hoistableRoot, resource, props) { styleProps ); instance = props; - if ((styleProps = preloadPropsMap.get(instance$293))) + if ((styleProps = preloadPropsMap.get(instance$295))) (instance = assign({}, props)), adoptPreloadPropsForScript(instance, styleProps); hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot; @@ -20038,16 +20145,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2256 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2266 = React.version; if ( - "19.3.0-experimental-bef88f7c-20260116" !== - isomorphicReactPackageVersion$jscomp$inline_2256 + "19.3.0-experimental-d2908752-20260119" !== + isomorphicReactPackageVersion$jscomp$inline_2266 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2256, - "19.3.0-experimental-bef88f7c-20260116" + isomorphicReactPackageVersion$jscomp$inline_2266, + "19.3.0-experimental-d2908752-20260119" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -20067,24 +20174,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2964 = { +var internals$jscomp$inline_2974 = { bundleType: 0, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116" + reconcilerVersion: "19.3.0-experimental-d2908752-20260119" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2965 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2975 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2965.isDisabled && - hook$jscomp$inline_2965.supportsFiber + !hook$jscomp$inline_2975.isDisabled && + hook$jscomp$inline_2975.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2965.inject( - internals$jscomp$inline_2964 + (rendererID = hook$jscomp$inline_2975.inject( + internals$jscomp$inline_2974 )), - (injectedHook = hook$jscomp$inline_2965); + (injectedHook = hook$jscomp$inline_2975); } catch (err) {} } exports.createComponentSelector = function (component) { @@ -20330,4 +20437,4 @@ exports.observeVisibleRects = function ( } }; }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 d87945124964a..18873a3ed8c52 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js @@ -422,7 +422,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; "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 7c942948f2c5c..b1e948d032ca9 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js @@ -213,4 +213,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 b0caa467c92d5..e4ba7e033838a 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js @@ -336,5 +336,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.3.0-experimental-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 e6090e805e6b2..2913ae6b2ae1a 100644 --- a/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js +++ b/packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js @@ -149,4 +149,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.3.0-experimental-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; diff --git a/packages/next/src/compiled/react-dom-experimental/package.json b/packages/next/src/compiled/react-dom-experimental/package.json index 831f1b97fff37..05ce326dafc78 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-bef88f7c-20260116" + "scheduler": "0.0.0-experimental-d2908752-20260119" }, "peerDependencies": { - "react": "0.0.0-experimental-bef88f7c-20260116" + "react": "0.0.0-experimental-d2908752-20260119" }, "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 c3647544ac47d..a5470d05695e8 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 @@ -11069,24 +11069,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2961; - var JSCompiler_object_inline_stack_2962 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2965; + var JSCompiler_object_inline_stack_2966 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2960 = !1; + var JSCompiler_object_inline_message_2964 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2961 = didSuspend) || - (JSCompiler_object_inline_digest_2961 = + (JSCompiler_object_inline_digest_2965 = didSuspend) || + (JSCompiler_object_inline_digest_2965 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2961 && - ((JSCompiler_object_inline_message_2960 = !0), + JSCompiler_object_inline_digest_2965 && + ((JSCompiler_object_inline_message_2964 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2961 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2965 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2960 + JSCompiler_object_inline_message_2964 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11099,18 +11099,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_2961 = { + ((JSCompiler_object_inline_digest_2965 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_2961), - (JSCompiler_object_inline_digest_2961 = + JSCompiler_object_inline_digest_2965), + (JSCompiler_object_inline_digest_2965 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_2961.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_2961), + (JSCompiler_object_inline_digest_2965.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_2965), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11124,39 +11124,39 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_2962.children; - JSCompiler_object_inline_stack_2962 = - JSCompiler_object_inline_stack_2962.fallback; - if (JSCompiler_object_inline_message_2960) { + var nextPrimaryChildren = JSCompiler_object_inline_stack_2966.children; + JSCompiler_object_inline_stack_2966 = + JSCompiler_object_inline_stack_2966.fallback; + if (JSCompiler_object_inline_message_2964) { reuseSuspenseHandlerOnStack(workInProgress); var mode = workInProgress.mode; nextPrimaryChildren = mountWorkInProgressOffscreenFiber( { mode: "hidden", children: nextPrimaryChildren }, mode ); - JSCompiler_object_inline_stack_2962 = createFiberFromFragment( - JSCompiler_object_inline_stack_2962, + JSCompiler_object_inline_stack_2966 = createFiberFromFragment( + JSCompiler_object_inline_stack_2966, mode, renderLanes, null ); nextPrimaryChildren.return = workInProgress; - JSCompiler_object_inline_stack_2962.return = workInProgress; - nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2962; + JSCompiler_object_inline_stack_2966.return = workInProgress; + nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2966; workInProgress.child = nextPrimaryChildren; - JSCompiler_object_inline_stack_2962 = workInProgress.child; - JSCompiler_object_inline_stack_2962.memoizedState = + JSCompiler_object_inline_stack_2966 = workInProgress.child; + JSCompiler_object_inline_stack_2966.memoizedState = mountSuspenseOffscreenState(renderLanes); - JSCompiler_object_inline_stack_2962.childLanes = + JSCompiler_object_inline_stack_2966.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2961, + JSCompiler_object_inline_digest_2965, renderLanes ); workInProgress.memoizedState = SUSPENDED_MARKER; return bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ); } pushPrimaryTreeSuspenseHandler(workInProgress); @@ -11167,8 +11167,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_2963 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_2963) { + var JSCompiler_object_inline_componentStack_2967 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_2967) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11185,13 +11185,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_2962.fallback), + JSCompiler_object_inline_stack_2966.fallback), (mode = workInProgress.mode), - (JSCompiler_object_inline_stack_2962 = + (JSCompiler_object_inline_stack_2966 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2962.children + children: JSCompiler_object_inline_stack_2966.children }, mode )), @@ -11202,30 +11202,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_2962.return = workInProgress), + (JSCompiler_object_inline_stack_2966.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2962.sibling = + (JSCompiler_object_inline_stack_2966.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2962), + (workInProgress.child = JSCompiler_object_inline_stack_2966), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2962 = workInProgress.child), - (JSCompiler_object_inline_stack_2962.memoizedState = + (JSCompiler_object_inline_stack_2966 = workInProgress.child), + (JSCompiler_object_inline_stack_2966.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2962.childLanes = + (JSCompiler_object_inline_stack_2966.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2961, + JSCompiler_object_inline_digest_2965, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11233,45 +11233,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_2963 + JSCompiler_object_inline_componentStack_2967 )) ) { - JSCompiler_object_inline_digest_2961 = - JSCompiler_object_inline_componentStack_2963.nextSibling && - JSCompiler_object_inline_componentStack_2963.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2961) { - nextPrimaryChildren = JSCompiler_object_inline_digest_2961.dgst; - var message = JSCompiler_object_inline_digest_2961.msg; - mode = JSCompiler_object_inline_digest_2961.stck; - var componentStack = JSCompiler_object_inline_digest_2961.cstck; + JSCompiler_object_inline_digest_2965 = + JSCompiler_object_inline_componentStack_2967.nextSibling && + JSCompiler_object_inline_componentStack_2967.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2965) { + nextPrimaryChildren = JSCompiler_object_inline_digest_2965.dgst; + var message = JSCompiler_object_inline_digest_2965.msg; + mode = JSCompiler_object_inline_digest_2965.stck; + var componentStack = JSCompiler_object_inline_digest_2965.cstck; } - JSCompiler_object_inline_message_2960 = message; - JSCompiler_object_inline_digest_2961 = nextPrimaryChildren; - JSCompiler_object_inline_stack_2962 = mode; - JSCompiler_object_inline_componentStack_2963 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_2960; - mode = JSCompiler_object_inline_componentStack_2963; + JSCompiler_object_inline_message_2964 = message; + JSCompiler_object_inline_digest_2965 = nextPrimaryChildren; + JSCompiler_object_inline_stack_2966 = mode; + JSCompiler_object_inline_componentStack_2967 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_2964; + mode = JSCompiler_object_inline_componentStack_2967; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_2962 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2961; - JSCompiler_object_inline_digest_2961 = + JSCompiler_object_inline_stack_2966 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2965; + JSCompiler_object_inline_digest_2965 = void 0 === mode ? null : mode; - JSCompiler_object_inline_stack_2962 = { + JSCompiler_object_inline_stack_2966 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_2961 + stack: JSCompiler_object_inline_digest_2965 }; - "string" === typeof JSCompiler_object_inline_digest_2961 && + "string" === typeof JSCompiler_object_inline_digest_2965 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ); - queueHydrationError(JSCompiler_object_inline_stack_2962); + queueHydrationError(JSCompiler_object_inline_stack_2966); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11285,35 +11285,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2961 = + (JSCompiler_object_inline_digest_2965 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2961) + didReceiveUpdate || JSCompiler_object_inline_digest_2965) ) { - JSCompiler_object_inline_digest_2961 = workInProgressRoot; + JSCompiler_object_inline_digest_2965 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_2961 && - ((JSCompiler_object_inline_stack_2962 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_2961, + null !== JSCompiler_object_inline_digest_2965 && + ((JSCompiler_object_inline_stack_2966 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_2965, renderLanes )), - 0 !== JSCompiler_object_inline_stack_2962 && - JSCompiler_object_inline_stack_2962 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_2966 && + JSCompiler_object_inline_stack_2966 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2962), + ((prevState.retryLane = JSCompiler_object_inline_stack_2966), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2961, + JSCompiler_object_inline_digest_2965, current, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2963 + JSCompiler_object_inline_componentStack_2967 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11322,14 +11322,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2963 + JSCompiler_object_inline_componentStack_2967 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_2963.nextSibling + JSCompiler_object_inline_componentStack_2967.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11341,32 +11341,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2962.children + JSCompiler_object_inline_stack_2966.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_2960) + if (JSCompiler_object_inline_message_2964) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_2962.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_2966.fallback), (mode = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_2963 = + (JSCompiler_object_inline_componentStack_2967 = componentStack.sibling), - (JSCompiler_object_inline_stack_2962 = createWorkInProgress( + (JSCompiler_object_inline_stack_2966 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_2962.children + children: JSCompiler_object_inline_stack_2966.children } )), - (JSCompiler_object_inline_stack_2962.subtreeFlags = + (JSCompiler_object_inline_stack_2966.subtreeFlags = componentStack.subtreeFlags & 133169152), - null !== JSCompiler_object_inline_componentStack_2963 + null !== JSCompiler_object_inline_componentStack_2967 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_2963, + JSCompiler_object_inline_componentStack_2967, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11377,11 +11377,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2962.return = workInProgress), - (JSCompiler_object_inline_stack_2962.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2962), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2962), - (JSCompiler_object_inline_stack_2962 = workInProgress.child), + (JSCompiler_object_inline_stack_2966.return = workInProgress), + (JSCompiler_object_inline_stack_2966.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_2966), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2966), + (JSCompiler_object_inline_stack_2966 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11397,18 +11397,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: mode })), - (JSCompiler_object_inline_stack_2962.memoizedState = + (JSCompiler_object_inline_stack_2966.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_2962.childLanes = + (JSCompiler_object_inline_stack_2966.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2961, + JSCompiler_object_inline_digest_2965, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_2962 + JSCompiler_object_inline_stack_2966 ) ); null !== prevState && @@ -11420,16 +11420,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2962.children + children: JSCompiler_object_inline_stack_2966.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2961 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2961 + ((JSCompiler_object_inline_digest_2965 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2965 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2961.push(current)); + : JSCompiler_object_inline_digest_2965.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -12571,6 +12571,13 @@ ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (returnFiber = workInProgress.pendingProps), null != returnFiber.name && "auto" !== returnFiber.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -19652,32 +19659,31 @@ (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT); } pendingEffectsStatus = NO_PENDING_EFFECTS; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; + endTime = pendingEffectsRoot; var finishedWork = pendingFinishedWork; - endTime = pendingEffectsLanes; - var recoverableErrors = pendingRecoverableErrors; - abortedViewTransition = - (endTime & 335544064) === endTime ? 10262 : 10256; - (abortedViewTransition = + abortedViewTransition = pendingEffectsLanes; + var recoverableErrors = pendingRecoverableErrors, + passiveSubtreeMask = + (abortedViewTransition & 335544064) === abortedViewTransition + ? 10262 + : 10256; + (passiveSubtreeMask = 0 !== finishedWork.actualDuration || - 0 !== (finishedWork.subtreeFlags & abortedViewTransition) || - 0 !== (finishedWork.flags & abortedViewTransition)) + 0 !== (finishedWork.subtreeFlags & passiveSubtreeMask) || + 0 !== (finishedWork.flags & passiveSubtreeMask)) ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE) : ((pendingEffectsStatus = NO_PENDING_EFFECTS), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - ), + releaseRootPooledCache(endTime, endTime.pendingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = endTime.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - abortedViewTransition || - commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime); - remainingLanes = lanesToEventPriority(endTime); + passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(endTime); + remainingLanes = lanesToEventPriority(abortedViewTransition); finishedWork = finishedWork.stateNode; if ( injectedHook && @@ -19715,8 +19721,7 @@ err )); } - isDevToolsPresent && - startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && endTime.memoizedUpdaters.clear(); onCommitRoot(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; @@ -19724,8 +19729,7 @@ ReactDOMSharedInternals.p = DiscreteEventPriority; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = endTime.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -19748,26 +19752,35 @@ onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - errorInfo = 0; + errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++ ) - (0, onRecoverableError[errorInfo])(recoverableError); + (recoverableErrors = (0, onRecoverableError[errorInfo])( + recoverableError + )), + void 0 !== recoverableErrors && + startViewTransitionStartTime.finished.finally( + recoverableErrors + ); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; - 0 !== (endTime & 261930) && 0 !== (remainingLanes & 42) + ensureRootIsScheduled(endTime); + remainingLanes = endTime.pendingLanes; + 0 !== (abortedViewTransition & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + endTime === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = endTime))) : (nestedUpdateCount = 0); - abortedViewTransition || finalizeRender(endTime, commitEndTime); + passiveSubtreeMask || + finalizeRender(abortedViewTransition, commitEndTime); flushSyncWorkAcrossRoots_impl(0, !1); } } @@ -28289,10 +28302,10 @@ useActionState: throwInvalidHookError, useOptimistic: throwInvalidHookError, useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError - }; - ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; - var HooksDispatcherOnMountInDEV = null, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, @@ -30415,11 +30428,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -30456,10 +30469,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116" + reconcilerVersion: "19.3.0-canary-d2908752-20260119" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -30597,7 +30610,7 @@ listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; "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 94ff12c35f383..03d9c337181e3 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 @@ -5676,32 +5676,32 @@ function entangleTransitionUpdate(root, queue, lane) { } } var ContextOnlyDispatcher = { - readContext: readContext, - use: use, - useCallback: throwInvalidHookError, - useContext: throwInvalidHookError, - useEffect: throwInvalidHookError, - useImperativeHandle: throwInvalidHookError, - useLayoutEffect: throwInvalidHookError, - useInsertionEffect: throwInvalidHookError, - useMemo: throwInvalidHookError, - useReducer: throwInvalidHookError, - useRef: throwInvalidHookError, - useState: throwInvalidHookError, - useDebugValue: throwInvalidHookError, - useDeferredValue: throwInvalidHookError, - useTransition: throwInvalidHookError, - useSyncExternalStore: throwInvalidHookError, - useId: throwInvalidHookError, - useHostTransitionStatus: throwInvalidHookError, - useFormState: throwInvalidHookError, - useActionState: throwInvalidHookError, - useOptimistic: throwInvalidHookError, - useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError -}; -ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; -var HooksDispatcherOnMount = { + readContext: readContext, + use: use, + useCallback: throwInvalidHookError, + useContext: throwInvalidHookError, + useEffect: throwInvalidHookError, + useImperativeHandle: throwInvalidHookError, + useLayoutEffect: throwInvalidHookError, + useInsertionEffect: throwInvalidHookError, + useMemo: throwInvalidHookError, + useReducer: throwInvalidHookError, + useRef: throwInvalidHookError, + useState: throwInvalidHookError, + useDebugValue: throwInvalidHookError, + useDeferredValue: throwInvalidHookError, + useTransition: throwInvalidHookError, + useSyncExternalStore: throwInvalidHookError, + useId: throwInvalidHookError, + useHostTransitionStatus: throwInvalidHookError, + useFormState: throwInvalidHookError, + useActionState: throwInvalidHookError, + useOptimistic: throwInvalidHookError, + useMemoCache: throwInvalidHookError, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMount = { readContext: readContext, use: use, useCallback: function (callback, deps) { @@ -5948,62 +5948,62 @@ var HooksDispatcherOnMount = { return updateOptimisticImpl(hook, currentHook, passthrough, reducer); }, useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh - }; -HooksDispatcherOnUpdate.useEffectEvent = updateEvent; -var HooksDispatcherOnRerender = { - readContext: readContext, - use: use, - useCallback: updateCallback, - useContext: readContext, - useEffect: updateEffect, - useImperativeHandle: updateImperativeHandle, - useInsertionEffect: updateInsertionEffect, - useLayoutEffect: updateLayoutEffect, - useMemo: updateMemo, - useReducer: rerenderReducer, - useRef: updateRef, - useState: function () { - return rerenderReducer(basicStateReducer); - }, - useDebugValue: mountDebugValue, - useDeferredValue: function (value, initialValue) { - var hook = updateWorkInProgressHook(); - return null === currentHook - ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl( - hook, - currentHook.memoizedState, - value, - initialValue - ); + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent }, - useTransition: function () { - var booleanOrThenable = rerenderReducer(basicStateReducer)[0], - start = updateWorkInProgressHook().memoizedState; - return [ - "boolean" === typeof booleanOrThenable - ? booleanOrThenable - : useThenable(booleanOrThenable), - start - ]; - }, - useSyncExternalStore: updateSyncExternalStore, - useId: updateId, - useHostTransitionStatus: useHostTransitionStatus, - useFormState: rerenderActionState, - useActionState: rerenderActionState, - useOptimistic: function (passthrough, reducer) { - var hook = updateWorkInProgressHook(); - if (null !== currentHook) - return updateOptimisticImpl(hook, currentHook, passthrough, reducer); - hook.baseState = passthrough; - return [passthrough, hook.queue.dispatch]; - }, - useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh -}; -HooksDispatcherOnRerender.useEffectEvent = updateEvent; + HooksDispatcherOnRerender = { + readContext: readContext, + use: use, + useCallback: updateCallback, + useContext: readContext, + useEffect: updateEffect, + useImperativeHandle: updateImperativeHandle, + useInsertionEffect: updateInsertionEffect, + useLayoutEffect: updateLayoutEffect, + useMemo: updateMemo, + useReducer: rerenderReducer, + useRef: updateRef, + useState: function () { + return rerenderReducer(basicStateReducer); + }, + useDebugValue: mountDebugValue, + useDeferredValue: function (value, initialValue) { + var hook = updateWorkInProgressHook(); + return null === currentHook + ? mountDeferredValueImpl(hook, value, initialValue) + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); + }, + useTransition: function () { + var booleanOrThenable = rerenderReducer(basicStateReducer)[0], + start = updateWorkInProgressHook().memoizedState; + return [ + "boolean" === typeof booleanOrThenable + ? booleanOrThenable + : useThenable(booleanOrThenable), + start + ]; + }, + useSyncExternalStore: updateSyncExternalStore, + useId: updateId, + useHostTransitionStatus: useHostTransitionStatus, + useFormState: rerenderActionState, + useActionState: rerenderActionState, + useOptimistic: function (passthrough, reducer) { + var hook = updateWorkInProgressHook(); + if (null !== currentHook) + return updateOptimisticImpl(hook, currentHook, passthrough, reducer); + hook.baseState = passthrough; + return [passthrough, hook.queue.dispatch]; + }, + useMemoCache: useMemoCache, + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent + }; function applyDerivedStateFromProps( workInProgress, ctor, @@ -8114,6 +8114,13 @@ function beginWork(current, workInProgress, renderLanes) { ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (props = workInProgress.pendingProps), null != props.name && "auto" !== props.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -12911,6 +12918,7 @@ function flushLayoutEffects() { function flushSpawnedWork() { if (4 === pendingEffectsStatus || 3 === pendingEffectsStatus) { pendingEffectsStatus = 0; + var committedViewTransition = pendingViewTransition; pendingViewTransition = null; requestPaint(); var root = pendingEffectsRoot, @@ -12961,15 +12969,22 @@ function flushSpawnedWork() { recoverableErrors = pendingViewTransitionEvents; onRecoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== recoverableErrors) + if ( + null !== recoverableErrors && + ((pendingViewTransitionEvents = null), + null === onRecoverableError && (onRecoverableError = []), + null !== committedViewTransition) + ) for ( - pendingViewTransitionEvents = null, - null === onRecoverableError && (onRecoverableError = []), - recoverableError = 0; + recoverableError = 0; recoverableError < recoverableErrors.length; recoverableError++ ) - (0, recoverableErrors[recoverableError])(onRecoverableError); + (finishedWork = (0, recoverableErrors[recoverableError])( + onRecoverableError + )), + void 0 !== finishedWork && + committedViewTransition.finished.finally(finishedWork); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); ensureRootIsScheduled(root); passiveSubtreeMask = root.pendingLanes; @@ -13445,20 +13460,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1691 = 0; - i$jscomp$inline_1691 < simpleEventPluginEvents.length; - i$jscomp$inline_1691++ + var i$jscomp$inline_1695 = 0; + i$jscomp$inline_1695 < simpleEventPluginEvents.length; + i$jscomp$inline_1695++ ) { - var eventName$jscomp$inline_1692 = - simpleEventPluginEvents[i$jscomp$inline_1691], - domEventName$jscomp$inline_1693 = - eventName$jscomp$inline_1692.toLowerCase(), - capitalizedEvent$jscomp$inline_1694 = - eventName$jscomp$inline_1692[0].toUpperCase() + - eventName$jscomp$inline_1692.slice(1); + var eventName$jscomp$inline_1696 = + simpleEventPluginEvents[i$jscomp$inline_1695], + domEventName$jscomp$inline_1697 = + eventName$jscomp$inline_1696.toLowerCase(), + capitalizedEvent$jscomp$inline_1698 = + eventName$jscomp$inline_1696[0].toUpperCase() + + eventName$jscomp$inline_1696.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1693, - "on" + capitalizedEvent$jscomp$inline_1694 + domEventName$jscomp$inline_1697, + "on" + capitalizedEvent$jscomp$inline_1698 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -18017,16 +18032,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2040 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2044 = React.version; if ( - "19.3.0-canary-bef88f7c-20260116" !== - isomorphicReactPackageVersion$jscomp$inline_2040 + "19.3.0-canary-d2908752-20260119" !== + isomorphicReactPackageVersion$jscomp$inline_2044 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2040, - "19.3.0-canary-bef88f7c-20260116" + isomorphicReactPackageVersion$jscomp$inline_2044, + "19.3.0-canary-d2908752-20260119" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -18046,24 +18061,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2630 = { +var internals$jscomp$inline_2634 = { bundleType: 0, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116" + reconcilerVersion: "19.3.0-canary-d2908752-20260119" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2631 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2635 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2631.isDisabled && - hook$jscomp$inline_2631.supportsFiber + !hook$jscomp$inline_2635.isDisabled && + hook$jscomp$inline_2635.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2631.inject( - internals$jscomp$inline_2630 + (rendererID = hook$jscomp$inline_2635.inject( + internals$jscomp$inline_2634 )), - (injectedHook = hook$jscomp$inline_2631); + (injectedHook = hook$jscomp$inline_2635); } catch (err) {} } exports.createRoot = function (container, options) { @@ -18149,4 +18164,4 @@ exports.hydrateRoot = function (container, initialChildren, options) { listenToAllSupportedEvents(container); return new ReactDOMHydrationRoot(initialChildren); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 29991fb71db0c..62d22c48fe9e8 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 @@ -11077,24 +11077,24 @@ return current; } function updateSuspenseComponent(current, workInProgress, renderLanes) { - var JSCompiler_object_inline_digest_2966; - var JSCompiler_object_inline_stack_2967 = workInProgress.pendingProps; + var JSCompiler_object_inline_digest_2970; + var JSCompiler_object_inline_stack_2971 = workInProgress.pendingProps; shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128); - var JSCompiler_object_inline_message_2965 = !1; + var JSCompiler_object_inline_message_2969 = !1; var didSuspend = 0 !== (workInProgress.flags & 128); - (JSCompiler_object_inline_digest_2966 = didSuspend) || - (JSCompiler_object_inline_digest_2966 = + (JSCompiler_object_inline_digest_2970 = didSuspend) || + (JSCompiler_object_inline_digest_2970 = null !== current && null === current.memoizedState ? !1 : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback)); - JSCompiler_object_inline_digest_2966 && - ((JSCompiler_object_inline_message_2965 = !0), + JSCompiler_object_inline_digest_2970 && + ((JSCompiler_object_inline_message_2969 = !0), (workInProgress.flags &= -129)); - JSCompiler_object_inline_digest_2966 = 0 !== (workInProgress.flags & 32); + JSCompiler_object_inline_digest_2970 = 0 !== (workInProgress.flags & 32); workInProgress.flags &= -33; if (null === current) { if (isHydrating) { - JSCompiler_object_inline_message_2965 + JSCompiler_object_inline_message_2969 ? pushPrimaryTreeSuspenseHandler(workInProgress) : reuseSuspenseHandlerOnStack(workInProgress); (current = nextHydratableInstance) @@ -11107,18 +11107,18 @@ ? renderLanes : null), null !== renderLanes && - ((JSCompiler_object_inline_digest_2966 = { + ((JSCompiler_object_inline_digest_2970 = { dehydrated: renderLanes, treeContext: getSuspendedTreeContext(), retryLane: 536870912, hydrationErrors: null }), (workInProgress.memoizedState = - JSCompiler_object_inline_digest_2966), - (JSCompiler_object_inline_digest_2966 = + JSCompiler_object_inline_digest_2970), + (JSCompiler_object_inline_digest_2970 = createFiberFromDehydratedFragment(renderLanes)), - (JSCompiler_object_inline_digest_2966.return = workInProgress), - (workInProgress.child = JSCompiler_object_inline_digest_2966), + (JSCompiler_object_inline_digest_2970.return = workInProgress), + (workInProgress.child = JSCompiler_object_inline_digest_2970), (hydrationParentFiber = workInProgress), (nextHydratableInstance = null))) : (renderLanes = null); @@ -11132,39 +11132,39 @@ : (workInProgress.lanes = 536870912); return null; } - var nextPrimaryChildren = JSCompiler_object_inline_stack_2967.children; - JSCompiler_object_inline_stack_2967 = - JSCompiler_object_inline_stack_2967.fallback; - if (JSCompiler_object_inline_message_2965) { + var nextPrimaryChildren = JSCompiler_object_inline_stack_2971.children; + JSCompiler_object_inline_stack_2971 = + JSCompiler_object_inline_stack_2971.fallback; + if (JSCompiler_object_inline_message_2969) { reuseSuspenseHandlerOnStack(workInProgress); var mode = workInProgress.mode; nextPrimaryChildren = mountWorkInProgressOffscreenFiber( { mode: "hidden", children: nextPrimaryChildren }, mode ); - JSCompiler_object_inline_stack_2967 = createFiberFromFragment( - JSCompiler_object_inline_stack_2967, + JSCompiler_object_inline_stack_2971 = createFiberFromFragment( + JSCompiler_object_inline_stack_2971, mode, renderLanes, null ); nextPrimaryChildren.return = workInProgress; - JSCompiler_object_inline_stack_2967.return = workInProgress; - nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2967; + JSCompiler_object_inline_stack_2971.return = workInProgress; + nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2971; workInProgress.child = nextPrimaryChildren; - JSCompiler_object_inline_stack_2967 = workInProgress.child; - JSCompiler_object_inline_stack_2967.memoizedState = + JSCompiler_object_inline_stack_2971 = workInProgress.child; + JSCompiler_object_inline_stack_2971.memoizedState = mountSuspenseOffscreenState(renderLanes); - JSCompiler_object_inline_stack_2967.childLanes = + JSCompiler_object_inline_stack_2971.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2966, + JSCompiler_object_inline_digest_2970, renderLanes ); workInProgress.memoizedState = SUSPENDED_MARKER; return bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ); } pushPrimaryTreeSuspenseHandler(workInProgress); @@ -11175,8 +11175,8 @@ } var prevState = current.memoizedState; if (null !== prevState) { - var JSCompiler_object_inline_componentStack_2968 = prevState.dehydrated; - if (null !== JSCompiler_object_inline_componentStack_2968) { + var JSCompiler_object_inline_componentStack_2972 = prevState.dehydrated; + if (null !== JSCompiler_object_inline_componentStack_2972) { if (didSuspend) workInProgress.flags & 256 ? (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11193,13 +11193,13 @@ (workInProgress = null)) : (reuseSuspenseHandlerOnStack(workInProgress), (nextPrimaryChildren = - JSCompiler_object_inline_stack_2967.fallback), + JSCompiler_object_inline_stack_2971.fallback), (mode = workInProgress.mode), - (JSCompiler_object_inline_stack_2967 = + (JSCompiler_object_inline_stack_2971 = mountWorkInProgressOffscreenFiber( { mode: "visible", - children: JSCompiler_object_inline_stack_2967.children + children: JSCompiler_object_inline_stack_2971.children }, mode )), @@ -11210,30 +11210,30 @@ null )), (nextPrimaryChildren.flags |= 2), - (JSCompiler_object_inline_stack_2967.return = workInProgress), + (JSCompiler_object_inline_stack_2971.return = workInProgress), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2967.sibling = + (JSCompiler_object_inline_stack_2971.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2967), + (workInProgress.child = JSCompiler_object_inline_stack_2971), reconcileChildFibers( workInProgress, current.child, null, renderLanes ), - (JSCompiler_object_inline_stack_2967 = workInProgress.child), - (JSCompiler_object_inline_stack_2967.memoizedState = + (JSCompiler_object_inline_stack_2971 = workInProgress.child), + (JSCompiler_object_inline_stack_2971.memoizedState = mountSuspenseOffscreenState(renderLanes)), - (JSCompiler_object_inline_stack_2967.childLanes = + (JSCompiler_object_inline_stack_2971.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2966, + JSCompiler_object_inline_digest_2970, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), (workInProgress = bailoutOffscreenComponent( null, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ))); else if ( (pushPrimaryTreeSuspenseHandler(workInProgress), @@ -11241,45 +11241,45 @@ 0 !== (renderLanes & 536870912) && markRenderDerivedCause(workInProgress), isSuspenseInstanceFallback( - JSCompiler_object_inline_componentStack_2968 + JSCompiler_object_inline_componentStack_2972 )) ) { - JSCompiler_object_inline_digest_2966 = - JSCompiler_object_inline_componentStack_2968.nextSibling && - JSCompiler_object_inline_componentStack_2968.nextSibling.dataset; - if (JSCompiler_object_inline_digest_2966) { - nextPrimaryChildren = JSCompiler_object_inline_digest_2966.dgst; - var message = JSCompiler_object_inline_digest_2966.msg; - mode = JSCompiler_object_inline_digest_2966.stck; - var componentStack = JSCompiler_object_inline_digest_2966.cstck; + JSCompiler_object_inline_digest_2970 = + JSCompiler_object_inline_componentStack_2972.nextSibling && + JSCompiler_object_inline_componentStack_2972.nextSibling.dataset; + if (JSCompiler_object_inline_digest_2970) { + nextPrimaryChildren = JSCompiler_object_inline_digest_2970.dgst; + var message = JSCompiler_object_inline_digest_2970.msg; + mode = JSCompiler_object_inline_digest_2970.stck; + var componentStack = JSCompiler_object_inline_digest_2970.cstck; } - JSCompiler_object_inline_message_2965 = message; - JSCompiler_object_inline_digest_2966 = nextPrimaryChildren; - JSCompiler_object_inline_stack_2967 = mode; - JSCompiler_object_inline_componentStack_2968 = componentStack; - nextPrimaryChildren = JSCompiler_object_inline_message_2965; - mode = JSCompiler_object_inline_componentStack_2968; + JSCompiler_object_inline_message_2969 = message; + JSCompiler_object_inline_digest_2970 = nextPrimaryChildren; + JSCompiler_object_inline_stack_2971 = mode; + JSCompiler_object_inline_componentStack_2972 = componentStack; + nextPrimaryChildren = JSCompiler_object_inline_message_2969; + mode = JSCompiler_object_inline_componentStack_2972; nextPrimaryChildren = nextPrimaryChildren ? Error(nextPrimaryChildren) : Error( "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering." ); nextPrimaryChildren.stack = - JSCompiler_object_inline_stack_2967 || ""; - nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2966; - JSCompiler_object_inline_digest_2966 = + JSCompiler_object_inline_stack_2971 || ""; + nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2970; + JSCompiler_object_inline_digest_2970 = void 0 === mode ? null : mode; - JSCompiler_object_inline_stack_2967 = { + JSCompiler_object_inline_stack_2971 = { value: nextPrimaryChildren, source: null, - stack: JSCompiler_object_inline_digest_2966 + stack: JSCompiler_object_inline_digest_2970 }; - "string" === typeof JSCompiler_object_inline_digest_2966 && + "string" === typeof JSCompiler_object_inline_digest_2970 && CapturedStacks.set( nextPrimaryChildren, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ); - queueHydrationError(JSCompiler_object_inline_stack_2967); + queueHydrationError(JSCompiler_object_inline_stack_2971); workInProgress = retrySuspenseComponentWithoutHydrating( current, workInProgress, @@ -11293,35 +11293,35 @@ renderLanes, !1 ), - (JSCompiler_object_inline_digest_2966 = + (JSCompiler_object_inline_digest_2970 = 0 !== (renderLanes & current.childLanes)), - didReceiveUpdate || JSCompiler_object_inline_digest_2966) + didReceiveUpdate || JSCompiler_object_inline_digest_2970) ) { - JSCompiler_object_inline_digest_2966 = workInProgressRoot; + JSCompiler_object_inline_digest_2970 = workInProgressRoot; if ( - null !== JSCompiler_object_inline_digest_2966 && - ((JSCompiler_object_inline_stack_2967 = getBumpedLaneForHydration( - JSCompiler_object_inline_digest_2966, + null !== JSCompiler_object_inline_digest_2970 && + ((JSCompiler_object_inline_stack_2971 = getBumpedLaneForHydration( + JSCompiler_object_inline_digest_2970, renderLanes )), - 0 !== JSCompiler_object_inline_stack_2967 && - JSCompiler_object_inline_stack_2967 !== prevState.retryLane) + 0 !== JSCompiler_object_inline_stack_2971 && + JSCompiler_object_inline_stack_2971 !== prevState.retryLane) ) throw ( - ((prevState.retryLane = JSCompiler_object_inline_stack_2967), + ((prevState.retryLane = JSCompiler_object_inline_stack_2971), enqueueConcurrentRenderForLane( current, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ), scheduleUpdateOnFiber( - JSCompiler_object_inline_digest_2966, + JSCompiler_object_inline_digest_2970, current, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ), SelectiveHydrationException) ); isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2968 + JSCompiler_object_inline_componentStack_2972 ) || renderDidSuspendDelayIfPossible(); workInProgress = retrySuspenseComponentWithoutHydrating( current, @@ -11330,14 +11330,14 @@ ); } else isSuspenseInstancePending( - JSCompiler_object_inline_componentStack_2968 + JSCompiler_object_inline_componentStack_2972 ) ? ((workInProgress.flags |= 192), (workInProgress.child = current.child), (workInProgress = null)) : ((current = prevState.treeContext), (nextHydratableInstance = getNextHydratable( - JSCompiler_object_inline_componentStack_2968.nextSibling + JSCompiler_object_inline_componentStack_2972.nextSibling )), (hydrationParentFiber = workInProgress), (isHydrating = !0), @@ -11349,32 +11349,32 @@ restoreSuspendedTreeContext(workInProgress, current), (workInProgress = mountSuspensePrimaryChildren( workInProgress, - JSCompiler_object_inline_stack_2967.children + JSCompiler_object_inline_stack_2971.children )), (workInProgress.flags |= 4096)); return workInProgress; } } - if (JSCompiler_object_inline_message_2965) + if (JSCompiler_object_inline_message_2969) return ( reuseSuspenseHandlerOnStack(workInProgress), - (nextPrimaryChildren = JSCompiler_object_inline_stack_2967.fallback), + (nextPrimaryChildren = JSCompiler_object_inline_stack_2971.fallback), (mode = workInProgress.mode), (componentStack = current.child), - (JSCompiler_object_inline_componentStack_2968 = + (JSCompiler_object_inline_componentStack_2972 = componentStack.sibling), - (JSCompiler_object_inline_stack_2967 = createWorkInProgress( + (JSCompiler_object_inline_stack_2971 = createWorkInProgress( componentStack, { mode: "hidden", - children: JSCompiler_object_inline_stack_2967.children + children: JSCompiler_object_inline_stack_2971.children } )), - (JSCompiler_object_inline_stack_2967.subtreeFlags = + (JSCompiler_object_inline_stack_2971.subtreeFlags = componentStack.subtreeFlags & 133169152), - null !== JSCompiler_object_inline_componentStack_2968 + null !== JSCompiler_object_inline_componentStack_2972 ? (nextPrimaryChildren = createWorkInProgress( - JSCompiler_object_inline_componentStack_2968, + JSCompiler_object_inline_componentStack_2972, nextPrimaryChildren )) : ((nextPrimaryChildren = createFiberFromFragment( @@ -11385,11 +11385,11 @@ )), (nextPrimaryChildren.flags |= 2)), (nextPrimaryChildren.return = workInProgress), - (JSCompiler_object_inline_stack_2967.return = workInProgress), - (JSCompiler_object_inline_stack_2967.sibling = nextPrimaryChildren), - (workInProgress.child = JSCompiler_object_inline_stack_2967), - bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2967), - (JSCompiler_object_inline_stack_2967 = workInProgress.child), + (JSCompiler_object_inline_stack_2971.return = workInProgress), + (JSCompiler_object_inline_stack_2971.sibling = nextPrimaryChildren), + (workInProgress.child = JSCompiler_object_inline_stack_2971), + bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2971), + (JSCompiler_object_inline_stack_2971 = workInProgress.child), (nextPrimaryChildren = current.child.memoizedState), null === nextPrimaryChildren ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes)) @@ -11405,18 +11405,18 @@ baseLanes: nextPrimaryChildren.baseLanes | renderLanes, cachePool: mode })), - (JSCompiler_object_inline_stack_2967.memoizedState = + (JSCompiler_object_inline_stack_2971.memoizedState = nextPrimaryChildren), - (JSCompiler_object_inline_stack_2967.childLanes = + (JSCompiler_object_inline_stack_2971.childLanes = getRemainingWorkInPrimaryTree( current, - JSCompiler_object_inline_digest_2966, + JSCompiler_object_inline_digest_2970, renderLanes )), (workInProgress.memoizedState = SUSPENDED_MARKER), bailoutOffscreenComponent( current.child, - JSCompiler_object_inline_stack_2967 + JSCompiler_object_inline_stack_2971 ) ); null !== prevState && @@ -11428,16 +11428,16 @@ current = renderLanes.sibling; renderLanes = createWorkInProgress(renderLanes, { mode: "visible", - children: JSCompiler_object_inline_stack_2967.children + children: JSCompiler_object_inline_stack_2971.children }); renderLanes.return = workInProgress; renderLanes.sibling = null; null !== current && - ((JSCompiler_object_inline_digest_2966 = workInProgress.deletions), - null === JSCompiler_object_inline_digest_2966 + ((JSCompiler_object_inline_digest_2970 = workInProgress.deletions), + null === JSCompiler_object_inline_digest_2970 ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16)) - : JSCompiler_object_inline_digest_2966.push(current)); + : JSCompiler_object_inline_digest_2970.push(current)); workInProgress.child = renderLanes; workInProgress.memoizedState = null; return renderLanes; @@ -12579,6 +12579,13 @@ ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (returnFiber = workInProgress.pendingProps), null != returnFiber.name && "auto" !== returnFiber.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -19660,32 +19667,31 @@ (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT); } pendingEffectsStatus = NO_PENDING_EFFECTS; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; + endTime = pendingEffectsRoot; var finishedWork = pendingFinishedWork; - endTime = pendingEffectsLanes; - var recoverableErrors = pendingRecoverableErrors; - abortedViewTransition = - (endTime & 335544064) === endTime ? 10262 : 10256; - (abortedViewTransition = + abortedViewTransition = pendingEffectsLanes; + var recoverableErrors = pendingRecoverableErrors, + passiveSubtreeMask = + (abortedViewTransition & 335544064) === abortedViewTransition + ? 10262 + : 10256; + (passiveSubtreeMask = 0 !== finishedWork.actualDuration || - 0 !== (finishedWork.subtreeFlags & abortedViewTransition) || - 0 !== (finishedWork.flags & abortedViewTransition)) + 0 !== (finishedWork.subtreeFlags & passiveSubtreeMask) || + 0 !== (finishedWork.flags & passiveSubtreeMask)) ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE) : ((pendingEffectsStatus = NO_PENDING_EFFECTS), (pendingFinishedWork = pendingEffectsRoot = null), - releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes - ), + releaseRootPooledCache(endTime, endTime.pendingLanes), (nestedPassiveUpdateCount = 0), (rootWithPassiveNestedUpdates = null)); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = endTime.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - abortedViewTransition || - commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime); - remainingLanes = lanesToEventPriority(endTime); + passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(endTime); + remainingLanes = lanesToEventPriority(abortedViewTransition); finishedWork = finishedWork.stateNode; if ( injectedHook && @@ -19723,8 +19729,7 @@ err )); } - isDevToolsPresent && - startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && endTime.memoizedUpdaters.clear(); onCommitRoot(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; @@ -19732,8 +19737,7 @@ ReactDOMSharedInternals.p = DiscreteEventPriority; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = endTime.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -19756,26 +19760,35 @@ onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - errorInfo = 0; + errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++ ) - (0, onRecoverableError[errorInfo])(recoverableError); + (recoverableErrors = (0, onRecoverableError[errorInfo])( + recoverableError + )), + void 0 !== recoverableErrors && + startViewTransitionStartTime.finished.finally( + recoverableErrors + ); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; - 0 !== (endTime & 261930) && 0 !== (remainingLanes & 42) + ensureRootIsScheduled(endTime); + remainingLanes = endTime.pendingLanes; + 0 !== (abortedViewTransition & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + endTime === rootWithNestedUpdates ? nestedUpdateCount++ - : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + : ((nestedUpdateCount = 0), (rootWithNestedUpdates = endTime))) : (nestedUpdateCount = 0); - abortedViewTransition || finalizeRender(endTime, commitEndTime); + passiveSubtreeMask || + finalizeRender(abortedViewTransition, commitEndTime); flushSyncWorkAcrossRoots_impl(0, !1); } } @@ -28347,10 +28360,10 @@ useActionState: throwInvalidHookError, useOptimistic: throwInvalidHookError, useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError - }; - ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; - var HooksDispatcherOnMountInDEV = null, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, @@ -30473,11 +30486,11 @@ }; (function () { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); })(); ("function" === typeof Map && @@ -30514,10 +30527,10 @@ !(function () { var internals = { bundleType: 1, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116" + reconcilerVersion: "19.3.0-canary-d2908752-20260119" }; internals.overrideHookState = overrideHookState; internals.overrideHookStateDeletePath = overrideHookStateDeletePath; @@ -30985,7 +30998,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; "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 8de7f06a5ab84..338bcee953913 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 @@ -6180,32 +6180,32 @@ function entangleTransitionUpdate(root, queue, lane) { } } var ContextOnlyDispatcher = { - readContext: readContext, - use: use, - useCallback: throwInvalidHookError, - useContext: throwInvalidHookError, - useEffect: throwInvalidHookError, - useImperativeHandle: throwInvalidHookError, - useLayoutEffect: throwInvalidHookError, - useInsertionEffect: throwInvalidHookError, - useMemo: throwInvalidHookError, - useReducer: throwInvalidHookError, - useRef: throwInvalidHookError, - useState: throwInvalidHookError, - useDebugValue: throwInvalidHookError, - useDeferredValue: throwInvalidHookError, - useTransition: throwInvalidHookError, - useSyncExternalStore: throwInvalidHookError, - useId: throwInvalidHookError, - useHostTransitionStatus: throwInvalidHookError, - useFormState: throwInvalidHookError, - useActionState: throwInvalidHookError, - useOptimistic: throwInvalidHookError, - useMemoCache: throwInvalidHookError, - useCacheRefresh: throwInvalidHookError -}; -ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError; -var HooksDispatcherOnMount = { + readContext: readContext, + use: use, + useCallback: throwInvalidHookError, + useContext: throwInvalidHookError, + useEffect: throwInvalidHookError, + useImperativeHandle: throwInvalidHookError, + useLayoutEffect: throwInvalidHookError, + useInsertionEffect: throwInvalidHookError, + useMemo: throwInvalidHookError, + useReducer: throwInvalidHookError, + useRef: throwInvalidHookError, + useState: throwInvalidHookError, + useDebugValue: throwInvalidHookError, + useDeferredValue: throwInvalidHookError, + useTransition: throwInvalidHookError, + useSyncExternalStore: throwInvalidHookError, + useId: throwInvalidHookError, + useHostTransitionStatus: throwInvalidHookError, + useFormState: throwInvalidHookError, + useActionState: throwInvalidHookError, + useOptimistic: throwInvalidHookError, + useMemoCache: throwInvalidHookError, + useCacheRefresh: throwInvalidHookError, + useEffectEvent: throwInvalidHookError + }, + HooksDispatcherOnMount = { readContext: readContext, use: use, useCallback: function (callback, deps) { @@ -6452,62 +6452,62 @@ var HooksDispatcherOnMount = { return updateOptimisticImpl(hook, currentHook, passthrough, reducer); }, useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh - }; -HooksDispatcherOnUpdate.useEffectEvent = updateEvent; -var HooksDispatcherOnRerender = { - readContext: readContext, - use: use, - useCallback: updateCallback, - useContext: readContext, - useEffect: updateEffect, - useImperativeHandle: updateImperativeHandle, - useInsertionEffect: updateInsertionEffect, - useLayoutEffect: updateLayoutEffect, - useMemo: updateMemo, - useReducer: rerenderReducer, - useRef: updateRef, - useState: function () { - return rerenderReducer(basicStateReducer); - }, - useDebugValue: mountDebugValue, - useDeferredValue: function (value, initialValue) { - var hook = updateWorkInProgressHook(); - return null === currentHook - ? mountDeferredValueImpl(hook, value, initialValue) - : updateDeferredValueImpl( - hook, - currentHook.memoizedState, - value, - initialValue - ); - }, - useTransition: function () { - var booleanOrThenable = rerenderReducer(basicStateReducer)[0], - start = updateWorkInProgressHook().memoizedState; - return [ - "boolean" === typeof booleanOrThenable - ? booleanOrThenable - : useThenable(booleanOrThenable), - start - ]; + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent }, - useSyncExternalStore: updateSyncExternalStore, - useId: updateId, - useHostTransitionStatus: useHostTransitionStatus, - useFormState: rerenderActionState, - useActionState: rerenderActionState, - useOptimistic: function (passthrough, reducer) { - var hook = updateWorkInProgressHook(); - if (null !== currentHook) - return updateOptimisticImpl(hook, currentHook, passthrough, reducer); - hook.baseState = passthrough; - return [passthrough, hook.queue.dispatch]; - }, - useMemoCache: useMemoCache, - useCacheRefresh: updateRefresh -}; -HooksDispatcherOnRerender.useEffectEvent = updateEvent; + HooksDispatcherOnRerender = { + readContext: readContext, + use: use, + useCallback: updateCallback, + useContext: readContext, + useEffect: updateEffect, + useImperativeHandle: updateImperativeHandle, + useInsertionEffect: updateInsertionEffect, + useLayoutEffect: updateLayoutEffect, + useMemo: updateMemo, + useReducer: rerenderReducer, + useRef: updateRef, + useState: function () { + return rerenderReducer(basicStateReducer); + }, + useDebugValue: mountDebugValue, + useDeferredValue: function (value, initialValue) { + var hook = updateWorkInProgressHook(); + return null === currentHook + ? mountDeferredValueImpl(hook, value, initialValue) + : updateDeferredValueImpl( + hook, + currentHook.memoizedState, + value, + initialValue + ); + }, + useTransition: function () { + var booleanOrThenable = rerenderReducer(basicStateReducer)[0], + start = updateWorkInProgressHook().memoizedState; + return [ + "boolean" === typeof booleanOrThenable + ? booleanOrThenable + : useThenable(booleanOrThenable), + start + ]; + }, + useSyncExternalStore: updateSyncExternalStore, + useId: updateId, + useHostTransitionStatus: useHostTransitionStatus, + useFormState: rerenderActionState, + useActionState: rerenderActionState, + useOptimistic: function (passthrough, reducer) { + var hook = updateWorkInProgressHook(); + if (null !== currentHook) + return updateOptimisticImpl(hook, currentHook, passthrough, reducer); + hook.baseState = passthrough; + return [passthrough, hook.queue.dispatch]; + }, + useMemoCache: useMemoCache, + useCacheRefresh: updateRefresh, + useEffectEvent: updateEvent + }; function applyDerivedStateFromProps( workInProgress, ctor, @@ -8635,6 +8635,13 @@ function beginWork(current, workInProgress, renderLanes) { ); case 30: return ( + null === workInProgress.stateNode && + (workInProgress.stateNode = { + autoName: null, + paired: null, + clones: null, + ref: null + }), (props = workInProgress.pendingProps), null != props.name && "auto" !== props.name ? (workInProgress.flags |= null === current ? 18882560 : 18874368) @@ -14698,16 +14705,14 @@ function flushSpawnedWork() { 1 !== pendingDelayedCommitReason && (pendingDelayedCommitReason = 3); } pendingEffectsStatus = 0; + startViewTransitionStartTime = pendingViewTransition; pendingViewTransition = null; requestPaint(); - startViewTransitionStartTime = pendingEffectsRoot; - var finishedWork = pendingFinishedWork; - abortedViewTransition = pendingEffectsLanes; - var recoverableErrors = pendingRecoverableErrors, - passiveSubtreeMask = - (abortedViewTransition & 335544064) === abortedViewTransition - ? 10262 - : 10256; + abortedViewTransition = pendingEffectsRoot; + var finishedWork = pendingFinishedWork, + lanes = pendingEffectsLanes, + recoverableErrors = pendingRecoverableErrors, + passiveSubtreeMask = (lanes & 335544064) === lanes ? 10262 : 10256; (passiveSubtreeMask = 0 !== finishedWork.actualDuration || 0 !== (finishedWork.subtreeFlags & passiveSubtreeMask) || @@ -14716,12 +14721,12 @@ function flushSpawnedWork() { : ((pendingEffectsStatus = 0), (pendingFinishedWork = pendingEffectsRoot = null), releaseRootPooledCache( - startViewTransitionStartTime, - startViewTransitionStartTime.pendingLanes + abortedViewTransition, + abortedViewTransition.pendingLanes )); - var remainingLanes = startViewTransitionStartTime.pendingLanes; + var remainingLanes = abortedViewTransition.pendingLanes; 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null); - remainingLanes = lanesToEventPriority(abortedViewTransition); + remainingLanes = lanesToEventPriority(lanes); finishedWork = finishedWork.stateNode; if (injectedHook && "function" === typeof injectedHook.onCommitFiberRoot) try { @@ -14749,15 +14754,14 @@ function flushSpawnedWork() { didError ); } catch (err) {} - isDevToolsPresent && startViewTransitionStartTime.memoizedUpdaters.clear(); + isDevToolsPresent && abortedViewTransition.memoizedUpdaters.clear(); if (null !== recoverableErrors) { didError = ReactSharedInternals.T; schedulerPriority = ReactDOMSharedInternals.p; ReactDOMSharedInternals.p = 2; ReactSharedInternals.T = null; try { - var onRecoverableError = - startViewTransitionStartTime.onRecoverableError; + var onRecoverableError = abortedViewTransition.onRecoverableError; for ( finishedWork = 0; finishedWork < recoverableErrors.length; @@ -14776,26 +14780,33 @@ function flushSpawnedWork() { onRecoverableError = pendingViewTransitionEvents; recoverableError = pendingTransitionTypes; pendingTransitionTypes = null; - if (null !== onRecoverableError) + if ( + null !== onRecoverableError && + ((pendingViewTransitionEvents = null), + null === recoverableError && (recoverableError = []), + null !== startViewTransitionStartTime) + ) for ( - pendingViewTransitionEvents = null, - null === recoverableError && (recoverableError = []), - recoverableErrors = 0; + recoverableErrors = 0; recoverableErrors < onRecoverableError.length; recoverableErrors++ ) - (0, onRecoverableError[recoverableErrors])(recoverableError); + (didError = (0, onRecoverableError[recoverableErrors])( + recoverableError + )), + void 0 !== didError && + startViewTransitionStartTime.finished.finally(didError); 0 !== (pendingEffectsLanes & 3) && flushPendingEffects(); - ensureRootIsScheduled(startViewTransitionStartTime); - remainingLanes = startViewTransitionStartTime.pendingLanes; - 0 !== (abortedViewTransition & 261930) && 0 !== (remainingLanes & 42) + ensureRootIsScheduled(abortedViewTransition); + remainingLanes = abortedViewTransition.pendingLanes; + 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42) ? ((nestedUpdateScheduled = !0), - startViewTransitionStartTime === rootWithNestedUpdates + abortedViewTransition === rootWithNestedUpdates ? nestedUpdateCount++ : ((nestedUpdateCount = 0), - (rootWithNestedUpdates = startViewTransitionStartTime))) + (rootWithNestedUpdates = abortedViewTransition))) : (nestedUpdateCount = 0); - passiveSubtreeMask || finalizeRender(abortedViewTransition, commitEndTime); + passiveSubtreeMask || finalizeRender(lanes, commitEndTime); flushSyncWorkAcrossRoots_impl(0, !1); } } @@ -15328,20 +15339,20 @@ function extractEvents$1( } } for ( - var i$jscomp$inline_1995 = 0; - i$jscomp$inline_1995 < simpleEventPluginEvents.length; - i$jscomp$inline_1995++ + var i$jscomp$inline_1999 = 0; + i$jscomp$inline_1999 < simpleEventPluginEvents.length; + i$jscomp$inline_1999++ ) { - var eventName$jscomp$inline_1996 = - simpleEventPluginEvents[i$jscomp$inline_1995], - domEventName$jscomp$inline_1997 = - eventName$jscomp$inline_1996.toLowerCase(), - capitalizedEvent$jscomp$inline_1998 = - eventName$jscomp$inline_1996[0].toUpperCase() + - eventName$jscomp$inline_1996.slice(1); + var eventName$jscomp$inline_2000 = + simpleEventPluginEvents[i$jscomp$inline_1999], + domEventName$jscomp$inline_2001 = + eventName$jscomp$inline_2000.toLowerCase(), + capitalizedEvent$jscomp$inline_2002 = + eventName$jscomp$inline_2000[0].toUpperCase() + + eventName$jscomp$inline_2000.slice(1); registerSimpleEvent( - domEventName$jscomp$inline_1997, - "on" + capitalizedEvent$jscomp$inline_1998 + domEventName$jscomp$inline_2001, + "on" + capitalizedEvent$jscomp$inline_2002 ); } registerSimpleEvent(ANIMATION_END, "onAnimationEnd"); @@ -19950,16 +19961,16 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) { 0 === i && attemptExplicitHydrationTarget(target); } }; -var isomorphicReactPackageVersion$jscomp$inline_2344 = React.version; +var isomorphicReactPackageVersion$jscomp$inline_2348 = React.version; if ( - "19.3.0-canary-bef88f7c-20260116" !== - isomorphicReactPackageVersion$jscomp$inline_2344 + "19.3.0-canary-d2908752-20260119" !== + isomorphicReactPackageVersion$jscomp$inline_2348 ) throw Error( formatProdErrorMessage( 527, - isomorphicReactPackageVersion$jscomp$inline_2344, - "19.3.0-canary-bef88f7c-20260116" + isomorphicReactPackageVersion$jscomp$inline_2348, + "19.3.0-canary-d2908752-20260119" ) ); ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { @@ -19979,24 +19990,24 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) { null === componentOrElement ? null : componentOrElement.stateNode; return componentOrElement; }; -var internals$jscomp$inline_2947 = { +var internals$jscomp$inline_2951 = { bundleType: 0, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-dom", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116" + reconcilerVersion: "19.3.0-canary-d2908752-20260119" }; if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) { - var hook$jscomp$inline_2948 = __REACT_DEVTOOLS_GLOBAL_HOOK__; + var hook$jscomp$inline_2952 = __REACT_DEVTOOLS_GLOBAL_HOOK__; if ( - !hook$jscomp$inline_2948.isDisabled && - hook$jscomp$inline_2948.supportsFiber + !hook$jscomp$inline_2952.isDisabled && + hook$jscomp$inline_2952.supportsFiber ) try { - (rendererID = hook$jscomp$inline_2948.inject( - internals$jscomp$inline_2947 + (rendererID = hook$jscomp$inline_2952.inject( + internals$jscomp$inline_2951 )), - (injectedHook = hook$jscomp$inline_2948); + (injectedHook = hook$jscomp$inline_2952); } catch (err) {} } function getCrossOriginStringAs(as, input) { @@ -20243,7 +20254,7 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; "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 b6bdae7fd436e..709f21eaae802 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 @@ -3884,6 +3884,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -3896,6 +3897,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -4797,6 +4842,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6210,7 +6310,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7197,6 +7297,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9818,10 +9920,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -9936,7 +10042,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10035,5 +10140,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-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 ae7a304a4b56a..401f929dbf138 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js @@ -6763,4 +6763,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToReadableStream" which supports Suspense on the server' ); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 a9dc5281c3ca4..29b170bc38e51 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 @@ -3884,6 +3884,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -3896,6 +3897,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -4797,6 +4842,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6210,7 +6310,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7197,6 +7297,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9818,10 +9920,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -9936,7 +10042,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10035,5 +10140,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-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 5948bee4a5f41..c29a02c5c3c29 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js @@ -6855,4 +6855,4 @@ exports.renderToString = function (children, options) { 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server' ); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 338c7c436fa5e..050ab85131f43 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 @@ -4043,6 +4043,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4055,6 +4056,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5136,6 +5181,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6595,7 +6695,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7588,6 +7688,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9001,11 +9103,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -10357,10 +10459,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10475,7 +10581,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10808,5 +10913,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 af97b004a0c12..4916b3cf15b69 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js @@ -7365,12 +7365,12 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== isomorphicReactPackageVersion) throw Error( formatProdErrorMessage( 527, isomorphicReactPackageVersion, - "19.3.0-canary-bef88f7c-20260116" + "19.3.0-canary-d2908752-20260119" ) ); } @@ -7621,4 +7621,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 13b5d8a25f464..5b61da1ba7a73 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js @@ -7073,11 +7073,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7622,4 +7622,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 946c123163e39..c91becbbdf82a 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 @@ -4039,6 +4039,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -4051,6 +4052,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5146,6 +5191,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6605,7 +6705,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7598,6 +7698,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -9024,11 +9126,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } var React = require("next/dist/compiled/react"), @@ -10376,10 +10478,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10494,7 +10600,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -10827,5 +10932,5 @@ startWork(request); }); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 9a8231a4924c1..d2eb63c7fef8c 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js @@ -7472,11 +7472,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7726,4 +7726,4 @@ exports.resumeAndPrerender = function (children, postponedState, options) { startWork(request); }); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 18341bc167fa6..45c3893dcb86a 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 @@ -3945,6 +3945,7 @@ throw thenable.reason; } suspendedThenable = thenable; + shouldCaptureSuspendedCallSite && captureSuspendedCallSite(); throw SuspenseException; } } @@ -3957,6 +3958,50 @@ suspendedThenable = null; return thenable; } + function captureSuspendedCallSite() { + var currentTask = currentTaskInDEV; + if (null === currentTask) + throw Error( + "Expected to have a current task when tracking a suspend call site. This is a bug in React." + ); + var currentComponentStack = currentTask.componentStack; + if (null === currentComponentStack) + throw Error( + "Expected to have a component stack on the current task when tracking a suspended call site. This is a bug in React." + ); + suspendedCallSiteStack = { + parent: currentComponentStack.parent, + type: currentComponentStack.type, + owner: currentComponentStack.owner, + stack: Error("react-stack-top-frame") + }; + suspendedCallSiteDebugTask = currentTask.debugTask; + } + function ensureSuspendableThenableStateDEV(thenableState) { + var lastThenable = thenableState[thenableState.length - 1]; + switch (lastThenable.status) { + case "fulfilled": + var previousThenableValue = lastThenable.value, + previousThenableThen = lastThenable.then.bind(lastThenable); + delete lastThenable.value; + delete lastThenable.status; + lastThenable.then = noop; + return function () { + lastThenable.then = previousThenableThen; + lastThenable.value = previousThenableValue; + lastThenable.status = "fulfilled"; + }; + case "rejected": + var previousThenableReason = lastThenable.reason; + delete lastThenable.reason; + delete lastThenable.status; + return function () { + lastThenable.reason = previousThenableReason; + lastThenable.status = "rejected"; + }; + } + return noop; + } function is(x, y) { return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y); } @@ -5046,6 +5091,61 @@ } } } + function pushSuspendedCallSiteOnComponentStack(request, task) { + shouldCaptureSuspendedCallSite = !0; + var restoreThenableState = ensureSuspendableThenableStateDEV( + task.thenableState + ); + try { + var prevStatus = request.status; + request.status = 15; + var prevContext = currentActiveSnapshot, + prevDispatcher = ReactSharedInternals.H; + ReactSharedInternals.H = HooksDispatcher; + var prevAsyncDispatcher = ReactSharedInternals.A; + ReactSharedInternals.A = DefaultAsyncDispatcher; + var prevRequest = currentRequest; + currentRequest = request; + var prevGetCurrentStackImpl = ReactSharedInternals.getCurrentStack; + ReactSharedInternals.getCurrentStack = getCurrentStackInDEV; + var prevResumableState = currentResumableState; + currentResumableState = request.resumableState; + switchContext(task.context); + var prevTaskInDEV = currentTaskInDEV; + currentTaskInDEV = task; + try { + retryNode(request, task); + } catch (x) { + resetHooksState(); + } finally { + (currentTaskInDEV = prevTaskInDEV), + (currentResumableState = prevResumableState), + (ReactSharedInternals.H = prevDispatcher), + (ReactSharedInternals.A = prevAsyncDispatcher), + (ReactSharedInternals.getCurrentStack = prevGetCurrentStackImpl), + prevDispatcher === HooksDispatcher && switchContext(prevContext), + (currentRequest = prevRequest), + (request.status = prevStatus); + } + } finally { + restoreThenableState(), (shouldCaptureSuspendedCallSite = !1); + } + null === suspendedCallSiteStack + ? (request = null) + : ((request = suspendedCallSiteStack), (suspendedCallSiteStack = null)); + null === suspendedCallSiteDebugTask + ? (restoreThenableState = null) + : ((restoreThenableState = suspendedCallSiteDebugTask), + (suspendedCallSiteDebugTask = null)); + null !== request && + (task.componentStack = { + owner: task.componentStack, + parent: request.parent, + stack: request.stack, + type: request.type + }); + task.debugTask = restoreThenableState; + } function pushServerComponentStack(task, debugInfo) { if (null != debugInfo) for (var i = 0; i < debugInfo.length; i++) { @@ -6504,7 +6604,7 @@ return; case REACT_LAZY_TYPE: var Component = callLazyInitInDEV(type); - if (12 === request.status) throw null; + if (12 === request.status && 15 !== request.status) throw null; renderElement(request, task, keyPath, Component, props, ref); return; } @@ -7497,6 +7597,8 @@ isArrayImpl(node._debugInfo) && (debugInfo = node._debugInfo); pushHaltedAwaitOnComponentStack(task, debugInfo); + null !== task.thenableState && + pushSuspendedCallSiteOnComponentStack(request, task); } if (null === boundary) { if (13 !== request.status && request.status !== CLOSED) { @@ -8898,11 +9000,11 @@ } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } function createDrainHandler(destination, request) { @@ -10351,10 +10453,14 @@ clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, + currentTaskInDEV = null, SuspenseException = Error( "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`." ), suspendedThenable = null, + shouldCaptureSuspendedCallSite = !1, + suspendedCallSiteStack = null, + suspendedCallSiteDebugTask = null, objectIs = "function" === typeof Object.is ? Object.is : is, currentlyRenderingComponent = null, currentlyRenderingTask = null, @@ -10469,7 +10575,6 @@ } }, currentResumableState = null, - currentTaskInDEV = null, DefaultAsyncDispatcher = { getCacheForType: function () { throw Error("Not implemented."); @@ -11007,5 +11112,5 @@ } }; }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 c3fd755404f25..b352adde5b49d 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js @@ -7363,11 +7363,11 @@ function getPostponedState(request) { } function ensureCorrectIsomorphicReactVersion() { var isomorphicReactPackageVersion = React.version; - if ("19.3.0-canary-bef88f7c-20260116" !== isomorphicReactPackageVersion) + if ("19.3.0-canary-d2908752-20260119" !== 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-bef88f7c-20260116\nLearn more: https://react.dev/warnings/version-mismatch") + "\n - react-dom: 19.3.0-canary-d2908752-20260119\nLearn more: https://react.dev/warnings/version-mismatch") ); } ensureCorrectIsomorphicReactVersion(); @@ -7917,4 +7917,4 @@ exports.resumeToPipeableStream = function (children, postponedState, options) { } }; }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 283e8bc1597fe..722c031ee3357 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.development.js @@ -422,7 +422,7 @@ exports.useFormStatus = function () { return resolveDispatcher().useHostTransitionStatus(); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; "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 293945358c9ea..c99d32640eeb4 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.production.js @@ -213,4 +213,4 @@ exports.useFormState = function (action, initialState, permalink) { exports.useFormStatus = function () { return ReactSharedInternals.H.useHostTransitionStatus(); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 aee4067a1c205..1b22fdfe5cae2 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js @@ -336,5 +336,5 @@ })) : Internals.d.m(href)); }; - exports.version = "19.3.0-canary-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 61732c556be31..877e0e55a0b3c 100644 --- a/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js +++ b/packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js @@ -149,4 +149,4 @@ exports.preloadModule = function (href, options) { }); } else Internals.d.m(href); }; -exports.version = "19.3.0-canary-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; diff --git a/packages/next/src/compiled/react-dom/package.json b/packages/next/src/compiled/react-dom/package.json index 2c438845c452f..2979fa51629f2 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-bef88f7c-20260116" + "scheduler": "0.28.0-canary-d2908752-20260119" }, "peerDependencies": { - "react": "19.3.0-canary-bef88f7c-20260116" + "react": "19.3.0-canary-d2908752-20260119" }, "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 23d2dcb1fe6ff..499203be686e3 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-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; "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 c981eafe0658c..0a55e07464a1e 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-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; 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 480a8e8cc5c8e..29dfae61ed2b9 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-bef88f7c-20260116"; + exports.version = "19.3.0-experimental-d2908752-20260119"; })(); 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 80e68ddb4668c..f8b3779f01891 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-bef88f7c-20260116"; +exports.version = "19.3.0-experimental-d2908752-20260119"; diff --git a/packages/next/src/compiled/react-is/package.json b/packages/next/src/compiled/react-is/package.json index 7e77d0665c755..e61027b59d10b 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-bef88f7c-20260116", + "version": "19.3.0-canary-d2908752-20260119", "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 75db6d6e3d532..232afd2f66dd6 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 @@ -5000,10 +5000,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116", + reconcilerVersion: "19.3.0-experimental-d2908752-20260119", 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 00c61d4ccc559..ed8eebf7f0f4f 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 @@ -2449,8 +2449,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5232,10 +5232,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js index ea1b2e45c3edf..6f9b9e816479c 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js @@ -654,9 +654,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1589,10 +1589,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1754,9 +1760,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1783,21 +1789,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 fa3950f114a74..c39cdcb38befb 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 @@ -2509,8 +2509,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5306,10 +5306,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js index e5a97d33066e9..fc9da7ea70db8 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js @@ -646,9 +646,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1588,10 +1588,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1753,9 +1759,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1782,21 +1788,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 3579814fde587..0483a989c142e 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 @@ -2757,8 +2757,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5812,22 +5812,22 @@ }, useCacheRefresh: function () { return unsupportedRefresh; + }, + useEffectEvent: unsupportedHook + }, + DefaultAsyncDispatcher = { + getCacheForType: function (resourceType) { + var cache = (cache = resolveRequest()) ? cache.cache : new Map(); + var entry = cache.get(resourceType); + void 0 === entry && + ((entry = resourceType()), cache.set(resourceType, entry)); + return entry; + }, + cacheSignal: function () { + var request = resolveRequest(); + return request ? request.cacheController.signal : null; } }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var DefaultAsyncDispatcher = { - getCacheForType: function (resourceType) { - var cache = (cache = resolveRequest()) ? cache.cache : new Map(); - var entry = cache.get(resourceType); - void 0 === entry && - ((entry = resourceType()), cache.set(resourceType, entry)); - return entry; - }, - cacheSignal: function () { - var request = resolveRequest(); - return request ? request.cacheController.signal : null; - } - }; DefaultAsyncDispatcher.getOwner = resolveOwner; var ReactSharedInternalsServer = React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; diff --git a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js index 2337b50f2a135..a092d8dc0668a 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js @@ -672,9 +672,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1608,10 +1608,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1773,9 +1779,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1802,21 +1808,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 29a313de4aaad..560f452a369ef 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-bef88f7c-20260116", - "react-dom": "0.0.0-experimental-bef88f7c-20260116" + "react": "0.0.0-experimental-d2908752-20260119", + "react-dom": "0.0.0-experimental-d2908752-20260119" } } \ 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 cfd236c03df5d..8f757dd354596 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 @@ -5000,10 +5000,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-server-dom-turbopack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116", + reconcilerVersion: "19.3.0-canary-d2908752-20260119", 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 ed05d2ff54c3a..a620a33fda853 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 @@ -2431,8 +2431,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5186,10 +5186,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js index 7b242ca13409e..b148acc1a6ed7 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js @@ -654,9 +654,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1565,10 +1565,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 029320397dccf..5485c93ba9b16 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 @@ -2491,8 +2491,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5260,10 +5260,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js index e9b1212141abe..e03d9dcd39b3b 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js @@ -646,9 +646,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1564,10 +1564,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 94505ef9975e1..2d39cd2ac4ca5 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 @@ -2739,8 +2739,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5766,22 +5766,22 @@ }, useCacheRefresh: function () { return unsupportedRefresh; + }, + useEffectEvent: unsupportedHook + }, + DefaultAsyncDispatcher = { + getCacheForType: function (resourceType) { + var cache = (cache = resolveRequest()) ? cache.cache : new Map(); + var entry = cache.get(resourceType); + void 0 === entry && + ((entry = resourceType()), cache.set(resourceType, entry)); + return entry; + }, + cacheSignal: function () { + var request = resolveRequest(); + return request ? request.cacheController.signal : null; } }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var DefaultAsyncDispatcher = { - getCacheForType: function (resourceType) { - var cache = (cache = resolveRequest()) ? cache.cache : new Map(); - var entry = cache.get(resourceType); - void 0 === entry && - ((entry = resourceType()), cache.set(resourceType, entry)); - return entry; - }, - cacheSignal: function () { - var request = resolveRequest(); - return request ? request.cacheController.signal : null; - } - }; DefaultAsyncDispatcher.getOwner = resolveOwner; var ReactSharedInternalsServer = React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; diff --git a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js index 1a50402853a63..e25bb9546fb53 100644 --- a/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js @@ -672,9 +672,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1584,10 +1584,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 60c6a9af4b033..64e0d8c4fa176 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-bef88f7c-20260116", - "react-dom": "19.3.0-canary-bef88f7c-20260116" + "react": "19.3.0-canary-d2908752-20260119", + "react-dom": "19.3.0-canary-d2908752-20260119" } } \ 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 12a86bf43be4c..0e64cb23414a2 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 @@ -5016,10 +5016,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-experimental-bef88f7c-20260116", + version: "19.3.0-experimental-d2908752-20260119", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-experimental-bef88f7c-20260116", + reconcilerVersion: "19.3.0-experimental-d2908752-20260119", 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 c943a84841dea..de2864c2a08c7 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 @@ -2449,8 +2449,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5239,10 +5239,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js index d85c26f02a043..f6099be38fe07 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js @@ -654,9 +654,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1589,10 +1589,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1754,9 +1760,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1783,21 +1789,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 d88183565245c..89b1148d39b21 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 @@ -2509,8 +2509,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5309,10 +5309,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js index a5750a6212f9e..3c7acc3cf65ed 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js @@ -646,9 +646,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1588,10 +1588,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1753,9 +1759,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1782,21 +1788,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 cb7dfb88c64b0..70de5228cdd10 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 @@ -2757,8 +2757,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5815,22 +5815,22 @@ }, useCacheRefresh: function () { return unsupportedRefresh; + }, + useEffectEvent: unsupportedHook + }, + DefaultAsyncDispatcher = { + getCacheForType: function (resourceType) { + var cache = (cache = resolveRequest()) ? cache.cache : new Map(); + var entry = cache.get(resourceType); + void 0 === entry && + ((entry = resourceType()), cache.set(resourceType, entry)); + return entry; + }, + cacheSignal: function () { + var request = resolveRequest(); + return request ? request.cacheController.signal : null; } }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var DefaultAsyncDispatcher = { - getCacheForType: function (resourceType) { - var cache = (cache = resolveRequest()) ? cache.cache : new Map(); - var entry = cache.get(resourceType); - void 0 === entry && - ((entry = resourceType()), cache.set(resourceType, entry)); - return entry; - }, - cacheSignal: function () { - var request = resolveRequest(); - return request ? request.cacheController.signal : null; - } - }; DefaultAsyncDispatcher.getOwner = resolveOwner; var ReactSharedInternalsServer = React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; diff --git a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js index 4681e6e2ecce3..9f1ce367dff1e 100644 --- a/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js @@ -672,9 +672,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1608,10 +1608,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' @@ -1773,9 +1779,9 @@ function renderModelDestructive( if (1024 <= value.length && null !== byteLengthOfChunk) return ( request.pendingChunks++, - (task = request.nextChunkId++), - emitTextChunk(request, task, value, !1), - serializeByValueID(task) + (parentPropertyName = request.nextChunkId++), + emitTextChunk(request, parentPropertyName, value, !1), + serializeByValueID(parentPropertyName) ); value = "$" === value[0] ? "$" + value : value; return value; @@ -1802,21 +1808,18 @@ function renderModelDestructive( ); if (value.$$typeof === SERVER_REFERENCE_TAG) return ( - (task = request.writtenServerReferences), - (parentPropertyName = task.get(value)), - void 0 !== parentPropertyName - ? (value = "$h" + parentPropertyName.toString(16)) - : ((parentPropertyName = value.$$bound), - (parentPropertyName = - null === parentPropertyName - ? null - : Promise.resolve(parentPropertyName)), + (parentPropertyName = request.writtenServerReferences), + (parent = parentPropertyName.get(value)), + void 0 !== parent + ? (value = "$h" + parent.toString(16)) + : ((parent = value.$$bound), + (parent = null === parent ? null : Promise.resolve(parent)), (request = outlineModelWithFormatContext( request, - { id: value.$$id, bound: parentPropertyName }, + { id: value.$$id, bound: parent }, 0 )), - task.set(value, request), + parentPropertyName.set(value, request), (value = "$h" + request.toString(16))), value ); 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 63842d45f579d..9d1b9569f89ea 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-bef88f7c-20260116", - "react-dom": "0.0.0-experimental-bef88f7c-20260116", + "react": "0.0.0-experimental-d2908752-20260119", + "react-dom": "0.0.0-experimental-d2908752-20260119", "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 623f336a1cd27..b5a5c83b0abc8 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 @@ -5016,10 +5016,10 @@ return hook.checkDCE ? !0 : !1; })({ bundleType: 1, - version: "19.3.0-canary-bef88f7c-20260116", + version: "19.3.0-canary-d2908752-20260119", rendererPackageName: "react-server-dom-webpack", currentDispatcherRef: ReactSharedInternals, - reconcilerVersion: "19.3.0-canary-bef88f7c-20260116", + reconcilerVersion: "19.3.0-canary-d2908752-20260119", 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 c8fb4f41b58bc..877275611318d 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 @@ -2431,8 +2431,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5193,10 +5193,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js index 9ddb91f83fd22..88441319cffd4 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js @@ -654,9 +654,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1565,10 +1565,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 57850c81a383d..41b1253dbe927 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 @@ -2491,8 +2491,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5263,10 +5263,10 @@ }, useCacheRefresh: function () { return unsupportedRefresh; - } - }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var currentOwner = null, + }, + useEffectEvent: unsupportedHook + }, + currentOwner = null, DefaultAsyncDispatcher = { getCacheForType: function (resourceType) { var cache = (cache = resolveRequest()) ? cache.cache : new Map(); diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js index 5d881bba9d62b..b143465e89261 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js @@ -646,9 +646,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1564,10 +1564,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 f073720cb5229..58a51d42ace07 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 @@ -2739,8 +2739,8 @@ return renderModelDestructive( request, task, - emptyRoot, - "", + parent, + parentPropertyName, elementReference ); case REACT_LEGACY_ELEMENT_TYPE: @@ -5769,22 +5769,22 @@ }, useCacheRefresh: function () { return unsupportedRefresh; + }, + useEffectEvent: unsupportedHook + }, + DefaultAsyncDispatcher = { + getCacheForType: function (resourceType) { + var cache = (cache = resolveRequest()) ? cache.cache : new Map(); + var entry = cache.get(resourceType); + void 0 === entry && + ((entry = resourceType()), cache.set(resourceType, entry)); + return entry; + }, + cacheSignal: function () { + var request = resolveRequest(); + return request ? request.cacheController.signal : null; } }; - HooksDispatcher.useEffectEvent = unsupportedHook; - var DefaultAsyncDispatcher = { - getCacheForType: function (resourceType) { - var cache = (cache = resolveRequest()) ? cache.cache : new Map(); - var entry = cache.get(resourceType); - void 0 === entry && - ((entry = resourceType()), cache.set(resourceType, entry)); - return entry; - }, - cacheSignal: function () { - var request = resolveRequest(); - return request ? request.cacheController.signal : null; - } - }; DefaultAsyncDispatcher.getOwner = resolveOwner; var ReactSharedInternalsServer = React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE; diff --git a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js index 2b9458e07cc57..71297152c8435 100644 --- a/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js +++ b/packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js @@ -672,9 +672,9 @@ var HooksDispatcher = { }, useCacheRefresh: function () { return unsupportedRefresh; - } + }, + useEffectEvent: unsupportedHook }; -HooksDispatcher.useEffectEvent = unsupportedHook; function unsupportedHook() { throw Error("This Hook is not supported in Server Components."); } @@ -1584,10 +1584,16 @@ function renderModelDestructive( case REACT_LAZY_TYPE: if (3200 < serializedSize) return deferTask(request, task); task.thenableState = null; - parentPropertyName = value._init; - value = parentPropertyName(value._payload); + elementReference = value._init; + value = elementReference(value._payload); if (12 === request.status) throw null; - return renderModelDestructive(request, task, emptyRoot, "", value); + return renderModelDestructive( + request, + task, + parent, + parentPropertyName, + value + ); case REACT_LEGACY_ELEMENT_TYPE: throw Error( 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.' 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 a38b0dc8d3d54..82c87421d54cc 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-bef88f7c-20260116", - "react-dom": "19.3.0-canary-bef88f7c-20260116", + "react": "19.3.0-canary-d2908752-20260119", + "react-dom": "19.3.0-canary-d2908752-20260119", "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 758c4d36476b0..6c58d6193e96d 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-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; "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 32f05ddd7ff16..a0c6d85dcc778 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-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; 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 13cd7fa3b63b1..83e9a668f614b 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-bef88f7c-20260116"; + exports.version = "19.3.0-canary-d2908752-20260119"; })(); 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 8621bb1086584..5f78792270b88 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-bef88f7c-20260116"; +exports.version = "19.3.0-canary-d2908752-20260119"; diff --git a/packages/next/src/compiled/unistore/unistore.js b/packages/next/src/compiled/unistore/unistore.js index e8d288ecd34ae..1d32d699d186a 100644 --- a/packages/next/src/compiled/unistore/unistore.js +++ b/packages/next/src/compiled/unistore/unistore.js @@ -1 +1 @@ -(()=>{var t={251: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={333: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( diff --git a/packages/react-refresh-utils/package.json b/packages/react-refresh-utils/package.json index 9bfa8efbf92f1..7b0e3f0b37a7b 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.1.1-canary.33", + "version": "16.1.1-canary.35", "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 307660d267410..9fffb84225d53 100644 --- a/packages/third-parties/package.json +++ b/packages/third-parties/package.json @@ -1,6 +1,6 @@ { "name": "@next/third-parties", - "version": "16.1.1-canary.33", + "version": "16.1.1-canary.35", "repository": { "url": "vercel/next.js", "directory": "packages/third-parties" @@ -26,7 +26,7 @@ "third-party-capital": "1.0.20" }, "devDependencies": { - "next": "16.1.1-canary.33", + "next": "16.1.1-canary.35", "outdent": "0.8.0", "prettier": "2.5.1", "typescript": "5.9.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8685465e77838..41b8a96f2fd28 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,10 +17,10 @@ overrides: '@types/react-dom': 19.2.1 '@types/retry': 0.12.0 jest-snapshot: 30.0.0-alpha.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 - react-is: 19.3.0-canary-bef88f7c-20260116 - scheduler: 0.28.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 + react-is: 19.3.0-canary-d2908752-20260119 + scheduler: 0.28.0-canary-d2908752-20260119 packageExtensionsChecksum: 2c0398c5f3e8ad5816061c5823d227e9 @@ -77,7 +77,7 @@ importers: version: 11.11.0 '@emotion/react': specifier: 11.11.1 - version: 11.11.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + version: 11.11.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) '@eslint/compat': specifier: 1.4.0 version: 1.4.0(eslint@9.37.0(jiti@2.5.1)) @@ -98,7 +98,7 @@ importers: version: 2.2.1(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))) '@mdx-js/react': specifier: 2.2.1 - version: 2.2.1(react@19.3.0-canary-bef88f7c-20260116) + version: 2.2.1(react@19.3.0-canary-d2908752-20260119) '@next/bundle-analyzer': specifier: workspace:* version: link:packages/next-bundle-analyzer @@ -161,7 +161,7 @@ importers: version: 6.1.2(@jest/globals@29.7.0)(@types/jest@29.5.5)(jest@29.7.0(@types/node@20.17.6(patch_hash=rvl3vkomen3tospgr67bzubfyu))(babel-plugin-macros@3.1.0)) '@testing-library/react': specifier: ^15.0.5 - version: 15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@types/busboy': specifier: 1.5.3 version: 1.5.3 @@ -304,8 +304,8 @@ importers: specifier: 7.37.0 version: 7.37.0(eslint@9.37.0(jiti@2.5.1)) eslint-plugin-react-hooks: - specifier: 0.0.0-experimental-bef88f7c-20260116 - version: 0.0.0-experimental-bef88f7c-20260116(eslint@9.37.0(jiti@2.5.1)) + specifier: 0.0.0-experimental-d2908752-20260119 + version: 0.0.0-experimental-d2908752-20260119(eslint@9.37.0(jiti@2.5.1)) event-stream: specifier: 4.0.1 version: 4.0.1 @@ -481,44 +481,44 @@ importers: specifier: 0.3.0 version: 0.3.0 react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 react-builtin: - specifier: npm:react@19.3.0-canary-bef88f7c-20260116 - version: react@19.3.0-canary-bef88f7c-20260116 + specifier: npm:react@19.3.0-canary-d2908752-20260119 + version: react@19.3.0-canary-d2908752-20260119 react-dom: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) react-dom-builtin: - specifier: npm:react-dom@19.3.0-canary-bef88f7c-20260116 - version: react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: npm:react-dom@19.3.0-canary-d2908752-20260119 + version: react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) react-dom-experimental-builtin: - specifier: npm:react-dom@0.0.0-experimental-bef88f7c-20260116 - version: react-dom@0.0.0-experimental-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: npm:react-dom@0.0.0-experimental-d2908752-20260119 + version: react-dom@0.0.0-experimental-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) react-experimental-builtin: - specifier: npm:react@0.0.0-experimental-bef88f7c-20260116 - version: react@0.0.0-experimental-bef88f7c-20260116 + specifier: npm:react@0.0.0-experimental-d2908752-20260119 + version: react@0.0.0-experimental-d2908752-20260119 react-is-builtin: - specifier: npm:react-is@19.3.0-canary-bef88f7c-20260116 - version: react-is@19.3.0-canary-bef88f7c-20260116 + specifier: npm:react-is@19.3.0-canary-d2908752-20260119 + version: react-is@19.3.0-canary-d2908752-20260119 react-server-dom-turbopack: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) react-server-dom-turbopack-experimental: - specifier: npm:react-server-dom-turbopack@0.0.0-experimental-bef88f7c-20260116 - version: react-server-dom-turbopack@0.0.0-experimental-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + specifier: npm:react-server-dom-turbopack@0.0.0-experimental-d2908752-20260119 + version: react-server-dom-turbopack@0.0.0-experimental-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) react-server-dom-webpack: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))) react-server-dom-webpack-experimental: - specifier: npm:react-server-dom-webpack@0.0.0-experimental-bef88f7c-20260116 - version: react-server-dom-webpack@0.0.0-experimental-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))) + specifier: npm:react-server-dom-webpack@0.0.0-experimental-d2908752-20260119 + version: react-server-dom-webpack@0.0.0-experimental-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))) react-ssr-prepass: specifier: 1.0.8 - version: 1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-bef88f7c-20260116) + version: 1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-d2908752-20260119) react-virtualized: specifier: 9.22.3 - version: 9.22.3(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 9.22.3(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) relay-compiler: specifier: 13.0.2 version: 13.0.2 @@ -541,11 +541,11 @@ importers: specifier: 0.15.2 version: 0.15.2 scheduler-builtin: - specifier: npm:scheduler@0.28.0-canary-bef88f7c-20260116 - version: scheduler@0.28.0-canary-bef88f7c-20260116 + specifier: npm:scheduler@0.28.0-canary-d2908752-20260119 + version: scheduler@0.28.0-canary-d2908752-20260119 scheduler-experimental-builtin: - specifier: npm:scheduler@0.0.0-experimental-bef88f7c-20260116 - version: scheduler@0.0.0-experimental-bef88f7c-20260116 + specifier: npm:scheduler@0.0.0-experimental-d2908752-20260119 + version: scheduler@0.0.0-experimental-d2908752-20260119 seedrandom: specifier: 3.0.5 version: 3.0.5 @@ -563,13 +563,13 @@ importers: version: 6.0.0 styled-jsx: specifier: 5.1.6 - version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-bef88f7c-20260116) + version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119) styled-jsx-plugin-postcss: specifier: 3.0.2 version: 3.0.2 swr: specifier: ^2.2.4 - version: 2.2.4(react@19.3.0-canary-bef88f7c-20260116) + version: 2.2.4(react@19.3.0-canary-d2908752-20260119) tailwindcss: specifier: 3.2.7 version: 3.2.7(postcss@8.4.31) @@ -623,22 +623,22 @@ importers: dependencies: '@radix-ui/react-dialog': specifier: 1.1.4 - version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@radix-ui/react-popover': specifier: 1.1.4 - version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@radix-ui/react-select': specifier: 2.2.6 - version: 2.2.6(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 2.2.6(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@radix-ui/react-slot': specifier: 1.1.1 - version: 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + version: 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) '@radix-ui/react-toggle-group': specifier: 1.1.1 - version: 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@radix-ui/react-tooltip': specifier: 1.1.4 - version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) autoprefixer: specifier: ^10.4.20 version: 10.4.21(postcss@8.5.3) @@ -650,28 +650,28 @@ importers: version: 2.1.1 cmdk: specifier: 1.0.4 - version: 1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) lucide-react: specifier: ^0.554.0 - version: 0.554.0(react@19.3.0-canary-bef88f7c-20260116) + version: 0.554.0(react@19.3.0-canary-d2908752-20260119) next: specifier: 16.0.8 - version: 16.0.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8) + version: 16.0.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8) next-themes: specifier: ^0.4.6 - version: 0.4.6(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 0.4.6(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) polished: specifier: ^4.3.1 version: 4.3.1 react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 react-dom: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) swr: specifier: ^2.2.4 - version: 2.2.4(react@19.3.0-canary-bef88f7c-20260116) + version: 2.2.4(react@19.3.0-canary-d2908752-20260119) tailwind-merge: specifier: ^2.5.5 version: 2.6.0 @@ -714,22 +714,22 @@ importers: dependencies: fumadocs-core: specifier: 15.7.12 - version: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) fumadocs-mdx: specifier: 11.10.0 - version: 11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116))(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react@19.3.0-canary-bef88f7c-20260116) + version: 11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119))(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react@19.3.0-canary-d2908752-20260119) fumadocs-ui: specifier: 15.7.12 - version: 15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(tailwindcss@4.1.13) + version: 15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(tailwindcss@4.1.13) next: specifier: 15.5.8 - version: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8) + version: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8) react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 react-dom: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) devDependencies: '@eslint/eslintrc': specifier: ^3 @@ -1008,7 +1008,7 @@ importers: packages/eslint-config-next: dependencies: '@next/eslint-plugin-next': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../eslint-plugin-next eslint: specifier: '>=9.0.0' @@ -1085,7 +1085,7 @@ importers: packages/next: dependencies: '@next/env': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../next-env '@swc/helpers': specifier: 0.5.15 @@ -1100,17 +1100,17 @@ importers: specifier: 8.4.31 version: 8.4.31 react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 react-dom: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) sass: specifier: ^1.3.0 version: 1.77.8 styled-jsx: specifier: 5.1.6 - version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-bef88f7c-20260116) + version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: sharp: specifier: ^0.34.5 @@ -1181,7 +1181,7 @@ importers: version: 7.27.0 '@base-ui-components/react': specifier: 1.0.0-beta.2 - version: 1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + version: 1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@capsizecss/metrics': specifier: 3.4.0 version: 3.4.0 @@ -1213,19 +1213,19 @@ importers: specifier: 1.2.0 version: 1.2.0 '@next/font': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../font '@next/polyfill-module': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../next-polyfill-module '@next/polyfill-nomodule': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../next-polyfill-nomodule '@next/react-refresh-utils': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../react-refresh-utils '@next/swc': - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../next-swc '@opentelemetry/api': specifier: 1.6.0 @@ -1250,13 +1250,13 @@ importers: version: 3.0.0(@swc/helpers@0.5.15)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)) '@storybook/blocks': specifier: 8.6.0 - version: 8.6.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2)) + version: 8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2)) '@storybook/react': specifier: 8.6.0 - version: 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + version: 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) '@storybook/react-webpack5': specifier: 8.6.0 - version: 8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + version: 8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) '@storybook/test': specifier: 8.6.0 version: 8.6.0(storybook@8.6.0(prettier@3.6.2)) @@ -1754,7 +1754,7 @@ importers: version: 1.0.35 unistore: specifier: 3.4.1 - version: 3.4.1(react@19.3.0-canary-bef88f7c-20260116) + version: 3.4.1(react@19.3.0-canary-d2908752-20260119) util: specifier: 0.12.4 version: 0.12.4 @@ -1936,14 +1936,14 @@ importers: packages/third-parties: dependencies: react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 third-party-capital: specifier: 1.0.20 version: 1.0.20 devDependencies: next: - specifier: 16.1.1-canary.33 + specifier: 16.1.1-canary.35 version: link:../next outdent: specifier: 0.8.0 @@ -2000,14 +2000,14 @@ importers: specifier: 29.5.0 version: 29.5.0 react: - specifier: 19.3.0-canary-bef88f7c-20260116 - version: 19.3.0-canary-bef88f7c-20260116 + specifier: 19.3.0-canary-d2908752-20260119 + version: 19.3.0-canary-d2908752-20260119 react-test-renderer: specifier: 18.2.0 - version: 18.2.0(react@19.3.0-canary-bef88f7c-20260116) + version: 18.2.0(react@19.3.0-canary-d2908752-20260119) 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-bef88f7c-20260116) + version: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119) turbopack/packages/devlow-bench: dependencies: @@ -2895,8 +2895,8 @@ packages: engines: {node: '>=14.0.0'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -2905,8 +2905,8 @@ packages: resolution: {integrity: sha512-9+uaWyF1o/PgXqHLJnC81IIG0HlV3o9eFCQ5hWZDMx5NHrFk0rrwqEFGQOB8lti/rnbxNPi+kYYw1D4e8xSn/Q==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -3061,7 +3061,7 @@ packages: resolution: {integrity: sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -3078,7 +3078,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks@1.0.1': resolution: {integrity: sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@emotion/utils@1.2.1': resolution: {integrity: sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==} @@ -3583,20 +3583,20 @@ packages: '@floating-ui/react-dom@2.1.0': resolution: {integrity: sha512-lNzj5EQmEKn5FFKc04+zasr09h/uX8RtJRNj5gUXsSQIXHVWTVh+hVAg1vOMCexkX8EgvemMvIFpQfkosnVNyA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 '@floating-ui/react-dom@2.1.5': resolution: {integrity: sha512-HDO/1/1oH9fjj4eLgegrlH3dklZpHtUYYFiVwMUwfGvk9jWDRWqkklA2/NFScknrcNSspbV868WjXORvreDX+Q==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 '@floating-ui/react@0.26.16': resolution: {integrity: sha512-HEf43zxZNAI/E781QIVpYSF3K2VH4TTYZpqecjdsFkjsaU1EbaWcM++kw0HXFffj7gDUcBFevX8s0rQGQpxkow==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 '@floating-ui/utils@0.2.10': resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} @@ -4313,13 +4313,13 @@ packages: resolution: {integrity: sha512-l9ypojKN3PjwO1CSLIsqxi7mA25+7w+xc71Q+JuCCREI0tuGwkZsKbIOpuTATIJOjPh8ycLiW7QxX1LYsRTq6w==} peerDependencies: '@mantine/hooks': 7.10.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 '@mantine/hooks@7.11.2': resolution: {integrity: sha512-jhyVe/sbDEG2U8rr2lMecUPgQxcfr5hh9HazqGfkS7ZRIMDO7uJ947yAcTMGGkp5Lxtt5TBFt1Cb6tiB2/1agg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@mapbox/node-pre-gyp@1.0.5': resolution: {integrity: sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==} @@ -4339,13 +4339,13 @@ packages: '@mdx-js/react@2.2.1': resolution: {integrity: sha512-YdXcMcEnqZhzql98RNrqYo9cEhTTesBiCclEtoiQUbJwx87q9453GTapYU6kJ8ZZ2ek1Vp25SiAXEFy5O/eAPw==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@mdx-js/react@3.1.0': resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@modelcontextprotocol/sdk@1.18.1': resolution: {integrity: sha512-d//GE8/Yh7aC3e7p+kZG8JqqEAwwDUmAfvH1quogtbk+ksS6E0RR6toKKESPYYZVre0meqkJb27zb+dhqE9Sgw==} @@ -5016,8 +5016,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5029,8 +5029,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5042,8 +5042,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5055,8 +5055,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5068,8 +5068,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5081,8 +5081,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5094,8 +5094,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5106,7 +5106,7 @@ packages: resolution: {integrity: sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5115,7 +5115,7 @@ packages: resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5124,7 +5124,7 @@ packages: resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5133,7 +5133,7 @@ packages: resolution: {integrity: sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5142,7 +5142,7 @@ packages: resolution: {integrity: sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5151,7 +5151,7 @@ packages: resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5161,8 +5161,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5174,8 +5174,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5186,7 +5186,7 @@ packages: resolution: {integrity: sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5195,7 +5195,7 @@ packages: resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5205,8 +5205,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5218,8 +5218,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5231,8 +5231,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5243,7 +5243,7 @@ packages: resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5252,7 +5252,7 @@ packages: resolution: {integrity: sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5262,8 +5262,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5275,8 +5275,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5287,7 +5287,7 @@ packages: resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5296,7 +5296,7 @@ packages: resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5306,8 +5306,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5319,8 +5319,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5332,8 +5332,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5345,8 +5345,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5358,8 +5358,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5371,8 +5371,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5384,8 +5384,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5397,8 +5397,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5410,8 +5410,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5423,8 +5423,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5436,8 +5436,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5449,8 +5449,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5462,8 +5462,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5475,8 +5475,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5488,8 +5488,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5501,8 +5501,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5514,8 +5514,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5527,8 +5527,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5540,8 +5540,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5552,7 +5552,7 @@ packages: resolution: {integrity: sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5561,7 +5561,7 @@ packages: resolution: {integrity: sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5570,7 +5570,7 @@ packages: resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5580,8 +5580,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5593,8 +5593,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5606,8 +5606,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5619,8 +5619,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5631,7 +5631,7 @@ packages: resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5640,7 +5640,7 @@ packages: resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5649,7 +5649,7 @@ packages: resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5658,7 +5658,7 @@ packages: resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5667,7 +5667,7 @@ packages: resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5676,7 +5676,7 @@ packages: resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5685,7 +5685,7 @@ packages: resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5694,7 +5694,7 @@ packages: resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5703,7 +5703,7 @@ packages: resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5712,7 +5712,7 @@ packages: resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5721,7 +5721,7 @@ packages: resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5730,7 +5730,7 @@ packages: resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5739,7 +5739,7 @@ packages: resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5748,7 +5748,7 @@ packages: resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5758,8 +5758,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -5771,8 +5771,8 @@ packages: peerDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -6076,8 +6076,8 @@ packages: '@storybook/blocks@8.6.0': resolution: {integrity: sha512-3PNxlB5Ooj8CIhttbDxeV6kW7ui+2GEdTngtqhnsUHVjzeTKpilsk2lviOeUzqlyq5FDK+rhpZ3L3DJ9pDvioA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 storybook: ^8.6.0 peerDependenciesMeta: react: @@ -6127,8 +6127,8 @@ packages: resolution: {integrity: sha512-Nz/UzeYQdUZUhacrPyfkiiysSjydyjgg/p0P9HxB4p/WaJUUjMAcaoaLgy3EXx61zZJ3iD36WPuDkZs5QYrA0A==} engines: {node: '>=14.0.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 '@storybook/instrumenter@8.6.0': resolution: {integrity: sha512-eEY/Hfa3Vj5Nv4vHRHlSqjoyW6oAKNK3rKIXfL/eawQwb7rKhzijDLG5YBH44Hh7dEPIqUp0LEdgpyIY7GXezg==} @@ -6144,8 +6144,8 @@ packages: resolution: {integrity: sha512-04T86VG0UJtiozgZkTR5sY1qM3E0Rgwqwllvyy7kFFdkV+Sv/VsPjW9sC38s9C8FtCYRL8pJZz81ey3oylpIMA==} engines: {node: '>=18.0.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 storybook: ^8.6.0 typescript: '*' peerDependenciesMeta: @@ -6166,16 +6166,16 @@ packages: '@storybook/react-dom-shim@8.6.0': resolution: {integrity: sha512-5Y+vMHhcx0xnaNsLQMbkmjc3zkDn/fGBNsiLH2e4POvW3ZQvOxjoyxAsEQaKwLtFgsdCFSd2tR89F6ItYrA2JQ==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 storybook: ^8.6.0 '@storybook/react-webpack5@8.6.0': resolution: {integrity: sha512-2L9CYDPn1OL0B8K5EU/Wpo9Slg8f0vkYPaPioQnmcK3Q4SJR4JAuDVWHUtNdxhaPOkHIy887Tfrf6BEC/blMaQ==} engines: {node: '>=18.0.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 storybook: ^8.6.0 typescript: '>= 4.2.x' peerDependenciesMeta: @@ -6187,8 +6187,8 @@ packages: engines: {node: '>=18.0.0'} peerDependencies: '@storybook/test': 8.6.0 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 storybook: ^8.6.0 typescript: '>= 4.2.x' peerDependenciesMeta: @@ -6456,8 +6456,8 @@ packages: engines: {node: '>=18'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -8395,8 +8395,8 @@ packages: cmdk@1.0.4: resolution: {integrity: sha512-AnsjfHyHpQ/EFeAnG216WY7A5LiYCoZzCSygiLvfXC3H3LFGCprErteUcszaVluGOhuOTbJS3jWHrSDYPBBygg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 co@4.6.0: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} @@ -10062,8 +10062,8 @@ packages: peerDependencies: eslint: '>=8.0.0' - eslint-plugin-react-hooks@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-NlzhHRkUSYAwR6z8tgi1Hat/nUmqcUy2fOK6N4AcBpceSYWjp1yNj/IjghmXzHo1UI/Epy6a0RWzGBAHmsRBSw==} + eslint-plugin-react-hooks@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-PwIzyQWWst/tTgHObMqd72TBnFFAFkDuHzmcZkORNV1a6AaPIhPnjCfqqx0oIYhudjyYrlW2BdshXsKKS/TmMg==} engines: {node: '>=18'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 @@ -10712,8 +10712,8 @@ packages: '@types/react': 19.2.2 algoliasearch: 5.x.x next: 14.x.x || 15.x.x - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 react-router: 7.x.x waku: ^0.26.0 peerDependenciesMeta: @@ -10745,7 +10745,7 @@ packages: '@fumadocs/mdx-remote': ^1.4.0 fumadocs-core: ^14.0.0 || ^15.0.0 next: ^15.3.0 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 vite: 6.x.x || 7.x.x peerDependenciesMeta: '@fumadocs/mdx-remote': @@ -10762,8 +10762,8 @@ packages: peerDependencies: '@types/react': 19.2.2 next: 14.x.x || 15.x.x - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 tailwindcss: ^3.4.14 || ^4.0.0 peerDependenciesMeta: '@types/react': @@ -13092,12 +13092,12 @@ packages: lucide-react@0.383.0: resolution: {integrity: sha512-13xlG0CQCJtzjSQYwwJ3WRqMHtRj3EXmLlorrARt7y+IHnxUCp3XyFNL1DfaGySWxHObDvnu1u1dV+0VMKHUSg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 lucide-react@0.554.0: resolution: {integrity: sha512-St+z29uthEJVx0Is7ellNkgTEhaeSoA42I7JjOCBCrc5X6LYMGSv0P/2uS5HDLTExP5tpiqRD2PyUEOS6s9UXA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} @@ -13893,8 +13893,8 @@ packages: next-themes@0.4.6: resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 next-tick@1.0.0: resolution: {integrity: sha512-mc/caHeUcdjnC/boPWJefDr4KUIWQNv+tlnFnJd38QMou86QtxQzBJfxgGRzvx8jazYRqrVlaHarfO72uNxPOg==} @@ -13908,8 +13908,8 @@ packages: '@opentelemetry/api': ^1.1.0 '@playwright/test': ^1.51.1 babel-plugin-react-compiler: '*' - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 sass: ^1.3.0 peerDependenciesMeta: '@opentelemetry/api': @@ -13930,8 +13930,8 @@ packages: '@opentelemetry/api': ^1.1.0 '@playwright/test': ^1.51.1 babel-plugin-react-compiler: '*' - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 sass: ^1.3.0 peerDependenciesMeta: '@opentelemetry/api': @@ -15823,23 +15823,23 @@ packages: resolution: {integrity: sha512-APPU8HB2uZnpl6Vt/+0AFoVYgSRtfiP6FLrZgPPTDmqSb2R4qZRbgd0A3VzIFxDt5e+Fozjx79WjLWnF69DK8g==} engines: {node: '>=16.14.0'} - react-dom@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-R7PJceI2mqPWe3qfLArvtp5FlCflKqVp4nwubqROYZ/qHCfZRhY6t5pW81e2eBzpZsafKtuF1yQbziJkVGv/TQ==} + react-dom@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-jm2r9Ny+gXQ0ZPIP4F4zEFtgxyBBXQRok0ZcO1uX/4mOu4K0FbuFKQfcqj/8CZ6wE6CbVyt5AxnMFhDTHKXwgg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 - react-dom@19.3.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-mPS5FRdF5YvZDmMXeOxOwC7DsjqvYnx2b+NDHx6XSkJcoy3LNyw6uwoiajO1bR2eYbbnDOAycRN2V5ht5WHoLw==} + react-dom@19.3.0-canary-d2908752-20260119: + resolution: {integrity: sha512-OlA7LXBhWscYEZMM+K4AqUxTmX08G5Hf2Cd0qutQGu8Hvp3cHl4G9Hgb7evW7X53l8S/Eyij6y0UeyntJQ6WAA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-dom@19.3.0-canary-fd524fe0-20251121: resolution: {integrity: sha512-+M3m+8ysDcPmt7ncitPOX5O71OOKF6lq6INFZFUMJjEGDxvl4CS2D41DJG5MnXcwiWTZLAp/uILZtt4sKTRSyQ==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 - react-is@19.3.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-Ovxb95Ir6eyWpOwbGUvWNWrf+gOe41UtcsD4m6Ze+Kdmbqx/P0IhUFr5oHDd6/yY2Ii7Z13VGB/ZVtqrv76sCw==} + react-is@19.3.0-canary-d2908752-20260119: + resolution: {integrity: sha512-boDMxJH0JnS8VZZpEacxfKo4PN/xeKck8WqxseEGtJ9o9NpGeb0IbAHZ3oqGxsGl71S2R0TrH+eFCc8ZVyxSUQ==} react-is@19.3.0-canary-fd524fe0-20251121: resolution: {integrity: sha512-06VG41yCv5V7FPCLxo4hBaiLEoReJ35LK9VvEqveBJq5cbEhakZznJLnPU1oJ3CCrL4DyBsPXw9EiYlrOL8c3Q==} @@ -15850,14 +15850,14 @@ packages: react-medium-image-zoom@5.3.0: resolution: {integrity: sha512-RCIzVlsKqy3BYgGgYbolUfuvx0aSKC7YhX/IJGEp+WJxsqdIVYJHkBdj++FAj6VD7RiWj6VVmdCfa/9vJE9hZg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 react-number-format@5.4.0: resolution: {integrity: sha512-NWdICrqLhI7rAS8yUeLVd6Wr4cN7UjJ9IBTS0f/a9i7UB4x4Ti70kGnksBtZ7o4Z7YRbvCMMR/jQmkoOBa/4fg==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 react-refresh@0.12.0: resolution: {integrity: sha512-suLIhrU2IHKL5JEKR/fAwJv7bbeq4kJ+pJopf77jHwuR+HmJS/HbrPIGsTBUVfw7tXPOmYv7UJ7PCaN49e8x4A==} @@ -15868,7 +15868,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -15878,7 +15878,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -15888,7 +15888,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -15898,58 +15898,58 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true - react-server-dom-turbopack@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-IEzXHa2zAjne2RO9PLMEZt5WcxBtcFrxYWY7q6H8JkIHkUV5vBrnVAoQX1BvoxlBDPuuYTLfuKj3yVvPHeGAOw==} + react-server-dom-turbopack@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-jjL9lqrZUrb2Ea5u1/cEBzmU8J30STTj+6w6hI5edFcOYTA1bsMfOZypynozPQS4yxrS+cU8Xaa97PDuGgYMvQ==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 - react-server-dom-turbopack@19.3.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-P1xxqdZUxAyUim7i6XDE7V7i/jIYCe8Q60FcUlSM4v+NLhr1NLqD+gZzfpHpd6YaxCuHIp0yRifATrwZHsEzMg==} + react-server-dom-turbopack@19.3.0-canary-d2908752-20260119: + resolution: {integrity: sha512-8e5H1d8CngVos1VvBGdrdjEZ1KbSV9viijKP5QQPlAHp6yuRfZ/7lF8jIncs8kuyuohFwdN039x5kTC178XHWw==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 - react-server-dom-webpack@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-JyHWeKy7bZg3drRyV6aU3qxmCfWlA1S/DBeyCFWge/ry+ktgaydhLct7ULnk9hUJvslxuD4NUdou+iw0NDEi6g==} + react-server-dom-webpack@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-pxwbY/5mTGY8OnYtKm014AYAz4cPiLLOUFi6YbsBh9w/MCUu2CGZtKEqafZgxNJDTP4yR+sttvBYvBD4OzHzhQ==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 webpack: 5.98.0 - react-server-dom-webpack@19.3.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-zi26SqNz+++I21+WmDMBgcZ6hqQnR5Bex0ksZfBIXS08tM0dEYLYfKARzdpPXYUHaXrlJIVdhMgaLvX13/UeRQ==} + react-server-dom-webpack@19.3.0-canary-d2908752-20260119: + resolution: {integrity: sha512-Y6uLLapemzYfSrDtMkNoB+gjvaQldGvvoRfoZvJFix/TwVR5wWGwvyzeNw8/Bbp32Q7+Jr9ghxyiLuY4Gd8iVA==} engines: {node: '>=0.10.0'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 webpack: 5.98.0 react-shallow-renderer@16.15.0: resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-ssr-prepass@1.0.8: resolution: {integrity: sha512-O0gfRA1SaK+9ITKxqfnXsej2jF+OHGP/+GxD4unROQaM/0/UczGF9fuF+wTboxaQoKdIf4FvS3h/OigWh704VA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-is: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-is: 19.3.0-canary-d2908752-20260119 react-style-singleton@2.2.1: resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -15959,7 +15959,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -15967,26 +15967,26 @@ packages: react-test-renderer@18.2.0: resolution: {integrity: sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-textarea-autosize@8.5.3: resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} engines: {node: '>=10'} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-virtualized@9.22.3: resolution: {integrity: sha512-MKovKMxWTcwPSxE1kK1HcheQTWfuCxAuBoSTf2gwyMM21NdX/PXUhnoP8Uc5dRKd+nKm8v41R36OellhdCpkrw==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119 - react@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-Az/6X9UOT+Xb8e7om1Jk/IF7ubGc1+cX0+gpoH/DEcKQH4Yz0JckTSaOvLn/COvK0SFlar9wBP+5uGkmwOoBLA==} + react@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-QVj/NX4O7HZ/RFBfvIEtlDq/vkIhJtaruGBpX0QSTGpjqADCb3VSPaliwUQEgu/VpSDimEZgXBTwVg2ti901HA==} engines: {node: '>=0.10.0'} - react@19.3.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-LR13FdiRCHmt7kAKbZyj45LGGoYbQoiULsEWgVjkaIWT6d4exh/6OCdCUxuu8asVbd2vo3kpvvzaBRCLQ7oE3w==} + react@19.3.0-canary-d2908752-20260119: + resolution: {integrity: sha512-LeCk1lP/SLGVVB/kDw13ls/OszLcHdIWMNlhGsMaxeTVGCx9uz/9BZkBLTmxednNQeqNyLy8MARpzMs4xbfE1Q==} engines: {node: '>=0.10.0'} react@19.3.0-canary-fd524fe0-20251121: @@ -16593,11 +16593,11 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.0.0-experimental-bef88f7c-20260116: - resolution: {integrity: sha512-63kuIj5jx/5tMMRHFBhLWy1InJsvv2rJa+nCKFrNyat5pji2fx5cWrxmZ/0buQAn1cKWs8GjqModGsOZwlweLQ==} + scheduler@0.0.0-experimental-d2908752-20260119: + resolution: {integrity: sha512-CVNnuY1ENiyNxuaGgaV8zZnHe2w9IV7DsiwKfaEv14Hr6IQ8ZlrLwwhV+ey3o8i7OWz0n1n0GkGG3DPsG4xV7Q==} - scheduler@0.28.0-canary-bef88f7c-20260116: - resolution: {integrity: sha512-tUEFippF+5hnb3kQwTf6Dqj0uVRgtt50Zrd35odAz/QIhTHHwQCxrXUllM13W0Y4+UpPFtyH7Lf92mrErlftXw==} + scheduler@0.28.0-canary-d2908752-20260119: + resolution: {integrity: sha512-znKT5MJ6xngdX11+2iufeOYgRhjX5p48868JP06uXcTLWNNFTuDc9SQNg5hnGpy+lA5CpemBBGNOFJv3fKdpcw==} schema-utils@2.7.1: resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} @@ -17282,7 +17282,7 @@ packages: peerDependencies: '@babel/core': '*' babel-plugin-macros: '*' - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@babel/core': optional: true @@ -17369,7 +17369,7 @@ packages: swr@2.2.4: resolution: {integrity: sha512-njiZ/4RiIhoOlAaLYDqwz5qH/KZXVilRLvomrx83HjzCWTfa+InyfAjv05PSFxnmLzZkNO9ZfvgoqzAaEI4sGQ==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 symbol-observable@1.0.1: resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==} @@ -18232,7 +18232,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18242,7 +18242,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18250,13 +18250,13 @@ packages: use-composed-ref@1.3.0: resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 use-isomorphic-layout-effect@1.1.2: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18265,7 +18265,7 @@ packages: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18275,7 +18275,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18285,7 +18285,7 @@ packages: engines: {node: '>=10'} peerDependencies: '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 peerDependenciesMeta: '@types/react': optional: true @@ -18293,7 +18293,7 @@ packages: use-sync-external-store@1.5.0: resolution: {integrity: sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A==} peerDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -19908,28 +19908,28 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@base-ui-components/react@1.0.0-beta.2(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@babel/runtime': 7.27.6 - '@base-ui-components/utils': 0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + '@base-ui-components/utils': 0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) reselect: 5.1.1 tabbable: 6.2.0 - use-sync-external-store: 1.5.0(react@19.3.0-canary-bef88f7c-20260116) + use-sync-external-store: 1.5.0(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 - '@base-ui-components/utils@0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@base-ui-components/utils@0.1.0(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@babel/runtime': 7.27.6 '@floating-ui/utils': 0.2.10 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) reselect: 5.1.1 - use-sync-external-store: 1.5.0(react@19.3.0-canary-bef88f7c-20260116) + use-sync-external-store: 1.5.0(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 @@ -20102,17 +20102,17 @@ snapshots: '@emotion/memoize@0.8.1': {} - '@emotion/react@11.11.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@emotion/react@11.11.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': 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-bef88f7c-20260116) + '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@19.3.0-canary-d2908752-20260119) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 hoist-non-react-statics: 3.3.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 transitivePeerDependencies: @@ -20130,9 +20130,9 @@ snapshots: '@emotion/unitless@0.8.1': {} - '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-bef88f7c-20260116)': + '@emotion/use-insertion-effect-with-fallbacks@1.0.1(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@emotion/utils@1.2.1': {} @@ -20555,11 +20555,11 @@ snapshots: react: 19.3.0-canary-fd524fe0-20251121 react-dom: 19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121) - '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@floating-ui/react-dom@2.1.5(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@floating-ui/dom': 1.7.3 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) '@floating-ui/react@0.26.16(react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121))(react@19.3.0-canary-fd524fe0-20251121)': dependencies: @@ -21519,11 +21519,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@mdx-js/react@2.2.1(react@19.3.0-canary-bef88f7c-20260116)': + '@mdx-js/react@2.2.1(react@19.3.0-canary-d2908752-20260119)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@mdx-js/react@2.2.1(react@19.3.0-canary-fd524fe0-20251121)': dependencies: @@ -21531,11 +21531,11 @@ snapshots: '@types/react': 19.2.2 react: 19.3.0-canary-fd524fe0-20251121 - '@mdx-js/react@3.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@mdx-js/react@3.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.2.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 '@modelcontextprotocol/sdk@1.18.1': dependencies: @@ -22305,749 +22305,749 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-accordion@1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-arrow@1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-arrow@1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-collapsible@1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-collection@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-compose-refs@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-compose-refs@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-context@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-context@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-context@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-context@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-context@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-context@1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) aria-hidden: 1.2.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) aria-hidden: 1.2.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-direction@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-direction@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-direction@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-direction@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-focus-guards@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-id@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-id@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-id@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-id@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-popover@1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) aria-hidden: 1.2.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-popover@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) aria-hidden: 1.2.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popper@1.2.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-arrow': 1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-popper@1.2.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-arrow': 1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-popper@1.2.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': - dependencies: - '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': + dependencies: + '@floating-ui/react-dom': 2.1.5(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-portal@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-portal@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-portal@1.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-presence@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-presence@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-primitive@2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-primitive@2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-slot': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-slot': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-slot': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-scroll-area@1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-scroll-area@1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/number': 1.1.1 '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-select@2.2.6(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': 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.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) aria-hidden: 1.2.6 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-slot@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-slot@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-slot@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-slot@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-slot@1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-slot@1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-tabs@1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-context': 1.1.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-tooltip@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-tooltip@1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-popper': 1.2.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-portal': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-context': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-portal': 1.1.2(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.1(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-rect@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/rect': 1.1.0 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: '@radix-ui/rect': 1.1.1 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-size@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-size@1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-use-size@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-use-size@1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@types/react': 19.2.2 - '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) - '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 '@types/react-dom': 19.2.1(@types/react@19.2.2) @@ -23345,12 +23345,12 @@ snapshots: '@storybook/addon-docs@8.6.0(@types/react@19.2.2)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@mdx-js/react': 3.1.0(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2)) + '@mdx-js/react': 3.1.0(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@storybook/blocks': 8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(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-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2)) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2)) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 transitivePeerDependencies: @@ -23415,14 +23415,14 @@ snapshots: - '@swc/helpers' - webpack - '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/blocks@8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))': dependencies: - '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + '@storybook/icons': 1.3.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) storybook: 8.6.0(prettier@3.6.2) ts-dedent: 2.2.0 optionalDependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) '@storybook/builder-webpack5@8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: @@ -23501,10 +23501,10 @@ snapshots: '@storybook/global@5.0.0': {} - '@storybook/icons@1.3.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@storybook/icons@1.3.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) '@storybook/instrumenter@8.6.0(storybook@8.6.0(prettier@3.6.2))': dependencies: @@ -23516,17 +23516,17 @@ snapshots: dependencies: storybook: 8.6.0(prettier@3.6.2) - '@storybook/preset-react-webpack@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/preset-react-webpack@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/core-webpack': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.9.2)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)) '@types/semver': 7.5.6 find-up: 5.0.0 magic-string: 0.30.19 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-docgen: 7.1.0 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) resolve: 1.22.10 semver: 7.6.3 storybook: 8.6.0(prettier@3.6.2) @@ -23560,19 +23560,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))': + '@storybook/react-dom-shim@8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))': dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) storybook: 8.6.0(prettier@3.6.2) - '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/react-webpack5@8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/builder-webpack5': 8.6.0(@rspack/core@1.6.7(@swc/helpers@0.5.15))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - '@storybook/preset-react-webpack': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + '@storybook/preset-react-webpack': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + '@storybook/react': 8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: typescript: 5.9.2 @@ -23585,16 +23585,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-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': + '@storybook/react@8.6.0(@storybook/test@8.6.0(storybook@8.6.0(prettier@3.6.2)))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(storybook@8.6.0(prettier@3.6.2))(typescript@5.9.2)': dependencies: '@storybook/components': 8.6.0(storybook@8.6.0(prettier@3.6.2)) '@storybook/global': 5.0.0 '@storybook/manager-api': 8.6.0(storybook@8.6.0(prettier@3.6.2)) '@storybook/preview-api': 8.6.0(storybook@8.6.0(prettier@3.6.2)) - '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(storybook@8.6.0(prettier@3.6.2)) + '@storybook/react-dom-shim': 8.6.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(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-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) storybook: 8.6.0(prettier@3.6.2) optionalDependencies: '@storybook/test': 8.6.0(storybook@8.6.0(prettier@3.6.2)) @@ -23872,13 +23872,13 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/react@15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)': + '@testing-library/react@15.0.7(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)': dependencies: '@babel/runtime': 7.27.0 '@testing-library/dom': 10.1.0 '@types/react-dom': 19.2.1(@types/react@19.2.2) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 @@ -26116,14 +26116,14 @@ snapshots: cmd-shim@7.0.0: {} - cmdk@1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + cmdk@1.0.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: - '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - use-sync-external-store: 1.5.0(react@19.3.0-canary-bef88f7c-20260116) + '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-id': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + use-sync-external-store: 1.5.0(react@19.3.0-canary-d2908752-20260119) transitivePeerDependencies: - '@types/react' - '@types/react-dom' @@ -28157,7 +28157,7 @@ snapshots: - bluebird - supports-color - eslint-plugin-react-hooks@0.0.0-experimental-bef88f7c-20260116(eslint@9.37.0(jiti@2.5.1)): + eslint-plugin-react-hooks@0.0.0-experimental-d2908752-20260119(eslint@9.37.0(jiti@2.5.1)): dependencies: '@babel/core': 7.26.10 '@babel/parser': 7.27.0 @@ -29115,7 +29115,7 @@ snapshots: fsevents@2.3.3: optional: true - fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: '@formatjs/intl-localematcher': 0.6.1 '@orama/orama': 3.1.13 @@ -29127,7 +29127,7 @@ snapshots: image-size: 2.0.2 negotiator: 1.0.0 npm-to-yarn: 3.0.1 - react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react-remove-scroll: 2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) remark: 15.0.1 remark-gfm: 4.0.1 remark-rehype: 11.1.2 @@ -29136,20 +29136,20 @@ snapshots: unist-util-visit: 5.0.0 optionalDependencies: '@types/react': 19.2.2 - next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8) - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) transitivePeerDependencies: - supports-color - fumadocs-mdx@11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116))(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react@19.3.0-canary-bef88f7c-20260116): + fumadocs-mdx@11.10.0(fumadocs-core@15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119))(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react@19.3.0-canary-d2908752-20260119): dependencies: '@mdx-js/mdx': 3.1.1 '@standard-schema/spec': 1.0.0 chokidar: 4.0.3 esbuild: 0.25.9 estree-util-value-to-estree: 3.5.0 - fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) js-yaml: 4.1.0 lru-cache: 11.2.1 picocolors: 1.1.1 @@ -29161,36 +29161,36 @@ snapshots: unist-util-visit: 5.0.0 zod: 4.1.13 optionalDependencies: - next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8) - react: 19.3.0-canary-bef88f7c-20260116 + next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8) + react: 19.3.0-canary-d2908752-20260119 transitivePeerDependencies: - supports-color - fumadocs-ui@15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(tailwindcss@4.1.13): - dependencies: - '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-popover': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + fumadocs-ui@15.7.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(tailwindcss@4.1.13): + dependencies: + '@radix-ui/react-accordion': 1.2.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-direction': 1.1.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-popover': 1.1.15(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-slot': 1.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + '@radix-ui/react-tabs': 1.1.13(@types/react-dom@19.2.1(@types/react@19.2.2))(@types/react@19.2.2)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) class-variance-authority: 0.7.1 - fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8))(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + fumadocs-core: 15.7.12(@types/react@19.2.2)(next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8))(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) lodash.merge: 4.6.2 - next-themes: 0.4.6(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + next-themes: 0.4.6(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) postcss-selector-parser: 7.1.0 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - react-medium-image-zoom: 5.3.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + react-medium-image-zoom: 5.3.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119) scroll-into-view-if-needed: 3.1.0 tailwind-merge: 3.3.1 optionalDependencies: '@types/react': 19.2.2 - next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8) + next: 15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8) tailwindcss: 4.1.13 transitivePeerDependencies: - '@mixedbread/sdk' @@ -29862,7 +29862,7 @@ snapshots: hoist-non-react-statics@3.3.2: dependencies: - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 homedir-polyfill@1.0.3: dependencies: @@ -32135,9 +32135,9 @@ snapshots: dependencies: react: 19.3.0-canary-fd524fe0-20251121 - lucide-react@0.554.0(react@19.3.0-canary-bef88f7c-20260116): + lucide-react@0.554.0(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 lz-string@1.5.0: {} @@ -33495,22 +33495,22 @@ snapshots: dependencies: inherits: 2.0.4 - next-themes@0.4.6(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + next-themes@0.4.6(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) next-tick@1.0.0: {} - next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8): + next@15.5.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8): dependencies: '@next/env': 15.5.8 '@swc/helpers': 0.5.15 caniuse-lite: 1.0.30001746 postcss: 8.4.31 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@next/swc-darwin-arm64': 15.5.7 '@next/swc-darwin-x64': 15.5.7 @@ -33529,15 +33529,15 @@ snapshots: - '@babel/core' - babel-plugin-macros - next@16.0.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(sass@1.77.8): + next@16.0.8(@babel/core@7.26.10)(@opentelemetry/api@1.6.0)(@playwright/test@1.51.1)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@0.0.0-experimental-3fde738-20250918)(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(sass@1.77.8): dependencies: '@next/env': 16.0.8 '@swc/helpers': 0.5.15 caniuse-lite: 1.0.30001746 postcss: 8.4.31 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) - styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) + styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@next/swc-darwin-arm64': 16.0.8 '@next/swc-darwin-x64': 16.0.8 @@ -35373,31 +35373,31 @@ snapshots: dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 pretty-format@29.5.0: dependencies: '@jest/schemas': 29.4.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 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-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 pretty-format@30.2.0: dependencies: '@jest/schemas': 30.0.5 ansi-styles: 5.2.0 - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 pretty-ms@7.0.0: dependencies: @@ -35461,7 +35461,7 @@ snapshots: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 - react-is: 19.3.0-canary-bef88f7c-20260116 + react-is: 19.3.0-canary-d2908752-20260119 property-information@5.6.0: dependencies: @@ -35673,31 +35673,31 @@ snapshots: transitivePeerDependencies: - supports-color - react-dom@0.0.0-experimental-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116): + react-dom@0.0.0-experimental-d2908752-20260119(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - scheduler: 0.28.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + scheduler: 0.28.0-canary-d2908752-20260119 - react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116): + react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - scheduler: 0.28.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + scheduler: 0.28.0-canary-d2908752-20260119 react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121): dependencies: react: 19.3.0-canary-fd524fe0-20251121 - scheduler: 0.28.0-canary-bef88f7c-20260116 + scheduler: 0.28.0-canary-d2908752-20260119 - react-is@19.3.0-canary-bef88f7c-20260116: {} + react-is@19.3.0-canary-d2908752-20260119: {} react-is@19.3.0-canary-fd524fe0-20251121: {} react-lifecycles-compat@3.0.4: {} - react-medium-image-zoom@5.3.0(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + react-medium-image-zoom@5.3.0(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) react-number-format@5.4.0(react-dom@19.3.0-canary-fd524fe0-20251121(react@19.3.0-canary-fd524fe0-20251121))(react@19.3.0-canary-fd524fe0-20251121): dependencies: @@ -35715,10 +35715,10 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-remove-scroll-bar@2.3.8(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116): + react-remove-scroll-bar@2.3.8(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -35734,59 +35734,59 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-remove-scroll@2.7.1(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116): + react-remove-scroll@2.7.1(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-remove-scroll-bar: 2.3.8(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-remove-scroll-bar: 2.3.8(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + react-style-singleton: 2.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) - use-sidecar: 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116) + use-callback-ref: 1.3.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) + use-sidecar: 1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119) optionalDependencies: '@types/react': 19.2.2 - react-server-dom-turbopack@0.0.0-experimental-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + react-server-dom-turbopack@0.0.0-experimental-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) - react-server-dom-turbopack@19.3.0-canary-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + react-server-dom-turbopack@19.3.0-canary-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) - react-server-dom-webpack@0.0.0-experimental-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): + react-server-dom-webpack@0.0.0-experimental-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-server-dom-webpack@19.3.0-canary-bef88f7c-20260116(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): + react-server-dom-webpack@19.3.0-canary-d2908752-20260119(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119)(webpack@5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))): dependencies: acorn-loose: 8.3.0 neo-async: 2.6.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15)) webpack-sources: 3.2.3(patch_hash=jbynf5dc46ambamq3wuyho6hkq) - react-shallow-renderer@16.15.0(react@19.3.0-canary-bef88f7c-20260116): + react-shallow-renderer@16.15.0(react@19.3.0-canary-d2908752-20260119): dependencies: object-assign: 4.1.1 - react: 19.3.0-canary-bef88f7c-20260116 - react-is: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-is: 19.3.0-canary-d2908752-20260119 - react-ssr-prepass@1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-bef88f7c-20260116): + react-ssr-prepass@1.0.8(react-is@19.3.0-canary-fd524fe0-20251121)(react@19.3.0-canary-d2908752-20260119): dependencies: object-is: 1.0.2 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 react-is: 19.3.0-canary-fd524fe0-20251121 react-style-singleton@2.2.1(@types/react@19.2.2)(react@19.3.0-canary-fd524fe0-20251121): @@ -35798,10 +35798,10 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-style-singleton@2.2.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116): + react-style-singleton@2.2.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119): dependencies: get-nonce: 1.0.1 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -35814,12 +35814,12 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - react-test-renderer@18.2.0(react@19.3.0-canary-bef88f7c-20260116): + react-test-renderer@18.2.0(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 - react-is: 19.3.0-canary-bef88f7c-20260116 - react-shallow-renderer: 16.15.0(react@19.3.0-canary-bef88f7c-20260116) - scheduler: 0.28.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 + react-is: 19.3.0-canary-d2908752-20260119 + react-shallow-renderer: 16.15.0(react@19.3.0-canary-d2908752-20260119) + scheduler: 0.28.0-canary-d2908752-20260119 react-textarea-autosize@8.5.3(@types/react@19.2.2)(react@19.3.0-canary-fd524fe0-20251121): dependencies: @@ -35830,20 +35830,20 @@ snapshots: transitivePeerDependencies: - '@types/react' - react-virtualized@9.22.3(react-dom@19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116))(react@19.3.0-canary-bef88f7c-20260116): + react-virtualized@9.22.3(react-dom@19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119))(react@19.3.0-canary-d2908752-20260119): 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-bef88f7c-20260116 - react-dom: 19.3.0-canary-bef88f7c-20260116(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + react-dom: 19.3.0-canary-d2908752-20260119(react@19.3.0-canary-d2908752-20260119) react-lifecycles-compat: 3.0.4 - react@0.0.0-experimental-bef88f7c-20260116: {} + react@0.0.0-experimental-d2908752-20260119: {} - react@19.3.0-canary-bef88f7c-20260116: {} + react@19.3.0-canary-d2908752-20260119: {} react@19.3.0-canary-fd524fe0-20251121: {} @@ -36671,9 +36671,9 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.0.0-experimental-bef88f7c-20260116: {} + scheduler@0.0.0-experimental-d2908752-20260119: {} - scheduler@0.28.0-canary-bef88f7c-20260116: {} + scheduler@0.28.0-canary-d2908752-20260119: {} schema-utils@2.7.1: dependencies: @@ -37566,10 +37566,10 @@ snapshots: postcss: 7.0.32 postcss-load-plugins: 2.3.0 - styled-jsx@5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-bef88f7c-20260116): + styled-jsx@5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.3.0-canary-d2908752-20260119): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 optionalDependencies: '@babel/core': 7.26.10 babel-plugin-macros: 3.1.0 @@ -37673,11 +37673,11 @@ snapshots: '@swc/counter': 0.1.3 webpack: 5.98.0(@swc/core@1.11.24(@swc/helpers@0.5.15))(esbuild@0.25.9) - swr@2.2.4(react@19.3.0-canary-bef88f7c-20260116): + swr@2.2.4(react@19.3.0-canary-d2908752-20260119): dependencies: client-only: 0.0.1 - react: 19.3.0-canary-bef88f7c-20260116 - use-sync-external-store: 1.5.0(react@19.3.0-canary-bef88f7c-20260116) + react: 19.3.0-canary-d2908752-20260119 + use-sync-external-store: 1.5.0(react@19.3.0-canary-d2908752-20260119) symbol-observable@1.0.1: {} @@ -38533,9 +38533,9 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - unistore@3.4.1(react@19.3.0-canary-bef88f7c-20260116): + unistore@3.4.1(react@19.3.0-canary-d2908752-20260119): optionalDependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 universal-github-app-jwt@1.1.1: dependencies: @@ -38670,9 +38670,9 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - use-callback-ref@1.3.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116): + use-callback-ref@1.3.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 @@ -38702,17 +38702,17 @@ snapshots: optionalDependencies: '@types/react': 19.2.2 - use-sidecar@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-bef88f7c-20260116): + use-sidecar@1.1.3(@types/react@19.2.2)(react@19.3.0-canary-d2908752-20260119): dependencies: detect-node-es: 1.1.0 - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 tslib: 2.8.1 optionalDependencies: '@types/react': 19.2.2 - use-sync-external-store@1.5.0(react@19.3.0-canary-bef88f7c-20260116): + use-sync-external-store@1.5.0(react@19.3.0-canary-d2908752-20260119): dependencies: - react: 19.3.0-canary-bef88f7c-20260116 + react: 19.3.0-canary-d2908752-20260119 util-deprecate@1.0.2: {} diff --git a/scripts/get-changed-tests.mjs b/scripts/get-changed-tests.mjs index b0db759d7e70b..7ee2ab10978f8 100644 --- a/scripts/get-changed-tests.mjs +++ b/scripts/get-changed-tests.mjs @@ -17,7 +17,7 @@ export default async function getChangedTests() { if (isCanary) { console.log(`Skipping flake detection for canary`) - return { devTests: [], prodTests: [] } + return { devTests: [], prodTests: [], deployTests: [] } } const diffRevision = await getDiffRevision() @@ -44,6 +44,7 @@ export default async function getChangedTests() { // and if any fail it's flakey const devTests = [] const prodTests = [] + const deployTests = [] for (let file of changedFiles) { // normalize slashes @@ -54,10 +55,11 @@ export default async function getChangedTests() { .catch(() => false) if (fileExists && file.match(/^test\/.*?\.test\.(js|ts|tsx)$/)) { - if ( - file.startsWith('test/e2e/') || - file.startsWith('test/integration/') - ) { + if (file.startsWith('test/e2e/')) { + devTests.push(file) + prodTests.push(file) + deployTests.push(file) + } else if (file.startsWith('test/integration/')) { devTests.push(file) prodTests.push(file) } else if (file.startsWith('test/prod')) { @@ -74,11 +76,12 @@ export default async function getChangedTests() { { devTests, prodTests, + deployTests, }, null, 2 ) ) - return { devTests, prodTests, commitSha } + return { devTests, prodTests, deployTests, commitSha } } diff --git a/scripts/test-new-tests.mjs b/scripts/test-new-tests.mjs index b81467511b74f..69c1b1a7c375f 100644 --- a/scripts/test-new-tests.mjs +++ b/scripts/test-new-tests.mjs @@ -41,9 +41,15 @@ async function main() { /** @type import('execa').Options */ const EXECA_OPTS_STDIO = { ...EXECA_OPTS, stdio: 'inherit' } - const { devTests, prodTests, commitSha } = await getChangedTests() - - let currentTests = testMode === 'dev' ? devTests : prodTests + const { devTests, prodTests, deployTests, commitSha } = + await getChangedTests() + + let currentTests = + testMode === 'dev' + ? devTests + : testMode === 'deploy' + ? deployTests + : prodTests /** @type {Array} diff --git a/test/deploy-tests-manifest.json b/test/deploy-tests-manifest.json index 23c1246dc6eb6..299efecdabe18 100644 --- a/test/deploy-tests-manifest.json +++ b/test/deploy-tests-manifest.json @@ -46,10 +46,7 @@ } }, "rules": { - "include": [ - "test/e2e/**/*.test.{t,j}s{,x}", - "test/production/**/*.test.{t,j}s{,x}" - ], + "include": ["test/e2e/**/*.test.{t,j}s{,x}"], "exclude": [ "test/e2e/cancel-request/stream-cancel.test.ts", "test/e2e/new-link-behavior/material-ui.test.ts", diff --git a/test/e2e/app-dir/cache-components-errors/cache-components-errors.test.ts b/test/e2e/app-dir/cache-components-errors/cache-components-errors.test.ts index be69096a75f2b..ff6e6e771887b 100644 --- a/test/e2e/app-dir/cache-components-errors/cache-components-errors.test.ts +++ b/test/e2e/app-dir/cache-components-errors/cache-components-errors.test.ts @@ -5411,6 +5411,144 @@ describe('Cache Components Errors', () => { } }) + describe('IO accessed in Client Components', () => { + const pathname = '/client-awaited-io' + + if (isNextDev) { + it('should show a collapsed redbox error', async () => { + const browser = await next.browser(pathname) + + await expect(browser).toDisplayCollapsedRedbox(` + { + "description": "Data that blocks navigation was accessed outside of + + This delays the entire page from rendering, resulting in a slow user experience. Next.js uses this error to ensure your app loads instantly on every navigation. Uncached data such as fetch(...), cached data with a low expire time, or connection() are all examples of data that only resolve on navigation. + + To fix this, you can either: + + Provide a fallback UI using around this component. This allows Next.js to stream its contents to the user as soon as it's ready, without blocking the rest of the app. + + or + + Move the asynchronous await into a Cache Component ("use cache"). This allows Next.js to statically prerender the component as part of the HTML document, so it's instantly visible to the user. + + Learn more: https://nextjs.org/docs/messages/blocking-route", + "environmentLabel": "Server", + "label": "Blocking Route", + "source": "app/client-awaited-io/client.tsx (6:19) @ Client + > 6 | const data = use(io) + | ^", + "stack": [ + "Client app/client-awaited-io/client.tsx (6:19)", + "Page app/client-awaited-io/page.tsx (5:10)", + ], + } + `) + }) + } else { + it('should error the build if IO is accessed in a Client Component', async () => { + try { + await prerender(pathname) + } catch { + // we expect the build to fail + } + + const output = getPrerenderOutput( + next.cliOutput.slice(cliOutputLength), + { isMinified: !isDebugPrerender } + ) + + if (isTurbopack) { + if (isDebugPrerender) { + expect(output).toMatchInlineSnapshot(` + "Error: Route "/client-awaited-io": Uncached data was accessed outside of . This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route + at Client (app/client-awaited-io/client.tsx:5:26) + at body () + at html () + 3 | import { use } from 'react' + 4 | + > 5 | export function Client({ io }: { io: Promise }) { + | ^ + 6 | const data = use(io) + 7 | return
Data: {data}
+ 8 | } + To get a more detailed stack trace and pinpoint the issue, start the app in development mode by running \`next dev\`, then open "/client-awaited-io" in your browser to investigate the error. + Error occurred prerendering page "/client-awaited-io". Read more: https://nextjs.org/docs/messages/prerender-error + + > Export encountered errors on following paths: + /client-awaited-io/page: /client-awaited-io" + `) + } else { + expect(output).toMatchInlineSnapshot(` + "Error: Route "/client-awaited-io": Uncached data was accessed outside of . This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route + at (app/client-awaited-io/client.tsx:5:26) + at body () + at html () + 3 | import { use } from 'react' + 4 | + > 5 | export function Client({ io }: { io: Promise }) { + | ^ + 6 | const data = use(io) + 7 | return
Data: {data}
+ 8 | } + To get a more detailed stack trace and pinpoint the issue, try one of the following: + - Start the app in development mode by running \`next dev\`, then open "/client-awaited-io" in your browser to investigate the error. + - Rerun the production build with \`next build --debug-prerender\` to generate better stack traces. + Error occurred prerendering page "/client-awaited-io". Read more: https://nextjs.org/docs/messages/prerender-error + Export encountered an error on /client-awaited-io/page: /client-awaited-io, exiting the build." + `) + } + } else { + if (isDebugPrerender) { + expect(output).toMatchInlineSnapshot(` + "Error: Route "/client-awaited-io": Uncached data was accessed outside of . This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route + at Client (webpack:///app/client-awaited-io/client.tsx:5:26) + at + To get a more detailed stack trace and pinpoint the issue, start the app in development mode by running \`next dev\`, then open "/client-awaited-io" in your browser to investigate the error. + Error occurred prerendering page "/client-awaited-io". Read more: https://nextjs.org/docs/messages/prerender-error + + > Export encountered errors on following paths: + /client-awaited-io/page: /client-awaited-io" + `) + } else { + expect(output).toMatchInlineSnapshot(` + "Error: Route "/client-awaited-io": Uncached data was accessed outside of . This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route + at a () + at b () + at c () + at d () + at e () + at f () + at g () + at h () + at i () + at j () + at k () + at body () + at html () + at l () + at m () + at n () + at o () + at p () + at q () + at r () + at s () + at t () + at u () + at v () + To get a more detailed stack trace and pinpoint the issue, try one of the following: + - Start the app in development mode by running \`next dev\`, then open "/client-awaited-io" in your browser to investigate the error. + - Rerun the production build with \`next build --debug-prerender\` to generate better stack traces. + Error occurred prerendering page "/client-awaited-io". Read more: https://nextjs.org/docs/messages/prerender-error + Export encountered an error on /client-awaited-io/page: /client-awaited-io, exiting the build." + `) + } + } + }) + } + }) + // TODO(restart-on-cache-miss): Figure out how to test this without flakiness describe.skip('Unhandled Rejection Suppression', () => { const pathname = '/unhandled-rejection' diff --git a/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/client.tsx b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/client.tsx new file mode 100644 index 0000000000000..5b68fb8e28e96 --- /dev/null +++ b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/client.tsx @@ -0,0 +1,8 @@ +'use client' + +import { use } from 'react' + +export function Client({ io }: { io: Promise }) { + const data = use(io) + return
Data: {data}
+} diff --git a/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/layout.tsx b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/layout.tsx new file mode 100644 index 0000000000000..c7295294439d6 --- /dev/null +++ b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/layout.tsx @@ -0,0 +1,7 @@ +export default function Layout({ children }: { children: React.ReactNode }) { + return ( + + {children} + + ) +} diff --git a/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/page.tsx b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/page.tsx new file mode 100644 index 0000000000000..08d93a890f78f --- /dev/null +++ b/test/e2e/app-dir/cache-components-errors/fixtures/default/app/client-awaited-io/page.tsx @@ -0,0 +1,6 @@ +import { setTimeout } from 'timers/promises' +import { Client } from './client' + +export default async function Page() { + return +} diff --git a/test/e2e/app-dir/gesture-transitions/app/layout.tsx b/test/e2e/app-dir/gesture-transitions/app/layout.tsx new file mode 100644 index 0000000000000..64e295cad9777 --- /dev/null +++ b/test/e2e/app-dir/gesture-transitions/app/layout.tsx @@ -0,0 +1,70 @@ +'use client' + +import { ReactNode, startTransition } from 'react' +import { useRouter, usePathname } from 'next/navigation' +import Link from 'next/link' + +const pendingResolvers = new Set<() => void>() + +export default function Root({ children }: { children: ReactNode }) { + const router = useRouter() + const pathname = usePathname() + const isOnHomePage = pathname === '/' + + const startGesture = (href: string) => { + // NOTE: In a real scenario, this would be startGestureTransition, + // not startTransition. + startTransition(async () => { + // Call gesture push to show prefetched content immediately + ;(router as any).experimental_gesturePush(href) + + // Create a promise that won't resolve until the "end gesture" button + // is clicked. This simulates a gesture that takes time to complete. + await new Promise((resolve) => { + pendingResolvers.add(resolve) + }) + + // After the gesture ends, perform the canonical navigation + router.push(href) + }) + } + + const endGesture = () => { + // Resolve all pending gestures + for (const resolve of pendingResolvers) { + resolve() + } + pendingResolvers.clear() + } + + return ( + + +
+

Gesture Transitions Test

+

+ This test simulates a gesture transition using two buttons. "Start + Gesture" calls experimental_gesturePush and begins an + async transition that doesn't complete until "End Gesture" is + clicked. This allows observing the intermediate gesture state before + the canonical navigation completes. +

+
+ +
{children}
+ + + ) +} diff --git a/test/e2e/app-dir/gesture-transitions/app/page.tsx b/test/e2e/app-dir/gesture-transitions/app/page.tsx new file mode 100644 index 0000000000000..587a51dc9a4b0 --- /dev/null +++ b/test/e2e/app-dir/gesture-transitions/app/page.tsx @@ -0,0 +1,8 @@ +export default function HomePage() { + return ( +
+

Home

+

This is the home page.

+
+ ) +} diff --git a/test/e2e/app-dir/gesture-transitions/app/target-page/page.tsx b/test/e2e/app-dir/gesture-transitions/app/target-page/page.tsx new file mode 100644 index 0000000000000..98603a80edb47 --- /dev/null +++ b/test/e2e/app-dir/gesture-transitions/app/target-page/page.tsx @@ -0,0 +1,19 @@ +import { Suspense } from 'react' +import { connection } from 'next/server' + +async function DynamicContent() { + await connection() + return
Dynamic content
+} + +export default function TargetPage() { + return ( +
+

Target Page

+
This is static content
+ Loading...
}> + +
+ + ) +} diff --git a/test/e2e/app-dir/gesture-transitions/gesture-transitions.test.ts b/test/e2e/app-dir/gesture-transitions/gesture-transitions.test.ts new file mode 100644 index 0000000000000..14bb87c4dedec --- /dev/null +++ b/test/e2e/app-dir/gesture-transitions/gesture-transitions.test.ts @@ -0,0 +1,57 @@ +/** + * Tests for experimental_gesturePush, which enables gesture-driven navigation + * via React's Gesture Transitions feature. + * + * The test simulates a gesture by using two buttons: + * - "Start Gesture" calls experimental_gesturePush and begins an async + * transition that doesn't complete until "End Gesture" is clicked + * - "End Gesture" resolves the pending promise and triggers the canonical + * router.push + * + * This allows us to observe the intermediate gesture state before the + * canonical navigation completes. + */ +import { nextTestSetup } from 'e2e-utils' + +describe('gesture-transitions', () => { + const { next } = nextTestSetup({ + files: __dirname, + }) + + it('shows optimistic state during gesture, then canonical state after', async () => { + const browser = await next.browser('/') + + // Verify we're on the home page + expect( + await browser.elementByCss('[data-testid="home-page"]').text() + ).toContain('Home') + + // Click "Start Gesture" to begin the optimistic navigation + await browser.elementByCss('[data-testid="start-gesture"]').click() + + // The target page content should be visible (optimistic state) + const targetPage = await browser.elementByCss('[data-testid="target-page"]') + expect(await targetPage.text()).toContain('Target Page') + + // Static content should be visible + expect( + await browser.elementByCss('[data-testid="static-content"]').text() + ).toBe('This is static content') + + // The URL should have updated to /target-page + expect(await browser.url()).toContain('/target-page') + + // Click "End Gesture" to complete the canonical navigation + await browser.elementByCss('[data-testid="end-gesture"]').click() + + // After the gesture ends, we should still be on the target page + // with the canonical state (dynamic content fully loaded) + const dynamicContent = await browser.elementByCss( + '[data-testid="dynamic-content"]' + ) + expect(await dynamicContent.text()).toBe('Dynamic content') + + // URL should still be /target-page + expect(await browser.url()).toContain('/target-page') + }) +}) diff --git a/test/e2e/app-dir/gesture-transitions/next.config.js b/test/e2e/app-dir/gesture-transitions/next.config.js new file mode 100644 index 0000000000000..d0ef50f6bffc8 --- /dev/null +++ b/test/e2e/app-dir/gesture-transitions/next.config.js @@ -0,0 +1,11 @@ +/** + * @type {import('next').NextConfig} + */ +const nextConfig = { + experimental: { + gestureTransition: true, + }, + cacheComponents: true, +} + +module.exports = nextConfig diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/api/revalidate/route.ts b/test/e2e/app-dir/revalidate-path-with-rewrites/app/api/revalidate/route.ts new file mode 100644 index 0000000000000..0f20e9096d366 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/api/revalidate/route.ts @@ -0,0 +1,20 @@ +import { revalidatePath } from 'next/cache' +import { NextRequest, NextResponse } from 'next/server' + +const isCacheComponentsEnabled = !!process.env.__NEXT_CACHE_COMPONENTS + +export async function GET(request: NextRequest) { + const sourcePath = request.nextUrl.searchParams.get('path') + + if (!sourcePath) { + return NextResponse.json( + { error: 'Missing path parameter' }, + { status: 400 } + ) + } + + const prefix = isCacheComponentsEnabled ? '/cache-components' : '/legacy' + revalidatePath(`${prefix}${sourcePath}`) + + return NextResponse.json({ revalidated: true }) +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/dynamic/page.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/dynamic/page.tsx new file mode 100644 index 0000000000000..be7f884b6f340 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/dynamic/page.tsx @@ -0,0 +1,21 @@ +import { Suspense } from 'react' +import { connection } from 'next/server' +import SharedPage from '../../shared-page' + +async function CachedContent() { + 'use cache: remote' + return +} + +async function Content() { + await connection() + return +} + +export default function Page() { + return ( + Loading...}> + + + ) +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/static/page.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/static/page.tsx new file mode 100644 index 0000000000000..32d2cb9b6a8a8 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/cache-components/static/page.tsx @@ -0,0 +1,6 @@ +import SharedPage from '../../shared-page' + +export default async function Page() { + 'use cache' + return +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/layout.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/layout.tsx new file mode 100644 index 0000000000000..888614deda3ba --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/layout.tsx @@ -0,0 +1,8 @@ +import { ReactNode } from 'react' +export default function Root({ children }: { children: ReactNode }) { + return ( + + {children} + + ) +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/dynamic/page.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/dynamic/page.tsx new file mode 100644 index 0000000000000..2f0aa56e21d8f --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/dynamic/page.tsx @@ -0,0 +1,8 @@ +import SharedPage from '../../shared-page' + +export const dynamic = 'force-dynamic' +export const fetchCache = 'force-cache' + +export default function Page() { + return +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/static/page.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/static/page.tsx new file mode 100644 index 0000000000000..5e205a2e133b9 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/legacy/static/page.tsx @@ -0,0 +1,8 @@ +import SharedPage from '../../shared-page' + +export const revalidate = 900 +export const fetchCache = 'force-cache' + +export default function Page() { + return +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/app/shared-page.tsx b/test/e2e/app-dir/revalidate-path-with-rewrites/app/shared-page.tsx new file mode 100644 index 0000000000000..3377effffda0a --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/app/shared-page.tsx @@ -0,0 +1,23 @@ +async function getData() { + const res = await fetch( + 'https://next-data-api-endpoint.vercel.app/api/random' + ) + return res.text() +} + +export default async function SharedPage({ + isDynamic, +}: { + isDynamic: boolean +}) { + const data = await getData() + + return ( +
+

{isDynamic ? 'Dynamic' : 'Static'} Page

+

+ Random data: {data} +

+
+ ) +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/next.config.js b/test/e2e/app-dir/revalidate-path-with-rewrites/next.config.js new file mode 100644 index 0000000000000..48514a46db902 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/next.config.js @@ -0,0 +1,24 @@ +/** + * @type {import('next').NextConfig} + */ +module.exports = { + rewrites: async () => { + const isCacheComponentsEnabled = + process.env.__NEXT_CACHE_COMPONENTS === 'true' + + return [ + { + source: '/static', + destination: isCacheComponentsEnabled + ? '/cache-components/static' + : '/legacy/static', + }, + { + source: '/dynamic', + destination: isCacheComponentsEnabled + ? '/cache-components/dynamic' + : '/legacy/dynamic', + }, + ] + }, +} diff --git a/test/e2e/app-dir/revalidate-path-with-rewrites/revalidate-path-with-rewrites.test.ts b/test/e2e/app-dir/revalidate-path-with-rewrites/revalidate-path-with-rewrites.test.ts new file mode 100644 index 0000000000000..6aff62e8527d9 --- /dev/null +++ b/test/e2e/app-dir/revalidate-path-with-rewrites/revalidate-path-with-rewrites.test.ts @@ -0,0 +1,70 @@ +import { nextTestSetup } from 'e2e-utils' +import { retry } from 'next-test-utils' + +const isCacheComponentsEnabled = process.env.__NEXT_CACHE_COMPONENTS === 'true' + +describe('revalidatePath with rewrites', () => { + const { next } = nextTestSetup({ + files: __dirname, + buildArgs: [ + '--debug-build-paths', + isCacheComponentsEnabled + ? '!app/legacy/**/*' + : '!app/cache-components/**/*', + ], + }) + + describe('static page', () => { + it('should revalidate a static page that was rewritten', async () => { + const browser = await next.browser('/static') + const initialRandomData = await browser.elementById('random-data').text() + + expect(initialRandomData).toBeTruthy() + + // Verify the data is cached after refresh + await browser.refresh() + const refreshedRandomData = await browser + .elementById('random-data') + .text() + expect(refreshedRandomData).toBe(initialRandomData) + + // Trigger revalidation via route handler + const revalidateRes = await next.fetch('/api/revalidate?path=/static') + expect(revalidateRes.status).toBe(200) + + // Verify the data changed after revalidation + await retry(async () => { + await browser.refresh() + const randomData = await browser.elementById('random-data').text() + expect(randomData).not.toBe(initialRandomData) + }) + }) + }) + + describe('dynamic page', () => { + it('should revalidate a dynamic page that was rewritten', async () => { + const browser = await next.browser('/dynamic') + const initialRandomData = await browser.elementById('random-data').text() + + expect(initialRandomData).toBeTruthy() + + // Verify the data is cached after refresh + await browser.refresh() + const refreshedRandomData = await browser + .elementById('random-data') + .text() + expect(refreshedRandomData).toBe(initialRandomData) + + // Trigger revalidation via route handler + const revalidateRes = await next.fetch('/api/revalidate?path=/dynamic') + expect(revalidateRes.status).toBe(200) + + // Verify the data changed after revalidation + await retry(async () => { + await browser.refresh() + const randomData = await browser.elementById('random-data').text() + expect(randomData).not.toBe(initialRandomData) + }) + }) + }) +}) diff --git a/test/e2e/app-dir/segment-cache/basic/segment-cache-basic.test.ts b/test/e2e/app-dir/segment-cache/basic/segment-cache-basic.test.ts index f38ff1a755f7c..1df93dda30b51 100644 --- a/test/e2e/app-dir/segment-cache/basic/segment-cache-basic.test.ts +++ b/test/e2e/app-dir/segment-cache/basic/segment-cache-basic.test.ts @@ -413,42 +413,38 @@ describe('segment cache (basic tests)', () => { expect(content).toContain('Cache Life Seconds Page') }) - // TODO: Requires a fix in React. - it.failing( - 'can handle circular references in client component props', - async () => { - let act: ReturnType - const browser = await next.browser('/', { - beforePageLoad(page) { - act = createRouterAct(page) - }, - }) - - // Reveal the link to trigger a prefetch. - const link = await act( - async () => { - await browser - .elementByCss('input[data-link-accordion="/cycle"]') - .click() - return browser.elementByCss('a[href="/cycle"]') - }, - { includes: 'testProp' } - ) - - await act( - async () => { - await link.click() - - // The page should render immediately because it was prefetched, and it - // should show the resolved cycle text. - expect(await browser.elementById('cycle-check').text()).toBe( - 'Cycle resolved' - ) - }, - // No additional requests were required, because everything was - // prefetched. - 'no-requests' - ) - } - ) + it('can handle circular references in client component props', async () => { + let act: ReturnType + const browser = await next.browser('/', { + beforePageLoad(page) { + act = createRouterAct(page) + }, + }) + + // Reveal the link to trigger a prefetch. + const link = await act( + async () => { + await browser + .elementByCss('input[data-link-accordion="/cycle"]') + .click() + return browser.elementByCss('a[href="/cycle"]') + }, + { includes: 'testProp' } + ) + + await act( + async () => { + await link.click() + + // The page should render immediately because it was prefetched, and it + // should show the resolved cycle text. + expect(await browser.elementById('cycle-check').text()).toBe( + 'Cycle resolved' + ) + }, + // No additional requests were required, because everything was + // prefetched. + 'no-requests' + ) + }) }) diff --git a/test/lib/next-modes/base.ts b/test/lib/next-modes/base.ts index c2d8e245d77be..8903436bdab50 100644 --- a/test/lib/next-modes/base.ts +++ b/test/lib/next-modes/base.ts @@ -281,6 +281,9 @@ export class NextInstance { ...pkgScripts, build: (pkgScripts['build'] || this.buildCommand || 'next build') + + (this.buildArgs?.length + ? ` ${this.buildArgs.join(' ')}` + : '') + ' && pnpm post-build', }, }, diff --git a/test/production/app-dir/build-output-prerender/build-output-prerender.test.ts b/test/production/app-dir/build-output-prerender/build-output-prerender.test.ts index 7e0782ad6c8f4..130856e6c9de9 100644 --- a/test/production/app-dir/build-output-prerender/build-output-prerender.test.ts +++ b/test/production/app-dir/build-output-prerender/build-output-prerender.test.ts @@ -3,7 +3,6 @@ import path from 'path' const { version: nextVersion } = require('next/package.json') const cacheComponentsEnabled = process.env.__NEXT_CACHE_COMPONENTS === 'true' - const pprEnabled = process.env.__NEXT_EXPERIMENTAL_PPR === 'true' describe('build-output-prerender', () => { diff --git a/test/production/app-dir/no-mangling/no-mangling.test.ts b/test/production/app-dir/no-mangling/no-mangling.test.ts index b75d8dda72e1d..788a532bbe8ba 100644 --- a/test/production/app-dir/no-mangling/no-mangling.test.ts +++ b/test/production/app-dir/no-mangling/no-mangling.test.ts @@ -16,7 +16,7 @@ describe('no-mangling', () => { expect(next.cliOutput).toInclude(` Error: Kaputt! - at `) // mangled function name omitted because it's undeterministic + at `) // mangled function name omitted because it's not deterministic // `Page` is the original function name that is mangled because `next // build` was called without `--no-mangling`.