@@ -36,8 +36,8 @@ export const TabbedPane: React.FunctionComponent<{
3636 setSelectedTab ?: ( tab : string ) => void ,
3737 dataTestId ?: string ,
3838 mode ?: 'default' | 'select' ,
39- id : string ,
40- } > = ( { tabs , selectedTab , setSelectedTab , leftToolbar , rightToolbar , dataTestId , mode , id } ) => {
39+ } > = ( { tabs , selectedTab , setSelectedTab , leftToolbar , rightToolbar , dataTestId , mode } ) => {
40+ const id = React . useId ( ) ;
4141 if ( ! selectedTab )
4242 selectedTab = tabs [ 0 ] . id ;
4343 if ( ! mode )
@@ -53,7 +53,7 @@ export const TabbedPane: React.FunctionComponent<{
5353 < TabbedPaneTab
5454 key = { tab . id }
5555 id = { tab . id }
56- ariaControls = { `pane- ${ id } -tab -${ tab . id } ` }
56+ ariaControls = { `${ id } -${ tab . id } ` }
5757 title = { tab . title }
5858 count = { tab . count }
5959 errorCount = { tab . errorCount }
@@ -72,7 +72,7 @@ export const TabbedPane: React.FunctionComponent<{
7272 suffix = ` (${ tab . count } )` ;
7373 if ( tab . errorCount )
7474 suffix = ` (${ tab . errorCount } )` ;
75- return < option key = { tab . id } value = { tab . id } selected = { tab . id === selectedTab } role = 'tab' aria-controls = { `pane- ${ id } -tab -${ tab . id } ` } > { tab . title } { suffix } </ option > ;
75+ return < option key = { tab . id } value = { tab . id } selected = { tab . id === selectedTab } role = 'tab' aria-controls = { `${ id } -${ tab . id } ` } > { tab . title } { suffix } </ option > ;
7676 } ) }
7777 </ select >
7878 </ div > }
@@ -84,9 +84,9 @@ export const TabbedPane: React.FunctionComponent<{
8484 tabs . map ( tab => {
8585 const className = 'tab-content tab-' + tab . id ;
8686 if ( tab . component )
87- return < div key = { tab . id } id = { `pane- ${ id } -tab -${ tab . id } ` } role = 'tabpanel' aria-label = { tab . title } className = { className } style = { { display : selectedTab === tab . id ? 'inherit' : 'none' } } > { tab . component } </ div > ;
87+ return < div key = { tab . id } id = { `${ id } -${ tab . id } ` } role = 'tabpanel' aria-label = { tab . title } className = { className } style = { { display : selectedTab === tab . id ? 'inherit' : 'none' } } > { tab . component } </ div > ;
8888 if ( selectedTab === tab . id )
89- return < div key = { tab . id } id = { `pane- ${ id } -tab -${ tab . id } ` } role = 'tabpanel' aria-label = { tab . title } className = { className } > { tab . render ! ( ) } </ div > ;
89+ return < div key = { tab . id } id = { `${ id } -${ tab . id } ` } role = 'tabpanel' aria-label = { tab . title } className = { className } > { tab . render ! ( ) } </ div > ;
9090 } )
9191 }
9292 </ div >
0 commit comments