MCPcopy Create free account
hub / github.com/fontsource/fontsource / SidebarNodes

Function SidebarNodes

website/app/components/docs/LeftSidebar.tsx:112–162  ·  view source on GitHub ↗
({
	nodes,
	currentPath,
	toggle,
}: {
	nodes: PageTree.Node[];
	currentPath: string;
	toggle?: () => void;
})

Source from the content-addressed store, hash-verified

110};
111
112const SidebarNodes = ({
113 nodes,
114 currentPath,
115 toggle,
116}: {
117 nodes: PageTree.Node[];
118 currentPath: string;
119 toggle?: () => void;
120}) => (
121 <>
122 {nodes.map((node) => {
123 switch (node.type) {
124 case 'separator':
125 return (
126 <Text
127 component="div"
128 className={classes.separator}
129 key={nodeKey(node)}
130 >
131 {node.name}
132 </Text>
133 );
134 case 'page':
135 return (
136 <PageLink
137 key={node.$id ?? node.url}
138 node={node}
139 className={classes.page}
140 active={currentPath === node.url}
141 toggle={toggle}
142 />
143 );
144 case 'folder':
145 return (
146 <Stack className={classes.folder} gap={3} key={nodeKey(node)}>
147 <Text component="div" className={classes.folderTitle}>
148 {node.name}
149 </Text>
150 <SidebarNodes
151 nodes={node.children}
152 currentPath={currentPath}
153 toggle={toggle}
154 />
155 </Stack>
156 );
157 default:
158 return null;
159 }
160 })}
161 </>
162);
163
164const RootSection = ({
165 node,

Callers

nothing calls this directly

Calls 1

nodeKeyFunction · 0.85

Tested by

no test coverage detected