SuspenseTab.js — react Source File
Architecture documentation for SuspenseTab.js, a javascript file in the react codebase. 28 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR 3249b7c1_ae10_2672_10ce_a66fd0ee6f60["SuspenseTab.js"] 9f39024f_b905_9b0f_2fc7_e24785732638["ButtonIcon.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 9f39024f_b905_9b0f_2fc7_e24785732638 c4e436c2_f97f_ce14_4047_a3741d53d2b6["InspectHostNodesToggle.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> c4e436c2_f97f_ce14_4047_a3741d53d2b6 8d1aac2b_7bad_9e53_cab3_6414b0d9e4c5["InspectedElementErrorBoundary.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 8d1aac2b_7bad_9e53_cab3_6414b0d9e4c5 4c0d725a_27bd_a723_3599_a3e75bea5bd3["InspectedElement.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 4c0d725a_27bd_a723_3599_a3e75bea5bd3 112f19f5_c561_f36f_4f9c_12048819ad24["portaledContent.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 112f19f5_c561_f36f_4f9c_12048819ad24 99e412e8_4291_b219_15f8_f660472850c6["portaledContent"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 99e412e8_4291_b219_15f8_f660472850c6 8868485d_cce3_7e60_d365_1fa69b485f2f["SuspenseTab.css"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 8868485d_cce3_7e60_d365_1fa69b485f2f 0adf488f_cc01_d00c_692a_56c1f4de537f["SuspenseBreadcrumbs.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 0adf488f_cc01_d00c_692a_56c1f4de537f f8b1fe94_dac9_3aaf_1437_e00298d4bc69["SuspenseBreadcrumbs"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> f8b1fe94_dac9_3aaf_1437_e00298d4bc69 cf8221e2_1aa3_8c65_096d_d49b44597f09["SuspenseRects.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> cf8221e2_1aa3_8c65_096d_d49b44597f09 09a08def_3d86_aab5_1719_24f5fdd9d175["SuspenseTimeline.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 09a08def_3d86_aab5_1719_24f5fdd9d175 5b70bf89_51e2_a206_5f64_bef911be67c9["SuspenseTimeline"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 5b70bf89_51e2_a206_5f64_bef911be67c9 e1645ed6_a62a_153d_27fd_691e1a53cb4f["ActivityList.js"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> e1645ed6_a62a_153d_27fd_691e1a53cb4f 1c876298_f380_e460_56d0_a0a7b509d56d["ActivityList"] 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 --> 1c876298_f380_e460_56d0_a0a7b509d56d style 3249b7c1_ae10_2672_10ce_a66fd0ee6f60 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 * as React from 'react';
import {
useContext,
useEffect,
useLayoutEffect,
useReducer,
useRef,
Fragment,
} from 'react';
import {enableActivitySlices} from 'react-devtools-feature-flags';
import {
localStorageGetItem,
localStorageSetItem,
} from 'react-devtools-shared/src/storage';
import ButtonIcon, {type IconType} from '../ButtonIcon';
import InspectHostNodesToggle from '../Components/InspectHostNodesToggle';
import InspectedElementErrorBoundary from '../Components/InspectedElementErrorBoundary';
import InspectedElement from '../Components/InspectedElement';
import portaledContent from '../portaledContent';
import styles from './SuspenseTab.css';
import SuspenseBreadcrumbs from './SuspenseBreadcrumbs';
import SuspenseRects from './SuspenseRects';
import SuspenseTimeline from './SuspenseTimeline';
import ActivityList from './ActivityList';
import {
SuspenseTreeDispatcherContext,
SuspenseTreeStateContext,
} from './SuspenseTreeContext';
import {BridgeContext, StoreContext, OptionsContext} from '../context';
import Button from '../Button';
import Toggle from '../Toggle';
import typeof {SyntheticPointerEvent} from 'react-dom-bindings/src/events/SyntheticEvent';
import SettingsModal from 'react-devtools-shared/src/devtools/views/Settings/SettingsModal';
import SettingsModalContextToggle from 'react-devtools-shared/src/devtools/views/Settings/SettingsModalContextToggle';
import {SettingsModalContextController} from 'react-devtools-shared/src/devtools/views/Settings/SettingsModalContext';
import {TreeStateContext} from '../Components/TreeContext';
type Orientation = 'horizontal' | 'vertical';
type LayoutActionType =
| 'ACTION_SET_ACTIVITY_LIST_TOGGLE'
| 'ACTION_SET_ACTIVITY_LIST_HORIZONTAL_FRACTION'
| 'ACTION_SET_INSPECTED_ELEMENT_TOGGLE'
| 'ACTION_SET_INSPECTED_ELEMENT_HORIZONTAL_FRACTION'
| 'ACTION_SET_INSPECTED_ELEMENT_VERTICAL_FRACTION';
type LayoutAction = {
type: LayoutActionType,
payload: any,
};
type LayoutState = {
// ... (589 more lines)
Domain
Subdomains
Functions
Dependencies
- ActivityList
- ActivityList.js
- Button
- Button.js
- ButtonIcon.js
- InspectHostNodesToggle.js
- InspectedElement.js
- InspectedElementErrorBoundary.js
- SettingsModal
- SettingsModalContext
- SettingsModalContextToggle
- SuspenseBreadcrumbs
- SuspenseBreadcrumbs.js
- SuspenseRects.js
- SuspenseTab.css
- SuspenseTimeline
- SuspenseTimeline.js
- SuspenseTreeContext.js
- SyntheticEvent
- Toggle
- Toggle.js
- TreeContext.js
- context.js
- portaledContent
- portaledContent.js
- react
- react-devtools-feature-flags
- storage
Source
Frequently Asked Questions
What does SuspenseTab.js do?
SuspenseTab.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 SuspenseTab.js?
SuspenseTab.js defines 7 function(s): LayoutDispatch, SuspenseTab, SynchronizedScrollContainer, ToggleActivityList, ToggleInspectedElement, initLayoutState, layoutReducer.
What does SuspenseTab.js depend on?
SuspenseTab.js imports 28 module(s): ActivityList, ActivityList.js, Button, Button.js, ButtonIcon.js, InspectHostNodesToggle.js, InspectedElement.js, InspectedElementErrorBoundary.js, and 20 more.
What files import SuspenseTab.js?
SuspenseTab.js is imported by 1 file(s): DevTools.js.
Where is SuspenseTab.js in the architecture?
SuspenseTab.js is located at packages/react-devtools-shared/src/devtools/views/SuspenseTab/SuspenseTab.js (domain: BabelCompiler, subdomain: Validation, directory: packages/react-devtools-shared/src/devtools/views/SuspenseTab).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free