11import React , { useEffect , useMemo } from "react" ;
22import clsx from "clsx" ;
3- import { ThemeClassNames , useThemeConfig , usePrevious , Collapsible , useCollapsible } from "@docusaurus/theme-common" ;
4- import { isActiveSidebarItem , findFirstSidebarItemLink , useDocSidebarItemsExpandedState , isSamePath } from "@docusaurus/theme-common/internal" ;
3+ import {
4+ ThemeClassNames ,
5+ useThemeConfig ,
6+ usePrevious ,
7+ Collapsible ,
8+ useCollapsible ,
9+ } from "@docusaurus/theme-common" ;
10+ import { isSamePath } from "@docusaurus/theme-common/internal" ;
11+ import {
12+ isActiveSidebarItem ,
13+ findFirstSidebarItemLink ,
14+ useDocSidebarItemsExpandedState ,
15+ } from "@docusaurus/plugin-content-docs/client" ;
516import Link from "@docusaurus/Link" ;
617import { translate } from "@docusaurus/Translate" ;
718import useIsBrowser from "@docusaurus/useIsBrowser" ;
@@ -61,13 +72,21 @@ function CollapseButton({ collapsed, categoryLabel, onClick }) {
6172 { label : categoryLabel } ,
6273 )
6374 }
75+ aria-expanded = { ! collapsed }
6476 type = "button"
6577 className = "clean-btn menu__caret"
6678 onClick = { onClick }
6779 />
6880 ) ;
6981}
70- export default function DocSidebarItemCategory ( { item, onItemClick, activePath, level, index, ...props } ) {
82+ export default function DocSidebarItemCategory ( {
83+ item,
84+ onItemClick,
85+ activePath,
86+ level,
87+ index,
88+ ...props
89+ } ) {
7190 const { items, label, collapsible, className, href } = item ;
7291 const {
7392 docs : {
@@ -138,7 +157,8 @@ export default function DocSidebarItemCategory({ item, onItemClick, activePath,
138157 }
139158 }
140159 aria-current = { isCurrentPage ? "page" : undefined }
141- aria-expanded = { collapsible ? ! collapsed : undefined }
160+ role = { collapsible && ! href ? "button" : undefined }
161+ aria-expanded = { collapsible && ! href ? ! collapsed : undefined }
142162 href = { collapsible ? hrefWithSSRFallback ?? "#" : hrefWithSSRFallback }
143163 { ...props }
144164 >
@@ -157,7 +177,13 @@ export default function DocSidebarItemCategory({ item, onItemClick, activePath,
157177 </ div >
158178
159179 < Collapsible lazy as = "ul" className = "menu__list" collapsed = { collapsed } >
160- < DocSidebarItems items = { items } tabIndex = { collapsed ? - 1 : 0 } onItemClick = { onItemClick } activePath = { activePath } level = { level + 1 } />
180+ < DocSidebarItems
181+ items = { items }
182+ tabIndex = { collapsed ? - 1 : 0 }
183+ onItemClick = { onItemClick }
184+ activePath = { activePath }
185+ level = { level + 1 }
186+ />
161187 </ Collapsible >
162188 </ li >
163189 ) ;
0 commit comments