material_components_web-sass 0.11.1 → 0.12.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: e4e377b4ff5735077ddba3096393c7d26af10e9a
4
- data.tar.gz: 5c905892612881c473185010de174366aecf704a
3
+ metadata.gz: 54759142119c026aaec1ab5f6a06bc621fd28646
4
+ data.tar.gz: bfb6de267fe751ec25d9e0e1ae733d1ee92841b5
5
5
  SHA512:
6
- metadata.gz: 53b843ef265bf0af93c2798191c063467c122e2f32aa01bf8604509015c34319ca8177b2664b08a156182c145de097be7c706cea1b6951f9d6a4f8edeaa2fe6c
7
- data.tar.gz: 2f310f3b0c8e8cc30c2012889e37e22dc8e2118b214d9c6315f57a9db8fbfe4f8b8dedd529089e16dec4566549e540e96897e9f6d6da2b819b11cabc7bf661fe
6
+ metadata.gz: 5e6f22fe32ec81919e20a42177cb6d9cb2666ed1f6e4339e74a0d64c0f584cddddf29a3d87fbd115b5c6ec1c483077cecd9cef17abe5948e2d90349eadf1eb3e
7
+ data.tar.gz: 3b1b4a0996dbe8f3ac0504ed5f27007ef22bee83fa7893e4efb4c4c3b90b6580a2c7d1cab6ca1d4dd410bb003bbc86ef5c89b298fc6d052dcd270352680bd253
data/CHANGELOG.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## 0.12.0 (2017-06-02)
2
+
3
+ - Update assets to match upstream version
4
+ - Improvement: Update development dependencies
5
+
6
+ Library version:
7
+
8
+ - Material Components for the web v0.12.0
9
+ - Material Icons v3.0.0
10
+
1
11
  ## 0.11.1 (2017-05-18)
2
12
 
3
13
  - Update assets to match upstream version
data/README.md CHANGED
@@ -54,6 +54,7 @@ Individual Sass components can be included like this:
54
54
  @import "@material/grid-list/mdc-grid-list";
55
55
  @import "@material/icon-toggle/mdc-icon-toggle";
56
56
  @import "@material/layout-grid/mdc-layout-grid";
57
+ @import "@material/linear-progress/mdc-linear-progress";
57
58
  @import "@material/list/mdc-list";
58
59
  @import "@material/menu/mdc-menu";
59
60
  @import "@material/radio/mdc-radio";
@@ -1,5 +1,5 @@
1
1
  module MaterialComponentsWeb
2
2
  module Sass
3
- VERSION = '0.11.1'.freeze
3
+ VERSION = '0.12.0'.freeze
4
4
  end
5
5
  end
@@ -24,9 +24,9 @@ Gem::Specification.new do |spec|
24
24
  spec.required_ruby_version = '>= 2.0.0'
25
25
 
26
26
  spec.add_runtime_dependency 'autoprefixer-rails', '>= 6.5'
27
- spec.add_runtime_dependency 'sass', '~> 3.4'
27
+ spec.add_runtime_dependency 'sass', '>= 3.4'
28
28
 
29
- spec.add_development_dependency 'railties', '~> 5.0'
30
- spec.add_development_dependency 'rspec', '~> 3.5'
31
- spec.add_development_dependency 'sprockets-rails', '~> 3.0'
29
+ spec.add_development_dependency 'railties', '>= 5.0'
30
+ spec.add_development_dependency 'rspec', '>= 3.5'
31
+ spec.add_development_dependency 'sprockets-rails', '>= 3.0'
32
32
  end
@@ -21,9 +21,9 @@ return /******/ (function(modules) { // webpackBootstrap
21
21
  /******/ function __webpack_require__(moduleId) {
22
22
  /******/
23
23
  /******/ // Check if module is in cache
24
- /******/ if(installedModules[moduleId]) {
24
+ /******/ if(installedModules[moduleId])
25
25
  /******/ return installedModules[moduleId].exports;
26
- /******/ }
26
+ /******/
27
27
  /******/ // Create a new module (and put it into the cache)
28
28
  /******/ var module = installedModules[moduleId] = {
29
29
  /******/ i: moduleId,
@@ -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 = 26);
81
+ /******/ return __webpack_require__(__webpack_require__.s = 27);
82
82
  /******/ })
83
83
  /************************************************************************/
84
84
  /******/ ([
@@ -89,7 +89,7 @@ return /******/ (function(modules) { // webpackBootstrap
89
89
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
90
90
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation__ = __webpack_require__(2);
91
91
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__foundation__["a"]; });
92
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__component__ = __webpack_require__(5);
92
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__component__ = __webpack_require__(4);
93
93
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCComponent", function() { return __WEBPACK_IMPORTED_MODULE_1__component__["a"]; });
94
94
  /**
95
95
  * Copyright 2016 Google Inc.
@@ -117,8 +117,8 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
117
117
  "use strict";
118
118
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
119
119
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
120
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(52);
121
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
120
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(55);
121
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
122
122
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRippleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
123
123
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRipple", function() { return MDCRipple; });
124
124
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
@@ -234,10 +234,10 @@ var MDCRipple = function (_MDCComponent) {
234
234
  return instance.root_.classList.remove(className);
235
235
  },
236
236
  registerInteractionHandler: function registerInteractionHandler(evtType, handler) {
237
- return instance.root_.addEventListener(evtType, handler);
237
+ return instance.root_.addEventListener(evtType, handler, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* applyPassive */])());
238
238
  },
239
239
  deregisterInteractionHandler: function deregisterInteractionHandler(evtType, handler) {
240
- return instance.root_.removeEventListener(evtType, handler);
240
+ return instance.root_.removeEventListener(evtType, handler, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* applyPassive */])());
241
241
  },
242
242
  registerResizeHandler: function registerResizeHandler(handler) {
243
243
  return window.addEventListener('resize', handler);
@@ -286,14 +286,23 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
286
286
  * limitations under the License.
287
287
  */
288
288
 
289
+ /**
290
+ * @template A
291
+ */
289
292
  var MDCFoundation = function () {
290
293
  _createClass(MDCFoundation, null, [{
291
294
  key: "cssClasses",
295
+
296
+
297
+ /** @return enum{cssClasses} */
292
298
  get: function get() {
293
299
  // Classes extending MDCFoundation should implement this method to return an object which exports every
294
300
  // CSS class the foundation class needs as a property. e.g. {ACTIVE: 'mdc-component--active'}
295
301
  return {};
296
302
  }
303
+
304
+ /** @return enum{strings} */
305
+
297
306
  }, {
298
307
  key: "strings",
299
308
  get: function get() {
@@ -301,6 +310,9 @@ var MDCFoundation = function () {
301
310
  // semantic strings as constants. e.g. {ARIA_ROLE: 'tablist'}
302
311
  return {};
303
312
  }
313
+
314
+ /** @return enum{numbers} */
315
+
304
316
  }, {
305
317
  key: "numbers",
306
318
  get: function get() {
@@ -308,6 +320,9 @@ var MDCFoundation = function () {
308
320
  // of its semantic numbers as constants. e.g. {ANIMATION_DELAY_MS: 350}
309
321
  return {};
310
322
  }
323
+
324
+ /** @return {!Object} */
325
+
311
326
  }, {
312
327
  key: "defaultAdapter",
313
328
  get: function get() {
@@ -316,6 +331,11 @@ var MDCFoundation = function () {
316
331
  // validation.
317
332
  return {};
318
333
  }
334
+
335
+ /**
336
+ * @param {!A} adapter
337
+ */
338
+
319
339
  }]);
320
340
 
321
341
  function MDCFoundation() {
@@ -323,6 +343,7 @@ var MDCFoundation = function () {
323
343
 
324
344
  _classCallCheck(this, MDCFoundation);
325
345
 
346
+ /** @private {!A} */
326
347
  this.adapter_ = adapter;
327
348
  }
328
349
 
@@ -348,34 +369,7 @@ var MDCFoundation = function () {
348
369
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
349
370
 
350
371
  "use strict";
351
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(35);
352
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_0__constants__["a"]; });
353
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(36);
354
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
355
- /**
356
- * Copyright 2016 Google Inc. All Rights Reserved.
357
- *
358
- * Licensed under the Apache License, Version 2.0 (the "License");
359
- * you may not use this file except in compliance with the License.
360
- * You may obtain a copy of the License at
361
- *
362
- * http://www.apache.org/licenses/LICENSE-2.0
363
- *
364
- * Unless required by applicable law or agreed to in writing, software
365
- * distributed under the License is distributed on an "AS IS" BASIS,
366
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
367
- * See the License for the specific language governing permissions and
368
- * limitations under the License.
369
- */
370
-
371
-
372
-
373
-
374
- /***/ }),
375
- /* 4 */
376
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
377
-
378
- "use strict";
372
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return transformStyleProperties; });
379
373
  /* harmony export (immutable) */ __webpack_exports__["b"] = getCorrectEventName;
380
374
  /* harmony export (immutable) */ __webpack_exports__["a"] = getCorrectPropertyName;
381
375
  /**
@@ -496,6 +490,8 @@ function getAnimationName(windowObj, eventType) {
496
490
  // Public functions to access getAnimationName() for JavaScript events or CSS
497
491
  // property names.
498
492
 
493
+ var transformStyleProperties = ['transform', 'WebkitTransform', 'MozTransform', 'OTransform', 'MSTransform'];
494
+
499
495
  /**
500
496
  * @param {!Object} windowObj
501
497
  * @param {string} eventType
@@ -515,7 +511,7 @@ function getCorrectPropertyName(windowObj, eventType) {
515
511
  }
516
512
 
517
513
  /***/ }),
518
- /* 5 */
514
+ /* 4 */
519
515
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
520
516
 
521
517
  "use strict";
@@ -542,9 +538,19 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
542
538
 
543
539
 
544
540
 
541
+ /**
542
+ * @template F
543
+ */
544
+
545
545
  var MDCComponent = function () {
546
546
  _createClass(MDCComponent, null, [{
547
547
  key: 'attachTo',
548
+
549
+
550
+ /**
551
+ * @param {!Element} root
552
+ * @return {!MDCComponent}
553
+ */
548
554
  value: function attachTo(root) {
549
555
  // Subclasses which extend MDCBase should provide an attachTo() method that takes a root element and
550
556
  // returns an instantiated component with its root set to that element. Also note that in the cases of
@@ -552,6 +558,13 @@ var MDCComponent = function () {
552
558
  // from getDefaultFoundation().
553
559
  return new MDCComponent(root, new __WEBPACK_IMPORTED_MODULE_0__foundation__["a" /* default */]());
554
560
  }
561
+
562
+ /**
563
+ * @param {!Element} root
564
+ * @param {!F} foundation
565
+ * @param {...?} args
566
+ */
567
+
555
568
  }]);
556
569
 
557
570
  function MDCComponent(root) {
@@ -559,6 +572,7 @@ var MDCComponent = function () {
559
572
 
560
573
  _classCallCheck(this, MDCComponent);
561
574
 
575
+ /** @private {!Element} */
562
576
  this.root_ = root;
563
577
 
564
578
  for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
@@ -568,6 +582,7 @@ var MDCComponent = function () {
568
582
  this.initialize.apply(this, args);
569
583
  // Note that we initialize foundation here and not within the constructor's default param so that
570
584
  // this.root_ is defined and can be used within the foundation class.
585
+ /** @private {!F} */
571
586
  this.foundation_ = foundation === undefined ? this.getDefaultFoundation() : foundation;
572
587
  this.foundation_.init();
573
588
  this.initialSyncWithDOM();
@@ -575,11 +590,16 @@ var MDCComponent = function () {
575
590
 
576
591
  _createClass(MDCComponent, [{
577
592
  key: 'initialize',
578
- value: function initialize() /* ...args */{
579
- // Subclasses can override this to do any additional setup work that would be considered part of a
580
- // "constructor". Essentially, it is a hook into the parent constructor before the foundation is
581
- // initialized. Any additional arguments besides root and foundation will be passed in here.
582
- }
593
+ value: function initialize() /* ...args */{}
594
+ // Subclasses can override this to do any additional setup work that would be considered part of a
595
+ // "constructor". Essentially, it is a hook into the parent constructor before the foundation is
596
+ // initialized. Any additional arguments besides root and foundation will be passed in here.
597
+
598
+
599
+ /**
600
+ * @return {!F} foundation
601
+ */
602
+
583
603
  }, {
584
604
  key: 'getDefaultFoundation',
585
605
  value: function getDefaultFoundation() {
@@ -603,8 +623,12 @@ var MDCComponent = function () {
603
623
  this.foundation_.destroy();
604
624
  }
605
625
 
606
- // Wrapper method to add an event listener to the component's root element. This is most useful when
607
- // listening for custom events.
626
+ /**
627
+ * Wrapper method to add an event listener to the component's root element. This is most useful when
628
+ * listening for custom events.
629
+ * @param {string} evtType
630
+ * @param {!Function} handler
631
+ */
608
632
 
609
633
  }, {
610
634
  key: 'listen',
@@ -612,8 +636,12 @@ var MDCComponent = function () {
612
636
  this.root_.addEventListener(evtType, handler);
613
637
  }
614
638
 
615
- // Wrapper method to remove an event listener to the component's root element. This is most useful when
616
- // unlistening for custom events.
639
+ /**
640
+ * Wrapper method to remove an event listener to the component's root element. This is most useful when
641
+ * unlistening for custom events.
642
+ * @param {string} evtType
643
+ * @param {!Function} handler
644
+ */
617
645
 
618
646
  }, {
619
647
  key: 'unlisten',
@@ -621,8 +649,13 @@ var MDCComponent = function () {
621
649
  this.root_.removeEventListener(evtType, handler);
622
650
  }
623
651
 
624
- // Fires a cross-browser-compatible custom event from the component root of the given type,
625
- // with the given data.
652
+ /**
653
+ * Fires a cross-browser-compatible custom event from the component root of the given type,
654
+ * with the given data.
655
+ * @param {string} evtType
656
+ * @param {!Object} evtData
657
+ * @param {boolean} shouldBubble
658
+ */
626
659
 
627
660
  }, {
628
661
  key: 'emit',
@@ -649,10 +682,65 @@ var MDCComponent = function () {
649
682
 
650
683
  /* harmony default export */ __webpack_exports__["a"] = (MDCComponent);
651
684
 
685
+ /***/ }),
686
+ /* 5 */
687
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
688
+
689
+ "use strict";
690
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(36);
691
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_0__constants__["a"]; });
692
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(37);
693
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
694
+ /**
695
+ * Copyright 2016 Google Inc. All Rights Reserved.
696
+ *
697
+ * Licensed under the Apache License, Version 2.0 (the "License");
698
+ * you may not use this file except in compliance with the License.
699
+ * You may obtain a copy of the License at
700
+ *
701
+ * http://www.apache.org/licenses/LICENSE-2.0
702
+ *
703
+ * Unless required by applicable law or agreed to in writing, software
704
+ * distributed under the License is distributed on an "AS IS" BASIS,
705
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
706
+ * See the License for the specific language governing permissions and
707
+ * limitations under the License.
708
+ */
709
+
710
+
711
+
712
+
652
713
  /***/ }),
653
714
  /* 6 */
654
715
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
655
716
 
717
+ "use strict";
718
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
719
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(51);
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"]; });
722
+ /**
723
+ * Copyright 2016 Google Inc. All Rights Reserved.
724
+ *
725
+ * Licensed under the Apache License, Version 2.0 (the "License");
726
+ * you may not use this file except in compliance with the License.
727
+ * You may obtain a copy of the License at
728
+ *
729
+ * http://www.apache.org/licenses/LICENSE-2.0
730
+ *
731
+ * Unless required by applicable law or agreed to in writing, software
732
+ * distributed under the License is distributed on an "AS IS" BASIS,
733
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
734
+ * See the License for the specific language governing permissions and
735
+ * limitations under the License.
736
+ */
737
+
738
+
739
+
740
+ /***/ }),
741
+ /* 7 */
742
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
743
+
656
744
  "use strict";
657
745
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
658
746
  /* harmony export (immutable) */ __webpack_exports__["remapEvent"] = remapEvent;
@@ -769,13 +857,14 @@ function restoreElementTabState(el) {
769
857
  }
770
858
 
771
859
  /***/ }),
772
- /* 7 */
860
+ /* 8 */
773
861
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
774
862
 
775
863
  "use strict";
776
864
  /* harmony export (immutable) */ __webpack_exports__["b"] = supportsCssVariables;
865
+ /* harmony export (immutable) */ __webpack_exports__["c"] = applyPassive;
777
866
  /* harmony export (immutable) */ __webpack_exports__["a"] = getMatchesProperty;
778
- /* harmony export (immutable) */ __webpack_exports__["c"] = getNormalizedEventCoords;
867
+ /* harmony export (immutable) */ __webpack_exports__["d"] = getNormalizedEventCoords;
779
868
  /**
780
869
  * Copyright 2016 Google Inc. All Rights Reserved.
781
870
  *
@@ -792,6 +881,8 @@ function restoreElementTabState(el) {
792
881
  * limitations under the License.
793
882
  */
794
883
 
884
+ var supportsPassive_ = void 0;
885
+
795
886
  function supportsCssVariables(windowObj) {
796
887
  var supportsFunctionPresent = windowObj.CSS && typeof windowObj.CSS.supports === 'function';
797
888
  if (!supportsFunctionPresent) {
@@ -805,6 +896,25 @@ function supportsCssVariables(windowObj) {
805
896
  return explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;
806
897
  }
807
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
+
808
918
  function getMatchesProperty(HTMLElementPrototype) {
809
919
  return ['webkitMatchesSelector', 'msMatchesSelector', 'matches'].filter(function (p) {
810
920
  return p in HTMLElementPrototype;
@@ -832,33 +942,6 @@ function getNormalizedEventCoords(ev, pageOffset, clientRect) {
832
942
  return { x: normalizedX, y: normalizedY };
833
943
  }
834
944
 
835
- /***/ }),
836
- /* 8 */
837
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
838
-
839
- "use strict";
840
- Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
841
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__simple__ = __webpack_require__(48);
842
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenu", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["a"]; });
843
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSimpleMenuFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__simple__["b"]; });
844
- /**
845
- * Copyright 2016 Google Inc. All Rights Reserved.
846
- *
847
- * Licensed under the Apache License, Version 2.0 (the "License");
848
- * you may not use this file except in compliance with the License.
849
- * You may obtain a copy of the License at
850
- *
851
- * http://www.apache.org/licenses/LICENSE-2.0
852
- *
853
- * Unless required by applicable law or agreed to in writing, software
854
- * distributed under the License is distributed on an "AS IS" BASIS,
855
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
856
- * See the License for the specific language governing permissions and
857
- * limitations under the License.
858
- */
859
-
860
-
861
-
862
945
  /***/ }),
863
946
  /* 9 */
864
947
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -998,72 +1081,11 @@ function solvePositionFromXValue_(xVal, x1, x2) {
998
1081
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
999
1082
 
1000
1083
  "use strict";
1001
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return cssClasses; });
1002
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return strings; });
1003
- /**
1004
- * Copyright 2017 Google Inc. All Rights Reserved.
1005
- *
1006
- * Licensed under the Apache License, Version 2.0 (the "License");
1007
- * you may not use this file except in compliance with the License.
1008
- * You may obtain a copy of the License at
1009
- *
1010
- * http://www.apache.org/licenses/LICENSE-2.0
1011
- *
1012
- * Unless required by applicable law or agreed to in writing, software
1013
- * distributed under the License is distributed on an "AS IS" BASIS,
1014
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1015
- * See the License for the specific language governing permissions and
1016
- * limitations under the License.
1017
- */
1018
-
1019
- var cssClasses = {
1020
- UPGRADED: 'mdc-tab-bar-upgraded'
1021
- };
1022
-
1023
- var strings = {
1024
- TAB_SELECTOR: '.mdc-tab',
1025
- INDICATOR_SELECTOR: '.mdc-tab-bar__indicator'
1026
- };
1027
-
1028
- /***/ }),
1029
- /* 11 */
1030
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
1031
-
1032
- "use strict";
1033
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
1034
- /**
1035
- * Copyright 2017 Google Inc. All Rights Reserved.
1036
- *
1037
- * Licensed under the Apache License, Version 2.0 (the "License");
1038
- * you may not use this file except in compliance with the License.
1039
- * You may obtain a copy of the License at
1040
- *
1041
- * http://www.apache.org/licenses/LICENSE-2.0
1042
- *
1043
- * Unless required by applicable law or agreed to in writing, software
1044
- * distributed under the License is distributed on an "AS IS" BASIS,
1045
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1046
- * See the License for the specific language governing permissions and
1047
- * limitations under the License.
1048
- */
1049
-
1050
- var cssClasses = {
1051
- ACTIVE: 'mdc-tab--active'
1052
- };
1053
-
1054
- /***/ }),
1055
- /* 12 */
1056
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
1057
-
1058
- "use strict";
1059
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(5);
1060
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1061
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(11);
1062
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(59);
1063
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
1064
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTab; });
1065
- 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); } };
1066
-
1084
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1085
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab__ = __webpack_require__(12);
1086
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(64);
1087
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1088
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBar; });
1067
1089
  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; }; }();
1068
1090
 
1069
1091
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -1095,26 +1117,249 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
1095
1117
 
1096
1118
 
1097
1119
 
1120
+ var MDCTabBar = function (_MDCComponent) {
1121
+ _inherits(MDCTabBar, _MDCComponent);
1098
1122
 
1099
- var MDCTab = function (_MDCComponent) {
1100
- _inherits(MDCTab, _MDCComponent);
1123
+ function MDCTabBar() {
1124
+ _classCallCheck(this, MDCTabBar);
1101
1125
 
1102
- _createClass(MDCTab, [{
1103
- key: 'computedWidth',
1104
- get: function get() {
1105
- return this.foundation_.getComputedWidth();
1106
- }
1107
- }, {
1108
- key: 'computedLeft',
1109
- get: function get() {
1110
- return this.foundation_.getComputedLeft();
1111
- }
1112
- }, {
1113
- key: 'isActive',
1114
- get: function get() {
1115
- return this.foundation_.isActive();
1116
- },
1117
- set: function set(isActive) {
1126
+ return _possibleConstructorReturn(this, (MDCTabBar.__proto__ || Object.getPrototypeOf(MDCTabBar)).apply(this, arguments));
1127
+ }
1128
+
1129
+ _createClass(MDCTabBar, [{
1130
+ key: 'initialize',
1131
+ value: function initialize() {
1132
+ var _this2 = this;
1133
+
1134
+ var tabFactory = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (el) {
1135
+ return new __WEBPACK_IMPORTED_MODULE_1__tab__["b" /* MDCTab */](el);
1136
+ };
1137
+
1138
+ this.indicator_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.INDICATOR_SELECTOR);
1139
+ this.tabs_ = this.gatherTabs_(tabFactory);
1140
+ this.tabSelectedHandler_ = function (_ref) {
1141
+ var detail = _ref.detail;
1142
+ var tab = detail.tab;
1143
+
1144
+ _this2.setActiveTab_(tab, true);
1145
+ };
1146
+ }
1147
+ }, {
1148
+ key: 'getDefaultFoundation',
1149
+ value: function getDefaultFoundation() {
1150
+ var _this3 = this;
1151
+
1152
+ return new __WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */]({
1153
+ addClass: function addClass(className) {
1154
+ return _this3.root_.classList.add(className);
1155
+ },
1156
+ removeClass: function removeClass(className) {
1157
+ return _this3.root_.classList.remove(className);
1158
+ },
1159
+ bindOnMDCTabSelectedEvent: function bindOnMDCTabSelectedEvent() {
1160
+ return _this3.listen(__WEBPACK_IMPORTED_MODULE_1__tab__["a" /* MDCTabFoundation */].strings.SELECTED_EVENT, _this3.tabSelectedHandler_);
1161
+ },
1162
+ unbindOnMDCTabSelectedEvent: function unbindOnMDCTabSelectedEvent() {
1163
+ return _this3.unlisten(__WEBPACK_IMPORTED_MODULE_1__tab__["a" /* MDCTabFoundation */].strings.SELECTED_EVENT, _this3.tabSelectedHandler_);
1164
+ },
1165
+ registerResizeHandler: function registerResizeHandler(handler) {
1166
+ return window.addEventListener('resize', handler);
1167
+ },
1168
+ deregisterResizeHandler: function deregisterResizeHandler(handler) {
1169
+ return window.removeEventListener('resize', handler);
1170
+ },
1171
+ getOffsetWidth: function getOffsetWidth() {
1172
+ return _this3.root_.offsetWidth;
1173
+ },
1174
+ setStyleForIndicator: function setStyleForIndicator(propertyName, value) {
1175
+ return _this3.indicator_.style.setProperty(propertyName, value);
1176
+ },
1177
+ getOffsetWidthForIndicator: function getOffsetWidthForIndicator() {
1178
+ return _this3.indicator_.offsetWidth;
1179
+ },
1180
+ notifyChange: function notifyChange(evtData) {
1181
+ return _this3.emit(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.CHANGE_EVENT, evtData);
1182
+ },
1183
+ getNumberOfTabs: function getNumberOfTabs() {
1184
+ return _this3.tabs.length;
1185
+ },
1186
+ isTabActiveAtIndex: function isTabActiveAtIndex(index) {
1187
+ return _this3.tabs[index].isActive;
1188
+ },
1189
+ setTabActiveAtIndex: function setTabActiveAtIndex(index, isActive) {
1190
+ _this3.tabs[index].isActive = isActive;
1191
+ },
1192
+ isDefaultPreventedOnClickForTabAtIndex: function isDefaultPreventedOnClickForTabAtIndex(index) {
1193
+ return _this3.tabs[index].preventDefaultOnClick;
1194
+ },
1195
+ setPreventDefaultOnClickForTabAtIndex: function setPreventDefaultOnClickForTabAtIndex(index, preventDefaultOnClick) {
1196
+ _this3.tabs[index].preventDefaultOnClick = preventDefaultOnClick;
1197
+ },
1198
+ measureTabAtIndex: function measureTabAtIndex(index) {
1199
+ return _this3.tabs[index].measureSelf();
1200
+ },
1201
+ getComputedWidthForTabAtIndex: function getComputedWidthForTabAtIndex(index) {
1202
+ return _this3.tabs[index].computedWidth;
1203
+ },
1204
+ getComputedLeftForTabAtIndex: function getComputedLeftForTabAtIndex(index) {
1205
+ return _this3.tabs[index].computedLeft;
1206
+ }
1207
+ });
1208
+ }
1209
+ }, {
1210
+ key: 'gatherTabs_',
1211
+ value: function gatherTabs_(tabFactory) {
1212
+ var tabElements = [].slice.call(this.root_.querySelectorAll(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.TAB_SELECTOR));
1213
+ return tabElements.map(function (el) {
1214
+ return tabFactory(el);
1215
+ });
1216
+ }
1217
+ }, {
1218
+ key: 'setActiveTabIndex_',
1219
+ value: function setActiveTabIndex_(activeTabIndex, notifyChange) {
1220
+ this.foundation_.switchToTabAtIndex(activeTabIndex, notifyChange);
1221
+ }
1222
+ }, {
1223
+ key: 'layout',
1224
+ value: function layout() {
1225
+ this.foundation_.layout();
1226
+ }
1227
+ }, {
1228
+ key: 'setActiveTab_',
1229
+ value: function setActiveTab_(activeTab, notifyChange) {
1230
+ var indexOfTab = this.tabs.indexOf(activeTab);
1231
+ if (indexOfTab < 0) {
1232
+ throw new Error('Invalid tab component given as activeTab: Tab not found within this component\'s tab list');
1233
+ }
1234
+ this.setActiveTabIndex_(indexOfTab, notifyChange);
1235
+ }
1236
+ }, {
1237
+ key: 'tabs',
1238
+ get: function get() {
1239
+ return this.tabs_;
1240
+ }
1241
+ }, {
1242
+ key: 'activeTab',
1243
+ get: function get() {
1244
+ var activeIndex = this.foundation_.getActiveTabIndex();
1245
+ return this.tabs[activeIndex];
1246
+ },
1247
+ set: function set(tab) {
1248
+ this.setActiveTab_(tab, false);
1249
+ }
1250
+ }, {
1251
+ key: 'activeTabIndex',
1252
+ get: function get() {
1253
+ return this.foundation_.getActiveTabIndex();
1254
+ },
1255
+ set: function set(index) {
1256
+ this.setActiveTabIndex_(index, false);
1257
+ }
1258
+ }], [{
1259
+ key: 'attachTo',
1260
+ value: function attachTo(root) {
1261
+ return new MDCTabBar(root);
1262
+ }
1263
+ }]);
1264
+
1265
+ return MDCTabBar;
1266
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
1267
+
1268
+ /***/ }),
1269
+ /* 11 */
1270
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1271
+
1272
+ "use strict";
1273
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
1274
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
1275
+ /**
1276
+ * Copyright 2017 Google Inc. All Rights Reserved.
1277
+ *
1278
+ * Licensed under the Apache License, Version 2.0 (the "License");
1279
+ * you may not use this file except in compliance with the License.
1280
+ * You may obtain a copy of the License at
1281
+ *
1282
+ * http://www.apache.org/licenses/LICENSE-2.0
1283
+ *
1284
+ * Unless required by applicable law or agreed to in writing, software
1285
+ * distributed under the License is distributed on an "AS IS" BASIS,
1286
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1287
+ * See the License for the specific language governing permissions and
1288
+ * limitations under the License.
1289
+ */
1290
+
1291
+ var cssClasses = {
1292
+ ACTIVE: 'mdc-tab--active'
1293
+ };
1294
+
1295
+ var strings = {
1296
+ SELECTED_EVENT: 'MDCTab:selected'
1297
+ };
1298
+
1299
+ /***/ }),
1300
+ /* 12 */
1301
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1302
+
1303
+ "use strict";
1304
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(4);
1305
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1306
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(11);
1307
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(65);
1308
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
1309
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTab; });
1310
+ var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
1311
+
1312
+ 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; }; }();
1313
+
1314
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1315
+
1316
+ 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; }
1317
+
1318
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
1319
+
1320
+ /**
1321
+ * Copyright 2017 Google Inc. All Rights Reserved.
1322
+ *
1323
+ * Licensed under the Apache License, Version 2.0 (the "License");
1324
+ * you may not use this file except in compliance with the License.
1325
+ * You may obtain a copy of the License at
1326
+ *
1327
+ * http://www.apache.org/licenses/LICENSE-2.0
1328
+ *
1329
+ * Unless required by applicable law or agreed to in writing, software
1330
+ * distributed under the License is distributed on an "AS IS" BASIS,
1331
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1332
+ * See the License for the specific language governing permissions and
1333
+ * limitations under the License.
1334
+ */
1335
+
1336
+
1337
+
1338
+
1339
+
1340
+
1341
+
1342
+
1343
+
1344
+ var MDCTab = function (_MDCComponent) {
1345
+ _inherits(MDCTab, _MDCComponent);
1346
+
1347
+ _createClass(MDCTab, [{
1348
+ key: 'computedWidth',
1349
+ get: function get() {
1350
+ return this.foundation_.getComputedWidth();
1351
+ }
1352
+ }, {
1353
+ key: 'computedLeft',
1354
+ get: function get() {
1355
+ return this.foundation_.getComputedLeft();
1356
+ }
1357
+ }, {
1358
+ key: 'isActive',
1359
+ get: function get() {
1360
+ return this.foundation_.isActive();
1361
+ },
1362
+ set: function set(isActive) {
1118
1363
  this.foundation_.setActive(isActive);
1119
1364
  }
1120
1365
  }, {
@@ -1178,7 +1423,7 @@ var MDCTab = function (_MDCComponent) {
1178
1423
  return _this2.root_.offsetLeft;
1179
1424
  },
1180
1425
  notifySelected: function notifySelected() {
1181
- return _this2.emit('MDCTab:selected', { tab: _this2 }, true);
1426
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */].strings.SELECTED_EVENT, { tab: _this2 }, true);
1182
1427
  }
1183
1428
  });
1184
1429
  }
@@ -1286,9 +1531,9 @@ mdcAutoInit.deregisterAll = function () {
1286
1531
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1287
1532
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1288
1533
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1289
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(7);
1290
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(4);
1291
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(28);
1534
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_ripple_util__ = __webpack_require__(8);
1535
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_animation__ = __webpack_require__(3);
1536
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation__ = __webpack_require__(29);
1292
1537
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckboxFoundation", function() { return __WEBPACK_IMPORTED_MODULE_4__foundation__["a"]; });
1293
1538
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCCheckbox", function() { return MDCCheckbox; });
1294
1539
  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; };
@@ -1489,8 +1734,8 @@ var MDCCheckbox = function (_MDCComponent) {
1489
1734
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1490
1735
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1491
1736
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1492
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(30);
1493
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(31);
1737
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(31);
1738
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util__ = __webpack_require__(32);
1494
1739
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialogFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1495
1740
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_3__util__; });
1496
1741
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCDialog", function() { return MDCDialog; });
@@ -1579,9 +1824,6 @@ var MDCDialog = function (_MDCComponent) {
1579
1824
  removeClass: function removeClass(className) {
1580
1825
  return _this2.root_.classList.remove(className);
1581
1826
  },
1582
- setStyle: function setStyle(prop, val) {
1583
- return _this2.root_.style.setProperty(prop, val);
1584
- },
1585
1827
  addBodyClass: function addBodyClass(className) {
1586
1828
  return document.body.classList.add(className);
1587
1829
  },
@@ -1609,17 +1851,26 @@ var MDCDialog = function (_MDCComponent) {
1609
1851
  deregisterDocumentKeydownHandler: function deregisterDocumentKeydownHandler(handler) {
1610
1852
  return document.removeEventListener('keydown', handler);
1611
1853
  },
1854
+ registerTransitionEndHandler: function registerTransitionEndHandler(handler) {
1855
+ return _this2.dialogSurface_.addEventListener('transitionend', handler);
1856
+ },
1857
+ deregisterTransitionEndHandler: function deregisterTransitionEndHandler(handler) {
1858
+ return _this2.dialogSurface_.removeEventListener('transitionend', handler);
1859
+ },
1612
1860
  notifyAccept: function notifyAccept() {
1613
- return _this2.emit('MDCDialog:accept');
1861
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.ACCEPT_EVENT);
1614
1862
  },
1615
1863
  notifyCancel: function notifyCancel() {
1616
- return _this2.emit('MDCDialog:cancel');
1864
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.CANCEL_EVENT);
1617
1865
  },
1618
1866
  trapFocusOnSurface: function trapFocusOnSurface() {
1619
1867
  return _this2.focusTrap_.activate();
1620
1868
  },
1621
1869
  untrapFocusOnSurface: function untrapFocusOnSurface() {
1622
1870
  return _this2.focusTrap_.deactivate();
1871
+ },
1872
+ isDialog: function isDialog(el) {
1873
+ return el === _this2.dialogSurface_;
1623
1874
  }
1624
1875
  });
1625
1876
  }
@@ -1654,11 +1905,11 @@ var MDCDialog = function (_MDCComponent) {
1654
1905
 
1655
1906
  "use strict";
1656
1907
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1657
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(6);
1658
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(39);
1908
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util__ = __webpack_require__(7);
1909
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__temporary__ = __webpack_require__(40);
1659
1910
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawer", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["a"]; });
1660
1911
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTemporaryDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__temporary__["b"]; });
1661
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(34);
1912
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__persistent__ = __webpack_require__(35);
1662
1913
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawer", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["a"]; });
1663
1914
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCPersistentDrawerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__persistent__["b"]; });
1664
1915
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_0__util__; });
@@ -1690,7 +1941,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1690
1941
  "use strict";
1691
1942
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1692
1943
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1693
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(41);
1944
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(42);
1694
1945
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormFieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
1695
1946
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCFormField", function() { return MDCFormField; });
1696
1947
  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; }; }();
@@ -1785,7 +2036,7 @@ var MDCFormField = function (_MDCComponent) {
1785
2036
  "use strict";
1786
2037
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1787
2038
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1788
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(43);
2039
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(44);
1789
2040
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridListFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
1790
2041
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCGridList", function() { return MDCGridList; });
1791
2042
  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; }; }();
@@ -1871,7 +2122,7 @@ var MDCGridList = function (_MDCComponent) {
1871
2122
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
1872
2123
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
1873
2124
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
1874
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(45);
2125
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(46);
1875
2126
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggleFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
1876
2127
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCIconToggle", function() { return MDCIconToggle; });
1877
2128
  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; };
@@ -2010,7 +2261,7 @@ var MDCIconToggle = function (_MDCComponent) {
2010
2261
  return _this3.root_.removeAttribute(name);
2011
2262
  },
2012
2263
  notifyChange: function notifyChange(evtData) {
2013
- return _this3.emit('MDCIconToggle:change', evtData);
2264
+ return _this3.emit(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.CHANGE_EVENT, evtData);
2014
2265
  }
2015
2266
  });
2016
2267
  }
@@ -2060,14 +2311,9 @@ var MDCIconToggle = function (_MDCComponent) {
2060
2311
  "use strict";
2061
2312
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2062
2313
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2063
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
2064
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(50);
2065
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadioFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2066
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadio", function() { return MDCRadio; });
2067
- 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; };
2068
-
2069
- 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); } };
2070
-
2314
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(48);
2315
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgressFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2316
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCLinearProgress", function() { return MDCLinearProgress; });
2071
2317
  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; }; }();
2072
2318
 
2073
2319
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -2077,7 +2323,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
2077
2323
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
2078
2324
 
2079
2325
  /**
2080
- * Copyright 2016 Google Inc. All Rights Reserved.
2326
+ * Copyright 2017 Google Inc. All Rights Reserved.
2081
2327
  *
2082
2328
  * Licensed under the Apache License, Version 2.0 (the "License");
2083
2329
  * you may not use this file except in compliance with the License.
@@ -2097,20 +2343,139 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
2097
2343
 
2098
2344
 
2099
2345
 
2346
+ var MDCLinearProgress = function (_MDCComponent) {
2347
+ _inherits(MDCLinearProgress, _MDCComponent);
2100
2348
 
2349
+ function MDCLinearProgress() {
2350
+ _classCallCheck(this, MDCLinearProgress);
2101
2351
 
2102
- var MDCRadio = function (_MDCComponent) {
2103
- _inherits(MDCRadio, _MDCComponent);
2352
+ return _possibleConstructorReturn(this, (MDCLinearProgress.__proto__ || Object.getPrototypeOf(MDCLinearProgress)).apply(this, arguments));
2353
+ }
2104
2354
 
2105
- _createClass(MDCRadio, [{
2106
- key: 'checked',
2107
- get: function get() {
2108
- return this.foundation_.isChecked();
2109
- },
2110
- set: function set(checked) {
2111
- this.foundation_.setChecked(checked);
2112
- }
2113
- }, {
2355
+ _createClass(MDCLinearProgress, [{
2356
+ key: 'open',
2357
+ value: function open() {
2358
+ this.foundation_.open();
2359
+ }
2360
+ }, {
2361
+ key: 'close',
2362
+ value: function close() {
2363
+ this.foundation_.close();
2364
+ }
2365
+ }, {
2366
+ key: 'getDefaultFoundation',
2367
+ value: function getDefaultFoundation() {
2368
+ var _this2 = this;
2369
+
2370
+ return new __WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */]({
2371
+ addClass: function addClass(className) {
2372
+ return _this2.root_.classList.add(className);
2373
+ },
2374
+ getPrimaryBar: function getPrimaryBar() {
2375
+ return _this2.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.PRIMARY_BAR_SELECTOR);
2376
+ },
2377
+ getBuffer: function getBuffer() {
2378
+ return _this2.root_.querySelector(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.BUFFER_SELECTOR);
2379
+ },
2380
+ hasClass: function hasClass(className) {
2381
+ return _this2.root_.classList.contains(className);
2382
+ },
2383
+ removeClass: function removeClass(className) {
2384
+ return _this2.root_.classList.remove(className);
2385
+ },
2386
+ setStyle: function setStyle(el, styleProperty, value) {
2387
+ return el.style[styleProperty] = value;
2388
+ }
2389
+ });
2390
+ }
2391
+ }, {
2392
+ key: 'determinate',
2393
+ set: function set(value) {
2394
+ this.foundation_.setDeterminate(value);
2395
+ }
2396
+ }, {
2397
+ key: 'progress',
2398
+ set: function set(value) {
2399
+ this.foundation_.setProgress(value);
2400
+ }
2401
+ }, {
2402
+ key: 'buffer',
2403
+ set: function set(value) {
2404
+ this.foundation_.setBuffer(value);
2405
+ }
2406
+ }, {
2407
+ key: 'reverse',
2408
+ set: function set(value) {
2409
+ this.foundation_.setReverse(value);
2410
+ }
2411
+ }], [{
2412
+ key: 'attachTo',
2413
+ value: function attachTo(root) {
2414
+ return new MDCLinearProgress(root);
2415
+ }
2416
+ }]);
2417
+
2418
+ return MDCLinearProgress;
2419
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2420
+
2421
+ /***/ }),
2422
+ /* 21 */
2423
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
2424
+
2425
+ "use strict";
2426
+ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2427
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2428
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_ripple__ = __webpack_require__(1);
2429
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(53);
2430
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadioFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2431
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCRadio", function() { return MDCRadio; });
2432
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2433
+
2434
+ 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); } };
2435
+
2436
+ 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; }; }();
2437
+
2438
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2439
+
2440
+ 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; }
2441
+
2442
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
2443
+
2444
+ /**
2445
+ * Copyright 2016 Google Inc. All Rights Reserved.
2446
+ *
2447
+ * Licensed under the Apache License, Version 2.0 (the "License");
2448
+ * you may not use this file except in compliance with the License.
2449
+ * You may obtain a copy of the License at
2450
+ *
2451
+ * http://www.apache.org/licenses/LICENSE-2.0
2452
+ *
2453
+ * Unless required by applicable law or agreed to in writing, software
2454
+ * distributed under the License is distributed on an "AS IS" BASIS,
2455
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2456
+ * See the License for the specific language governing permissions and
2457
+ * limitations under the License.
2458
+ */
2459
+
2460
+
2461
+
2462
+
2463
+
2464
+
2465
+
2466
+
2467
+ var MDCRadio = function (_MDCComponent) {
2468
+ _inherits(MDCRadio, _MDCComponent);
2469
+
2470
+ _createClass(MDCRadio, [{
2471
+ key: 'checked',
2472
+ get: function get() {
2473
+ return this.foundation_.isChecked();
2474
+ },
2475
+ set: function set(checked) {
2476
+ this.foundation_.setChecked(checked);
2477
+ }
2478
+ }, {
2114
2479
  key: 'disabled',
2115
2480
  get: function get() {
2116
2481
  return this.foundation_.isDisabled();
@@ -2226,14 +2591,14 @@ var MDCRadio = function (_MDCComponent) {
2226
2591
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2227
2592
 
2228
2593
  /***/ }),
2229
- /* 21 */
2594
+ /* 22 */
2230
2595
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2231
2596
 
2232
2597
  "use strict";
2233
2598
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2234
2599
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2235
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(8);
2236
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(54);
2600
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_menu__ = __webpack_require__(6);
2601
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation__ = __webpack_require__(57);
2237
2602
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelectFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__foundation__["a"]; });
2238
2603
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSelect", function() { return MDCSelect; });
2239
2604
  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; }; }();
@@ -2394,7 +2759,7 @@ var MDCSelect = function (_MDCComponent) {
2394
2759
  return _this2.menu_.unlisten(type, handler);
2395
2760
  },
2396
2761
  notifyChange: function notifyChange() {
2397
- return _this2.emit('MDCSelect:change', _this2);
2762
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_2__foundation__["a" /* default */].strings.CHANGE_EVENT, _this2);
2398
2763
  },
2399
2764
  getWindowInnerHeight: function getWindowInnerHeight() {
2400
2765
  return window.innerHeight;
@@ -2456,14 +2821,14 @@ var MDCSelect = function (_MDCComponent) {
2456
2821
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2457
2822
 
2458
2823
  /***/ }),
2459
- /* 22 */
2824
+ /* 23 */
2460
2825
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2461
2826
 
2462
2827
  "use strict";
2463
2828
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2464
2829
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2465
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(56);
2466
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(4);
2830
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(59);
2831
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_animation__ = __webpack_require__(3);
2467
2832
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2468
2833
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCSnackbar", function() { return MDCSnackbar; });
2469
2834
  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; }; }();
@@ -2566,6 +2931,14 @@ var MDCSnackbar = function (_MDCComponent) {
2566
2931
  }
2567
2932
  });
2568
2933
  }
2934
+ }, {
2935
+ key: 'dismissesOnAction',
2936
+ get: function get() {
2937
+ return this.foundation_.dismissesOnAction();
2938
+ },
2939
+ set: function set(dismissesOnAction) {
2940
+ this.foundation_.setDismissOnAction(dismissesOnAction);
2941
+ }
2569
2942
  }], [{
2570
2943
  key: 'attachTo',
2571
2944
  value: function attachTo(root) {
@@ -2577,7 +2950,7 @@ var MDCSnackbar = function (_MDCComponent) {
2577
2950
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2578
2951
 
2579
2952
  /***/ }),
2580
- /* 23 */
2953
+ /* 24 */
2581
2954
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2582
2955
 
2583
2956
  "use strict";
@@ -2585,9 +2958,12 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2585
2958
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__tab__ = __webpack_require__(12);
2586
2959
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabFoundation", function() { return __WEBPACK_IMPORTED_MODULE_0__tab__["a"]; });
2587
2960
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTab", function() { return __WEBPACK_IMPORTED_MODULE_0__tab__["b"]; });
2588
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab_bar__ = __webpack_require__(58);
2961
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab_bar__ = __webpack_require__(10);
2589
2962
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["a"]; });
2590
2963
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBar", function() { return __WEBPACK_IMPORTED_MODULE_1__tab_bar__["b"]; });
2964
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__ = __webpack_require__(62);
2965
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScrollerFoundation", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["a"]; });
2966
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTabBarScroller", function() { return __WEBPACK_IMPORTED_MODULE_2__tab_bar_scroller__["b"]; });
2591
2967
  /**
2592
2968
  * Copyright 2017 Google Inc. All Rights Reserved.
2593
2969
  *
@@ -2607,14 +2983,15 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2607
2983
 
2608
2984
 
2609
2985
 
2986
+
2610
2987
  /***/ }),
2611
- /* 24 */
2988
+ /* 25 */
2612
2989
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2613
2990
 
2614
2991
  "use strict";
2615
2992
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2616
2993
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2617
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(61);
2994
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(67);
2618
2995
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfieldFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2619
2996
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCTextfield", function() { return MDCTextfield; });
2620
2997
  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; };
@@ -2799,14 +3176,14 @@ var MDCTextfield = function (_MDCComponent) {
2799
3176
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2800
3177
 
2801
3178
  /***/ }),
2802
- /* 25 */
3179
+ /* 26 */
2803
3180
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2804
3181
 
2805
3182
  "use strict";
2806
3183
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2807
3184
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
2808
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(63);
2809
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(64);
3185
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(69);
3186
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(70);
2810
3187
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbarFoundation", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
2811
3188
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "util", function() { return __WEBPACK_IMPORTED_MODULE_2__util__; });
2812
3189
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MDCToolbar", function() { return MDCToolbar; });
@@ -2891,7 +3268,7 @@ var MDCToolbar = function (_MDCComponent) {
2891
3268
  return _this2.flexibleRowElement_.offsetHeight;
2892
3269
  },
2893
3270
  notifyChange: function notifyChange(evtData) {
2894
- return _this2.emit('MDCToolbar:change', evtData);
3271
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CHANGE_EVENT, evtData);
2895
3272
  },
2896
3273
  setStyle: function setStyle(property, value) {
2897
3274
  return _this2.root_.style.setProperty(property, value);
@@ -2939,7 +3316,7 @@ var MDCToolbar = function (_MDCComponent) {
2939
3316
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
2940
3317
 
2941
3318
  /***/ }),
2942
- /* 26 */
3319
+ /* 27 */
2943
3320
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2944
3321
 
2945
3322
  "use strict";
@@ -2949,33 +3326,35 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
2949
3326
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_form_field__ = __webpack_require__(17);
2950
3327
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__material_grid_list__ = __webpack_require__(18);
2951
3328
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__ = __webpack_require__(19);
2952
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(20);
3329
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__material_radio__ = __webpack_require__(21);
2953
3330
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__material_ripple__ = __webpack_require__(1);
2954
3331
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__material_dialog__ = __webpack_require__(15);
2955
3332
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__material_drawer__ = __webpack_require__(16);
2956
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(24);
2957
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(22);
2958
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_menu__ = __webpack_require__(8);
2959
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_select__ = __webpack_require__(21);
2960
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_tabs__ = __webpack_require__(23);
2961
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__material_toolbar__ = __webpack_require__(25);
2962
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__material_auto_init__ = __webpack_require__(13);
3333
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__material_textfield__ = __webpack_require__(25);
3334
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__material_snackbar__ = __webpack_require__(23);
3335
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__ = __webpack_require__(20);
3336
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__material_menu__ = __webpack_require__(6);
3337
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__material_select__ = __webpack_require__(22);
3338
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__material_tabs__ = __webpack_require__(24);
3339
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__material_toolbar__ = __webpack_require__(26);
3340
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__material_auto_init__ = __webpack_require__(13);
2963
3341
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "base", function() { return __WEBPACK_IMPORTED_MODULE_0__material_base__; });
2964
3342
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "checkbox", function() { return __WEBPACK_IMPORTED_MODULE_1__material_checkbox__; });
3343
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "dialog", function() { return __WEBPACK_IMPORTED_MODULE_7__material_dialog__; });
3344
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "drawer", function() { return __WEBPACK_IMPORTED_MODULE_8__material_drawer__; });
2965
3345
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "formField", function() { return __WEBPACK_IMPORTED_MODULE_2__material_form_field__; });
2966
3346
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "gridList", function() { return __WEBPACK_IMPORTED_MODULE_3__material_grid_list__; });
2967
3347
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "iconToggle", function() { return __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__; });
3348
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "linearProgress", function() { return __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__; });
2968
3349
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "radio", function() { return __WEBPACK_IMPORTED_MODULE_5__material_radio__; });
2969
3350
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "ripple", function() { return __WEBPACK_IMPORTED_MODULE_6__material_ripple__; });
2970
3351
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "snackbar", function() { return __WEBPACK_IMPORTED_MODULE_10__material_snackbar__; });
2971
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "dialog", function() { return __WEBPACK_IMPORTED_MODULE_7__material_dialog__; });
2972
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "drawer", function() { return __WEBPACK_IMPORTED_MODULE_8__material_drawer__; });
2973
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "tabs", function() { return __WEBPACK_IMPORTED_MODULE_13__material_tabs__; });
3352
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "tabs", function() { return __WEBPACK_IMPORTED_MODULE_14__material_tabs__; });
2974
3353
  /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "textfield", function() { return __WEBPACK_IMPORTED_MODULE_9__material_textfield__; });
2975
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "menu", function() { return __WEBPACK_IMPORTED_MODULE_11__material_menu__; });
2976
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "select", function() { return __WEBPACK_IMPORTED_MODULE_12__material_select__; });
2977
- /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "toolbar", function() { return __WEBPACK_IMPORTED_MODULE_14__material_toolbar__; });
2978
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "autoInit", function() { return __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a"]; });
3354
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "menu", function() { return __WEBPACK_IMPORTED_MODULE_12__material_menu__; });
3355
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "select", function() { return __WEBPACK_IMPORTED_MODULE_13__material_select__; });
3356
+ /* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "toolbar", function() { return __WEBPACK_IMPORTED_MODULE_15__material_toolbar__; });
3357
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "autoInit", function() { return __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a"]; });
2979
3358
  /**
2980
3359
  * Copyright 2016 Google Inc. All Rights Reserved.
2981
3360
  *
@@ -3009,28 +3388,30 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3009
3388
 
3010
3389
 
3011
3390
 
3391
+
3012
3392
  // Register all components
3013
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCCheckbox', __WEBPACK_IMPORTED_MODULE_1__material_checkbox__["MDCCheckbox"]);
3014
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCDialog', __WEBPACK_IMPORTED_MODULE_7__material_dialog__["MDCDialog"]);
3015
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCPersistentDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCPersistentDrawer"]);
3016
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCTemporaryDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCTemporaryDrawer"]);
3017
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCRipple', __WEBPACK_IMPORTED_MODULE_6__material_ripple__["MDCRipple"]);
3018
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCGridList', __WEBPACK_IMPORTED_MODULE_3__material_grid_list__["MDCGridList"]);
3019
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCIconToggle', __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__["MDCIconToggle"]);
3020
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCRadio', __WEBPACK_IMPORTED_MODULE_5__material_radio__["MDCRadio"]);
3021
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCSnackbar', __WEBPACK_IMPORTED_MODULE_10__material_snackbar__["MDCSnackbar"]);
3022
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCTab', __WEBPACK_IMPORTED_MODULE_13__material_tabs__["MDCTab"]);
3023
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCTabBar', __WEBPACK_IMPORTED_MODULE_13__material_tabs__["MDCTabBar"]);
3024
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCTextfield', __WEBPACK_IMPORTED_MODULE_9__material_textfield__["MDCTextfield"]);
3025
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCSimpleMenu', __WEBPACK_IMPORTED_MODULE_11__material_menu__["MDCSimpleMenu"]);
3026
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCSelect', __WEBPACK_IMPORTED_MODULE_12__material_select__["MDCSelect"]);
3027
- __WEBPACK_IMPORTED_MODULE_15__material_auto_init__["a" /* default */].register('MDCToolbar', __WEBPACK_IMPORTED_MODULE_14__material_toolbar__["MDCToolbar"]);
3393
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCCheckbox', __WEBPACK_IMPORTED_MODULE_1__material_checkbox__["MDCCheckbox"]);
3394
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCDialog', __WEBPACK_IMPORTED_MODULE_7__material_dialog__["MDCDialog"]);
3395
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCPersistentDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCPersistentDrawer"]);
3396
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTemporaryDrawer', __WEBPACK_IMPORTED_MODULE_8__material_drawer__["MDCTemporaryDrawer"]);
3397
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCRipple', __WEBPACK_IMPORTED_MODULE_6__material_ripple__["MDCRipple"]);
3398
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCGridList', __WEBPACK_IMPORTED_MODULE_3__material_grid_list__["MDCGridList"]);
3399
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCIconToggle', __WEBPACK_IMPORTED_MODULE_4__material_icon_toggle__["MDCIconToggle"]);
3400
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCLinearProgress', __WEBPACK_IMPORTED_MODULE_11__material_linear_progress__["MDCLinearProgress"]);
3401
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCRadio', __WEBPACK_IMPORTED_MODULE_5__material_radio__["MDCRadio"]);
3402
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSnackbar', __WEBPACK_IMPORTED_MODULE_10__material_snackbar__["MDCSnackbar"]);
3403
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTab', __WEBPACK_IMPORTED_MODULE_14__material_tabs__["MDCTab"]);
3404
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTabBar', __WEBPACK_IMPORTED_MODULE_14__material_tabs__["MDCTabBar"]);
3405
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCTextfield', __WEBPACK_IMPORTED_MODULE_9__material_textfield__["MDCTextfield"]);
3406
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSimpleMenu', __WEBPACK_IMPORTED_MODULE_12__material_menu__["MDCSimpleMenu"]);
3407
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCSelect', __WEBPACK_IMPORTED_MODULE_13__material_select__["MDCSelect"]);
3408
+ __WEBPACK_IMPORTED_MODULE_16__material_auto_init__["a" /* default */].register('MDCToolbar', __WEBPACK_IMPORTED_MODULE_15__material_toolbar__["MDCToolbar"]);
3028
3409
 
3029
3410
  // Export all components.
3030
3411
 
3031
3412
 
3032
3413
  /***/ }),
3033
- /* 27 */
3414
+ /* 28 */
3034
3415
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3035
3416
 
3036
3417
  "use strict";
@@ -3081,12 +3462,12 @@ var numbers = {
3081
3462
  };
3082
3463
 
3083
3464
  /***/ }),
3084
- /* 28 */
3465
+ /* 29 */
3085
3466
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3086
3467
 
3087
3468
  "use strict";
3088
3469
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3089
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(27);
3470
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(28);
3090
3471
  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; };
3091
3472
 
3092
3473
  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; }; }();
@@ -3362,7 +3743,7 @@ function validDescriptor(inputPropDesc) {
3362
3743
  }
3363
3744
 
3364
3745
  /***/ }),
3365
- /* 29 */
3746
+ /* 30 */
3366
3747
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3367
3748
 
3368
3749
  "use strict";
@@ -3387,6 +3768,7 @@ function validDescriptor(inputPropDesc) {
3387
3768
  var cssClasses = {
3388
3769
  ROOT: 'mdc-dialog',
3389
3770
  OPEN: 'mdc-dialog--open',
3771
+ ANIMATING: 'mdc-dialog--animating',
3390
3772
  BACKDROP: 'mdc-dialog__backdrop',
3391
3773
  SCROLL_LOCK: 'mdc-dialog-scroll-lock',
3392
3774
  ACCEPT_BTN: 'mdc-dialog__footer__button--accept',
@@ -3396,16 +3778,18 @@ var cssClasses = {
3396
3778
  var strings = {
3397
3779
  OPEN_DIALOG_SELECTOR: '.mdc-dialog--open',
3398
3780
  DIALOG_SURFACE_SELECTOR: '.mdc-dialog__surface',
3399
- ACCEPT_SELECTOR: '.mdc-dialog__footer__button--accept'
3781
+ ACCEPT_SELECTOR: '.mdc-dialog__footer__button--accept',
3782
+ ACCEPT_EVENT: 'MDCDialog:accept',
3783
+ CANCEL_EVENT: 'MDCDialog:cancel'
3400
3784
  };
3401
3785
 
3402
3786
  /***/ }),
3403
- /* 30 */
3787
+ /* 31 */
3404
3788
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3405
3789
 
3406
3790
  "use strict";
3407
3791
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3408
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(29);
3792
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(30);
3409
3793
  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; };
3410
3794
 
3411
3795
  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; }; }();
@@ -3454,7 +3838,6 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3454
3838
  return {
3455
3839
  addClass: function addClass() /* className: string */{},
3456
3840
  removeClass: function removeClass() /* className: string */{},
3457
- setStyle: function setStyle() /* propertyName: string, value: string */{},
3458
3841
  addBodyClass: function addBodyClass() /* className: string */{},
3459
3842
  removeBodyClass: function removeBodyClass() /* className: string */{},
3460
3843
  eventTargetHasClass: function eventTargetHasClass() {
@@ -3467,10 +3850,16 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3467
3850
  deregisterSurfaceInteractionHandler: function deregisterSurfaceInteractionHandler() /* evt: string, handler: EventListener */{},
3468
3851
  registerDocumentKeydownHandler: function registerDocumentKeydownHandler() /* handler: EventListener */{},
3469
3852
  deregisterDocumentKeydownHandler: function deregisterDocumentKeydownHandler() /* handler: EventListener */{},
3853
+ registerTransitionEndHandler: function registerTransitionEndHandler() /* handler: EventListener */{},
3854
+ deregisterTransitionEndHandler: function deregisterTransitionEndHandler() /* handler: EventListener */{},
3470
3855
  notifyAccept: function notifyAccept() {},
3471
3856
  notifyCancel: function notifyCancel() {},
3472
3857
  trapFocusOnSurface: function trapFocusOnSurface() {},
3473
- untrapFocusOnSurface: function untrapFocusOnSurface() {}
3858
+ untrapFocusOnSurface: function untrapFocusOnSurface() {},
3859
+ isDialog: function isDialog() {
3860
+ return (/* el: Element */ /* boolean */false
3861
+ );
3862
+ }
3474
3863
  };
3475
3864
  }
3476
3865
  }]);
@@ -3492,39 +3881,50 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3492
3881
  _this.cancel(true);
3493
3882
  }
3494
3883
  };
3884
+ _this.transitionEndHandler_ = function (evt) {
3885
+ return _this.handleTransitionEnd_(evt);
3886
+ };
3495
3887
  return _this;
3496
3888
  }
3497
3889
 
3498
3890
  _createClass(MDCDialogFoundation, [{
3499
3891
  key: 'destroy',
3500
3892
  value: function destroy() {
3501
- this.close();
3893
+ // Ensure that dialog is cleaned up when destroyed
3894
+ if (this.isOpen_) {
3895
+ this.adapter_.deregisterSurfaceInteractionHandler('click', this.dialogClickHandler_);
3896
+ this.adapter_.deregisterDocumentKeydownHandler(this.documentKeydownHandler_);
3897
+ this.adapter_.deregisterInteractionHandler('click', this.componentClickHandler_);
3898
+ this.adapter_.untrapFocusOnSurface();
3899
+ this.adapter_.deregisterTransitionEndHandler(this.transitionEndHandler_);
3900
+ this.adapter_.removeClass(MDCDialogFoundation.cssClasses.ANIMATING);
3901
+ this.adapter_.removeClass(MDCDialogFoundation.cssClasses.OPEN);
3902
+ this.enableScroll_();
3903
+ }
3502
3904
  }
3503
3905
  }, {
3504
3906
  key: 'open',
3505
3907
  value: function open() {
3506
3908
  this.isOpen_ = true;
3507
3909
  this.disableScroll_();
3508
- this.adapter_.setStyle('visibility', 'visible');
3509
- this.adapter_.addClass(MDCDialogFoundation.cssClasses.OPEN);
3510
- this.adapter_.trapFocusOnSurface();
3511
-
3512
3910
  this.adapter_.registerDocumentKeydownHandler(this.documentKeydownHandler_);
3513
3911
  this.adapter_.registerSurfaceInteractionHandler('click', this.dialogClickHandler_);
3514
3912
  this.adapter_.registerInteractionHandler('click', this.componentClickHandler_);
3913
+ this.adapter_.registerTransitionEndHandler(this.transitionEndHandler_);
3914
+ this.adapter_.addClass(MDCDialogFoundation.cssClasses.ANIMATING);
3915
+ this.adapter_.addClass(MDCDialogFoundation.cssClasses.OPEN);
3515
3916
  }
3516
3917
  }, {
3517
3918
  key: 'close',
3518
3919
  value: function close() {
3519
3920
  this.isOpen_ = false;
3520
- this.adapter_.untrapFocusOnSurface();
3521
- this.adapter_.removeClass(MDCDialogFoundation.cssClasses.OPEN);
3522
- this.adapter_.setStyle('visibility', 'hidden');
3523
- this.enableScroll_();
3524
-
3525
3921
  this.adapter_.deregisterSurfaceInteractionHandler('click', this.dialogClickHandler_);
3526
3922
  this.adapter_.deregisterDocumentKeydownHandler(this.documentKeydownHandler_);
3527
3923
  this.adapter_.deregisterInteractionHandler('click', this.componentClickHandler_);
3924
+ this.adapter_.untrapFocusOnSurface();
3925
+ this.adapter_.registerTransitionEndHandler(this.transitionEndHandler_);
3926
+ this.adapter_.addClass(MDCDialogFoundation.cssClasses.ANIMATING);
3927
+ this.adapter_.removeClass(MDCDialogFoundation.cssClasses.OPEN);
3528
3928
  }
3529
3929
  }, {
3530
3930
  key: 'isOpen',
@@ -3561,6 +3961,19 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3561
3961
  this.cancel(true);
3562
3962
  }
3563
3963
  }
3964
+ }, {
3965
+ key: 'handleTransitionEnd_',
3966
+ value: function handleTransitionEnd_(evt) {
3967
+ if (this.adapter_.isDialog(evt.target)) {
3968
+ this.adapter_.deregisterTransitionEndHandler(this.transitionEndHandler_);
3969
+ this.adapter_.removeClass(MDCDialogFoundation.cssClasses.ANIMATING);
3970
+ if (this.isOpen_) {
3971
+ this.adapter_.trapFocusOnSurface();
3972
+ } else {
3973
+ this.enableScroll_();
3974
+ };
3975
+ };
3976
+ }
3564
3977
  }, {
3565
3978
  key: 'disableScroll_',
3566
3979
  value: function disableScroll_() {
@@ -3579,12 +3992,12 @@ var MDCDialogFoundation = function (_MDCFoundation) {
3579
3992
  /* harmony default export */ __webpack_exports__["a"] = (MDCDialogFoundation);
3580
3993
 
3581
3994
  /***/ }),
3582
- /* 31 */
3995
+ /* 32 */
3583
3996
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3584
3997
 
3585
3998
  "use strict";
3586
3999
  Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
3587
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(65);
4000
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap__ = __webpack_require__(71);
3588
4001
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_focus_trap___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_focus_trap__);
3589
4002
  /* harmony export (immutable) */ __webpack_exports__["createFocusTrapInstance"] = createFocusTrapInstance;
3590
4003
  /**
@@ -3615,11 +4028,11 @@ function createFocusTrapInstance(surfaceEl, acceptButtonEl) {
3615
4028
  }
3616
4029
 
3617
4030
  /***/ }),
3618
- /* 32 */
4031
+ /* 33 */
3619
4032
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3620
4033
 
3621
4034
  "use strict";
3622
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(3);
4035
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
3623
4036
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
3624
4037
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
3625
4038
  /**
@@ -3648,16 +4061,18 @@ var cssClasses = {
3648
4061
 
3649
4062
  var strings = {
3650
4063
  DRAWER_SELECTOR: '.mdc-persistent-drawer__drawer',
3651
- FOCUSABLE_ELEMENTS: __WEBPACK_IMPORTED_MODULE_0__slidable__["b" /* FOCUSABLE_ELEMENTS */]
4064
+ FOCUSABLE_ELEMENTS: __WEBPACK_IMPORTED_MODULE_0__slidable__["b" /* FOCUSABLE_ELEMENTS */],
4065
+ OPEN_EVENT: 'MDCPersistentDrawer:open',
4066
+ CLOSE_EVENT: 'MDCPersistentDrawer:close'
3652
4067
  };
3653
4068
 
3654
4069
  /***/ }),
3655
- /* 33 */
4070
+ /* 34 */
3656
4071
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3657
4072
 
3658
4073
  "use strict";
3659
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(3);
3660
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(32);
4074
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4075
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(33);
3661
4076
  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; };
3662
4077
 
3663
4078
  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; }; }();
@@ -3730,13 +4145,13 @@ var MDCPersistentDrawerFoundation = function (_MDCSlidableDrawerFou) {
3730
4145
  /* harmony default export */ __webpack_exports__["a"] = (MDCPersistentDrawerFoundation);
3731
4146
 
3732
4147
  /***/ }),
3733
- /* 34 */
4148
+ /* 35 */
3734
4149
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3735
4150
 
3736
4151
  "use strict";
3737
4152
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
3738
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(33);
3739
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(6);
4153
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(34);
4154
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
3740
4155
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
3741
4156
  /* unused harmony reexport util */
3742
4157
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCPersistentDrawer; });
@@ -3844,10 +4259,10 @@ var MDCPersistentDrawer = function (_MDCComponent) {
3844
4259
  return el.setAttribute('tabindex', -1);
3845
4260
  },
3846
4261
  notifyOpen: function notifyOpen() {
3847
- return _this2.emit('MDCPersistentDrawer:open');
4262
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.OPEN_EVENT);
3848
4263
  },
3849
4264
  notifyClose: function notifyClose() {
3850
- return _this2.emit('MDCPersistentDrawer:close');
4265
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CLOSE_EVENT);
3851
4266
  },
3852
4267
  isRtl: function isRtl() {
3853
4268
  return getComputedStyle(_this2.root_).getPropertyValue('direction') === 'rtl';
@@ -3888,7 +4303,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
3888
4303
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
3889
4304
 
3890
4305
  /***/ }),
3891
- /* 35 */
4306
+ /* 36 */
3892
4307
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3893
4308
 
3894
4309
  "use strict";
@@ -3912,7 +4327,7 @@ var MDCPersistentDrawer = function (_MDCComponent) {
3912
4327
  var FOCUSABLE_ELEMENTS = 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), ' + 'button:not([disabled]), iframe, object, embed, [tabindex], [contenteditable]';
3913
4328
 
3914
4329
  /***/ }),
3915
- /* 36 */
4330
+ /* 37 */
3916
4331
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3917
4332
 
3918
4333
  "use strict";
@@ -4218,11 +4633,11 @@ var MDCSlidableDrawerFoundation = function (_MDCFoundation) {
4218
4633
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
4219
4634
 
4220
4635
  /***/ }),
4221
- /* 37 */
4636
+ /* 38 */
4222
4637
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4223
4638
 
4224
4639
  "use strict";
4225
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(3);
4640
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4226
4641
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
4227
4642
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
4228
4643
  /**
@@ -4252,16 +4667,18 @@ var cssClasses = {
4252
4667
  var strings = {
4253
4668
  DRAWER_SELECTOR: '.mdc-temporary-drawer__drawer',
4254
4669
  OPACITY_VAR_NAME: '--mdc-temporary-drawer-opacity',
4255
- FOCUSABLE_ELEMENTS: __WEBPACK_IMPORTED_MODULE_0__slidable__["b" /* FOCUSABLE_ELEMENTS */]
4670
+ FOCUSABLE_ELEMENTS: __WEBPACK_IMPORTED_MODULE_0__slidable__["b" /* FOCUSABLE_ELEMENTS */],
4671
+ OPEN_EVENT: 'MDCTemporaryDrawer:open',
4672
+ CLOSE_EVENT: 'MDCTemporaryDrawer:close'
4256
4673
  };
4257
4674
 
4258
4675
  /***/ }),
4259
- /* 38 */
4676
+ /* 39 */
4260
4677
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4261
4678
 
4262
4679
  "use strict";
4263
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(3);
4264
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(37);
4680
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__slidable__ = __webpack_require__(5);
4681
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(38);
4265
4682
  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; };
4266
4683
 
4267
4684
  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); } };
@@ -4390,13 +4807,13 @@ var MDCTemporaryDrawerFoundation = function (_MDCSlidableDrawerFou) {
4390
4807
  /* harmony default export */ __webpack_exports__["a"] = (MDCTemporaryDrawerFoundation);
4391
4808
 
4392
4809
  /***/ }),
4393
- /* 39 */
4810
+ /* 40 */
4394
4811
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4395
4812
 
4396
4813
  "use strict";
4397
4814
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4398
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(38);
4399
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(6);
4815
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(39);
4816
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
4400
4817
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
4401
4818
  /* unused harmony reexport util */
4402
4819
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCTemporaryDrawer; });
@@ -4511,10 +4928,10 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
4511
4928
  return el.setAttribute('tabindex', -1);
4512
4929
  },
4513
4930
  notifyOpen: function notifyOpen() {
4514
- return _this2.emit('MDCTemporaryDrawer:open');
4931
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.OPEN_EVENT);
4515
4932
  },
4516
4933
  notifyClose: function notifyClose() {
4517
- return _this2.emit('MDCTemporaryDrawer:close');
4934
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CLOSE_EVENT);
4518
4935
  },
4519
4936
  isRtl: function isRtl() {
4520
4937
  return getComputedStyle(_this2.root_).getPropertyValue('direction') === 'rtl';
@@ -4555,7 +4972,7 @@ var MDCTemporaryDrawer = function (_MDCComponent) {
4555
4972
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
4556
4973
 
4557
4974
  /***/ }),
4558
- /* 40 */
4975
+ /* 41 */
4559
4976
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4560
4977
 
4561
4978
  "use strict";
@@ -4586,12 +5003,12 @@ var strings = {
4586
5003
  };
4587
5004
 
4588
5005
  /***/ }),
4589
- /* 41 */
5006
+ /* 42 */
4590
5007
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4591
5008
 
4592
5009
  "use strict";
4593
5010
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4594
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(40);
5011
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(41);
4595
5012
  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; };
4596
5013
 
4597
5014
  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; }; }();
@@ -4685,7 +5102,7 @@ var MDCFormFieldFoundation = function (_MDCFoundation) {
4685
5102
  /* harmony default export */ __webpack_exports__["a"] = (MDCFormFieldFoundation);
4686
5103
 
4687
5104
  /***/ }),
4688
- /* 42 */
5105
+ /* 43 */
4689
5106
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4690
5107
 
4691
5108
  "use strict";
@@ -4711,12 +5128,12 @@ var strings = {
4711
5128
  };
4712
5129
 
4713
5130
  /***/ }),
4714
- /* 43 */
5131
+ /* 44 */
4715
5132
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4716
5133
 
4717
5134
  "use strict";
4718
5135
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4719
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(42);
5136
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(43);
4720
5137
  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; };
4721
5138
 
4722
5139
  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; }; }();
@@ -4832,12 +5249,12 @@ var MDCGridListFoundation = function (_MDCFoundation) {
4832
5249
  /* harmony default export */ __webpack_exports__["a"] = (MDCGridListFoundation);
4833
5250
 
4834
5251
  /***/ }),
4835
- /* 44 */
5252
+ /* 45 */
4836
5253
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4837
5254
 
4838
5255
  "use strict";
4839
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
4840
5256
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
5257
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
4841
5258
  /**
4842
5259
  * Copyright 2016 Google Inc. All Rights Reserved.
4843
5260
  *
@@ -4853,26 +5270,27 @@ var MDCGridListFoundation = function (_MDCFoundation) {
4853
5270
  * See the License for the specific language governing permissions and
4854
5271
  * limitations under the License.
4855
5272
  */
5273
+ var cssClasses = {
5274
+ ROOT: 'mdc-icon-toggle',
5275
+ DISABLED: 'mdc-icon-toggle--disabled'
5276
+ };
5277
+
4856
5278
  var strings = {
4857
5279
  DATA_TOGGLE_ON: 'data-toggle-on',
4858
5280
  DATA_TOGGLE_OFF: 'data-toggle-off',
4859
5281
  ARIA_PRESSED: 'aria-pressed',
4860
5282
  ARIA_DISABLED: 'aria-disabled',
4861
- ARIA_LABEL: 'aria-label'
4862
- };
4863
-
4864
- var cssClasses = {
4865
- ROOT: 'mdc-icon-toggle',
4866
- DISABLED: 'mdc-icon-toggle--disabled'
5283
+ ARIA_LABEL: 'aria-label',
5284
+ CHANGE_EVENT: 'MDCIconToggle:change'
4867
5285
  };
4868
5286
 
4869
5287
  /***/ }),
4870
- /* 45 */
5288
+ /* 46 */
4871
5289
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4872
5290
 
4873
5291
  "use strict";
4874
5292
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
4875
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(44);
5293
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(45);
4876
5294
  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; };
4877
5295
 
4878
5296
  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; }; }();
@@ -5100,15 +5518,14 @@ function isSpace(_ref3) {
5100
5518
  }
5101
5519
 
5102
5520
  /***/ }),
5103
- /* 46 */
5521
+ /* 47 */
5104
5522
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5105
5523
 
5106
5524
  "use strict";
5107
5525
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
5108
5526
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
5109
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return numbers; });
5110
5527
  /**
5111
- * Copyright 2016 Google Inc. All Rights Reserved.
5528
+ * Copyright 2017 Google Inc. All Rights Reserved.
5112
5529
  *
5113
5530
  * Licensed under the Apache License, Version 2.0 (the "License");
5114
5531
  * you may not use this file except in compliance with the License.
@@ -5122,51 +5539,30 @@ function isSpace(_ref3) {
5122
5539
  * See the License for the specific language governing permissions and
5123
5540
  * limitations under the License.
5124
5541
  */
5542
+
5125
5543
  var cssClasses = {
5126
- ROOT: 'mdc-simple-menu',
5127
- OPEN: 'mdc-simple-menu--open',
5128
- ANIMATING: 'mdc-simple-menu--animating',
5129
- TOP_RIGHT: 'mdc-simple-menu--open-from-top-right',
5130
- BOTTOM_LEFT: 'mdc-simple-menu--open-from-bottom-left',
5131
- BOTTOM_RIGHT: 'mdc-simple-menu--open-from-bottom-right'
5544
+ CLOSED_CLASS: 'mdc-linear-progress--closed',
5545
+ INDETERMINATE_CLASS: 'mdc-linear-progress--indeterminate',
5546
+ REVERSED_CLASS: 'mdc-linear-progress--reversed'
5132
5547
  };
5133
5548
 
5134
5549
  var strings = {
5135
- ITEMS_SELECTOR: '.mdc-simple-menu__items'
5136
- };
5137
-
5138
- var numbers = {
5139
- // Amount of time to wait before triggering a selected event on the menu. Note that this time
5140
- // will most likely be bumped up once interactive lists are supported to allow for the ripple to
5141
- // animate before closing the menu
5142
- SELECTED_TRIGGER_DELAY: 50,
5143
- // Total duration of the menu animation.
5144
- TRANSITION_DURATION_MS: 300,
5145
- // The menu starts its open animation with the X axis at this time value (0 - 1).
5146
- TRANSITION_SCALE_ADJUSTMENT_X: 0.5,
5147
- // The time value the menu waits until the animation starts on the Y axis (0 - 1).
5148
- TRANSITION_SCALE_ADJUSTMENT_Y: 0.2,
5149
- // The cubic bezier control points for the animation (cubic-bezier(0, 0, 0.2, 1)).
5150
- TRANSITION_X1: 0,
5151
- TRANSITION_Y1: 0,
5152
- TRANSITION_X2: 0.2,
5153
- TRANSITION_Y2: 1
5550
+ PRIMARY_BAR_SELECTOR: '.mdc-linear-progress__primary-bar',
5551
+ BUFFER_SELECTOR: '.mdc-linear-progress__buffer'
5154
5552
  };
5155
5553
 
5156
5554
  /***/ }),
5157
- /* 47 */
5555
+ /* 48 */
5158
5556
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5159
5557
 
5160
5558
  "use strict";
5161
5559
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5162
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(46);
5163
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
5560
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
5561
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(47);
5164
5562
  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; };
5165
5563
 
5166
5564
  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; }; }();
5167
5565
 
5168
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5169
-
5170
5566
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5171
5567
 
5172
5568
  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; }
@@ -5174,7 +5570,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
5174
5570
  function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
5175
5571
 
5176
5572
  /**
5177
- * Copyright 2016 Google Inc. All Rights Reserved.
5573
+ * Copyright 2017 Google Inc. All Rights Reserved.
5178
5574
  *
5179
5575
  * Licensed under the Apache License, Version 2.0 (the "License");
5180
5576
  * you may not use this file except in compliance with the License.
@@ -5193,31 +5589,233 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
5193
5589
 
5194
5590
 
5195
5591
 
5196
- var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5197
- _inherits(MDCSimpleMenuFoundation, _MDCFoundation);
5198
5592
 
5199
- _createClass(MDCSimpleMenuFoundation, null, [{
5593
+ var MDCLinearProgressFoundation = function (_MDCFoundation) {
5594
+ _inherits(MDCLinearProgressFoundation, _MDCFoundation);
5595
+
5596
+ _createClass(MDCLinearProgressFoundation, null, [{
5200
5597
  key: 'cssClasses',
5201
5598
  get: function get() {
5202
- return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
5599
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */];
5203
5600
  }
5204
5601
  }, {
5205
5602
  key: 'strings',
5206
5603
  get: function get() {
5207
- return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
5208
- }
5209
- }, {
5210
- key: 'numbers',
5211
- get: function get() {
5212
- return __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */];
5604
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */];
5213
5605
  }
5214
5606
  }, {
5215
5607
  key: 'defaultAdapter',
5216
5608
  get: function get() {
5217
5609
  return {
5218
5610
  addClass: function addClass() /* className: string */{},
5611
+ getPrimaryBar: function getPrimaryBar() /* el: Element */{},
5612
+ getBuffer: function getBuffer() /* el: Element */{},
5613
+ hasClass: function hasClass() {
5614
+ return (/* className: string */false
5615
+ );
5616
+ },
5219
5617
  removeClass: function removeClass() /* className: string */{},
5220
- hasClass: function hasClass() /* className: string */{},
5618
+ setStyle: function setStyle() /* el: Element, styleProperty: string, value: number */{}
5619
+ };
5620
+ }
5621
+ }]);
5622
+
5623
+ function MDCLinearProgressFoundation(adapter) {
5624
+ _classCallCheck(this, MDCLinearProgressFoundation);
5625
+
5626
+ return _possibleConstructorReturn(this, (MDCLinearProgressFoundation.__proto__ || Object.getPrototypeOf(MDCLinearProgressFoundation)).call(this, _extends(MDCLinearProgressFoundation.defaultAdapter, adapter)));
5627
+ }
5628
+
5629
+ _createClass(MDCLinearProgressFoundation, [{
5630
+ key: 'init',
5631
+ value: function init() {
5632
+ this.determinate_ = !this.adapter_.hasClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].INDETERMINATE_CLASS);
5633
+ this.reverse_ = this.adapter_.hasClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].REVERSED_CLASS);
5634
+ }
5635
+ }, {
5636
+ key: 'setDeterminate',
5637
+ value: function setDeterminate(isDeterminate) {
5638
+ this.determinate_ = isDeterminate;
5639
+ if (this.determinate_) {
5640
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].INDETERMINATE_CLASS);
5641
+ } else {
5642
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].INDETERMINATE_CLASS);
5643
+ this.setScale_(this.adapter_.getPrimaryBar(), 1);
5644
+ this.setScale_(this.adapter_.getBuffer(), 1);
5645
+ }
5646
+ }
5647
+ }, {
5648
+ key: 'setProgress',
5649
+ value: function setProgress(value) {
5650
+ if (this.determinate_) {
5651
+ this.setScale_(this.adapter_.getPrimaryBar(), value);
5652
+ }
5653
+ }
5654
+ }, {
5655
+ key: 'setBuffer',
5656
+ value: function setBuffer(value) {
5657
+ if (this.determinate_) {
5658
+ this.setScale_(this.adapter_.getBuffer(), value);
5659
+ }
5660
+ }
5661
+ }, {
5662
+ key: 'setReverse',
5663
+ value: function setReverse(isReversed) {
5664
+ this.reverse_ = isReversed;
5665
+ if (this.reverse_) {
5666
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].REVERSED_CLASS);
5667
+ } else {
5668
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].REVERSED_CLASS);
5669
+ }
5670
+ }
5671
+ }, {
5672
+ key: 'open',
5673
+ value: function open() {
5674
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].CLOSED_CLASS);
5675
+ }
5676
+ }, {
5677
+ key: 'close',
5678
+ value: function close() {
5679
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].CLOSED_CLASS);
5680
+ }
5681
+ }, {
5682
+ key: 'setScale_',
5683
+ value: function setScale_(el, scaleValue) {
5684
+ var _this2 = this;
5685
+
5686
+ var value = 'scaleX(' + scaleValue + ')';
5687
+ __WEBPACK_IMPORTED_MODULE_1__material_animation__["c" /* transformStyleProperties */].forEach(function (transformStyleProperty) {
5688
+ _this2.adapter_.setStyle(el, transformStyleProperty, value);
5689
+ });
5690
+ }
5691
+ }]);
5692
+
5693
+ return MDCLinearProgressFoundation;
5694
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
5695
+
5696
+ /* harmony default export */ __webpack_exports__["a"] = (MDCLinearProgressFoundation);
5697
+
5698
+ /***/ }),
5699
+ /* 49 */
5700
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5701
+
5702
+ "use strict";
5703
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
5704
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
5705
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return numbers; });
5706
+ /**
5707
+ * Copyright 2016 Google Inc. All Rights Reserved.
5708
+ *
5709
+ * Licensed under the Apache License, Version 2.0 (the "License");
5710
+ * you may not use this file except in compliance with the License.
5711
+ * You may obtain a copy of the License at
5712
+ *
5713
+ * http://www.apache.org/licenses/LICENSE-2.0
5714
+ *
5715
+ * Unless required by applicable law or agreed to in writing, software
5716
+ * distributed under the License is distributed on an "AS IS" BASIS,
5717
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5718
+ * See the License for the specific language governing permissions and
5719
+ * limitations under the License.
5720
+ */
5721
+ var cssClasses = {
5722
+ ROOT: 'mdc-simple-menu',
5723
+ OPEN: 'mdc-simple-menu--open',
5724
+ ANIMATING: 'mdc-simple-menu--animating',
5725
+ TOP_RIGHT: 'mdc-simple-menu--open-from-top-right',
5726
+ BOTTOM_LEFT: 'mdc-simple-menu--open-from-bottom-left',
5727
+ BOTTOM_RIGHT: 'mdc-simple-menu--open-from-bottom-right'
5728
+ };
5729
+
5730
+ var strings = {
5731
+ ITEMS_SELECTOR: '.mdc-simple-menu__items',
5732
+ SELECTED_EVENT: 'MDCSimpleMenu:selected',
5733
+ CANCEL_EVENT: 'MDCSimpleMenu:cancel'
5734
+ };
5735
+
5736
+ var numbers = {
5737
+ // Amount of time to wait before triggering a selected event on the menu. Note that this time
5738
+ // will most likely be bumped up once interactive lists are supported to allow for the ripple to
5739
+ // animate before closing the menu
5740
+ SELECTED_TRIGGER_DELAY: 50,
5741
+ // Total duration of the menu animation.
5742
+ TRANSITION_DURATION_MS: 300,
5743
+ // The menu starts its open animation with the X axis at this time value (0 - 1).
5744
+ TRANSITION_SCALE_ADJUSTMENT_X: 0.5,
5745
+ // The time value the menu waits until the animation starts on the Y axis (0 - 1).
5746
+ TRANSITION_SCALE_ADJUSTMENT_Y: 0.2,
5747
+ // The cubic bezier control points for the animation (cubic-bezier(0, 0, 0.2, 1)).
5748
+ TRANSITION_X1: 0,
5749
+ TRANSITION_Y1: 0,
5750
+ TRANSITION_X2: 0.2,
5751
+ TRANSITION_Y2: 1
5752
+ };
5753
+
5754
+ /***/ }),
5755
+ /* 50 */
5756
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5757
+
5758
+ "use strict";
5759
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5760
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(49);
5761
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
5762
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
5763
+
5764
+ 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; }; }();
5765
+
5766
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5767
+
5768
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5769
+
5770
+ 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; }
5771
+
5772
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
5773
+
5774
+ /**
5775
+ * Copyright 2016 Google Inc. All Rights Reserved.
5776
+ *
5777
+ * Licensed under the Apache License, Version 2.0 (the "License");
5778
+ * you may not use this file except in compliance with the License.
5779
+ * You may obtain a copy of the License at
5780
+ *
5781
+ * http://www.apache.org/licenses/LICENSE-2.0
5782
+ *
5783
+ * Unless required by applicable law or agreed to in writing, software
5784
+ * distributed under the License is distributed on an "AS IS" BASIS,
5785
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5786
+ * See the License for the specific language governing permissions and
5787
+ * limitations under the License.
5788
+ */
5789
+
5790
+
5791
+
5792
+
5793
+
5794
+ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5795
+ _inherits(MDCSimpleMenuFoundation, _MDCFoundation);
5796
+
5797
+ _createClass(MDCSimpleMenuFoundation, null, [{
5798
+ key: 'cssClasses',
5799
+ get: function get() {
5800
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
5801
+ }
5802
+ }, {
5803
+ key: 'strings',
5804
+ get: function get() {
5805
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
5806
+ }
5807
+ }, {
5808
+ key: 'numbers',
5809
+ get: function get() {
5810
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["c" /* numbers */];
5811
+ }
5812
+ }, {
5813
+ key: 'defaultAdapter',
5814
+ get: function get() {
5815
+ return {
5816
+ addClass: function addClass() /* className: string */{},
5817
+ removeClass: function removeClass() /* className: string */{},
5818
+ hasClass: function hasClass() /* className: string */{},
5221
5819
  hasNecessaryDom: function hasNecessaryDom() {
5222
5820
  return (/* boolean */false
5223
5821
  );
@@ -5696,12 +6294,12 @@ var MDCSimpleMenuFoundation = function (_MDCFoundation) {
5696
6294
  /* harmony default export */ __webpack_exports__["a"] = (MDCSimpleMenuFoundation);
5697
6295
 
5698
6296
  /***/ }),
5699
- /* 48 */
6297
+ /* 51 */
5700
6298
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5701
6299
 
5702
6300
  "use strict";
5703
6301
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5704
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(47);
6302
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation__ = __webpack_require__(50);
5705
6303
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(9);
5706
6304
  /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_1__foundation__["a"]; });
5707
6305
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MDCSimpleMenu; });
@@ -5828,13 +6426,13 @@ var MDCSimpleMenu = function (_MDCComponent) {
5828
6426
  return _this2.items.indexOf(target);
5829
6427
  },
5830
6428
  notifySelected: function notifySelected(evtData) {
5831
- return _this2.emit('MDCSimpleMenu:selected', {
6429
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.SELECTED_EVENT, {
5832
6430
  index: evtData.index,
5833
6431
  item: _this2.items[evtData.index]
5834
6432
  });
5835
6433
  },
5836
6434
  notifyCancel: function notifyCancel() {
5837
- return _this2.emit('MDCSimpleMenu:cancel');
6435
+ return _this2.emit(__WEBPACK_IMPORTED_MODULE_1__foundation__["a" /* default */].strings.CANCEL_EVENT);
5838
6436
  },
5839
6437
  saveFocus: function saveFocus() {
5840
6438
  _this2.previousFocus_ = document.activeElement;
@@ -5914,7 +6512,7 @@ var MDCSimpleMenu = function (_MDCComponent) {
5914
6512
  }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCComponent"]);
5915
6513
 
5916
6514
  /***/ }),
5917
- /* 49 */
6515
+ /* 52 */
5918
6516
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5919
6517
 
5920
6518
  "use strict";
@@ -5945,12 +6543,12 @@ var cssClasses = {
5945
6543
  };
5946
6544
 
5947
6545
  /***/ }),
5948
- /* 50 */
6546
+ /* 53 */
5949
6547
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
5950
6548
 
5951
6549
  "use strict";
5952
6550
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
5953
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(49);
6551
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(52);
5954
6552
  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; }; }();
5955
6553
 
5956
6554
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -6060,7 +6658,7 @@ var MDCRadioFoundation = function (_MDCFoundation) {
6060
6658
  /* harmony default export */ __webpack_exports__["a"] = (MDCRadioFoundation);
6061
6659
 
6062
6660
  /***/ }),
6063
- /* 51 */
6661
+ /* 54 */
6064
6662
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6065
6663
 
6066
6664
  "use strict";
@@ -6113,13 +6711,13 @@ var numbers = {
6113
6711
  };
6114
6712
 
6115
6713
  /***/ }),
6116
- /* 52 */
6714
+ /* 55 */
6117
6715
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6118
6716
 
6119
6717
  "use strict";
6120
6718
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6121
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(51);
6122
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(7);
6719
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(54);
6720
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util__ = __webpack_require__(8);
6123
6721
  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; };
6124
6722
 
6125
6723
  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; }; }();
@@ -6396,7 +6994,7 @@ var MDCRippleFoundation = function (_MDCFoundation) {
6396
6994
 
6397
6995
  var startPoint = void 0;
6398
6996
  if (wasActivatedByPointer) {
6399
- startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["c" /* getNormalizedEventCoords */])(activationEvent, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
6997
+ startPoint = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util__["d" /* getNormalizedEventCoords */])(activationEvent, this.adapter_.getWindowPageOffset(), this.adapter_.computeBoundingRect());
6400
6998
  } else {
6401
6999
  startPoint = {
6402
7000
  x: this.frame_.width / 2,
@@ -6616,11 +7214,12 @@ var MDCRippleFoundation = function (_MDCFoundation) {
6616
7214
  /* harmony default export */ __webpack_exports__["a"] = (MDCRippleFoundation);
6617
7215
 
6618
7216
  /***/ }),
6619
- /* 53 */
7217
+ /* 56 */
6620
7218
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6621
7219
 
6622
7220
  "use strict";
6623
7221
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
7222
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
6624
7223
  /**
6625
7224
  * Copyright 2016 Google Inc. All Rights Reserved.
6626
7225
  *
@@ -6642,13 +7241,18 @@ var cssClasses = {
6642
7241
  DISABLED: 'mdc-select--disabled'
6643
7242
  };
6644
7243
 
7244
+ var strings = {
7245
+ CHANGE_EVENT: 'MDCSelect:change'
7246
+ };
7247
+
6645
7248
  /***/ }),
6646
- /* 54 */
7249
+ /* 57 */
6647
7250
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6648
7251
 
6649
7252
  "use strict";
6650
7253
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
6651
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(53);
7254
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(56);
7255
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__material_menu__ = __webpack_require__(6);
6652
7256
  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; };
6653
7257
 
6654
7258
  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; }; }();
@@ -6678,6 +7282,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
6678
7282
 
6679
7283
 
6680
7284
 
7285
+
6681
7286
  var OPENER_KEYS = [{ key: 'ArrowUp', keyCode: 38, forType: 'keydown' }, { key: 'ArrowDown', keyCode: 40, forType: 'keydown' }, { key: 'Space', keyCode: 32, forType: 'keyup' }];
6682
7287
 
6683
7288
  var MDCSelectFoundation = function (_MDCFoundation) {
@@ -6688,6 +7293,11 @@ var MDCSelectFoundation = function (_MDCFoundation) {
6688
7293
  get: function get() {
6689
7294
  return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
6690
7295
  }
7296
+ }, {
7297
+ key: 'strings',
7298
+ get: function get() {
7299
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
7300
+ }
6691
7301
  }, {
6692
7302
  key: 'defaultAdapter',
6693
7303
  get: function get() {
@@ -6801,8 +7411,8 @@ var MDCSelectFoundation = function (_MDCFoundation) {
6801
7411
  this.adapter_.registerInteractionHandler('click', this.displayHandler_);
6802
7412
  this.adapter_.registerInteractionHandler('keydown', this.displayViaKeyboardHandler_);
6803
7413
  this.adapter_.registerInteractionHandler('keyup', this.displayViaKeyboardHandler_);
6804
- this.adapter_.registerMenuInteractionHandler('MDCSimpleMenu:selected', this.selectionHandler_);
6805
- this.adapter_.registerMenuInteractionHandler('MDCSimpleMenu:cancel', this.cancelHandler_);
7414
+ this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7415
+ this.adapter_.registerMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
6806
7416
  this.resize();
6807
7417
  }
6808
7418
  }, {
@@ -6813,8 +7423,8 @@ var MDCSelectFoundation = function (_MDCFoundation) {
6813
7423
  this.adapter_.deregisterInteractionHandler('click', this.displayHandler_);
6814
7424
  this.adapter_.deregisterInteractionHandler('keydown', this.displayViaKeyboardHandler_);
6815
7425
  this.adapter_.deregisterInteractionHandler('keyup', this.displayViaKeyboardHandler_);
6816
- this.adapter_.deregisterMenuInteractionHandler('MDCSimpleMenu:selected', this.selectionHandler_);
6817
- this.adapter_.deregisterMenuInteractionHandler('MDCSimpleMenu:cancel', this.cancelHandler_);
7426
+ this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.SELECTED_EVENT, this.selectionHandler_);
7427
+ this.adapter_.deregisterMenuInteractionHandler(__WEBPACK_IMPORTED_MODULE_2__material_menu__["MDCSimpleMenuFoundation"].strings.CANCEL_EVENT, this.cancelHandler_);
6818
7428
  }
6819
7429
  }, {
6820
7430
  key: 'getValue',
@@ -6981,7 +7591,7 @@ var MDCSelectFoundation = function (_MDCFoundation) {
6981
7591
  /* harmony default export */ __webpack_exports__["a"] = (MDCSelectFoundation);
6982
7592
 
6983
7593
  /***/ }),
6984
- /* 55 */
7594
+ /* 58 */
6985
7595
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6986
7596
 
6987
7597
  "use strict";
@@ -7024,12 +7634,12 @@ var numbers = {
7024
7634
  };
7025
7635
 
7026
7636
  /***/ }),
7027
- /* 56 */
7637
+ /* 59 */
7028
7638
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7029
7639
 
7030
7640
  "use strict";
7031
7641
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7032
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(55);
7642
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(58);
7033
7643
  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; };
7034
7644
 
7035
7645
  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; }; }();
@@ -7103,6 +7713,7 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
7103
7713
  var _this = _possibleConstructorReturn(this, (MDCSnackbarFoundation.__proto__ || Object.getPrototypeOf(MDCSnackbarFoundation)).call(this, _extends(MDCSnackbarFoundation.defaultAdapter, adapter)));
7104
7714
 
7105
7715
  _this.active_ = false;
7716
+ _this.dismissOnAction_ = true;
7106
7717
  _this.queue_ = [];
7107
7718
  _this.actionClickHandler_ = function () {
7108
7719
  return _this.invokeAction_();
@@ -7122,6 +7733,16 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
7122
7733
  value: function destroy() {
7123
7734
  this.adapter_.deregisterActionClickHandler(this.actionClickHandler_);
7124
7735
  }
7736
+ }, {
7737
+ key: 'dismissesOnAction',
7738
+ value: function dismissesOnAction() {
7739
+ return this.dismissOnAction_;
7740
+ }
7741
+ }, {
7742
+ key: 'setDismissOnAction',
7743
+ value: function setDismissOnAction(dismissOnAction) {
7744
+ this.dismissOnAction_ = !!dismissOnAction;
7745
+ }
7125
7746
  }, {
7126
7747
  key: 'show',
7127
7748
  value: function show(data) {
@@ -7169,16 +7790,23 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
7169
7790
  this.adapter_.addClass(ACTIVE);
7170
7791
  this.adapter_.unsetAriaHidden();
7171
7792
 
7172
- setTimeout(this.cleanup_.bind(this), data.timeout || MESSAGE_TIMEOUT);
7793
+ this.timeoutId_ = setTimeout(this.cleanup_.bind(this), data.timeout || MESSAGE_TIMEOUT);
7173
7794
  }
7174
7795
  }, {
7175
7796
  key: 'invokeAction_',
7176
7797
  value: function invokeAction_() {
7177
- if (!this.actionHandler_) {
7178
- return;
7179
- }
7798
+ try {
7799
+ if (!this.actionHandler_) {
7800
+ return;
7801
+ }
7180
7802
 
7181
- this.actionHandler_();
7803
+ this.actionHandler_();
7804
+ } finally {
7805
+ if (this.dismissOnAction_) {
7806
+ clearTimeout(this.timeoutId_);
7807
+ this.cleanup_();
7808
+ }
7809
+ }
7182
7810
  }
7183
7811
  }, {
7184
7812
  key: 'cleanup_',
@@ -7207,38 +7835,633 @@ var MDCSnackbarFoundation = function (_MDCFoundation) {
7207
7835
  this.adapter_.registerTransitionEndHandler(handler);
7208
7836
  }
7209
7837
  }, {
7210
- key: 'showNext_',
7211
- value: function showNext_() {
7212
- if (!this.queue_.length) {
7213
- return;
7214
- }
7215
-
7216
- this.show(this.queue_.shift());
7838
+ key: 'showNext_',
7839
+ value: function showNext_() {
7840
+ if (!this.queue_.length) {
7841
+ return;
7842
+ }
7843
+
7844
+ this.show(this.queue_.shift());
7845
+ }
7846
+ }, {
7847
+ key: 'setActionHidden_',
7848
+ value: function setActionHidden_(isHidden) {
7849
+ if (isHidden) {
7850
+ this.adapter_.setActionAriaHidden();
7851
+ } else {
7852
+ this.adapter_.unsetActionAriaHidden();
7853
+ }
7854
+ }
7855
+ }]);
7856
+
7857
+ return MDCSnackbarFoundation;
7858
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
7859
+
7860
+ /* harmony default export */ __webpack_exports__["a"] = (MDCSnackbarFoundation);
7861
+
7862
+ /***/ }),
7863
+ /* 60 */
7864
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7865
+
7866
+ "use strict";
7867
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
7868
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
7869
+ /**
7870
+ * Copyright 2017 Google Inc. All Rights Reserved.
7871
+ *
7872
+ * Licensed under the Apache License, Version 2.0 (the "License");
7873
+ * you may not use this file except in compliance with the License.
7874
+ * You may obtain a copy of the License at
7875
+ *
7876
+ * http://www.apache.org/licenses/LICENSE-2.0
7877
+ *
7878
+ * Unless required by applicable law or agreed to in writing, software
7879
+ * distributed under the License is distributed on an "AS IS" BASIS,
7880
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7881
+ * See the License for the specific language governing permissions and
7882
+ * limitations under the License.
7883
+ */
7884
+
7885
+ var cssClasses = {
7886
+ INDICATOR_FORWARD: 'mdc-tab-bar-scroller__indicator--forward',
7887
+ INDICATOR_BACK: 'mdc-tab-bar-scroller__indicator--back',
7888
+ INDICATOR_ENABLED: 'mdc-tab-bar-scroller__indicator--enabled',
7889
+ TAB: 'mdc-tab'
7890
+ };
7891
+
7892
+ var strings = {
7893
+ FRAME_SELECTOR: '.mdc-tab-bar-scroller__scroll-frame',
7894
+ TABS_SELECTOR: '.mdc-tab-bar-scroller__scroll-frame__tabs',
7895
+ TAB_SELECTOR: '.mdc-tab',
7896
+ INDICATOR_FORWARD_SELECTOR: '.mdc-tab-bar-scroller__indicator--forward',
7897
+ INDICATOR_BACK_SELECTOR: '.mdc-tab-bar-scroller__indicator--back'
7898
+ };
7899
+
7900
+ /***/ }),
7901
+ /* 61 */
7902
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7903
+
7904
+ "use strict";
7905
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
7906
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(60);
7907
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
7908
+
7909
+ 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; }; }();
7910
+
7911
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
7912
+
7913
+ 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; }
7914
+
7915
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
7916
+
7917
+ /**
7918
+ * Copyright 2017 Google Inc. All Rights Reserved.
7919
+ *
7920
+ * Licensed under the Apache License, Version 2.0 (the "License");
7921
+ * you may not use this file except in compliance with the License.
7922
+ * You may obtain a copy of the License at
7923
+ *
7924
+ * http://www.apache.org/licenses/LICENSE-2.0
7925
+ *
7926
+ * Unless required by applicable law or agreed to in writing, software
7927
+ * distributed under the License is distributed on an "AS IS" BASIS,
7928
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7929
+ * See the License for the specific language governing permissions and
7930
+ * limitations under the License.
7931
+ */
7932
+
7933
+
7934
+
7935
+
7936
+
7937
+ var MDCTabBarScrollerFoundation = function (_MDCFoundation) {
7938
+ _inherits(MDCTabBarScrollerFoundation, _MDCFoundation);
7939
+
7940
+ _createClass(MDCTabBarScrollerFoundation, null, [{
7941
+ key: 'cssClasses',
7942
+ get: function get() {
7943
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
7944
+ }
7945
+ }, {
7946
+ key: 'strings',
7947
+ get: function get() {
7948
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
7949
+ }
7950
+ }, {
7951
+ key: 'defaultAdapter',
7952
+ get: function get() {
7953
+ return {
7954
+ addClass: function addClass() /* className: string */{},
7955
+ removeClass: function removeClass() /* className: string */{},
7956
+ eventTargetHasClass: function eventTargetHasClass() {
7957
+ return (/* target: EventTarget, className: string */ /* boolean */false
7958
+ );
7959
+ },
7960
+ addClassToForwardIndicator: function addClassToForwardIndicator() /* className: string */{},
7961
+ removeClassFromForwardIndicator: function removeClassFromForwardIndicator() /* className: string */{},
7962
+ addClassToBackIndicator: function addClassToBackIndicator() /* className: string */{},
7963
+ removeClassFromBackIndicator: function removeClassFromBackIndicator() /* className: string */{},
7964
+ isRTL: function isRTL() {
7965
+ return (/* boolean */false
7966
+ );
7967
+ },
7968
+ registerBackIndicatorClickHandler: function registerBackIndicatorClickHandler() /* handler: EventListener */{},
7969
+ deregisterBackIndicatorClickHandler: function deregisterBackIndicatorClickHandler() /* handler: EventListener */{},
7970
+ registerForwardIndicatorClickHandler: function registerForwardIndicatorClickHandler() /* handler: EventListener */{},
7971
+ deregisterForwardIndicatorClickHandler: function deregisterForwardIndicatorClickHandler() /* handler: EventListener */{},
7972
+ registerCapturedInteractionHandler: function registerCapturedInteractionHandler() /* evt: string, handler: EventListener */{},
7973
+ deregisterCapturedInteractionHandler: function deregisterCapturedInteractionHandler() /* evt: string, handler: EventListener */{},
7974
+ registerWindowResizeHandler: function registerWindowResizeHandler() /* handler: EventListener */{},
7975
+ deregisterWindowResizeHandler: function deregisterWindowResizeHandler() /* handler: EventListener */{},
7976
+ getNumberOfTabs: function getNumberOfTabs() {
7977
+ return (/* number */0
7978
+ );
7979
+ },
7980
+ getComputedWidthForTabAtIndex: function getComputedWidthForTabAtIndex() {
7981
+ return (/* number */0
7982
+ );
7983
+ },
7984
+ getComputedLeftForTabAtIndex: function getComputedLeftForTabAtIndex() {
7985
+ return (/* number */0
7986
+ );
7987
+ },
7988
+ getOffsetWidthForScrollFrame: function getOffsetWidthForScrollFrame() {
7989
+ return (/* number */0
7990
+ );
7991
+ },
7992
+ getScrollLeftForScrollFrame: function getScrollLeftForScrollFrame() {
7993
+ return (/* number */0
7994
+ );
7995
+ },
7996
+ setScrollLeftForScrollFrame: function setScrollLeftForScrollFrame() /* scrollLeftAmount: number */{},
7997
+ getOffsetWidthForTabBar: function getOffsetWidthForTabBar() {
7998
+ return (/* number */0
7999
+ );
8000
+ },
8001
+ setTransformStyleForTabBar: function setTransformStyleForTabBar() /* value: string */{},
8002
+ getOffsetLeftForEventTarget: function getOffsetLeftForEventTarget() {
8003
+ return (/* target: EventTarget */ /* number */0
8004
+ );
8005
+ },
8006
+ getOffsetWidthForEventTarget: function getOffsetWidthForEventTarget() {
8007
+ return (/* target: EventTarget */ /* number */0
8008
+ );
8009
+ }
8010
+ };
8011
+ }
8012
+ }]);
8013
+
8014
+ function MDCTabBarScrollerFoundation(adapter) {
8015
+ _classCallCheck(this, MDCTabBarScrollerFoundation);
8016
+
8017
+ var _this = _possibleConstructorReturn(this, (MDCTabBarScrollerFoundation.__proto__ || Object.getPrototypeOf(MDCTabBarScrollerFoundation)).call(this, _extends(MDCTabBarScrollerFoundation.defaultAdapter, adapter)));
8018
+
8019
+ _this.pointerDownRecognized_ = false;
8020
+ _this.currentTranslateOffset_ = 0;
8021
+ _this.focusedTarget_ = null;
8022
+ _this.layoutFrame_ = 0;
8023
+ _this.scrollFrameScrollLeft_ = 0;
8024
+ _this.forwardIndicatorClickHandler_ = function (evt) {
8025
+ return _this.scrollForward(evt);
8026
+ };
8027
+ _this.backIndicatorClickHandler_ = function (evt) {
8028
+ return _this.scrollBack(evt);
8029
+ };
8030
+ _this.resizeHandler_ = function () {
8031
+ return _this.layout();
8032
+ };
8033
+ _this.interactionHandler_ = function (evt) {
8034
+ if (evt.type == 'touchstart' || evt.type == 'mousedown') {
8035
+ _this.pointerDownRecognized_ = true;
8036
+ }
8037
+ _this.handlePossibleTabKeyboardFocus_(evt);
8038
+
8039
+ if (evt.type == 'focus') {
8040
+ _this.pointerDownRecognized_ = false;
8041
+ }
8042
+ };
8043
+ return _this;
8044
+ }
8045
+
8046
+ _createClass(MDCTabBarScrollerFoundation, [{
8047
+ key: 'init',
8048
+ value: function init() {
8049
+ var _this2 = this;
8050
+
8051
+ this.adapter_.registerBackIndicatorClickHandler(this.backIndicatorClickHandler_);
8052
+ this.adapter_.registerForwardIndicatorClickHandler(this.forwardIndicatorClickHandler_);
8053
+ this.adapter_.registerWindowResizeHandler(this.resizeHandler_);
8054
+ ['touchstart', 'mousedown', 'focus'].forEach(function (evtType) {
8055
+ _this2.adapter_.registerCapturedInteractionHandler(evtType, _this2.interactionHandler_);
8056
+ });
8057
+ this.layout();
8058
+ }
8059
+ }, {
8060
+ key: 'destroy',
8061
+ value: function destroy() {
8062
+ var _this3 = this;
8063
+
8064
+ this.adapter_.deregisterBackIndicatorClickHandler(this.backIndicatorClickHandler_);
8065
+ this.adapter_.deregisterForwardIndicatorClickHandler(this.forwardIndicatorClickHandler_);
8066
+ this.adapter_.deregisterWindowResizeHandler(this.resizeHandler_);
8067
+ ['touchstart', 'mousedown', 'focus'].forEach(function (evtType) {
8068
+ _this3.adapter_.deregisterCapturedInteractionHandler(evtType, _this3.interactionHandler_);
8069
+ });
8070
+ }
8071
+ }, {
8072
+ key: 'scrollBack',
8073
+ value: function scrollBack() {
8074
+ var evt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
8075
+
8076
+ if (evt) {
8077
+ evt.preventDefault();
8078
+ }
8079
+
8080
+ var tabWidthAccumulator = 0;
8081
+ var scrollTargetIndex = 0;
8082
+
8083
+ for (var i = this.adapter_.getNumberOfTabs() - 1; i > 0; i--) {
8084
+ var tabOffsetLeft = this.adapter_.getComputedLeftForTabAtIndex(i);
8085
+ var tabBarWidthLessTabOffsetLeft = this.adapter_.getOffsetWidthForTabBar() - tabOffsetLeft;
8086
+
8087
+ var tabIsNotOccluded = tabOffsetLeft > this.currentTranslateOffset_;
8088
+ if (this.isRTL_()) {
8089
+ tabIsNotOccluded = tabBarWidthLessTabOffsetLeft > this.currentTranslateOffset_;
8090
+ }
8091
+
8092
+ if (tabIsNotOccluded) {
8093
+ continue;
8094
+ }
8095
+
8096
+ tabWidthAccumulator += this.adapter_.getComputedWidthForTabAtIndex(i);
8097
+
8098
+ var scrollTargetDetermined = tabWidthAccumulator > this.adapter_.getOffsetWidthForScrollFrame();
8099
+ if (scrollTargetDetermined) {
8100
+ scrollTargetIndex = this.isRTL_() ? i + 1 : i;
8101
+ break;
8102
+ }
8103
+ }
8104
+
8105
+ this.scrollToTabAtIndex_(scrollTargetIndex);
8106
+ }
8107
+ }, {
8108
+ key: 'scrollForward',
8109
+ value: function scrollForward() {
8110
+ var evt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
8111
+
8112
+ if (evt) {
8113
+ evt.preventDefault();
8114
+ }
8115
+
8116
+ var scrollFrameOffsetWidth = this.adapter_.getOffsetWidthForScrollFrame() + this.currentTranslateOffset_;
8117
+ var scrollTargetIndex = 0;
8118
+
8119
+ for (var i = 0; i < this.adapter_.getNumberOfTabs(); i++) {
8120
+ var tabOffsetLeftAndWidth = this.adapter_.getComputedLeftForTabAtIndex(i) + this.adapter_.getComputedWidthForTabAtIndex(i);
8121
+ var scrollTargetDetermined = tabOffsetLeftAndWidth > scrollFrameOffsetWidth;
8122
+
8123
+ if (this.isRTL_()) {
8124
+ var frameOffsetAndTabWidth = scrollFrameOffsetWidth - this.adapter_.getComputedWidthForTabAtIndex(i);
8125
+ var _tabOffsetLeftAndWidth = this.adapter_.getComputedLeftForTabAtIndex(i) + this.adapter_.getComputedWidthForTabAtIndex(i);
8126
+ var tabRightOffset = this.adapter_.getOffsetWidthForTabBar() - _tabOffsetLeftAndWidth;
8127
+
8128
+ scrollTargetDetermined = tabRightOffset > frameOffsetAndTabWidth;
8129
+ }
8130
+
8131
+ if (scrollTargetDetermined) {
8132
+ scrollTargetIndex = i;
8133
+ break;
8134
+ }
8135
+ }
8136
+
8137
+ this.scrollToTabAtIndex_(scrollTargetIndex);
8138
+ }
8139
+ }, {
8140
+ key: 'layout',
8141
+ value: function layout() {
8142
+ var _this4 = this;
8143
+
8144
+ cancelAnimationFrame(this.layoutFrame_);
8145
+ this.scrollFrameScrollLeft_ = this.adapter_.getScrollLeftForScrollFrame();
8146
+ this.layoutFrame_ = requestAnimationFrame(function () {
8147
+ return _this4.layout_();
8148
+ });
8149
+ }
8150
+ }, {
8151
+ key: 'isRTL_',
8152
+ value: function isRTL_() {
8153
+ return this.adapter_.isRTL();
8154
+ }
8155
+ }, {
8156
+ key: 'handlePossibleTabKeyboardFocus_',
8157
+ value: function handlePossibleTabKeyboardFocus_(evt) {
8158
+ if (!this.adapter_.eventTargetHasClass(evt.target, __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].TAB) || this.pointerDownRecognized_) {
8159
+ return;
8160
+ }
8161
+
8162
+ var resetAmt = this.isRTL_() ? this.scrollFrameScrollLeft_ : 0;
8163
+ this.adapter_.setScrollLeftForScrollFrame(resetAmt);
8164
+
8165
+ this.focusedTarget_ = evt.target;
8166
+ var scrollFrameWidth = this.adapter_.getOffsetWidthForScrollFrame();
8167
+ var tabBarWidth = this.adapter_.getOffsetWidthForTabBar();
8168
+ var leftEdge = this.adapter_.getOffsetLeftForEventTarget(this.focusedTarget_);
8169
+ var rightEdge = leftEdge + this.adapter_.getOffsetWidthForEventTarget(this.focusedTarget_);
8170
+
8171
+ var shouldScrollBack = rightEdge <= this.currentTranslateOffset_;
8172
+ var shouldScrollForward = rightEdge > this.currentTranslateOffset_ + scrollFrameWidth;
8173
+
8174
+ if (this.isRTL_()) {
8175
+ var normalizedLeftOffset = tabBarWidth - leftEdge;
8176
+ shouldScrollBack = leftEdge >= tabBarWidth - this.currentTranslateOffset_;
8177
+ shouldScrollForward = normalizedLeftOffset > scrollFrameWidth + this.currentTranslateOffset_;
8178
+ }
8179
+
8180
+ if (shouldScrollForward) {
8181
+ this.scrollForward();
8182
+ } else if (shouldScrollBack) {
8183
+ this.scrollBack();
8184
+ }
8185
+
8186
+ this.pointerDownRecognized_ = false;
8187
+ }
8188
+ }, {
8189
+ key: 'layout_',
8190
+ value: function layout_() {
8191
+ var frameWidth = this.adapter_.getOffsetWidthForScrollFrame();
8192
+ var isOverflowing = this.adapter_.getOffsetWidthForTabBar() > frameWidth;
8193
+
8194
+ if (!isOverflowing) {
8195
+ this.currentTranslateOffset_ = 0;
8196
+ }
8197
+
8198
+ this.shiftFrame_();
8199
+ this.updateIndicatorEnabledStates_();
8200
+ }
8201
+ }, {
8202
+ key: 'scrollToTabAtIndex_',
8203
+ value: function scrollToTabAtIndex_(index) {
8204
+ var _this5 = this;
8205
+
8206
+ var scrollTargetOffsetLeft = this.adapter_.getComputedLeftForTabAtIndex(index);
8207
+ var scrollTargetOffsetWidth = this.adapter_.getComputedWidthForTabAtIndex(index);
8208
+
8209
+ this.currentTranslateOffset_ = this.normalizeForRTL_(scrollTargetOffsetLeft, scrollTargetOffsetWidth);
8210
+
8211
+ requestAnimationFrame(function () {
8212
+ return _this5.shiftFrame_();
8213
+ });
8214
+ }
8215
+ }, {
8216
+ key: 'normalizeForRTL_',
8217
+ value: function normalizeForRTL_(left, width) {
8218
+ return this.isRTL_() ? this.adapter_.getOffsetWidthForTabBar() - (left + width) : left;
8219
+ }
8220
+ }, {
8221
+ key: 'shiftFrame_',
8222
+ value: function shiftFrame_() {
8223
+ var shiftAmount = this.isRTL_() ? this.currentTranslateOffset_ : -this.currentTranslateOffset_;
8224
+
8225
+ this.adapter_.setTransformStyleForTabBar('translateX(' + shiftAmount + 'px)');
8226
+ this.updateIndicatorEnabledStates_();
8227
+ }
8228
+ }, {
8229
+ key: 'updateIndicatorEnabledStates_',
8230
+ value: function updateIndicatorEnabledStates_() {
8231
+ var INDICATOR_ENABLED = __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].INDICATOR_ENABLED;
8232
+
8233
+ if (this.currentTranslateOffset_ === 0) {
8234
+ this.adapter_.removeClassFromBackIndicator(INDICATOR_ENABLED);
8235
+ } else {
8236
+ this.adapter_.addClassToBackIndicator(INDICATOR_ENABLED);
8237
+ }
8238
+
8239
+ var remainingTabBarWidth = this.adapter_.getOffsetWidthForTabBar() - this.currentTranslateOffset_;
8240
+ if (remainingTabBarWidth > this.adapter_.getOffsetWidthForScrollFrame()) {
8241
+ this.adapter_.addClassToForwardIndicator(INDICATOR_ENABLED);
8242
+ } else {
8243
+ this.adapter_.removeClassFromForwardIndicator(INDICATOR_ENABLED);
8244
+ }
8245
+ }
8246
+ }]);
8247
+
8248
+ return MDCTabBarScrollerFoundation;
8249
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_foundation__["a" /* default */]);
8250
+
8251
+ /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarScrollerFoundation);
8252
+
8253
+ /***/ }),
8254
+ /* 62 */
8255
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8256
+
8257
+ "use strict";
8258
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_animation__ = __webpack_require__(3);
8259
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_base_component__ = __webpack_require__(4);
8260
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__tab_bar__ = __webpack_require__(10);
8261
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(61);
8262
+ /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
8263
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBarScroller; });
8264
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8265
+
8266
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8267
+
8268
+ 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; }
8269
+
8270
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
8271
+
8272
+ /**
8273
+ * Copyright 2017 Google Inc. All Rights Reserved.
8274
+ *
8275
+ * Licensed under the Apache License, Version 2.0 (the "License");
8276
+ * you may not use this file except in compliance with the License.
8277
+ * You may obtain a copy of the License at
8278
+ *
8279
+ * http://www.apache.org/licenses/LICENSE-2.0
8280
+ *
8281
+ * Unless required by applicable law or agreed to in writing, software
8282
+ * distributed under the License is distributed on an "AS IS" BASIS,
8283
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8284
+ * See the License for the specific language governing permissions and
8285
+ * limitations under the License.
8286
+ */
8287
+
8288
+
8289
+
8290
+
8291
+
8292
+
8293
+
8294
+
8295
+
8296
+ var MDCTabBarScroller = function (_MDCComponent) {
8297
+ _inherits(MDCTabBarScroller, _MDCComponent);
8298
+
8299
+ function MDCTabBarScroller() {
8300
+ _classCallCheck(this, MDCTabBarScroller);
8301
+
8302
+ return _possibleConstructorReturn(this, (MDCTabBarScroller.__proto__ || Object.getPrototypeOf(MDCTabBarScroller)).apply(this, arguments));
8303
+ }
8304
+
8305
+ _createClass(MDCTabBarScroller, [{
8306
+ key: 'initialize',
8307
+ value: function initialize() {
8308
+ var tabBarFactory = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (root) {
8309
+ return new __WEBPACK_IMPORTED_MODULE_2__tab_bar__["b" /* MDCTabBar */](root);
8310
+ };
8311
+
8312
+ this.scrollFrame_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */].strings.FRAME_SELECTOR);
8313
+ this.tabBarEl_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */].strings.TABS_SELECTOR);
8314
+ this.forwardIndicator_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */].strings.INDICATOR_FORWARD_SELECTOR);
8315
+ this.backIndicator_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */].strings.INDICATOR_BACK_SELECTOR);
8316
+ this.tabBar_ = tabBarFactory(this.tabBarEl_);
8317
+ }
8318
+ }, {
8319
+ key: 'getDefaultFoundation',
8320
+ value: function getDefaultFoundation() {
8321
+ var _this2 = this;
8322
+
8323
+ return new __WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */]({
8324
+ addClass: function addClass(className) {
8325
+ return _this2.root_.classList.add(className);
8326
+ },
8327
+ removeClass: function removeClass(className) {
8328
+ return _this2.root_.classList.remove(className);
8329
+ },
8330
+ eventTargetHasClass: function eventTargetHasClass(target, className) {
8331
+ return target.classList.contains(className);
8332
+ },
8333
+ addClassToForwardIndicator: function addClassToForwardIndicator(className) {
8334
+ return _this2.forwardIndicator_.classList.add(className);
8335
+ },
8336
+ removeClassFromForwardIndicator: function removeClassFromForwardIndicator(className) {
8337
+ return _this2.forwardIndicator_.classList.remove(className);
8338
+ },
8339
+ addClassToBackIndicator: function addClassToBackIndicator(className) {
8340
+ return _this2.backIndicator_.classList.add(className);
8341
+ },
8342
+ removeClassFromBackIndicator: function removeClassFromBackIndicator(className) {
8343
+ return _this2.backIndicator_.classList.remove(className);
8344
+ },
8345
+ isRTL: function isRTL() {
8346
+ return getComputedStyle(_this2.root_).getPropertyValue('direction') === 'rtl';
8347
+ },
8348
+ registerBackIndicatorClickHandler: function registerBackIndicatorClickHandler(handler) {
8349
+ return _this2.backIndicator_.addEventListener('click', handler);
8350
+ },
8351
+ deregisterBackIndicatorClickHandler: function deregisterBackIndicatorClickHandler(handler) {
8352
+ return _this2.backIndicator_.removeEventListener('click', handler);
8353
+ },
8354
+ registerForwardIndicatorClickHandler: function registerForwardIndicatorClickHandler(handler) {
8355
+ return _this2.forwardIndicator_.addEventListener('click', handler);
8356
+ },
8357
+ deregisterForwardIndicatorClickHandler: function deregisterForwardIndicatorClickHandler(handler) {
8358
+ return _this2.forwardIndicator_.removeEventListener('click', handler);
8359
+ },
8360
+ registerCapturedInteractionHandler: function registerCapturedInteractionHandler(evt, handler) {
8361
+ return _this2.root_.addEventListener(evt, handler, true);
8362
+ },
8363
+ deregisterCapturedInteractionHandler: function deregisterCapturedInteractionHandler(evt, handler) {
8364
+ return _this2.root_.removeEventListener(evt, handler, true);
8365
+ },
8366
+ registerWindowResizeHandler: function registerWindowResizeHandler(handler) {
8367
+ return window.addEventListener('resize', handler);
8368
+ },
8369
+ deregisterWindowResizeHandler: function deregisterWindowResizeHandler(handler) {
8370
+ return window.removeEventListener('resize', handler);
8371
+ },
8372
+ getNumberOfTabs: function getNumberOfTabs() {
8373
+ return _this2.tabBar.tabs.length;
8374
+ },
8375
+ getComputedWidthForTabAtIndex: function getComputedWidthForTabAtIndex(index) {
8376
+ return _this2.tabBar.tabs[index].computedWidth;
8377
+ },
8378
+ getComputedLeftForTabAtIndex: function getComputedLeftForTabAtIndex(index) {
8379
+ return _this2.tabBar.tabs[index].computedLeft;
8380
+ },
8381
+ getOffsetWidthForScrollFrame: function getOffsetWidthForScrollFrame() {
8382
+ return _this2.scrollFrame_.offsetWidth;
8383
+ },
8384
+ getScrollLeftForScrollFrame: function getScrollLeftForScrollFrame() {
8385
+ return _this2.scrollFrame_.scrollLeft;
8386
+ },
8387
+ setScrollLeftForScrollFrame: function setScrollLeftForScrollFrame(scrollLeftAmount) {
8388
+ return _this2.scrollFrame_.scrollLeft = scrollLeftAmount;
8389
+ },
8390
+ getOffsetWidthForTabBar: function getOffsetWidthForTabBar() {
8391
+ return _this2.tabBarEl_.offsetWidth;
8392
+ },
8393
+ setTransformStyleForTabBar: function setTransformStyleForTabBar(value) {
8394
+ _this2.tabBarEl_.style.setProperty(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__material_animation__["a" /* getCorrectPropertyName */])(window, 'transform'), value);
8395
+ },
8396
+ getOffsetLeftForEventTarget: function getOffsetLeftForEventTarget(target) {
8397
+ return target.offsetLeft;
8398
+ },
8399
+ getOffsetWidthForEventTarget: function getOffsetWidthForEventTarget(target) {
8400
+ return target.offsetWidth;
8401
+ }
8402
+ });
8403
+ }
8404
+ }, {
8405
+ key: 'layout',
8406
+ value: function layout() {
8407
+ this.foundation_.layout();
8408
+ }
8409
+ }, {
8410
+ key: 'tabBar',
8411
+ get: function get() {
8412
+ return this.tabBar_;
7217
8413
  }
7218
- }, {
7219
- key: 'setActionHidden_',
7220
- value: function setActionHidden_(isHidden) {
7221
- if (isHidden) {
7222
- this.adapter_.setActionAriaHidden();
7223
- } else {
7224
- this.adapter_.unsetActionAriaHidden();
7225
- }
8414
+ }], [{
8415
+ key: 'attachTo',
8416
+ value: function attachTo(root) {
8417
+ return new MDCTabBarScroller(root);
7226
8418
  }
7227
8419
  }]);
7228
8420
 
7229
- return MDCSnackbarFoundation;
7230
- }(__WEBPACK_IMPORTED_MODULE_0__material_base__["MDCFoundation"]);
8421
+ return MDCTabBarScroller;
8422
+ }(__WEBPACK_IMPORTED_MODULE_1__material_base_component__["a" /* default */]);
7231
8423
 
7232
- /* harmony default export */ __webpack_exports__["a"] = (MDCSnackbarFoundation);
8424
+ /***/ }),
8425
+ /* 63 */
8426
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
8427
+
8428
+ "use strict";
8429
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cssClasses; });
8430
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return strings; });
8431
+ /**
8432
+ * Copyright 2017 Google Inc. All Rights Reserved.
8433
+ *
8434
+ * Licensed under the Apache License, Version 2.0 (the "License");
8435
+ * you may not use this file except in compliance with the License.
8436
+ * You may obtain a copy of the License at
8437
+ *
8438
+ * http://www.apache.org/licenses/LICENSE-2.0
8439
+ *
8440
+ * Unless required by applicable law or agreed to in writing, software
8441
+ * distributed under the License is distributed on an "AS IS" BASIS,
8442
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8443
+ * See the License for the specific language governing permissions and
8444
+ * limitations under the License.
8445
+ */
8446
+
8447
+ var cssClasses = {
8448
+ UPGRADED: 'mdc-tab-bar-upgraded'
8449
+ };
8450
+
8451
+ var strings = {
8452
+ TAB_SELECTOR: '.mdc-tab',
8453
+ INDICATOR_SELECTOR: '.mdc-tab-bar__indicator',
8454
+ CHANGE_EVENT: 'MDCTabBar:change'
8455
+ };
7233
8456
 
7234
8457
  /***/ }),
7235
- /* 57 */
8458
+ /* 64 */
7236
8459
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7237
8460
 
7238
8461
  "use strict";
7239
8462
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
7240
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(4);
7241
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(10);
8463
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_animation__ = __webpack_require__(3);
8464
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(63);
7242
8465
  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; };
7243
8466
 
7244
8467
  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; }; }();
@@ -7276,12 +8499,12 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
7276
8499
  _createClass(MDCTabBarFoundation, null, [{
7277
8500
  key: 'cssClasses',
7278
8501
  get: function get() {
7279
- return __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* cssClasses */];
8502
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */];
7280
8503
  }
7281
8504
  }, {
7282
8505
  key: 'strings',
7283
8506
  get: function get() {
7284
- return __WEBPACK_IMPORTED_MODULE_2__constants__["a" /* strings */];
8507
+ return __WEBPACK_IMPORTED_MODULE_2__constants__["b" /* strings */];
7285
8508
  }
7286
8509
  }, {
7287
8510
  key: 'defaultAdapter',
@@ -7349,7 +8572,7 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
7349
8572
  _createClass(MDCTabBarFoundation, [{
7350
8573
  key: 'init',
7351
8574
  value: function init() {
7352
- this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_2__constants__["b" /* cssClasses */].UPGRADED);
8575
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].UPGRADED);
7353
8576
  this.adapter_.bindOnMDCTabSelectedEvent();
7354
8577
  this.adapter_.registerResizeHandler(this.resizeHandler_);
7355
8578
  var activeTabIndex = this.findActiveTabIndex_();
@@ -7361,7 +8584,7 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
7361
8584
  }, {
7362
8585
  key: 'destroy',
7363
8586
  value: function destroy() {
7364
- this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_2__constants__["b" /* cssClasses */].UPGRADED);
8587
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* cssClasses */].UPGRADED);
7365
8588
  this.adapter_.unbindOnMDCTabSelectedEvent();
7366
8589
  this.adapter_.deregisterResizeHandler(this.resizeHandler_);
7367
8590
  }
@@ -7478,203 +8701,12 @@ var MDCTabBarFoundation = function (_MDCFoundation) {
7478
8701
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabBarFoundation);
7479
8702
 
7480
8703
  /***/ }),
7481
- /* 58 */
7482
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
7483
-
7484
- "use strict";
7485
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_component__ = __webpack_require__(5);
7486
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__tab__ = __webpack_require__(12);
7487
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__constants__ = __webpack_require__(10);
7488
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation__ = __webpack_require__(57);
7489
- /* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_3__foundation__["a"]; });
7490
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return MDCTabBar; });
7491
- 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; }; }();
7492
-
7493
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
7494
-
7495
- 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; }
7496
-
7497
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
7498
-
7499
- /**
7500
- * Copyright 2017 Google Inc. All Rights Reserved.
7501
- *
7502
- * Licensed under the Apache License, Version 2.0 (the "License");
7503
- * you may not use this file except in compliance with the License.
7504
- * You may obtain a copy of the License at
7505
- *
7506
- * http://www.apache.org/licenses/LICENSE-2.0
7507
- *
7508
- * Unless required by applicable law or agreed to in writing, software
7509
- * distributed under the License is distributed on an "AS IS" BASIS,
7510
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7511
- * See the License for the specific language governing permissions and
7512
- * limitations under the License.
7513
- */
7514
-
7515
-
7516
-
7517
-
7518
-
7519
-
7520
-
7521
-
7522
-
7523
- var MDCTabBar = function (_MDCComponent) {
7524
- _inherits(MDCTabBar, _MDCComponent);
7525
-
7526
- function MDCTabBar() {
7527
- _classCallCheck(this, MDCTabBar);
7528
-
7529
- return _possibleConstructorReturn(this, (MDCTabBar.__proto__ || Object.getPrototypeOf(MDCTabBar)).apply(this, arguments));
7530
- }
7531
-
7532
- _createClass(MDCTabBar, [{
7533
- key: 'initialize',
7534
- value: function initialize() {
7535
- var _this2 = this;
7536
-
7537
- var tabFactory = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (el) {
7538
- return new __WEBPACK_IMPORTED_MODULE_1__tab__["b" /* MDCTab */](el);
7539
- };
7540
-
7541
- this.indicator_ = this.root_.querySelector(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* strings */].INDICATOR_SELECTOR);
7542
- this.tabs_ = this.gatherTabs_(tabFactory);
7543
- this.tabSelectedHandler_ = function (_ref) {
7544
- var detail = _ref.detail;
7545
- var tab = detail.tab;
7546
-
7547
- _this2.setActiveTab_(tab, true);
7548
- };
7549
- }
7550
- }, {
7551
- key: 'getDefaultFoundation',
7552
- value: function getDefaultFoundation() {
7553
- var _this3 = this;
7554
-
7555
- return new __WEBPACK_IMPORTED_MODULE_3__foundation__["a" /* default */]({
7556
- addClass: function addClass(className) {
7557
- return _this3.root_.classList.add(className);
7558
- },
7559
- removeClass: function removeClass(className) {
7560
- return _this3.root_.classList.remove(className);
7561
- },
7562
- bindOnMDCTabSelectedEvent: function bindOnMDCTabSelectedEvent() {
7563
- return _this3.listen('MDCTab:selected', _this3.tabSelectedHandler_);
7564
- },
7565
- unbindOnMDCTabSelectedEvent: function unbindOnMDCTabSelectedEvent() {
7566
- return _this3.unlisten('MDCTab:selected', _this3.tabSelectedHandler_);
7567
- },
7568
- registerResizeHandler: function registerResizeHandler(handler) {
7569
- return window.addEventListener('resize', handler);
7570
- },
7571
- deregisterResizeHandler: function deregisterResizeHandler(handler) {
7572
- return window.removeEventListener('resize', handler);
7573
- },
7574
- getOffsetWidth: function getOffsetWidth() {
7575
- return _this3.root_.offsetWidth;
7576
- },
7577
- setStyleForIndicator: function setStyleForIndicator(propertyName, value) {
7578
- return _this3.indicator_.style.setProperty(propertyName, value);
7579
- },
7580
- getOffsetWidthForIndicator: function getOffsetWidthForIndicator() {
7581
- return _this3.indicator_.offsetWidth;
7582
- },
7583
- notifyChange: function notifyChange(evtData) {
7584
- return _this3.emit('MDCTabBar:change', evtData);
7585
- },
7586
- getNumberOfTabs: function getNumberOfTabs() {
7587
- return _this3.tabs.length;
7588
- },
7589
- isTabActiveAtIndex: function isTabActiveAtIndex(index) {
7590
- return _this3.tabs[index].isActive;
7591
- },
7592
- setTabActiveAtIndex: function setTabActiveAtIndex(index, isActive) {
7593
- _this3.tabs[index].isActive = isActive;
7594
- },
7595
- isDefaultPreventedOnClickForTabAtIndex: function isDefaultPreventedOnClickForTabAtIndex(index) {
7596
- return _this3.tabs[index].preventDefaultOnClick;
7597
- },
7598
- setPreventDefaultOnClickForTabAtIndex: function setPreventDefaultOnClickForTabAtIndex(index, preventDefaultOnClick) {
7599
- _this3.tabs[index].preventDefaultOnClick = preventDefaultOnClick;
7600
- },
7601
- measureTabAtIndex: function measureTabAtIndex(index) {
7602
- return _this3.tabs[index].measureSelf();
7603
- },
7604
- getComputedWidthForTabAtIndex: function getComputedWidthForTabAtIndex(index) {
7605
- return _this3.tabs[index].computedWidth;
7606
- },
7607
- getComputedLeftForTabAtIndex: function getComputedLeftForTabAtIndex(index) {
7608
- return _this3.tabs[index].computedLeft;
7609
- }
7610
- });
7611
- }
7612
- }, {
7613
- key: 'gatherTabs_',
7614
- value: function gatherTabs_(tabFactory) {
7615
- var tabElements = [].slice.call(this.root_.querySelectorAll(__WEBPACK_IMPORTED_MODULE_2__constants__["a" /* strings */].TAB_SELECTOR));
7616
- return tabElements.map(function (el) {
7617
- return tabFactory(el);
7618
- });
7619
- }
7620
- }, {
7621
- key: 'setActiveTabIndex_',
7622
- value: function setActiveTabIndex_(activeTabIndex, notifyChange) {
7623
- this.foundation_.switchToTabAtIndex(activeTabIndex, notifyChange);
7624
- }
7625
- }, {
7626
- key: 'layout',
7627
- value: function layout() {
7628
- this.foundation_.layout();
7629
- }
7630
- }, {
7631
- key: 'setActiveTab_',
7632
- value: function setActiveTab_(activeTab, notifyChange) {
7633
- var indexOfTab = this.tabs.indexOf(activeTab);
7634
- if (indexOfTab < 0) {
7635
- throw new Error('Invalid tab component given as activeTab: Tab not found within this component\'s tab list');
7636
- }
7637
- this.setActiveTabIndex_(indexOfTab, notifyChange);
7638
- }
7639
- }, {
7640
- key: 'tabs',
7641
- get: function get() {
7642
- return this.tabs_;
7643
- }
7644
- }, {
7645
- key: 'activeTab',
7646
- get: function get() {
7647
- var activeIndex = this.foundation_.getActiveTabIndex();
7648
- return this.tabs[activeIndex];
7649
- },
7650
- set: function set(tab) {
7651
- this.setActiveTab_(tab, false);
7652
- }
7653
- }, {
7654
- key: 'activeTabIndex',
7655
- get: function get() {
7656
- return this.foundation_.getActiveTabIndex();
7657
- },
7658
- set: function set(index) {
7659
- this.setActiveTabIndex_(index, false);
7660
- }
7661
- }], [{
7662
- key: 'attachTo',
7663
- value: function attachTo(root) {
7664
- return new MDCTabBar(root);
7665
- }
7666
- }]);
7667
-
7668
- return MDCTabBar;
7669
- }(__WEBPACK_IMPORTED_MODULE_0__material_base_component__["a" /* default */]);
7670
-
7671
- /***/ }),
7672
- /* 59 */
8704
+ /* 65 */
7673
8705
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7674
8706
 
7675
8707
  "use strict";
7676
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__constants__ = __webpack_require__(11);
7677
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__material_base_foundation__ = __webpack_require__(2);
8708
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
8709
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(11);
7678
8710
  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; };
7679
8711
 
7680
8712
  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; }; }();
@@ -7710,7 +8742,12 @@ var MDCTabFoundation = function (_MDCFoundation) {
7710
8742
  _createClass(MDCTabFoundation, null, [{
7711
8743
  key: 'cssClasses',
7712
8744
  get: function get() {
7713
- return __WEBPACK_IMPORTED_MODULE_0__constants__["a" /* cssClasses */];
8745
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */];
8746
+ }
8747
+ }, {
8748
+ key: 'strings',
8749
+ get: function get() {
8750
+ return __WEBPACK_IMPORTED_MODULE_1__constants__["b" /* strings */];
7714
8751
  }
7715
8752
  }, {
7716
8753
  key: 'defaultAdapter',
@@ -7792,9 +8829,9 @@ var MDCTabFoundation = function (_MDCFoundation) {
7792
8829
  value: function setActive(isActive) {
7793
8830
  this.isActive_ = isActive;
7794
8831
  if (this.isActive_) {
7795
- this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* cssClasses */].ACTIVE);
8832
+ this.adapter_.addClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].ACTIVE);
7796
8833
  } else {
7797
- this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_0__constants__["a" /* cssClasses */].ACTIVE);
8834
+ this.adapter_.removeClass(__WEBPACK_IMPORTED_MODULE_1__constants__["a" /* cssClasses */].ACTIVE);
7798
8835
  }
7799
8836
  }
7800
8837
  }, {
@@ -7816,12 +8853,12 @@ var MDCTabFoundation = function (_MDCFoundation) {
7816
8853
  }]);
7817
8854
 
7818
8855
  return MDCTabFoundation;
7819
- }(__WEBPACK_IMPORTED_MODULE_1__material_base_foundation__["a" /* default */]);
8856
+ }(__WEBPACK_IMPORTED_MODULE_0__material_base_foundation__["a" /* default */]);
7820
8857
 
7821
8858
  /* harmony default export */ __webpack_exports__["a"] = (MDCTabFoundation);
7822
8859
 
7823
8860
  /***/ }),
7824
- /* 60 */
8861
+ /* 66 */
7825
8862
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7826
8863
 
7827
8864
  "use strict";
@@ -7861,12 +8898,12 @@ var cssClasses = {
7861
8898
  };
7862
8899
 
7863
8900
  /***/ }),
7864
- /* 61 */
8901
+ /* 67 */
7865
8902
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7866
8903
 
7867
8904
  "use strict";
7868
8905
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base__ = __webpack_require__(0);
7869
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(60);
8906
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(66);
7870
8907
  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; };
7871
8908
 
7872
8909
  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; }; }();
@@ -8108,7 +9145,7 @@ var MDCTextfieldFoundation = function (_MDCFoundation) {
8108
9145
  /* harmony default export */ __webpack_exports__["a"] = (MDCTextfieldFoundation);
8109
9146
 
8110
9147
  /***/ }),
8111
- /* 62 */
9148
+ /* 68 */
8112
9149
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8113
9150
 
8114
9151
  "use strict";
@@ -8143,7 +9180,8 @@ var cssClasses = {
8143
9180
 
8144
9181
  var strings = {
8145
9182
  TITLE_SELECTOR: '.mdc-toolbar__title',
8146
- FLEXIBLE_ROW_SELECTOR: '.mdc-toolbar__row:first-child'
9183
+ FLEXIBLE_ROW_SELECTOR: '.mdc-toolbar__row:first-child',
9184
+ CHANGE_EVENT: 'MDCToolbar:change'
8147
9185
  };
8148
9186
 
8149
9187
  var numbers = {
@@ -8155,12 +9193,12 @@ var numbers = {
8155
9193
  };
8156
9194
 
8157
9195
  /***/ }),
8158
- /* 63 */
9196
+ /* 69 */
8159
9197
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8160
9198
 
8161
9199
  "use strict";
8162
9200
  /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__material_base_foundation__ = __webpack_require__(2);
8163
- /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(62);
9201
+ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__constants__ = __webpack_require__(68);
8164
9202
  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; };
8165
9203
 
8166
9204
  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; }; }();
@@ -8445,7 +9483,7 @@ var MDCToolbarFoundation = function (_MDCFoundation) {
8445
9483
  /* harmony default export */ __webpack_exports__["a"] = (MDCToolbarFoundation);
8446
9484
 
8447
9485
  /***/ }),
8448
- /* 64 */
9486
+ /* 70 */
8449
9487
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
8450
9488
 
8451
9489
  "use strict";
@@ -8489,10 +9527,10 @@ function applyPassive() {
8489
9527
  }
8490
9528
 
8491
9529
  /***/ }),
8492
- /* 65 */
9530
+ /* 71 */
8493
9531
  /***/ (function(module, exports, __webpack_require__) {
8494
9532
 
8495
- var tabbable = __webpack_require__(66);
9533
+ var tabbable = __webpack_require__(72);
8496
9534
 
8497
9535
  var listeningFocusTrap = null;
8498
9536
 
@@ -8730,7 +9768,7 @@ module.exports = focusTrap;
8730
9768
 
8731
9769
 
8732
9770
  /***/ }),
8733
- /* 66 */
9771
+ /* 72 */
8734
9772
  /***/ (function(module, exports) {
8735
9773
 
8736
9774
  module.exports = function(el) {