1
- function setupFiltering ( ) {
1
+ function _setupFiltering ( ) {
2
2
const lintCards = document
3
3
. getElementById ( 'card-container' )
4
4
?. querySelectorAll ( '.lint-card' ) ;
@@ -49,31 +49,31 @@ function setupFiltering() {
49
49
50
50
filterChips . forEach ( chip => {
51
51
chip . addEventListener ( 'click' , ( ) => {
52
- closeMenusAndToggle ( ) ;
52
+ _closeMenusAndToggle ( ) ;
53
53
chip . classList . toggle ( 'selected' ) ;
54
54
const checked = chip . getAttribute ( 'aria-checked' ) ;
55
- chip . setAttribute ( 'aria-checked' ,
56
- checked === 'true' ? 'false' : 'true' ) ;
55
+ chip . setAttribute ( 'aria-checked' , checked === 'true' ? 'false' : 'true' ) ;
57
56
filterRules ( ) ;
58
57
} ) ;
59
58
} ) ;
60
59
61
60
const selectChips = filterAndSearch . querySelectorAll ( 'button.select-chip' ) ;
62
61
selectChips . forEach ( chip => {
63
- chip . addEventListener ( 'click' , ( e ) => {
62
+ chip . addEventListener ( 'click' , ( _ ) => {
64
63
const menuToToggle = chip . dataset . menu ;
65
- closeMenusAndToggle ( menuToToggle ) ;
64
+ _closeMenusAndToggle ( menuToToggle ) ;
66
65
} ) ;
67
66
68
67
const options = chip . parentElement . querySelectorAll ( '.select-menu button' ) ;
68
+
69
69
function unselectOptions ( ) {
70
70
options . forEach ( option => option . classList . remove ( 'selected' ) ) ;
71
71
}
72
72
73
73
options . forEach ( option => {
74
74
option . addEventListener ( 'click' , ( ) => {
75
75
if ( option . classList . contains ( 'selected' ) ) {
76
- resetChip ( chip ) ;
76
+ _resetChip ( chip ) ;
77
77
} else {
78
78
unselectOptions ( ) ;
79
79
option . classList . add ( 'selected' ) ;
@@ -83,8 +83,8 @@ function setupFiltering() {
83
83
}
84
84
85
85
filterRules ( ) ;
86
- } )
87
- } )
86
+ } ) ;
87
+ } ) ;
88
88
} ) ;
89
89
90
90
const searchInput = filterAndSearch . querySelector ( 'search input' ) ;
@@ -110,28 +110,28 @@ function setupFiltering() {
110
110
111
111
filterAndSearch . querySelector ( '#reset-filters' ) . addEventListener ( 'click' , ( ) => {
112
112
searchInput . value = '' ;
113
- chips . forEach ( chip => resetChip ( chip ) ) ;
113
+ chips . forEach ( chip => _resetChip ( chip ) ) ;
114
114
filterRules ( ) ;
115
115
} ) ;
116
116
117
117
document . addEventListener ( 'click' , ( event ) => {
118
118
// If not clicking inside a menu wrapper, close all menus.
119
119
if ( ! event . target . closest ( '.button-menu-wrapper' ) ) {
120
- closeMenusAndToggle ( ) ;
120
+ _closeMenusAndToggle ( ) ;
121
121
}
122
122
} ) ;
123
123
124
124
document . addEventListener ( 'keydown' , ( event ) => {
125
- // If pressing esc, close any open menus.
126
- if ( event . key === 'Escape' ) {
127
- closeMenusAndToggle ( ) ;
125
+ // If pressing esc in a menu , close any open menus.
126
+ if ( event . key === 'Escape' && event . target . closest ( '#filter-and-search' ) ) {
127
+ _closeMenusAndToggle ( ) ;
128
128
}
129
129
} ) ;
130
130
131
131
filterRules ( ) ;
132
132
}
133
133
134
- function closeMenusAndToggle ( menuToToggle = '' ) {
134
+ function _closeMenusAndToggle ( menuToToggle = '' ) {
135
135
document . querySelectorAll ( '.select-menu' ) . forEach ( menu => {
136
136
if ( menu . id === menuToToggle ) {
137
137
menu . classList . toggle ( 'show-menu' ) ;
@@ -142,7 +142,7 @@ function closeMenusAndToggle(menuToToggle = '') {
142
142
} ) ;
143
143
}
144
144
145
- function resetChip ( chip ) {
145
+ function _resetChip ( chip ) {
146
146
chip . classList . remove ( 'selected' ) ;
147
147
if ( chip . classList . contains ( 'filter-chip' ) ) {
148
148
chip . setAttribute ( 'aria-checked' , 'false' ) ;
@@ -153,8 +153,8 @@ function resetChip(chip) {
153
153
}
154
154
}
155
155
156
- if ( document . readyState !== " loading" ) {
157
- setupFiltering ( ) ;
156
+ if ( document . readyState !== ' loading' ) {
157
+ _setupFiltering ( ) ;
158
158
} else {
159
- document . addEventListener ( " DOMContentLoaded" , setupFiltering ) ;
159
+ document . addEventListener ( ' DOMContentLoaded' , _setupFiltering ) ;
160
160
}
0 commit comments