blob: 5f0aeedac8c39f477f046d615cfb04adcc94e3f5 [file] [log] [blame]
import React, { memo } from 'react';
import { DocSidebarItemsExpandedStateProvider, useVisibleSidebarItems } from '@docusaurus/plugin-content-docs/client';
import DocSidebarItem from '@theme/DocSidebarItem';
import type { Props } from '@theme/DocSidebarItems';
function DocSidebarItems({ items, ...props }: Props): JSX.Element {
const visibleItems = useVisibleSidebarItems(items, props.activePath);
return (
<DocSidebarItemsExpandedStateProvider>
{visibleItems.map((item, index) => (
<DocSidebarItem key={index} item={item} length={visibleItems.length} index={index} {...props} />
))}
</DocSidebarItemsExpandedStateProvider>
);
}
// Optimize sidebar at each "level"
export default memo(DocSidebarItems);