@@ -3,15 +3,15 @@ document.addEventListener('DOMContentLoaded', function() {
3
3
mobileMenu = document . getElementById ( 'mobile-menu' ) ;
4
4
5
5
var localContextInUrl = '' ;
6
-
6
+
7
7
if ( COMPODOC_CURRENT_PAGE_CONTEXT !== '' ) {
8
8
localContextInUrl = localContextInUrl ;
9
9
switch ( COMPODOC_CURRENT_PAGE_CONTEXT ) {
10
10
case 'additional-page' :
11
- localContextInUrl = 'additional-documentation'
11
+ localContextInUrl = 'additional-documentation' ;
12
12
break ;
13
13
case 'class' :
14
- localContextInUrl = 'classes'
14
+ localContextInUrl = 'classes' ;
15
15
break ;
16
16
case 'miscellaneous-functions' :
17
17
case 'miscellaneous-variables' :
@@ -24,13 +24,13 @@ document.addEventListener('DOMContentLoaded', function() {
24
24
}
25
25
26
26
function hasClass ( el , cls ) {
27
- return el . className && new RegExp ( " (\\s|^)" + cls + " (\\s|$)" ) . test ( el . className ) ;
27
+ return el . className && new RegExp ( ' (\\s|^)' + cls + ' (\\s|$)' ) . test ( el . className ) ;
28
28
}
29
29
30
30
var processLink = function ( link , url ) {
31
31
if ( url . charAt ( 0 ) !== '.' ) {
32
32
var prefix = '' ;
33
- switch ( COMPODOC_CURRENT_PAGE_DEPTH ) {
33
+ switch ( COMPODOC_CURRENT_PAGE_DEPTH ) {
34
34
case 5 :
35
35
prefix = '../../../../../' ;
36
36
break ;
@@ -52,24 +52,26 @@ document.addEventListener('DOMContentLoaded', function() {
52
52
}
53
53
link . setAttribute ( 'href' , prefix + url ) ;
54
54
}
55
- }
55
+ } ;
56
56
57
57
var processMenuLinks = function ( links , dontAddClass ) {
58
58
for ( var i = 0 ; i < links . length ; i ++ ) {
59
59
var link = links [ i ] ;
60
60
var linkHref = link . getAttribute ( 'href' ) ;
61
61
if ( linkHref ) {
62
62
var linkHrefFile = linkHref . substr ( linkHref . lastIndexOf ( '/' ) + 1 , linkHref . length ) ;
63
- if ( linkHrefFile . toLowerCase ( ) === COMPODOC_CURRENT_PAGE_URL . toLowerCase ( )
64
- && link . innerHTML . indexOf ( 'Getting started' ) == - 1
65
- && ! dontAddClass
66
- && linkHref . toLowerCase ( ) . indexOf ( localContextInUrl . toLowerCase ( ) ) !== - 1 ) {
63
+ if (
64
+ linkHrefFile . toLowerCase ( ) === COMPODOC_CURRENT_PAGE_URL . toLowerCase ( ) &&
65
+ link . innerHTML . indexOf ( 'Getting started' ) == - 1 &&
66
+ ! dontAddClass &&
67
+ linkHref . toLowerCase ( ) . indexOf ( localContextInUrl . toLowerCase ( ) ) !== - 1
68
+ ) {
67
69
link . classList . add ( 'active' ) ;
68
70
}
69
71
processLink ( link , linkHref ) ;
70
72
}
71
73
}
72
- }
74
+ } ;
73
75
var chapterLinks = document . querySelectorAll ( '[data-type="chapter-link"]' ) ;
74
76
processMenuLinks ( chapterLinks ) ;
75
77
var entityLinks = document . querySelectorAll ( '[data-type="entity-link"]' ) ;
@@ -84,7 +86,7 @@ document.addEventListener('DOMContentLoaded', function() {
84
86
var url = entityLogo . getAttribute ( 'data-src' ) ;
85
87
if ( url . charAt ( 0 ) !== '.' ) {
86
88
var prefix = '' ;
87
- switch ( COMPODOC_CURRENT_PAGE_DEPTH ) {
89
+ switch ( COMPODOC_CURRENT_PAGE_DEPTH ) {
88
90
case 5 :
89
91
prefix = '../../../../../' ;
90
92
break ;
@@ -102,13 +104,13 @@ document.addEventListener('DOMContentLoaded', function() {
102
104
break ;
103
105
case 0 :
104
106
prefix = './' ;
105
- break
107
+ break ;
106
108
}
107
109
entityLogo . src = prefix + url ;
108
110
}
109
111
}
110
112
}
111
- }
113
+ } ;
112
114
processLogos ( entityLogos ) ;
113
115
114
116
setTimeout ( function ( ) {
@@ -156,7 +158,7 @@ document.addEventListener('DOMContentLoaded', function() {
156
158
elementIconChild = parent . getElementsByClassName ( faAngleDownClass ) [ 0 ] ;
157
159
}
158
160
if ( elementIconChild ) {
159
- elementIconChild = $ ( elementIconChild )
161
+ elementIconChild = $ ( elementIconChild ) ;
160
162
if ( elementIconChild . hasClass ( faAngleUpClass ) ) {
161
163
elementIconChild . addClass ( faAngleDownClass ) ;
162
164
elementIconChild . removeClass ( faAngleUpClass ) ;
@@ -180,7 +182,7 @@ document.addEventListener('DOMContentLoaded', function() {
180
182
activeMenuClass ,
181
183
activeLink ;
182
184
183
- for ( i ; i < len ; i ++ ) {
185
+ for ( i ; i < len ; i ++ ) {
184
186
if ( getComputedStyle ( menus [ i ] ) . display != 'none' ) {
185
187
activeMenu = menus [ i ] ;
186
188
activeMenuClass = activeMenu . getAttribute ( 'class' ) . split ( ' ' ) [ 0 ] ;
@@ -202,7 +204,9 @@ document.addEventListener('DOMContentLoaded', function() {
202
204
parentChapterMenu = parentUl . parentNode ;
203
205
if ( parentChapterMenu ) {
204
206
var toggler = parentChapterMenu . querySelector ( '.menu-toggler' ) ,
205
- elementIconChild = toggler . getElementsByClassName ( faAngleUpClass ) [ 0 ] ;
207
+ elementIconChild = toggler . getElementsByClassName (
208
+ faAngleUpClass
209
+ ) [ 0 ] ;
206
210
if ( toggler && ! elementIconChild ) {
207
211
toggler . click ( ) ;
208
212
}
@@ -212,24 +216,46 @@ document.addEventListener('DOMContentLoaded', function() {
212
216
if ( linkContext && linkContext === 'sub-entity' ) {
213
217
// Toggle also the master parent menu
214
218
var linkContextId = activeLink . getAttribute ( 'data-context-id' ) ;
215
- var toggler = activeMenu . querySelector ( '.chapter.' + linkContextId + ' a .menu-toggler' ) ;
219
+ var toggler = activeMenu . querySelector (
220
+ '.chapter.' + linkContextId + ' a .menu-toggler'
221
+ ) ;
216
222
if ( toggler ) {
217
223
toggler . click ( ) ;
218
224
}
225
+ if ( linkContextId === 'additional' ) {
226
+ var mainToggler = activeMenu . querySelector (
227
+ '.chapter.' + linkContextId + ' div.menu-toggler'
228
+ ) ;
229
+ if ( mainToggler ) {
230
+ mainToggler . click ( ) ;
231
+ }
232
+ }
219
233
}
220
234
} else if ( linkType === 'chapter-link' ) {
235
+ var linkContextId = activeLink . getAttribute ( 'data-context-id' ) ;
221
236
var toggler = activeLink . querySelector ( '.menu-toggler' ) ;
222
237
if ( toggler ) {
223
238
toggler . click ( ) ;
224
239
}
240
+ if ( linkContextId === 'additional' ) {
241
+ var mainToggler = activeMenu . querySelector (
242
+ '.chapter.' + linkContextId + ' div.menu-toggler'
243
+ ) ;
244
+ if ( mainToggler ) {
245
+ mainToggler . click ( ) ;
246
+ }
247
+ }
225
248
}
226
249
setTimeout ( function ( ) {
227
250
activeMenu . scrollTop = activeLink . offsetTop ;
228
- if ( activeLink . innerHTML . toLowerCase ( ) . indexOf ( 'readme' ) != - 1 || activeLink . innerHTML . toLowerCase ( ) . indexOf ( 'overview' ) != - 1 ) {
251
+ if (
252
+ activeLink . innerHTML . toLowerCase ( ) . indexOf ( 'readme' ) != - 1 ||
253
+ activeLink . innerHTML . toLowerCase ( ) . indexOf ( 'overview' ) != - 1
254
+ ) {
229
255
activeMenu . scrollTop = 0 ;
230
256
}
231
257
} , 300 ) ;
232
258
}
233
259
}
234
260
} , 0 ) ;
235
- } ) ;
261
+ } ) ;
0 commit comments