Home / File/ index.js — react Source File

index.js — react Source File

Architecture documentation for index.js, a javascript file in the react codebase. 36 imports, 0 dependents.

File javascript BabelCompiler Validation 36 imports 19 functions

Entity Profile

Dependency Diagram

graph LR
  b5e42467_7633_e234_1d51_a93bfc4818c7["index.js"]
  74bd19f4_2af1_7f72_caea_df13aa3e4693["utils.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 74bd19f4_2af1_7f72_caea_df13aa3e4693
  d1ec5588_c5b3_a483_e9b6_ebb87a5d9fd8["getBrowserTheme"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> d1ec5588_c5b3_a483_e9b6_ebb87a5d9fd8
  4f973625_4ea3_727f_a21d_315a6a251079["elementSelection.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 4f973625_4ea3_727f_a21d_315a6a251079
  3dfc058d_8164_9e8d_3695_2c7597cadc27["setBrowserSelectionFromReact"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 3dfc058d_8164_9e8d_3695_2c7597cadc27
  5c8f3c69_4960_a183_149e_75ac0f06f111["setReactSelectionFromBrowser"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 5c8f3c69_4960_a183_149e_75ac0f06f111
  96cefe22_9962_3835_9c5b_31bab845839c["sourceSelection.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 96cefe22_9962_3835_9c5b_31bab845839c
  c05796b8_048a_d776_6577_ac6515ba020c["viewAttributeSource"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> c05796b8_048a_d776_6577_ac6515ba020c
  5da5ec89_70b9_80cd_1b31_dcf27eddc57e["evalInInspectedWindow.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 5da5ec89_70b9_80cd_1b31_dcf27eddc57e
  8351037d_1dab_1acd_e2b9_a54883052fb1["reactPolling.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 8351037d_1dab_1acd_e2b9_a54883052fb1
  6f2f886a_67b8_a326_ba54_02e933b8c12f["startReactPolling"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 6f2f886a_67b8_a326_ba54_02e933b8c12f
  bc0f1bd7_8cdc_bacd_b06e_18d931189032["cloneStyleTags.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> bc0f1bd7_8cdc_bacd_b06e_18d931189032
  8128576f_0171_0141_7371_cfb7e102597e["fetchFileWithCaching.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> 8128576f_0171_0141_7371_cfb7e102597e
  c360bb91_7121_91c9_2bcf_50218d1b3d2b["injectBackendManager.js"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> c360bb91_7121_91c9_2bcf_50218d1b3d2b
  fe55e716_1b99_d487_e455_4f53837f6e29["injectBackendManager"]
  b5e42467_7633_e234_1d51_a93bfc4818c7 --> fe55e716_1b99_d487_e455_4f53837f6e29
  style b5e42467_7633_e234_1d51_a93bfc4818c7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/* global chrome */
/** @flow */

import type {RootType} from 'react-dom/src/client/ReactDOMRoot';
import type {FrontendBridge, Message} from 'react-devtools-shared/src/bridge';
import type {
  TabID,
  ViewElementSource,
} from 'react-devtools-shared/src/devtools/views/DevTools';
import type {SourceSelection} from 'react-devtools-shared/src/devtools/views/Editor/EditorPane';
import type {Element} from 'react-devtools-shared/src/frontend/types';

import {createElement} from 'react';
import {flushSync} from 'react-dom';
import {createRoot} from 'react-dom/client';
import Bridge from 'react-devtools-shared/src/bridge';
import Store from 'react-devtools-shared/src/devtools/store';
import {getBrowserTheme} from '../utils';
import {
  localStorageGetItem,
  localStorageSetItem,
} from 'react-devtools-shared/src/storage';
import DevTools from 'react-devtools-shared/src/devtools/views/DevTools';
import {
  LOCAL_STORAGE_SUPPORTS_PROFILING_KEY,
  LOCAL_STORAGE_TRACE_UPDATES_ENABLED_KEY,
} from 'react-devtools-shared/src/constants';
import {logEvent} from 'react-devtools-shared/src/Logger';
import {
  getAlwaysOpenInEditor,
  getOpenInEditorURL,
  normalizeUrlIfValid,
} from 'react-devtools-shared/src/utils';
import {checkConditions} from 'react-devtools-shared/src/devtools/views/Editor/utils';
import * as parseHookNames from 'react-devtools-shared/src/hooks/parseHookNames';

import {
  setBrowserSelectionFromReact,
  setReactSelectionFromBrowser,
} from './elementSelection';
import {viewAttributeSource} from './sourceSelection';

import {evalInInspectedWindow} from './evalInInspectedWindow';
import {startReactPolling} from './reactPolling';
import {cloneStyleTags} from './cloneStyleTags';
import fetchFileWithCaching from './fetchFileWithCaching';
import injectBackendManager from './injectBackendManager';
import registerEventsLogger from './registerEventsLogger';
import getProfilingFlags from './getProfilingFlags';
import debounce from './debounce';
import './requestAnimationFramePolyfill';

const resolvedParseHookNames = Promise.resolve(parseHookNames);
// DevTools assumes this is a dynamically imported module. Since we outline
// workers in this bundle, we can sync require the module since it's just a thin
// wrapper around calling the worker.
const hookNamesModuleLoaderFunction = () => resolvedParseHookNames;

function createBridge() {
  bridge = new Bridge({
// ... (664 more lines)

Domain

Subdomains

Frequently Asked Questions

What does index.js do?
index.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain, Validation subdomain.
What functions are defined in index.js?
index.js defines 19 function(s): clearReactPollingInstance, connectExtensionPort, createBridge, createBridgeAndStore, createComponentsPanel, createElementsInspectPanel, createProfilerPanel, createSourcesEditorPanel, createSuspensePanel, ensureInitialHTMLIsCleared, and 9 more.
What does index.js depend on?
index.js imports 36 module(s): DevTools, EditorPane, Logger, ReactDOMRoot, bridge, client, cloneStyleTags.js, constants, and 28 more.
Where is index.js in the architecture?
index.js is located at packages/react-devtools-extensions/src/main/index.js (domain: BabelCompiler, subdomain: Validation, directory: packages/react-devtools-extensions/src/main).

Analyze Your Own Codebase

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

Try Supermodel Free