Home / File/ ReactFiberNewContext.js — react Source File

ReactFiberNewContext.js — react Source File

Architecture documentation for ReactFiberNewContext.js, a javascript file in the react codebase. 10 imports, 11 dependents.

File javascript BabelCompiler 10 imports 11 dependents

Entity Profile

Dependency Diagram

graph LR
  278c890a_abdf_e007_0c26_ae3bc8eda908["ReactFiberNewContext.js"]
  6b9f5caa_fb13_3d3c_2f60_ad3c4f58371f["ReactInternalTypes.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 6b9f5caa_fb13_3d3c_2f60_ad3c4f58371f
  8f731ef5_fa4f_fcf5_0d94_a73afa35b6a4["ReactFiberStack.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 8f731ef5_fa4f_fcf5_0d94_a73afa35b6a4
  768f6d67_77c1_be19_5596_a943eab59e05["ReactFiberLane.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 768f6d67_77c1_be19_5596_a943eab59e05
  a6668d1d_397d_7807_719d_fdecf552fa4a["ReactFiberConfig.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> a6668d1d_397d_7807_719d_fdecf552fa4a
  85d2c68c_7609_2c66_22fb_5f02e8a2e8fe["ReactFiberHooks.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 85d2c68c_7609_2c66_22fb_5f02e8a2e8fe
  d3557f30_4fca_e30a_91c5_c23d4b8dba99["ReactWorkTags.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> d3557f30_4fca_e30a_91c5_c23d4b8dba99
  6773f9a2_fdb7_4938_741f_4887273ad469["ReactFiberFlags.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 6773f9a2_fdb7_4938_741f_4887273ad469
  0d0aab7d_e6b3_4636_e6ae_2ed95f8e42d0["ReactFiberHostContext.js"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 0d0aab7d_e6b3_4636_e6ae_2ed95f8e42d0
  d8f20c67_f5fa_0f0a_c967_c41fd9ffce07["ReactTypes"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> d8f20c67_f5fa_0f0a_c967_c41fd9ffce07
  0ad79fb3_65a1_2b4a_c89f_a380efca26bf["objectIs"]
  278c890a_abdf_e007_0c26_ae3bc8eda908 --> 0ad79fb3_65a1_2b4a_c89f_a380efca26bf
  8a694f3e_c887_fb18_4515_e3e4488bb43e["ReactChildFiber.js"]
  8a694f3e_c887_fb18_4515_e3e4488bb43e --> 278c890a_abdf_e007_0c26_ae3bc8eda908
  d204555d_8af7_71f6_c18b_ea6503e178bf["ReactFiberAsyncDispatcher.js"]
  d204555d_8af7_71f6_c18b_ea6503e178bf --> 278c890a_abdf_e007_0c26_ae3bc8eda908
  0be70812_cc0c_b210_f84f_8e61dd5f831c["ReactFiberBeginWork.js"]
  0be70812_cc0c_b210_f84f_8e61dd5f831c --> 278c890a_abdf_e007_0c26_ae3bc8eda908
  8d310484_4245_75c0_c183_7a31fce6815e["ReactFiberCacheComponent.js"]
  8d310484_4245_75c0_c183_7a31fce6815e --> 278c890a_abdf_e007_0c26_ae3bc8eda908
  style 278c890a_abdf_e007_0c26_ae3bc8eda908 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @flow
 */

import type {ReactContext} from 'shared/ReactTypes';
import type {
  Fiber,
  ContextDependency,
  Dependencies,
} from './ReactInternalTypes';
import type {StackCursor} from './ReactFiberStack';
import type {Lanes} from './ReactFiberLane';
import type {TransitionStatus} from './ReactFiberConfig';
import type {Hook} from './ReactFiberHooks';

import {isPrimaryRenderer, HostTransitionContext} from './ReactFiberConfig';
import {createCursor, push, pop} from './ReactFiberStack';
import {ContextProvider, DehydratedFragment} from './ReactWorkTags';
import {NoLanes, isSubsetOfLanes, mergeLanes} from './ReactFiberLane';
import {
  NoFlags,
  DidPropagateContext,
  NeedsPropagation,
} from './ReactFiberFlags';

import is from 'shared/objectIs';
import {getHostTransitionProvider} from './ReactFiberHostContext';

const valueCursor: StackCursor<mixed> = createCursor(null);

let rendererCursorDEV: StackCursor<Object | null>;
if (__DEV__) {
  rendererCursorDEV = createCursor(null);
}
let renderer2CursorDEV: StackCursor<Object | null>;
if (__DEV__) {
  renderer2CursorDEV = createCursor(null);
}

let rendererSigil;
if (__DEV__) {
  // Use this to detect multiple renderers using the same context
  rendererSigil = {};
}

let currentlyRenderingFiber: Fiber | null = null;
let lastContextDependency: ContextDependency<mixed> | null = null;

let isDisallowedContextReadInDEV: boolean = false;

export function resetContextDependencies(): void {
  // This is called right before React yields execution, to ensure `readContext`
  // cannot be called outside the render phase.
  currentlyRenderingFiber = null;
  lastContextDependency = null;
// ... (512 more lines)

Domain

Frequently Asked Questions

What does ReactFiberNewContext.js do?
ReactFiberNewContext.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain.
What does ReactFiberNewContext.js depend on?
ReactFiberNewContext.js imports 10 module(s): ReactFiberConfig.js, ReactFiberFlags.js, ReactFiberHooks.js, ReactFiberHostContext.js, ReactFiberLane.js, ReactFiberStack.js, ReactInternalTypes.js, ReactTypes, and 2 more.
What files import ReactFiberNewContext.js?
ReactFiberNewContext.js is imported by 11 file(s): ReactChildFiber.js, ReactFiberAsyncDispatcher.js, ReactFiberBeginWork.js, ReactFiberCacheComponent.js, ReactFiberClassComponent.js, ReactFiberClassUpdateQueue.js, ReactFiberCompleteWork.js, ReactFiberHooks.js, and 3 more.
Where is ReactFiberNewContext.js in the architecture?
ReactFiberNewContext.js is located at packages/react-reconciler/src/ReactFiberNewContext.js (domain: BabelCompiler, directory: packages/react-reconciler/src).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free