Home / Function/ processTimelineEvent() — react Function Reference

processTimelineEvent() — react Function Reference

Architecture documentation for the processTimelineEvent() function in preprocessData.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  7e379096_4ef1_e90c_7e2b_b822b6321992["processTimelineEvent()"]
  a3f7147d_da0b_56dc_ffc9_a9e2bbc4526a["preprocessData.js"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|defined in| a3f7147d_da0b_56dc_ffc9_a9e2bbc4526a
  be28072d_a059_0346_2a4c_412726599426["preprocessData()"]
  be28072d_a059_0346_2a4c_412726599426 -->|calls| 7e379096_4ef1_e90c_7e2b_b822b6321992
  35f4151a_c74e_04cd_4b5c_7a2eba78ddcf["processScreenshot()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 35f4151a_c74e_04cd_4b5c_7a2eba78ddcf
  c2290671_5bbb_a7c0_6eb6_947d1b9ad107["processEventDispatch()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| c2290671_5bbb_a7c0_6eb6_947d1b9ad107
  98aa6b94_7c60_ba02_df3a_2946fdc2b80a["processResourceFinish()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 98aa6b94_7c60_ba02_df3a_2946fdc2b80a
  614149a5_196a_f080_946e_e3a8ca5be0da["processResourceReceivedData()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 614149a5_196a_f080_946e_e3a8ca5be0da
  1a7f67a4_c325_3ddc_3497_e8fb73a7d7df["processResourceReceiveResponse()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 1a7f67a4_c325_3ddc_3497_e8fb73a7d7df
  3c1011e1_6a78_981d_8944_1d0e455061ed["processResourceSendRequest()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 3c1011e1_6a78_981d_8944_1d0e455061ed
  95d63b61_4fb5_111c_5ac6_d1f83c8fe393["updateLaneToLabelMap()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 95d63b61_4fb5_111c_5ac6_d1f83c8fe393
  4742a5ec_80ec_cb9d_6adb_2dfcc87c1cee["processReactComponentMeasure()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 4742a5ec_80ec_cb9d_6adb_2dfcc87c1cee
  837e77b7_ba80_15a8_c355_0be6bcb7aec4["getLanesFromTransportDecimalBitmask()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 837e77b7_ba80_15a8_c355_0be6bcb7aec4
  9fc35b5a_5690_5a53_fe19_60adb195e3af["throwIfIncomplete()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| 9fc35b5a_5690_5a53_fe19_60adb195e3af
  f6f77e64_55a8_8e0f_cde6_9f5856762b58["getLastType()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| f6f77e64_55a8_8e0f_cde6_9f5856762b58
  facf3681_3bf5_7bbe_6910_334d216abf41["markWorkStarted()"]
  7e379096_4ef1_e90c_7e2b_b822b6321992 -->|calls| facf3681_3bf5_7bbe_6910_334d216abf41
  style 7e379096_4ef1_e90c_7e2b_b822b6321992 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/react-devtools-timeline/src/import-worker/preprocessData.js lines 430–805

function processTimelineEvent(
  event: TimelineEvent,
  /** Finalized profiler data up to `event`. May be mutated. */
  currentProfilerData: TimelineData,
  /** Intermediate processor state. May be mutated. */
  state: ProcessorState,
) {
  const {cat, name, ts, ph} = event;

  const startTime = (ts - currentProfilerData.startTime) / 1000;

  switch (cat) {
    case 'disabled-by-default-devtools.screenshot':
      processScreenshot(event, startTime, currentProfilerData, state);
      break;
    case 'devtools.timeline':
      switch (name) {
        case 'EventDispatch':
          processEventDispatch(event, startTime, currentProfilerData, state);
          break;
        case 'ResourceFinish':
          processResourceFinish(event, startTime, currentProfilerData, state);
          break;
        case 'ResourceReceivedData':
          processResourceReceivedData(
            event,
            startTime,
            currentProfilerData,
            state,
          );
          break;
        case 'ResourceReceiveResponse':
          processResourceReceiveResponse(
            event,
            startTime,
            currentProfilerData,
            state,
          );
          break;
        case 'ResourceSendRequest':
          processResourceSendRequest(
            event,
            startTime,
            currentProfilerData,
            state,
          );
          break;
      }
      break;
    case 'blink.user_timing':
      if (name.startsWith('--react-version-')) {
        const [reactVersion] = name.slice(16).split('-');
        currentProfilerData.reactVersion = reactVersion;
      } else if (name.startsWith('--profiler-version-')) {
        const [versionString] = name.slice(19).split('-');
        profilerVersion = parseInt(versionString, 10);
        if (profilerVersion !== SCHEDULING_PROFILER_VERSION) {
          throw new InvalidProfileError(
            `This version of profiling data (${versionString}) is not supported by the current profiler.`,
          );
        }
      } else if (name.startsWith('--react-lane-labels-')) {
        const [laneLabelTuplesString] = name.slice(20).split('-');
        updateLaneToLabelMap(currentProfilerData, laneLabelTuplesString);
      } else if (name.startsWith('--component-')) {
        processReactComponentMeasure(
          name,
          startTime,
          currentProfilerData,
          state,
        );
      } else if (name.startsWith('--schedule-render-')) {
        const [laneBitmaskString] = name.slice(18).split('-');

        currentProfilerData.schedulingEvents.push({
          type: 'schedule-render',
          lanes: getLanesFromTransportDecimalBitmask(laneBitmaskString),
          timestamp: startTime,
          warning: null,
        });
      } else if (name.startsWith('--schedule-forced-update-')) {

Domain

Subdomains

Called By

Frequently Asked Questions

What does processTimelineEvent() do?
processTimelineEvent() is a function in the react codebase, defined in packages/react-devtools-timeline/src/import-worker/preprocessData.js.
Where is processTimelineEvent() defined?
processTimelineEvent() is defined in packages/react-devtools-timeline/src/import-worker/preprocessData.js at line 430.
What does processTimelineEvent() call?
processTimelineEvent() calls 14 function(s): getLanesFromTransportDecimalBitmask, getLastType, markWorkCompleted, markWorkStarted, parseStackFrame, processEventDispatch, processReactComponentMeasure, processResourceFinish, and 6 more.
What calls processTimelineEvent()?
processTimelineEvent() is called by 1 function(s): preprocessData.

Analyze Your Own Codebase

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

Try Supermodel Free