@@ -9,8 +9,10 @@ class DocumentableList extends Component {
99 super ( props ) ;
1010
1111 this . refs = {
12- tabs : findRefs ( ".section-tab[data-togglable]" , findRef ( ".tabbedcontent" ) ) ,
13- sections : findRefs ( "div[data-togglable]" , findRef ( ".tabbedcontent" ) ) ,
12+ tabs : findRefs ( ".names .tab[data-togglable]" , findRef ( ".membersList" ) ) . concat (
13+ findRefs ( ".contents h2[data-togglable]" , findRef ( ".membersList" ) )
14+ ) ,
15+ sections : findRefs ( ".contents .tab[data-togglable]" , findRef ( ".membersList" ) ) ,
1416 } ;
1517
1618 this . state = {
@@ -24,14 +26,12 @@ class DocumentableList extends Component {
2426 ref . dataset . visibility = isVisible
2527 }
2628
27- toggleDisplayStyles ( condition , ref , onVisibleStyle ) {
28- ref . style . display = condition ? onVisibleStyle : 'none'
29+ toggleDisplayStyles ( condition , ref ) {
30+ ref . style . display = condition ? null : 'none'
2931 }
3032
3133 render ( { filter } ) {
3234 this . state . list . sectionsRefs . map ( sectionRef => {
33- const tabRef = this . state . list . getTabRefFromSectionRef ( sectionRef ) ;
34-
3535 const isTabVisible = this . state . list
3636 . getSectionListRefs ( sectionRef )
3737 . filter ( ( listRef ) => {
@@ -41,23 +41,26 @@ class DocumentableList extends Component {
4141 . filter ( elementData => {
4242 const isElementVisible = this . state . list . isElementVisible ( elementData , filter ) ;
4343
44- this . toggleDisplayStyles ( isElementVisible , elementData . ref , "table" ) ;
44+ this . toggleDisplayStyles ( isElementVisible , elementData . ref ) ;
4545 this . toggleElementDatasetVisibility ( isElementVisible , elementData . ref ) ;
4646
4747 return isElementVisible ;
4848 } ) . length ;
4949
50- this . toggleDisplayStyles ( isListVisible , listRef , "block" ) ;
50+ this . toggleDisplayStyles ( isListVisible , listRef ) ;
5151
5252 return isListVisible ;
5353 } ) . length ;
5454
55- this . toggleDisplayStyles ( isTabVisible , tabRef , "inline-block" ) ;
55+ const outerThis = this
56+ this . state . list . getTabRefFromSectionRef ( sectionRef ) . forEach ( function ( tabRef ) {
57+ outerThis . toggleDisplayStyles ( isTabVisible , tabRef ) ;
58+ } )
5659 } ) ;
5760 }
5861}
5962
60- class List {
63+ class List {
6164 /**
6265 * @param tabsRef { Element[] }
6366 * @param sectionRefs { Element[] }
@@ -78,15 +81,15 @@ class List {
7881 /**
7982 * @param name { string }
8083 */
81- filterTab ( name ) {
84+ filterTab ( name ) {
8285 return name !== "Linear supertypes" && name !== "Known subtypes" && name !== "Type hierarchy"
8386 }
8487
8588 /**
8689 * @param sectionRef { Element }
8790 */
8891 getTabRefFromSectionRef ( sectionRef ) {
89- return this . tabsRefs . find (
92+ return this . tabsRefs . filter (
9093 ( tabRef ) => this . _getTogglable ( tabRef ) === this . _getTogglable ( sectionRef )
9194 ) ;
9295 }
@@ -124,8 +127,8 @@ class List {
124127 * @param filter { Filter }
125128 */
126129 isElementVisible ( elementData , filter ) {
127- return ! areFiltersFromElementSelected ( )
128- ? false
130+ return ! areFiltersFromElementSelected ( )
131+ ? false
129132 : includesInputValue ( )
130133
131134 function includesInputValue ( ) {
@@ -141,7 +144,7 @@ class List {
141144 . filter ( ( [ key ] ) => ! ! filter . filters [ getFilterKey ( key ) ] )
142145
143146 /** @type { Dataset } */
144- const defaultFiltersForMembersWithoutDataAttribute =
147+ const defaultFiltersForMembersWithoutDataAttribute =
145148 defaultFilters . reduce ( ( acc , [ key , value ] ) => {
146149 const filterKey = getFilterKey ( key )
147150 const shouldAddDefaultFilter = ! dataset . some ( ( [ k ] ) => k === filterKey )
@@ -156,7 +159,7 @@ class List {
156159 return defaultFilter ? [ k , `${ v } ,${ defaultFilter [ 1 ] } ` ] : [ k , v ]
157160 } )
158161
159- const datasetWithDefaultFilters = [
162+ const datasetWithDefaultFilters = [
160163 ...defaultFiltersForMembersWithoutDataAttribute ,
161164 ...datasetWithAppendedDefaultFilters
162165 ]
0 commit comments