1
- ( function ( ) {
2
- const input = document . querySelector ( " #search" ) ;
3
- const targets = [ ...document . querySelectorAll ( " #sidebarNav li" ) ] ;
4
- input . addEventListener ( " keyup" , ( ) => {
1
+ ( function ( ) {
2
+ const input = document . querySelector ( ' #search' )
3
+ const targets = [ ...document . querySelectorAll ( ' #sidebarNav li' ) ]
4
+ input . addEventListener ( ' keyup' , ( ) => {
5
5
// loop over each targets and hide the not corresponding ones
6
- targets . forEach ( ( target ) => {
6
+ targets . forEach ( target => {
7
7
if ( ! target . innerText . toLowerCase ( ) . includes ( input . value . toLowerCase ( ) ) ) {
8
- target . style . display = " none" ;
8
+ target . style . display = ' none'
9
9
10
10
/**
11
11
* Detects an empty list
12
12
* Remove the list and the list's title if the list is not displayed
13
13
*/
14
- const list = [ ...target . parentNode . childNodes ] . filter (
15
- ( elem ) => elem . style . display !== "none"
16
- ) ;
14
+ const list = [ ...target . parentNode . childNodes ] . filter ( elem => elem . style . display !== 'none' )
17
15
18
16
if ( ! list . length ) {
19
- target . parentNode . style . display = " none" ;
20
- target . parentNode . previousSibling . style . display = " none" ;
17
+ target . parentNode . style . display = ' none'
18
+ target . parentNode . previousSibling . style . display = ' none'
21
19
}
22
20
23
21
/**
24
22
* Detects empty category
25
23
* Remove the entire category if no item is displayed
26
24
*/
27
- const category = [ ...target . parentNode . parentNode . childNodes ] . filter (
28
- ( elem ) => elem . tagName !== "H2" && elem . style . display !== "none"
29
- ) ;
25
+ const category = [ ...target . parentNode . parentNode . childNodes ]
26
+ . filter ( elem => elem . tagName !== 'H2' && elem . style . display !== 'none' )
30
27
31
28
if ( ! category . length ) {
32
- target . parentNode . parentNode . style . display = " none" ;
29
+ target . parentNode . parentNode . style . display = ' none'
33
30
}
34
31
} else {
35
- target . parentNode . style . display = " block" ;
36
- target . parentNode . previousSibling . style . display = " block" ;
37
- target . parentNode . parentNode . style . display = " block" ;
38
- target . style . display = " block" ;
32
+ target . parentNode . style . display = ' block'
33
+ target . parentNode . previousSibling . style . display = ' block'
34
+ target . parentNode . parentNode . style . display = ' block'
35
+ target . style . display = ' block'
39
36
}
40
- } ) ;
41
- } ) ;
42
- } ) ( ) ;
37
+ } )
38
+ } )
39
+ } ) ( )
0 commit comments