File tree Expand file tree Collapse file tree 3 files changed +14
-6
lines changed
Expand file tree Collapse file tree 3 files changed +14
-6
lines changed Original file line number Diff line number Diff line change @@ -55,11 +55,14 @@ export type FolderState = {
5555 collapsed : boolean
5656}
5757
58+ let numExplorers = 0
5859export default ( ( userOpts ?: Partial < Options > ) => {
5960 const opts : Options = { ...defaultOptions , ...userOpts }
6061 const { OverflowList, overflowListAfterDOMLoaded } = OverflowListFactory ( )
6162
6263 const Explorer : QuartzComponent = ( { cfg, displayClass } : QuartzComponentProps ) => {
64+ const id = `explorer-${ numExplorers ++ } `
65+
6366 return (
6467 < div
6568 class = { classNames ( displayClass , "explorer" ) }
@@ -77,7 +80,7 @@ export default ((userOpts?: Partial<Options>) => {
7780 type = "button"
7881 class = "explorer-toggle mobile-explorer hide-until-loaded"
7982 data-mobile = { true }
80- aria-controls = "explorer-content"
83+ aria-controls = { id }
8184 >
8285 < svg
8386 xmlns = "http://www.w3.org/2000/svg"
@@ -116,7 +119,7 @@ export default ((userOpts?: Partial<Options>) => {
116119 < polyline points = "6 9 12 15 18 9" > </ polyline >
117120 </ svg >
118121 </ button >
119- < div class = "explorer-content" aria-expanded = { false } >
122+ < div id = { id } class = "explorer-content" aria-expanded = { false } role = "group" >
120123 < OverflowList class = "explorer-ul" />
121124 </ div >
122125 < template id = "template-file" >
Original file line number Diff line number Diff line change @@ -12,9 +12,9 @@ const OverflowList = ({
1212 )
1313}
1414
15- let numExplorers = 0
15+ let numLists = 0
1616export default ( ) => {
17- const id = `list-${ numExplorers ++ } `
17+ const id = `list-${ numLists ++ } `
1818
1919 return {
2020 OverflowList : ( props : JSX . HTMLAttributes < HTMLUListElement > ) => (
Original file line number Diff line number Diff line change @@ -17,6 +17,7 @@ const defaultOptions: Options = {
1717 layout : "modern" ,
1818}
1919
20+ let numTocs = 0
2021export default ( ( opts ?: Partial < Options > ) => {
2122 const layout = opts ?. layout ?? defaultOptions . layout
2223 const { OverflowList, overflowListAfterDOMLoaded } = OverflowListFactory ( )
@@ -29,12 +30,13 @@ export default ((opts?: Partial<Options>) => {
2930 return null
3031 }
3132
33+ const id = `toc-${ numTocs ++ } `
3234 return (
3335 < div class = { classNames ( displayClass , "toc" ) } >
3436 < button
3537 type = "button"
3638 class = { fileData . collapseToc ? "collapsed toc-header" : "toc-header" }
37- aria-controls = "toc-content"
39+ aria-controls = { id }
3840 aria-expanded = { ! fileData . collapseToc }
3941 >
4042 < h3 > { i18n ( cfg . locale ) . components . tableOfContents . title } </ h3 >
@@ -53,7 +55,10 @@ export default ((opts?: Partial<Options>) => {
5355 < polyline points = "6 9 12 15 18 9" > </ polyline >
5456 </ svg >
5557 </ button >
56- < OverflowList class = { fileData . collapseToc ? "collapsed toc-content" : "toc-content" } >
58+ < OverflowList
59+ id = { id }
60+ class = { fileData . collapseToc ? "collapsed toc-content" : "toc-content" }
61+ >
5762 { fileData . toc . map ( ( tocEntry ) => (
5863 < li key = { tocEntry . slug } class = { `depth-${ tocEntry . depth } ` } >
5964 < a href = { `#${ tocEntry . slug } ` } data-for = { tocEntry . slug } >
You can’t perform that action at this time.
0 commit comments