Home / File/ ReactNativeRenderer.js — react Source File

ReactNativeRenderer.js — react Source File

Architecture documentation for ReactNativeRenderer.js, a javascript file in the react codebase. 20 imports, 1 dependents.

File javascript BabelCompiler 20 imports 1 dependents

Entity Profile

Dependency Diagram

graph LR
  05ccf719_9df5_4e38_01ba_8eadf09bacc1["ReactNativeRenderer.js"]
  24686b4c_3c4b_6fa0_b125_37d3286a1ff4["ReactNativeTypes.js"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 24686b4c_3c4b_6fa0_b125_37d3286a1ff4
  dea78bbd_0d4e_27e7_3d5e_51bbb5d31b87["ReactNativeInjection.js"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> dea78bbd_0d4e_27e7_3d5e_51bbb5d31b87
  cb0565f2_ac6f_4c74_0235_a8c5f28c4334["ReactGenericBatching.js"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> cb0565f2_ac6f_4c74_0235_a8c5f28c4334
  f8d37ea4_d88f_525c_f3dd_98ea0d3d03ed["setBatchingImplementation"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> f8d37ea4_d88f_525c_f3dd_98ea0d3d03ed
  b7455b38_0a5f_98b8_80f7_72b10f1f60c9["batchedUpdates"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> b7455b38_0a5f_98b8_80f7_72b10f1f60c9
  c8cde18a_a62b_2ad5_9e88_a5d655a07f02["ReactNativePublicCompat.js"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> c8cde18a_a62b_2ad5_9e88_a5d655a07f02
  a3dc8ce3_5fa4_00f6_cc2f_856df9b1b09d["findNodeHandle"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> a3dc8ce3_5fa4_00f6_cc2f_856df9b1b09d
  7abbd0a7_571f_d7ae_06ae_e1b558f06ff3["dispatchCommand"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 7abbd0a7_571f_d7ae_06ae_e1b558f06ff3
  1341036e_b568_a036_c13f_c52226e19704["sendAccessibilityEvent"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 1341036e_b568_a036_c13f_c52226e19704
  38298ff1_0df9_bd75_4ee6_624ce5b5207d["isChildPublicInstance"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 38298ff1_0df9_bd75_4ee6_624ce5b5207d
  d8f20c67_f5fa_0f0a_c967_c41fd9ffce07["ReactTypes"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> d8f20c67_f5fa_0f0a_c967_c41fd9ffce07
  ac587885_e294_a1e9_b13f_5e7b920fdb42["react"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> ac587885_e294_a1e9_b13f_5e7b920fdb42
  42892443_e223_3da0_aeb9_e1b32a408fb0["ReactInternalTypes"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 42892443_e223_3da0_aeb9_e1b32a408fb0
  95ef6e30_5e15_fea2_4f8e_0f58a4f2ddaa["ReactFiberConfig"]
  05ccf719_9df5_4e38_01ba_8eadf09bacc1 --> 95ef6e30_5e15_fea2_4f8e_0f58a4f2ddaa
  style 05ccf719_9df5_4e38_01ba_8eadf09bacc1 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 {ReactPortal, ReactNodeList} from 'shared/ReactTypes';
import type {ElementRef, ElementType, MixedElement} from 'react';
import type {FiberRoot} from 'react-reconciler/src/ReactInternalTypes';
import type {RenderRootOptions} from './ReactNativeTypes';
import type {Container} from 'react-reconciler/src/ReactFiberConfig';

import './ReactNativeInjection';

import {
  batchedUpdates as batchedUpdatesImpl,
  discreteUpdates,
  createContainer,
  updateContainer,
  injectIntoDevTools,
  getPublicRootInstance,
  defaultOnUncaughtError,
  defaultOnCaughtError,
  defaultOnRecoverableError,
} from 'react-reconciler/src/ReactFiberReconciler';
// TODO: direct imports like some-package/src/* are bad. Fix me.
import {createPortal as createPortalImpl} from 'react-reconciler/src/ReactPortal';
import {
  setBatchingImplementation,
  batchedUpdates,
} from './legacy-events/ReactGenericBatching';
// Modules provided by RN:
import {UIManager} from 'react-native/Libraries/ReactPrivate/ReactNativePrivateInterface';

import {LegacyRoot} from 'react-reconciler/src/ReactRootTags';
import {
  findHostInstance_DEPRECATED,
  findNodeHandle,
  dispatchCommand,
  sendAccessibilityEvent,
  isChildPublicInstance,
} from './ReactNativePublicCompat';

import {disableLegacyMode} from 'shared/ReactFeatureFlags';

// Module provided by RN:
import {ReactFiberErrorDialog} from 'react-native/Libraries/ReactPrivate/ReactNativePrivateInterface';

import reactNativePackageVersion from 'shared/ReactVersion';
import * as IsomorphicReactPackage from 'react';

const isomorphicReactPackageVersion = IsomorphicReactPackage.version;
if (isomorphicReactPackageVersion !== reactNativePackageVersion) {
  throw new Error(
    'Incompatible React versions: The "react" and "react-native-renderer" packages must ' +
      'have the exact same version. Instead got:\n' +
      `  - react:                  ${isomorphicReactPackageVersion}\n` +
// ... (164 more lines)

Domain

Dependencies

Frequently Asked Questions

What does ReactNativeRenderer.js do?
ReactNativeRenderer.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain.
What does ReactNativeRenderer.js depend on?
ReactNativeRenderer.js imports 20 module(s): ReactFeatureFlags, ReactFiberConfig, ReactFiberReconciler, ReactGenericBatching.js, ReactInternalTypes, ReactNativeInjection.js, ReactNativePrivateInterface, ReactNativePublicCompat.js, and 12 more.
What files import ReactNativeRenderer.js?
ReactNativeRenderer.js is imported by 1 file(s): index.js.
Where is ReactNativeRenderer.js in the architecture?
ReactNativeRenderer.js is located at packages/react-native-renderer/src/ReactNativeRenderer.js (domain: BabelCompiler, directory: packages/react-native-renderer/src).

Analyze Your Own Codebase

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

Try Supermodel Free