22
22
*/
23
23
24
24
import MDCFoundation from '@material/base/foundation' ;
25
- /* eslint-disable no-unused-vars */
26
- import { MDCSelectionControlState } from '@material/selection-control/index' ;
27
25
import MDCCheckboxAdapter from './adapter' ;
28
- /* eslint-enable no-unused-vars */
29
- import { cssClasses , strings , numbers } from './constants' ;
26
+ import { cssClasses , numbers , strings } from './constants' ;
30
27
31
- /**
32
- * @extends {MDCFoundation<!MDCCheckboxAdapter> }
33
- */
34
- class MDCCheckboxFoundation extends MDCFoundation {
35
- /** @return enum {cssClasses} */
28
+ class MDCCheckboxFoundation extends MDCFoundation < MDCCheckboxAdapter > {
36
29
static get cssClasses ( ) {
37
30
return cssClasses ;
38
31
}
39
32
40
- /** @return enum {strings} */
41
33
static get strings ( ) {
42
34
return strings ;
43
35
}
44
36
45
- /** @return enum {numbers} */
46
37
static get numbers ( ) {
47
38
return numbers ;
48
39
}
49
40
50
- /** @return {!MDCCheckboxAdapter } */
51
- static get defaultAdapter ( ) {
52
- return /** @type {!MDCCheckboxAdapter } */ ( {
53
- addClass : ( /* className: string */ ) => { } ,
54
- removeClass : ( /* className: string */ ) => { } ,
55
- setNativeControlAttr : ( /* attr: string, value: string */ ) => { } ,
56
- removeNativeControlAttr : ( /* attr: string */ ) => { } ,
57
- forceLayout : ( ) => { } ,
58
- isAttachedToDOM : ( ) => /* boolean */ { } ,
59
- isIndeterminate : ( ) => /* boolean */ { } ,
60
- isChecked : ( ) => /* boolean */ { } ,
61
- hasNativeControl : ( ) => /* boolean */ { } ,
62
- setNativeControlDisabled : ( /* disabled: boolean */ ) => { } ,
63
- } ) ;
41
+ static get defaultAdapter ( ) : MDCCheckboxAdapter {
42
+ return {
43
+ addClass : ( ) => undefined ,
44
+ forceLayout : ( ) => undefined ,
45
+ hasNativeControl : ( ) => false ,
46
+ isAttachedToDOM : ( ) => false ,
47
+ isChecked : ( ) => false ,
48
+ isIndeterminate : ( ) => false ,
49
+ removeClass : ( ) => undefined ,
50
+ removeNativeControlAttr : ( ) => undefined ,
51
+ setNativeControlAttr : ( ) => undefined ,
52
+ setNativeControlDisabled : ( ) => undefined ,
53
+ } ;
64
54
}
65
55
66
- constructor ( adapter ) {
67
- super ( Object . assign ( MDCCheckboxFoundation . defaultAdapter , adapter ) ) ;
68
-
69
- /** @private {string} */
70
- this . currentCheckState_ = strings . TRANSITION_STATE_INIT ;
71
-
72
- /** @private {string} */
73
- this . currentAnimationClass_ = '' ;
74
-
75
- /** @private {number} */
76
- this . animEndLatchTimer_ = 0 ;
56
+ private currentCheckState_ = strings . TRANSITION_STATE_INIT ;
57
+ private currentAnimationClass_ = '' ;
58
+ private animEndLatchTimer_ = 0 ;
59
+ private enableAnimationEndHandler_ = false ;
77
60
78
- /** @private {boolean} */
79
- this . enableAnimationEndHandler_ = false ;
61
+ constructor ( adapter : MDCCheckboxAdapter ) {
62
+ super ( Object . assign ( MDCCheckboxFoundation . defaultAdapter , adapter ) ) ;
80
63
}
81
64
82
- /** @override */
83
65
init ( ) {
84
66
this . currentCheckState_ = this . determineCheckState_ ( ) ;
85
67
this . updateAriaChecked_ ( ) ;
86
68
this . adapter_ . addClass ( cssClasses . UPGRADED ) ;
87
69
}
88
70
89
- /** @override */
90
71
destroy ( ) {
91
72
clearTimeout ( this . animEndLatchTimer_ ) ;
92
73
}
93
74
94
- /** @param {boolean } disabled */
95
- setDisabled ( disabled ) {
75
+ setDisabled ( disabled : boolean ) {
96
76
this . adapter_ . setNativeControlDisabled ( disabled ) ;
97
77
if ( disabled ) {
98
78
this . adapter_ . addClass ( cssClasses . DISABLED ) ;
@@ -122,8 +102,7 @@ class MDCCheckboxFoundation extends MDCFoundation {
122
102
this . transitionCheckState_ ( ) ;
123
103
}
124
104
125
- /** @private */
126
- transitionCheckState_ ( ) {
105
+ private transitionCheckState_ ( ) {
127
106
if ( ! this . adapter_ . hasNativeControl ( ) ) {
128
107
return ;
129
108
}
@@ -155,11 +134,7 @@ class MDCCheckboxFoundation extends MDCFoundation {
155
134
}
156
135
}
157
136
158
- /**
159
- * @return {string }
160
- * @private
161
- */
162
- determineCheckState_ ( ) {
137
+ private determineCheckState_ ( ) : string {
163
138
const {
164
139
TRANSITION_STATE_INDETERMINATE ,
165
140
TRANSITION_STATE_CHECKED ,
@@ -172,12 +147,7 @@ class MDCCheckboxFoundation extends MDCFoundation {
172
147
return this . adapter_ . isChecked ( ) ? TRANSITION_STATE_CHECKED : TRANSITION_STATE_UNCHECKED ;
173
148
}
174
149
175
- /**
176
- * @param {string } oldState
177
- * @param {string } newState
178
- * @return {string }
179
- */
180
- getTransitionAnimationClass_ ( oldState , newState ) {
150
+ private getTransitionAnimationClass_ ( oldState : string , newState : string ) : string {
181
151
const {
182
152
TRANSITION_STATE_INIT ,
183
153
TRANSITION_STATE_CHECKED ,
@@ -194,6 +164,7 @@ class MDCCheckboxFoundation extends MDCFoundation {
194
164
} = MDCCheckboxFoundation . cssClasses ;
195
165
196
166
switch ( oldState ) {
167
+ // @ts -ignore:no-switch-case-fall-through already existing fallthrough
197
168
case TRANSITION_STATE_INIT :
198
169
if ( newState === TRANSITION_STATE_UNCHECKED ) {
199
170
return '' ;
@@ -210,7 +181,7 @@ class MDCCheckboxFoundation extends MDCFoundation {
210
181
}
211
182
}
212
183
213
- updateAriaChecked_ ( ) {
184
+ private updateAriaChecked_ ( ) {
214
185
// Ensure aria-checked is set to mixed if checkbox is in indeterminate state.
215
186
if ( this . adapter_ . isIndeterminate ( ) ) {
216
187
this . adapter_ . setNativeControlAttr (
0 commit comments