material_components_web-sass 0.13.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 261d26eba36148fea3965c02cd305641b85c7a8a
4
- data.tar.gz: 3984d239e92679e1e9b11bcfaaa280d161a9883b
3
+ metadata.gz: b1daea497bd625cab7b641434a859c3be28f5ce7
4
+ data.tar.gz: aa27ecd454151dedf4e97d2df104d40638014595
5
5
  SHA512:
6
- metadata.gz: d779bf5c8680e6912e9d09563d3d146f80372fc267abecd09baa64488a4c24b4038a8090f92d8b66711c231a3cc84f4b1f7d66b4aed8c3c58c375700ad6314e2
7
- data.tar.gz: 3e7469ec8def52058f7ef823d27ef12eb722dbcfa9c37f939ff22316b898a0f46d3e91b947a0fbaef13f0f14bffe6bfdff1471a0e3bffc0aeb25aeaf47d26a87
6
+ metadata.gz: 0a346f825565670e31f88db46060886530576ef406bc39b8adaf929a6f6795c14d26e028b783c714fb1bf6bd03534c118eae423325679ca3621cd6a28fbe07de
7
+ data.tar.gz: c2911d50346078e7b2e926ea2342c537a1221fff5fcf1179d0e55170ef1a3bdb71ff4df37cf3a10596fcd39b68e97ac7d1ed07f10c6114795f1024470f3564b4
@@ -1,3 +1,12 @@
1
+ ## 0.14.0 (2017-06-28)
2
+
3
+ - Update assets to match upstream version
4
+
5
+ Library version:
6
+
7
+ - Material Components for the web v0.14.0
8
+ - Material Icons v3.0.0
9
+
1
10
  ## 0.13.0 (2017-06-15)
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.13.0'.freeze
3
+ VERSION = '0.14.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 = 29);
81
+ /******/ return __webpack_require__(__webpack_require__.s = 30);
82
82
  /******/ })
83
83
  /************************************************************************/
84
84
  /******/ ([
@@ -221,9 +221,10 @@ var MDCFoundation = function () {
221
221
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
222
222
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRipple", function() { return MDCRipple; });
223
223
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
224
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(57);
225
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
224
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(59);
225
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
226
226
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRippleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
227
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_2__util__; });
227
228
  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; }; }();
228
229
 
229
230
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -254,6 +255,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
254
255
 
255
256
 
256
257
 
258
+
257
259
  var MDCRipple = function (_MDCComponent) {
258
260
  _inherits(MDCRipple, _MDCComponent);
259
261
 
@@ -273,6 +275,11 @@ var MDCRipple = function (_MDCComponent) {
273
275
  value: function deactivate() {
274
276
  this.foundation_.deactivate();
275
277
  }
278
+ }, {
279
+ key: 'layout',
280
+ value: function layout() {
281
+ this.foundation_.layout();
282
+ }
276
283
  }, {
277
284
  key: 'getDefaultFoundation',
278
285
  value: function getDefaultFoundation() {
@@ -315,11 +322,11 @@ var MDCRipple = function (_MDCComponent) {
315
322
  }, {
316
323
  key: 'createAdapter',
317
324
  value: function createAdapter(instance) {
318
- var MATCHES = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* getMatchesProperty */])(HTMLElement.prototype);
325
+ var MATCHES = __WEBPACK_IMPORTED_MODULE_2__util__["getMatchesProperty"](HTMLElement.prototype);
319
326
 
320
327
  return {
321
328
  browserSupportsCssVars: function browserSupportsCssVars() {
322
- return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["b" /* supportsCssVariables */])(window);
329
+ return __WEBPACK_IMPORTED_MODULE_2__util__["supportsCssVariables"](window);
323
330
  },
324
331
  isUnbounded: function isUnbounded() {
325
332
  return instance.unbounded;
@@ -337,10 +344,10 @@ var MDCRipple = function (_MDCComponent) {
337
344
  return instance.root_.classList.remove(className);
338
345
  },
339
346
  registerInteractionHandler: function registerInteractionHandler(evtType, handler) {
340
- return instance.root_.addEventListener(evtType, handler, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* applyPassive */])());
347
+ return instance.root_.addEventListener(evtType, handler, __WEBPACK_IMPORTED_MODULE_2__util__["applyPassive"]());
341
348
  },
342
349
  deregisterInteractionHandler: function deregisterInteractionHandler(evtType, handler) {
343
- return instance.root_.removeEventListener(evtType, handler, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* applyPassive */])());
350
+ return instance.root_.removeEventListener(evtType, handler, __WEBPACK_IMPORTED_MODULE_2__util__["applyPassive"]());
344
351
  },
345
352
  registerResizeHandler: function registerResizeHandler(handler) {
346
353
  return window.addEventListener('resize', handler);
@@ -572,7 +579,7 @@ var MDCComponent = function () {
572
579
 
573
580
  _classCallCheck(this, MDCComponent);
574
581
 
575
- /** @private {!Element} */
582
+ /** @protected {!Element} */
576
583
  this.root_ = root;
577
584
 
578
585
  for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
@@ -654,7 +661,7 @@ var MDCComponent = function () {
654
661
  * with the given data.
655
662
  * @param {string} evtType
656
663
  * @param {!Object} evtData
657
- * @param {boolean} shouldBubble
664
+ * @param {boolean=} shouldBubble
658
665
  */
659
666
 
660
667
  }, {
@@ -687,9 +694,9 @@ var MDCComponent = function () {
687
694
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
688
695
 
689
696
  "use strict";
690
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(38);
697
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(39);
691
698
  /* 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__(39);
699
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(40);
693
700
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
694
701
  /**
695
702
  * Copyright 2016 Google Inc. All Rights Reserved.
@@ -716,9 +723,11 @@ var MDCComponent = function () {
716
723
 
717
724
  "use strict";
718
725
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
719
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(53);
720
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["a"]; });
721
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["b"]; });
726
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(8);
727
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__simple__ = __webpack_require__(55);
728
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_1__simple__["a"]; });
729
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__simple__["b"]; });
730
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_0__util__; });
722
731
  /**
723
732
  * Copyright 2016 Google Inc. All Rights Reserved.
724
733
  *
@@ -737,6 +746,8 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
737
746
 
738
747
 
739
748
 
749
+
750
+
740
751
  /***/ }),
741
752
  /* 7 */
742
753
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -861,10 +872,10 @@ function restoreElementTabState(el) {
861
872
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
862
873
 
863
874
  "use strict";
864
- /* harmony export (immutable) */ __webpack_exports__["b"] = supportsCssVariables;
865
- /* harmony export (immutable) */ __webpack_exports__["c"] = applyPassive;
866
- /* harmony export (immutable) */ __webpack_exports__["a"] = getMatchesProperty;
867
- /* harmony export (immutable) */ __webpack_exports__["d"] = getNormalizedEventCoords;
875
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
876
+ /* harmony export (immutable) */ __webpack_exports__["getTransformPropertyName"] = getTransformPropertyName;
877
+ /* harmony export (immutable) */ __webpack_exports__["clamp"] = clamp;
878
+ /* harmony export (immutable) */ __webpack_exports__["bezierProgress"] = bezierProgress;
868
879
  /**
869
880
  * Copyright 2016 Google Inc. All Rights Reserved.
870
881
  *
@@ -881,94 +892,15 @@ function restoreElementTabState(el) {
881
892
  * limitations under the License.
882
893
  */
883
894
 
884
- var supportsPassive_ = void 0;
885
-
886
- function supportsCssVariables(windowObj) {
887
- var supportsFunctionPresent = windowObj.CSS && typeof windowObj.CSS.supports === 'function';
888
- if (!supportsFunctionPresent) {
889
- return;
890
- }
891
-
892
- var explicitlySupportsCssVars = windowObj.CSS.supports('--css-vars', 'yes');
893
- // See: https://bugs.webkit.org/show_bug.cgi?id=154669
894
- // See: README section on Safari
895
- var weAreFeatureDetectingSafari10plus = windowObj.CSS.supports('(--css-vars: yes)') && windowObj.CSS.supports('color', '#00000000');
896
- return explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;
897
- }
898
-
899
- // Determine whether the current browser supports passive event listeners, and if so, use them.
900
- function applyPassive() {
901
- var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
902
- var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
903
-
904
- if (supportsPassive_ === undefined || forceRefresh) {
905
- var isSupported = false;
906
- try {
907
- globalObj.document.addEventListener('test', null, { get passive() {
908
- isSupported = true;
909
- } });
910
- } catch (e) {}
911
-
912
- supportsPassive_ = isSupported;
913
- }
914
-
915
- return supportsPassive_ ? { passive: true } : false;
916
- }
917
-
918
- function getMatchesProperty(HTMLElementPrototype) {
919
- return ['webkitMatchesSelector', 'msMatchesSelector', 'matches'].filter(function (p) {
920
- return p in HTMLElementPrototype;
921
- }).pop();
922
- }
923
-
924
- function getNormalizedEventCoords(ev, pageOffset, clientRect) {
925
- var x = pageOffset.x,
926
- y = pageOffset.y;
927
-
928
- var documentX = x + clientRect.left;
929
- var documentY = y + clientRect.top;
930
-
931
- var normalizedX = void 0;
932
- var normalizedY = void 0;
933
- // Determine touch point relative to the ripple container.
934
- if (ev.type === 'touchstart') {
935
- normalizedX = ev.changedTouches[0].pageX - documentX;
936
- normalizedY = ev.changedTouches[0].pageY - documentY;
937
- } else {
938
- normalizedX = ev.pageX - documentX;
939
- normalizedY = ev.pageY - documentY;
940
- }
941
-
942
- return { x: normalizedX, y: normalizedY };
943
- }
944
-
945
- /***/ }),
946
- /* 9 */
947
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
895
+ /** @type {string|undefined} */
896
+ var storedTransformPropertyName_ = void 0;
948
897
 
949
- "use strict";
950
- /* harmony export (immutable) */ __webpack_exports__["a"] = getTransformPropertyName;
951
- /* harmony export (immutable) */ __webpack_exports__["b"] = clamp;
952
- /* harmony export (immutable) */ __webpack_exports__["c"] = bezierProgress;
953
898
  /**
954
- * Copyright 2016 Google Inc. All Rights Reserved.
955
- *
956
- * Licensed under the Apache License, Version 2.0 (the "License");
957
- * you may not use this file except in compliance with the License.
958
- * You may obtain a copy of the License at
959
- *
960
- * http://www.apache.org/licenses/LICENSE-2.0
961
- *
962
- * Unless required by applicable law or agreed to in writing, software
963
- * distributed under the License is distributed on an "AS IS" BASIS,
964
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
965
- * See the License for the specific language governing permissions and
966
- * limitations under the License.
899
+ * Returns the name of the correct transform property to use on the current browser.
900
+ * @param {!Window} globalObj
901
+ * @param {boolean=} forceRefresh
902
+ * @return {string}
967
903
  */
968
-
969
- var storedTransformPropertyName_ = void 0;
970
-
971
- // Returns the name of the correct transform property to use on the current browser.
972
904
  function getTransformPropertyName(globalObj) {
973
905
  var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
974
906
 
@@ -981,7 +913,13 @@ function getTransformPropertyName(globalObj) {
981
913
  return storedTransformPropertyName_;
982
914
  }
983
915
 
984
- // Clamps a value between the minimum and the maximum, returning the clamped value.
916
+ /**
917
+ * Clamps a value between the minimum and the maximum, returning the clamped value.
918
+ * @param {number} value
919
+ * @param {number} min
920
+ * @param {number} max
921
+ * @return {number}
922
+ */
985
923
  function clamp(value) {
986
924
  var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
987
925
  var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
@@ -989,22 +927,36 @@ function clamp(value) {
989
927
  return Math.min(max, Math.max(min, value));
990
928
  }
991
929
 
992
- // Returns the easing value to apply at time t, for a given cubic bezier curve.
993
- // Control points P0 and P3 are assumed to be (0,0) and (1,1), respectively.
994
- // Paramters are as follows:
995
- // - time: The current time in the animation, scaled between 0 and 1.
996
- // - x1: The x value of control point P1.
997
- // - y1: The y value of control point P1.
998
- // - x2: The x value of control point P2.
999
- // - y2: The y value of control point P2.
930
+ /**
931
+ * Returns the easing value to apply at time t, for a given cubic bezier curve.
932
+ * Control points P0 and P3 are assumed to be (0,0) and (1,1), respectively.
933
+ * Parameters are as follows:
934
+ * - time: The current time in the animation, scaled between 0 and 1.
935
+ * - x1: The x value of control point P1.
936
+ * - y1: The y value of control point P1.
937
+ * - x2: The x value of control point P2.
938
+ * - y2: The y value of control point P2.
939
+ * @param {number} time
940
+ * @param {number} x1
941
+ * @param {number} y1
942
+ * @param {number} x2
943
+ * @param {number} y2
944
+ * @return {number}
945
+ */
1000
946
  function bezierProgress(time, x1, y1, x2, y2) {
1001
947
  return getBezierCoordinate_(solvePositionFromXValue_(time, x1, x2), y1, y2);
1002
948
  }
1003
949
 
1004
- // Compute a single coordinate at a position point between 0 and 1.
1005
- // c1 and c2 are the matching coordinate on control points P1 and P2, respectively.
1006
- // Control points P0 and P3 are assumed to be (0,0) and (1,1), respectively.
1007
- // Adapted from https://github.com/google/closure-library/blob/master/closure/goog/math/bezier.js.
950
+ /**
951
+ * Compute a single coordinate at a position point between 0 and 1.
952
+ * c1 and c2 are the matching coordinate on control points P1 and P2, respectively.
953
+ * Control points P0 and P3 are assumed to be (0,0) and (1,1), respectively.
954
+ * Adapted from https://github.com/google/closure-library/blob/master/closure/goog/math/bezier.js.
955
+ * @param {number} t
956
+ * @param {number} c1
957
+ * @param {number} c2
958
+ * @return {number}
959
+ */
1008
960
  function getBezierCoordinate_(t, c1, c2) {
1009
961
  // Special case start and end.
1010
962
  if (t === 0 || t === 1) {
@@ -1024,8 +976,14 @@ function getBezierCoordinate_(t, c1, c2) {
1024
976
  return ic0 + t * (ic1 - ic0);
1025
977
  }
1026
978
 
1027
- // Project a point onto the Bezier curve, from a given X. Calculates the position t along the curve.
1028
- // Adapted from https://github.com/google/closure-library/blob/master/closure/goog/math/bezier.js.
979
+ /**
980
+ * Project a point onto the Bezier curve, from a given X. Calculates the position t along the curve.
981
+ * Adapted from https://github.com/google/closure-library/blob/master/closure/goog/math/bezier.js.
982
+ * @param {number} xVal
983
+ * @param {number} x1
984
+ * @param {number} x2
985
+ * @return {number}
986
+ */
1029
987
  function solvePositionFromXValue_(xVal, x1, x2) {
1030
988
  var EPSILON = 1e-6;
1031
989
  var MAX_ITERATIONS = 8;
@@ -1076,6 +1034,93 @@ function solvePositionFromXValue_(xVal, x1, x2) {
1076
1034
  return t;
1077
1035
  }
1078
1036
 
1037
+ /***/ }),
1038
+ /* 9 */
1039
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1040
+
1041
+ "use strict";
1042
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1043
+ /* harmony export (immutable) */ __webpack_exports__["supportsCssVariables"] = supportsCssVariables;
1044
+ /* harmony export (immutable) */ __webpack_exports__["applyPassive"] = applyPassive;
1045
+ /* harmony export (immutable) */ __webpack_exports__["getMatchesProperty"] = getMatchesProperty;
1046
+ /* harmony export (immutable) */ __webpack_exports__["getNormalizedEventCoords"] = getNormalizedEventCoords;
1047
+ /**
1048
+ * Copyright 2016 Google Inc. All Rights Reserved.
1049
+ *
1050
+ * Licensed under the Apache License, Version 2.0 (the "License");
1051
+ * you may not use this file except in compliance with the License.
1052
+ * You may obtain a copy of the License at
1053
+ *
1054
+ * http://www.apache.org/licenses/LICENSE-2.0
1055
+ *
1056
+ * Unless required by applicable law or agreed to in writing, software
1057
+ * distributed under the License is distributed on an "AS IS" BASIS,
1058
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1059
+ * See the License for the specific language governing permissions and
1060
+ * limitations under the License.
1061
+ */
1062
+
1063
+ var supportsPassive_ = void 0;
1064
+
1065
+ function supportsCssVariables(windowObj) {
1066
+ var supportsFunctionPresent = windowObj.CSS && typeof windowObj.CSS.supports === 'function';
1067
+ if (!supportsFunctionPresent) {
1068
+ return;
1069
+ }
1070
+
1071
+ var explicitlySupportsCssVars = windowObj.CSS.supports('--css-vars', 'yes');
1072
+ // See: https://bugs.webkit.org/show_bug.cgi?id=154669
1073
+ // See: README section on Safari
1074
+ var weAreFeatureDetectingSafari10plus = windowObj.CSS.supports('(--css-vars: yes)') && windowObj.CSS.supports('color', '#00000000');
1075
+ return explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;
1076
+ }
1077
+
1078
+ // Determine whether the current browser supports passive event listeners, and if so, use them.
1079
+ function applyPassive() {
1080
+ var globalObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
1081
+ var forceRefresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1082
+
1083
+ if (supportsPassive_ === undefined || forceRefresh) {
1084
+ var isSupported = false;
1085
+ try {
1086
+ globalObj.document.addEventListener('test', null, { get passive() {
1087
+ isSupported = true;
1088
+ } });
1089
+ } catch (e) {}
1090
+
1091
+ supportsPassive_ = isSupported;
1092
+ }
1093
+
1094
+ return supportsPassive_ ? { passive: true } : false;
1095
+ }
1096
+
1097
+ function getMatchesProperty(HTMLElementPrototype) {
1098
+ return ['webkitMatchesSelector', 'msMatchesSelector', 'matches'].filter(function (p) {
1099
+ return p in HTMLElementPrototype;
1100
+ }).pop();
1101
+ }
1102
+
1103
+ function getNormalizedEventCoords(ev, pageOffset, clientRect) {
1104
+ var x = pageOffset.x,
1105
+ y = pageOffset.y;
1106
+
1107
+ var documentX = x + clientRect.left;
1108
+ var documentY = y + clientRect.top;
1109
+
1110
+ var normalizedX = void 0;
1111
+ var normalizedY = void 0;
1112
+ // Determine touch point relative to the ripple container.
1113
+ if (ev.type === 'touchstart') {
1114
+ normalizedX = ev.changedTouches[0].pageX - documentX;
1115
+ normalizedY = ev.changedTouches[0].pageY - documentY;
1116
+ } else {
1117
+ normalizedX = ev.pageX - documentX;
1118
+ normalizedY = ev.pageY - documentY;
1119
+ }
1120
+
1121
+ return { x: normalizedX, y: normalizedY };
1122
+ }
1123
+
1079
1124
  /***/ }),
1080
1125
  /* 10 */
1081
1126
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -1133,7 +1178,7 @@ var numbers = {
1133
1178
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBar; });
1134
1179
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1135
1180
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab__ = __webpack_require__(13);
1136
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(67);
1181
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(69);
1137
1182
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1138
1183
  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; }; }();
1139
1184
 
@@ -1354,7 +1399,7 @@ var strings = {
1354
1399
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1355
1400
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
1356
1401
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(12);
1357
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(68);
1402
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(70);
1358
1403
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
1359
1404
  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); } };
1360
1405
 
@@ -1495,6 +1540,47 @@ var MDCTab = function (_MDCComponent) {
1495
1540
  /* 14 */
1496
1541
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1497
1542
 
1543
+ "use strict";
1544
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return strings; });
1545
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return cssClasses; });
1546
+ /**
1547
+ * Copyright 2016 Google Inc. All Rights Reserved.
1548
+ *
1549
+ * Licensed under the Apache License, Version 2.0 (the "License");
1550
+ * you may not use this file except in compliance with the License.
1551
+ * You may obtain a copy of the License at
1552
+ *
1553
+ * http://www.apache.org/licenses/LICENSE-2.0
1554
+ *
1555
+ * Unless required by applicable law or agreed to in writing, software
1556
+ * distributed under the License is distributed on an "AS IS" BASIS,
1557
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1558
+ * See the License for the specific language governing permissions and
1559
+ * limitations under the License.
1560
+ */
1561
+ var strings = {
1562
+ ARIA_HIDDEN: 'aria-hidden',
1563
+ ROLE: 'role',
1564
+ INPUT_SELECTOR: '.mdc-textfield__input',
1565
+ LABEL_SELECTOR: '.mdc-textfield__label'
1566
+ };
1567
+
1568
+ var cssClasses = {
1569
+ ROOT: 'mdc-textfield',
1570
+ UPGRADED: 'mdc-textfield--upgraded',
1571
+ DISABLED: 'mdc-textfield--disabled',
1572
+ FOCUSED: 'mdc-textfield--focused',
1573
+ INVALID: 'mdc-textfield--invalid',
1574
+ HELPTEXT_PERSISTENT: 'mdc-textfield-helptext--persistent',
1575
+ HELPTEXT_VALIDATION_MSG: 'mdc-textfield-helptext--validation-msg',
1576
+ LABEL_FLOAT_ABOVE: 'mdc-textfield__label--float-above',
1577
+ BOX: 'mdc-textfield--box'
1578
+ };
1579
+
1580
+ /***/ }),
1581
+ /* 15 */
1582
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1583
+
1498
1584
  "use strict";
1499
1585
  /* harmony export (immutable) */ __webpack_exports__["a"] = mdcAutoInit;
1500
1586
  /**
@@ -1573,7 +1659,7 @@ mdcAutoInit.deregisterAll = function () {
1573
1659
  };
1574
1660
 
1575
1661
  /***/ }),
1576
- /* 15 */
1662
+ /* 16 */
1577
1663
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1578
1664
 
1579
1665
  "use strict";
@@ -1581,9 +1667,9 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1581
1667
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckbox", function() { return MDCCheckbox; });
1582
1668
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1583
1669
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
1584
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(8);
1670
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(9);
1585
1671
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(3);
1586
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(31);
1672
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(32);
1587
1673
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckboxFoundation", function() { return __WEBPACK_IMPORTED_MODULE_4__foundation__["a"]; });
1588
1674
  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; };
1589
1675
 
@@ -1659,7 +1745,7 @@ var MDCCheckbox = function (_MDCComponent) {
1659
1745
  value: function initRipple_() {
1660
1746
  var _this2 = this;
1661
1747
 
1662
- var MATCHES = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__material_ripple_util__["a" /* getMatchesProperty */])(HTMLElement.prototype);
1748
+ var MATCHES = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__material_ripple_util__["getMatchesProperty"])(HTMLElement.prototype);
1663
1749
  var adapter = _extends(__WEBPACK_IMPORTED_MODULE_1__material_ripple__["MDCRipple"].createAdapter(this), {
1664
1750
  isUnbounded: function isUnbounded() {
1665
1751
  return true;
@@ -1776,7 +1862,7 @@ var MDCCheckbox = function (_MDCComponent) {
1776
1862
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1777
1863
 
1778
1864
  /***/ }),
1779
- /* 16 */
1865
+ /* 17 */
1780
1866
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1781
1867
 
1782
1868
  "use strict";
@@ -1784,8 +1870,8 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1784
1870
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialog", function() { return MDCDialog; });
1785
1871
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1786
1872
  /* 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);
1873
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(34);
1874
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(35);
1789
1875
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialogFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1790
1876
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_3__util__; });
1791
1877
  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; }; }();
@@ -1949,16 +2035,16 @@ var MDCDialog = function (_MDCComponent) {
1949
2035
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
1950
2036
 
1951
2037
  /***/ }),
1952
- /* 17 */
2038
+ /* 18 */
1953
2039
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1954
2040
 
1955
2041
  "use strict";
1956
2042
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1957
2043
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(7);
1958
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(42);
2044
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(43);
1959
2045
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawer", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["a"]; });
1960
2046
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["b"]; });
1961
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(37);
2047
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(38);
1962
2048
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawer", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["a"]; });
1963
2049
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["b"]; });
1964
2050
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_0__util__; });
@@ -1984,14 +2070,14 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1984
2070
 
1985
2071
 
1986
2072
  /***/ }),
1987
- /* 18 */
2073
+ /* 19 */
1988
2074
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1989
2075
 
1990
2076
  "use strict";
1991
2077
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1992
2078
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormField", function() { return MDCFormField; });
1993
2079
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1994
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(44);
2080
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(45);
1995
2081
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormFieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
1996
2082
  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; }; }();
1997
2083
 
@@ -2079,14 +2165,14 @@ var MDCFormField = function (_MDCComponent) {
2079
2165
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2080
2166
 
2081
2167
  /***/ }),
2082
- /* 19 */
2168
+ /* 20 */
2083
2169
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2084
2170
 
2085
2171
  "use strict";
2086
2172
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2087
2173
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridList", function() { return MDCGridList; });
2088
2174
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2089
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(46);
2175
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(47);
2090
2176
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridListFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2091
2177
  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; }; }();
2092
2178
 
@@ -2164,7 +2250,7 @@ var MDCGridList = function (_MDCComponent) {
2164
2250
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2165
2251
 
2166
2252
  /***/ }),
2167
- /* 20 */
2253
+ /* 21 */
2168
2254
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2169
2255
 
2170
2256
  "use strict";
@@ -2172,7 +2258,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2172
2258
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggle", function() { return MDCIconToggle; });
2173
2259
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2174
2260
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
2175
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(48);
2261
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(49);
2176
2262
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2177
2263
  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; };
2178
2264
 
@@ -2354,14 +2440,14 @@ var MDCIconToggle = function (_MDCComponent) {
2354
2440
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2355
2441
 
2356
2442
  /***/ }),
2357
- /* 21 */
2443
+ /* 22 */
2358
2444
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2359
2445
 
2360
2446
  "use strict";
2361
2447
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2362
2448
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgress", function() { return MDCLinearProgress; });
2363
2449
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2364
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(50);
2450
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(51);
2365
2451
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgressFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2366
2452
  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; }; }();
2367
2453
 
@@ -2468,7 +2554,7 @@ var MDCLinearProgress = function (_MDCComponent) {
2468
2554
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2469
2555
 
2470
2556
  /***/ }),
2471
- /* 22 */
2557
+ /* 23 */
2472
2558
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2473
2559
 
2474
2560
  "use strict";
@@ -2476,7 +2562,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2476
2562
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadio", function() { return MDCRadio; });
2477
2563
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2478
2564
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
2479
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(55);
2565
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(57);
2480
2566
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadioFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2481
2567
  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; };
2482
2568
 
@@ -2640,7 +2726,7 @@ var MDCRadio = function (_MDCComponent) {
2640
2726
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2641
2727
 
2642
2728
  /***/ }),
2643
- /* 23 */
2729
+ /* 24 */
2644
2730
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2645
2731
 
2646
2732
  "use strict";
@@ -2648,7 +2734,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2648
2734
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelect", function() { return MDCSelect; });
2649
2735
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2650
2736
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(6);
2651
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(59);
2737
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(61);
2652
2738
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelectFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2653
2739
  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; }; }();
2654
2740
 
@@ -2870,7 +2956,7 @@ var MDCSelect = function (_MDCComponent) {
2870
2956
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2871
2957
 
2872
2958
  /***/ }),
2873
- /* 24 */
2959
+ /* 25 */
2874
2960
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2875
2961
 
2876
2962
  "use strict";
@@ -2878,7 +2964,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2878
2964
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSlider", function() { return MDCSlider; });
2879
2965
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
2880
2966
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(10);
2881
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(60);
2967
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(62);
2882
2968
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSliderFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2883
2969
  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
2970
 
@@ -3074,14 +3160,14 @@ var MDCSlider = function (_MDCComponent) {
3074
3160
  }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
3075
3161
 
3076
3162
  /***/ }),
3077
- /* 25 */
3163
+ /* 26 */
3078
3164
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3079
3165
 
3080
3166
  "use strict";
3081
3167
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3082
3168
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbar", function() { return MDCSnackbar; });
3083
3169
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3084
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(62);
3170
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(64);
3085
3171
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(3);
3086
3172
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3087
3173
  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; }; }();
@@ -3203,7 +3289,7 @@ var MDCSnackbar = function (_MDCComponent) {
3203
3289
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3204
3290
 
3205
3291
  /***/ }),
3206
- /* 26 */
3292
+ /* 27 */
3207
3293
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3208
3294
 
3209
3295
  "use strict";
@@ -3214,7 +3300,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3214
3300
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab_bar__ = __webpack_require__(11);
3215
3301
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["a"]; });
3216
3302
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBar", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["b"]; });
3217
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__ = __webpack_require__(65);
3303
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__ = __webpack_require__(67);
3218
3304
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScrollerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["a"]; });
3219
3305
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScroller", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["b"]; });
3220
3306
  /**
@@ -3238,19 +3324,23 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3238
3324
 
3239
3325
 
3240
3326
  /***/ }),
3241
- /* 27 */
3327
+ /* 28 */
3242
3328
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3243
3329
 
3244
3330
  "use strict";
3245
3331
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3246
3332
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfield", function() { return MDCTextfield; });
3247
3333
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3248
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(70);
3249
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3334
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(2);
3335
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(14);
3336
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(71);
3337
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
3250
3338
  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; };
3251
3339
 
3252
3340
  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; }; }();
3253
3341
 
3342
+ 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); } };
3343
+
3254
3344
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3255
3345
 
3256
3346
  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; }
@@ -3279,33 +3369,44 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
3279
3369
 
3280
3370
 
3281
3371
 
3372
+
3373
+
3282
3374
  var MDCTextfield = function (_MDCComponent) {
3283
3375
  _inherits(MDCTextfield, _MDCComponent);
3284
3376
 
3285
- _createClass(MDCTextfield, null, [{
3286
- key: 'attachTo',
3287
- value: function attachTo(root) {
3288
- return new MDCTextfield(root);
3289
- }
3290
- }]);
3291
-
3292
3377
  function MDCTextfield() {
3293
- var _ref;
3294
-
3295
3378
  _classCallCheck(this, MDCTextfield);
3296
3379
 
3297
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
3298
- args[_key] = arguments[_key];
3299
- }
3300
-
3301
- var _this = _possibleConstructorReturn(this, (_ref = MDCTextfield.__proto__ || Object.getPrototypeOf(MDCTextfield)).call.apply(_ref, [this].concat(args)));
3302
-
3303
- var input = _this.input_;
3304
- _this.helptextElement = input.hasAttribute('aria-controls') ? document.getElementById(input.getAttribute('aria-controls')) : null;
3305
- return _this;
3380
+ return _possibleConstructorReturn(this, (MDCTextfield.__proto__ || Object.getPrototypeOf(MDCTextfield)).apply(this, arguments));
3306
3381
  }
3307
3382
 
3308
3383
  _createClass(MDCTextfield, [{
3384
+ key: 'initialize',
3385
+ value: function initialize() {
3386
+ var rippleFactory = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (el) {
3387
+ return new __WEBPACK_IMPORTED_MODULE_1__material_ripple__["MDCRipple"](el);
3388
+ };
3389
+
3390
+ this.input_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* strings */].INPUT_SELECTOR);
3391
+ this.label_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* strings */].LABEL_SELECTOR);
3392
+ this.helptextElement = null;
3393
+ this.ripple = null;
3394
+ if (this.input_.hasAttribute('aria-controls')) {
3395
+ this.helptextElement = document.getElementById(this.input_.getAttribute('aria-controls'));
3396
+ }
3397
+ if (this.root_.classList.contains(__WEBPACK_IMPORTED_MODULE_2__constants__["b" /* cssClasses */].BOX)) {
3398
+ this.ripple = rippleFactory(this.root_);
3399
+ };
3400
+ }
3401
+ }, {
3402
+ key: 'destroy',
3403
+ value: function destroy() {
3404
+ if (this.ripple) {
3405
+ this.ripple.destroy();
3406
+ }
3407
+ _get(MDCTextfield.prototype.__proto__ || Object.getPrototypeOf(MDCTextfield.prototype), 'destroy', this).call(this);
3408
+ }
3409
+ }, {
3309
3410
  key: 'initialSyncWithDom',
3310
3411
  value: function initialSyncWithDom() {
3311
3412
  this.disabled = this.input_.disabled;
@@ -3315,7 +3416,7 @@ var MDCTextfield = function (_MDCComponent) {
3315
3416
  value: function getDefaultFoundation() {
3316
3417
  var _this2 = this;
3317
3418
 
3318
- return new __WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */](_extends({
3419
+ return new __WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */](_extends({
3319
3420
  addClass: function addClass(className) {
3320
3421
  return _this2.root_.classList.add(className);
3321
3422
  },
@@ -3413,15 +3514,10 @@ var MDCTextfield = function (_MDCComponent) {
3413
3514
  set: function set(disabled) {
3414
3515
  this.foundation_.setDisabled(disabled);
3415
3516
  }
3416
- }, {
3417
- key: 'input_',
3418
- get: function get() {
3419
- return this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.INPUT_SELECTOR);
3420
- }
3421
- }, {
3422
- key: 'label_',
3423
- get: function get() {
3424
- return this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.LABEL_SELECTOR);
3517
+ }], [{
3518
+ key: 'attachTo',
3519
+ value: function attachTo(root) {
3520
+ return new MDCTextfield(root);
3425
3521
  }
3426
3522
  }]);
3427
3523
 
@@ -3429,15 +3525,15 @@ var MDCTextfield = function (_MDCComponent) {
3429
3525
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3430
3526
 
3431
3527
  /***/ }),
3432
- /* 28 */
3528
+ /* 29 */
3433
3529
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3434
3530
 
3435
3531
  "use strict";
3436
3532
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3437
3533
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbar", function() { return MDCToolbar; });
3438
3534
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3439
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(72);
3440
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(73);
3535
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(73);
3536
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(74);
3441
3537
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3442
3538
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_2__util__; });
3443
3539
  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; }; }();
@@ -3569,29 +3665,29 @@ var MDCToolbar = function (_MDCComponent) {
3569
3665
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3570
3666
 
3571
3667
  /***/ }),
3572
- /* 29 */
3668
+ /* 30 */
3573
3669
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3574
3670
 
3575
3671
  "use strict";
3576
3672
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3577
3673
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
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);
3674
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_checkbox__ = __webpack_require__(16);
3675
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(19);
3676
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(20);
3677
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(21);
3678
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(23);
3583
3679
  /* 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);
3680
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(17);
3681
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(18);
3682
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(28);
3683
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(26);
3684
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__ = __webpack_require__(22);
3589
3685
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_menu__ = __webpack_require__(6);
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);
3686
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_select__ = __webpack_require__(24);
3687
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__material_slider__ = __webpack_require__(25);
3688
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__material_tabs__ = __webpack_require__(27);
3689
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__material_toolbar__ = __webpack_require__(29);
3690
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__material_auto_init__ = __webpack_require__(15);
3595
3691
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "base", function() { return __WEBPACK_IMPORTED_MODULE_0__material_base__; });
3596
3692
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "checkbox", function() { return __WEBPACK_IMPORTED_MODULE_1__material_checkbox__; });
3597
3693
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "dialog", function() { return __WEBPACK_IMPORTED_MODULE_7__material_dialog__; });
@@ -3668,7 +3764,7 @@ __WEBPACK_IMPORTED_MODULE_17__material_auto_init__["a" /* default */].register('
3668
3764
 
3669
3765
 
3670
3766
  /***/ }),
3671
- /* 30 */
3767
+ /* 31 */
3672
3768
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3673
3769
 
3674
3770
  "use strict";
@@ -3720,12 +3816,12 @@ var numbers = {
3720
3816
  };
3721
3817
 
3722
3818
  /***/ }),
3723
- /* 31 */
3819
+ /* 32 */
3724
3820
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3725
3821
 
3726
3822
  "use strict";
3727
3823
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3728
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(30);
3824
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(31);
3729
3825
  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; };
3730
3826
 
3731
3827
  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; }; }();
@@ -4006,7 +4102,7 @@ function validDescriptor(inputPropDesc) {
4006
4102
  }
4007
4103
 
4008
4104
  /***/ }),
4009
- /* 32 */
4105
+ /* 33 */
4010
4106
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4011
4107
 
4012
4108
  "use strict";
@@ -4047,12 +4143,12 @@ var strings = {
4047
4143
  };
4048
4144
 
4049
4145
  /***/ }),
4050
- /* 33 */
4146
+ /* 34 */
4051
4147
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4052
4148
 
4053
4149
  "use strict";
4054
4150
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4055
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(32);
4151
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(33);
4056
4152
  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; };
4057
4153
 
4058
4154
  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; }; }();
@@ -4255,13 +4351,13 @@ var MDCDialogFoundation = function (_MDCFoundation) {
4255
4351
  /* harmony default export */ __webpack_exports__["a"] = (MDCDialogFoundation);
4256
4352
 
4257
4353
  /***/ }),
4258
- /* 34 */
4354
+ /* 35 */
4259
4355
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4260
4356
 
4261
4357
  "use strict";
4262
4358
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4263
4359
  /* harmony export (immutable) */ __webpack_exports__["createFocusTrapInstance"] = createFocusTrapInstance;
4264
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(74);
4360
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(75);
4265
4361
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_focus_trap__);
4266
4362
  /**
4267
4363
  * Copyright 2016 Google Inc. All Rights Reserved.
@@ -4291,7 +4387,7 @@ function createFocusTrapInstance(surfaceEl, acceptButtonEl) {
4291
4387
  }
4292
4388
 
4293
4389
  /***/ }),
4294
- /* 35 */
4390
+ /* 36 */
4295
4391
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4296
4392
 
4297
4393
  "use strict";
@@ -4330,12 +4426,12 @@ var strings = {
4330
4426
  };
4331
4427
 
4332
4428
  /***/ }),
4333
- /* 36 */
4429
+ /* 37 */
4334
4430
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4335
4431
 
4336
4432
  "use strict";
4337
4433
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4338
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(35);
4434
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(36);
4339
4435
  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; };
4340
4436
 
4341
4437
  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; }; }();
@@ -4408,13 +4504,13 @@ var MDCPersistentDrawerFoundation = function (_MDCSlidableDrawerFou) {
4408
4504
  /* harmony default export */ __webpack_exports__["a"] = (MDCPersistentDrawerFoundation);
4409
4505
 
4410
4506
  /***/ }),
4411
- /* 37 */
4507
+ /* 38 */
4412
4508
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4413
4509
 
4414
4510
  "use strict";
4415
4511
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCPersistentDrawer; });
4416
4512
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4417
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(36);
4513
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(37);
4418
4514
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4419
4515
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
4420
4516
  /* unused harmony reexport util */
@@ -4566,7 +4662,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
4566
4662
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
4567
4663
 
4568
4664
  /***/ }),
4569
- /* 38 */
4665
+ /* 39 */
4570
4666
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4571
4667
 
4572
4668
  "use strict";
@@ -4590,7 +4686,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
4590
4686
  var FOCUSABLE_ELEMENTS = 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), ' + 'button:not([disabled]), iframe, object, embed, [tabindex], [contenteditable]';
4591
4687
 
4592
4688
  /***/ }),
4593
- /* 39 */
4689
+ /* 40 */
4594
4690
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4595
4691
 
4596
4692
  "use strict";
@@ -4901,7 +4997,7 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4901
4997
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
4902
4998
 
4903
4999
  /***/ }),
4904
- /* 40 */
5000
+ /* 41 */
4905
5001
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4906
5002
 
4907
5003
  "use strict";
@@ -4942,12 +5038,12 @@ var strings = {
4942
5038
  };
4943
5039
 
4944
5040
  /***/ }),
4945
- /* 41 */
5041
+ /* 42 */
4946
5042
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4947
5043
 
4948
5044
  "use strict";
4949
5045
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4950
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(40);
5046
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(41);
4951
5047
  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; };
4952
5048
 
4953
5049
  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); } };
@@ -5098,13 +5194,13 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
5098
5194
  /* harmony default export */ __webpack_exports__["a"] = (MDCTemporaryDrawerFoundation);
5099
5195
 
5100
5196
  /***/ }),
5101
- /* 42 */
5197
+ /* 43 */
5102
5198
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5103
5199
 
5104
5200
  "use strict";
5105
5201
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCTemporaryDrawer; });
5106
5202
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5107
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(41);
5203
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(42);
5108
5204
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
5109
5205
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
5110
5206
  /* unused harmony reexport util */
@@ -5269,7 +5365,7 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
5269
5365
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
5270
5366
 
5271
5367
  /***/ }),
5272
- /* 43 */
5368
+ /* 44 */
5273
5369
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5274
5370
 
5275
5371
  "use strict";
@@ -5300,12 +5396,12 @@ var strings = {
5300
5396
  };
5301
5397
 
5302
5398
  /***/ }),
5303
- /* 44 */
5399
+ /* 45 */
5304
5400
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5305
5401
 
5306
5402
  "use strict";
5307
5403
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5308
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(43);
5404
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(44);
5309
5405
  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; };
5310
5406
 
5311
5407
  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; }; }();
@@ -5399,7 +5495,7 @@ var MDCFormFieldFoundation = function (_MDCFoundation) {
5399
5495
  /* harmony default export */ __webpack_exports__["a"] = (MDCFormFieldFoundation);
5400
5496
 
5401
5497
  /***/ }),
5402
- /* 45 */
5498
+ /* 46 */
5403
5499
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5404
5500
 
5405
5501
  "use strict";
@@ -5425,12 +5521,12 @@ var strings = {
5425
5521
  };
5426
5522
 
5427
5523
  /***/ }),
5428
- /* 46 */
5524
+ /* 47 */
5429
5525
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5430
5526
 
5431
5527
  "use strict";
5432
5528
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5433
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(45);
5529
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(46);
5434
5530
  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; };
5435
5531
 
5436
5532
  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; }; }();
@@ -5546,7 +5642,7 @@ var MDCGridListFoundation = function (_MDCFoundation) {
5546
5642
  /* harmony default export */ __webpack_exports__["a"] = (MDCGridListFoundation);
5547
5643
 
5548
5644
  /***/ }),
5549
- /* 47 */
5645
+ /* 48 */
5550
5646
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5551
5647
 
5552
5648
  "use strict";
@@ -5582,12 +5678,12 @@ var strings = {
5582
5678
  };
5583
5679
 
5584
5680
  /***/ }),
5585
- /* 48 */
5681
+ /* 49 */
5586
5682
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5587
5683
 
5588
5684
  "use strict";
5589
5685
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5590
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(47);
5686
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(48);
5591
5687
  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; };
5592
5688
 
5593
5689
  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; }; }();
@@ -5815,7 +5911,7 @@ function isSpace(_ref3) {
5815
5911
  }
5816
5912
 
5817
5913
  /***/ }),
5818
- /* 49 */
5914
+ /* 50 */
5819
5915
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5820
5916
 
5821
5917
  "use strict";
@@ -5849,13 +5945,13 @@ var strings = {
5849
5945
  };
5850
5946
 
5851
5947
  /***/ }),
5852
- /* 50 */
5948
+ /* 51 */
5853
5949
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5854
5950
 
5855
5951
  "use strict";
5856
5952
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5857
5953
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
5858
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(49);
5954
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(50);
5859
5955
  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; };
5860
5956
 
5861
5957
  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; }; }();
@@ -5990,10 +6086,274 @@ var MDCLinearProgressFoundation = function (_MDCFoundation) {
5990
6086
  return MDCLinearProgressFoundation;
5991
6087
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
5992
6088
 
5993
- /* harmony default export */ __webpack_exports__["a"] = (MDCLinearProgressFoundation);
6089
+ /* harmony default export */ __webpack_exports__["a"] = (MDCLinearProgressFoundation);
6090
+
6091
+ /***/ }),
6092
+ /* 52 */
6093
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6094
+
6095
+ "use strict";
6096
+ 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; }; }();
6097
+
6098
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6099
+
6100
+ /**
6101
+ * Copyright 2016 Google Inc. All Rights Reserved.
6102
+ *
6103
+ * Licensed under the Apache License, Version 2.0 (the "License");
6104
+ * you may not use this file except in compliance with the License.
6105
+ * You may obtain a copy of the License at
6106
+ *
6107
+ * http://www.apache.org/licenses/LICENSE-2.0
6108
+ *
6109
+ * Unless required by applicable law or agreed to in writing, software
6110
+ * distributed under the License is distributed on an "AS IS" BASIS,
6111
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
6112
+ * See the License for the specific language governing permissions and
6113
+ * limitations under the License.
6114
+ */
6115
+
6116
+ /* eslint no-unused-vars: [2, {"args": "none"}] */
6117
+
6118
+ /**
6119
+ * Adapter for MDC Simple Menu. Provides an interface for managing
6120
+ * - classes
6121
+ * - dom
6122
+ * - focus
6123
+ * - position
6124
+ * - dimensions
6125
+ * - event handlers
6126
+ *
6127
+ * Additionally, provides type information for the adapter to the Closure
6128
+ * compiler.
6129
+ *
6130
+ * Implement this adapter for your framework of choice to delegate updates to
6131
+ * the component in your framework of choice. See architecture documentation
6132
+ * for more details.
6133
+ * https://github.com/material-components/material-components-web/blob/master/docs/architecture.md
6134
+ *
6135
+ * @record
6136
+ */
6137
+ var MDCSimpleMenuAdapter = function () {
6138
+ function MDCSimpleMenuAdapter() {
6139
+ _classCallCheck(this, MDCSimpleMenuAdapter);
6140
+ }
6141
+
6142
+ _createClass(MDCSimpleMenuAdapter, [{
6143
+ key: "addClass",
6144
+
6145
+ /** @param {string} className */
6146
+ value: function addClass(className) {}
6147
+
6148
+ /** @param {string} className */
6149
+
6150
+ }, {
6151
+ key: "removeClass",
6152
+ value: function removeClass(className) {}
6153
+
6154
+ /**
6155
+ * @param {string} className
6156
+ * @return {boolean}
6157
+ */
6158
+
6159
+ }, {
6160
+ key: "hasClass",
6161
+ value: function hasClass(className) {}
6162
+
6163
+ /** @return {boolean} */
6164
+
6165
+ }, {
6166
+ key: "hasNecessaryDom",
6167
+ value: function hasNecessaryDom() {}
6168
+
6169
+ /**
6170
+ * @param {EventTarget} target
6171
+ * @param {string} attributeName
6172
+ * @return {string}
6173
+ */
6174
+
6175
+ }, {
6176
+ key: "getAttributeForEventTarget",
6177
+ value: function getAttributeForEventTarget(target, attributeName) {}
6178
+
6179
+ /** @return {{ width: number, height: number }} */
6180
+
6181
+ }, {
6182
+ key: "getInnerDimensions",
6183
+ value: function getInnerDimensions() {}
6184
+
6185
+ /** @return {boolean} */
6186
+
6187
+ }, {
6188
+ key: "hasAnchor",
6189
+ value: function hasAnchor() {}
6190
+
6191
+ /** @return {{width: number, height: number, top: number, right: number, bottom: number, left: number}} */
6192
+
6193
+ }, {
6194
+ key: "getAnchorDimensions",
6195
+ value: function getAnchorDimensions() {}
6196
+
6197
+ /** @return {{ width: number, height: number }} */
6198
+
6199
+ }, {
6200
+ key: "getWindowDimensions",
6201
+ value: function getWindowDimensions() {}
6202
+
6203
+ /**
6204
+ * @param {number} x
6205
+ * @param {number} y
6206
+ */
6207
+
6208
+ }, {
6209
+ key: "setScale",
6210
+ value: function setScale(x, y) {}
6211
+
6212
+ /**
6213
+ * @param {number} x
6214
+ * @param {number} y
6215
+ */
6216
+
6217
+ }, {
6218
+ key: "setInnerScale",
6219
+ value: function setInnerScale(x, y) {}
6220
+
6221
+ /** @return {number} */
6222
+
6223
+ }, {
6224
+ key: "getNumberOfItems",
6225
+ value: function getNumberOfItems() {}
6226
+
6227
+ /**
6228
+ * @param {string} type
6229
+ * @param {function(!Event)} handler
6230
+ */
6231
+
6232
+ }, {
6233
+ key: "registerInteractionHandler",
6234
+ value: function registerInteractionHandler(type, handler) {}
6235
+
6236
+ /**
6237
+ * @param {string} type
6238
+ * @param {function(!Event)} handler
6239
+ */
6240
+
6241
+ }, {
6242
+ key: "deregisterInteractionHandler",
6243
+ value: function deregisterInteractionHandler(type, handler) {}
6244
+
6245
+ /** @param {function(!Event)} handler */
6246
+
6247
+ }, {
6248
+ key: "registerBodyClickHandler",
6249
+ value: function registerBodyClickHandler(handler) {}
6250
+
6251
+ /** @param {function(!Event)} handler */
6252
+
6253
+ }, {
6254
+ key: "deregisterBodyClickHandler",
6255
+ value: function deregisterBodyClickHandler(handler) {}
6256
+
6257
+ /**
6258
+ * @param {number} index
6259
+ * @return {{top: number, height: number}}
6260
+ */
6261
+
6262
+ }, {
6263
+ key: "getYParamsForItemAtIndex",
6264
+ value: function getYParamsForItemAtIndex(index) {}
6265
+
6266
+ /**
6267
+ * @param {number} index
6268
+ * @param {string|null} value
6269
+ */
6270
+
6271
+ }, {
6272
+ key: "setTransitionDelayForItemAtIndex",
6273
+ value: function setTransitionDelayForItemAtIndex(index, value) {}
6274
+
6275
+ /**
6276
+ * @param {EventTarget} target
6277
+ * @return {number}
6278
+ */
6279
+
6280
+ }, {
6281
+ key: "getIndexForEventTarget",
6282
+ value: function getIndexForEventTarget(target) {}
6283
+
6284
+ /** @param {{index: number}} evtData */
6285
+
6286
+ }, {
6287
+ key: "notifySelected",
6288
+ value: function notifySelected(evtData) {}
6289
+ }, {
6290
+ key: "notifyCancel",
6291
+ value: function notifyCancel() {}
6292
+ }, {
6293
+ key: "saveFocus",
6294
+ value: function saveFocus() {}
6295
+ }, {
6296
+ key: "restoreFocus",
6297
+ value: function restoreFocus() {}
6298
+
6299
+ /** @return {boolean} */
6300
+
6301
+ }, {
6302
+ key: "isFocused",
6303
+ value: function isFocused() {}
6304
+ }, {
6305
+ key: "focus",
6306
+ value: function focus() {}
6307
+
6308
+ /** @return {number} */
6309
+
6310
+ }, {
6311
+ key: "getFocusedItemIndex",
6312
+ value: function getFocusedItemIndex() /* number */{}
6313
+
6314
+ /** @param {number} index */
6315
+
6316
+ }, {
6317
+ key: "focusItemAtIndex",
6318
+ value: function focusItemAtIndex(index) {}
6319
+
6320
+ /** @return {boolean} */
6321
+
6322
+ }, {
6323
+ key: "isRtl",
6324
+ value: function isRtl() {}
6325
+
6326
+ /** @param {string} origin */
6327
+
6328
+ }, {
6329
+ key: "setTransformOrigin",
6330
+ value: function setTransformOrigin(origin) {}
6331
+
6332
+ /** @param {{
6333
+ * top: (string|undefined),
6334
+ * right: (string|undefined),
6335
+ * bottom: (string|undefined),
6336
+ * left: (string|undefined)
6337
+ * }} position */
6338
+
6339
+ }, {
6340
+ key: "setPosition",
6341
+ value: function setPosition(position) {}
6342
+
6343
+ /** @return {number} */
6344
+
6345
+ }, {
6346
+ key: "getAccurateTime",
6347
+ value: function getAccurateTime() {}
6348
+ }]);
6349
+
6350
+ return MDCSimpleMenuAdapter;
6351
+ }();
6352
+
6353
+ /* unused harmony default export */ var _unused_webpack_default_export = (MDCSimpleMenuAdapter);
5994
6354
 
5995
6355
  /***/ }),
5996
- /* 51 */
6356
+ /* 53 */
5997
6357
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5998
6358
 
5999
6359
  "use strict";
@@ -6015,6 +6375,8 @@ var MDCLinearProgressFoundation = function (_MDCFoundation) {
6015
6375
  * See the License for the specific language governing permissions and
6016
6376
  * limitations under the License.
6017
6377
  */
6378
+
6379
+ /** @enum {string} */
6018
6380
  var cssClasses = {
6019
6381
  ROOT: 'mdc-simple-menu',
6020
6382
  OPEN: 'mdc-simple-menu--open',
@@ -6024,6 +6386,7 @@ var cssClasses = {
6024
6386
  BOTTOM_RIGHT: 'mdc-simple-menu--open-from-bottom-right'
6025
6387
  };
6026
6388
 
6389
+ /** @enum {string} */
6027
6390
  var strings = {
6028
6391
  ITEMS_SELECTOR: '.mdc-simple-menu__items',
6029
6392
  SELECTED_EVENT: 'MDCSimpleMenu:selected',
@@ -6031,6 +6394,7 @@ var strings = {
6031
6394
  ARIA_DISABLED_ATTR: 'aria-disabled'
6032
6395
  };
6033
6396
 
6397
+ /** @enum {number} */
6034
6398
  var numbers = {
6035
6399
  // Amount of time to wait before triggering a selected event on the menu. Note that this time
6036
6400
  // will most likely be bumped up once interactive lists are supported to allow for the ripple to
@@ -6050,13 +6414,14 @@ var numbers = {
6050
6414
  };
6051
6415
 
6052
6416
  /***/ }),
6053
- /* 52 */
6417
+ /* 54 */
6054
6418
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6055
6419
 
6056
6420
  "use strict";
6057
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6058
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(51);
6059
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
6421
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
6422
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__adapter__ = __webpack_require__(52);
6423
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(53);
6424
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(8);
6060
6425
  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; };
6061
6426
 
6062
6427
  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; }; }();
@@ -6089,127 +6454,159 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
6089
6454
 
6090
6455
 
6091
6456
 
6457
+
6458
+ /**
6459
+ * @extends {MDCFoundation<!MDCSimpleMenuAdapter>}
6460
+ */
6461
+
6092
6462
  var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6093
6463
  _inherits(MDCSimpleMenuFoundation, _MDCFoundation);
6094
6464
 
6095
6465
  _createClass(MDCSimpleMenuFoundation, null, [{
6096
6466
  key: 'cssClasses',
6467
+
6468
+ /** @return enum{cssClasses} */
6097
6469
  get: function get() {
6098
- return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
6470
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */];
6099
6471
  }
6472
+
6473
+ /** @return enum{strings} */
6474
+
6100
6475
  }, {
6101
6476
  key: 'strings',
6102
6477
  get: function get() {
6103
- return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
6478
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */];
6104
6479
  }
6480
+
6481
+ /** @return enum{numbers} */
6482
+
6105
6483
  }, {
6106
6484
  key: 'numbers',
6107
6485
  get: function get() {
6108
- return __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */];
6486
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["c" /* numbers */];
6109
6487
  }
6488
+
6489
+ /**
6490
+ * {@see MDCSimpleMenuAdapter} for typing information on parameters and return
6491
+ * types.
6492
+ * @return {!MDCSimpleMenuAdapter}
6493
+ */
6494
+
6110
6495
  }, {
6111
6496
  key: 'defaultAdapter',
6112
6497
  get: function get() {
6113
- return {
6114
- addClass: function addClass() /* className: string */{},
6115
- removeClass: function removeClass() /* className: string */{},
6116
- hasClass: function hasClass() /* className: string */{},
6117
- hasNecessaryDom: function hasNecessaryDom() {
6118
- return (/* boolean */false
6119
- );
6120
- },
6121
- getAttributeForEventTarget: function getAttributeForEventTarget() /* target: EventTarget, attributeName: string */{},
6122
- getInnerDimensions: function getInnerDimensions() {
6123
- return (/* { width: number, height: number } */{}
6124
- );
6125
- },
6126
- hasAnchor: function hasAnchor() {
6127
- return (/* boolean */false
6128
- );
6129
- },
6130
- getAnchorDimensions: function getAnchorDimensions() {
6131
- return (
6132
- /* { width: number, height: number, top: number, right: number, bottom: number, left: number } */{}
6133
- );
6134
- },
6135
- getWindowDimensions: function getWindowDimensions() {
6136
- return (/* { width: number, height: number } */{}
6137
- );
6138
- },
6139
- setScale: function setScale() /* x: number, y: number */{},
6140
- setInnerScale: function setInnerScale() /* x: number, y: number */{},
6141
- getNumberOfItems: function getNumberOfItems() {
6142
- return (/* number */0
6143
- );
6144
- },
6145
- registerInteractionHandler: function registerInteractionHandler() /* type: string, handler: EventListener */{},
6146
- deregisterInteractionHandler: function deregisterInteractionHandler() /* type: string, handler: EventListener */{},
6147
- registerBodyClickHandler: function registerBodyClickHandler() /* handler: EventListener */{},
6148
- deregisterBodyClickHandler: function deregisterBodyClickHandler() /* handler: EventListener */{},
6149
- getYParamsForItemAtIndex: function getYParamsForItemAtIndex() {
6150
- return (/* index: number */ /* {top: number, height: number} */{}
6151
- );
6152
- },
6153
- setTransitionDelayForItemAtIndex: function setTransitionDelayForItemAtIndex() /* index: number, value: string */{},
6154
- getIndexForEventTarget: function getIndexForEventTarget() {
6155
- return (/* target: EventTarget */ /* number */0
6156
- );
6157
- },
6158
- notifySelected: function notifySelected() /* evtData: {index: number} */{},
6159
- notifyCancel: function notifyCancel() {},
6160
- saveFocus: function saveFocus() {},
6161
- restoreFocus: function restoreFocus() {},
6162
- isFocused: function isFocused() {
6163
- return (/* boolean */false
6164
- );
6165
- },
6166
- focus: function focus() {},
6167
- getFocusedItemIndex: function getFocusedItemIndex() {
6168
- return (/* number */-1
6169
- );
6170
- },
6171
- focusItemAtIndex: function focusItemAtIndex() /* index: number */{},
6172
- isRtl: function isRtl() {
6173
- return (/* boolean */false
6174
- );
6175
- },
6176
- setTransformOrigin: function setTransformOrigin() /* origin: string */{},
6177
- setPosition: function setPosition() /* position: { top: string, right: string, bottom: string, left: string } */{},
6178
- getAccurateTime: function getAccurateTime() {
6179
- return (/* number */0
6180
- );
6498
+ return (/** @type {!MDCSimpleMenuAdapter} */{
6499
+ addClass: function addClass() {},
6500
+ removeClass: function removeClass() {},
6501
+ hasClass: function hasClass() {
6502
+ return false;
6503
+ },
6504
+ hasNecessaryDom: function hasNecessaryDom() {
6505
+ return false;
6506
+ },
6507
+ getAttributeForEventTarget: function getAttributeForEventTarget() {},
6508
+ getInnerDimensions: function getInnerDimensions() {
6509
+ return {};
6510
+ },
6511
+ hasAnchor: function hasAnchor() {
6512
+ return false;
6513
+ },
6514
+ getAnchorDimensions: function getAnchorDimensions() {
6515
+ return {};
6516
+ },
6517
+ getWindowDimensions: function getWindowDimensions() {
6518
+ return {};
6519
+ },
6520
+ setScale: function setScale() {},
6521
+ setInnerScale: function setInnerScale() {},
6522
+ getNumberOfItems: function getNumberOfItems() {
6523
+ return 0;
6524
+ },
6525
+ registerInteractionHandler: function registerInteractionHandler() {},
6526
+ deregisterInteractionHandler: function deregisterInteractionHandler() {},
6527
+ registerBodyClickHandler: function registerBodyClickHandler() {},
6528
+ deregisterBodyClickHandler: function deregisterBodyClickHandler() {},
6529
+ getYParamsForItemAtIndex: function getYParamsForItemAtIndex() {
6530
+ return {};
6531
+ },
6532
+ setTransitionDelayForItemAtIndex: function setTransitionDelayForItemAtIndex() {},
6533
+ getIndexForEventTarget: function getIndexForEventTarget() {
6534
+ return 0;
6535
+ },
6536
+ notifySelected: function notifySelected() {},
6537
+ notifyCancel: function notifyCancel() {},
6538
+ saveFocus: function saveFocus() {},
6539
+ restoreFocus: function restoreFocus() {},
6540
+ isFocused: function isFocused() {
6541
+ return false;
6542
+ },
6543
+ focus: function focus() {},
6544
+ getFocusedItemIndex: function getFocusedItemIndex() {
6545
+ return -1;
6546
+ },
6547
+ focusItemAtIndex: function focusItemAtIndex() {},
6548
+ isRtl: function isRtl() {
6549
+ return false;
6550
+ },
6551
+ setTransformOrigin: function setTransformOrigin() {},
6552
+ setPosition: function setPosition() {},
6553
+ getAccurateTime: function getAccurateTime() {
6554
+ return 0;
6555
+ }
6181
6556
  }
6182
- };
6557
+ );
6183
6558
  }
6559
+
6560
+ /** @param {!MDCSimpleMenuAdapter} adapter */
6561
+
6184
6562
  }]);
6185
6563
 
6186
6564
  function MDCSimpleMenuFoundation(adapter) {
6187
6565
  _classCallCheck(this, MDCSimpleMenuFoundation);
6188
6566
 
6567
+ /** @private {function(!Event)} */
6189
6568
  var _this = _possibleConstructorReturn(this, (MDCSimpleMenuFoundation.__proto__ || Object.getPrototypeOf(MDCSimpleMenuFoundation)).call(this, _extends(MDCSimpleMenuFoundation.defaultAdapter, adapter)));
6190
6569
 
6191
6570
  _this.clickHandler_ = function (evt) {
6192
6571
  return _this.handlePossibleSelected_(evt);
6193
6572
  };
6573
+ /** @private {function(!Event)} */
6194
6574
  _this.keydownHandler_ = function (evt) {
6195
6575
  return _this.handleKeyboardDown_(evt);
6196
6576
  };
6577
+ /** @private {function(!Event)} */
6197
6578
  _this.keyupHandler_ = function (evt) {
6198
6579
  return _this.handleKeyboardUp_(evt);
6199
6580
  };
6581
+ /** @private {function(!Event)} */
6200
6582
  _this.documentClickHandler_ = function (evt) {
6201
6583
  _this.adapter_.notifyCancel();
6202
6584
  _this.close(evt);
6203
6585
  };
6586
+ /** @private {boolean} */
6204
6587
  _this.isOpen_ = false;
6588
+ /** @private {number} */
6205
6589
  _this.startScaleX_ = 0;
6590
+ /** @private {number} */
6206
6591
  _this.startScaleY_ = 0;
6592
+ /** @private {number} */
6207
6593
  _this.targetScale_ = 1;
6594
+ /** @private {number} */
6208
6595
  _this.scaleX_ = 0;
6596
+ /** @private {number} */
6209
6597
  _this.scaleY_ = 0;
6598
+ /** @private {boolean} */
6210
6599
  _this.running_ = false;
6600
+ /** @private {number} */
6211
6601
  _this.selectedTriggerTimerId_ = 0;
6602
+ /** @private {number} */
6212
6603
  _this.animationRequestId_ = 0;
6604
+ /** @private {!{ width: number, height: number }} */
6605
+ _this.dimensions_;
6606
+ /** @private {number} */
6607
+ _this.startTime_;
6608
+ /** @private {number} */
6609
+ _this.itemHeight_;
6213
6610
  return _this;
6214
6611
  }
6215
6612
 
@@ -6249,7 +6646,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6249
6646
  this.adapter_.deregisterBodyClickHandler(this.documentClickHandler_);
6250
6647
  }
6251
6648
 
6252
- // Calculate transition delays for individual menu items, so that they fade in one at a time.
6649
+ /**
6650
+ * Calculates transition delays for individual menu items, so that they fade in one at a time.
6651
+ * @private
6652
+ */
6253
6653
 
6254
6654
  }, {
6255
6655
  key: 'applyTransitionDelays_',
@@ -6280,7 +6680,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6280
6680
  }
6281
6681
  }
6282
6682
 
6283
- // Remove transition delays from menu items.
6683
+ /**
6684
+ * Removes transition delays from menu items.
6685
+ * @private
6686
+ */
6284
6687
 
6285
6688
  }, {
6286
6689
  key: 'removeTransitionDelays_',
@@ -6291,7 +6694,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6291
6694
  }
6292
6695
  }
6293
6696
 
6294
- // Animate menu opening or closing.
6697
+ /**
6698
+ * Animates menu opening or closing.
6699
+ * @private
6700
+ */
6295
6701
 
6296
6702
  }, {
6297
6703
  key: 'animationLoop_',
@@ -6308,10 +6714,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6308
6714
  TRANSITION_SCALE_ADJUSTMENT_X = _MDCSimpleMenuFoundat3.TRANSITION_SCALE_ADJUSTMENT_X,
6309
6715
  TRANSITION_SCALE_ADJUSTMENT_Y = _MDCSimpleMenuFoundat3.TRANSITION_SCALE_ADJUSTMENT_Y;
6310
6716
 
6311
- var currentTime = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["b" /* clamp */])((time - this.startTime_) / TRANSITION_DURATION_MS);
6717
+ var currentTime = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["clamp"])((time - this.startTime_) / TRANSITION_DURATION_MS);
6312
6718
 
6313
6719
  // Animate X axis very slowly, so that only the Y axis animation is visible during fade-out.
6314
- var currentTimeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["b" /* clamp */])((currentTime - TRANSITION_SCALE_ADJUSTMENT_X) / (1 - TRANSITION_SCALE_ADJUSTMENT_X));
6720
+ var currentTimeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["clamp"])((currentTime - TRANSITION_SCALE_ADJUSTMENT_X) / (1 - TRANSITION_SCALE_ADJUSTMENT_X));
6315
6721
  // No time-shifting on the Y axis when closing.
6316
6722
  var currentTimeY = currentTime;
6317
6723
 
@@ -6322,14 +6728,14 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6322
6728
  startScaleY = Math.max(this.itemHeight_ / this.dimensions_.height, startScaleY);
6323
6729
  }
6324
6730
  // X axis moves faster, so time-shift forward.
6325
- currentTimeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["b" /* clamp */])(currentTime + TRANSITION_SCALE_ADJUSTMENT_X);
6731
+ currentTimeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["clamp"])(currentTime + TRANSITION_SCALE_ADJUSTMENT_X);
6326
6732
  // Y axis moves slower, so time-shift backwards and adjust speed by the difference.
6327
- currentTimeY = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["b" /* clamp */])((currentTime - TRANSITION_SCALE_ADJUSTMENT_Y) / (1 - TRANSITION_SCALE_ADJUSTMENT_Y));
6733
+ currentTimeY = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["clamp"])((currentTime - TRANSITION_SCALE_ADJUSTMENT_Y) / (1 - TRANSITION_SCALE_ADJUSTMENT_Y));
6328
6734
  }
6329
6735
 
6330
6736
  // Apply cubic bezier easing independently to each axis.
6331
- var easeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* bezierProgress */])(currentTimeX, TRANSITION_X1, TRANSITION_Y1, TRANSITION_X2, TRANSITION_Y2);
6332
- var easeY = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* bezierProgress */])(currentTimeY, TRANSITION_X1, TRANSITION_Y1, TRANSITION_X2, TRANSITION_Y2);
6737
+ var easeX = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["bezierProgress"])(currentTimeX, TRANSITION_X1, TRANSITION_Y1, TRANSITION_X2, TRANSITION_Y2);
6738
+ var easeY = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util__["bezierProgress"])(currentTimeY, TRANSITION_X1, TRANSITION_Y1, TRANSITION_X2, TRANSITION_Y2);
6333
6739
 
6334
6740
  // Calculate the scales to apply to the outer container and inner container.
6335
6741
  this.scaleX_ = this.startScaleX_ + (this.targetScale_ - this.startScaleX_) * easeX;
@@ -6353,7 +6759,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6353
6759
  }
6354
6760
  }
6355
6761
 
6356
- // Starts the open or close animation.
6762
+ /**
6763
+ * Starts the open or close animation.
6764
+ * @private
6765
+ */
6357
6766
 
6358
6767
  }, {
6359
6768
  key: 'animateMenu_',
@@ -6373,6 +6782,12 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6373
6782
  });
6374
6783
  }
6375
6784
  }
6785
+
6786
+ /**
6787
+ * @param {?number} focusIndex
6788
+ * @private
6789
+ */
6790
+
6376
6791
  }, {
6377
6792
  key: 'focusOnOpen_',
6378
6793
  value: function focusOnOpen_(focusIndex) {
@@ -6388,7 +6803,12 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6388
6803
  }
6389
6804
  }
6390
6805
 
6391
- // Handle keys that we want to repeat on hold (tab and arrows).
6806
+ /**
6807
+ * Handle keys that we want to repeat on hold (tab and arrows).
6808
+ * @param {!Event} evt
6809
+ * @return {boolean}
6810
+ * @private
6811
+ */
6392
6812
 
6393
6813
  }, {
6394
6814
  key: 'handleKeyboardDown_',
@@ -6444,7 +6864,12 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6444
6864
  return true;
6445
6865
  }
6446
6866
 
6447
- // Handle keys that we don't want to repeat on hold (Enter, Space, Escape).
6867
+ /**
6868
+ * Handle keys that we don't want to repeat on hold (Enter, Space, Escape).
6869
+ * @param {!Event} evt
6870
+ * @return {boolean}
6871
+ * @private
6872
+ */
6448
6873
 
6449
6874
  }, {
6450
6875
  key: 'handleKeyboardUp_',
@@ -6472,12 +6897,18 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6472
6897
 
6473
6898
  return true;
6474
6899
  }
6900
+
6901
+ /**
6902
+ * @param {!Event} evt
6903
+ * @private
6904
+ */
6905
+
6475
6906
  }, {
6476
6907
  key: 'handlePossibleSelected_',
6477
6908
  value: function handlePossibleSelected_(evt) {
6478
6909
  var _this4 = this;
6479
6910
 
6480
- if (this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true') {
6911
+ if (this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true') {
6481
6912
  return;
6482
6913
  }
6483
6914
  var targetIndex = this.adapter_.getIndexForEventTarget(evt.target);
@@ -6492,8 +6923,11 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6492
6923
  _this4.selectedTriggerTimerId_ = 0;
6493
6924
  _this4.close();
6494
6925
  _this4.adapter_.notifySelected({ index: targetIndex });
6495
- }, __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */].SELECTED_TRIGGER_DELAY);
6926
+ }, __WEBPACK_IMPORTED_MODULE_2__constants__["c" /* numbers */].SELECTED_TRIGGER_DELAY);
6496
6927
  }
6928
+
6929
+ /** @private */
6930
+
6497
6931
  }, {
6498
6932
  key: 'autoPosition_',
6499
6933
  value: function autoPosition_() {
@@ -6541,7 +6975,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6541
6975
  this.adapter_.setPosition(position);
6542
6976
  }
6543
6977
 
6544
- // Open the menu.
6978
+ /**
6979
+ * Open the menu.
6980
+ * @param {{focusIndex: ?number}=} options
6981
+ */
6545
6982
 
6546
6983
  }, {
6547
6984
  key: 'open',
@@ -6566,7 +7003,10 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6566
7003
  this.isOpen_ = true;
6567
7004
  }
6568
7005
 
6569
- // Close the menu.
7006
+ /**
7007
+ * Closes the menu.
7008
+ * @param {Event=} evt
7009
+ */
6570
7010
 
6571
7011
  }, {
6572
7012
  key: 'close',
@@ -6575,7 +7015,7 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6575
7015
 
6576
7016
  var evt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
6577
7017
 
6578
- var targetIsDisabled = evt ? this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true' : false;
7018
+ var targetIsDisabled = evt ? this.adapter_.getAttributeForEventTarget(evt.target, __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */].ARIA_DISABLED_ATTR) === 'true' : false;
6579
7019
 
6580
7020
  if (targetIsDisabled) {
6581
7021
  return;
@@ -6591,6 +7031,9 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6591
7031
  this.isOpen_ = false;
6592
7032
  this.adapter_.restoreFocus();
6593
7033
  }
7034
+
7035
+ /** @return {boolean} */
7036
+
6594
7037
  }, {
6595
7038
  key: 'isOpen',
6596
7039
  value: function isOpen() {
@@ -6599,19 +7042,19 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
6599
7042
  }]);
6600
7043
 
6601
7044
  return MDCSimpleMenuFoundation;
6602
- }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
7045
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_foundation__["a" /* default */]);
6603
7046
 
6604
7047
  /* harmony default export */ __webpack_exports__["a"] = (MDCSimpleMenuFoundation);
6605
7048
 
6606
7049
  /***/ }),
6607
- /* 53 */
7050
+ /* 55 */
6608
7051
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6609
7052
 
6610
7053
  "use strict";
6611
7054
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCSimpleMenu; });
6612
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6613
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(52);
6614
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
7055
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
7056
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(54);
7057
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
6615
7058
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
6616
7059
  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; }; }();
6617
7060
 
@@ -6643,21 +7086,44 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
6643
7086
 
6644
7087
 
6645
7088
 
7089
+ /**
7090
+ * @extends MDCComponent<!MDCSimpleMenuFoundation>
7091
+ */
6646
7092
  var MDCSimpleMenu = function (_MDCComponent) {
6647
7093
  _inherits(MDCSimpleMenu, _MDCComponent);
6648
7094
 
7095
+ /** @param {...?} args */
6649
7096
  function MDCSimpleMenu() {
7097
+ var _ref;
7098
+
6650
7099
  _classCallCheck(this, MDCSimpleMenu);
6651
7100
 
6652
- return _possibleConstructorReturn(this, (MDCSimpleMenu.__proto__ || Object.getPrototypeOf(MDCSimpleMenu)).apply(this, arguments));
7101
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
7102
+ args[_key] = arguments[_key];
7103
+ }
7104
+
7105
+ /** @private {!Element} */
7106
+ var _this = _possibleConstructorReturn(this, (_ref = MDCSimpleMenu.__proto__ || Object.getPrototypeOf(MDCSimpleMenu)).call.apply(_ref, [this].concat(args)));
7107
+
7108
+ _this.previousFocus_;
7109
+ return _this;
6653
7110
  }
6654
7111
 
7112
+ /**
7113
+ * @param {!Element} root
7114
+ * @return {!MDCSimpleMenu}
7115
+ */
7116
+
7117
+
6655
7118
  _createClass(MDCSimpleMenu, [{
6656
7119
  key: 'show',
7120
+
7121
+
7122
+ /** @param {{focusIndex: ?number}=} options */
6657
7123
  value: function show() {
6658
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
6659
- _ref$focusIndex = _ref.focusIndex,
6660
- focusIndex = _ref$focusIndex === undefined ? null : _ref$focusIndex;
7124
+ var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
7125
+ _ref2$focusIndex = _ref2.focusIndex,
7126
+ focusIndex = _ref2$focusIndex === undefined ? null : _ref2$focusIndex;
6661
7127
 
6662
7128
  this.foundation_.open({ focusIndex: focusIndex });
6663
7129
  }
@@ -6667,10 +7133,16 @@ var MDCSimpleMenu = function (_MDCComponent) {
6667
7133
  this.foundation_.close();
6668
7134
  }
6669
7135
 
6670
- /* Return the item container element inside the component. */
7136
+ /**
7137
+ * Return the item container element inside the component.
7138
+ * @return {?Element}
7139
+ */
6671
7140
 
6672
7141
  }, {
6673
7142
  key: 'getDefaultFoundation',
7143
+
7144
+
7145
+ /** @return {!MDCSimpleMenuFoundation} */
6674
7146
  value: function getDefaultFoundation() {
6675
7147
  var _this2 = this;
6676
7148
 
@@ -6705,10 +7177,10 @@ var MDCSimpleMenu = function (_MDCComponent) {
6705
7177
  return { width: window.innerWidth, height: window.innerHeight };
6706
7178
  },
6707
7179
  setScale: function setScale(x, y) {
6708
- _this2.root_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* getTransformPropertyName */])(window)] = 'scale(' + x + ', ' + y + ')';
7180
+ _this2.root_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["getTransformPropertyName"])(window)] = 'scale(' + x + ', ' + y + ')';
6709
7181
  },
6710
7182
  setInnerScale: function setInnerScale(x, y) {
6711
- _this2.itemsContainer_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* getTransformPropertyName */])(window)] = 'scale(' + x + ', ' + y + ')';
7183
+ _this2.itemsContainer_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["getTransformPropertyName"])(window)] = 'scale(' + x + ', ' + y + ')';
6712
7184
  },
6713
7185
  getNumberOfItems: function getNumberOfItems() {
6714
7186
  return _this2.items.length;
@@ -6745,7 +7217,7 @@ var MDCSimpleMenu = function (_MDCComponent) {
6745
7217
  });
6746
7218
  },
6747
7219
  notifyCancel: function notifyCancel() {
6748
- return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CANCEL_EVENT);
7220
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CANCEL_EVENT, {});
6749
7221
  },
6750
7222
  saveFocus: function saveFocus() {
6751
7223
  _this2.previousFocus_ = document.activeElement;
@@ -6771,7 +7243,7 @@ var MDCSimpleMenu = function (_MDCComponent) {
6771
7243
  return getComputedStyle(_this2.root_).getPropertyValue('direction') === 'rtl';
6772
7244
  },
6773
7245
  setTransformOrigin: function setTransformOrigin(origin) {
6774
- _this2.root_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["a" /* getTransformPropertyName */])(window) + '-origin'] = origin;
7246
+ _this2.root_.style[__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["getTransformPropertyName"])(window) + '-origin'] = origin;
6775
7247
  },
6776
7248
  setPosition: function setPosition(position) {
6777
7249
  _this2.root_.style.left = 'left' in position ? position.left : null;
@@ -6786,9 +7258,15 @@ var MDCSimpleMenu = function (_MDCComponent) {
6786
7258
  }
6787
7259
  }, {
6788
7260
  key: 'open',
7261
+
7262
+
7263
+ /** @return {boolean} */
6789
7264
  get: function get() {
6790
7265
  return this.foundation_.isOpen();
6791
- },
7266
+ }
7267
+
7268
+ /** @param {boolean} value */
7269
+ ,
6792
7270
  set: function set(value) {
6793
7271
  if (value) {
6794
7272
  this.foundation_.open();
@@ -6802,9 +7280,11 @@ var MDCSimpleMenu = function (_MDCComponent) {
6802
7280
  return this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.ITEMS_SELECTOR);
6803
7281
  }
6804
7282
 
6805
- /* Return the items within the menu. Note that this only contains the set of elements within
7283
+ /**
7284
+ * Return the items within the menu. Note that this only contains the set of elements within
6806
7285
  * the items container that are proper list items, and not supplemental / presentational DOM
6807
7286
  * elements.
7287
+ * @return {!Array<!Element>}
6808
7288
  */
6809
7289
 
6810
7290
  }, {
@@ -6822,10 +7302,10 @@ var MDCSimpleMenu = function (_MDCComponent) {
6822
7302
  }]);
6823
7303
 
6824
7304
  return MDCSimpleMenu;
6825
- }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
7305
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
6826
7306
 
6827
7307
  /***/ }),
6828
- /* 54 */
7308
+ /* 56 */
6829
7309
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6830
7310
 
6831
7311
  "use strict";
@@ -6856,12 +7336,12 @@ var cssClasses = {
6856
7336
  };
6857
7337
 
6858
7338
  /***/ }),
6859
- /* 55 */
7339
+ /* 57 */
6860
7340
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6861
7341
 
6862
7342
  "use strict";
6863
7343
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6864
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(54);
7344
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(56);
6865
7345
  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; }; }();
6866
7346
 
6867
7347
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -6971,7 +7451,7 @@ var MDCRadioFoundation = function (_MDCFoundation) {
6971
7451
  /* harmony default export */ __webpack_exports__["a"] = (MDCRadioFoundation);
6972
7452
 
6973
7453
  /***/ }),
6974
- /* 56 */
7454
+ /* 58 */
6975
7455
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6976
7456
 
6977
7457
  "use strict";
@@ -7020,17 +7500,18 @@ var strings = {
7020
7500
  var numbers = {
7021
7501
  PADDING: 10,
7022
7502
  INITIAL_ORIGIN_SCALE: 0.6,
7023
- DEACTIVATION_TIMEOUT_MS: 300
7503
+ DEACTIVATION_TIMEOUT_MS: 300,
7504
+ FG_DEACTIVATION_MS: 83
7024
7505
  };
7025
7506
 
7026
7507
  /***/ }),
7027
- /* 57 */
7508
+ /* 59 */
7028
7509
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7029
7510
 
7030
7511
  "use strict";
7031
7512
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7032
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(56);
7033
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
7513
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(58);
7514
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
7034
7515
  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; };
7035
7516
 
7036
7517
  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; }; }();
@@ -7159,6 +7640,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7159
7640
  };
7160
7641
  _this.fgScale_ = 0;
7161
7642
  _this.activationTimer_ = 0;
7643
+ _this.fgDeactivationRemovalTimer_ = 0;
7162
7644
  _this.activationAnimationHasEnded_ = false;
7163
7645
  _this.activationTimerCallback_ = function () {
7164
7646
  _this.activationAnimationHasEnded_ = true;
@@ -7286,6 +7768,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7286
7768
  this.adapter_.updateCssVariable(VAR_FG_TRANSLATE_END, translateEnd);
7287
7769
  // Cancel any ongoing activation/deactivation animations
7288
7770
  clearTimeout(this.activationTimer_);
7771
+ clearTimeout(this.fgDeactivationRemovalTimer_);
7289
7772
  this.rmBoundedActivationClasses_();
7290
7773
  this.adapter_.removeClass(FG_DEACTIVATION);
7291
7774
 
@@ -7307,7 +7790,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7307
7790
 
7308
7791
  var startPoint = void 0;
7309
7792
  if (wasActivatedByPointer) {
7310
- startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["d" /* getNormalizedEventCoords */])(activationEvent, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
7793
+ startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["getNormalizedEventCoords"])(activationEvent, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
7311
7794
  } else {
7312
7795
  startPoint = {
7313
7796
  x: this.frame_.width / 2,
@@ -7330,6 +7813,8 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7330
7813
  }, {
7331
7814
  key: 'runDeactivationUXLogicIfReady_',
7332
7815
  value: function runDeactivationUXLogicIfReady_() {
7816
+ var _this6 = this;
7817
+
7333
7818
  var FG_DEACTIVATION = MDCRippleFoundation.cssClasses.FG_DEACTIVATION;
7334
7819
  var _activationState_ = this.activationState_,
7335
7820
  hasDeactivationUXRun = _activationState_.hasDeactivationUXRun,
@@ -7338,8 +7823,10 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7338
7823
  var activationHasEnded = hasDeactivationUXRun || !isActivated;
7339
7824
  if (activationHasEnded && this.activationAnimationHasEnded_) {
7340
7825
  this.rmBoundedActivationClasses_();
7341
- // Note that we don't need to remove this here since it's removed on re-activation.
7342
7826
  this.adapter_.addClass(FG_DEACTIVATION);
7827
+ this.fgDeactivationRemovalTimer_ = setTimeout(function () {
7828
+ _this6.adapter_.removeClass(FG_DEACTIVATION);
7829
+ }, __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */].FG_DEACTIVATION_MS);
7343
7830
  }
7344
7831
  }
7345
7832
  }, {
@@ -7357,7 +7844,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7357
7844
  }, {
7358
7845
  key: 'deactivate_',
7359
7846
  value: function deactivate_(e) {
7360
- var _this6 = this;
7847
+ var _this7 = this;
7361
7848
 
7362
7849
  var activationState = this.activationState_;
7363
7850
  // This can happen in scenarios such as when you have a keyup event that blurs the element.
@@ -7369,7 +7856,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7369
7856
  if (activationState.isProgrammatic) {
7370
7857
  var evtObject = null;
7371
7858
  requestAnimationFrame(function () {
7372
- return _this6.animateDeactivation_(evtObject, _extends({}, activationState));
7859
+ return _this7.animateDeactivation_(evtObject, _extends({}, activationState));
7373
7860
  });
7374
7861
  this.activationState_ = this.defaultActivationState_();
7375
7862
  return;
@@ -7390,12 +7877,12 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7390
7877
  var state = _extends({}, activationState);
7391
7878
  requestAnimationFrame(function () {
7392
7879
  if (needsDeactivationUX) {
7393
- _this6.activationState_.hasDeactivationUXRun = true;
7394
- _this6.animateDeactivation_(e, state);
7880
+ _this7.activationState_.hasDeactivationUXRun = true;
7881
+ _this7.animateDeactivation_(e, state);
7395
7882
  }
7396
7883
 
7397
7884
  if (needsActualDeactivation) {
7398
- _this6.activationState_ = _this6.defaultActivationState_();
7885
+ _this7.activationState_ = _this7.defaultActivationState_();
7399
7886
  }
7400
7887
  });
7401
7888
  }
@@ -7420,7 +7907,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7420
7907
  }, {
7421
7908
  key: 'destroy',
7422
7909
  value: function destroy() {
7423
- var _this7 = this;
7910
+ var _this8 = this;
7424
7911
 
7425
7912
  if (!this.isSupported_) {
7426
7913
  return;
@@ -7432,19 +7919,19 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7432
7919
  UNBOUNDED = _MDCRippleFoundation$5.UNBOUNDED;
7433
7920
 
7434
7921
  requestAnimationFrame(function () {
7435
- _this7.adapter_.removeClass(ROOT);
7436
- _this7.adapter_.removeClass(UNBOUNDED);
7437
- _this7.removeCssVars_();
7922
+ _this8.adapter_.removeClass(ROOT);
7923
+ _this8.adapter_.removeClass(UNBOUNDED);
7924
+ _this8.removeCssVars_();
7438
7925
  });
7439
7926
  }
7440
7927
  }, {
7441
7928
  key: 'removeEventListeners_',
7442
7929
  value: function removeEventListeners_() {
7443
- var _this8 = this;
7930
+ var _this9 = this;
7444
7931
 
7445
7932
  this.listenerInfos_.forEach(function (info) {
7446
7933
  Object.keys(info).forEach(function (k) {
7447
- _this8.adapter_.deregisterInteractionHandler(info[k], _this8.listeners_[k]);
7934
+ _this9.adapter_.deregisterInteractionHandler(info[k], _this9.listeners_[k]);
7448
7935
  });
7449
7936
  });
7450
7937
  this.adapter_.deregisterResizeHandler(this.resizeHandler_);
@@ -7452,27 +7939,27 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7452
7939
  }, {
7453
7940
  key: 'removeCssVars_',
7454
7941
  value: function removeCssVars_() {
7455
- var _this9 = this;
7942
+ var _this10 = this;
7456
7943
 
7457
7944
  var strings = MDCRippleFoundation.strings;
7458
7945
 
7459
7946
  Object.keys(strings).forEach(function (k) {
7460
7947
  if (k.indexOf('VAR_') === 0) {
7461
- _this9.adapter_.updateCssVariable(strings[k], null);
7948
+ _this10.adapter_.updateCssVariable(strings[k], null);
7462
7949
  }
7463
7950
  });
7464
7951
  }
7465
7952
  }, {
7466
7953
  key: 'layout',
7467
7954
  value: function layout() {
7468
- var _this10 = this;
7955
+ var _this11 = this;
7469
7956
 
7470
7957
  if (this.layoutFrame_) {
7471
7958
  cancelAnimationFrame(this.layoutFrame_);
7472
7959
  }
7473
7960
  this.layoutFrame_ = requestAnimationFrame(function () {
7474
- _this10.layoutInternal_();
7475
- _this10.layoutFrame_ = 0;
7961
+ _this11.layoutInternal_();
7962
+ _this11.layoutFrame_ = 0;
7476
7963
  });
7477
7964
  }
7478
7965
  }, {
@@ -7527,7 +8014,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
7527
8014
  /* harmony default export */ __webpack_exports__["a"] = (MDCRippleFoundation);
7528
8015
 
7529
8016
  /***/ }),
7530
- /* 58 */
8017
+ /* 60 */
7531
8018
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7532
8019
 
7533
8020
  "use strict";
@@ -7559,12 +8046,12 @@ var strings = {
7559
8046
  };
7560
8047
 
7561
8048
  /***/ }),
7562
- /* 59 */
8049
+ /* 61 */
7563
8050
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7564
8051
 
7565
8052
  "use strict";
7566
8053
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7567
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(58);
8054
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(60);
7568
8055
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_menu__ = __webpack_require__(6);
7569
8056
  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; };
7570
8057
 
@@ -7904,7 +8391,7 @@ var MDCSelectFoundation = function (_MDCFoundation) {
7904
8391
  /* harmony default export */ __webpack_exports__["a"] = (MDCSelectFoundation);
7905
8392
 
7906
8393
  /***/ }),
7907
- /* 60 */
8394
+ /* 62 */
7908
8395
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7909
8396
 
7910
8397
  "use strict";
@@ -8436,7 +8923,7 @@ var MDCSliderFoundation = function (_MDCFoundation) {
8436
8923
  /* harmony default export */ __webpack_exports__["a"] = (MDCSliderFoundation);
8437
8924
 
8438
8925
  /***/ }),
8439
- /* 61 */
8926
+ /* 63 */
8440
8927
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8441
8928
 
8442
8929
  "use strict";
@@ -8479,12 +8966,12 @@ var numbers = {
8479
8966
  };
8480
8967
 
8481
8968
  /***/ }),
8482
- /* 62 */
8969
+ /* 64 */
8483
8970
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8484
8971
 
8485
8972
  "use strict";
8486
8973
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
8487
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(61);
8974
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(63);
8488
8975
  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; };
8489
8976
 
8490
8977
  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; }; }();
@@ -8705,7 +9192,7 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
8705
9192
  /* harmony default export */ __webpack_exports__["a"] = (MDCSnackbarFoundation);
8706
9193
 
8707
9194
  /***/ }),
8708
- /* 63 */
9195
+ /* 65 */
8709
9196
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8710
9197
 
8711
9198
  "use strict";
@@ -8743,12 +9230,12 @@ var strings = {
8743
9230
  };
8744
9231
 
8745
9232
  /***/ }),
8746
- /* 64 */
9233
+ /* 66 */
8747
9234
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8748
9235
 
8749
9236
  "use strict";
8750
9237
  /* 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);
9238
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(65);
8752
9239
  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; };
8753
9240
 
8754
9241
  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; }; }();
@@ -9096,7 +9583,7 @@ var MDCTabBarScrollerFoundation = function (_MDCFoundation) {
9096
9583
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarScrollerFoundation);
9097
9584
 
9098
9585
  /***/ }),
9099
- /* 65 */
9586
+ /* 67 */
9100
9587
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9101
9588
 
9102
9589
  "use strict";
@@ -9104,7 +9591,7 @@ var MDCTabBarScrollerFoundation = function (_MDCFoundation) {
9104
9591
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_animation__ = __webpack_require__(3);
9105
9592
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_base_component__ = __webpack_require__(4);
9106
9593
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar__ = __webpack_require__(11);
9107
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(64);
9594
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(66);
9108
9595
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
9109
9596
  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; }; }();
9110
9597
 
@@ -9267,7 +9754,7 @@ var MDCTabBarScroller = function (_MDCComponent) {
9267
9754
  }(__WEBPACK_IMPORTED_MODULE_1__material_base_component__["a" /* default */]);
9268
9755
 
9269
9756
  /***/ }),
9270
- /* 66 */
9757
+ /* 68 */
9271
9758
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9272
9759
 
9273
9760
  "use strict";
@@ -9300,13 +9787,13 @@ var strings = {
9300
9787
  };
9301
9788
 
9302
9789
  /***/ }),
9303
- /* 67 */
9790
+ /* 69 */
9304
9791
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9305
9792
 
9306
9793
  "use strict";
9307
9794
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(1);
9308
9795
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
9309
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(66);
9796
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(68);
9310
9797
  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; };
9311
9798
 
9312
9799
  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; }; }();
@@ -9546,7 +10033,7 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
9546
10033
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarFoundation);
9547
10034
 
9548
10035
  /***/ }),
9549
- /* 68 */
10036
+ /* 70 */
9550
10037
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9551
10038
 
9552
10039
  "use strict";
@@ -9703,52 +10190,12 @@ var MDCTabFoundation = function (_MDCFoundation) {
9703
10190
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabFoundation);
9704
10191
 
9705
10192
  /***/ }),
9706
- /* 69 */
9707
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
9708
-
9709
- "use strict";
9710
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
9711
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
9712
- /**
9713
- * Copyright 2016 Google Inc. All Rights Reserved.
9714
- *
9715
- * Licensed under the Apache License, Version 2.0 (the "License");
9716
- * you may not use this file except in compliance with the License.
9717
- * You may obtain a copy of the License at
9718
- *
9719
- * http://www.apache.org/licenses/LICENSE-2.0
9720
- *
9721
- * Unless required by applicable law or agreed to in writing, software
9722
- * distributed under the License is distributed on an "AS IS" BASIS,
9723
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9724
- * See the License for the specific language governing permissions and
9725
- * limitations under the License.
9726
- */
9727
- var strings = {
9728
- ARIA_HIDDEN: 'aria-hidden',
9729
- ROLE: 'role',
9730
- INPUT_SELECTOR: '.mdc-textfield__input',
9731
- LABEL_SELECTOR: '.mdc-textfield__label'
9732
- };
9733
-
9734
- var cssClasses = {
9735
- ROOT: 'mdc-textfield',
9736
- UPGRADED: 'mdc-textfield--upgraded',
9737
- DISABLED: 'mdc-textfield--disabled',
9738
- FOCUSED: 'mdc-textfield--focused',
9739
- INVALID: 'mdc-textfield--invalid',
9740
- HELPTEXT_PERSISTENT: 'mdc-textfield-helptext--persistent',
9741
- HELPTEXT_VALIDATION_MSG: 'mdc-textfield-helptext--validation-msg',
9742
- LABEL_FLOAT_ABOVE: 'mdc-textfield__label--float-above'
9743
- };
9744
-
9745
- /***/ }),
9746
- /* 70 */
10193
+ /* 71 */
9747
10194
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9748
10195
 
9749
10196
  "use strict";
9750
10197
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
9751
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(69);
10198
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(14);
9752
10199
  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; };
9753
10200
 
9754
10201
  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; }; }();
@@ -9784,12 +10231,12 @@ var MDCTextfieldFoundation = function (_MDCFoundation) {
9784
10231
  _createClass(MDCTextfieldFoundation, null, [{
9785
10232
  key: 'cssClasses',
9786
10233
  get: function get() {
9787
- return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
10234
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* cssClasses */];
9788
10235
  }
9789
10236
  }, {
9790
10237
  key: 'strings',
9791
10238
  get: function get() {
9792
- return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
10239
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* strings */];
9793
10240
  }
9794
10241
  }, {
9795
10242
  key: 'defaultAdapter',
@@ -9990,7 +10437,7 @@ var MDCTextfieldFoundation = function (_MDCFoundation) {
9990
10437
  /* harmony default export */ __webpack_exports__["a"] = (MDCTextfieldFoundation);
9991
10438
 
9992
10439
  /***/ }),
9993
- /* 71 */
10440
+ /* 72 */
9994
10441
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9995
10442
 
9996
10443
  "use strict";
@@ -10038,12 +10485,12 @@ var numbers = {
10038
10485
  };
10039
10486
 
10040
10487
  /***/ }),
10041
- /* 72 */
10488
+ /* 73 */
10042
10489
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10043
10490
 
10044
10491
  "use strict";
10045
10492
  /* 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);
10493
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(72);
10047
10494
  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; };
10048
10495
 
10049
10496
  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; }; }();
@@ -10327,7 +10774,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
10327
10774
  /* harmony default export */ __webpack_exports__["a"] = (MDCToolbarFoundation);
10328
10775
 
10329
10776
  /***/ }),
10330
- /* 73 */
10777
+ /* 74 */
10331
10778
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10332
10779
 
10333
10780
  "use strict";
@@ -10371,10 +10818,10 @@ function applyPassive() {
10371
10818
  }
10372
10819
 
10373
10820
  /***/ }),
10374
- /* 74 */
10821
+ /* 75 */
10375
10822
  /***/ (function(module, exports, __webpack_require__) {
10376
10823
 
10377
- var tabbable = __webpack_require__(75);
10824
+ var tabbable = __webpack_require__(76);
10378
10825
 
10379
10826
  var listeningFocusTrap = null;
10380
10827
 
@@ -10612,7 +11059,7 @@ module.exports = focusTrap;
10612
11059
 
10613
11060
 
10614
11061
  /***/ }),
10615
- /* 75 */
11062
+ /* 76 */
10616
11063
  /***/ (function(module, exports) {
10617
11064
 
10618
11065
  module.exports = function(el) {
@@ -10637,7 +11084,7 @@ module.exports = function(el) {
10637
11084
  var candidate, candidateIndex;
10638
11085
  for (var i = 0, l = candidates.length; i < l; i++) {
10639
11086
  candidate = candidates[i];
10640
- candidateIndex = candidate.tabIndex;
11087
+ candidateIndex = parseInt(candidate.getAttribute('tabindex'), 10) || candidate.tabIndex;
10641
11088
 
10642
11089
  if (
10643
11090
  candidateIndex < 0