material_components_web-sass 0.7.0 → 0.8.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: 502052d54dff0690a594b05c4f1040a90ea239ff
4
- data.tar.gz: ae0edb7c6bc095701f004093c18eacf57d526fbd
3
+ metadata.gz: c3b476f32c246b494cef0f517373c09ac905319c
4
+ data.tar.gz: ead66d23500779885a624dec7ae65fd79db17a4d
5
5
  SHA512:
6
- metadata.gz: 1c445e3a721376c4cb3305a1ff6b4851e1e04a4f038cc22cfd9cab91083580f3368c45a11cef5d7cd3a270fc557e58820d004c4bc97f7afa920c8a1b9e4361fe
7
- data.tar.gz: 215b21fe42ba74c2fb3c283e8b16579f33ac98477a804366875c0f5a6585e7b5c90a7c9fb1beccc7ccbe7e64ff4232d938a481f48fac5da8e9d29f879e22cbe3
6
+ metadata.gz: b4ad1f27694cccbf9597fe831429830e5b72a7b627edd6714a0bee85de544ed852552275565522dd7d070e3d48c2bc779ef07498e6705c5d393bafbc76b3afd9
7
+ data.tar.gz: 988e2804e837a7a72edbabe02b84c39b63d320c2d43c4bcc7d81235049b87973585b8c541c155de4f7df79b3c0850ae946f819d4070770c7175cfc987fd97fd3
data/.travis.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.2.6
5
- - 2.3.3
6
- - 2.4.0
4
+ - 2.2.7
5
+ - 2.3.4
6
+ - 2.4.1
7
7
  before_install: gem install bundler
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 0.8.0 (2017-04-03)
2
+
3
+ - Update assets to match upstream version
4
+
5
+ Library version:
6
+
7
+ - Material Components for the web v0.8.0
8
+ - Material Icons v3.0.0
9
+
1
10
  ## 0.7.0 (2017-03-21)
2
11
 
3
12
  - Update assets to match upstream version
@@ -1,5 +1,5 @@
1
1
  module MaterialComponentsWeb
2
2
  module Sass
3
- VERSION = '0.7.0'.freeze
3
+ VERSION = '0.8.0'.freeze
4
4
  end
5
5
  end
@@ -89,7 +89,7 @@ return /******/ (function(modules) { // webpackBootstrap
89
89
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
90
90
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(5);
91
91
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__foundation__["a"]; });
92
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__component__ = __webpack_require__(18);
92
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__component__ = __webpack_require__(19);
93
93
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCComponent", function() { return __WEBPACK_IMPORTED_MODULE_1__component__["a"]; });
94
94
  /**
95
95
  * Copyright 2016 Google Inc.
@@ -118,7 +118,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
118
118
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
119
119
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
120
120
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(38);
121
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(3);
121
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(2);
122
122
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRippleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
123
123
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRipple", function() { return MDCRipple; });
124
124
  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; }; }();
@@ -262,6 +262,97 @@ var MDCRipple = function (_MDCComponent) {
262
262
  /* 2 */
263
263
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
264
264
 
265
+ "use strict";
266
+ /* harmony export (immutable) */ __webpack_exports__["b"] = supportsCssVariables;
267
+ /* harmony export (immutable) */ __webpack_exports__["a"] = getMatchesProperty;
268
+ /* harmony export (immutable) */ __webpack_exports__["c"] = getNormalizedEventCoords;
269
+ /**
270
+ * Copyright 2016 Google Inc. All Rights Reserved.
271
+ *
272
+ * Licensed under the Apache License, Version 2.0 (the "License");
273
+ * you may not use this file except in compliance with the License.
274
+ * You may obtain a copy of the License at
275
+ *
276
+ * http://www.apache.org/licenses/LICENSE-2.0
277
+ *
278
+ * Unless required by applicable law or agreed to in writing, software
279
+ * distributed under the License is distributed on an "AS IS" BASIS,
280
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
281
+ * See the License for the specific language governing permissions and
282
+ * limitations under the License.
283
+ */
284
+
285
+ function supportsCssVariables(windowObj) {
286
+ var supportsFunctionPresent = windowObj.CSS && typeof windowObj.CSS.supports === 'function';
287
+ if (!supportsFunctionPresent) {
288
+ return;
289
+ }
290
+
291
+ var explicitlySupportsCssVars = windowObj.CSS.supports('--css-vars', 'yes');
292
+ // See: https://bugs.webkit.org/show_bug.cgi?id=154669
293
+ // See: README section on Safari
294
+ var weAreFeatureDetectingSafari10plus = windowObj.CSS.supports('(--css-vars: yes)') && windowObj.CSS.supports('color', '#00000000');
295
+ return explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;
296
+ }
297
+
298
+ function getMatchesProperty(HTMLElementPrototype) {
299
+ return ['webkitMatchesSelector', 'msMatchesSelector', 'matches'].filter(function (p) {
300
+ return p in HTMLElementPrototype;
301
+ }).pop();
302
+ }
303
+
304
+ function getNormalizedEventCoords(ev, pageOffset, clientRect) {
305
+ var x = pageOffset.x,
306
+ y = pageOffset.y;
307
+
308
+ var documentX = x + clientRect.left;
309
+ var documentY = y + clientRect.top;
310
+
311
+ var normalizedX = void 0;
312
+ var normalizedY = void 0;
313
+ // Determine touch point relative to the ripple container.
314
+ if (ev.type === 'touchstart') {
315
+ normalizedX = ev.changedTouches[0].pageX - documentX;
316
+ normalizedY = ev.changedTouches[0].pageY - documentY;
317
+ } else {
318
+ normalizedX = ev.pageX - documentX;
319
+ normalizedY = ev.pageY - documentY;
320
+ }
321
+
322
+ return { x: normalizedX, y: normalizedY };
323
+ }
324
+
325
+ /***/ }),
326
+ /* 3 */
327
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
328
+
329
+ "use strict";
330
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
331
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(35);
332
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["a"]; });
333
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["b"]; });
334
+ /**
335
+ * Copyright 2016 Google Inc. All Rights Reserved.
336
+ *
337
+ * Licensed under the Apache License, Version 2.0 (the "License");
338
+ * you may not use this file except in compliance with the License.
339
+ * You may obtain a copy of the License at
340
+ *
341
+ * http://www.apache.org/licenses/LICENSE-2.0
342
+ *
343
+ * Unless required by applicable law or agreed to in writing, software
344
+ * distributed under the License is distributed on an "AS IS" BASIS,
345
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
346
+ * See the License for the specific language governing permissions and
347
+ * limitations under the License.
348
+ */
349
+
350
+
351
+
352
+ /***/ }),
353
+ /* 4 */
354
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
355
+
265
356
  "use strict";
266
357
  /* harmony export (immutable) */ __webpack_exports__["a"] = getCorrectEventName;
267
358
  /* unused harmony export getCorrectPropertyName */
@@ -386,113 +477,6 @@ function getCorrectPropertyName(windowObj, eventType) {
386
477
  return getAnimationName(windowObj, eventType);
387
478
  }
388
479
 
389
- /***/ }),
390
- /* 3 */
391
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
392
-
393
- "use strict";
394
- /* harmony export (immutable) */ __webpack_exports__["b"] = supportsCssVariables;
395
- /* harmony export (immutable) */ __webpack_exports__["a"] = getMatchesProperty;
396
- /* harmony export (immutable) */ __webpack_exports__["d"] = animateWithClass;
397
- /* harmony export (immutable) */ __webpack_exports__["c"] = getNormalizedEventCoords;
398
- /**
399
- * Copyright 2016 Google Inc. All Rights Reserved.
400
- *
401
- * Licensed under the Apache License, Version 2.0 (the "License");
402
- * you may not use this file except in compliance with the License.
403
- * You may obtain a copy of the License at
404
- *
405
- * http://www.apache.org/licenses/LICENSE-2.0
406
- *
407
- * Unless required by applicable law or agreed to in writing, software
408
- * distributed under the License is distributed on an "AS IS" BASIS,
409
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
410
- * See the License for the specific language governing permissions and
411
- * limitations under the License.
412
- */
413
-
414
- function supportsCssVariables(windowObj) {
415
- var supportsFunctionPresent = windowObj.CSS && typeof windowObj.CSS.supports === 'function';
416
- if (!supportsFunctionPresent) {
417
- return;
418
- }
419
-
420
- var explicitlySupportsCssVars = windowObj.CSS.supports('--css-vars', 'yes');
421
- // See: https://bugs.webkit.org/show_bug.cgi?id=154669
422
- // See: README section on Safari
423
- var weAreFeatureDetectingSafari10plus = windowObj.CSS.supports('(--css-vars: yes)') && windowObj.CSS.supports('color', '#00000000');
424
- return explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;
425
- }
426
-
427
- function getMatchesProperty(HTMLElementPrototype) {
428
- return ['webkitMatchesSelector', 'msMatchesSelector', 'matches'].filter(function (p) {
429
- return p in HTMLElementPrototype;
430
- }).pop();
431
- }
432
-
433
- function animateWithClass(rippleAdapter, cls, endEvent) {
434
- var cancelled = false;
435
- var cancel = function cancel() {
436
- if (cancelled) {
437
- return;
438
- }
439
- cancelled = true;
440
- rippleAdapter.removeClass(cls);
441
- rippleAdapter.deregisterInteractionHandler(endEvent, cancel);
442
- };
443
- rippleAdapter.registerInteractionHandler(endEvent, cancel);
444
- rippleAdapter.addClass(cls);
445
- return cancel;
446
- }
447
-
448
- function getNormalizedEventCoords(ev, pageOffset, clientRect) {
449
- var x = pageOffset.x,
450
- y = pageOffset.y;
451
-
452
- var documentX = x + clientRect.left;
453
- var documentY = y + clientRect.top;
454
-
455
- var normalizedX = void 0;
456
- var normalizedY = void 0;
457
- // Determine touch point relative to the ripple container.
458
- if (ev.type === 'touchend') {
459
- normalizedX = ev.changedTouches[0].pageX - documentX;
460
- normalizedY = ev.changedTouches[0].pageY - documentY;
461
- } else {
462
- normalizedX = ev.pageX - documentX;
463
- normalizedY = ev.pageY - documentY;
464
- }
465
-
466
- return { x: normalizedX, y: normalizedY };
467
- }
468
-
469
- /***/ }),
470
- /* 4 */
471
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
472
-
473
- "use strict";
474
- Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
475
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(35);
476
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["a"]; });
477
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["b"]; });
478
- /**
479
- * Copyright 2016 Google Inc. All Rights Reserved.
480
- *
481
- * Licensed under the Apache License, Version 2.0 (the "License");
482
- * you may not use this file except in compliance with the License.
483
- * You may obtain a copy of the License at
484
- *
485
- * http://www.apache.org/licenses/LICENSE-2.0
486
- *
487
- * Unless required by applicable law or agreed to in writing, software
488
- * distributed under the License is distributed on an "AS IS" BASIS,
489
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
490
- * See the License for the specific language governing permissions and
491
- * limitations under the License.
492
- */
493
-
494
-
495
-
496
480
  /***/ }),
497
481
  /* 5 */
498
482
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -576,7 +560,126 @@ var MDCFoundation = function () {
576
560
  /* harmony default export */ __webpack_exports__["a"] = MDCFoundation;
577
561
 
578
562
  /***/ }),
579
- /* 6 */
563
+ /* 6 */
564
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
565
+
566
+ "use strict";
567
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
568
+ /* harmony export (immutable) */ __webpack_exports__["remapEvent"] = remapEvent;
569
+ /* harmony export (immutable) */ __webpack_exports__["getTransformPropertyName"] = getTransformPropertyName;
570
+ /* harmony export (immutable) */ __webpack_exports__["supportsCssCustomProperties"] = supportsCssCustomProperties;
571
+ /* harmony export (immutable) */ __webpack_exports__["applyPassive"] = applyPassive;
572
+ /* harmony export (immutable) */ __webpack_exports__["saveElementTabState"] = saveElementTabState;
573
+ /* harmony export (immutable) */ __webpack_exports__["restoreElementTabState"] = restoreElementTabState;
574
+ /**
575
+ * Copyright 2016 Google Inc. All Rights Reserved.
576
+ *
577
+ * Licensed under the Apache License, Version 2.0 (the "License");
578
+ * you may not use this file except in compliance with the License.
579
+ * You may obtain a copy of the License at
580
+ *
581
+ * http://www.apache.org/licenses/LICENSE-2.0
582
+ *
583
+ * Unless required by applicable law or agreed to in writing, software
584
+ * distributed under the License is distributed on an "AS IS" BASIS,
585
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
586
+ * See the License for the specific language governing permissions and
587
+ * limitations under the License.
588
+ */
589
+
590
+ var TAB_DATA = 'data-mdc-tabindex';
591
+ var TAB_DATA_HANDLED = 'data-mdc-tabindex-handled';
592
+
593
+ var storedTransformPropertyName_ = void 0;
594
+ var supportsPassive_ = void 0;
595
+
596
+ // Remap touch events to pointer events, if the browser doesn't support touch events.
597
+ function remapEvent(eventName) {
598
+ var globalObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
599
+
600
+ if (!('ontouchstart' in globalObj.document)) {
601
+ switch (eventName) {
602
+ case 'touchstart':
603
+ return 'pointerdown';
604
+ case 'touchmove':
605
+ return 'pointermove';
606
+ case 'touchend':
607
+ return 'pointerup';
608
+ default:
609
+ return eventName;
610
+ }
611
+ }
612
+
613
+ return eventName;
614
+ }
615
+
616
+ // Choose the correct transform property to use on the current browser.
617
+ function getTransformPropertyName() {
618
+ var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
619
+ var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
620
+
621
+ if (storedTransformPropertyName_ === undefined || forceRefresh) {
622
+ var el = globalObj.document.createElement('div');
623
+ var transformPropertyName = 'transform' in el.style ? 'transform' : '-webkit-transform';
624
+ storedTransformPropertyName_ = transformPropertyName;
625
+ }
626
+
627
+ return storedTransformPropertyName_;
628
+ }
629
+
630
+ // Determine whether the current browser supports CSS properties.
631
+ function supportsCssCustomProperties() {
632
+ var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
633
+
634
+ if ('CSS' in globalObj) {
635
+ return globalObj.CSS.supports('(--color: red)');
636
+ }
637
+ return false;
638
+ }
639
+
640
+ // Determine whether the current browser supports passive event listeners, and if so, use them.
641
+ function applyPassive() {
642
+ var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
643
+ var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
644
+
645
+ if (supportsPassive_ === undefined || forceRefresh) {
646
+ var isSupported = false;
647
+ try {
648
+ globalObj.document.addEventListener('test', null, { get passive() {
649
+ isSupported = true;
650
+ } });
651
+ } catch (e) {}
652
+
653
+ supportsPassive_ = isSupported;
654
+ }
655
+
656
+ return supportsPassive_ ? { passive: true } : false;
657
+ }
658
+
659
+ // Save the tab state for an element.
660
+ function saveElementTabState(el) {
661
+ if (el.hasAttribute('tabindex')) {
662
+ el.setAttribute(TAB_DATA, el.getAttribute('tabindex'));
663
+ }
664
+ el.setAttribute(TAB_DATA_HANDLED, true);
665
+ }
666
+
667
+ // Restore the tab state for an element, if it was saved.
668
+ function restoreElementTabState(el) {
669
+ // Only modify elements we've already handled, in case anything was dynamically added since we saved state.
670
+ if (el.hasAttribute(TAB_DATA_HANDLED)) {
671
+ if (el.hasAttribute(TAB_DATA)) {
672
+ el.setAttribute('tabindex', el.getAttribute(TAB_DATA));
673
+ el.removeAttribute(TAB_DATA);
674
+ } else {
675
+ el.removeAttribute('tabindex');
676
+ }
677
+ el.removeAttribute(TAB_DATA_HANDLED);
678
+ }
679
+ }
680
+
681
+ /***/ }),
682
+ /* 7 */
580
683
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
581
684
 
582
685
  "use strict";
@@ -710,7 +813,7 @@ function solvePositionFromXValue_(xVal, x1, x2) {
710
813
  }
711
814
 
712
815
  /***/ }),
713
- /* 7 */
816
+ /* 8 */
714
817
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
715
818
 
716
819
  "use strict";
@@ -791,16 +894,16 @@ mdcAutoInit.deregisterAll = function () {
791
894
  };
792
895
 
793
896
  /***/ }),
794
- /* 8 */
897
+ /* 9 */
795
898
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
796
899
 
797
900
  "use strict";
798
901
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
799
902
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
800
903
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
801
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(3);
802
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(2);
803
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(20);
904
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(2);
905
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(4);
906
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(21);
804
907
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckboxFoundation", function() { return __WEBPACK_IMPORTED_MODULE_4__foundation__["a"]; });
805
908
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckbox", function() { return MDCCheckbox; });
806
909
  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; };
@@ -986,15 +1089,15 @@ var MDCCheckbox = function (_MDCComponent) {
986
1089
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
987
1090
 
988
1091
  /***/ }),
989
- /* 9 */
1092
+ /* 10 */
990
1093
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
991
1094
 
992
1095
  "use strict";
993
1096
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
994
1097
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
995
1098
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
996
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(22);
997
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(23);
1099
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(23);
1100
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(24);
998
1101
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialogFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
999
1102
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_3__util__; });
1000
1103
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialog", function() { return MDCDialog; });
@@ -1189,14 +1292,16 @@ var MDCDialog = function (_MDCComponent) {
1189
1292
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1190
1293
 
1191
1294
  /***/ }),
1192
- /* 10 */
1295
+ /* 11 */
1193
1296
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1194
1297
 
1195
1298
  "use strict";
1196
1299
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1197
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__temporary__ = __webpack_require__(26);
1198
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawer", function() { return __WEBPACK_IMPORTED_MODULE_0__temporary__["a"]; });
1199
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__temporary__["b"]; });
1300
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(6);
1301
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(27);
1302
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawer", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["a"]; });
1303
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["b"]; });
1304
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_0__util__; });
1200
1305
  /**
1201
1306
  * Copyright 2016 Google Inc. All Rights Reserved.
1202
1307
  *
@@ -1215,8 +1320,10 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1215
1320
 
1216
1321
 
1217
1322
 
1323
+
1324
+
1218
1325
  /***/ }),
1219
- /* 11 */
1326
+ /* 12 */
1220
1327
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1221
1328
 
1222
1329
  "use strict";
@@ -1311,7 +1418,7 @@ var MDCFormField = function (_MDCComponent) {
1311
1418
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1312
1419
 
1313
1420
  /***/ }),
1314
- /* 12 */
1421
+ /* 13 */
1315
1422
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1316
1423
 
1317
1424
  "use strict";
@@ -1393,7 +1500,7 @@ var MDCGridList = function (_MDCComponent) {
1393
1500
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1394
1501
 
1395
1502
  /***/ }),
1396
- /* 13 */
1503
+ /* 14 */
1397
1504
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1398
1505
 
1399
1506
  "use strict";
@@ -1583,7 +1690,7 @@ var MDCIconToggle = function (_MDCComponent) {
1583
1690
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1584
1691
 
1585
1692
  /***/ }),
1586
- /* 14 */
1693
+ /* 15 */
1587
1694
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1588
1695
 
1589
1696
  "use strict";
@@ -1747,13 +1854,13 @@ var MDCRadio = function (_MDCComponent) {
1747
1854
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1748
1855
 
1749
1856
  /***/ }),
1750
- /* 15 */
1857
+ /* 16 */
1751
1858
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1752
1859
 
1753
1860
  "use strict";
1754
1861
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1755
1862
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1756
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(4);
1863
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(3);
1757
1864
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(39);
1758
1865
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelectFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1759
1866
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelect", function() { return MDCSelect; });
@@ -1977,14 +2084,14 @@ var MDCSelect = function (_MDCComponent) {
1977
2084
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1978
2085
 
1979
2086
  /***/ }),
1980
- /* 16 */
2087
+ /* 17 */
1981
2088
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1982
2089
 
1983
2090
  "use strict";
1984
2091
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1985
2092
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1986
2093
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(41);
1987
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(2);
2094
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(4);
1988
2095
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
1989
2096
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbar", function() { return MDCSnackbar; });
1990
2097
  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; }; }();
@@ -2098,7 +2205,7 @@ var MDCSnackbar = function (_MDCComponent) {
2098
2205
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2099
2206
 
2100
2207
  /***/ }),
2101
- /* 17 */
2208
+ /* 18 */
2102
2209
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2103
2210
 
2104
2211
  "use strict";
@@ -2292,7 +2399,7 @@ var MDCTextfield = function (_MDCComponent) {
2292
2399
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2293
2400
 
2294
2401
  /***/ }),
2295
- /* 18 */
2402
+ /* 19 */
2296
2403
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2297
2404
 
2298
2405
  "use strict";
@@ -2422,7 +2529,7 @@ var MDCComponent = function () {
2422
2529
  /* harmony default export */ __webpack_exports__["a"] = MDCComponent;
2423
2530
 
2424
2531
  /***/ }),
2425
- /* 19 */
2532
+ /* 20 */
2426
2533
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2427
2534
 
2428
2535
  "use strict";
@@ -2473,12 +2580,12 @@ var numbers = {
2473
2580
  };
2474
2581
 
2475
2582
  /***/ }),
2476
- /* 20 */
2583
+ /* 21 */
2477
2584
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2478
2585
 
2479
2586
  "use strict";
2480
2587
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2481
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(19);
2588
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(20);
2482
2589
  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; };
2483
2590
 
2484
2591
  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; }; }();
@@ -2743,7 +2850,7 @@ function validDescriptor(inputPropDesc) {
2743
2850
  }
2744
2851
 
2745
2852
  /***/ }),
2746
- /* 21 */
2853
+ /* 22 */
2747
2854
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2748
2855
 
2749
2856
  "use strict";
@@ -2782,12 +2889,12 @@ var strings = {
2782
2889
  };
2783
2890
 
2784
2891
  /***/ }),
2785
- /* 22 */
2892
+ /* 23 */
2786
2893
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2787
2894
 
2788
2895
  "use strict";
2789
2896
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2790
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(21);
2897
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(22);
2791
2898
  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; };
2792
2899
 
2793
2900
  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; }; }();
@@ -3036,7 +3143,7 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3036
3143
  /* harmony default export */ __webpack_exports__["a"] = MDCDialogFoundation;
3037
3144
 
3038
3145
  /***/ }),
3039
- /* 23 */
3146
+ /* 24 */
3040
3147
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3041
3148
 
3042
3149
  "use strict";
@@ -3104,7 +3211,7 @@ function restoreElementTabState(el) {
3104
3211
  }
3105
3212
 
3106
3213
  /***/ }),
3107
- /* 24 */
3214
+ /* 25 */
3108
3215
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3109
3216
 
3110
3217
  "use strict";
@@ -3142,12 +3249,12 @@ var strings = {
3142
3249
  };
3143
3250
 
3144
3251
  /***/ }),
3145
- /* 25 */
3252
+ /* 26 */
3146
3253
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3147
3254
 
3148
3255
  "use strict";
3149
3256
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3150
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(24);
3257
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(25);
3151
3258
  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; };
3152
3259
 
3153
3260
  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; }; }();
@@ -3470,13 +3577,13 @@ var MDCTemporaryDrawerFoundation = function (_MDCFoundation) {
3470
3577
  /* harmony default export */ __webpack_exports__["a"] = MDCTemporaryDrawerFoundation;
3471
3578
 
3472
3579
  /***/ }),
3473
- /* 26 */
3580
+ /* 27 */
3474
3581
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3475
3582
 
3476
3583
  "use strict";
3477
3584
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3478
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(25);
3479
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(27);
3585
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(26);
3586
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(6);
3480
3587
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3481
3588
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCTemporaryDrawer; });
3482
3589
  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; }; }();
@@ -3542,16 +3649,16 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
3542
3649
  return Boolean(_this2.drawer);
3543
3650
  },
3544
3651
  registerInteractionHandler: function registerInteractionHandler(evt, handler) {
3545
- return _this2.root_.addEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* remapEvent */](evt), handler, __WEBPACK_IMPORTED_MODULE_2__util__["b" /* applyPassive */]());
3652
+ return _this2.root_.addEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["remapEvent"](evt), handler, __WEBPACK_IMPORTED_MODULE_2__util__["applyPassive"]());
3546
3653
  },
3547
3654
  deregisterInteractionHandler: function deregisterInteractionHandler(evt, handler) {
3548
- return _this2.root_.removeEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* remapEvent */](evt), handler, __WEBPACK_IMPORTED_MODULE_2__util__["b" /* applyPassive */]());
3655
+ return _this2.root_.removeEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["remapEvent"](evt), handler, __WEBPACK_IMPORTED_MODULE_2__util__["applyPassive"]());
3549
3656
  },
3550
3657
  registerDrawerInteractionHandler: function registerDrawerInteractionHandler(evt, handler) {
3551
- return _this2.drawer.addEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* remapEvent */](evt), handler);
3658
+ return _this2.drawer.addEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["remapEvent"](evt), handler);
3552
3659
  },
3553
3660
  deregisterDrawerInteractionHandler: function deregisterDrawerInteractionHandler(evt, handler) {
3554
- return _this2.drawer.removeEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* remapEvent */](evt), handler);
3661
+ return _this2.drawer.removeEventListener(__WEBPACK_IMPORTED_MODULE_2__util__["remapEvent"](evt), handler);
3555
3662
  },
3556
3663
  registerTransitionEndHandler: function registerTransitionEndHandler(handler) {
3557
3664
  return _this2.drawer.addEventListener('transitionend', handler);
@@ -3569,10 +3676,10 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
3569
3676
  return _this2.drawer.offsetWidth;
3570
3677
  },
3571
3678
  setTranslateX: function setTranslateX(value) {
3572
- return _this2.drawer.style.setProperty(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* getTransformPropertyName */](), value === null ? null : 'translateX(' + value + 'px)');
3679
+ return _this2.drawer.style.setProperty(__WEBPACK_IMPORTED_MODULE_2__util__["getTransformPropertyName"](), value === null ? null : 'translateX(' + value + 'px)');
3573
3680
  },
3574
3681
  updateCssVariable: function updateCssVariable(value) {
3575
- if (__WEBPACK_IMPORTED_MODULE_2__util__["d" /* supportsCssCustomProperties */]()) {
3682
+ if (__WEBPACK_IMPORTED_MODULE_2__util__["supportsCssCustomProperties"]()) {
3576
3683
  _this2.root_.style.setProperty(OPACITY_VAR_NAME, value);
3577
3684
  }
3578
3685
  },
@@ -3580,10 +3687,10 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
3580
3687
  return _this2.drawer.querySelectorAll(FOCUSABLE_ELEMENTS);
3581
3688
  },
3582
3689
  saveElementTabState: function saveElementTabState(el) {
3583
- return __WEBPACK_IMPORTED_MODULE_2__util__["e" /* saveElementTabState */](el);
3690
+ return __WEBPACK_IMPORTED_MODULE_2__util__["saveElementTabState"](el);
3584
3691
  },
3585
3692
  restoreElementTabState: function restoreElementTabState(el) {
3586
- return __WEBPACK_IMPORTED_MODULE_2__util__["f" /* restoreElementTabState */](el);
3693
+ return __WEBPACK_IMPORTED_MODULE_2__util__["restoreElementTabState"](el);
3587
3694
  },
3588
3695
  makeElementUntabbable: function makeElementUntabbable(el) {
3589
3696
  return el.setAttribute('tabindex', -1);
@@ -3626,124 +3733,6 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
3626
3733
  return MDCTemporaryDrawer;
3627
3734
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3628
3735
 
3629
- /***/ }),
3630
- /* 27 */
3631
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
3632
-
3633
- "use strict";
3634
- /* harmony export (immutable) */ __webpack_exports__["a"] = remapEvent;
3635
- /* harmony export (immutable) */ __webpack_exports__["c"] = getTransformPropertyName;
3636
- /* harmony export (immutable) */ __webpack_exports__["d"] = supportsCssCustomProperties;
3637
- /* harmony export (immutable) */ __webpack_exports__["b"] = applyPassive;
3638
- /* harmony export (immutable) */ __webpack_exports__["e"] = saveElementTabState;
3639
- /* harmony export (immutable) */ __webpack_exports__["f"] = restoreElementTabState;
3640
- /**
3641
- * Copyright 2016 Google Inc. All Rights Reserved.
3642
- *
3643
- * Licensed under the Apache License, Version 2.0 (the "License");
3644
- * you may not use this file except in compliance with the License.
3645
- * You may obtain a copy of the License at
3646
- *
3647
- * http://www.apache.org/licenses/LICENSE-2.0
3648
- *
3649
- * Unless required by applicable law or agreed to in writing, software
3650
- * distributed under the License is distributed on an "AS IS" BASIS,
3651
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3652
- * See the License for the specific language governing permissions and
3653
- * limitations under the License.
3654
- */
3655
-
3656
- var TAB_DATA = 'data-mdc-tabindex';
3657
- var TAB_DATA_HANDLED = 'data-mdc-tabindex-handled';
3658
-
3659
- var storedTransformPropertyName_ = void 0;
3660
- var supportsPassive_ = void 0;
3661
-
3662
- // Remap touch events to pointer events, if the browser doesn't support touch events.
3663
- function remapEvent(eventName) {
3664
- var globalObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;
3665
-
3666
- if (!('ontouchstart' in globalObj.document)) {
3667
- switch (eventName) {
3668
- case 'touchstart':
3669
- return 'pointerdown';
3670
- case 'touchmove':
3671
- return 'pointermove';
3672
- case 'touchend':
3673
- return 'pointerup';
3674
- default:
3675
- return eventName;
3676
- }
3677
- }
3678
-
3679
- return eventName;
3680
- }
3681
-
3682
- // Choose the correct transform property to use on the current browser.
3683
- function getTransformPropertyName() {
3684
- var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
3685
- var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
3686
-
3687
- if (storedTransformPropertyName_ === undefined || forceRefresh) {
3688
- var el = globalObj.document.createElement('div');
3689
- var transformPropertyName = 'transform' in el.style ? 'transform' : '-webkit-transform';
3690
- storedTransformPropertyName_ = transformPropertyName;
3691
- }
3692
-
3693
- return storedTransformPropertyName_;
3694
- }
3695
-
3696
- // Determine whether the current browser supports CSS properties.
3697
- function supportsCssCustomProperties() {
3698
- var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
3699
-
3700
- if ('CSS' in globalObj) {
3701
- return globalObj.CSS.supports('(--color: red)');
3702
- }
3703
- return false;
3704
- }
3705
-
3706
- // Determine whether the current browser supports passive event listeners, and if so, use them.
3707
- function applyPassive() {
3708
- var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
3709
- var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
3710
-
3711
- if (supportsPassive_ === undefined || forceRefresh) {
3712
- var isSupported = false;
3713
- try {
3714
- globalObj.document.addEventListener('test', null, { get passive() {
3715
- isSupported = true;
3716
- } });
3717
- } catch (e) {}
3718
-
3719
- supportsPassive_ = isSupported;
3720
- }
3721
-
3722
- return supportsPassive_ ? { passive: true } : false;
3723
- }
3724
-
3725
- // Save the tab state for an element.
3726
- function saveElementTabState(el) {
3727
- if (el.hasAttribute('tabindex')) {
3728
- el.setAttribute(TAB_DATA, el.getAttribute('tabindex'));
3729
- }
3730
- el.setAttribute(TAB_DATA_HANDLED, true);
3731
- }
3732
-
3733
- // Restore the tab state for an element, if it was saved.
3734
- function restoreElementTabState(el) {
3735
- // Only modify elements we've already handled, in case anything was dynamically added since we saved state.
3736
- if (el.hasAttribute(TAB_DATA_HANDLED)) {
3737
- if (el.hasAttribute(TAB_DATA)) {
3738
- el.setAttribute('tabindex', el.getAttribute(TAB_DATA));
3739
- el.removeAttribute(TAB_DATA);
3740
- } else {
3741
- el.removeAttribute('tabindex');
3742
- }
3743
- el.removeAttribute(TAB_DATA_HANDLED);
3744
- }
3745
- }
3746
-
3747
3736
  /***/ }),
3748
3737
  /* 28 */
3749
3738
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -4320,7 +4309,7 @@ var numbers = {
4320
4309
  "use strict";
4321
4310
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4322
4311
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(33);
4323
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(6);
4312
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4324
4313
  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; };
4325
4314
 
4326
4315
  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; }; }();
@@ -4862,7 +4851,7 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
4862
4851
  "use strict";
4863
4852
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4864
4853
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(34);
4865
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(6);
4854
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4866
4855
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
4867
4856
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCSimpleMenu; });
4868
4857
  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; }; }();
@@ -5187,8 +5176,6 @@ var MDCRadioFoundation = function (_MDCFoundation) {
5187
5176
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5188
5177
 
5189
5178
  "use strict";
5190
- /* unused harmony export ROOT */
5191
- /* unused harmony export UPGRADED */
5192
5179
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
5193
5180
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
5194
5181
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return numbers; });
@@ -5208,45 +5195,33 @@ var MDCRadioFoundation = function (_MDCFoundation) {
5208
5195
  * limitations under the License.
5209
5196
  */
5210
5197
 
5211
- var ROOT = 'mdc-ripple';
5212
- var UPGRADED = ROOT + '-upgraded';
5213
-
5214
5198
  var cssClasses = {
5215
5199
  // Ripple is a special case where the "root" component is really a "mixin" of sorts,
5216
5200
  // given that it's an 'upgrade' to an existing component. That being said it is the root
5217
5201
  // CSS class that all other CSS classes derive from.
5218
- ROOT: UPGRADED,
5219
- UNBOUNDED: UPGRADED + '--unbounded',
5220
- BG_ACTIVE: UPGRADED + '--background-active',
5221
- BG_BOUNDED_ACTIVE_FILL: UPGRADED + '--background-bounded-active-fill',
5222
- FG_BOUNDED_ACTIVE_FILL: UPGRADED + '--foreground-bounded-active-fill',
5223
- FG_UNBOUNDED_ACTIVATION: UPGRADED + '--foreground-unbounded-activation',
5224
- FG_UNBOUNDED_DEACTIVATION: UPGRADED + '--foreground-unbounded-deactivation'
5202
+ ROOT: 'mdc-ripple-upgraded',
5203
+ UNBOUNDED: 'mdc-ripple-upgraded--unbounded',
5204
+ BG_FOCUSED: 'mdc-ripple-upgraded--background-focused',
5205
+ BG_ACTIVE_FILL: 'mdc-ripple-upgraded--background-active-fill',
5206
+ FG_ACTIVATION: 'mdc-ripple-upgraded--foreground-activation',
5207
+ FG_DEACTIVATION: 'mdc-ripple-upgraded--foreground-deactivation'
5225
5208
  };
5226
5209
 
5227
5210
  var strings = {
5228
- VAR_SURFACE_WIDTH: '--' + ROOT + '-surface-width',
5229
- VAR_SURFACE_HEIGHT: '--' + ROOT + '-surface-height',
5230
- VAR_FG_SIZE: '--' + ROOT + '-fg-size',
5231
- VAR_FG_UNBOUNDED_OPACITY_DURATION: '--' + ROOT + '-fg-unbounded-opacity-duration',
5232
- VAR_FG_UNBOUNDED_TRANSFORM_DURATION: '--' + ROOT + '-fg-unbounded-transform-duration',
5233
- VAR_LEFT: '--' + ROOT + '-left',
5234
- VAR_TOP: '--' + ROOT + '-top',
5235
- VAR_TRANSLATE_END: '--' + ROOT + '-translate-end',
5236
- VAR_FG_APPROX_XF: '--' + ROOT + '-fg-approx-xf',
5237
- VAR_FG_SCALE: '--' + ROOT + '-fg-scale',
5238
- VAR_FG_TRANSLATE_START: '--' + ROOT + '-fg-translate-start',
5239
- VAR_FG_TRANSLATE_END: '--' + ROOT + '-fg-translate-end'
5211
+ VAR_SURFACE_WIDTH: '--mdc-ripple-surface-width',
5212
+ VAR_SURFACE_HEIGHT: '--mdc-ripple-surface-height',
5213
+ VAR_FG_SIZE: '--mdc-ripple-fg-size',
5214
+ VAR_LEFT: '--mdc-ripple-left',
5215
+ VAR_TOP: '--mdc-ripple-top',
5216
+ VAR_FG_SCALE: '--mdc-ripple-fg-scale',
5217
+ VAR_FG_TRANSLATE_START: '--mdc-ripple-fg-translate-start',
5218
+ VAR_FG_TRANSLATE_END: '--mdc-ripple-fg-translate-end'
5240
5219
  };
5241
5220
 
5242
5221
  var numbers = {
5243
- FG_TRANSFORM_DELAY_MS: 80,
5244
- OPACITY_DURATION_DIVISOR: 3,
5245
- ACTIVE_OPACITY_DURATION_MS: 110,
5246
- MIN_OPACITY_DURATION_MS: 200,
5247
- UNBOUNDED_TRANSFORM_DURATION_MS: 200,
5248
5222
  PADDING: 10,
5249
- INITIAL_ORIGIN_SCALE: 0.6
5223
+ INITIAL_ORIGIN_SCALE: 0.6,
5224
+ DEACTIVATION_TIMEOUT_MS: 300
5250
5225
  };
5251
5226
 
5252
5227
  /***/ }),
@@ -5255,9 +5230,8 @@ var numbers = {
5255
5230
 
5256
5231
  "use strict";
5257
5232
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5258
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(2);
5259
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(37);
5260
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(3);
5233
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(37);
5234
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(2);
5261
5235
  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; };
5262
5236
 
5263
5237
  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; }; }();
@@ -5289,7 +5263,6 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
5289
5263
 
5290
5264
 
5291
5265
 
5292
-
5293
5266
  var DEACTIVATION_ACTIVATION_PAIRS = {
5294
5267
  mouseup: 'mousedown',
5295
5268
  pointerup: 'pointerdown',
@@ -5315,17 +5288,17 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5315
5288
  }], [{
5316
5289
  key: 'cssClasses',
5317
5290
  get: function get() {
5318
- return __WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */];
5291
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
5319
5292
  }
5320
5293
  }, {
5321
5294
  key: 'strings',
5322
5295
  get: function get() {
5323
- return __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */];
5296
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
5324
5297
  }
5325
5298
  }, {
5326
5299
  key: 'numbers',
5327
5300
  get: function get() {
5328
- return __WEBPACK_IMPORTED_MODULE_2__constants__["c" /* numbers */];
5301
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */];
5329
5302
  }
5330
5303
  }, {
5331
5304
  key: 'defaultAdapter',
@@ -5368,27 +5341,29 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5368
5341
  },
5369
5342
  focus: function focus() {
5370
5343
  return requestAnimationFrame(function () {
5371
- return _this.adapter_.addClass(MDCRippleFoundation.cssClasses.BG_ACTIVE);
5344
+ return _this.adapter_.addClass(MDCRippleFoundation.cssClasses.BG_FOCUSED);
5372
5345
  });
5373
5346
  },
5374
5347
  blur: function blur() {
5375
5348
  return requestAnimationFrame(function () {
5376
- return _this.adapter_.removeClass(MDCRippleFoundation.cssClasses.BG_ACTIVE);
5349
+ return _this.adapter_.removeClass(MDCRippleFoundation.cssClasses.BG_FOCUSED);
5377
5350
  });
5378
5351
  }
5379
5352
  };
5380
- _this.unboundedOpacityFadeTimer_ = 0;
5381
5353
  _this.resizeHandler_ = function () {
5382
5354
  return _this.layout();
5383
5355
  };
5384
- _this.cancelBgBounded_ = function () {};
5385
- _this.cancelFgBounded_ = function () {};
5386
- _this.cancelFgUnbounded_ = function () {};
5387
5356
  _this.unboundedCoords_ = {
5388
5357
  left: 0,
5389
5358
  top: 0
5390
5359
  };
5391
5360
  _this.fgScale_ = 0;
5361
+ _this.activationTimer_ = 0;
5362
+ _this.activationAnimationHasEnded_ = false;
5363
+ _this.activationTimerCallback_ = function () {
5364
+ _this.activationAnimationHasEnded_ = true;
5365
+ _this.runDeactivationUXLogicIfReady_();
5366
+ };
5392
5367
  return _this;
5393
5368
  }
5394
5369
 
@@ -5397,10 +5372,12 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5397
5372
  value: function defaultActivationState_() {
5398
5373
  return {
5399
5374
  isActivated: false,
5375
+ hasDeactivationUXRun: false,
5400
5376
  wasActivatedByPointer: false,
5401
5377
  wasElementMadeActive: false,
5402
5378
  activationStartTime: 0,
5403
- activationEvent: null
5379
+ activationEvent: null,
5380
+ isProgrammatic: false
5404
5381
  };
5405
5382
  }
5406
5383
  }, {
@@ -5452,8 +5429,8 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5452
5429
  activationState.isProgrammatic = e === null;
5453
5430
  activationState.activationEvent = e;
5454
5431
  activationState.wasActivatedByPointer = activationState.isProgrammatic ? false : e.type === 'mousedown' || e.type === 'touchstart' || e.type === 'pointerdown';
5455
-
5456
5432
  activationState.activationStartTime = Date.now();
5433
+
5457
5434
  requestAnimationFrame(function () {
5458
5435
  // This needs to be wrapped in an rAF call b/c web browsers
5459
5436
  // report active states inconsistently when they're called within
@@ -5479,36 +5456,99 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5479
5456
  value: function animateActivation_() {
5480
5457
  var _this5 = this;
5481
5458
 
5482
- var _MDCRippleFoundation$2 = MDCRippleFoundation.cssClasses,
5483
- BG_ACTIVE = _MDCRippleFoundation$2.BG_ACTIVE,
5484
- BG_BOUNDED_ACTIVE_FILL = _MDCRippleFoundation$2.BG_BOUNDED_ACTIVE_FILL,
5485
- FG_UNBOUNDED_DEACTIVATION = _MDCRippleFoundation$2.FG_UNBOUNDED_DEACTIVATION,
5486
- FG_BOUNDED_ACTIVE_FILL = _MDCRippleFoundation$2.FG_BOUNDED_ACTIVE_FILL;
5459
+ var _MDCRippleFoundation$2 = MDCRippleFoundation.strings,
5460
+ VAR_FG_TRANSLATE_START = _MDCRippleFoundation$2.VAR_FG_TRANSLATE_START,
5461
+ VAR_FG_TRANSLATE_END = _MDCRippleFoundation$2.VAR_FG_TRANSLATE_END;
5462
+ var _MDCRippleFoundation$3 = MDCRippleFoundation.cssClasses,
5463
+ BG_ACTIVE_FILL = _MDCRippleFoundation$3.BG_ACTIVE_FILL,
5464
+ FG_DEACTIVATION = _MDCRippleFoundation$3.FG_DEACTIVATION,
5465
+ FG_ACTIVATION = _MDCRippleFoundation$3.FG_ACTIVATION;
5466
+ var DEACTIVATION_TIMEOUT_MS = MDCRippleFoundation.numbers.DEACTIVATION_TIMEOUT_MS;
5487
5467
 
5488
- // If ripple is currently deactivating, cancel those animations.
5489
5468
 
5490
- [BG_BOUNDED_ACTIVE_FILL, FG_UNBOUNDED_DEACTIVATION, FG_BOUNDED_ACTIVE_FILL].forEach(function (c) {
5491
- return _this5.adapter_.removeClass(c);
5492
- });
5493
- this.cancelBgBounded_();
5494
- this.cancelFgBounded_();
5495
- this.cancelFgUnbounded_();
5496
- if (this.unboundedOpacityFadeTimer_) {
5497
- clearTimeout(this.unboundedOpacityFadeTimer_);
5498
- this.unboundedOpacityFadeTimer_ = 0;
5469
+ var translateStart = '';
5470
+ var translateEnd = '';
5471
+
5472
+ if (!this.adapter_.isUnbounded()) {
5473
+ var _getFgTranslationCoor = this.getFgTranslationCoordinates_(),
5474
+ startPoint = _getFgTranslationCoor.startPoint,
5475
+ endPoint = _getFgTranslationCoor.endPoint;
5476
+
5477
+ translateStart = startPoint.x + 'px, ' + startPoint.y + 'px';
5478
+ translateEnd = endPoint.x + 'px, ' + endPoint.y + 'px';
5499
5479
  }
5500
5480
 
5501
- this.adapter_.addClass(BG_ACTIVE);
5502
- if (this.adapter_.isUnbounded()) {
5503
- this.animateUnboundedActivation_();
5481
+ this.adapter_.updateCssVariable(VAR_FG_TRANSLATE_START, translateStart);
5482
+ this.adapter_.updateCssVariable(VAR_FG_TRANSLATE_END, translateEnd);
5483
+ // Cancel any ongoing activation/deactivation animations
5484
+ clearTimeout(this.activationTimer_);
5485
+ this.rmBoundedActivationClasses_();
5486
+ this.adapter_.removeClass(FG_DEACTIVATION);
5487
+
5488
+ // Force layout in order to re-trigger the animation.
5489
+ this.adapter_.computeBoundingRect();
5490
+ this.adapter_.addClass(BG_ACTIVE_FILL);
5491
+ this.adapter_.addClass(FG_ACTIVATION);
5492
+ this.activationTimer_ = setTimeout(function () {
5493
+ return _this5.activationTimerCallback_();
5494
+ }, DEACTIVATION_TIMEOUT_MS);
5495
+ }
5496
+ }, {
5497
+ key: 'getFgTranslationCoordinates_',
5498
+ value: function getFgTranslationCoordinates_() {
5499
+ var activationState = this.activationState_;
5500
+ var activationEvent = activationState.activationEvent,
5501
+ wasActivatedByPointer = activationState.wasActivatedByPointer;
5502
+
5503
+
5504
+ var startPoint = void 0;
5505
+ if (wasActivatedByPointer) {
5506
+ startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* getNormalizedEventCoords */])(activationEvent, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
5507
+ } else {
5508
+ startPoint = {
5509
+ x: this.frame_.width / 2,
5510
+ y: this.frame_.height / 2
5511
+ };
5512
+ }
5513
+ // Center the element around the start point.
5514
+ startPoint = {
5515
+ x: startPoint.x - this.initialSize_ / 2,
5516
+ y: startPoint.y - this.initialSize_ / 2
5517
+ };
5518
+
5519
+ var endPoint = {
5520
+ x: this.frame_.width / 2 - this.initialSize_ / 2,
5521
+ y: this.frame_.height / 2 - this.initialSize_ / 2
5522
+ };
5523
+
5524
+ return { startPoint: startPoint, endPoint: endPoint };
5525
+ }
5526
+ }, {
5527
+ key: 'runDeactivationUXLogicIfReady_',
5528
+ value: function runDeactivationUXLogicIfReady_() {
5529
+ var FG_DEACTIVATION = MDCRippleFoundation.cssClasses.FG_DEACTIVATION;
5530
+ var _activationState_ = this.activationState_,
5531
+ hasDeactivationUXRun = _activationState_.hasDeactivationUXRun,
5532
+ isActivated = _activationState_.isActivated;
5533
+
5534
+ var activationHasEnded = hasDeactivationUXRun || !isActivated;
5535
+ if (activationHasEnded && this.activationAnimationHasEnded_) {
5536
+ this.rmBoundedActivationClasses_();
5537
+ // Note that we don't need to remove this here since it's removed on re-activation.
5538
+ this.adapter_.addClass(FG_DEACTIVATION);
5504
5539
  }
5505
5540
  }
5506
5541
  }, {
5507
- key: 'animateUnboundedActivation_',
5508
- value: function animateUnboundedActivation_() {
5509
- var FG_UNBOUNDED_ACTIVATION = MDCRippleFoundation.cssClasses.FG_UNBOUNDED_ACTIVATION;
5542
+ key: 'rmBoundedActivationClasses_',
5543
+ value: function rmBoundedActivationClasses_() {
5544
+ var _MDCRippleFoundation$4 = MDCRippleFoundation.cssClasses,
5545
+ BG_ACTIVE_FILL = _MDCRippleFoundation$4.BG_ACTIVE_FILL,
5546
+ FG_ACTIVATION = _MDCRippleFoundation$4.FG_ACTIVATION;
5510
5547
 
5511
- this.adapter_.addClass(FG_UNBOUNDED_ACTIVATION);
5548
+ this.adapter_.removeClass(BG_ACTIVE_FILL);
5549
+ this.adapter_.removeClass(FG_ACTIVATION);
5550
+ this.activationAnimationHasEnded_ = false;
5551
+ this.adapter_.computeBoundingRect();
5512
5552
  }
5513
5553
  }, {
5514
5554
  key: 'deactivate_',
@@ -5523,12 +5563,14 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5523
5563
  }
5524
5564
  // Programmatic deactivation.
5525
5565
  if (activationState.isProgrammatic) {
5566
+ var evtObject = null;
5526
5567
  requestAnimationFrame(function () {
5527
- return _this6.animateDeactivation_(null, _extends({}, activationState));
5568
+ return _this6.animateDeactivation_(evtObject, _extends({}, activationState));
5528
5569
  });
5529
5570
  this.activationState_ = this.defaultActivationState_();
5530
5571
  return;
5531
5572
  }
5573
+
5532
5574
  var actualActivationType = DEACTIVATION_ACTIVATION_PAIRS[e.type];
5533
5575
  var expectedActivationType = activationState.activationEvent.type;
5534
5576
  // NOTE: Pointer events are tricky - https://patrickhlauke.github.io/touch/tests/results/
@@ -5542,14 +5584,16 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5542
5584
  }
5543
5585
 
5544
5586
  var state = _extends({}, activationState);
5545
- if (needsDeactivationUX) {
5546
- requestAnimationFrame(function () {
5547
- return _this6.animateDeactivation_(e, state);
5548
- });
5549
- }
5550
- if (needsActualDeactivation) {
5551
- this.activationState_ = this.defaultActivationState_();
5552
- }
5587
+ requestAnimationFrame(function () {
5588
+ if (needsDeactivationUX) {
5589
+ _this6.activationState_.hasDeactivationUXRun = true;
5590
+ _this6.animateDeactivation_(e, state);
5591
+ }
5592
+
5593
+ if (needsActualDeactivation) {
5594
+ _this6.activationState_ = _this6.defaultActivationState_();
5595
+ }
5596
+ });
5553
5597
  }
5554
5598
  }, {
5555
5599
  key: 'deactivate',
@@ -5560,135 +5604,43 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5560
5604
  key: 'animateDeactivation_',
5561
5605
  value: function animateDeactivation_(e, _ref) {
5562
5606
  var wasActivatedByPointer = _ref.wasActivatedByPointer,
5563
- wasElementMadeActive = _ref.wasElementMadeActive,
5564
- activationStartTime = _ref.activationStartTime,
5565
- isProgrammatic = _ref.isProgrammatic;
5566
- var BG_ACTIVE = MDCRippleFoundation.cssClasses.BG_ACTIVE;
5607
+ wasElementMadeActive = _ref.wasElementMadeActive;
5608
+ var BG_FOCUSED = MDCRippleFoundation.cssClasses.BG_FOCUSED;
5567
5609
 
5568
5610
  if (wasActivatedByPointer || wasElementMadeActive) {
5569
- this.adapter_.removeClass(BG_ACTIVE);
5570
- var isPointerEvent = isProgrammatic ? false : e.type === 'touchend' || e.type === 'pointerup' || e.type === 'mouseup';
5571
- if (this.adapter_.isUnbounded()) {
5572
- this.animateUnboundedDeactivation_(this.getUnboundedDeactivationInfo_(activationStartTime));
5573
- } else {
5574
- this.animateBoundedDeactivation_(e, isPointerEvent);
5575
- }
5576
- }
5577
- }
5578
- }, {
5579
- key: 'animateUnboundedDeactivation_',
5580
- value: function animateUnboundedDeactivation_(_ref2) {
5581
- var _this7 = this;
5582
-
5583
- var opacityDuration = _ref2.opacityDuration,
5584
- transformDuration = _ref2.transformDuration,
5585
- approxCurScale = _ref2.approxCurScale;
5586
- var _MDCRippleFoundation$3 = MDCRippleFoundation.cssClasses,
5587
- FG_UNBOUNDED_ACTIVATION = _MDCRippleFoundation$3.FG_UNBOUNDED_ACTIVATION,
5588
- FG_UNBOUNDED_DEACTIVATION = _MDCRippleFoundation$3.FG_UNBOUNDED_DEACTIVATION;
5589
- var _MDCRippleFoundation$4 = MDCRippleFoundation.strings,
5590
- VAR_FG_UNBOUNDED_OPACITY_DURATION = _MDCRippleFoundation$4.VAR_FG_UNBOUNDED_OPACITY_DURATION,
5591
- VAR_FG_UNBOUNDED_TRANSFORM_DURATION = _MDCRippleFoundation$4.VAR_FG_UNBOUNDED_TRANSFORM_DURATION,
5592
- VAR_FG_APPROX_XF = _MDCRippleFoundation$4.VAR_FG_APPROX_XF;
5593
-
5594
-
5595
- this.adapter_.updateCssVariable(VAR_FG_APPROX_XF, 'scale(' + approxCurScale + ')');
5596
- this.adapter_.updateCssVariable(VAR_FG_UNBOUNDED_OPACITY_DURATION, opacityDuration + 'ms');
5597
- this.adapter_.updateCssVariable(VAR_FG_UNBOUNDED_TRANSFORM_DURATION, transformDuration + 'ms');
5598
- this.adapter_.addClass(FG_UNBOUNDED_DEACTIVATION);
5599
- this.adapter_.removeClass(FG_UNBOUNDED_ACTIVATION);
5600
- // We use setTimeout here since we know how long the fade will take.
5601
- this.unboundedOpacityFadeTimer_ = setTimeout(function () {
5602
- _this7.adapter_.removeClass(FG_UNBOUNDED_DEACTIVATION);
5603
- }, opacityDuration);
5604
- }
5605
- }, {
5606
- key: 'getUnboundedDeactivationInfo_',
5607
- value: function getUnboundedDeactivationInfo_(activationStartTime) {
5608
- var msElapsed = Date.now() - activationStartTime;
5609
- var _MDCRippleFoundation$5 = MDCRippleFoundation.numbers,
5610
- FG_TRANSFORM_DELAY_MS = _MDCRippleFoundation$5.FG_TRANSFORM_DELAY_MS,
5611
- OPACITY_DURATION_DIVISOR = _MDCRippleFoundation$5.OPACITY_DURATION_DIVISOR,
5612
- ACTIVE_OPACITY_DURATION_MS = _MDCRippleFoundation$5.ACTIVE_OPACITY_DURATION_MS,
5613
- UNBOUNDED_TRANSFORM_DURATION_MS = _MDCRippleFoundation$5.UNBOUNDED_TRANSFORM_DURATION_MS,
5614
- MIN_OPACITY_DURATION_MS = _MDCRippleFoundation$5.MIN_OPACITY_DURATION_MS;
5615
-
5616
-
5617
- var approxCurScale = 0;
5618
- if (msElapsed > FG_TRANSFORM_DELAY_MS) {
5619
- var percentComplete = Math.min((msElapsed - FG_TRANSFORM_DELAY_MS) / this.xfDuration_, 1);
5620
- approxCurScale = percentComplete * this.fgScale_;
5611
+ // Remove class left over by element being focused
5612
+ this.adapter_.removeClass(BG_FOCUSED);
5613
+ this.runDeactivationUXLogicIfReady_();
5621
5614
  }
5622
-
5623
- var transformDuration = UNBOUNDED_TRANSFORM_DURATION_MS;
5624
- var approxOpacity = Math.min(msElapsed / ACTIVE_OPACITY_DURATION_MS, 1);
5625
- var opacityDuration = Math.max(MIN_OPACITY_DURATION_MS, 1000 * approxOpacity / OPACITY_DURATION_DIVISOR);
5626
-
5627
- return { transformDuration: transformDuration, opacityDuration: opacityDuration, approxCurScale: approxCurScale };
5628
- }
5629
- }, {
5630
- key: 'animateBoundedDeactivation_',
5631
- value: function animateBoundedDeactivation_(e, isPointerEvent) {
5632
- var startPoint = void 0;
5633
- if (isPointerEvent) {
5634
- startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["c" /* getNormalizedEventCoords */])(e, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
5635
- } else {
5636
- startPoint = {
5637
- x: this.frame_.width / 2,
5638
- y: this.frame_.height / 2
5639
- };
5640
- }
5641
-
5642
- startPoint = {
5643
- x: startPoint.x - this.initialSize_ / 2,
5644
- y: startPoint.y - this.initialSize_ / 2
5645
- };
5646
-
5647
- var endPoint = {
5648
- x: this.frame_.width / 2 - this.initialSize_ / 2,
5649
- y: this.frame_.height / 2 - this.initialSize_ / 2
5650
- };
5651
-
5652
- var _MDCRippleFoundation$6 = MDCRippleFoundation.strings,
5653
- VAR_FG_TRANSLATE_START = _MDCRippleFoundation$6.VAR_FG_TRANSLATE_START,
5654
- VAR_FG_TRANSLATE_END = _MDCRippleFoundation$6.VAR_FG_TRANSLATE_END;
5655
- var _MDCRippleFoundation$7 = MDCRippleFoundation.cssClasses,
5656
- BG_BOUNDED_ACTIVE_FILL = _MDCRippleFoundation$7.BG_BOUNDED_ACTIVE_FILL,
5657
- FG_BOUNDED_ACTIVE_FILL = _MDCRippleFoundation$7.FG_BOUNDED_ACTIVE_FILL;
5658
-
5659
- this.adapter_.updateCssVariable(VAR_FG_TRANSLATE_START, startPoint.x + 'px, ' + startPoint.y + 'px');
5660
- this.adapter_.updateCssVariable(VAR_FG_TRANSLATE_END, endPoint.x + 'px, ' + endPoint.y + 'px');
5661
- this.cancelBgBounded_ = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["d" /* animateWithClass */])(this.adapter_, BG_BOUNDED_ACTIVE_FILL, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__material_animation__["a" /* getCorrectEventName */])(window, 'transitionend'));
5662
- this.cancelFgBounded_ = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["d" /* animateWithClass */])(this.adapter_, FG_BOUNDED_ACTIVE_FILL, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__material_animation__["a" /* getCorrectEventName */])(window, 'animationend'));
5663
5615
  }
5664
5616
  }, {
5665
5617
  key: 'destroy',
5666
5618
  value: function destroy() {
5667
- var _this8 = this;
5619
+ var _this7 = this;
5668
5620
 
5669
5621
  if (!this.isSupported_) {
5670
5622
  return;
5671
5623
  }
5672
5624
  this.removeEventListeners_();
5673
5625
 
5674
- var _MDCRippleFoundation$8 = MDCRippleFoundation.cssClasses,
5675
- ROOT = _MDCRippleFoundation$8.ROOT,
5676
- UNBOUNDED = _MDCRippleFoundation$8.UNBOUNDED;
5626
+ var _MDCRippleFoundation$5 = MDCRippleFoundation.cssClasses,
5627
+ ROOT = _MDCRippleFoundation$5.ROOT,
5628
+ UNBOUNDED = _MDCRippleFoundation$5.UNBOUNDED;
5677
5629
 
5678
5630
  requestAnimationFrame(function () {
5679
- _this8.adapter_.removeClass(ROOT);
5680
- _this8.adapter_.removeClass(UNBOUNDED);
5681
- _this8.removeCssVars_();
5631
+ _this7.adapter_.removeClass(ROOT);
5632
+ _this7.adapter_.removeClass(UNBOUNDED);
5633
+ _this7.removeCssVars_();
5682
5634
  });
5683
5635
  }
5684
5636
  }, {
5685
5637
  key: 'removeEventListeners_',
5686
5638
  value: function removeEventListeners_() {
5687
- var _this9 = this;
5639
+ var _this8 = this;
5688
5640
 
5689
5641
  this.listenerInfos_.forEach(function (info) {
5690
5642
  Object.keys(info).forEach(function (k) {
5691
- _this9.adapter_.deregisterInteractionHandler(info[k], _this9.listeners_[k]);
5643
+ _this8.adapter_.deregisterInteractionHandler(info[k], _this8.listeners_[k]);
5692
5644
  });
5693
5645
  });
5694
5646
  this.adapter_.deregisterResizeHandler(this.resizeHandler_);
@@ -5696,27 +5648,27 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5696
5648
  }, {
5697
5649
  key: 'removeCssVars_',
5698
5650
  value: function removeCssVars_() {
5699
- var _this10 = this;
5651
+ var _this9 = this;
5700
5652
 
5701
5653
  var strings = MDCRippleFoundation.strings;
5702
5654
 
5703
5655
  Object.keys(strings).forEach(function (k) {
5704
5656
  if (k.indexOf('VAR_') === 0) {
5705
- _this10.adapter_.updateCssVariable(strings[k], null);
5657
+ _this9.adapter_.updateCssVariable(strings[k], null);
5706
5658
  }
5707
5659
  });
5708
5660
  }
5709
5661
  }, {
5710
5662
  key: 'layout',
5711
5663
  value: function layout() {
5712
- var _this11 = this;
5664
+ var _this10 = this;
5713
5665
 
5714
5666
  if (this.layoutFrame_) {
5715
5667
  cancelAnimationFrame(this.layoutFrame_);
5716
5668
  }
5717
5669
  this.layoutFrame_ = requestAnimationFrame(function () {
5718
- _this11.layoutInternal_();
5719
- _this11.layoutFrame_ = 0;
5670
+ _this10.layoutInternal_();
5671
+ _this10.layoutFrame_ = 0;
5720
5672
  });
5721
5673
  }
5722
5674
  }, {
@@ -5739,20 +5691,18 @@ var MDCRippleFoundation = function (_MDCFoundation) {
5739
5691
  }, {
5740
5692
  key: 'updateLayoutCssVars_',
5741
5693
  value: function updateLayoutCssVars_() {
5742
- var _MDCRippleFoundation$9 = MDCRippleFoundation.strings,
5743
- VAR_SURFACE_WIDTH = _MDCRippleFoundation$9.VAR_SURFACE_WIDTH,
5744
- VAR_SURFACE_HEIGHT = _MDCRippleFoundation$9.VAR_SURFACE_HEIGHT,
5745
- VAR_FG_SIZE = _MDCRippleFoundation$9.VAR_FG_SIZE,
5746
- VAR_FG_UNBOUNDED_TRANSFORM_DURATION = _MDCRippleFoundation$9.VAR_FG_UNBOUNDED_TRANSFORM_DURATION,
5747
- VAR_LEFT = _MDCRippleFoundation$9.VAR_LEFT,
5748
- VAR_TOP = _MDCRippleFoundation$9.VAR_TOP,
5749
- VAR_FG_SCALE = _MDCRippleFoundation$9.VAR_FG_SCALE;
5694
+ var _MDCRippleFoundation$6 = MDCRippleFoundation.strings,
5695
+ VAR_SURFACE_WIDTH = _MDCRippleFoundation$6.VAR_SURFACE_WIDTH,
5696
+ VAR_SURFACE_HEIGHT = _MDCRippleFoundation$6.VAR_SURFACE_HEIGHT,
5697
+ VAR_FG_SIZE = _MDCRippleFoundation$6.VAR_FG_SIZE,
5698
+ VAR_LEFT = _MDCRippleFoundation$6.VAR_LEFT,
5699
+ VAR_TOP = _MDCRippleFoundation$6.VAR_TOP,
5700
+ VAR_FG_SCALE = _MDCRippleFoundation$6.VAR_FG_SCALE;
5750
5701
 
5751
5702
 
5752
5703
  this.adapter_.updateCssVariable(VAR_SURFACE_WIDTH, this.frame_.width + 'px');
5753
5704
  this.adapter_.updateCssVariable(VAR_SURFACE_HEIGHT, this.frame_.height + 'px');
5754
5705
  this.adapter_.updateCssVariable(VAR_FG_SIZE, this.initialSize_ + 'px');
5755
- this.adapter_.updateCssVariable(VAR_FG_UNBOUNDED_TRANSFORM_DURATION, this.xfDuration_ + 'ms');
5756
5706
  this.adapter_.updateCssVariable(VAR_FG_SCALE, this.fgScale_);
5757
5707
 
5758
5708
  if (this.adapter_.isUnbounded()) {
@@ -6624,19 +6574,19 @@ var MDCTextfieldFoundation = function (_MDCFoundation) {
6624
6574
  "use strict";
6625
6575
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
6626
6576
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6627
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_checkbox__ = __webpack_require__(8);
6628
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(11);
6629
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(12);
6630
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(13);
6631
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(14);
6577
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_checkbox__ = __webpack_require__(9);
6578
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(12);
6579
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(13);
6580
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(14);
6581
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(15);
6632
6582
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__material_ripple__ = __webpack_require__(1);
6633
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(9);
6634
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(10);
6635
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(17);
6636
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(16);
6637
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_menu__ = __webpack_require__(4);
6638
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_select__ = __webpack_require__(15);
6639
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_auto_init__ = __webpack_require__(7);
6583
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(10);
6584
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(11);
6585
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(18);
6586
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(17);
6587
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_menu__ = __webpack_require__(3);
6588
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_select__ = __webpack_require__(16);
6589
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_auto_init__ = __webpack_require__(8);
6640
6590
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "base", function() { return __WEBPACK_IMPORTED_MODULE_0__material_base__; });
6641
6591
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "checkbox", function() { return __WEBPACK_IMPORTED_MODULE_1__material_checkbox__; });
6642
6592
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "formField", function() { return __WEBPACK_IMPORTED_MODULE_2__material_form_field__; });