Home / File/ ReactDOMEventHandle.js — react Source File

ReactDOMEventHandle.js — react Source File

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

Entity Profile

Dependency Diagram

graph LR
  cfeccfd9_d509_de2e_b7f5_99190c395b57["ReactDOMEventHandle.js"]
  4e9925e9_ca97_8d79_6ffa_a9347d262615["DOMEventNames.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 4e9925e9_ca97_8d79_6ffa_a9347d262615
  d908643f_a970_7fa5_64a4_010ab47f44ac["ReactDOMEventHandleTypes.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> d908643f_a970_7fa5_64a4_010ab47f44ac
  e1c602b7_5988_fa00_bb9f_269d66d38107["EventRegistry.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> e1c602b7_5988_fa00_bb9f_269d66d38107
  799a7834_f34c_8596_4026_015681eee732["ReactDOMComponentTree.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 799a7834_f34c_8596_4026_015681eee732
  79306122_0617_c4ea_94ca_a596414f3150["HTMLNodeType.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 79306122_0617_c4ea_94ca_a596414f3150
  816b54e5_c63c_f8b2_68e8_0c637e281f03["DOMPluginEventSystem.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 816b54e5_c63c_f8b2_68e8_0c637e281f03
  d14160aa_deee_23d3_22c4_e2413ebdeaca["listenToNativeEventForNonManagedEventTarget"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> d14160aa_deee_23d3_22c4_e2413ebdeaca
  9c3d71d9_41af_c5e7_cd35_d25bbf6cf606["SyntheticEvent.js"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 9c3d71d9_41af_c5e7_cd35_d25bbf6cf606
  d8f20c67_f5fa_0f0a_c967_c41fd9ffce07["ReactTypes"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> d8f20c67_f5fa_0f0a_c967_c41fd9ffce07
  8344de1b_978c_be0f_eebd_38ccc4962a93["ReactFeatureFlags"]
  cfeccfd9_d509_de2e_b7f5_99190c395b57 --> 8344de1b_978c_be0f_eebd_38ccc4962a93
  style cfeccfd9_d509_de2e_b7f5_99190c395b57 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 {DOMEventName} from '../events/DOMEventNames';
import type {ReactScopeInstance} from 'shared/ReactTypes';
import type {
  ReactDOMEventHandle,
  ReactDOMEventHandleListener,
} from './ReactDOMEventHandleTypes';

import {allNativeEvents} from '../events/EventRegistry';
import {
  getEventHandlerListeners,
  setEventHandlerListeners,
  doesTargetHaveEventHandle,
  addEventHandleToTarget,
} from './ReactDOMComponentTree';
import {ELEMENT_NODE} from './HTMLNodeType';
import {listenToNativeEventForNonManagedEventTarget} from '../events/DOMPluginEventSystem';

import {
  enableScopeAPI,
  enableCreateEventHandleAPI,
} from 'shared/ReactFeatureFlags';
import typeof {SyntheticEvent} from '../events/SyntheticEvent';

type EventHandleOptions = {
  capture?: boolean,
};

function isValidEventTarget(target: EventTarget | ReactScopeInstance): boolean {
  return typeof (target: Object).addEventListener === 'function';
}

function isReactScope(target: EventTarget | ReactScopeInstance): boolean {
  return typeof (target: Object).getChildContextValues === 'function';
}

function createEventHandleListener(
  type: DOMEventName,
  isCapturePhaseListener: boolean,
  callback: SyntheticEvent => void,
): ReactDOMEventHandleListener {
  return {
    callback,
    capture: isCapturePhaseListener,
    type,
  };
}

function registerReactDOMEvent(
  target: EventTarget | ReactScopeInstance,
  domEventName: DOMEventName,
  isCapturePhaseListener: boolean,
// ... (90 more lines)

Domain

Frequently Asked Questions

What does ReactDOMEventHandle.js do?
ReactDOMEventHandle.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain.
What does ReactDOMEventHandle.js depend on?
ReactDOMEventHandle.js imports 10 module(s): DOMEventNames.js, DOMPluginEventSystem.js, EventRegistry.js, HTMLNodeType.js, ReactDOMComponentTree.js, ReactDOMEventHandleTypes.js, ReactFeatureFlags, ReactTypes, and 2 more.
Where is ReactDOMEventHandle.js in the architecture?
ReactDOMEventHandle.js is located at packages/react-dom-bindings/src/client/ReactDOMEventHandle.js (domain: BabelCompiler, directory: packages/react-dom-bindings/src/client).

Analyze Your Own Codebase

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

Try Supermodel Free