useCommitFilteringAndNavigation() — react Function Reference
Architecture documentation for the useCommitFilteringAndNavigation() function in useCommitFilteringAndNavigation.js from the react codebase.
Entity Profile
Dependency Diagram
graph TD e24e0e52_ceca_3aad_8962_b582af497d29["useCommitFilteringAndNavigation()"] 1d558132_0276_7e48_1a18_611bb9fef088["useCommitFilteringAndNavigation.js"] e24e0e52_ceca_3aad_8962_b582af497d29 -->|defined in| 1d558132_0276_7e48_1a18_611bb9fef088 style e24e0e52_ceca_3aad_8962_b582af497d29 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/react-devtools-shared/src/devtools/views/Profiler/useCommitFilteringAndNavigation.js lines 34–77
export function useCommitFilteringAndNavigation(
commitData: Array<CommitDataFrontend>,
): CommitFilteringAndNavigation {
// Filter settings persisted to localStorage
const [isCommitFilterEnabled, setIsCommitFilterEnabledValue] =
useLocalStorage<boolean>('React::DevTools::isCommitFilterEnabled', false);
const [minCommitDuration, setMinCommitDurationValue] =
useLocalStorage<number>('minCommitDuration', 0);
// Currently selected commit index (in the unfiltered list)
const [selectedCommitIndex, selectCommitIndex] = useState<number | null>(
null,
);
// Reset commit index when commitData changes (e.g., when switching roots).
const [previousCommitData, setPreviousCommitData] =
useState<Array<CommitDataFrontend>>(commitData);
if (previousCommitData !== commitData) {
setPreviousCommitData(commitData);
selectCommitIndex(commitData.length > 0 ? 0 : null);
}
const calculateFilteredIndices = useCallback(
(enabled: boolean, minDuration: number): Array<number> => {
return commitData.reduce((reduced: Array<number>, commitDatum, index) => {
if (!enabled || commitDatum.duration >= minDuration) {
reduced.push(index);
}
return reduced;
}, ([]: Array<number>));
},
[commitData],
);
const findFilteredIndex = useCallback(
(commitIndex: number | null, filtered: Array<number>): number | null => {
if (commitIndex === null) return null;
for (let i = 0; i < filtered.length; i++) {
if (filtered[i] === commitIndex) {
return i;
}
}
return null;
},
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does useCommitFilteringAndNavigation() do?
useCommitFilteringAndNavigation() is a function in the react codebase, defined in packages/react-devtools-shared/src/devtools/views/Profiler/useCommitFilteringAndNavigation.js.
Where is useCommitFilteringAndNavigation() defined?
useCommitFilteringAndNavigation() is defined in packages/react-devtools-shared/src/devtools/views/Profiler/useCommitFilteringAndNavigation.js at line 34.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free