material_components_web-sass 0.12.1 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 20bef1ea5cf32a1b8d6b1ccca01e133694d6cdff
4
- data.tar.gz: baae82216cc96ea0c9200bdebf39d56427a02abc
3
+ metadata.gz: 261d26eba36148fea3965c02cd305641b85c7a8a
4
+ data.tar.gz: 3984d239e92679e1e9b11bcfaaa280d161a9883b
5
5
  SHA512:
6
- metadata.gz: 155d46e5dd2391cb8da544b57e87f45da1952f377bb53b6bb3772fc94424db672332475c3ce03f2c0f528ae29efa7db782fbfef707f3d64f89f7f1b4a1369bb7
7
- data.tar.gz: 85cecd2b5a4100785bdbbafca0ec45561a513e3e65a7c8cbcc9db6c16e4a41dd08037e622bcc9d9cdc35c08b1dfe0f8e6cbb4b6599c04cae8c6eef9121e06392
6
+ metadata.gz: d779bf5c8680e6912e9d09563d3d146f80372fc267abecd09baa64488a4c24b4038a8090f92d8b66711c231a3cc84f4b1f7d66b4aed8c3c58c375700ad6314e2
7
+ data.tar.gz: 3e7469ec8def52058f7ef823d27ef12eb722dbcfa9c37f939ff22316b898a0f46d3e91b947a0fbaef13f0f14bffe6bfdff1471a0e3bffc0aeb25aeaf47d26a87
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 0.13.0 (2017-06-15)
2
+
3
+ - Update assets to match upstream version
4
+
5
+ Library version:
6
+
7
+ - Material Components for the web v0.13.0
8
+ - Material Icons v3.0.0
9
+
1
10
  ## 0.12.1 (2017-06-02)
2
11
 
3
12
  - Update assets to match upstream version
data/README.md CHANGED
@@ -60,6 +60,7 @@ Individual Sass components can be included like this:
60
60
  @import "@material/radio/mdc-radio";
61
61
  @import "@material/ripple/mdc-ripple";
62
62
  @import "@material/select/mdc-select";
63
+ @import "@material/slider/mdc-slider";
63
64
  @import "@material/snackbar/mdc-snackbar";
64
65
  @import "@material/switch/mdc-switch";
65
66
  @import "@material/tabs/mdc-tabs";
@@ -1,5 +1,5 @@
1
1
  module MaterialComponentsWeb
2
2
  module Sass
3
- VERSION = '0.12.1'.freeze
3
+ VERSION = '0.13.0'.freeze
4
4
  end
5
5
  end
@@ -78,7 +78,7 @@ return /******/ (function(modules) { // webpackBootstrap
78
78
  /******/ __webpack_require__.p = "/assets/";
79
79
  /******/
80
80
  /******/ // Load entry module and return exports
81
- /******/ return __webpack_require__(__webpack_require__.s = 27);
81
+ /******/ return __webpack_require__(__webpack_require__.s = 29);
82
82
  /******/ })
83
83
  /************************************************************************/
84
84
  /******/ ([
@@ -87,7 +87,7 @@ return /******/ (function(modules) { // webpackBootstrap
87
87
 
88
88
  "use strict";
89
89
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
90
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(2);
90
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(1);
91
91
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__foundation__["a"]; });
92
92
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__component__ = __webpack_require__(4);
93
93
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCComponent", function() { return __WEBPACK_IMPORTED_MODULE_1__component__["a"]; });
@@ -114,11 +114,114 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
114
114
  /* 1 */
115
115
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
116
116
 
117
+ "use strict";
118
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
119
+
120
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
121
+
122
+ /**
123
+ * Copyright 2016 Google Inc.
124
+ *
125
+ * Licensed under the Apache License, Version 2.0 (the "License");
126
+ * you may not use this file except in compliance with the License.
127
+ * You may obtain a copy of the License at
128
+ *
129
+ * http://www.apache.org/licenses/LICENSE-2.0
130
+ *
131
+ * Unless required by applicable law or agreed to in writing, software
132
+ * distributed under the License is distributed on an "AS IS" BASIS,
133
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
134
+ * See the License for the specific language governing permissions and
135
+ * limitations under the License.
136
+ */
137
+
138
+ /**
139
+ * @template A
140
+ */
141
+ var MDCFoundation = function () {
142
+ _createClass(MDCFoundation, null, [{
143
+ key: "cssClasses",
144
+
145
+
146
+ /** @return enum{cssClasses} */
147
+ get: function get() {
148
+ // Classes extending MDCFoundation should implement this method to return an object which exports every
149
+ // CSS class the foundation class needs as a property. e.g. {ACTIVE: 'mdc-component--active'}
150
+ return {};
151
+ }
152
+
153
+ /** @return enum{strings} */
154
+
155
+ }, {
156
+ key: "strings",
157
+ get: function get() {
158
+ // Classes extending MDCFoundation should implement this method to return an object which exports all
159
+ // semantic strings as constants. e.g. {ARIA_ROLE: 'tablist'}
160
+ return {};
161
+ }
162
+
163
+ /** @return enum{numbers} */
164
+
165
+ }, {
166
+ key: "numbers",
167
+ get: function get() {
168
+ // Classes extending MDCFoundation should implement this method to return an object which exports all
169
+ // of its semantic numbers as constants. e.g. {ANIMATION_DELAY_MS: 350}
170
+ return {};
171
+ }
172
+
173
+ /** @return {!Object} */
174
+
175
+ }, {
176
+ key: "defaultAdapter",
177
+ get: function get() {
178
+ // Classes extending MDCFoundation may choose to implement this getter in order to provide a convenient
179
+ // way of viewing the necessary methods of an adapter. In the future, this could also be used for adapter
180
+ // validation.
181
+ return {};
182
+ }
183
+
184
+ /**
185
+ * @param {!A} adapter
186
+ */
187
+
188
+ }]);
189
+
190
+ function MDCFoundation() {
191
+ var adapter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
192
+
193
+ _classCallCheck(this, MDCFoundation);
194
+
195
+ /** @private {!A} */
196
+ this.adapter_ = adapter;
197
+ }
198
+
199
+ _createClass(MDCFoundation, [{
200
+ key: "init",
201
+ value: function init() {
202
+ // Subclasses should override this method to perform initialization routines (registering events, etc.)
203
+ }
204
+ }, {
205
+ key: "destroy",
206
+ value: function destroy() {
207
+ // Subclasses should override this method to perform de-initialization routines (de-registering events, etc.)
208
+ }
209
+ }]);
210
+
211
+ return MDCFoundation;
212
+ }();
213
+
214
+ /* harmony default export */ __webpack_exports__["a"] = (MDCFoundation);
215
+
216
+ /***/ }),
217
+ /* 2 */
218
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
219
+
117
220
  "use strict";
118
221
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
119
222
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRipple", function() { return MDCRipple; });
120
223
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
121
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(55);
224
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(57);
122
225
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
123
226
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRippleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
124
227
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -261,109 +364,6 @@ var MDCRipple = function (_MDCComponent) {
261
364
  return MDCRipple;
262
365
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
263
366
 
264
- /***/ }),
265
- /* 2 */
266
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
267
-
268
- "use strict";
269
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
270
-
271
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
272
-
273
- /**
274
- * Copyright 2016 Google Inc.
275
- *
276
- * Licensed under the Apache License, Version 2.0 (the "License");
277
- * you may not use this file except in compliance with the License.
278
- * You may obtain a copy of the License at
279
- *
280
- * http://www.apache.org/licenses/LICENSE-2.0
281
- *
282
- * Unless required by applicable law or agreed to in writing, software
283
- * distributed under the License is distributed on an "AS IS" BASIS,
284
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
285
- * See the License for the specific language governing permissions and
286
- * limitations under the License.
287
- */
288
-
289
- /**
290
- * @template A
291
- */
292
- var MDCFoundation = function () {
293
- _createClass(MDCFoundation, null, [{
294
- key: "cssClasses",
295
-
296
-
297
- /** @return enum{cssClasses} */
298
- get: function get() {
299
- // Classes extending MDCFoundation should implement this method to return an object which exports every
300
- // CSS class the foundation class needs as a property. e.g. {ACTIVE: 'mdc-component--active'}
301
- return {};
302
- }
303
-
304
- /** @return enum{strings} */
305
-
306
- }, {
307
- key: "strings",
308
- get: function get() {
309
- // Classes extending MDCFoundation should implement this method to return an object which exports all
310
- // semantic strings as constants. e.g. {ARIA_ROLE: 'tablist'}
311
- return {};
312
- }
313
-
314
- /** @return enum{numbers} */
315
-
316
- }, {
317
- key: "numbers",
318
- get: function get() {
319
- // Classes extending MDCFoundation should implement this method to return an object which exports all
320
- // of its semantic numbers as constants. e.g. {ANIMATION_DELAY_MS: 350}
321
- return {};
322
- }
323
-
324
- /** @return {!Object} */
325
-
326
- }, {
327
- key: "defaultAdapter",
328
- get: function get() {
329
- // Classes extending MDCFoundation may choose to implement this getter in order to provide a convenient
330
- // way of viewing the necessary methods of an adapter. In the future, this could also be used for adapter
331
- // validation.
332
- return {};
333
- }
334
-
335
- /**
336
- * @param {!A} adapter
337
- */
338
-
339
- }]);
340
-
341
- function MDCFoundation() {
342
- var adapter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
343
-
344
- _classCallCheck(this, MDCFoundation);
345
-
346
- /** @private {!A} */
347
- this.adapter_ = adapter;
348
- }
349
-
350
- _createClass(MDCFoundation, [{
351
- key: "init",
352
- value: function init() {
353
- // Subclasses should override this method to perform initialization routines (registering events, etc.)
354
- }
355
- }, {
356
- key: "destroy",
357
- value: function destroy() {
358
- // Subclasses should override this method to perform de-initialization routines (de-registering events, etc.)
359
- }
360
- }]);
361
-
362
- return MDCFoundation;
363
- }();
364
-
365
- /* harmony default export */ __webpack_exports__["a"] = (MDCFoundation);
366
-
367
367
  /***/ }),
368
368
  /* 3 */
369
369
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -515,7 +515,7 @@ function getCorrectPropertyName(windowObj, eventType) {
515
515
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
516
516
 
517
517
  "use strict";
518
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(2);
518
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(1);
519
519
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
520
520
 
521
521
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -687,9 +687,9 @@ var MDCComponent = function () {
687
687
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
688
688
 
689
689
  "use strict";
690
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(36);
690
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(38);
691
691
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_0__constants__["a"]; });
692
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(37);
692
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(39);
693
693
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
694
694
  /**
695
695
  * Copyright 2016 Google Inc. All Rights Reserved.
@@ -716,7 +716,7 @@ var MDCComponent = function () {
716
716
 
717
717
  "use strict";
718
718
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
719
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(51);
719
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(53);
720
720
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["a"]; });
721
721
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["b"]; });
722
722
  /**
@@ -1080,11 +1080,60 @@ function solvePositionFromXValue_(xVal, x1, x2) {
1080
1080
  /* 10 */
1081
1081
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1082
1082
 
1083
+ "use strict";
1084
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return cssClasses; });
1085
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return strings; });
1086
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return numbers; });
1087
+ /**
1088
+ * Copyright 2017 Google Inc. All Rights Reserved.
1089
+ *
1090
+ * Licensed under the Apache License, Version 2.0 (the "License");
1091
+ * you may not use this file except in compliance with the License.
1092
+ * You may obtain a copy of the License at
1093
+ *
1094
+ * http://www.apache.org/licenses/LICENSE-2.0
1095
+ *
1096
+ * Unless required by applicable law or agreed to in writing, software
1097
+ * distributed under the License is distributed on an "AS IS" BASIS,
1098
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1099
+ * See the License for the specific language governing permissions and
1100
+ * limitations under the License.
1101
+ */
1102
+
1103
+ var cssClasses = {
1104
+ ACTIVE: 'mdc-slider--active',
1105
+ DISABLED: 'mdc-slider--disabled',
1106
+ DISCRETE: 'mdc-slider--discrete',
1107
+ FOCUS: 'mdc-slider--focus',
1108
+ IN_TRANSIT: 'mdc-slider--in-transit',
1109
+ OFF: 'mdc-slider--off'
1110
+ };
1111
+
1112
+ var strings = {
1113
+ TRACK_SELECTOR: '.mdc-slider__track',
1114
+ THUMB_CONTAINER_SELECTOR: '.mdc-slider__thumb-container',
1115
+ ARIA_VALUEMIN: 'aria-valuemin',
1116
+ ARIA_VALUEMAX: 'aria-valuemax',
1117
+ ARIA_VALUENOW: 'aria-valuenow',
1118
+ ARIA_DISABLED: 'aria-disabled',
1119
+ STEP_DATA_ATTR: 'data-step',
1120
+ CHANGE_EVENT: 'MDCSlider:change',
1121
+ INPUT_EVENT: 'MDCSlider:input'
1122
+ };
1123
+
1124
+ var numbers = {
1125
+ PAGE_FACTOR: 4
1126
+ };
1127
+
1128
+ /***/ }),
1129
+ /* 11 */
1130
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1131
+
1083
1132
  "use strict";
1084
1133
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBar; });
1085
1134
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1086
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab__ = __webpack_require__(12);
1087
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(64);
1135
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab__ = __webpack_require__(13);
1136
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(67);
1088
1137
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1089
1138
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
1090
1139
 
@@ -1266,7 +1315,7 @@ var MDCTabBar = function (_MDCComponent) {
1266
1315
  }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
1267
1316
 
1268
1317
  /***/ }),
1269
- /* 11 */
1318
+ /* 12 */
1270
1319
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1271
1320
 
1272
1321
  "use strict";
@@ -1297,15 +1346,15 @@ var strings = {
1297
1346
  };
1298
1347
 
1299
1348
  /***/ }),
1300
- /* 12 */
1349
+ /* 13 */
1301
1350
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1302
1351
 
1303
1352
  "use strict";
1304
1353
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTab; });
1305
1354
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1306
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1307
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(11);
1308
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(65);
1355
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
1356
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(12);
1357
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(68);
1309
1358
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
1310
1359
  var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
1311
1360
 
@@ -1443,7 +1492,7 @@ var MDCTab = function (_MDCComponent) {
1443
1492
  }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
1444
1493
 
1445
1494
  /***/ }),
1446
- /* 13 */
1495
+ /* 14 */
1447
1496
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1448
1497
 
1449
1498
  "use strict";
@@ -1524,17 +1573,17 @@ mdcAutoInit.deregisterAll = function () {
1524
1573
  };
1525
1574
 
1526
1575
  /***/ }),
1527
- /* 14 */
1576
+ /* 15 */
1528
1577
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1529
1578
 
1530
1579
  "use strict";
1531
1580
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1532
1581
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckbox", function() { return MDCCheckbox; });
1533
1582
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1534
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1583
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
1535
1584
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(8);
1536
1585
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(3);
1537
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(29);
1586
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(31);
1538
1587
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckboxFoundation", function() { return __WEBPACK_IMPORTED_MODULE_4__foundation__["a"]; });
1539
1588
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
1540
1589
 
@@ -1727,16 +1776,16 @@ var MDCCheckbox = function (_MDCComponent) {
1727
1776
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1728
1777
 
1729
1778
  /***/ }),
1730
- /* 15 */
1779
+ /* 16 */
1731
1780
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1732
1781
 
1733
1782
  "use strict";
1734
1783
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1735
1784
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialog", function() { return MDCDialog; });
1736
1785
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1737
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1738
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(31);
1739
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(32);
1786
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
1787
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(33);
1788
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(34);
1740
1789
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialogFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1741
1790
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_3__util__; });
1742
1791
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -1900,16 +1949,16 @@ var MDCDialog = function (_MDCComponent) {
1900
1949
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1901
1950
 
1902
1951
  /***/ }),
1903
- /* 16 */
1952
+ /* 17 */
1904
1953
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1905
1954
 
1906
1955
  "use strict";
1907
1956
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1908
1957
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(7);
1909
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(40);
1958
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(42);
1910
1959
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawer", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["a"]; });
1911
1960
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["b"]; });
1912
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(35);
1961
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(37);
1913
1962
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawer", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["a"]; });
1914
1963
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["b"]; });
1915
1964
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_0__util__; });
@@ -1935,14 +1984,14 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1935
1984
 
1936
1985
 
1937
1986
  /***/ }),
1938
- /* 17 */
1987
+ /* 18 */
1939
1988
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1940
1989
 
1941
1990
  "use strict";
1942
1991
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1943
1992
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormField", function() { return MDCFormField; });
1944
1993
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1945
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(42);
1994
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(44);
1946
1995
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormFieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
1947
1996
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
1948
1997
 
@@ -2030,14 +2079,14 @@ var MDCFormField = function (_MDCComponent) {
2030
2079
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2031
2080
 
2032
2081
  /***/ }),
2033
- /* 18 */
2082
+ /* 19 */
2034
2083
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2035
2084
 
2036
2085
  "use strict";
2037
2086
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2038
2087
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridList", function() { return MDCGridList; });
2039
2088
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2040
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(44);
2089
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(46);
2041
2090
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridListFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2042
2091
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
2043
2092
 
@@ -2115,15 +2164,15 @@ var MDCGridList = function (_MDCComponent) {
2115
2164
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2116
2165
 
2117
2166
  /***/ }),
2118
- /* 19 */
2167
+ /* 20 */
2119
2168
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2120
2169
 
2121
2170
  "use strict";
2122
2171
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2123
2172
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggle", function() { return MDCIconToggle; });
2124
2173
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2125
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
2126
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(46);
2174
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
2175
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(48);
2127
2176
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2128
2177
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2129
2178
 
@@ -2305,14 +2354,14 @@ var MDCIconToggle = function (_MDCComponent) {
2305
2354
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2306
2355
 
2307
2356
  /***/ }),
2308
- /* 20 */
2357
+ /* 21 */
2309
2358
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2310
2359
 
2311
2360
  "use strict";
2312
2361
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2313
2362
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgress", function() { return MDCLinearProgress; });
2314
2363
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2315
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(48);
2364
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(50);
2316
2365
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgressFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2317
2366
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
2318
2367
 
@@ -2419,15 +2468,15 @@ var MDCLinearProgress = function (_MDCComponent) {
2419
2468
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2420
2469
 
2421
2470
  /***/ }),
2422
- /* 21 */
2471
+ /* 22 */
2423
2472
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2424
2473
 
2425
2474
  "use strict";
2426
2475
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2427
2476
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadio", function() { return MDCRadio; });
2428
2477
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2429
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
2430
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(53);
2478
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
2479
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(55);
2431
2480
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadioFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2432
2481
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2433
2482
 
@@ -2591,7 +2640,7 @@ var MDCRadio = function (_MDCComponent) {
2591
2640
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2592
2641
 
2593
2642
  /***/ }),
2594
- /* 22 */
2643
+ /* 23 */
2595
2644
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2596
2645
 
2597
2646
  "use strict";
@@ -2599,7 +2648,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2599
2648
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelect", function() { return MDCSelect; });
2600
2649
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2601
2650
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(6);
2602
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(57);
2651
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(59);
2603
2652
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelectFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2604
2653
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
2605
2654
 
@@ -2821,14 +2870,218 @@ var MDCSelect = function (_MDCComponent) {
2821
2870
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2822
2871
 
2823
2872
  /***/ }),
2824
- /* 23 */
2873
+ /* 24 */
2874
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2875
+
2876
+ "use strict";
2877
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2878
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSlider", function() { return MDCSlider; });
2879
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
2880
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(10);
2881
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(60);
2882
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSliderFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2883
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
2884
+
2885
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2886
+
2887
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
2888
+
2889
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
2890
+
2891
+ /**
2892
+ * Copyright 2017 Google Inc. All Rights Reserved.
2893
+ *
2894
+ * Licensed under the Apache License, Version 2.0 (the "License");
2895
+ * you may not use this file except in compliance with the License.
2896
+ * You may obtain a copy of the License at
2897
+ *
2898
+ * http://www.apache.org/licenses/LICENSE-2.0
2899
+ *
2900
+ * Unless required by applicable law or agreed to in writing, software
2901
+ * distributed under the License is distributed on an "AS IS" BASIS,
2902
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2903
+ * See the License for the specific language governing permissions and
2904
+ * limitations under the License.
2905
+ */
2906
+
2907
+
2908
+
2909
+
2910
+
2911
+
2912
+
2913
+
2914
+ var MDCSlider = function (_MDCComponent) {
2915
+ _inherits(MDCSlider, _MDCComponent);
2916
+
2917
+ function MDCSlider() {
2918
+ _classCallCheck(this, MDCSlider);
2919
+
2920
+ return _possibleConstructorReturn(this, (MDCSlider.__proto__ || Object.getPrototypeOf(MDCSlider)).apply(this, arguments));
2921
+ }
2922
+
2923
+ _createClass(MDCSlider, [{
2924
+ key: 'initialize',
2925
+ value: function initialize() {
2926
+ this.thumbContainer_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].THUMB_CONTAINER_SELECTOR);
2927
+ this.track_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].TRACK_SELECTOR);
2928
+ }
2929
+ }, {
2930
+ key: 'getDefaultFoundation',
2931
+ value: function getDefaultFoundation() {
2932
+ var _this2 = this;
2933
+
2934
+ return new __WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */]({
2935
+ addClass: function addClass(className) {
2936
+ return _this2.root_.classList.add(className);
2937
+ },
2938
+ removeClass: function removeClass(className) {
2939
+ return _this2.root_.classList.remove(className);
2940
+ },
2941
+ getAttribute: function getAttribute(name) {
2942
+ return _this2.root_.getAttribute(name);
2943
+ },
2944
+ setAttribute: function setAttribute(name, value) {
2945
+ return _this2.root_.setAttribute(name, value);
2946
+ },
2947
+ removeAttribute: function removeAttribute(name) {
2948
+ return _this2.root_.removeAttribute(name);
2949
+ },
2950
+ computeBoundingRect: function computeBoundingRect() {
2951
+ return _this2.root_.getBoundingClientRect();
2952
+ },
2953
+ getTabIndex: function getTabIndex() {
2954
+ return _this2.root_.tabIndex;
2955
+ },
2956
+ registerInteractionHandler: function registerInteractionHandler(type, handler) {
2957
+ _this2.root_.addEventListener(type, handler);
2958
+ },
2959
+ deregisterInteractionHandler: function deregisterInteractionHandler(type, handler) {
2960
+ _this2.root_.removeEventListener(type, handler);
2961
+ },
2962
+ registerThumbContainerInteractionHandler: function registerThumbContainerInteractionHandler(type, handler) {
2963
+ _this2.thumbContainer_.addEventListener(type, handler);
2964
+ },
2965
+ deregisterThumbContainerInteractionHandler: function deregisterThumbContainerInteractionHandler(type, handler) {
2966
+ _this2.thumbContainer_.removeEventListener(type, handler);
2967
+ },
2968
+ registerBodyInteractionHandler: function registerBodyInteractionHandler(type, handler) {
2969
+ document.body.addEventListener(type, handler);
2970
+ },
2971
+ deregisterBodyInteractionHandler: function deregisterBodyInteractionHandler(type, handler) {
2972
+ document.body.removeEventListener(type, handler);
2973
+ },
2974
+ registerResizeHandler: function registerResizeHandler(handler) {
2975
+ window.addEventListener('resize', handler);
2976
+ },
2977
+ deregisterResizeHandler: function deregisterResizeHandler(handler) {
2978
+ window.removeEventListener('resize', handler);
2979
+ },
2980
+ notifyInput: function notifyInput() {
2981
+ _this2.emit(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].INPUT_EVENT, _this2);
2982
+ },
2983
+ notifyChange: function notifyChange() {
2984
+ _this2.emit(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].CHANGE_EVENT, _this2);
2985
+ },
2986
+ setThumbContainerStyleProperty: function setThumbContainerStyleProperty(propertyName, value) {
2987
+ _this2.thumbContainer_.style.setProperty(propertyName, value);
2988
+ },
2989
+ setTrackStyleProperty: function setTrackStyleProperty(propertyName, value) {
2990
+ _this2.track_.style.setProperty(propertyName, value);
2991
+ },
2992
+ isRTL: function isRTL() {
2993
+ return getComputedStyle(_this2.root_).direction === 'rtl';
2994
+ }
2995
+ });
2996
+ }
2997
+ }, {
2998
+ key: 'initialSyncWithDOM',
2999
+ value: function initialSyncWithDOM() {
3000
+ var origValueNow = parseFloat(this.root_.getAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].ARIA_VALUENOW));
3001
+ this.min = parseFloat(this.root_.getAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].ARIA_VALUEMIN)) || this.min;
3002
+ this.max = parseFloat(this.root_.getAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].ARIA_VALUEMAX)) || this.max;
3003
+ this.step = parseFloat(this.root_.getAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].STEP_DATA_ATTR)) || this.step;
3004
+ this.value = origValueNow || this.value;
3005
+ this.disabled = this.root_.hasAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].ARIA_DISABLED) && this.root_.getAttribute(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */].ARIA_DISABLED) !== 'false';
3006
+ }
3007
+ }, {
3008
+ key: 'layout',
3009
+ value: function layout() {
3010
+ this.foundation_.layout();
3011
+ }
3012
+ }, {
3013
+ key: 'stepUp',
3014
+ value: function stepUp() {
3015
+ var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.step || 1;
3016
+
3017
+ this.value += amount;
3018
+ }
3019
+ }, {
3020
+ key: 'stepDown',
3021
+ value: function stepDown() {
3022
+ var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.step || 1;
3023
+
3024
+ this.value -= amount;
3025
+ }
3026
+ }, {
3027
+ key: 'value',
3028
+ get: function get() {
3029
+ return this.foundation_.getValue();
3030
+ },
3031
+ set: function set(value) {
3032
+ this.foundation_.setValue(value);
3033
+ }
3034
+ }, {
3035
+ key: 'min',
3036
+ get: function get() {
3037
+ return this.foundation_.getMin();
3038
+ },
3039
+ set: function set(min) {
3040
+ this.foundation_.setMin(min);
3041
+ }
3042
+ }, {
3043
+ key: 'max',
3044
+ get: function get() {
3045
+ return this.foundation_.getMax();
3046
+ },
3047
+ set: function set(max) {
3048
+ this.foundation_.setMax(max);
3049
+ }
3050
+ }, {
3051
+ key: 'step',
3052
+ get: function get() {
3053
+ return this.foundation_.getStep();
3054
+ },
3055
+ set: function set(step) {
3056
+ this.foundation_.setStep(step);
3057
+ }
3058
+ }, {
3059
+ key: 'disabled',
3060
+ get: function get() {
3061
+ return this.foundation_.isDisabled();
3062
+ },
3063
+ set: function set(disabled) {
3064
+ this.foundation_.setDisabled(disabled);
3065
+ }
3066
+ }], [{
3067
+ key: 'attachTo',
3068
+ value: function attachTo(root) {
3069
+ return new MDCSlider(root);
3070
+ }
3071
+ }]);
3072
+
3073
+ return MDCSlider;
3074
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
3075
+
3076
+ /***/ }),
3077
+ /* 25 */
2825
3078
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2826
3079
 
2827
3080
  "use strict";
2828
3081
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2829
3082
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbar", function() { return MDCSnackbar; });
2830
3083
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2831
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(59);
3084
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(62);
2832
3085
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(3);
2833
3086
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2834
3087
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -2950,18 +3203,18 @@ var MDCSnackbar = function (_MDCComponent) {
2950
3203
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2951
3204
 
2952
3205
  /***/ }),
2953
- /* 24 */
3206
+ /* 26 */
2954
3207
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2955
3208
 
2956
3209
  "use strict";
2957
3210
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2958
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__tab__ = __webpack_require__(12);
3211
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__tab__ = __webpack_require__(13);
2959
3212
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__tab__["a"]; });
2960
3213
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTab", function() { return __WEBPACK_IMPORTED_MODULE_0__tab__["b"]; });
2961
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab_bar__ = __webpack_require__(10);
3214
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab_bar__ = __webpack_require__(11);
2962
3215
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["a"]; });
2963
3216
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBar", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["b"]; });
2964
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__ = __webpack_require__(62);
3217
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__ = __webpack_require__(65);
2965
3218
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScrollerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["a"]; });
2966
3219
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScroller", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["b"]; });
2967
3220
  /**
@@ -2985,14 +3238,14 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2985
3238
 
2986
3239
 
2987
3240
  /***/ }),
2988
- /* 25 */
3241
+ /* 27 */
2989
3242
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2990
3243
 
2991
3244
  "use strict";
2992
3245
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2993
3246
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfield", function() { return MDCTextfield; });
2994
3247
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2995
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(67);
3248
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(70);
2996
3249
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2997
3250
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2998
3251
 
@@ -3176,15 +3429,15 @@ var MDCTextfield = function (_MDCComponent) {
3176
3429
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3177
3430
 
3178
3431
  /***/ }),
3179
- /* 26 */
3432
+ /* 28 */
3180
3433
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3181
3434
 
3182
3435
  "use strict";
3183
3436
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3184
3437
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbar", function() { return MDCToolbar; });
3185
3438
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3186
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(69);
3187
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(70);
3439
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(72);
3440
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(73);
3188
3441
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3189
3442
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_2__util__; });
3190
3443
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -3264,8 +3517,8 @@ var MDCToolbar = function (_MDCComponent) {
3264
3517
  getOffsetHeight: function getOffsetHeight() {
3265
3518
  return _this2.root_.offsetHeight;
3266
3519
  },
3267
- getFlexibleRowElementOffsetHeight: function getFlexibleRowElementOffsetHeight() {
3268
- return _this2.flexibleRowElement_.offsetHeight;
3520
+ getFirstRowElementOffsetHeight: function getFirstRowElementOffsetHeight() {
3521
+ return _this2.firstRowElement_.offsetHeight;
3269
3522
  },
3270
3523
  notifyChange: function notifyChange(evtData) {
3271
3524
  return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CHANGE_EVENT, evtData);
@@ -3277,7 +3530,7 @@ var MDCToolbar = function (_MDCComponent) {
3277
3530
  return _this2.titleElement_.style.setProperty(property, value);
3278
3531
  },
3279
3532
  setStyleForFlexibleRowElement: function setStyleForFlexibleRowElement(property, value) {
3280
- return _this2.flexibleRowElement_.style.setProperty(property, value);
3533
+ return _this2.firstRowElement_.style.setProperty(property, value);
3281
3534
  },
3282
3535
  setStyleForFixedAdjustElement: function setStyleForFixedAdjustElement(property, value) {
3283
3536
  if (_this2.fixedAdjustElement) {
@@ -3287,9 +3540,9 @@ var MDCToolbar = function (_MDCComponent) {
3287
3540
  });
3288
3541
  }
3289
3542
  }, {
3290
- key: 'flexibleRowElement_',
3543
+ key: 'firstRowElement_',
3291
3544
  get: function get() {
3292
- return this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.FLEXIBLE_ROW_SELECTOR);
3545
+ return this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.FIRST_ROW_SELECTOR);
3293
3546
  }
3294
3547
  }, {
3295
3548
  key: 'titleElement_',
@@ -3316,28 +3569,29 @@ var MDCToolbar = function (_MDCComponent) {
3316
3569
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3317
3570
 
3318
3571
  /***/ }),
3319
- /* 27 */
3572
+ /* 29 */
3320
3573
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3321
3574
 
3322
3575
  "use strict";
3323
3576
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3324
3577
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3325
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_checkbox__ = __webpack_require__(14);
3326
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(17);
3327
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(18);
3328
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(19);
3329
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(21);
3330
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__material_ripple__ = __webpack_require__(1);
3331
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(15);
3332
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(16);
3333
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(25);
3334
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(23);
3335
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__ = __webpack_require__(20);
3578
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_checkbox__ = __webpack_require__(15);
3579
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(18);
3580
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(19);
3581
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(20);
3582
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(22);
3583
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__material_ripple__ = __webpack_require__(2);
3584
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(16);
3585
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(17);
3586
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(27);
3587
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(25);
3588
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__ = __webpack_require__(21);
3336
3589
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_menu__ = __webpack_require__(6);
3337
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_select__ = __webpack_require__(22);
3338
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__material_tabs__ = __webpack_require__(24);
3339
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__material_toolbar__ = __webpack_require__(26);
3340
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__material_auto_init__ = __webpack_require__(13);
3590
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_select__ = __webpack_require__(23);
3591
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__material_slider__ = __webpack_require__(24);
3592
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__material_tabs__ = __webpack_require__(26);
3593
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__material_toolbar__ = __webpack_require__(28);
3594
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__material_auto_init__ = __webpack_require__(14);
3341
3595
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "base", function() { return __WEBPACK_IMPORTED_MODULE_0__material_base__; });
3342
3596
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "checkbox", function() { return __WEBPACK_IMPORTED_MODULE_1__material_checkbox__; });
3343
3597
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "dialog", function() { return __WEBPACK_IMPORTED_MODULE_7__material_dialog__; });
@@ -3349,12 +3603,13 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3349
3603
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "radio", function() { return __WEBPACK_IMPORTED_MODULE_5__material_radio__; });
3350
3604
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "ripple", function() { return __WEBPACK_IMPORTED_MODULE_6__material_ripple__; });
3351
3605
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "snackbar", function() { return __WEBPACK_IMPORTED_MODULE_10__material_snackbar__; });
3352
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "tabs", function() { return __WEBPACK_IMPORTED_MODULE_14__material_tabs__; });
3606
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "tabs", function() { return __WEBPACK_IMPORTED_MODULE_15__material_tabs__; });
3353
3607
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "textfield", function() { return __WEBPACK_IMPORTED_MODULE_9__material_textfield__; });
3354
3608
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "menu", function() { return __WEBPACK_IMPORTED_MODULE_12__material_menu__; });
3355
3609
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "select", function() { return __WEBPACK_IMPORTED_MODULE_13__material_select__; });
3356
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "toolbar", function() { return __WEBPACK_IMPORTED_MODULE_15__material_toolbar__; });
3357
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "autoInit", function() { return __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a"]; });
3610
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "slider", function() { return __WEBPACK_IMPORTED_MODULE_14__material_slider__; });
3611
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "toolbar", function() { return __WEBPACK_IMPORTED_MODULE_16__material_toolbar__; });
3612
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "autoInit", function() { return __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a"]; });
3358
3613
  /**
3359
3614
  * Copyright 2016 Google Inc. All Rights Reserved.
3360
3615
  *
@@ -3389,29 +3644,31 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3389
3644
 
3390
3645
 
3391
3646
 
3647
+
3392
3648
  // Register all components
3393
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCCheckbox', __WEBPACK_IMPORTED_MODULE_1__material_checkbox__["MDCCheckbox"]);
3394
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCDialog', __WEBPACK_IMPORTED_MODULE_7__material_dialog__["MDCDialog"]);
3395
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCPersistentDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCPersistentDrawer"]);
3396
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTemporaryDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCTemporaryDrawer"]);
3397
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCRipple', __WEBPACK_IMPORTED_MODULE_6__material_ripple__["MDCRipple"]);
3398
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCGridList', __WEBPACK_IMPORTED_MODULE_3__material_grid_list__["MDCGridList"]);
3399
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCIconToggle', __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__["MDCIconToggle"]);
3400
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCLinearProgress', __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__["MDCLinearProgress"]);
3401
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCRadio', __WEBPACK_IMPORTED_MODULE_5__material_radio__["MDCRadio"]);
3402
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSnackbar', __WEBPACK_IMPORTED_MODULE_10__material_snackbar__["MDCSnackbar"]);
3403
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTab', __WEBPACK_IMPORTED_MODULE_14__material_tabs__["MDCTab"]);
3404
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTabBar', __WEBPACK_IMPORTED_MODULE_14__material_tabs__["MDCTabBar"]);
3405
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTextfield', __WEBPACK_IMPORTED_MODULE_9__material_textfield__["MDCTextfield"]);
3406
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSimpleMenu', __WEBPACK_IMPORTED_MODULE_12__material_menu__["MDCSimpleMenu"]);
3407
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSelect', __WEBPACK_IMPORTED_MODULE_13__material_select__["MDCSelect"]);
3408
- __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCToolbar', __WEBPACK_IMPORTED_MODULE_15__material_toolbar__["MDCToolbar"]);
3649
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCCheckbox', __WEBPACK_IMPORTED_MODULE_1__material_checkbox__["MDCCheckbox"]);
3650
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCDialog', __WEBPACK_IMPORTED_MODULE_7__material_dialog__["MDCDialog"]);
3651
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCPersistentDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCPersistentDrawer"]);
3652
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCTemporaryDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCTemporaryDrawer"]);
3653
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCRipple', __WEBPACK_IMPORTED_MODULE_6__material_ripple__["MDCRipple"]);
3654
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCGridList', __WEBPACK_IMPORTED_MODULE_3__material_grid_list__["MDCGridList"]);
3655
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCIconToggle', __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__["MDCIconToggle"]);
3656
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCLinearProgress', __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__["MDCLinearProgress"]);
3657
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCRadio', __WEBPACK_IMPORTED_MODULE_5__material_radio__["MDCRadio"]);
3658
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCSnackbar', __WEBPACK_IMPORTED_MODULE_10__material_snackbar__["MDCSnackbar"]);
3659
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCTab', __WEBPACK_IMPORTED_MODULE_15__material_tabs__["MDCTab"]);
3660
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCTabBar', __WEBPACK_IMPORTED_MODULE_15__material_tabs__["MDCTabBar"]);
3661
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCTextfield', __WEBPACK_IMPORTED_MODULE_9__material_textfield__["MDCTextfield"]);
3662
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCSimpleMenu', __WEBPACK_IMPORTED_MODULE_12__material_menu__["MDCSimpleMenu"]);
3663
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCSelect', __WEBPACK_IMPORTED_MODULE_13__material_select__["MDCSelect"]);
3664
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCSlider', __WEBPACK_IMPORTED_MODULE_14__material_slider__["MDCSlider"]);
3665
+ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('MDCToolbar', __WEBPACK_IMPORTED_MODULE_16__material_toolbar__["MDCToolbar"]);
3409
3666
 
3410
3667
  // Export all components.
3411
3668
 
3412
3669
 
3413
3670
  /***/ }),
3414
- /* 28 */
3671
+ /* 30 */
3415
3672
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3416
3673
 
3417
3674
  "use strict";
@@ -3441,6 +3698,7 @@ var cssClasses = {
3441
3698
  UPGRADED: 'mdc-checkbox--upgraded',
3442
3699
  CHECKED: 'mdc-checkbox--checked',
3443
3700
  INDETERMINATE: 'mdc-checkbox--indeterminate',
3701
+ DISABLED: 'mdc-checkbox--disabled',
3444
3702
  ANIM_UNCHECKED_CHECKED: 'mdc-checkbox--anim-unchecked-checked',
3445
3703
  ANIM_UNCHECKED_INDETERMINATE: 'mdc-checkbox--anim-unchecked-indeterminate',
3446
3704
  ANIM_CHECKED_UNCHECKED: 'mdc-checkbox--anim-checked-unchecked',
@@ -3462,12 +3720,12 @@ var numbers = {
3462
3720
  };
3463
3721
 
3464
3722
  /***/ }),
3465
- /* 29 */
3723
+ /* 31 */
3466
3724
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3467
3725
 
3468
3726
  "use strict";
3469
3727
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3470
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(28);
3728
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(30);
3471
3729
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
3472
3730
 
3473
3731
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -3597,6 +3855,11 @@ var MDCCheckboxFoundation = function (_MDCFoundation) {
3597
3855
  key: 'setDisabled',
3598
3856
  value: function setDisabled(disabled) {
3599
3857
  this.getNativeControl_().disabled = disabled;
3858
+ if (disabled) {
3859
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].DISABLED);
3860
+ } else {
3861
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].DISABLED);
3862
+ }
3600
3863
  }
3601
3864
  }, {
3602
3865
  key: 'getValue',
@@ -3743,7 +4006,7 @@ function validDescriptor(inputPropDesc) {
3743
4006
  }
3744
4007
 
3745
4008
  /***/ }),
3746
- /* 30 */
4009
+ /* 32 */
3747
4010
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3748
4011
 
3749
4012
  "use strict";
@@ -3784,12 +4047,12 @@ var strings = {
3784
4047
  };
3785
4048
 
3786
4049
  /***/ }),
3787
- /* 31 */
4050
+ /* 33 */
3788
4051
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3789
4052
 
3790
4053
  "use strict";
3791
4054
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3792
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(30);
4055
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(32);
3793
4056
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
3794
4057
 
3795
4058
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -3992,13 +4255,13 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3992
4255
  /* harmony default export */ __webpack_exports__["a"] = (MDCDialogFoundation);
3993
4256
 
3994
4257
  /***/ }),
3995
- /* 32 */
4258
+ /* 34 */
3996
4259
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3997
4260
 
3998
4261
  "use strict";
3999
4262
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4000
4263
  /* harmony export (immutable) */ __webpack_exports__["createFocusTrapInstance"] = createFocusTrapInstance;
4001
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(71);
4264
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(74);
4002
4265
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_focus_trap__);
4003
4266
  /**
4004
4267
  * Copyright 2016 Google Inc. All Rights Reserved.
@@ -4028,7 +4291,7 @@ function createFocusTrapInstance(surfaceEl, acceptButtonEl) {
4028
4291
  }
4029
4292
 
4030
4293
  /***/ }),
4031
- /* 33 */
4294
+ /* 35 */
4032
4295
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4033
4296
 
4034
4297
  "use strict";
@@ -4067,12 +4330,12 @@ var strings = {
4067
4330
  };
4068
4331
 
4069
4332
  /***/ }),
4070
- /* 34 */
4333
+ /* 36 */
4071
4334
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4072
4335
 
4073
4336
  "use strict";
4074
4337
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4075
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(33);
4338
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(35);
4076
4339
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
4077
4340
 
4078
4341
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -4145,13 +4408,13 @@ var MDCPersistentDrawerFoundation = function (_MDCSlidableDrawerFou) {
4145
4408
  /* harmony default export */ __webpack_exports__["a"] = (MDCPersistentDrawerFoundation);
4146
4409
 
4147
4410
  /***/ }),
4148
- /* 35 */
4411
+ /* 37 */
4149
4412
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4150
4413
 
4151
4414
  "use strict";
4152
4415
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCPersistentDrawer; });
4153
4416
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4154
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(34);
4417
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(36);
4155
4418
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4156
4419
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
4157
4420
  /* unused harmony reexport util */
@@ -4303,7 +4566,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
4303
4566
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
4304
4567
 
4305
4568
  /***/ }),
4306
- /* 36 */
4569
+ /* 38 */
4307
4570
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4308
4571
 
4309
4572
  "use strict";
@@ -4327,7 +4590,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
4327
4590
  var FOCUSABLE_ELEMENTS = 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), ' + 'button:not([disabled]), iframe, object, embed, [tabindex], [contenteditable]';
4328
4591
 
4329
4592
  /***/ }),
4330
- /* 37 */
4593
+ /* 39 */
4331
4594
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4332
4595
 
4333
4596
  "use strict";
@@ -4411,11 +4674,8 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4411
4674
  _this.animatingCssClass_ = animatingCssClass;
4412
4675
  _this.openCssClass_ = openCssClass;
4413
4676
 
4414
- _this.transitionEndHandler_ = function (ev) {
4415
- if (_this.isRootTransitioningEventTarget_(ev.target)) {
4416
- _this.adapter_.removeClass(_this.animatingCssClass_);
4417
- _this.adapter_.deregisterTransitionEndHandler(_this.transitionEndHandler_);
4418
- }
4677
+ _this.transitionEndHandler_ = function (evt) {
4678
+ return _this.handleTransitionEnd_(evt);
4419
4679
  };
4420
4680
 
4421
4681
  _this.inert_ = false;
@@ -4614,6 +4874,14 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4614
4874
  // if the event target is the root event target currently transitioning.
4615
4875
  return false;
4616
4876
  }
4877
+ }, {
4878
+ key: 'handleTransitionEnd_',
4879
+ value: function handleTransitionEnd_(evt) {
4880
+ if (this.isRootTransitioningEventTarget_(evt.target)) {
4881
+ this.adapter_.removeClass(this.animatingCssClass_);
4882
+ this.adapter_.deregisterTransitionEndHandler(this.transitionEndHandler_);
4883
+ }
4884
+ }
4617
4885
  }, {
4618
4886
  key: 'newPosition_',
4619
4887
  get: function get() {
@@ -4633,7 +4901,7 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4633
4901
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
4634
4902
 
4635
4903
  /***/ }),
4636
- /* 38 */
4904
+ /* 40 */
4637
4905
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4638
4906
 
4639
4907
  "use strict";
@@ -4661,7 +4929,8 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4661
4929
  var cssClasses = {
4662
4930
  ROOT: 'mdc-temporary-drawer',
4663
4931
  OPEN: 'mdc-temporary-drawer--open',
4664
- ANIMATING: 'mdc-temporary-drawer--animating'
4932
+ ANIMATING: 'mdc-temporary-drawer--animating',
4933
+ SCROLL_LOCK: 'mdc-drawer-scroll-lock'
4665
4934
  };
4666
4935
 
4667
4936
  var strings = {
@@ -4673,12 +4942,12 @@ var strings = {
4673
4942
  };
4674
4943
 
4675
4944
  /***/ }),
4676
- /* 39 */
4945
+ /* 41 */
4677
4946
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4678
4947
 
4679
4948
  "use strict";
4680
4949
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4681
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(38);
4950
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(40);
4682
4951
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
4683
4952
 
4684
4953
  var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
@@ -4727,6 +4996,8 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
4727
4996
  key: 'defaultAdapter',
4728
4997
  get: function get() {
4729
4998
  return _extends(__WEBPACK_IMPORTED_MODULE_0__slidable__["a" /* MDCSlidableDrawerFoundation */].defaultAdapter, {
4999
+ addBodyClass: function addBodyClass() /* className: string */{},
5000
+ removeBodyClass: function removeBodyClass() /* className: string */{},
4730
5001
  isDrawer: function isDrawer() {
4731
5002
  return false;
4732
5003
  },
@@ -4762,10 +5033,12 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
4762
5033
  _get(MDCTemporaryDrawerFoundation.prototype.__proto__ || Object.getPrototypeOf(MDCTemporaryDrawerFoundation.prototype), 'destroy', this).call(this);
4763
5034
 
4764
5035
  this.adapter_.deregisterInteractionHandler('click', this.componentClickHandler_);
5036
+ this.enableScroll_();
4765
5037
  }
4766
5038
  }, {
4767
5039
  key: 'open',
4768
5040
  value: function open() {
5041
+ this.disableScroll_();
4769
5042
  // Make sure custom property values are cleared before starting.
4770
5043
  this.adapter_.updateCssVariable('');
4771
5044
 
@@ -4799,6 +5072,24 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
4799
5072
  value: function isRootTransitioningEventTarget_(el) {
4800
5073
  return this.adapter_.isDrawer(el);
4801
5074
  }
5075
+ }, {
5076
+ key: 'handleTransitionEnd_',
5077
+ value: function handleTransitionEnd_(evt) {
5078
+ _get(MDCTemporaryDrawerFoundation.prototype.__proto__ || Object.getPrototypeOf(MDCTemporaryDrawerFoundation.prototype), 'handleTransitionEnd_', this).call(this, evt);
5079
+ if (!this.isOpen_) {
5080
+ this.enableScroll_();
5081
+ }
5082
+ }
5083
+ }, {
5084
+ key: 'disableScroll_',
5085
+ value: function disableScroll_() {
5086
+ this.adapter_.addBodyClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].SCROLL_LOCK);
5087
+ }
5088
+ }, {
5089
+ key: 'enableScroll_',
5090
+ value: function enableScroll_() {
5091
+ this.adapter_.removeBodyClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].SCROLL_LOCK);
5092
+ }
4802
5093
  }]);
4803
5094
 
4804
5095
  return MDCTemporaryDrawerFoundation;
@@ -4807,13 +5098,13 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
4807
5098
  /* harmony default export */ __webpack_exports__["a"] = (MDCTemporaryDrawerFoundation);
4808
5099
 
4809
5100
  /***/ }),
4810
- /* 40 */
5101
+ /* 42 */
4811
5102
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4812
5103
 
4813
5104
  "use strict";
4814
5105
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCTemporaryDrawer; });
4815
5106
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4816
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(39);
5107
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(41);
4817
5108
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4818
5109
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
4819
5110
  /* unused harmony reexport util */
@@ -4877,6 +5168,12 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
4877
5168
  hasClass: function hasClass(className) {
4878
5169
  return _this2.root_.classList.contains(className);
4879
5170
  },
5171
+ addBodyClass: function addBodyClass(className) {
5172
+ return document.body.classList.add(className);
5173
+ },
5174
+ removeBodyClass: function removeBodyClass(className) {
5175
+ return document.body.classList.remove(className);
5176
+ },
4880
5177
  hasNecessaryDom: function hasNecessaryDom() {
4881
5178
  return Boolean(_this2.drawer);
4882
5179
  },
@@ -4972,7 +5269,7 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
4972
5269
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
4973
5270
 
4974
5271
  /***/ }),
4975
- /* 41 */
5272
+ /* 43 */
4976
5273
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4977
5274
 
4978
5275
  "use strict";
@@ -5003,12 +5300,12 @@ var strings = {
5003
5300
  };
5004
5301
 
5005
5302
  /***/ }),
5006
- /* 42 */
5303
+ /* 44 */
5007
5304
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5008
5305
 
5009
5306
  "use strict";
5010
5307
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5011
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(41);
5308
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(43);
5012
5309
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5013
5310
 
5014
5311
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -5102,7 +5399,7 @@ var MDCFormFieldFoundation = function (_MDCFoundation) {
5102
5399
  /* harmony default export */ __webpack_exports__["a"] = (MDCFormFieldFoundation);
5103
5400
 
5104
5401
  /***/ }),
5105
- /* 43 */
5402
+ /* 45 */
5106
5403
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5107
5404
 
5108
5405
  "use strict";
@@ -5128,12 +5425,12 @@ var strings = {
5128
5425
  };
5129
5426
 
5130
5427
  /***/ }),
5131
- /* 44 */
5428
+ /* 46 */
5132
5429
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5133
5430
 
5134
5431
  "use strict";
5135
5432
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5136
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(43);
5433
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(45);
5137
5434
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5138
5435
 
5139
5436
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -5249,7 +5546,7 @@ var MDCGridListFoundation = function (_MDCFoundation) {
5249
5546
  /* harmony default export */ __webpack_exports__["a"] = (MDCGridListFoundation);
5250
5547
 
5251
5548
  /***/ }),
5252
- /* 45 */
5549
+ /* 47 */
5253
5550
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5254
5551
 
5255
5552
  "use strict";
@@ -5285,12 +5582,12 @@ var strings = {
5285
5582
  };
5286
5583
 
5287
5584
  /***/ }),
5288
- /* 46 */
5585
+ /* 48 */
5289
5586
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5290
5587
 
5291
5588
  "use strict";
5292
5589
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5293
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(45);
5590
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(47);
5294
5591
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5295
5592
 
5296
5593
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -5518,7 +5815,7 @@ function isSpace(_ref3) {
5518
5815
  }
5519
5816
 
5520
5817
  /***/ }),
5521
- /* 47 */
5818
+ /* 49 */
5522
5819
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5523
5820
 
5524
5821
  "use strict";
@@ -5552,13 +5849,13 @@ var strings = {
5552
5849
  };
5553
5850
 
5554
5851
  /***/ }),
5555
- /* 48 */
5852
+ /* 50 */
5556
5853
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5557
5854
 
5558
5855
  "use strict";
5559
5856
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5560
5857
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
5561
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(47);
5858
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(49);
5562
5859
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5563
5860
 
5564
5861
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -5696,7 +5993,7 @@ var MDCLinearProgressFoundation = function (_MDCFoundation) {
5696
5993
  /* harmony default export */ __webpack_exports__["a"] = (MDCLinearProgressFoundation);
5697
5994
 
5698
5995
  /***/ }),
5699
- /* 49 */
5996
+ /* 51 */
5700
5997
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5701
5998
 
5702
5999
  "use strict";
@@ -5730,7 +6027,8 @@ var cssClasses = {
5730
6027
  var strings = {
5731
6028
  ITEMS_SELECTOR: '.mdc-simple-menu__items',
5732
6029
  SELECTED_EVENT: 'MDCSimpleMenu:selected',
5733
- CANCEL_EVENT: 'MDCSimpleMenu:cancel'
6030
+ CANCEL_EVENT: 'MDCSimpleMenu:cancel',
6031
+ ARIA_DISABLED_ATTR: 'aria-disabled'
5734
6032
  };
5735
6033
 
5736
6034
  var numbers = {
@@ -5752,12 +6050,12 @@ var numbers = {
5752
6050
  };
5753
6051
 
5754
6052
  /***/ }),
5755
- /* 50 */
6053
+ /* 52 */
5756
6054
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5757
6055
 
5758
6056
  "use strict";
5759
6057
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5760
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(49);
6058
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(51);
5761
6059
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
5762
6060
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5763
6061
 
@@ -5820,6 +6118,7 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5820
6118
  return (/* boolean */false
5821
6119
  );
5822
6120
  },
6121
+ getAttributeForEventTarget: function getAttributeForEventTarget() /* target: EventTarget, attributeName: string */{},
5823
6122
  getInnerDimensions: function getInnerDimensions() {
5824
6123
  return (/* { width: number, height: number } */{}
5825
6124
  );
@@ -5845,8 +6144,8 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5845
6144
  },
5846
6145
  registerInteractionHandler: function registerInteractionHandler() /* type: string, handler: EventListener */{},
5847
6146
  deregisterInteractionHandler: function deregisterInteractionHandler() /* type: string, handler: EventListener */{},
5848
- registerDocumentClickHandler: function registerDocumentClickHandler() /* handler: EventListener */{},
5849
- deregisterDocumentClickHandler: function deregisterDocumentClickHandler() /* handler: EventListener */{},
6147
+ registerBodyClickHandler: function registerBodyClickHandler() /* handler: EventListener */{},
6148
+ deregisterBodyClickHandler: function deregisterBodyClickHandler() /* handler: EventListener */{},
5850
6149
  getYParamsForItemAtIndex: function getYParamsForItemAtIndex() {
5851
6150
  return (/* index: number */ /* {top: number, height: number} */{}
5852
6151
  );
@@ -5898,9 +6197,9 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5898
6197
  _this.keyupHandler_ = function (evt) {
5899
6198
  return _this.handleKeyboardUp_(evt);
5900
6199
  };
5901
- _this.documentClickHandler_ = function () {
6200
+ _this.documentClickHandler_ = function (evt) {
5902
6201
  _this.adapter_.notifyCancel();
5903
- _this.close();
6202
+ _this.close(evt);
5904
6203
  };
5905
6204
  _this.isOpen_ = false;
5906
6205
  _this.startScaleX_ = 0;
@@ -5947,7 +6246,7 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5947
6246
  this.adapter_.deregisterInteractionHandler('click', this.clickHandler_);
5948
6247
  this.adapter_.deregisterInteractionHandler('keyup', this.keyupHandler_);
5949
6248
  this.adapter_.deregisterInteractionHandler('keydown', this.keydownHandler_);
5950
- this.adapter_.deregisterDocumentClickHandler(this.documentClickHandler_);
6249
+ this.adapter_.deregisterBodyClickHandler(this.documentClickHandler_);
5951
6250
  }
5952
6251
 
5953
6252
  // Calculate transition delays for individual menu items, so that they fade in one at a time.
@@ -6178,6 +6477,9 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6178
6477
  value: function handlePossibleSelected_(evt) {
6179
6478
  var _this4 = this;
6180
6479
 
6480
+ if (this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true') {
6481
+ return;
6482
+ }
6181
6483
  var targetIndex = this.adapter_.getIndexForEventTarget(evt.target);
6182
6484
  if (targetIndex < 0) {
6183
6485
  return;
@@ -6259,7 +6561,7 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6259
6561
  _this5.animateMenu_();
6260
6562
  _this5.adapter_.addClass(MDCSimpleMenuFoundation.cssClasses.OPEN);
6261
6563
  _this5.focusOnOpen_(focusIndex);
6262
- _this5.adapter_.registerDocumentClickHandler(_this5.documentClickHandler_);
6564
+ _this5.adapter_.registerBodyClickHandler(_this5.documentClickHandler_);
6263
6565
  });
6264
6566
  this.isOpen_ = true;
6265
6567
  }
@@ -6271,7 +6573,15 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6271
6573
  value: function close() {
6272
6574
  var _this6 = this;
6273
6575
 
6274
- this.adapter_.deregisterDocumentClickHandler(this.documentClickHandler_);
6576
+ var evt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
6577
+
6578
+ var targetIsDisabled = evt ? this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true' : false;
6579
+
6580
+ if (targetIsDisabled) {
6581
+ return;
6582
+ }
6583
+
6584
+ this.adapter_.deregisterBodyClickHandler(this.documentClickHandler_);
6275
6585
  this.adapter_.addClass(MDCSimpleMenuFoundation.cssClasses.ANIMATING);
6276
6586
  requestAnimationFrame(function () {
6277
6587
  _this6.removeTransitionDelays_();
@@ -6294,13 +6604,13 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6294
6604
  /* harmony default export */ __webpack_exports__["a"] = (MDCSimpleMenuFoundation);
6295
6605
 
6296
6606
  /***/ }),
6297
- /* 51 */
6607
+ /* 53 */
6298
6608
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6299
6609
 
6300
6610
  "use strict";
6301
6611
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCSimpleMenu; });
6302
6612
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6303
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(50);
6613
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(52);
6304
6614
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
6305
6615
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
6306
6616
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -6377,6 +6687,9 @@ var MDCSimpleMenu = function (_MDCComponent) {
6377
6687
  hasNecessaryDom: function hasNecessaryDom() {
6378
6688
  return Boolean(_this2.itemsContainer_);
6379
6689
  },
6690
+ getAttributeForEventTarget: function getAttributeForEventTarget(target, attributeName) {
6691
+ return target.getAttribute(attributeName);
6692
+ },
6380
6693
  getInnerDimensions: function getInnerDimensions() {
6381
6694
  var itemsContainer = _this2.itemsContainer_;
6382
6695
 
@@ -6406,11 +6719,11 @@ var MDCSimpleMenu = function (_MDCComponent) {
6406
6719
  deregisterInteractionHandler: function deregisterInteractionHandler(type, handler) {
6407
6720
  return _this2.root_.removeEventListener(type, handler);
6408
6721
  },
6409
- registerDocumentClickHandler: function registerDocumentClickHandler(handler) {
6410
- return document.addEventListener('click', handler);
6722
+ registerBodyClickHandler: function registerBodyClickHandler(handler) {
6723
+ return document.body.addEventListener('click', handler);
6411
6724
  },
6412
- deregisterDocumentClickHandler: function deregisterDocumentClickHandler(handler) {
6413
- return document.removeEventListener('click', handler);
6725
+ deregisterBodyClickHandler: function deregisterBodyClickHandler(handler) {
6726
+ return document.body.removeEventListener('click', handler);
6414
6727
  },
6415
6728
  getYParamsForItemAtIndex: function getYParamsForItemAtIndex(index) {
6416
6729
  var _items$index = _this2.items[index],
@@ -6512,7 +6825,7 @@ var MDCSimpleMenu = function (_MDCComponent) {
6512
6825
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
6513
6826
 
6514
6827
  /***/ }),
6515
- /* 52 */
6828
+ /* 54 */
6516
6829
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6517
6830
 
6518
6831
  "use strict";
@@ -6543,12 +6856,12 @@ var cssClasses = {
6543
6856
  };
6544
6857
 
6545
6858
  /***/ }),
6546
- /* 53 */
6859
+ /* 55 */
6547
6860
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6548
6861
 
6549
6862
  "use strict";
6550
6863
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6551
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(52);
6864
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(54);
6552
6865
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
6553
6866
 
6554
6867
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -6658,7 +6971,7 @@ var MDCRadioFoundation = function (_MDCFoundation) {
6658
6971
  /* harmony default export */ __webpack_exports__["a"] = (MDCRadioFoundation);
6659
6972
 
6660
6973
  /***/ }),
6661
- /* 54 */
6974
+ /* 56 */
6662
6975
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6663
6976
 
6664
6977
  "use strict";
@@ -6711,12 +7024,12 @@ var numbers = {
6711
7024
  };
6712
7025
 
6713
7026
  /***/ }),
6714
- /* 55 */
7027
+ /* 57 */
6715
7028
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6716
7029
 
6717
7030
  "use strict";
6718
7031
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6719
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(54);
7032
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(56);
6720
7033
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
6721
7034
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
6722
7035
 
@@ -7214,7 +7527,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7214
7527
  /* harmony default export */ __webpack_exports__["a"] = (MDCRippleFoundation);
7215
7528
 
7216
7529
  /***/ }),
7217
- /* 56 */
7530
+ /* 58 */
7218
7531
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7219
7532
 
7220
7533
  "use strict";
@@ -7246,12 +7559,12 @@ var strings = {
7246
7559
  };
7247
7560
 
7248
7561
  /***/ }),
7249
- /* 57 */
7562
+ /* 59 */
7250
7563
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7251
7564
 
7252
7565
  "use strict";
7253
7566
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7254
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(56);
7567
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(58);
7255
7568
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_menu__ = __webpack_require__(6);
7256
7569
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
7257
7570
 
@@ -7385,72 +7698,459 @@ var MDCSelectFoundation = function (_MDCFoundation) {
7385
7698
  _this.open_();
7386
7699
  }
7387
7700
  };
7388
- _this.displayViaKeyboardHandler_ = function (evt) {
7389
- return _this.handleDisplayViaKeyboard_(evt);
7701
+ _this.displayViaKeyboardHandler_ = function (evt) {
7702
+ return _this.handleDisplayViaKeyboard_(evt);
7703
+ };
7704
+ _this.selectionHandler_ = function (_ref) {
7705
+ var detail = _ref.detail;
7706
+ var index = detail.index;
7707
+
7708
+ _this.close_();
7709
+ if (index !== _this.selectedIndex_) {
7710
+ _this.setSelectedIndex(index);
7711
+ _this.adapter_.notifyChange();
7712
+ }
7713
+ };
7714
+ _this.cancelHandler_ = function () {
7715
+ _this.close_();
7716
+ };
7717
+ return _this;
7718
+ }
7719
+
7720
+ _createClass(MDCSelectFoundation, [{
7721
+ key: 'init',
7722
+ value: function init() {
7723
+ this.ctx_ = this.adapter_.create2dRenderingContext();
7724
+ this.adapter_.registerInteractionHandler('click', this.displayHandler_);
7725
+ this.adapter_.registerInteractionHandler('keydown', this.displayViaKeyboardHandler_);
7726
+ this.adapter_.registerInteractionHandler('keyup', this.displayViaKeyboardHandler_);
7727
+ this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7728
+ this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
7729
+ this.resize();
7730
+ }
7731
+ }, {
7732
+ key: 'destroy',
7733
+ value: function destroy() {
7734
+ // Drop reference to context object to prevent potential leaks
7735
+ this.ctx_ = null;
7736
+ this.adapter_.deregisterInteractionHandler('click', this.displayHandler_);
7737
+ this.adapter_.deregisterInteractionHandler('keydown', this.displayViaKeyboardHandler_);
7738
+ this.adapter_.deregisterInteractionHandler('keyup', this.displayViaKeyboardHandler_);
7739
+ this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7740
+ this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
7741
+ }
7742
+ }, {
7743
+ key: 'getValue',
7744
+ value: function getValue() {
7745
+ return this.selectedIndex_ >= 0 ? this.adapter_.getValueForOptionAtIndex(this.selectedIndex_) : '';
7746
+ }
7747
+ }, {
7748
+ key: 'getSelectedIndex',
7749
+ value: function getSelectedIndex() {
7750
+ return this.selectedIndex_;
7751
+ }
7752
+ }, {
7753
+ key: 'setSelectedIndex',
7754
+ value: function setSelectedIndex(index) {
7755
+ var prevSelectedIndex = this.selectedIndex_;
7756
+ if (prevSelectedIndex >= 0) {
7757
+ this.adapter_.rmAttrForOptionAtIndex(this.selectedIndex_, 'aria-selected');
7758
+ }
7759
+
7760
+ this.selectedIndex_ = index >= 0 && index < this.adapter_.getNumberOfOptions() ? index : -1;
7761
+ var selectedTextContent = '';
7762
+ if (this.selectedIndex_ >= 0) {
7763
+ selectedTextContent = this.adapter_.getTextForOptionAtIndex(this.selectedIndex_).trim();
7764
+ this.adapter_.setAttrForOptionAtIndex(this.selectedIndex_, 'aria-selected', 'true');
7765
+ }
7766
+ this.adapter_.setSelectedTextContent(selectedTextContent);
7767
+ }
7768
+ }, {
7769
+ key: 'isDisabled',
7770
+ value: function isDisabled() {
7771
+ return this.disabled_;
7772
+ }
7773
+ }, {
7774
+ key: 'setDisabled',
7775
+ value: function setDisabled(disabled) {
7776
+ var DISABLED = MDCSelectFoundation.cssClasses.DISABLED;
7777
+
7778
+ this.disabled_ = disabled;
7779
+ if (this.disabled_) {
7780
+ this.adapter_.addClass(DISABLED);
7781
+ this.adapter_.setAttr('aria-disabled', 'true');
7782
+ this.adapter_.makeUntabbable();
7783
+ } else {
7784
+ this.adapter_.removeClass(DISABLED);
7785
+ this.adapter_.rmAttr('aria-disabled');
7786
+ this.adapter_.makeTabbable();
7787
+ }
7788
+ }
7789
+ }, {
7790
+ key: 'resize',
7791
+ value: function resize() {
7792
+ var font = this.adapter_.getComputedStyleValue('font');
7793
+ var letterSpacing = parseFloat(this.adapter_.getComputedStyleValue('letter-spacing'));
7794
+ if (font) {
7795
+ this.ctx_.font = font;
7796
+ } else {
7797
+ var primaryFontFamily = this.adapter_.getComputedStyleValue('font-family').split(',')[0];
7798
+ var fontSize = this.adapter_.getComputedStyleValue('font-size');
7799
+ this.ctx_.font = fontSize + ' ' + primaryFontFamily;
7800
+ }
7801
+
7802
+ var maxTextLength = 0;
7803
+ for (var i = 0, l = this.adapter_.getNumberOfOptions(); i < l; i++) {
7804
+ var txt = this.adapter_.getTextForOptionAtIndex(i).trim();
7805
+
7806
+ var _ctx_$measureText = this.ctx_.measureText(txt),
7807
+ width = _ctx_$measureText.width;
7808
+
7809
+ var addedSpace = letterSpacing * txt.length;
7810
+ maxTextLength = Math.max(maxTextLength, Math.ceil(width + addedSpace));
7811
+ }
7812
+ this.adapter_.setStyle('width', maxTextLength + 'px');
7813
+ }
7814
+ }, {
7815
+ key: 'open_',
7816
+ value: function open_() {
7817
+ var OPEN = MDCSelectFoundation.cssClasses.OPEN;
7818
+
7819
+ var focusIndex = this.selectedIndex_ < 0 ? 0 : this.selectedIndex_;
7820
+
7821
+ var _computeMenuStylesFor = this.computeMenuStylesForOpenAtIndex_(focusIndex),
7822
+ left = _computeMenuStylesFor.left,
7823
+ top = _computeMenuStylesFor.top,
7824
+ transformOrigin = _computeMenuStylesFor.transformOrigin;
7825
+
7826
+ this.adapter_.setMenuElStyle('left', left);
7827
+ this.adapter_.setMenuElStyle('top', top);
7828
+ this.adapter_.setMenuElStyle('transform-origin', transformOrigin);
7829
+ this.adapter_.addClass(OPEN);
7830
+ this.adapter_.openMenu(focusIndex);
7831
+ }
7832
+ }, {
7833
+ key: 'computeMenuStylesForOpenAtIndex_',
7834
+ value: function computeMenuStylesForOpenAtIndex_(index) {
7835
+ var innerHeight = this.adapter_.getWindowInnerHeight();
7836
+
7837
+ var _adapter_$computeBoun = this.adapter_.computeBoundingRect(),
7838
+ left = _adapter_$computeBoun.left,
7839
+ top = _adapter_$computeBoun.top;
7840
+
7841
+ this.adapter_.setMenuElAttr('aria-hidden', 'true');
7842
+ this.adapter_.setMenuElStyle('display', 'block');
7843
+ var menuHeight = this.adapter_.getMenuElOffsetHeight();
7844
+ var itemOffsetTop = this.adapter_.getOffsetTopForOptionAtIndex(index);
7845
+ this.adapter_.setMenuElStyle('display', '');
7846
+ this.adapter_.rmMenuElAttr('aria-hidden');
7847
+
7848
+ var adjustedTop = top - itemOffsetTop;
7849
+ var adjustedHeight = menuHeight - itemOffsetTop;
7850
+ var overflowsTop = adjustedTop < 0;
7851
+ var overflowsBottom = adjustedTop + adjustedHeight > innerHeight;
7852
+ if (overflowsTop) {
7853
+ adjustedTop = 0;
7854
+ } else if (overflowsBottom) {
7855
+ adjustedTop = Math.max(0, adjustedTop - adjustedHeight);
7856
+ }
7857
+
7858
+ return {
7859
+ left: left + 'px',
7860
+ top: adjustedTop + 'px',
7861
+ transformOrigin: 'center ' + itemOffsetTop + 'px'
7862
+ };
7863
+ }
7864
+ }, {
7865
+ key: 'close_',
7866
+ value: function close_() {
7867
+ var OPEN = MDCSelectFoundation.cssClasses.OPEN;
7868
+
7869
+ this.adapter_.removeClass(OPEN);
7870
+ this.adapter_.focus();
7871
+ }
7872
+ }, {
7873
+ key: 'handleDisplayViaKeyboard_',
7874
+ value: function handleDisplayViaKeyboard_(evt) {
7875
+ // We use a hard-coded 2 instead of Event.AT_TARGET to avoid having to reference a browser
7876
+ // global.
7877
+ var EVENT_PHASE_AT_TARGET = 2;
7878
+ if (evt.eventPhase !== EVENT_PHASE_AT_TARGET) {
7879
+ return;
7880
+ }
7881
+
7882
+ // Prevent pressing space down from scrolling the page
7883
+ var isSpaceDown = evt.type === 'keydown' && (evt.key === 'Space' || evt.keyCode === 32);
7884
+ if (isSpaceDown) {
7885
+ evt.preventDefault();
7886
+ }
7887
+
7888
+ var isOpenerKey = OPENER_KEYS.some(function (_ref2) {
7889
+ var key = _ref2.key,
7890
+ keyCode = _ref2.keyCode,
7891
+ forType = _ref2.forType;
7892
+
7893
+ return evt.type === forType && (evt.key === key || evt.keyCode === keyCode);
7894
+ });
7895
+ if (isOpenerKey) {
7896
+ this.displayHandler_(evt);
7897
+ }
7898
+ }
7899
+ }]);
7900
+
7901
+ return MDCSelectFoundation;
7902
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
7903
+
7904
+ /* harmony default export */ __webpack_exports__["a"] = (MDCSelectFoundation);
7905
+
7906
+ /***/ }),
7907
+ /* 60 */
7908
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7909
+
7910
+ "use strict";
7911
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(10);
7912
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
7913
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_base_foundation__ = __webpack_require__(1);
7914
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
7915
+
7916
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
7917
+
7918
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
7919
+
7920
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
7921
+
7922
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
7923
+
7924
+ /**
7925
+ * Copyright 2017 Google Inc. All Rights Reserved.
7926
+ *
7927
+ * Licensed under the Apache License, Version 2.0 (the "License");
7928
+ *you may not use this file except in compliance with the License.
7929
+ * You may obtain a copy of the License at
7930
+ *
7931
+ * http://www.apache.org/licenses/LICENSE-2.0
7932
+ *
7933
+ * Unless required by applicable law or agreed to in writing, software
7934
+ * distributed under the License is distributed on an "AS IS" BASIS,
7935
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7936
+ * See the License for the specific language governing permissions and
7937
+ * limitations under the License.
7938
+ */
7939
+
7940
+
7941
+
7942
+
7943
+
7944
+
7945
+ var KEY_IDS = {
7946
+ ARROW_LEFT: 'ArrowLeft',
7947
+ ARROW_RIGHT: 'ArrowRight',
7948
+ ARROW_UP: 'ArrowUp',
7949
+ ARROW_DOWN: 'ArrowDown',
7950
+ HOME: 'Home',
7951
+ END: 'End',
7952
+ PAGE_UP: 'PageUp',
7953
+ PAGE_DOWN: 'PageDown'
7954
+ };
7955
+
7956
+ var MDCSliderFoundation = function (_MDCFoundation) {
7957
+ _inherits(MDCSliderFoundation, _MDCFoundation);
7958
+
7959
+ _createClass(MDCSliderFoundation, null, [{
7960
+ key: 'cssClasses',
7961
+ get: function get() {
7962
+ return __WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */];
7963
+ }
7964
+ }, {
7965
+ key: 'strings',
7966
+ get: function get() {
7967
+ return __WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */];
7968
+ }
7969
+ }, {
7970
+ key: 'numbers',
7971
+ get: function get() {
7972
+ return __WEBPACK_IMPORTED_MODULE_0__constants__["c" /* numbers */];
7973
+ }
7974
+ }, {
7975
+ key: 'defaultAdapter',
7976
+ get: function get() {
7977
+ return {
7978
+ addClass: function addClass() /* className: string */{},
7979
+ removeClass: function removeClass() /* className: string */{},
7980
+ getAttribute: function getAttribute() {
7981
+ return (/* name: string */ /* string|null */null
7982
+ );
7983
+ },
7984
+ setAttribute: function setAttribute() /* name: string, value: string */{},
7985
+ removeAttribute: function removeAttribute() /* name: string */{},
7986
+ computeBoundingRect: function computeBoundingRect() {
7987
+ return (/* ClientRect */{
7988
+ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0
7989
+ }
7990
+ );
7991
+ },
7992
+ getTabIndex: function getTabIndex() {
7993
+ return (/* number */0
7994
+ );
7995
+ },
7996
+ registerInteractionHandler: function registerInteractionHandler() /* type: string, handler: EventListener */{},
7997
+ deregisterInteractionHandler: function deregisterInteractionHandler() /* type: string, handler: EventListener */{},
7998
+ registerThumbContainerInteractionHandler: function registerThumbContainerInteractionHandler() /* type: string, handler: EventListener */{},
7999
+ deregisterThumbContainerInteractionHandler: function deregisterThumbContainerInteractionHandler() /* type: string, handler: EventListener */{},
8000
+ registerBodyInteractionHandler: function registerBodyInteractionHandler() /* type: string, handler: EventListener */{},
8001
+ deregisterBodyInteractionHandler: function deregisterBodyInteractionHandler() /* type: string, handler: EventListener */{},
8002
+ registerResizeHandler: function registerResizeHandler() /* handler: EventListener */{},
8003
+ deregisterResizeHandler: function deregisterResizeHandler() /* handler: EventListener */{},
8004
+ notifyInput: function notifyInput() {},
8005
+ notifyChange: function notifyChange() {},
8006
+ setThumbContainerStyleProperty: function setThumbContainerStyleProperty() /* propertyName: string, value: string */{},
8007
+ setTrackStyleProperty: function setTrackStyleProperty() /* propertyName: string, value: string */{},
8008
+ isRTL: function isRTL() {
8009
+ return (/* boolean */false
8010
+ );
8011
+ }
8012
+ };
8013
+ }
8014
+ }]);
8015
+
8016
+ function MDCSliderFoundation() {
8017
+ var adapter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8018
+
8019
+ _classCallCheck(this, MDCSliderFoundation);
8020
+
8021
+ var _this = _possibleConstructorReturn(this, (MDCSliderFoundation.__proto__ || Object.getPrototypeOf(MDCSliderFoundation)).call(this, _extends(MDCSliderFoundation.defaultAdapter, adapter)));
8022
+
8023
+ _this.rect_ = null;
8024
+ // We set this to NaN since we want it to be a number, but we can't use '0' or '-1'
8025
+ // because those could be valid tabindices set by the client code.
8026
+ _this.savedTabIndex_ = NaN;
8027
+ _this.off_ = false;
8028
+ _this.active_ = false;
8029
+ _this.inTransit_ = false;
8030
+ _this.handlingThumbTargetEvt_ = false;
8031
+ _this.min_ = 0;
8032
+ _this.max_ = 100;
8033
+ _this.step_ = 0;
8034
+ _this.value_ = 0;
8035
+ _this.disabled_ = false;
8036
+ _this.preventFocusState_ = false;
8037
+ _this.updateUIFrame_ = 0;
8038
+ _this.thumbContainerPointerHandler_ = function () {
8039
+ _this.handlingThumbTargetEvt_ = true;
8040
+ };
8041
+ _this.mousedownHandler_ = _this.createDownHandler_('mousemove', 'mouseup');
8042
+ _this.pointerdownHandler_ = _this.createDownHandler_('pointermove', 'pointerup');
8043
+ _this.touchstartHandler_ = _this.createDownHandler_('touchmove', 'touchend', function (_ref) {
8044
+ var targetTouches = _ref.targetTouches;
8045
+ return targetTouches[0].pageX;
8046
+ });
8047
+ _this.keydownHandler_ = function (evt) {
8048
+ return _this.handleKeydown_(evt);
7390
8049
  };
7391
- _this.selectionHandler_ = function (_ref) {
7392
- var detail = _ref.detail;
7393
- var index = detail.index;
7394
-
7395
- _this.close_();
7396
- if (index !== _this.selectedIndex_) {
7397
- _this.setSelectedIndex(index);
7398
- _this.adapter_.notifyChange();
7399
- }
8050
+ _this.focusHandler_ = function () {
8051
+ return _this.handleFocus_();
7400
8052
  };
7401
- _this.cancelHandler_ = function () {
7402
- _this.close_();
8053
+ _this.blurHandler_ = function () {
8054
+ return _this.handleBlur_();
8055
+ };
8056
+ _this.resizeHandler_ = function () {
8057
+ return _this.layout();
7403
8058
  };
7404
8059
  return _this;
7405
8060
  }
7406
8061
 
7407
- _createClass(MDCSelectFoundation, [{
8062
+ _createClass(MDCSliderFoundation, [{
7408
8063
  key: 'init',
7409
8064
  value: function init() {
7410
- this.ctx_ = this.adapter_.create2dRenderingContext();
7411
- this.adapter_.registerInteractionHandler('click', this.displayHandler_);
7412
- this.adapter_.registerInteractionHandler('keydown', this.displayViaKeyboardHandler_);
7413
- this.adapter_.registerInteractionHandler('keyup', this.displayViaKeyboardHandler_);
7414
- this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7415
- this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
7416
- this.resize();
8065
+ var _this2 = this;
8066
+
8067
+ this.adapter_.registerInteractionHandler('mousedown', this.mousedownHandler_);
8068
+ this.adapter_.registerInteractionHandler('pointerdown', this.pointerdownHandler_);
8069
+ this.adapter_.registerInteractionHandler('touchstart', this.touchstartHandler_);
8070
+ this.adapter_.registerInteractionHandler('keydown', this.keydownHandler_);
8071
+ this.adapter_.registerInteractionHandler('focus', this.focusHandler_);
8072
+ this.adapter_.registerInteractionHandler('blur', this.blurHandler_);
8073
+ ['mousedown', 'pointerdown', 'touchstart'].forEach(function (evtName) {
8074
+ _this2.adapter_.registerThumbContainerInteractionHandler(evtName, _this2.thumbContainerPointerHandler_);
8075
+ });
8076
+ this.adapter_.registerResizeHandler(this.resizeHandler_);
8077
+ this.layout();
7417
8078
  }
7418
8079
  }, {
7419
8080
  key: 'destroy',
7420
8081
  value: function destroy() {
7421
- // Drop reference to context object to prevent potential leaks
7422
- this.ctx_ = null;
7423
- this.adapter_.deregisterInteractionHandler('click', this.displayHandler_);
7424
- this.adapter_.deregisterInteractionHandler('keydown', this.displayViaKeyboardHandler_);
7425
- this.adapter_.deregisterInteractionHandler('keyup', this.displayViaKeyboardHandler_);
7426
- this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7427
- this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
8082
+ var _this3 = this;
8083
+
8084
+ this.adapter_.deregisterInteractionHandler('mousedown', this.mousedownHandler_);
8085
+ this.adapter_.deregisterInteractionHandler('pointerdown', this.mousedownHandler_);
8086
+ this.adapter_.deregisterInteractionHandler('touchstart', this.mousedownHandler_);
8087
+ this.adapter_.deregisterInteractionHandler('keydown', this.keydownHandler_);
8088
+ this.adapter_.deregisterInteractionHandler('focus', this.focusHandler_);
8089
+ this.adapter_.deregisterInteractionHandler('blur', this.blurHandler_);
8090
+ ['mousedown', 'pointerdown', 'touchstart'].forEach(function (evtName) {
8091
+ _this3.adapter_.deregisterThumbContainerInteractionHandler(evtName, _this3.thumbContainerPointerHandler_);
8092
+ });
8093
+ this.adapter_.deregisterResizeHandler(this.resizeHandler_);
8094
+ }
8095
+ }, {
8096
+ key: 'layout',
8097
+ value: function layout() {
8098
+ this.rect_ = this.adapter_.computeBoundingRect();
8099
+ this.updateUIForCurrentValue_();
7428
8100
  }
7429
8101
  }, {
7430
8102
  key: 'getValue',
7431
8103
  value: function getValue() {
7432
- return this.selectedIndex_ >= 0 ? this.adapter_.getValueForOptionAtIndex(this.selectedIndex_) : '';
8104
+ return this.value_;
7433
8105
  }
7434
8106
  }, {
7435
- key: 'getSelectedIndex',
7436
- value: function getSelectedIndex() {
7437
- return this.selectedIndex_;
8107
+ key: 'setValue',
8108
+ value: function setValue(value) {
8109
+ this.setValue_(value, false);
7438
8110
  }
7439
8111
  }, {
7440
- key: 'setSelectedIndex',
7441
- value: function setSelectedIndex(index) {
7442
- var prevSelectedIndex = this.selectedIndex_;
7443
- if (prevSelectedIndex >= 0) {
7444
- this.adapter_.rmAttrForOptionAtIndex(this.selectedIndex_, 'aria-selected');
8112
+ key: 'getMax',
8113
+ value: function getMax() {
8114
+ return this.max_;
8115
+ }
8116
+ }, {
8117
+ key: 'setMax',
8118
+ value: function setMax(max) {
8119
+ if (max < this.min_) {
8120
+ throw new Error('Cannot set max to be less than the slider\'s minimum value');
7445
8121
  }
7446
-
7447
- this.selectedIndex_ = index >= 0 && index < this.adapter_.getNumberOfOptions() ? index : -1;
7448
- var selectedTextContent = '';
7449
- if (this.selectedIndex_ >= 0) {
7450
- selectedTextContent = this.adapter_.getTextForOptionAtIndex(this.selectedIndex_).trim();
7451
- this.adapter_.setAttrForOptionAtIndex(this.selectedIndex_, 'aria-selected', 'true');
8122
+ this.max_ = max;
8123
+ this.setValue_(this.value_, false, true);
8124
+ this.adapter_.setAttribute(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */].ARIA_VALUEMAX, String(this.max_));
8125
+ }
8126
+ }, {
8127
+ key: 'getMin',
8128
+ value: function getMin() {
8129
+ return this.min_;
8130
+ }
8131
+ }, {
8132
+ key: 'setMin',
8133
+ value: function setMin(min) {
8134
+ if (min > this.max_) {
8135
+ throw new Error('Cannot set min to be greater than the slider\'s maximum value');
7452
8136
  }
7453
- this.adapter_.setSelectedTextContent(selectedTextContent);
8137
+ this.min_ = min;
8138
+ this.setValue_(this.value_, false, true);
8139
+ this.adapter_.setAttribute(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */].ARIA_VALUEMIN, String(this.min_));
8140
+ }
8141
+ }, {
8142
+ key: 'getStep',
8143
+ value: function getStep() {
8144
+ return this.step_;
8145
+ }
8146
+ }, {
8147
+ key: 'setStep',
8148
+ value: function setStep(step) {
8149
+ if (step < 0) {
8150
+ throw new Error('Step cannot be set to a negative number');
8151
+ }
8152
+ this.step_ = step;
8153
+ this.setValue_(this.value_, false, true);
7454
8154
  }
7455
8155
  }, {
7456
8156
  key: 'isDisabled',
@@ -7460,138 +8160,283 @@ var MDCSelectFoundation = function (_MDCFoundation) {
7460
8160
  }, {
7461
8161
  key: 'setDisabled',
7462
8162
  value: function setDisabled(disabled) {
7463
- var DISABLED = MDCSelectFoundation.cssClasses.DISABLED;
7464
-
7465
8163
  this.disabled_ = disabled;
8164
+ this.toggleClass_(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].DISABLED, this.disabled_);
7466
8165
  if (this.disabled_) {
7467
- this.adapter_.addClass(DISABLED);
7468
- this.adapter_.setAttr('aria-disabled', 'true');
7469
- this.adapter_.makeUntabbable();
8166
+ this.savedTabIndex_ = this.adapter_.getTabIndex();
8167
+ this.adapter_.setAttribute(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */].ARIA_DISABLED, 'true');
8168
+ this.adapter_.removeAttribute('tabindex');
7470
8169
  } else {
7471
- this.adapter_.removeClass(DISABLED);
7472
- this.adapter_.rmAttr('aria-disabled');
7473
- this.adapter_.makeTabbable();
8170
+ this.adapter_.removeAttribute(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */].ARIA_DISABLED);
8171
+ if (!isNaN(this.savedTabIndex_)) {
8172
+ this.adapter_.setAttribute('tabindex', String(this.savedTabIndex_));
8173
+ }
7474
8174
  }
7475
8175
  }
7476
8176
  }, {
7477
- key: 'resize',
7478
- value: function resize() {
7479
- var font = this.adapter_.getComputedStyleValue('font');
7480
- var letterSpacing = parseFloat(this.adapter_.getComputedStyleValue('letter-spacing'));
7481
- if (font) {
7482
- this.ctx_.font = font;
7483
- } else {
7484
- var primaryFontFamily = this.adapter_.getComputedStyleValue('font-family').split(',')[0];
7485
- var fontSize = this.adapter_.getComputedStyleValue('font-size');
7486
- this.ctx_.font = fontSize + ' ' + primaryFontFamily;
7487
- }
8177
+ key: 'createDownHandler_',
8178
+ value: function createDownHandler_(moveEvt, upEvt) {
8179
+ var _this4 = this;
7488
8180
 
7489
- var maxTextLength = 0;
7490
- for (var i = 0, l = this.adapter_.getNumberOfOptions(); i < l; i++) {
7491
- var txt = this.adapter_.getTextForOptionAtIndex(i).trim();
8181
+ var getPageX = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (_ref2) {
8182
+ var pageX = _ref2.pageX;
8183
+ return pageX;
8184
+ };
7492
8185
 
7493
- var _ctx_$measureText = this.ctx_.measureText(txt),
7494
- width = _ctx_$measureText.width;
8186
+ var moveHandler = function moveHandler(evt) {
8187
+ evt.preventDefault();
8188
+ _this4.setValueFromEvt_(evt, getPageX);
8189
+ };
7495
8190
 
7496
- var addedSpace = letterSpacing * txt.length;
7497
- maxTextLength = Math.max(maxTextLength, Math.ceil(width + addedSpace));
7498
- }
7499
- this.adapter_.setStyle('width', maxTextLength + 'px');
8191
+ var upHandler = function upHandler() {
8192
+ _this4.setActive_(false);
8193
+ _this4.adapter_.deregisterBodyInteractionHandler(moveEvt, moveHandler);
8194
+ _this4.adapter_.deregisterBodyInteractionHandler(upEvt, upHandler);
8195
+ _this4.adapter_.notifyChange();
8196
+ };
8197
+
8198
+ var downHandler = function downHandler(evt) {
8199
+ if (_this4.disabled_) {
8200
+ return;
8201
+ }
8202
+
8203
+ _this4.preventFocusState_ = true;
8204
+ _this4.setInTransit_(!_this4.handlingThumbTargetEvt_);
8205
+ _this4.handlingThumbTargetEvt_ = false;
8206
+
8207
+ _this4.setActive_(true);
8208
+
8209
+ _this4.adapter_.registerBodyInteractionHandler(moveEvt, moveHandler);
8210
+ _this4.adapter_.registerBodyInteractionHandler(upEvt, upHandler);
8211
+ _this4.setValueFromEvt_(evt, getPageX);
8212
+ };
8213
+
8214
+ return downHandler;
7500
8215
  }
7501
8216
  }, {
7502
- key: 'open_',
7503
- value: function open_() {
7504
- var OPEN = MDCSelectFoundation.cssClasses.OPEN;
7505
-
7506
- var focusIndex = this.selectedIndex_ < 0 ? 0 : this.selectedIndex_;
8217
+ key: 'setValueFromEvt_',
8218
+ value: function setValueFromEvt_(evt, getPageX) {
8219
+ var pageX = getPageX(evt);
8220
+ var value = this.computeValueFromPageX_(pageX);
8221
+ this.setValue_(value, true);
8222
+ }
8223
+ }, {
8224
+ key: 'computeValueFromPageX_',
8225
+ value: function computeValueFromPageX_(pageX) {
8226
+ var max = this.max_,
8227
+ min = this.min_;
7507
8228
 
7508
- var _computeMenuStylesFor = this.computeMenuStylesForOpenAtIndex_(focusIndex),
7509
- left = _computeMenuStylesFor.left,
7510
- top = _computeMenuStylesFor.top,
7511
- transformOrigin = _computeMenuStylesFor.transformOrigin;
8229
+ var xPos = pageX - this.rect_.left;
8230
+ var pctComplete = xPos / this.rect_.width;
8231
+ if (this.adapter_.isRTL()) {
8232
+ pctComplete = 1 - pctComplete;
8233
+ }
8234
+ // Fit the percentage complete between the range [min,max]
8235
+ // by remapping from [0, 1] to [min, min+(max-min)].
8236
+ return min + pctComplete * (max - min);
8237
+ }
8238
+ }, {
8239
+ key: 'handleKeydown_',
8240
+ value: function handleKeydown_(evt) {
8241
+ var keyId = this.getKeyId_(evt);
8242
+ var value = this.getValueForKeyId_(keyId);
8243
+ if (isNaN(value)) {
8244
+ return;
8245
+ }
7512
8246
 
7513
- this.adapter_.setMenuElStyle('left', left);
7514
- this.adapter_.setMenuElStyle('top', top);
7515
- this.adapter_.setMenuElStyle('transform-origin', transformOrigin);
7516
- this.adapter_.addClass(OPEN);
7517
- this.adapter_.openMenu(focusIndex);
8247
+ // Prevent page from scrolling due to key presses that would normally scroll the page
8248
+ evt.preventDefault();
8249
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].FOCUS);
8250
+ this.setValue_(value, true);
8251
+ this.adapter_.notifyChange();
8252
+ }
8253
+ }, {
8254
+ key: 'getKeyId_',
8255
+ value: function getKeyId_(kbdEvt) {
8256
+ switch (kbdEvt.key || kbdEvt.keyCode) {
8257
+ case KEY_IDS.ARROW_LEFT:
8258
+ case 37:
8259
+ return KEY_IDS.ARROW_LEFT;
8260
+ case KEY_IDS.ARROW_RIGHT:
8261
+ case 39:
8262
+ return KEY_IDS.ARROW_RIGHT;
8263
+ case KEY_IDS.ARROW_UP:
8264
+ case 38:
8265
+ return KEY_IDS.ARROW_UP;
8266
+ case KEY_IDS.ARROW_DOWN:
8267
+ case 40:
8268
+ return KEY_IDS.ARROW_DOWN;
8269
+ case KEY_IDS.HOME:
8270
+ case 36:
8271
+ return KEY_IDS.HOME;
8272
+ case KEY_IDS.END:
8273
+ case 35:
8274
+ return KEY_IDS.END;
8275
+ case KEY_IDS.PAGE_UP:
8276
+ case 33:
8277
+ return KEY_IDS.PAGE_UP;
8278
+ case KEY_IDS.PAGE_DOWN:
8279
+ case 34:
8280
+ return KEY_IDS.PAGE_DOWN;
8281
+ default:
8282
+ // Doesn't matter
8283
+ return '';
8284
+ }
8285
+ }
8286
+ }, {
8287
+ key: 'getValueForKeyId_',
8288
+ value: function getValueForKeyId_(keyId) {
8289
+ var max = this.max_,
8290
+ min = this.min_,
8291
+ step = this.step_;
8292
+
8293
+ var delta = step || (max - min) / 100;
8294
+ var valueNeedsToBeFlipped = this.adapter_.isRTL() && (keyId === KEY_IDS.ARROW_LEFT || keyId === KEY_IDS.ARROW_RIGHT);
8295
+ if (valueNeedsToBeFlipped) {
8296
+ delta = -delta;
8297
+ }
8298
+
8299
+ switch (keyId) {
8300
+ case KEY_IDS.ARROW_LEFT:
8301
+ case KEY_IDS.ARROW_DOWN:
8302
+ return this.value_ - delta;
8303
+ case KEY_IDS.ARROW_RIGHT:
8304
+ case KEY_IDS.ARROW_UP:
8305
+ return this.value_ + delta;
8306
+ case KEY_IDS.HOME:
8307
+ return this.min_;
8308
+ case KEY_IDS.END:
8309
+ return this.max_;
8310
+ case KEY_IDS.PAGE_UP:
8311
+ return this.value_ + delta * __WEBPACK_IMPORTED_MODULE_0__constants__["c" /* numbers */].PAGE_FACTOR;
8312
+ case KEY_IDS.PAGE_DOWN:
8313
+ return this.value_ - delta * __WEBPACK_IMPORTED_MODULE_0__constants__["c" /* numbers */].PAGE_FACTOR;
8314
+ default:
8315
+ return NaN;
8316
+ }
7518
8317
  }
7519
8318
  }, {
7520
- key: 'computeMenuStylesForOpenAtIndex_',
7521
- value: function computeMenuStylesForOpenAtIndex_(index) {
7522
- var innerHeight = this.adapter_.getWindowInnerHeight();
8319
+ key: 'handleFocus_',
8320
+ value: function handleFocus_() {
8321
+ if (this.preventFocusState_) {
8322
+ return;
8323
+ }
8324
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].FOCUS);
8325
+ }
8326
+ }, {
8327
+ key: 'handleBlur_',
8328
+ value: function handleBlur_() {
8329
+ this.preventFocusState_ = false;
8330
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].FOCUS);
8331
+ }
8332
+ }, {
8333
+ key: 'setValue_',
8334
+ value: function setValue_(value, shouldFireInput) {
8335
+ var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
7523
8336
 
7524
- var _adapter_$computeBoun = this.adapter_.computeBoundingRect(),
7525
- left = _adapter_$computeBoun.left,
7526
- top = _adapter_$computeBoun.top;
8337
+ if (value === this.value_ && !force) {
8338
+ return;
8339
+ }
7527
8340
 
7528
- this.adapter_.setMenuElAttr('aria-hidden', 'true');
7529
- this.adapter_.setMenuElStyle('display', 'block');
7530
- var menuHeight = this.adapter_.getMenuElOffsetHeight();
7531
- var itemOffsetTop = this.adapter_.getOffsetTopForOptionAtIndex(index);
7532
- this.adapter_.setMenuElStyle('display', '');
7533
- this.adapter_.rmMenuElAttr('aria-hidden');
8341
+ var min = this.min_,
8342
+ max = this.max_;
7534
8343
 
7535
- var adjustedTop = top - itemOffsetTop;
7536
- var adjustedHeight = menuHeight - itemOffsetTop;
7537
- var overflowsTop = adjustedTop < 0;
7538
- var overflowsBottom = adjustedTop + adjustedHeight > innerHeight;
7539
- if (overflowsTop) {
7540
- adjustedTop = 0;
7541
- } else if (overflowsBottom) {
7542
- adjustedTop = Math.max(0, adjustedTop - adjustedHeight);
8344
+ var valueSetToBoundary = value === min || value === max;
8345
+ if (this.step_ && !valueSetToBoundary) {
8346
+ value = this.quantize_(value);
8347
+ }
8348
+ if (value < min) {
8349
+ value = min;
8350
+ } else if (value > max) {
8351
+ value = max;
7543
8352
  }
8353
+ this.value_ = value;
8354
+ this.adapter_.setAttribute(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* strings */].ARIA_VALUENOW, String(this.value_));
8355
+ this.updateUIForCurrentValue_();
7544
8356
 
7545
- return {
7546
- left: left + 'px',
7547
- top: adjustedTop + 'px',
7548
- transformOrigin: 'center ' + itemOffsetTop + 'px'
7549
- };
8357
+ if (shouldFireInput) {
8358
+ this.adapter_.notifyInput();
8359
+ }
7550
8360
  }
7551
8361
  }, {
7552
- key: 'close_',
7553
- value: function close_() {
7554
- var OPEN = MDCSelectFoundation.cssClasses.OPEN;
7555
-
7556
- this.adapter_.removeClass(OPEN);
7557
- this.adapter_.focus();
8362
+ key: 'quantize_',
8363
+ value: function quantize_(value) {
8364
+ var numSteps = Math.round(value / this.step_);
8365
+ var quantizedVal = numSteps * this.step_;
8366
+ return quantizedVal;
7558
8367
  }
7559
8368
  }, {
7560
- key: 'handleDisplayViaKeyboard_',
7561
- value: function handleDisplayViaKeyboard_(evt) {
7562
- // We use a hard-coded 2 instead of Event.AT_TARGET to avoid having to reference a browser
7563
- // global.
7564
- var EVENT_PHASE_AT_TARGET = 2;
7565
- if (evt.eventPhase !== EVENT_PHASE_AT_TARGET) {
7566
- return;
7567
- }
8369
+ key: 'updateUIForCurrentValue_',
8370
+ value: function updateUIForCurrentValue_() {
8371
+ var _this5 = this;
7568
8372
 
7569
- // Prevent pressing space down from scrolling the page
7570
- var isSpaceDown = evt.type === 'keydown' && (evt.key === 'Space' || evt.keyCode === 32);
7571
- if (isSpaceDown) {
7572
- evt.preventDefault();
8373
+ var max = this.max_,
8374
+ min = this.min_,
8375
+ value = this.value_;
8376
+
8377
+ var pctComplete = (value - min) / (max - min);
8378
+ var translatePx = pctComplete * this.rect_.width;
8379
+ if (this.adapter_.isRTL()) {
8380
+ translatePx = this.rect_.width - translatePx;
7573
8381
  }
7574
8382
 
7575
- var isOpenerKey = OPENER_KEYS.some(function (_ref2) {
7576
- var key = _ref2.key,
7577
- keyCode = _ref2.keyCode,
7578
- forType = _ref2.forType;
8383
+ var transformProp = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__material_animation__["a" /* getCorrectPropertyName */])(window, 'transform');
8384
+ var transitionendEvtName = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__material_animation__["b" /* getCorrectEventName */])(window, 'transitionend');
7579
8385
 
7580
- return evt.type === forType && (evt.key === key || evt.keyCode === keyCode);
8386
+ if (this.inTransit_) {
8387
+ var onTransitionEnd = function onTransitionEnd() {
8388
+ _this5.setInTransit_(false);
8389
+ _this5.adapter_.deregisterThumbContainerInteractionHandler(transitionendEvtName, onTransitionEnd);
8390
+ };
8391
+ this.adapter_.registerThumbContainerInteractionHandler(transitionendEvtName, onTransitionEnd);
8392
+ }
8393
+
8394
+ this.updateUIFrame_ = requestAnimationFrame(function () {
8395
+ _this5.setOff_(pctComplete === 0);
8396
+ // NOTE(traviskaufman): It would be nice to use calc() here,
8397
+ // but IE cannot handle calcs in transforms correctly.
8398
+ // See: https://goo.gl/NC2itk
8399
+ // Also note that the -50% offset is used to center the slider thumb.
8400
+ _this5.adapter_.setThumbContainerStyleProperty(transformProp, 'translateX(' + translatePx + 'px) translateX(-50%)');
8401
+ _this5.adapter_.setTrackStyleProperty(transformProp, 'scaleX(' + pctComplete + ')');
7581
8402
  });
7582
- if (isOpenerKey) {
7583
- this.displayHandler_(evt);
8403
+ }
8404
+ }, {
8405
+ key: 'setOff_',
8406
+ value: function setOff_(off) {
8407
+ this.off_ = off;
8408
+ this.toggleClass_(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].OFF, this.off_);
8409
+ }
8410
+ }, {
8411
+ key: 'setActive_',
8412
+ value: function setActive_(active) {
8413
+ this.active_ = active;
8414
+ this.toggleClass_(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].ACTIVE, this.active_);
8415
+ }
8416
+ }, {
8417
+ key: 'setInTransit_',
8418
+ value: function setInTransit_(inTransit) {
8419
+ this.inTransit_ = inTransit;
8420
+ this.toggleClass_(__WEBPACK_IMPORTED_MODULE_0__constants__["b" /* cssClasses */].IN_TRANSIT, this.inTransit_);
8421
+ }
8422
+ }, {
8423
+ key: 'toggleClass_',
8424
+ value: function toggleClass_(className, shouldBePresent) {
8425
+ if (shouldBePresent) {
8426
+ this.adapter_.addClass(className);
8427
+ } else {
8428
+ this.adapter_.removeClass(className);
7584
8429
  }
7585
8430
  }
7586
8431
  }]);
7587
8432
 
7588
- return MDCSelectFoundation;
7589
- }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
8433
+ return MDCSliderFoundation;
8434
+ }(__WEBPACK_IMPORTED_MODULE_2__material_base_foundation__["a" /* default */]);
7590
8435
 
7591
- /* harmony default export */ __webpack_exports__["a"] = (MDCSelectFoundation);
8436
+ /* harmony default export */ __webpack_exports__["a"] = (MDCSliderFoundation);
7592
8437
 
7593
8438
  /***/ }),
7594
- /* 58 */
8439
+ /* 61 */
7595
8440
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7596
8441
 
7597
8442
  "use strict";
@@ -7634,12 +8479,12 @@ var numbers = {
7634
8479
  };
7635
8480
 
7636
8481
  /***/ }),
7637
- /* 59 */
8482
+ /* 62 */
7638
8483
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7639
8484
 
7640
8485
  "use strict";
7641
8486
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7642
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(58);
8487
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(61);
7643
8488
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
7644
8489
 
7645
8490
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -7860,7 +8705,7 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
7860
8705
  /* harmony default export */ __webpack_exports__["a"] = (MDCSnackbarFoundation);
7861
8706
 
7862
8707
  /***/ }),
7863
- /* 60 */
8708
+ /* 63 */
7864
8709
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7865
8710
 
7866
8711
  "use strict";
@@ -7898,12 +8743,12 @@ var strings = {
7898
8743
  };
7899
8744
 
7900
8745
  /***/ }),
7901
- /* 61 */
8746
+ /* 64 */
7902
8747
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7903
8748
 
7904
8749
  "use strict";
7905
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
7906
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(60);
8750
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
8751
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(63);
7907
8752
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
7908
8753
 
7909
8754
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -8251,15 +9096,15 @@ var MDCTabBarScrollerFoundation = function (_MDCFoundation) {
8251
9096
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarScrollerFoundation);
8252
9097
 
8253
9098
  /***/ }),
8254
- /* 62 */
9099
+ /* 65 */
8255
9100
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8256
9101
 
8257
9102
  "use strict";
8258
9103
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBarScroller; });
8259
9104
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_animation__ = __webpack_require__(3);
8260
9105
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_base_component__ = __webpack_require__(4);
8261
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar__ = __webpack_require__(10);
8262
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(61);
9106
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar__ = __webpack_require__(11);
9107
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(64);
8263
9108
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
8264
9109
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8265
9110
 
@@ -8422,7 +9267,7 @@ var MDCTabBarScroller = function (_MDCComponent) {
8422
9267
  }(__WEBPACK_IMPORTED_MODULE_1__material_base_component__["a" /* default */]);
8423
9268
 
8424
9269
  /***/ }),
8425
- /* 63 */
9270
+ /* 66 */
8426
9271
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8427
9272
 
8428
9273
  "use strict";
@@ -8455,13 +9300,13 @@ var strings = {
8455
9300
  };
8456
9301
 
8457
9302
  /***/ }),
8458
- /* 64 */
9303
+ /* 67 */
8459
9304
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8460
9305
 
8461
9306
  "use strict";
8462
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
9307
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
8463
9308
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
8464
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(63);
9309
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(66);
8465
9310
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
8466
9311
 
8467
9312
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -8701,12 +9546,12 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
8701
9546
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarFoundation);
8702
9547
 
8703
9548
  /***/ }),
8704
- /* 65 */
9549
+ /* 68 */
8705
9550
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8706
9551
 
8707
9552
  "use strict";
8708
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
8709
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(11);
9553
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
9554
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(12);
8710
9555
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
8711
9556
 
8712
9557
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -8858,7 +9703,7 @@ var MDCTabFoundation = function (_MDCFoundation) {
8858
9703
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabFoundation);
8859
9704
 
8860
9705
  /***/ }),
8861
- /* 66 */
9706
+ /* 69 */
8862
9707
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8863
9708
 
8864
9709
  "use strict";
@@ -8898,12 +9743,12 @@ var cssClasses = {
8898
9743
  };
8899
9744
 
8900
9745
  /***/ }),
8901
- /* 67 */
9746
+ /* 70 */
8902
9747
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8903
9748
 
8904
9749
  "use strict";
8905
9750
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
8906
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(66);
9751
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(69);
8907
9752
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
8908
9753
 
8909
9754
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -9145,7 +9990,7 @@ var MDCTextfieldFoundation = function (_MDCFoundation) {
9145
9990
  /* harmony default export */ __webpack_exports__["a"] = (MDCTextfieldFoundation);
9146
9991
 
9147
9992
  /***/ }),
9148
- /* 68 */
9993
+ /* 71 */
9149
9994
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9150
9995
 
9151
9996
  "use strict";
@@ -9180,7 +10025,7 @@ var cssClasses = {
9180
10025
 
9181
10026
  var strings = {
9182
10027
  TITLE_SELECTOR: '.mdc-toolbar__title',
9183
- FLEXIBLE_ROW_SELECTOR: '.mdc-toolbar__row:first-child',
10028
+ FIRST_ROW_SELECTOR: '.mdc-toolbar__row:first-child',
9184
10029
  CHANGE_EVENT: 'MDCToolbar:change'
9185
10030
  };
9186
10031
 
@@ -9189,16 +10034,16 @@ var numbers = {
9189
10034
  MIN_TITLE_SIZE: 1.25,
9190
10035
  TOOLBAR_ROW_HEIGHT: 64,
9191
10036
  TOOLBAR_ROW_MOBILE_HEIGHT: 56,
9192
- TOOLBAR_MOBILE_BREAKPOINT: 599
10037
+ TOOLBAR_MOBILE_BREAKPOINT: 600
9193
10038
  };
9194
10039
 
9195
10040
  /***/ }),
9196
- /* 69 */
10041
+ /* 72 */
9197
10042
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9198
10043
 
9199
10044
  "use strict";
9200
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
9201
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(68);
10045
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
10046
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(71);
9202
10047
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
9203
10048
 
9204
10049
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -9271,7 +10116,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9271
10116
  return (/* number */0
9272
10117
  );
9273
10118
  },
9274
- getFlexibleRowElementOffsetHeight: function getFlexibleRowElementOffsetHeight() {
10119
+ getFirstRowElementOffsetHeight: function getFirstRowElementOffsetHeight() {
9275
10120
  return (/* number */0
9276
10121
  );
9277
10122
  },
@@ -9305,12 +10150,12 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9305
10150
  toolbarRatio: 0, // The ratio of toolbar height to row height
9306
10151
  flexibleExpansionRatio: 0, // The ratio of flexible space height to row height
9307
10152
  maxTranslateYRatio: 0, // The ratio of max toolbar move up distance to row height
9308
- scrollThesholdRatio: 0, // The ratio of max scrollTop that we should listen to to row height
10153
+ scrollThresholdRatio: 0, // The ratio of max scrollTop that we should listen to to row height
9309
10154
  // Derived Heights based on the above key ratios.
9310
10155
  toolbarHeight: 0,
9311
10156
  flexibleExpansionHeight: 0, // Flexible row minus toolbar height (derived)
9312
10157
  maxTranslateYDistance: 0, // When toolbar only fix last row (derived)
9313
- scrollTheshold: 0
10158
+ scrollThreshold: 0
9314
10159
  };
9315
10160
  // Toolbar fixed behavior
9316
10161
  // If toolbar is fixed
@@ -9378,7 +10223,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9378
10223
  this.calculations_.toolbarHeight = this.calculations_.toolbarRatio * this.calculations_.toolbarRowHeight;
9379
10224
  this.calculations_.flexibleExpansionHeight = this.calculations_.flexibleExpansionRatio * this.calculations_.toolbarRowHeight;
9380
10225
  this.calculations_.maxTranslateYDistance = this.calculations_.maxTranslateYRatio * this.calculations_.toolbarRowHeight;
9381
- this.calculations_.scrollTheshold = this.calculations_.scrollThesholdRatio * this.calculations_.toolbarRowHeight;
10226
+ this.calculations_.scrollThreshold = this.calculations_.scrollThresholdRatio * this.calculations_.toolbarRowHeight;
9382
10227
  this.updateAdjustElementStyles();
9383
10228
  this.updateToolbarStyles_();
9384
10229
  }
@@ -9391,13 +10236,14 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9391
10236
  cancelAnimationFrame(this.scrollFrame_);
9392
10237
  this.scrollFrame_ = requestAnimationFrame(function () {
9393
10238
  var scrollTop = _this3.adapter_.getViewportScrollY();
9394
- var hasScrolledOutOfTheshold = _this3.scrolledOutOfTheshold_(scrollTop);
10239
+ var hasScrolledOutOfThreshold = _this3.scrolledOutOfThreshold_(scrollTop);
9395
10240
 
9396
- if (hasScrolledOutOfTheshold && _this3.executedLastChange_) {
10241
+ if (hasScrolledOutOfThreshold && _this3.executedLastChange_) {
9397
10242
  return;
9398
10243
  }
9399
10244
 
9400
10245
  var flexibleExpansionRatio = _this3.getFlexibleExpansionRatio_(scrollTop);
10246
+
9401
10247
  _this3.updateToolbarFlexibleState_(flexibleExpansionRatio);
9402
10248
  if (_this3.fixedLastrow_) {
9403
10249
  _this3.updateToolbarFixedState_(scrollTop);
@@ -9405,30 +10251,30 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9405
10251
  if (_this3.hasFlexibleRow_) {
9406
10252
  _this3.updateFlexibleRowElementStyles_(flexibleExpansionRatio);
9407
10253
  }
9408
- _this3.executedLastChange_ = hasScrolledOutOfTheshold;
10254
+ _this3.executedLastChange_ = hasScrolledOutOfThreshold;
9409
10255
  _this3.adapter_.notifyChange({ flexibleExpansionRatio: flexibleExpansionRatio });
9410
10256
  });
9411
10257
  }
9412
10258
  }, {
9413
- key: 'scrolledOutOfTheshold_',
9414
- value: function scrolledOutOfTheshold_(scrollTop) {
9415
- return scrollTop > this.calculations_.scrollTheshold;
10259
+ key: 'scrolledOutOfThreshold_',
10260
+ value: function scrolledOutOfThreshold_(scrollTop) {
10261
+ return scrollTop > this.calculations_.scrollThreshold;
9416
10262
  }
9417
10263
  }, {
9418
10264
  key: 'initKeyRatio_',
9419
10265
  value: function initKeyRatio_() {
9420
10266
  var toolbarRowHeight = this.getRowHeight_();
9421
- var flexibleRowMaxRatio = this.adapter_.getFlexibleRowElementOffsetHeight() / toolbarRowHeight;
10267
+ var firstRowMaxRatio = this.adapter_.getFirstRowElementOffsetHeight() / toolbarRowHeight;
9422
10268
  this.calculations_.toolbarRatio = this.adapter_.getOffsetHeight() / toolbarRowHeight;
9423
- this.calculations_.flexibleExpansionRatio = flexibleRowMaxRatio - 1;
9424
- this.calculations_.maxTranslateYRatio = this.fixedLastrow_ ? this.calculations_.toolbarRatio - flexibleRowMaxRatio : 0;
9425
- this.calculations_.scrollThesholdRatio = (this.fixedLastrow_ ? this.calculations_.toolbarRatio : flexibleRowMaxRatio) - 1;
10269
+ this.calculations_.flexibleExpansionRatio = firstRowMaxRatio - 1;
10270
+ this.calculations_.maxTranslateYRatio = this.fixedLastrow_ ? this.calculations_.toolbarRatio - firstRowMaxRatio : 0;
10271
+ this.calculations_.scrollThresholdRatio = (this.fixedLastrow_ ? this.calculations_.toolbarRatio : firstRowMaxRatio) - 1;
9426
10272
  }
9427
10273
  }, {
9428
10274
  key: 'getRowHeight_',
9429
10275
  value: function getRowHeight_() {
9430
10276
  var breakpoint = MDCToolbarFoundation.numbers.TOOLBAR_MOBILE_BREAKPOINT;
9431
- return this.adapter_.getViewportWidth() <= breakpoint ? MDCToolbarFoundation.numbers.TOOLBAR_ROW_MOBILE_HEIGHT : MDCToolbarFoundation.numbers.TOOLBAR_ROW_HEIGHT;
10277
+ return this.adapter_.getViewportWidth() < breakpoint ? MDCToolbarFoundation.numbers.TOOLBAR_ROW_MOBILE_HEIGHT : MDCToolbarFoundation.numbers.TOOLBAR_ROW_HEIGHT;
9432
10278
  }
9433
10279
  }, {
9434
10280
  key: 'updateToolbarFlexibleState_',
@@ -9446,6 +10292,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9446
10292
  value: function updateToolbarFixedState_(scrollTop) {
9447
10293
  var translateDistance = Math.max(0, Math.min(scrollTop - this.calculations_.flexibleExpansionHeight, this.calculations_.maxTranslateYDistance));
9448
10294
  this.adapter_.setStyle('transform', 'translateY(' + -translateDistance + 'px)');
10295
+
9449
10296
  if (translateDistance === this.calculations_.maxTranslateYDistance) {
9450
10297
  this.adapter_.addClass(MDCToolbarFoundation.cssClasses.FIXED_AT_LAST_ROW);
9451
10298
  } else {
@@ -9469,10 +10316,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9469
10316
  var maxTitleSize = MDCToolbarFoundation.numbers.MAX_TITLE_SIZE;
9470
10317
  var minTitleSize = MDCToolbarFoundation.numbers.MIN_TITLE_SIZE;
9471
10318
  var currentTitleSize = (maxTitleSize - minTitleSize) * flexibleExpansionRatio + minTitleSize;
9472
- if (this.fixed_) {
9473
- var height = this.calculations_.flexibleExpansionHeight * flexibleExpansionRatio;
9474
- this.adapter_.setStyleForTitleElement('transform', 'translateY(' + height + 'px)');
9475
- }
10319
+
9476
10320
  this.adapter_.setStyleForTitleElement('font-size', currentTitleSize + 'rem');
9477
10321
  }
9478
10322
  }]);
@@ -9483,7 +10327,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
9483
10327
  /* harmony default export */ __webpack_exports__["a"] = (MDCToolbarFoundation);
9484
10328
 
9485
10329
  /***/ }),
9486
- /* 70 */
10330
+ /* 73 */
9487
10331
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9488
10332
 
9489
10333
  "use strict";
@@ -9527,10 +10371,10 @@ function applyPassive() {
9527
10371
  }
9528
10372
 
9529
10373
  /***/ }),
9530
- /* 71 */
10374
+ /* 74 */
9531
10375
  /***/ (function(module, exports, __webpack_require__) {
9532
10376
 
9533
- var tabbable = __webpack_require__(72);
10377
+ var tabbable = __webpack_require__(75);
9534
10378
 
9535
10379
  var listeningFocusTrap = null;
9536
10380
 
@@ -9768,7 +10612,7 @@ module.exports = focusTrap;
9768
10612
 
9769
10613
 
9770
10614
  /***/ }),
9771
- /* 72 */
10615
+ /* 75 */
9772
10616
  /***/ (function(module, exports) {
9773
10617
 
9774
10618
  module.exports = function(el) {