InspectedElementHooksTree() — react Function Reference
Architecture documentation for the InspectedElementHooksTree() function in InspectedElementHooksTree.js from the react codebase.
Entity Profile
Dependency Diagram
graph TD 0fa73964_8efc_3a75_e0b4_c7c54024c46a["InspectedElementHooksTree()"] 5a9f89d7_52b7_04f5_ab3d_8ec03c9054e3["InspectedElementHooksTree.js"] 0fa73964_8efc_3a75_e0b4_c7c54024c46a -->|defined in| 5a9f89d7_52b7_04f5_ab3d_8ec03c9054e3 3213df1c_3955_bce5_16ea_373249c47eb6["serializeHooksForCopy()"] 0fa73964_8efc_3a75_e0b4_c7c54024c46a -->|calls| 3213df1c_3955_bce5_16ea_373249c47eb6 style 0fa73964_8efc_3a75_e0b4_c7c54024c46a fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/react-devtools-shared/src/devtools/views/Components/InspectedElementHooksTree.js lines 44–113
export function InspectedElementHooksTree({
bridge,
element,
hookNames,
inspectedElement,
parseHookNames,
store,
toggleParseHookNames,
}: HooksTreeViewProps): React.Node {
const {hooks, id} = inspectedElement;
// Changing parseHookNames is done in a transition, because it suspends.
// This value is done outside of the transition, so the UI toggle feels responsive.
const [parseHookNamesOptimistic, setParseHookNamesOptimistic] =
useState(parseHookNames);
const handleChange = () => {
setParseHookNamesOptimistic(!parseHookNames);
toggleParseHookNames();
};
const hookNamesModuleLoader = useContext(HookNamesModuleLoaderContext);
const hookParsingFailed = parseHookNames && hookNames === null;
let toggleTitle;
if (hookParsingFailed) {
toggleTitle = 'Hook parsing failed';
} else if (parseHookNames) {
toggleTitle = 'Parsing hook names ...';
} else {
toggleTitle = 'Parse hook names (may be slow)';
}
const handleCopy = () => copy(serializeHooksForCopy(hooks));
if (hooks === null) {
return null;
} else {
return (
<div data-testname="InspectedElementHooksTree">
<div className={styles.HeaderRow}>
<div className={styles.Header}>hooks</div>
{typeof hookNamesModuleLoader === 'function' &&
(!parseHookNames || hookParsingFailed) && (
<Toggle
className={hookParsingFailed ? styles.ToggleError : null}
isChecked={parseHookNamesOptimistic}
isDisabled={parseHookNamesOptimistic || hookParsingFailed}
onChange={handleChange}
testName="LoadHookNamesButton"
title={toggleTitle}>
<ButtonIcon type="parse-hook-names" />
</Toggle>
)}
<Button onClick={handleCopy} title="Copy to clipboard">
<ButtonIcon type="copy" />
</Button>
</div>
<InnerHooksTreeView
hookNames={hookNames}
hooks={hooks}
id={id}
element={element}
inspectedElement={inspectedElement}
path={[]}
/>
</div>
);
}
}
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does InspectedElementHooksTree() do?
InspectedElementHooksTree() is a function in the react codebase, defined in packages/react-devtools-shared/src/devtools/views/Components/InspectedElementHooksTree.js.
Where is InspectedElementHooksTree() defined?
InspectedElementHooksTree() is defined in packages/react-devtools-shared/src/devtools/views/Components/InspectedElementHooksTree.js at line 44.
What does InspectedElementHooksTree() call?
InspectedElementHooksTree() calls 1 function(s): serializeHooksForCopy.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free