material-components-vue
Version:
Material Design components for Vue.js
543 lines • 181 kB
JavaScript
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else {
var a = factory();
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
}
})(window, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "./components/menu/index.js");
/******/ })
/************************************************************************/
/******/ ({
/***/ "./components/base/baseComponentMixin.js":
/*!***********************************************!*\
!*** ./components/base/baseComponentMixin.js ***!
\***********************************************/
/*! exports provided: baseComponentMixin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"baseComponentMixin\", function() { return baseComponentMixin; });\nvar baseComponentMixin = {\n inheritAttrs: false\n};\n\n//# sourceURL=webpack:///./components/base/baseComponentMixin.js?");
/***/ }),
/***/ "./components/base/index.js":
/*!**********************************!*\
!*** ./components/base/index.js ***!
\**********************************/
/*! exports provided: baseComponentMixin, themeClassMixin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _baseComponentMixin_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./baseComponentMixin.js */ \"./components/base/baseComponentMixin.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"baseComponentMixin\", function() { return _baseComponentMixin_js__WEBPACK_IMPORTED_MODULE_0__[\"baseComponentMixin\"]; });\n\n/* harmony import */ var _themeClassMixin_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./themeClassMixin.js */ \"./components/base/themeClassMixin.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"themeClassMixin\", function() { return _themeClassMixin_js__WEBPACK_IMPORTED_MODULE_1__[\"themeClassMixin\"]; });\n\n\n\n\n//# sourceURL=webpack:///./components/base/index.js?");
/***/ }),
/***/ "./components/base/themeClassMixin.js":
/*!********************************************!*\
!*** ./components/base/themeClassMixin.js ***!
\********************************************/
/*! exports provided: themeClassMixin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"themeClassMixin\", function() { return themeClassMixin; });\nvar themeProps = ['primary', 'secondary', 'background', 'surface', 'on-primary', 'on-secondary', 'on-surface', 'primary-bg', 'secondary-bg', 'text-primary-on-light', 'text-secondary-on-light', 'text-hint-on-light', 'text-disabled-on-light', 'text-icon-on-light', 'text-primary-on-dark', 'text-secondary-on-dark', 'text-hint-on-dark', 'text-disabled-on-dark', 'text-icon-on-dark'];\nvar themeClassMixin = {\n props: {\n theming: {\n type: String,\n default: ''\n }\n },\n mounted: function mounted() {\n if (themeProps.indexOf(this.theming) > -1) {\n this.$el.classList.add('mdc-theme--' + this.theming);\n }\n }\n};\n\n//# sourceURL=webpack:///./components/base/themeClassMixin.js?");
/***/ }),
/***/ "./components/index.js":
/*!*****************************!*\
!*** ./components/index.js ***!
\*****************************/
/*! exports provided: initPlugin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _initPlugin_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./initPlugin.js */ \"./components/initPlugin.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"initPlugin\", function() { return _initPlugin_js__WEBPACK_IMPORTED_MODULE_0__[\"initPlugin\"]; });\n\n\n\n//# sourceURL=webpack:///./components/index.js?");
/***/ }),
/***/ "./components/initPlugin.js":
/*!**********************************!*\
!*** ./components/initPlugin.js ***!
\**********************************/
/*! exports provided: initPlugin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initPlugin\", function() { return initPlugin; });\nfunction initPlugin(plugin) {\n if (typeof window !== 'undefined' && window.Vue) {\n window.Vue.use(plugin);\n }\n}\n\n//# sourceURL=webpack:///./components/initPlugin.js?");
/***/ }),
/***/ "./components/menu/Menu.vue":
/*!**********************************!*\
!*** ./components/menu/Menu.vue ***!
\**********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Menu.vue?vue&type=template&id=998f83f8& */ \"./components/menu/Menu.vue?vue&type=template&id=998f83f8&\");\n/* harmony import */ var _Menu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Menu.vue?vue&type=script&lang=js& */ \"./components/menu/Menu.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _Menu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"components/menu/Menu.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./components/menu/Menu.vue?");
/***/ }),
/***/ "./components/menu/Menu.vue?vue&type=script&lang=js&":
/*!***********************************************************!*\
!*** ./components/menu/Menu.vue?vue&type=script&lang=js& ***!
\***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_1_node_modules_vue_loader_lib_index_js_vue_loader_options_Menu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib??ref--1!../../node_modules/vue-loader/lib??vue-loader-options!./Menu.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/Menu.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_ref_1_node_modules_vue_loader_lib_index_js_vue_loader_options_Menu_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[\"default\"]); \n\n//# sourceURL=webpack:///./components/menu/Menu.vue?");
/***/ }),
/***/ "./components/menu/Menu.vue?vue&type=template&id=998f83f8&":
/*!*****************************************************************!*\
!*** ./components/menu/Menu.vue?vue&type=template&id=998f83f8& ***!
\*****************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./Menu.vue?vue&type=template&id=998f83f8& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/Menu.vue?vue&type=template&id=998f83f8&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Menu_vue_vue_type_template_id_998f83f8___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./components/menu/Menu.vue?");
/***/ }),
/***/ "./components/menu/MenuAnchor.vue":
/*!****************************************!*\
!*** ./components/menu/MenuAnchor.vue ***!
\****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./MenuAnchor.vue?vue&type=template&id=d9c18d4e& */ \"./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e&\");\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\nvar script = {}\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(\n script,\n _MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"components/menu/MenuAnchor.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./components/menu/MenuAnchor.vue?");
/***/ }),
/***/ "./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e&":
/*!***********************************************************************!*\
!*** ./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e& ***!
\***********************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./MenuAnchor.vue?vue&type=template&id=d9c18d4e& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuAnchor_vue_vue_type_template_id_d9c18d4e___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./components/menu/MenuAnchor.vue?");
/***/ }),
/***/ "./components/menu/MenuSurface.vue":
/*!*****************************************!*\
!*** ./components/menu/MenuSurface.vue ***!
\*****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true& */ \"./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true&\");\n/* harmony import */ var _MenuSurface_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MenuSurface.vue?vue&type=script&lang=js& */ \"./components/menu/MenuSurface.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _MenuSurface_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"4855a88e\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"components/menu/MenuSurface.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./components/menu/MenuSurface.vue?");
/***/ }),
/***/ "./components/menu/MenuSurface.vue?vue&type=script&lang=js&":
/*!******************************************************************!*\
!*** ./components/menu/MenuSurface.vue?vue&type=script&lang=js& ***!
\******************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_1_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuSurface_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/babel-loader/lib??ref--1!../../node_modules/vue-loader/lib??vue-loader-options!./MenuSurface.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuSurface.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_ref_1_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuSurface_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[\"default\"]); \n\n//# sourceURL=webpack:///./components/menu/MenuSurface.vue?");
/***/ }),
/***/ "./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true&":
/*!************************************************************************************!*\
!*** ./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true& ***!
\************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../node_modules/vue-loader/lib??vue-loader-options!./MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_MenuSurface_vue_vue_type_template_id_4855a88e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./components/menu/MenuSurface.vue?");
/***/ }),
/***/ "./components/menu/index.js":
/*!**********************************!*\
!*** ./components/menu/index.js ***!
\**********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Menu_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Menu.vue */ \"./components/menu/Menu.vue\");\n/* harmony import */ var _MenuAnchor_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MenuAnchor.vue */ \"./components/menu/MenuAnchor.vue\");\n/* harmony import */ var _MenuSurface_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./MenuSurface.vue */ \"./components/menu/MenuSurface.vue\");\n/* harmony import */ var _styles_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./styles.scss */ \"./components/menu/styles.scss\");\n/* harmony import */ var _styles_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_styles_scss__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../ */ \"./components/index.js\");\n\n\n\n\n\nvar plugin = {\n install: function install(vm) {\n vm.component('m-menu', _Menu_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n vm.component('m-menu-anchor', _MenuAnchor_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\n vm.component('m-menu-surface', _MenuSurface_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]);\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (plugin);\nObject(___WEBPACK_IMPORTED_MODULE_4__[\"initPlugin\"])(plugin);\n\n//# sourceURL=webpack:///./components/menu/index.js?");
/***/ }),
/***/ "./components/menu/styles.scss":
/*!*************************************!*\
!*** ./components/menu/styles.scss ***!
\*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./components/menu/styles.scss?");
/***/ }),
/***/ "./node_modules/@material/base/component.js":
/*!**************************************************!*\
!*** ./node_modules/@material/base/component.js ***!
\**************************************************/
/*! exports provided: MDCComponent, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCComponent\", function() { return MDCComponent; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/base/foundation.js\");\n/**\n * @license\n * Copyright 2016 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\nvar MDCComponent =\n/** @class */\nfunction () {\n function MDCComponent(root, foundation) {\n var args = [];\n\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n\n this.root_ = root;\n this.initialize.apply(this, tslib__WEBPACK_IMPORTED_MODULE_0__[\"__spread\"](args)); // Note that we initialize foundation here and not within the constructor's default param so that\n // this.root_ is defined and can be used within the foundation class.\n\n this.foundation_ = foundation === undefined ? this.getDefaultFoundation() : foundation;\n this.foundation_.init();\n this.initialSyncWithDOM();\n }\n\n MDCComponent.attachTo = function (root) {\n // Subclasses which extend MDCBase should provide an attachTo() method that takes a root element and\n // returns an instantiated component with its root set to that element. Also note that in the cases of\n // subclasses, an explicit foundation class will not have to be passed in; it will simply be initialized\n // from getDefaultFoundation().\n return new MDCComponent(root, new _foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCFoundation\"]({}));\n };\n /* istanbul ignore next: method param only exists for typing purposes; it does not need to be unit tested */\n\n\n MDCComponent.prototype.initialize = function () {\n var _args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n } // Subclasses can override this to do any additional setup work that would be considered part of a\n // \"constructor\". Essentially, it is a hook into the parent constructor before the foundation is\n // initialized. Any additional arguments besides root and foundation will be passed in here.\n\n };\n\n MDCComponent.prototype.getDefaultFoundation = function () {\n // Subclasses must override this method to return a properly configured foundation class for the\n // component.\n throw new Error('Subclasses must override getDefaultFoundation to return a properly configured ' + 'foundation class');\n };\n\n MDCComponent.prototype.initialSyncWithDOM = function () {// Subclasses should override this method if they need to perform work to synchronize with a host DOM\n // object. An example of this would be a form control wrapper that needs to synchronize its internal state\n // to some property or attribute of the host DOM. Please note: this is *not* the place to perform DOM\n // reads/writes that would cause layout / paint, as this is called synchronously from within the constructor.\n };\n\n MDCComponent.prototype.destroy = function () {\n // Subclasses may implement this method to release any resources / deregister any listeners they have\n // attached. An example of this might be deregistering a resize event from the window object.\n this.foundation_.destroy();\n };\n\n MDCComponent.prototype.listen = function (evtType, handler) {\n this.root_.addEventListener(evtType, handler);\n };\n\n MDCComponent.prototype.unlisten = function (evtType, handler) {\n this.root_.removeEventListener(evtType, handler);\n };\n /**\n * Fires a cross-browser-compatible custom event from the component root of the given type, with the given data.\n */\n\n\n MDCComponent.prototype.emit = function (evtType, evtData, shouldBubble) {\n if (shouldBubble === void 0) {\n shouldBubble = false;\n }\n\n var evt;\n\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent(evtType, {\n bubbles: shouldBubble,\n detail: evtData\n });\n } else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(evtType, shouldBubble, false, evtData);\n }\n\n this.root_.dispatchEvent(evt);\n };\n\n return MDCComponent;\n}();\n\n // tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCComponent);\n\n//# sourceURL=webpack:///./node_modules/@material/base/component.js?");
/***/ }),
/***/ "./node_modules/@material/base/foundation.js":
/*!***************************************************!*\
!*** ./node_modules/@material/base/foundation.js ***!
\***************************************************/
/*! exports provided: MDCFoundation, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCFoundation\", function() { return MDCFoundation; });\n/**\n * @license\n * Copyright 2016 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar MDCFoundation =\n/** @class */\nfunction () {\n function MDCFoundation(adapter) {\n if (adapter === void 0) {\n adapter = {};\n }\n\n this.adapter_ = adapter;\n }\n\n Object.defineProperty(MDCFoundation, \"cssClasses\", {\n get: function get() {\n // Classes extending MDCFoundation should implement this method to return an object which exports every\n // CSS class the foundation class needs as a property. e.g. {ACTIVE: 'mdc-component--active'}\n return {};\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCFoundation, \"strings\", {\n get: function get() {\n // Classes extending MDCFoundation should implement this method to return an object which exports all\n // semantic strings as constants. e.g. {ARIA_ROLE: 'tablist'}\n return {};\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCFoundation, \"numbers\", {\n get: function get() {\n // Classes extending MDCFoundation should implement this method to return an object which exports all\n // of its semantic numbers as constants. e.g. {ANIMATION_DELAY_MS: 350}\n return {};\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCFoundation, \"defaultAdapter\", {\n get: function get() {\n // Classes extending MDCFoundation may choose to implement this getter in order to provide a convenient\n // way of viewing the necessary methods of an adapter. In the future, this could also be used for adapter\n // validation.\n return {};\n },\n enumerable: true,\n configurable: true\n });\n\n MDCFoundation.prototype.init = function () {// Subclasses should override this method to perform initialization routines (registering events, etc.)\n };\n\n MDCFoundation.prototype.destroy = function () {// Subclasses should override this method to perform de-initialization routines (de-registering events, etc.)\n };\n\n return MDCFoundation;\n}();\n\n // tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCFoundation);\n\n//# sourceURL=webpack:///./node_modules/@material/base/foundation.js?");
/***/ }),
/***/ "./node_modules/@material/dom/ponyfill.js":
/*!************************************************!*\
!*** ./node_modules/@material/dom/ponyfill.js ***!
\************************************************/
/*! exports provided: closest, matches */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"closest\", function() { return closest; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"matches\", function() { return matches; });\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n/**\n * @fileoverview A \"ponyfill\" is a polyfill that doesn't modify the global prototype chain.\n * This makes ponyfills safer than traditional polyfills, especially for libraries like MDC.\n */\nfunction closest(element, selector) {\n if (element.closest) {\n return element.closest(selector);\n }\n\n var el = element;\n\n while (el) {\n if (matches(el, selector)) {\n return el;\n }\n\n el = el.parentElement;\n }\n\n return null;\n}\nfunction matches(element, selector) {\n var nativeMatches = element.matches || element.webkitMatchesSelector || element.msMatchesSelector;\n return nativeMatches.call(element, selector);\n}\n\n//# sourceURL=webpack:///./node_modules/@material/dom/ponyfill.js?");
/***/ }),
/***/ "./node_modules/@material/list/component.js":
/*!**************************************************!*\
!*** ./node_modules/@material/list/component.js ***!
\**************************************************/
/*! exports provided: MDCList */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCList\", function() { return MDCList; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/component */ \"./node_modules/@material/base/component.js\");\n/* harmony import */ var _material_dom_ponyfill__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @material/dom/ponyfill */ \"./node_modules/@material/dom/ponyfill.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/list/constants.js\");\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/list/foundation.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\nvar MDCList =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCList, _super);\n\n function MDCList() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n\n Object.defineProperty(MDCList.prototype, \"vertical\", {\n set: function set(value) {\n this.foundation_.setVerticalOrientation(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCList.prototype, \"listElements\", {\n get: function get() {\n return [].slice.call(this.root_.querySelectorAll(\".\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_CLASS));\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCList.prototype, \"wrapFocus\", {\n set: function set(value) {\n this.foundation_.setWrapFocus(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCList.prototype, \"singleSelection\", {\n set: function set(isSingleSelectionList) {\n this.foundation_.setSingleSelection(isSingleSelectionList);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCList.prototype, \"selectedIndex\", {\n get: function get() {\n return this.foundation_.getSelectedIndex();\n },\n set: function set(index) {\n this.foundation_.setSelectedIndex(index);\n },\n enumerable: true,\n configurable: true\n });\n\n MDCList.attachTo = function (root) {\n return new MDCList(root);\n };\n\n MDCList.prototype.initialSyncWithDOM = function () {\n this.handleClick_ = this.handleClickEvent_.bind(this);\n this.handleKeydown_ = this.handleKeydownEvent_.bind(this);\n this.focusInEventListener_ = this.handleFocusInEvent_.bind(this);\n this.focusOutEventListener_ = this.handleFocusOutEvent_.bind(this);\n this.listen('keydown', this.handleKeydown_);\n this.listen('click', this.handleClick_);\n this.listen('focusin', this.focusInEventListener_);\n this.listen('focusout', this.focusOutEventListener_);\n this.layout();\n this.initializeListType();\n };\n\n MDCList.prototype.destroy = function () {\n this.unlisten('keydown', this.handleKeydown_);\n this.unlisten('click', this.handleClick_);\n this.unlisten('focusin', this.focusInEventListener_);\n this.unlisten('focusout', this.focusOutEventListener_);\n };\n\n MDCList.prototype.layout = function () {\n var direction = this.root_.getAttribute(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ARIA_ORIENTATION);\n this.vertical = direction !== _constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ARIA_ORIENTATION_HORIZONTAL; // List items need to have at least tabindex=-1 to be focusable.\n\n [].slice.call(this.root_.querySelectorAll('.mdc-list-item:not([tabindex])')).forEach(function (el) {\n el.setAttribute('tabindex', '-1');\n }); // Child button/a elements are not tabbable until the list item is focused.\n\n [].slice.call(this.root_.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].FOCUSABLE_CHILD_ELEMENTS)).forEach(function (el) {\n return el.setAttribute('tabindex', '-1');\n });\n this.foundation_.layout();\n };\n /**\n * Initialize selectedIndex value based on pre-selected checkbox list items, single selection or radio.\n */\n\n\n MDCList.prototype.initializeListType = function () {\n var _this = this;\n\n var checkboxListItems = this.root_.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ARIA_ROLE_CHECKBOX_SELECTOR);\n var singleSelectedListItem = this.root_.querySelector(\"\\n .\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_ACTIVATED_CLASS + \",\\n .\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_SELECTED_CLASS + \"\\n \");\n var radioSelectedListItem = this.root_.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ARIA_CHECKED_RADIO_SELECTOR);\n\n if (checkboxListItems.length) {\n var preselectedItems = this.root_.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ARIA_CHECKED_CHECKBOX_SELECTOR);\n this.selectedIndex = [].map.call(preselectedItems, function (listItem) {\n return _this.listElements.indexOf(listItem);\n });\n } else if (singleSelectedListItem) {\n if (singleSelectedListItem.classList.contains(_constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_ACTIVATED_CLASS)) {\n this.foundation_.setUseActivatedClass(true);\n }\n\n this.singleSelection = true;\n this.selectedIndex = this.listElements.indexOf(singleSelectedListItem);\n } else if (radioSelectedListItem) {\n this.selectedIndex = this.listElements.indexOf(radioSelectedListItem);\n }\n };\n\n MDCList.prototype.getDefaultFoundation = function () {\n var _this = this; // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n\n\n var adapter = {\n addClassForElementIndex: function addClassForElementIndex(index, className) {\n var element = _this.listElements[index];\n\n if (element) {\n element.classList.add(className);\n }\n },\n focusItemAtIndex: function focusItemAtIndex(index) {\n var element = _this.listElements[index];\n\n if (element) {\n element.focus();\n }\n },\n getAttributeForElementIndex: function getAttributeForElementIndex(index, attr) {\n return _this.listElements[index].getAttribute(attr);\n },\n getFocusedElementIndex: function getFocusedElementIndex() {\n return _this.listElements.indexOf(document.activeElement);\n },\n getListItemCount: function getListItemCount() {\n return _this.listElements.length;\n },\n hasCheckboxAtIndex: function hasCheckboxAtIndex(index) {\n var listItem = _this.listElements[index];\n return !!listItem.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].CHECKBOX_SELECTOR);\n },\n hasRadioAtIndex: function hasRadioAtIndex(index) {\n var listItem = _this.listElements[index];\n return !!listItem.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].RADIO_SELECTOR);\n },\n isCheckboxCheckedAtIndex: function isCheckboxCheckedAtIndex(index) {\n var listItem = _this.listElements[index];\n var toggleEl = listItem.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].CHECKBOX_SELECTOR);\n return toggleEl.checked;\n },\n isFocusInsideList: function isFocusInsideList() {\n return _this.root_.contains(document.activeElement);\n },\n isRootFocused: function isRootFocused() {\n return document.activeElement === _this.root_;\n },\n notifyAction: function notifyAction(index) {\n _this.emit(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].ACTION_EVENT, {\n index: index\n },\n /** shouldBubble */\n true);\n },\n removeClassForElementIndex: function removeClassForElementIndex(index, className) {\n var element = _this.listElements[index];\n\n if (element) {\n element.classList.remove(className);\n }\n },\n setAttributeForElementIndex: function setAttributeForElementIndex(index, attr, value) {\n var element = _this.listElements[index];\n\n if (element) {\n element.setAttribute(attr, value);\n }\n },\n setCheckedCheckboxOrRadioAtIndex: function setCheckedCheckboxOrRadioAtIndex(index, isChecked) {\n var listItem = _this.listElements[index];\n var toggleEl = listItem.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].CHECKBOX_RADIO_SELECTOR);\n toggleEl.checked = isChecked;\n var event = document.createEvent('Event');\n event.initEvent('change', true, true);\n toggleEl.dispatchEvent(event);\n },\n setTabIndexForListItemChildren: function setTabIndexForListItemChildren(listItemIndex, tabIndexValue) {\n var element = _this.listElements[listItemIndex];\n var listItemChildren = [].slice.call(element.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].CHILD_ELEMENTS_TO_TOGGLE_TABINDEX));\n listItemChildren.forEach(function (el) {\n return el.setAttribute('tabindex', tabIndexValue);\n });\n }\n };\n return new _foundation__WEBPACK_IMPORTED_MODULE_4__[\"MDCListFoundation\"](adapter);\n };\n /**\n * Used to figure out which list item this event is targetting. Or returns -1 if\n * there is no list item\n */\n\n\n MDCList.prototype.getListItemIndex_ = function (evt) {\n var eventTarget = evt.target;\n var nearestParent = Object(_material_dom_ponyfill__WEBPACK_IMPORTED_MODULE_2__[\"closest\"])(eventTarget, \".\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_CLASS + \", .\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].ROOT); // Get the index of the element if it is a list item.\n\n if (nearestParent && Object(_material_dom_ponyfill__WEBPACK_IMPORTED_MODULE_2__[\"matches\"])(nearestParent, \".\" + _constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_CLASS)) {\n return this.listElements.indexOf(nearestParent);\n }\n\n return -1;\n };\n /**\n * Used to figure out which element was clicked before sending the event to the foundation.\n */\n\n\n MDCList.prototype.handleFocusInEvent_ = function (evt) {\n var index = this.getListItemIndex_(evt);\n this.foundation_.handleFocusIn(evt, index);\n };\n /**\n * Used to figure out which element was clicked before sending the event to the foundation.\n */\n\n\n MDCList.prototype.handleFocusOutEvent_ = function (evt) {\n var index = this.getListItemIndex_(evt);\n this.foundation_.handleFocusOut(evt, index);\n };\n /**\n * Used to figure out which element was focused when keydown event occurred before sending the event to the\n * foundation.\n */\n\n\n MDCList.prototype.handleKeydownEvent_ = function (evt) {\n var index = this.getListItemIndex_(evt);\n var target = evt.target;\n this.foundation_.handleKeydown(evt, target.classList.contains(_constants__WEBPACK_IMPORTED_MODULE_3__[\"cssClasses\"].LIST_ITEM_CLASS), index);\n };\n /**\n * Used to figure out which element was clicked before sending the event to the foundation.\n */\n\n\n MDCList.prototype.handleClickEvent_ = function (evt) {\n var index = this.getListItemIndex_(evt);\n var target = evt.target; // Toggle the checkbox only if it's not the target of the event, or the checkbox will have 2 change events.\n\n var toggleCheckbox = !Object(_material_dom_ponyfill__WEBPACK_IMPORTED_MODULE_2__[\"matches\"])(target, _constants__WEBPACK_IMPORTED_MODULE_3__[\"strings\"].CHECKBOX_RADIO_SELECTOR);\n this.foundation_.handleClick(index, toggleCheckbox);\n };\n\n return MDCList;\n}(_material_base_component__WEBPACK_IMPORTED_MODULE_1__[\"MDCComponent\"]);\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/list/component.js?");
/***/ }),
/***/ "./node_modules/@material/list/constants.js":
/*!**************************************************!*\
!*** ./node_modules/@material/list/constants.js ***!
\**************************************************/
/*! exports provided: strings, cssClasses, numbers */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return strings; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return cssClasses; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"numbers\", function() { return numbers; });\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar cssClasses = {\n LIST_ITEM_ACTIVATED_CLASS: 'mdc-list-item--activated',\n LIST_ITEM_CLASS: 'mdc-list-item',\n LIST_ITEM_DISABLED_CLASS: 'mdc-list-item--disabled',\n LIST_ITEM_SELECTED_CLASS: 'mdc-list-item--selected',\n ROOT: 'mdc-list'\n};\nvar strings = {\n ACTION_EVENT: 'MDCList:action',\n ARIA_CHECKED: 'aria-checked',\n ARIA_CHECKED_CHECKBOX_SELECTOR: '[role=\"checkbox\"][aria-checked=\"true\"]',\n ARIA_CHECKED_RADIO_SELECTOR: '[role=\"radio\"][aria-checked=\"true\"]',\n ARIA_CURRENT: 'aria-current',\n ARIA_ORIENTATION: 'aria-orientation',\n ARIA_ORIENTATION_HORIZONTAL: 'horizontal',\n ARIA_ROLE_CHECKBOX_SELECTOR: '[role=\"checkbox\"]',\n ARIA_SELECTED: 'aria-selected',\n CHECKBOX_RADIO_SELECTOR: 'input[type=\"checkbox\"]:not(:disabled), input[type=\"radio\"]:not(:disabled)',\n CHECKBOX_SELECTOR: 'input[type=\"checkbox\"]:not(:disabled)',\n CHILD_ELEMENTS_TO_TOGGLE_TABINDEX: \"\\n .\" + cssClasses.LIST_ITEM_CLASS + \" button:not(:disabled),\\n .\" + cssClasses.LIST_ITEM_CLASS + \" a\\n \",\n FOCUSABLE_CHILD_ELEMENTS: \"\\n .\" + cssClasses.LIST_ITEM_CLASS + \" button:not(:disabled),\\n .\" + cssClasses.LIST_ITEM_CLASS + \" a,\\n .\" + cssClasses.LIST_ITEM_CLASS + \" input[type=\\\"radio\\\"]:not(:disabled),\\n .\" + cssClasses.LIST_ITEM_CLASS + \" input[type=\\\"checkbox\\\"]:not(:disabled)\\n \",\n RADIO_SELECTOR: 'input[type=\"radio\"]:not(:disabled)'\n};\nvar numbers = {\n UNSET_INDEX: -1\n};\n\n\n//# sourceURL=webpack:///./node_modules/@material/list/constants.js?");
/***/ }),
/***/ "./node_modules/@material/list/foundation.js":
/*!***************************************************!*\
!*** ./node_modules/@material/list/foundation.js ***!
\***************************************************/
/*! exports provided: MDCListFoundation, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCListFoundation\", function() { return MDCListFoundation; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/foundation */ \"./node_modules/@material/base/foundation.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/list/constants.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\nvar ELEMENTS_KEY_ALLOWED_IN = ['input', 'button', 'textarea', 'select'];\n\nfunction isNumberArray(selectedIndex) {\n return selectedIndex instanceof Array;\n}\n\nvar MDCListFoundation =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCListFoundation, _super);\n\n function MDCListFoundation(adapter) {\n var _this = _super.call(this, tslib__WEBPACK_IMPORTED_MODULE_0__[\"__assign\"]({}, MDCListFoundation.defaultAdapter, adapter)) || this;\n\n _this.wrapFocus_ = false;\n _this.isVertical_ = true;\n _this.isSingleSelectionList_ = false;\n _this.selectedIndex_ = _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX;\n _this.focusedItemIndex_ = _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX;\n _this.useActivatedClass_ = false;\n _this.ariaCurrentAttrValue_ = null;\n _this.isCheckboxList_ = false;\n _this.isRadioList_ = false;\n return _this;\n }\n\n Object.defineProperty(MDCListFoundation, \"strings\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCListFoundation, \"cssClasses\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCListFoundation, \"numbers\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCListFoundation, \"defaultAdapter\", {\n get: function get() {\n return {\n addClassForElementIndex: function addClassForElementIndex() {\n return undefined;\n },\n focusItemAtIndex: function focusItemAtIndex() {\n return undefined;\n },\n getAttributeForElementIndex: function getAttributeForElementIndex() {\n return null;\n },\n getFocusedElementIndex: function getFocusedElementIndex() {\n return 0;\n },\n getListItemCount: function getListItemCount() {\n return 0;\n },\n hasCheckboxAtIndex: function hasCheckboxAtIndex() {\n return false;\n },\n hasRadioAtIndex: function hasRadioAtIndex() {\n return false;\n },\n isCheckboxCheckedAtIndex: function isCheckboxCheckedAtIndex() {\n return false;\n },\n isFocusInsideList: function isFocusInsideList() {\n return false;\n },\n isRootFocused: function isRootFocused() {\n return false;\n },\n notifyAction: function notifyAction() {\n return undefined;\n },\n removeClassForElementIndex: function removeClassForElementIndex() {\n return undefined;\n },\n setAttributeForElementIndex: function setAttributeForElementIndex() {\n return undefined;\n },\n setCheckedCheckboxOrRadioAtIndex: function setCheckedCheckboxOrRadioAtIndex() {\n return undefined;\n },\n setTabIndexForListItemChildren: function setTabIndexForListItemChildren() {\n return undefined;\n }\n };\n },\n enumerable: true,\n configurable: true\n });\n\n MDCListFoundation.prototype.layout = function () {\n if (this.adapter_.getListItemCount() === 0) {\n return;\n }\n\n if (this.adapter_.hasCheckboxAtIndex(0)) {\n this.isCheckboxList_ = true;\n } else if (this.adapter_.hasRadioAtIndex(0)) {\n this.isRadioList_ = true;\n }\n };\n /**\n * Sets the private wrapFocus_ variable.\n */\n\n\n MDCListFoundation.prototype.setWrapFocus = function (value) {\n this.wrapFocus_ = value;\n };\n /**\n * Sets the isVertical_ private variable.\n */\n\n\n MDCListFoundation.prototype.setVerticalOrientation = function (value) {\n this.isVertical_ = value;\n };\n /**\n * Sets the isSingleSelectionList_ private variable.\n */\n\n\n MDCListFoundation.prototype.setSingleSelection = function (value) {\n this.isSingleSelectionList_ = value;\n };\n /**\n * Sets the useActivatedClass_ private variable.\n */\n\n\n MDCListFoundation.prototype.setUseActivatedClass = function (useActivated) {\n this.useActivatedClass_ = useActivated;\n };\n\n MDCListFoundation.prototype.getSelectedIndex = function () {\n return this.selectedIndex_;\n };\n\n MDCListFoundation.prototype.setSelectedIndex = function (index) {\n if (!this.isIndexValid_(index)) {\n return;\n }\n\n if (this.isCheckboxList_) {\n this.setCheckboxAtIndex_(index);\n } else if (this.isRadioList_) {\n this.setRadioAtIndex_(index);\n } else {\n this.setSingleSelectionAtIndex_(index);\n }\n };\n /**\n * Focus in handler for the list items.\n */\n\n\n MDCListFoundation.prototype.handleFocusIn = function (_, listItemIndex) {\n if (listItemIndex >= 0) {\n this.adapter_.setTabIndexForListItemChildren(listItemIndex, '0');\n }\n };\n /**\n * Focus out handler for the list items.\n */\n\n\n MDCListFoundation.prototype.handleFocusOut = function (_, listItemIndex) {\n var _this = this;\n\n if (listItemIndex >= 0) {\n this.adapter_.setTabIndexForListItemChildren(listItemIndex, '-1');\n }\n /**\n * Between Focusout & Focusin some browsers do not have focus on any element. Setting a delay to wait till the focus\n * is moved to next element.\n */\n\n\n setTimeout(function () {\n if (!_this.adapter_.isFocusInsideList()) {\n _this.setTabindexToFirstSelectedItem_();\n }\n }, 0);\n };\n /**\n * Key handler for the list.\n */\n\n\n MDCListFoundation.prototype.handleKeydown = function (evt, isRootListItem, listItemIndex) {\n var isArrowLeft = evt.key === 'ArrowLeft' || evt.keyCode === 37;\n var isArrowUp = evt.key === 'ArrowUp' || evt.keyCode === 38;\n var isArrowRight = evt.key === 'ArrowRight' || evt.keyCode === 39;\n var isArrowDown = evt.key === 'ArrowDown' || evt.keyCode === 40;\n var isHome = evt.key === 'Home' || evt.keyCode === 36;\n var isEnd = evt.key === 'End' || evt.keyCode === 35;\n var isEnter = evt.key === 'Enter' || evt.keyCode === 13;\n var isSpace = evt.key === 'Space' || evt.keyCode === 32;\n\n if (this.adapter_.isRootFocused()) {\n if (isArrowUp || isEnd) {\n evt.preventDefault();\n this.focusLastElement();\n } else if (isArrowDown || isHome) {\n evt.preventDefault();\n this.focusFirstElement();\n }\n\n return;\n }\n\n var currentIndex = this.adapter_.getFocusedElementIndex();\n\n if (currentIndex === -1) {\n currentIndex = listItemIndex;\n\n if (currentIndex < 0) {\n // If this event doesn't have a mdc-list-item ancestor from the\n // current list (not from a sublist), return early.\n return;\n }\n }\n\n var nextIndex;\n\n if (this.isVertical_ && isArrowDown || !this.isVertical_ && isArrowRight) {\n this.preventDefaultEvent_(evt);\n nextIndex = this.focusNextElement(currentIndex);\n } else if (this.isVertical_ && isArrowUp || !this.isVertical_ && isArrowLeft) {\n this.preventDefaultEvent_(evt);\n nextIndex = this.focusPrevElement(currentIndex);\n } else if (isHome) {\n this.preventDefaultEvent_(evt);\n nextIndex = this.focusFirstElement();\n } else if (isEnd) {\n this.preventDefaultEvent_(evt);\n nextIndex = this.focusLastElement();\n } else if (isEnter || isSpace) {\n if (isRootListItem) {\n // Return early if enter key is pressed on anchor element which triggers synthetic MouseEvent event.\n var target = evt.target;\n\n if (target && target.tagName === 'A' && isEnter) {\n return;\n }\n\n this.preventDefaultEvent_(evt);\n\n if (this.isSelectableList_()) {\n this.setSelectedIndexOnAction_(currentIndex);\n }\n\n this.adapter_.notifyAction(currentIndex);\n }\n }\n\n this.focusedItemIndex_ = currentIndex;\n\n if (nextIndex !== undefined) {\n this.setTabindexAtIndex_(nextIndex);\n this.focusedItemIndex_ = nextIndex;\n }\n };\n /**\n * Click handler for the list.\n */\n\n\n MDCListFoundation.prototype.handleClick = function (index, toggleCheckbox) {\n if (index === _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n return;\n }\n\n if (this.isSelectableList_()) {\n this.setSelectedIndexOnAction_(index, toggleCheckbox);\n }\n\n this.adapter_.notifyAction(index);\n this.setTabindexAtIndex_(index);\n this.focusedItemIndex_ = index;\n };\n /**\n * Focuses the next element on the list.\n */\n\n\n MDCListFoundation.prototype.focusNextElement = function (index) {\n var count = this.adapter_.getListItemCount();\n var nextIndex = index + 1;\n\n if (nextIndex >= count) {\n if (this.wrapFocus_) {\n nextIndex = 0;\n } else {\n // Return early because last item is already focused.\n return index;\n }\n }\n\n this.adapter_.focusItemAtIndex(nextIndex);\n return nextIndex;\n };\n /**\n * Focuses the previous element on the list.\n */\n\n\n MDCListFoundation.prototype.focusPrevElement = function (index) {\n var prevIndex = index - 1;\n\n if (prevIndex < 0) {\n if (this.wrapFocus_) {\n prevIndex = this.adapter_.getListItemCount() - 1;\n } else {\n // Return early because first item is already focused.\n return index;\n }\n }\n\n this.adapter_.focusItemAtIndex(prevIndex);\n return prevIndex;\n };\n\n MDCListFoundation.prototype.focusFirstElement = function () {\n this.adapter_.focusItemAtIndex(0);\n return 0;\n };\n\n MDCListFoundation.prototype.focusLastElement = function () {\n var lastIndex = this.adapter_.getListItemCount() - 1;\n this.adapter_.focusItemAtIndex(lastIndex);\n return lastIndex;\n };\n /**\n * Ensures that preventDefault is only called if the containing element doesn't\n * consume the event, and it will cause an unintended scroll.\n */\n\n\n MDCListFoundation.prototype.preventDefaultEvent_ = function (evt) {\n var target = evt.target;\n var tagName = (\"\" + target.tagName).toLowerCase();\n\n if (ELEMENTS_KEY_ALLOWED_IN.indexOf(tagName) === -1) {\n evt.preventDefault();\n }\n };\n\n MDCListFoundation.prototype.setSingleSelectionAtIndex_ = function (index) {\n if (this.selectedIndex_ === index) {\n return;\n }\n\n var selectedClassName = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].LIST_ITEM_SELECTED_CLASS;\n\n if (this.useActivatedClass_) {\n selectedClassName = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].LIST_ITEM_ACTIVATED_CLASS;\n }\n\n if (this.selectedIndex_ !== _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n this.adapter_.removeClassForElementIndex(this.selectedIndex_, selectedClassName);\n }\n\n this.adapter_.addClassForElementIndex(index, selectedClassName);\n this.setAriaForSingleSelectionAtIndex_(index);\n this.selectedIndex_ = index;\n };\n /**\n * Sets aria attribute for single selection at given index.\n */\n\n\n MDCListFoundation.prototype.setAriaForSingleSelectionAtIndex_ = function (index) {\n // Detect the presence of aria-current and get the value only during list initialization when it is in unset state.\n if (this.selectedIndex_ === _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n this.ariaCurrentAttrValue_ = this.adapter_.getAttributeForElementIndex(index, _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CURRENT);\n }\n\n var isAriaCurrent = this.ariaCurrentAttrValue_ !== null;\n var ariaAttribute = isAriaCurrent ? _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CURRENT : _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_SELECTED;\n\n if (this.selectedIndex_ !== _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n this.adapter_.setAttributeForElementIndex(this.selectedIndex_, ariaAttribute, 'false');\n }\n\n var ariaAttributeValue = isAriaCurrent ? this.ariaCurrentAttrValue_ : 'true';\n this.adapter_.setAttributeForElementIndex(index, ariaAttribute, ariaAttributeValue);\n };\n /**\n * Toggles radio at give index. Radio doesn't change the checked state if it is already checked.\n */\n\n\n MDCListFoundation.prototype.setRadioAtIndex_ = function (index) {\n this.adapter_.setCheckedCheckboxOrRadioAtIndex(index, true);\n\n if (this.selectedIndex_ !== _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n this.adapter_.setAttributeForElementIndex(this.selectedIndex_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CHECKED, 'false');\n }\n\n this.adapter_.setAttributeForElementIndex(index, _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CHECKED, 'true');\n this.selectedIndex_ = index;\n };\n\n MDCListFoundation.prototype.setCheckboxAtIndex_ = function (index) {\n for (var i = 0; i < this.adapter_.getListItemCount(); i++) {\n var isChecked = false;\n\n if (index.indexOf(i) >= 0) {\n isChecked = true;\n }\n\n this.adapter_.setCheckedCheckboxOrRadioAtIndex(i, isChecked);\n this.adapter_.setAttributeForElementIndex(i, _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CHECKED, isChecked ? 'true' : 'false');\n }\n\n this.selectedIndex_ = index;\n };\n\n MDCListFoundation.prototype.setTabindexAtIndex_ = function (index) {\n if (this.focusedItemIndex_ === _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX && index !== 0) {\n // If no list item was selected set first list item's tabindex to -1.\n // Generally, tabindex is set to 0 on first list item of list that has no preselected items.\n this.adapter_.setAttributeForElementIndex(0, 'tabindex', '-1');\n } else if (this.focusedItemIndex_ >= 0 && this.focusedItemIndex_ !== index) {\n this.adapter_.setAttributeForElementIndex(this.focusedItemIndex_, 'tabindex', '-1');\n }\n\n this.adapter_.setAttributeForElementIndex(index, 'tabindex', '0');\n };\n /**\n * @return Return true if it is single selectin list, checkbox list or radio list.\n */\n\n\n MDCListFoundation.prototype.isSelectableList_ = function () {\n return this.isSingleSelectionList_ || this.isCheckboxList_ || this.isRadioList_;\n };\n\n MDCListFoundation.prototype.setTabindexToFirstSelectedItem_ = function () {\n var targetIndex = 0;\n\n if (this.isSelectableList_()) {\n if (typeof this.selectedIndex_ === 'number' && this.selectedIndex_ !== _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX) {\n targetIndex = this.selectedIndex_;\n } else if (isNumberArray(this.selectedIndex_) && this.selectedIndex_.length > 0) {\n targetIndex = this.selectedIndex_.reduce(function (currentIndex, minIndex) {\n return Math.min(currentIndex, minIndex);\n });\n }\n }\n\n this.setTabindexAtIndex_(targetIndex);\n };\n\n MDCListFoundation.prototype.isIndexValid_ = function (index) {\n var _this = this;\n\n if (index instanceof Array) {\n if (!this.isCheckboxList_) {\n throw new Error('MDCListFoundation: Array of index is only supported for checkbox based list');\n }\n\n if (index.length === 0) {\n return true;\n } else {\n return index.some(function (i) {\n return _this.isIndexInRange_(i);\n });\n }\n } else if (typeof index === 'number') {\n if (this.isCheckboxList_) {\n throw new Error('MDCListFoundation: Expected array of index for checkbox based list but got number: ' + index);\n }\n\n return this.isIndexInRange_(index);\n } else {\n return false;\n }\n };\n\n MDCListFoundation.prototype.isIndexInRange_ = function (index) {\n var listSize = this.adapter_.getListItemCount();\n return index >= 0 && index < listSize;\n };\n\n MDCListFoundation.prototype.setSelectedIndexOnAction_ = function (index, toggleCheckbox) {\n if (toggleCheckbox === void 0) {\n toggleCheckbox = true;\n }\n\n if (this.isCheckboxList_) {\n this.toggleCheckboxAtIndex_(index, toggleCheckbox);\n } else {\n this.setSelectedIndex(index);\n }\n };\n\n MDCListFoundation.prototype.toggleCheckboxAtIndex_ = function (index, toggleCheckbox) {\n var isChecked = this.adapter_.isCheckboxCheckedAtIndex(index);\n\n if (toggleCheckbox) {\n isChecked = !isChecked;\n this.adapter_.setCheckedCheckboxOrRadioAtIndex(index, isChecked);\n }\n\n this.adapter_.setAttributeForElementIndex(index, _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].ARIA_CHECKED, isChecked ? 'true' : 'false'); // If none of the checkbox items are selected and selectedIndex is not initialized then provide a default value.\n\n var selectedIndexes = this.selectedIndex_ === _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].UNSET_INDEX ? [] : this.selectedIndex_.slice();\n\n if (isChecked) {\n selectedIndexes.push(index);\n } else {\n selectedIndexes = selectedIndexes.filter(function (i) {\n return i !== index;\n });\n }\n\n this.selectedIndex_ = selectedIndexes;\n };\n\n return MDCListFoundation;\n}(_material_base_foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCFoundation\"]);\n\n // tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCListFoundation);\n\n//# sourceURL=webpack:///./node_modules/@material/list/foundation.js?");
/***/ }),
/***/ "./node_modules/@material/menu-surface/component.js":
/*!**********************************************************!*\
!*** ./node_modules/@material/menu-surface/component.js ***!
\**********************************************************/
/*! exports provided: MDCMenuSurface */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuSurface\", function() { return MDCMenuSurface; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/component */ \"./node_modules/@material/base/component.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu-surface/constants.js\");\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/menu-surface/foundation.js\");\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ \"./node_modules/@material/menu-surface/util.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\nvar MDCMenuSurface =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCMenuSurface, _super);\n\n function MDCMenuSurface() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n\n MDCMenuSurface.attachTo = function (root) {\n return new MDCMenuSurface(root);\n };\n\n MDCMenuSurface.prototype.initialSyncWithDOM = function () {\n var _this = this;\n\n var parentEl = this.root_.parentElement;\n this.anchorElement = parentEl && parentEl.classList.contains(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].ANCHOR) ? parentEl : null;\n\n if (this.root_.classList.contains(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].FIXED)) {\n this.setFixedPosition(true);\n }\n\n this.handleKeydown_ = function (evt) {\n return _this.foundation_.handleKeydown(evt);\n };\n\n this.handleBodyClick_ = function (evt) {\n return _this.foundation_.handleBodyClick(evt);\n };\n\n this.registerBodyClickListener_ = function () {\n return document.body.addEventListener('click', _this.handleBodyClick_);\n };\n\n this.deregisterBodyClickListener_ = function () {\n return document.body.removeEventListener('click', _this.handleBodyClick_);\n };\n\n this.listen('keydown', this.handleKeydown_);\n this.listen(_constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].OPENED_EVENT, this.registerBodyClickListener_);\n this.listen(_constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].CLOSED_EVENT, this.deregisterBodyClickListener_);\n };\n\n MDCMenuSurface.prototype.destroy = function () {\n this.unlisten('keydown', this.handleKeydown_);\n this.unlisten(_constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].OPENED_EVENT, this.registerBodyClickListener_);\n this.unlisten(_constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].CLOSED_EVENT, this.deregisterBodyClickListener_);\n\n _super.prototype.destroy.call(this);\n };\n\n Object.defineProperty(MDCMenuSurface.prototype, \"open\", {\n get: function get() {\n return this.foundation_.isOpen();\n },\n set: function set(value) {\n if (value) {\n var focusableElements = this.root_.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"].FOCUSABLE_ELEMENTS);\n this.firstFocusableElement_ = focusableElements[0];\n this.lastFocusableElement_ = focusableElements[focusableElements.length - 1];\n this.foundation_.open();\n } else {\n this.foundation_.close();\n }\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuSurface.prototype, \"quickOpen\", {\n set: function set(quickOpen) {\n this.foundation_.setQuickOpen(quickOpen);\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Removes the menu-surface from it's current location and appends it to the\n * body to overcome any overflow:hidden issues.\n */\n\n MDCMenuSurface.prototype.hoistMenuToBody = function () {\n document.body.appendChild(this.root_);\n this.setIsHoisted(true);\n };\n /** Sets the foundation to use page offsets for an positioning when the menu is hoisted to the body. */\n\n\n MDCMenuSurface.prototype.setIsHoisted = function (isHoisted) {\n this.foundation_.setIsHoisted(isHoisted);\n };\n /** Sets the element that the menu-surface is anchored to. */\n\n\n MDCMenuSurface.prototype.setMenuSurfaceAnchorElement = function (element) {\n this.anchorElement = element;\n };\n /** Sets the menu-surface to position: fixed. */\n\n\n MDCMenuSurface.prototype.setFixedPosition = function (isFixed) {\n if (isFixed) {\n this.root_.classList.add(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].FIXED);\n } else {\n this.root_.classList.remove(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].FIXED);\n }\n\n this.foundation_.setFixedPosition(isFixed);\n };\n /** Sets the absolute x/y position to position based on. Requires the menu to be hoisted. */\n\n\n MDCMenuSurface.prototype.setAbsolutePosition = function (x, y) {\n this.foundation_.setAbsolutePosition(x, y);\n this.setIsHoisted(true);\n };\n /**\n * @param corner Default anchor corner alignment of top-left surface corner.\n */\n\n\n MDCMenuSurface.prototype.setAnchorCorner = function (corner) {\n this.foundation_.setAnchorCorner(corner);\n };\n\n MDCMenuSurface.prototype.setAnchorMargin = function (margin) {\n this.foundation_.setAnchorMargin(margin);\n };\n\n MDCMenuSurface.prototype.getDefaultFoundation = function () {\n var _this = this; // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n\n\n var adapter = {\n addClass: function addClass(className) {\n return _this.root_.classList.add(className);\n },\n removeClass: function removeClass(className) {\n return _this.root_.classList.remove(className);\n },\n hasClass: function hasClass(className) {\n return _this.root_.classList.contains(className);\n },\n hasAnchor: function hasAnchor() {\n return !!_this.anchorElement;\n },\n notifyClose: function notifyClose() {\n return _this.emit(_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuSurfaceFoundation\"].strings.CLOSED_EVENT, {});\n },\n notifyOpen: function notifyOpen() {\n return _this.emit(_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuSurfaceFoundation\"].strings.OPENED_EVENT, {});\n },\n isElementInContainer: function isElementInContainer(el) {\n return _this.root_.contains(el);\n },\n isRtl: function isRtl() {\n return getComputedStyle(_this.root_).getPropertyValue('direction') === 'rtl';\n },\n setTransformOrigin: function setTransformOrigin(origin) {\n var propertyName = _util__WEBPACK_IMPORTED_MODULE_4__[\"getTransformPropertyName\"](window) + \"-origin\";\n\n _this.root_.style.setProperty(propertyName, origin);\n },\n isFocused: function isFocused() {\n return document.activeElement === _this.root_;\n },\n saveFocus: function saveFocus() {\n _this.previousFocus_ = document.activeElement;\n },\n restoreFocus: function restoreFocus() {\n if (_this.root_.contains(document.activeElement)) {\n if (_this.previousFocus_ && _this.previousFocus_.focus) {\n _this.previousFocus_.focus();\n }\n }\n },\n isFirstElementFocused: function isFirstElementFocused() {\n return _this.firstFocusableElement_ ? _this.firstFocusableElement_ === document.activeElement : false;\n },\n isLastElementFocused: function isLastElementFocused() {\n return _this.lastFocusableElement_ ? _this.lastFocusableElement_ === document.activeElement : false;\n },\n focusFirstElement: function focusFirstElement() {\n return _this.firstFocusableElement_ && _this.firstFocusableElement_.focus && _this.firstFocusableElement_.focus();\n },\n focusLastElement: function focusLastElement() {\n return _this.lastFocusableElement_ && _this.lastFocusableElement_.focus && _this.lastFocusableElement_.focus();\n },\n getInnerDimensions: function getInnerDimensions() {\n return {\n width: _this.root_.offsetWidth,\n height: _this.root_.offsetHeight\n };\n },\n getAnchorDimensions: function getAnchorDimensions() {\n return _this.anchorElement ? _this.anchorElement.getBoundingClientRect() : null;\n },\n getWindowDimensions: function getWindowDimensions() {\n return {\n width: window.innerWidth,\n height: window.innerHeight\n };\n },\n getBodyDimensions: function getBodyDimensions() {\n return {\n width: document.body.clientWidth,\n height: document.body.clientHeight\n };\n },\n getWindowScroll: function getWindowScroll() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n },\n setPosition: function setPosition(position) {\n _this.root_.style.left = 'left' in position ? position.left + \"px\" : '';\n _this.root_.style.right = 'right' in position ? position.right + \"px\" : '';\n _this.root_.style.top = 'top' in position ? position.top + \"px\" : '';\n _this.root_.style.bottom = 'bottom' in position ? position.bottom + \"px\" : '';\n },\n setMaxHeight: function setMaxHeight(height) {\n _this.root_.style.maxHeight = height;\n }\n }; // tslint:enable:object-literal-sort-keys\n\n return new _foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuSurfaceFoundation\"](adapter);\n };\n\n return MDCMenuSurface;\n}(_material_base_component__WEBPACK_IMPORTED_MODULE_1__[\"MDCComponent\"]);\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu-surface/component.js?");
/***/ }),
/***/ "./node_modules/@material/menu-surface/constants.js":
/*!**********************************************************!*\
!*** ./node_modules/@material/menu-surface/constants.js ***!
\**********************************************************/
/*! exports provided: cssClasses, strings, numbers, CornerBit, Corner */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return cssClasses; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return strings; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"numbers\", function() { return numbers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CornerBit\", function() { return CornerBit; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Corner\", function() { return Corner; });\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar cssClasses = {\n ANCHOR: 'mdc-menu-surface--anchor',\n ANIMATING_CLOSED: 'mdc-menu-surface--animating-closed',\n ANIMATING_OPEN: 'mdc-menu-surface--animating-open',\n FIXED: 'mdc-menu-surface--fixed',\n OPEN: 'mdc-menu-surface--open',\n ROOT: 'mdc-menu-surface'\n}; // tslint:disable:object-literal-sort-keys\n\nvar strings = {\n CLOSED_EVENT: 'MDCMenuSurface:closed',\n OPENED_EVENT: 'MDCMenuSurface:opened',\n FOCUSABLE_ELEMENTS: ['button:not(:disabled)', '[href]:not([aria-disabled=\"true\"])', 'input:not(:disabled)', 'select:not(:disabled)', 'textarea:not(:disabled)', '[tabindex]:not([tabindex=\"-1\"]):not([aria-disabled=\"true\"])'].join(', ')\n}; // tslint:enable:object-literal-sort-keys\n\nvar numbers = {\n /** Total duration of menu-surface open animation. */\n TRANSITION_OPEN_DURATION: 120,\n\n /** Total duration of menu-surface close animation. */\n TRANSITION_CLOSE_DURATION: 75,\n\n /** Margin left to the edge of the viewport when menu-surface is at maximum possible height. */\n MARGIN_TO_EDGE: 32,\n\n /** Ratio of anchor width to menu-surface width for switching from corner positioning to center positioning. */\n ANCHOR_TO_MENU_SURFACE_WIDTH_RATIO: 0.67\n};\n/**\n * Enum for bits in the {@see Corner) bitmap.\n */\n\nvar CornerBit;\n\n(function (CornerBit) {\n CornerBit[CornerBit[\"BOTTOM\"] = 1] = \"BOTTOM\";\n CornerBit[CornerBit[\"CENTER\"] = 2] = \"CENTER\";\n CornerBit[CornerBit[\"RIGHT\"] = 4] = \"RIGHT\";\n CornerBit[CornerBit[\"FLIP_RTL\"] = 8] = \"FLIP_RTL\";\n})(CornerBit || (CornerBit = {}));\n/**\n * Enum for representing an element corner for positioning the menu-surface.\n *\n * The START constants map to LEFT if element directionality is left\n * to right and RIGHT if the directionality is right to left.\n * Likewise END maps to RIGHT or LEFT depending on the directionality.\n */\n\n\nvar Corner;\n\n(function (Corner) {\n Corner[Corner[\"TOP_LEFT\"] = 0] = \"TOP_LEFT\";\n Corner[Corner[\"TOP_RIGHT\"] = 4] = \"TOP_RIGHT\";\n Corner[Corner[\"BOTTOM_LEFT\"] = 1] = \"BOTTOM_LEFT\";\n Corner[Corner[\"BOTTOM_RIGHT\"] = 5] = \"BOTTOM_RIGHT\";\n Corner[Corner[\"TOP_START\"] = 8] = \"TOP_START\";\n Corner[Corner[\"TOP_END\"] = 12] = \"TOP_END\";\n Corner[Corner[\"BOTTOM_START\"] = 9] = \"BOTTOM_START\";\n Corner[Corner[\"BOTTOM_END\"] = 13] = \"BOTTOM_END\";\n})(Corner || (Corner = {}));\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu-surface/constants.js?");
/***/ }),
/***/ "./node_modules/@material/menu-surface/foundation.js":
/*!***********************************************************!*\
!*** ./node_modules/@material/menu-surface/foundation.js ***!
\***********************************************************/
/*! exports provided: MDCMenuSurfaceFoundation, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuSurfaceFoundation\", function() { return MDCMenuSurfaceFoundation; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/foundation */ \"./node_modules/@material/base/foundation.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu-surface/constants.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\nvar MDCMenuSurfaceFoundation =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCMenuSurfaceFoundation, _super);\n\n function MDCMenuSurfaceFoundation(adapter) {\n var _this = _super.call(this, tslib__WEBPACK_IMPORTED_MODULE_0__[\"__assign\"]({}, MDCMenuSurfaceFoundation.defaultAdapter, adapter)) || this;\n\n _this.isOpen_ = false;\n _this.isQuickOpen_ = false;\n _this.isHoistedElement_ = false;\n _this.isFixedPosition_ = false;\n _this.openAnimationEndTimerId_ = 0;\n _this.closeAnimationEndTimerId_ = 0;\n _this.animationRequestId_ = 0;\n _this.anchorCorner_ = _constants__WEBPACK_IMPORTED_MODULE_2__[\"Corner\"].TOP_START;\n _this.anchorMargin_ = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n _this.position_ = {\n x: 0,\n y: 0\n };\n return _this;\n }\n\n Object.defineProperty(MDCMenuSurfaceFoundation, \"cssClasses\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuSurfaceFoundation, \"strings\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuSurfaceFoundation, \"numbers\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuSurfaceFoundation, \"Corner\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"Corner\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuSurfaceFoundation, \"defaultAdapter\", {\n /**\n * @see {@link MDCMenuSurfaceAdapter} for typing information on parameters and return types.\n */\n get: function get() {\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n return {\n addClass: function addClass() {\n return undefined;\n },\n removeClass: function removeClass() {\n return undefined;\n },\n hasClass: function hasClass() {\n return false;\n },\n hasAnchor: function hasAnchor() {\n return false;\n },\n isElementInContainer: function isElementInContainer() {\n return false;\n },\n isFocused: function isFocused() {\n return false;\n },\n isFirstElementFocused: function isFirstElementFocused() {\n return false;\n },\n isLastElementFocused: function isLastElementFocused() {\n return false;\n },\n isRtl: function isRtl() {\n return false;\n },\n getInnerDimensions: function getInnerDimensions() {\n return {\n height: 0,\n width: 0\n };\n },\n getAnchorDimensions: function getAnchorDimensions() {\n return null;\n },\n getWindowDimensions: function getWindowDimensions() {\n return {\n height: 0,\n width: 0\n };\n },\n getBodyDimensions: function getBodyDimensions() {\n return {\n height: 0,\n width: 0\n };\n },\n getWindowScroll: function getWindowScroll() {\n return {\n x: 0,\n y: 0\n };\n },\n setPosition: function setPosition() {\n return undefined;\n },\n setMaxHeight: function setMaxHeight() {\n return undefined;\n },\n setTransformOrigin: function setTransformOrigin() {\n return undefined;\n },\n saveFocus: function saveFocus() {\n return undefined;\n },\n restoreFocus: function restoreFocus() {\n return undefined;\n },\n focusFirstElement: function focusFirstElement() {\n return undefined;\n },\n focusLastElement: function focusLastElement() {\n return undefined;\n },\n notifyClose: function notifyClose() {\n return undefined;\n },\n notifyOpen: function notifyOpen() {\n return undefined;\n }\n }; // tslint:enable:object-literal-sort-keys\n },\n enumerable: true,\n configurable: true\n });\n\n MDCMenuSurfaceFoundation.prototype.init = function () {\n var _a = MDCMenuSurfaceFoundation.cssClasses,\n ROOT = _a.ROOT,\n OPEN = _a.OPEN;\n\n if (!this.adapter_.hasClass(ROOT)) {\n throw new Error(ROOT + \" class required in root element.\");\n }\n\n if (this.adapter_.hasClass(OPEN)) {\n this.isOpen_ = true;\n }\n };\n\n MDCMenuSurfaceFoundation.prototype.destroy = function () {\n clearTimeout(this.openAnimationEndTimerId_);\n clearTimeout(this.closeAnimationEndTimerId_); // Cancel any currently running animations.\n\n cancelAnimationFrame(this.animationRequestId_);\n };\n /**\n * @param corner Default anchor corner alignment of top-left menu surface corner.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.setAnchorCorner = function (corner) {\n this.anchorCorner_ = corner;\n };\n /**\n * @param margin Set of margin values from anchor.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.setAnchorMargin = function (margin) {\n this.anchorMargin_.top = margin.top || 0;\n this.anchorMargin_.right = margin.right || 0;\n this.anchorMargin_.bottom = margin.bottom || 0;\n this.anchorMargin_.left = margin.left || 0;\n };\n /** Used to indicate if the menu-surface is hoisted to the body. */\n\n\n MDCMenuSurfaceFoundation.prototype.setIsHoisted = function (isHoisted) {\n this.isHoistedElement_ = isHoisted;\n };\n /** Used to set the menu-surface calculations based on a fixed position menu. */\n\n\n MDCMenuSurfaceFoundation.prototype.setFixedPosition = function (isFixedPosition) {\n this.isFixedPosition_ = isFixedPosition;\n };\n /** Sets the menu-surface position on the page. */\n\n\n MDCMenuSurfaceFoundation.prototype.setAbsolutePosition = function (x, y) {\n this.position_.x = this.isFinite_(x) ? x : 0;\n this.position_.y = this.isFinite_(y) ? y : 0;\n };\n\n MDCMenuSurfaceFoundation.prototype.setQuickOpen = function (quickOpen) {\n this.isQuickOpen_ = quickOpen;\n };\n\n MDCMenuSurfaceFoundation.prototype.isOpen = function () {\n return this.isOpen_;\n };\n /**\n * Open the menu surface.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.open = function () {\n var _this = this;\n\n this.adapter_.saveFocus();\n\n if (!this.isQuickOpen_) {\n this.adapter_.addClass(MDCMenuSurfaceFoundation.cssClasses.ANIMATING_OPEN);\n }\n\n this.animationRequestId_ = requestAnimationFrame(function () {\n _this.adapter_.addClass(MDCMenuSurfaceFoundation.cssClasses.OPEN);\n\n _this.dimensions_ = _this.adapter_.getInnerDimensions();\n\n _this.autoPosition_();\n\n if (_this.isQuickOpen_) {\n _this.adapter_.notifyOpen();\n } else {\n _this.openAnimationEndTimerId_ = setTimeout(function () {\n _this.openAnimationEndTimerId_ = 0;\n\n _this.adapter_.removeClass(MDCMenuSurfaceFoundation.cssClasses.ANIMATING_OPEN);\n\n _this.adapter_.notifyOpen();\n }, _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].TRANSITION_OPEN_DURATION);\n }\n });\n this.isOpen_ = true;\n };\n /**\n * Closes the menu surface.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.close = function () {\n var _this = this;\n\n if (!this.isQuickOpen_) {\n this.adapter_.addClass(MDCMenuSurfaceFoundation.cssClasses.ANIMATING_CLOSED);\n }\n\n requestAnimationFrame(function () {\n _this.adapter_.removeClass(MDCMenuSurfaceFoundation.cssClasses.OPEN);\n\n if (_this.isQuickOpen_) {\n _this.adapter_.notifyClose();\n } else {\n _this.closeAnimationEndTimerId_ = setTimeout(function () {\n _this.closeAnimationEndTimerId_ = 0;\n\n _this.adapter_.removeClass(MDCMenuSurfaceFoundation.cssClasses.ANIMATING_CLOSED);\n\n _this.adapter_.notifyClose();\n }, _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].TRANSITION_CLOSE_DURATION);\n }\n });\n this.isOpen_ = false;\n this.maybeRestoreFocus_();\n };\n /** Handle clicks and close if not within menu-surface element. */\n\n\n MDCMenuSurfaceFoundation.prototype.handleBodyClick = function (evt) {\n var el = evt.target;\n\n if (this.adapter_.isElementInContainer(el)) {\n return;\n }\n\n this.close();\n };\n /** Handle keys that close the surface. */\n\n\n MDCMenuSurfaceFoundation.prototype.handleKeydown = function (evt) {\n var keyCode = evt.keyCode,\n key = evt.key,\n shiftKey = evt.shiftKey;\n var isEscape = key === 'Escape' || keyCode === 27;\n var isTab = key === 'Tab' || keyCode === 9;\n\n if (isEscape) {\n this.close();\n } else if (isTab) {\n if (this.adapter_.isLastElementFocused() && !shiftKey) {\n this.adapter_.focusFirstElement();\n evt.preventDefault();\n } else if (this.adapter_.isFirstElementFocused() && shiftKey) {\n this.adapter_.focusLastElement();\n evt.preventDefault();\n }\n }\n };\n\n MDCMenuSurfaceFoundation.prototype.autoPosition_ = function () {\n var _a; // Compute measurements for autoposition methods reuse.\n\n\n this.measurements_ = this.getAutoLayoutMeasurements_();\n var corner = this.getOriginCorner_();\n var maxMenuSurfaceHeight = this.getMenuSurfaceMaxHeight_(corner);\n var verticalAlignment = this.hasBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM) ? 'bottom' : 'top';\n var horizontalAlignment = this.hasBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].RIGHT) ? 'right' : 'left';\n var horizontalOffset = this.getHorizontalOriginOffset_(corner);\n var verticalOffset = this.getVerticalOriginOffset_(corner);\n var _b = this.measurements_,\n anchorSize = _b.anchorSize,\n surfaceSize = _b.surfaceSize;\n var position = (_a = {}, _a[horizontalAlignment] = horizontalOffset, _a[verticalAlignment] = verticalOffset, _a); // Center align when anchor width is comparable or greater than menu surface, otherwise keep corner.\n\n if (anchorSize.width / surfaceSize.width > _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"].ANCHOR_TO_MENU_SURFACE_WIDTH_RATIO) {\n horizontalAlignment = 'center';\n } // If the menu-surface has been hoisted to the body, it's no longer relative to the anchor element\n\n\n if (this.isHoistedElement_ || this.isFixedPosition_) {\n this.adjustPositionForHoistedElement_(position);\n }\n\n this.adapter_.setTransformOrigin(horizontalAlignment + \" \" + verticalAlignment);\n this.adapter_.setPosition(position);\n this.adapter_.setMaxHeight(maxMenuSurfaceHeight ? maxMenuSurfaceHeight + 'px' : '');\n };\n /**\n * @return Measurements used to position menu surface popup.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.getAutoLayoutMeasurements_ = function () {\n var anchorRect = this.adapter_.getAnchorDimensions();\n var bodySize = this.adapter_.getBodyDimensions();\n var viewportSize = this.adapter_.getWindowDimensions();\n var windowScroll = this.adapter_.getWindowScroll();\n\n if (!anchorRect) {\n // tslint:disable:object-literal-sort-keys Positional properties are more readable when they're grouped together\n anchorRect = {\n top: this.position_.y,\n right: this.position_.x,\n bottom: this.position_.y,\n left: this.position_.x,\n width: 0,\n height: 0\n }; // tslint:enable:object-literal-sort-keys\n }\n\n return {\n anchorSize: anchorRect,\n bodySize: bodySize,\n surfaceSize: this.dimensions_,\n viewportDistance: {\n // tslint:disable:object-literal-sort-keys Positional properties are more readable when they're grouped together\n top: anchorRect.top,\n right: viewportSize.width - anchorRect.right,\n bottom: viewportSize.height - anchorRect.bottom,\n left: anchorRect.left\n },\n viewportSize: viewportSize,\n windowScroll: windowScroll\n };\n };\n /**\n * Computes the corner of the anchor from which to animate and position the menu surface.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.getOriginCorner_ = function () {\n // Defaults: open from the top left.\n var corner = _constants__WEBPACK_IMPORTED_MODULE_2__[\"Corner\"].TOP_LEFT;\n var _a = this.measurements_,\n viewportDistance = _a.viewportDistance,\n anchorSize = _a.anchorSize,\n surfaceSize = _a.surfaceSize;\n var isBottomAligned = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n var availableTop = isBottomAligned ? viewportDistance.top + anchorSize.height + this.anchorMargin_.bottom : viewportDistance.top + this.anchorMargin_.top;\n var availableBottom = isBottomAligned ? viewportDistance.bottom - this.anchorMargin_.bottom : viewportDistance.bottom + anchorSize.height - this.anchorMargin_.top;\n var topOverflow = surfaceSize.height - availableTop;\n var bottomOverflow = surfaceSize.height - availableBottom;\n\n if (bottomOverflow > 0 && topOverflow < bottomOverflow) {\n corner = this.setBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n }\n\n var isRtl = this.adapter_.isRtl();\n var isFlipRtl = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].FLIP_RTL);\n var avoidHorizontalOverlap = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].RIGHT);\n var isAlignedRight = avoidHorizontalOverlap && !isRtl || !avoidHorizontalOverlap && isFlipRtl && isRtl;\n var availableLeft = isAlignedRight ? viewportDistance.left + anchorSize.width + this.anchorMargin_.right : viewportDistance.left + this.anchorMargin_.left;\n var availableRight = isAlignedRight ? viewportDistance.right - this.anchorMargin_.right : viewportDistance.right + anchorSize.width - this.anchorMargin_.left;\n var leftOverflow = surfaceSize.width - availableLeft;\n var rightOverflow = surfaceSize.width - availableRight;\n\n if (leftOverflow < 0 && isAlignedRight && isRtl || avoidHorizontalOverlap && !isAlignedRight && leftOverflow < 0 || rightOverflow > 0 && leftOverflow < rightOverflow) {\n corner = this.setBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].RIGHT);\n }\n\n return corner;\n };\n /**\n * @param corner Origin corner of the menu surface.\n * @return Maximum height of the menu surface, based on available space. 0 indicates should not be set.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.getMenuSurfaceMaxHeight_ = function (corner) {\n var viewportDistance = this.measurements_.viewportDistance;\n var maxHeight = 0;\n var isBottomAligned = this.hasBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n var isBottomAnchored = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n var MARGIN_TO_EDGE = MDCMenuSurfaceFoundation.numbers.MARGIN_TO_EDGE; // When maximum height is not specified, it is handled from CSS.\n\n if (isBottomAligned) {\n maxHeight = viewportDistance.top + this.anchorMargin_.top - MARGIN_TO_EDGE;\n\n if (!isBottomAnchored) {\n maxHeight += this.measurements_.anchorSize.height;\n }\n } else {\n maxHeight = viewportDistance.bottom - this.anchorMargin_.bottom + this.measurements_.anchorSize.height - MARGIN_TO_EDGE;\n\n if (isBottomAnchored) {\n maxHeight -= this.measurements_.anchorSize.height;\n }\n }\n\n return maxHeight;\n };\n /**\n * @param corner Origin corner of the menu surface.\n * @return Horizontal offset of menu surface origin corner from corresponding anchor corner.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.getHorizontalOriginOffset_ = function (corner) {\n var anchorSize = this.measurements_.anchorSize; // isRightAligned corresponds to using the 'right' property on the surface.\n\n var isRightAligned = this.hasBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].RIGHT);\n var avoidHorizontalOverlap = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].RIGHT);\n\n if (isRightAligned) {\n var rightOffset = avoidHorizontalOverlap ? anchorSize.width - this.anchorMargin_.left : this.anchorMargin_.right; // For hoisted or fixed elements, adjust the offset by the difference between viewport width and body width so\n // when we calculate the right value (`adjustPositionForHoistedElement_`) based on the element position,\n // the right property is correct.\n\n if (this.isHoistedElement_ || this.isFixedPosition_) {\n return rightOffset - (this.measurements_.viewportSize.width - this.measurements_.bodySize.width);\n }\n\n return rightOffset;\n }\n\n return avoidHorizontalOverlap ? anchorSize.width - this.anchorMargin_.right : this.anchorMargin_.left;\n };\n /**\n * @param corner Origin corner of the menu surface.\n * @return Vertical offset of menu surface origin corner from corresponding anchor corner.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.getVerticalOriginOffset_ = function (corner) {\n var anchorSize = this.measurements_.anchorSize;\n var isBottomAligned = this.hasBit_(corner, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n var avoidVerticalOverlap = this.hasBit_(this.anchorCorner_, _constants__WEBPACK_IMPORTED_MODULE_2__[\"CornerBit\"].BOTTOM);\n var y = 0;\n\n if (isBottomAligned) {\n y = avoidVerticalOverlap ? anchorSize.height - this.anchorMargin_.top : -this.anchorMargin_.bottom;\n } else {\n y = avoidVerticalOverlap ? anchorSize.height + this.anchorMargin_.bottom : this.anchorMargin_.top;\n }\n\n return y;\n };\n /** Calculates the offsets for positioning the menu-surface when the menu-surface has been hoisted to the body. */\n\n\n MDCMenuSurfaceFoundation.prototype.adjustPositionForHoistedElement_ = function (position) {\n var e_1, _a;\n\n var _b = this.measurements_,\n windowScroll = _b.windowScroll,\n viewportDistance = _b.viewportDistance;\n var props = Object.keys(position);\n\n try {\n for (var props_1 = tslib__WEBPACK_IMPORTED_MODULE_0__[\"__values\"](props), props_1_1 = props_1.next(); !props_1_1.done; props_1_1 = props_1.next()) {\n var prop = props_1_1.value;\n var value = position[prop] || 0; // Hoisted surfaces need to have the anchor elements location on the page added to the\n // position properties for proper alignment on the body.\n\n value += viewportDistance[prop]; // Surfaces that are absolutely positioned need to have additional calculations for scroll\n // and bottom positioning.\n\n if (!this.isFixedPosition_) {\n if (prop === 'top') {\n value += windowScroll.y;\n } else if (prop === 'bottom') {\n value -= windowScroll.y;\n } else if (prop === 'left') {\n value += windowScroll.x;\n } else {\n // prop === 'right'\n value -= windowScroll.x;\n }\n }\n\n position[prop] = value;\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (props_1_1 && !props_1_1.done && (_a = props_1.return)) _a.call(props_1);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n };\n /**\n * The last focused element when the menu surface was opened should regain focus, if the user is\n * focused on or within the menu surface when it is closed.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.maybeRestoreFocus_ = function () {\n var isRootFocused = this.adapter_.isFocused();\n var childHasFocus = document.activeElement && this.adapter_.isElementInContainer(document.activeElement);\n\n if (isRootFocused || childHasFocus) {\n this.adapter_.restoreFocus();\n }\n };\n\n MDCMenuSurfaceFoundation.prototype.hasBit_ = function (corner, bit) {\n return Boolean(corner & bit); // tslint:disable-line:no-bitwise\n };\n\n MDCMenuSurfaceFoundation.prototype.setBit_ = function (corner, bit) {\n return corner | bit; // tslint:disable-line:no-bitwise\n };\n /**\n * isFinite that doesn't force conversion to number type.\n * Equivalent to Number.isFinite in ES2015, which is not supported in IE.\n */\n\n\n MDCMenuSurfaceFoundation.prototype.isFinite_ = function (num) {\n return typeof num === 'number' && isFinite(num);\n };\n\n return MDCMenuSurfaceFoundation;\n}(_material_base_foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCFoundation\"]);\n\n // tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCMenuSurfaceFoundation);\n\n//# sourceURL=webpack:///./node_modules/@material/menu-surface/foundation.js?");
/***/ }),
/***/ "./node_modules/@material/menu-surface/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material/menu-surface/index.js ***!
\******************************************************/
/*! exports provided: Corner, CornerBit, util, MDCMenuSurface, cssClasses, strings, numbers, MDCMenuSurfaceFoundation */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./node_modules/@material/menu-surface/util.js\");\n/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, \"util\", function() { return _util__WEBPACK_IMPORTED_MODULE_0__; });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu-surface/constants.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Corner\", function() { return _constants__WEBPACK_IMPORTED_MODULE_1__[\"Corner\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"CornerBit\", function() { return _constants__WEBPACK_IMPORTED_MODULE_1__[\"CornerBit\"]; });\n\n/* harmony import */ var _component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./component */ \"./node_modules/@material/menu-surface/component.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuSurface\", function() { return _component__WEBPACK_IMPORTED_MODULE_2__[\"MDCMenuSurface\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return _constants__WEBPACK_IMPORTED_MODULE_1__[\"cssClasses\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return _constants__WEBPACK_IMPORTED_MODULE_1__[\"strings\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"numbers\", function() { return _constants__WEBPACK_IMPORTED_MODULE_1__[\"numbers\"]; });\n\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/menu-surface/foundation.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuSurfaceFoundation\", function() { return _foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuSurfaceFoundation\"]; });\n\n/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu-surface/index.js?");
/***/ }),
/***/ "./node_modules/@material/menu-surface/util.js":
/*!*****************************************************!*\
!*** ./node_modules/@material/menu-surface/util.js ***!
\*****************************************************/
/*! exports provided: getTransformPropertyName */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getTransformPropertyName\", function() { return getTransformPropertyName; });\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar cachedCssTransformPropertyName_;\n/**\n * Returns the name of the correct transform property to use on the current browser.\n */\n\nfunction getTransformPropertyName(globalObj, forceRefresh) {\n if (forceRefresh === void 0) {\n forceRefresh = false;\n }\n\n if (cachedCssTransformPropertyName_ === undefined || forceRefresh) {\n var el = globalObj.document.createElement('div');\n cachedCssTransformPropertyName_ = 'transform' in el.style ? 'transform' : 'webkitTransform';\n }\n\n return cachedCssTransformPropertyName_;\n}\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu-surface/util.js?");
/***/ }),
/***/ "./node_modules/@material/menu/component.js":
/*!**************************************************!*\
!*** ./node_modules/@material/menu/component.js ***!
\**************************************************/
/*! exports provided: MDCMenu */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCMenu\", function() { return MDCMenu; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/component */ \"./node_modules/@material/base/component.js\");\n/* harmony import */ var _material_list_component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @material/list/component */ \"./node_modules/@material/list/component.js\");\n/* harmony import */ var _material_list_foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @material/list/foundation */ \"./node_modules/@material/list/foundation.js\");\n/* harmony import */ var _material_menu_surface_component__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @material/menu-surface/component */ \"./node_modules/@material/menu-surface/component.js\");\n/* harmony import */ var _material_menu_surface_foundation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @material/menu-surface/foundation */ \"./node_modules/@material/menu-surface/foundation.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu/constants.js\");\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/menu/foundation.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\n\n\n\nvar MDCMenu =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCMenu, _super);\n\n function MDCMenu() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n\n MDCMenu.attachTo = function (root) {\n return new MDCMenu(root);\n };\n\n MDCMenu.prototype.initialize = function (menuSurfaceFactory, listFactory) {\n if (menuSurfaceFactory === void 0) {\n menuSurfaceFactory = function menuSurfaceFactory(el) {\n return new _material_menu_surface_component__WEBPACK_IMPORTED_MODULE_4__[\"MDCMenuSurface\"](el);\n };\n }\n\n if (listFactory === void 0) {\n listFactory = function listFactory(el) {\n return new _material_list_component__WEBPACK_IMPORTED_MODULE_2__[\"MDCList\"](el);\n };\n }\n\n this.menuSurfaceFactory_ = menuSurfaceFactory;\n this.listFactory_ = listFactory;\n };\n\n MDCMenu.prototype.initialSyncWithDOM = function () {\n var _this = this;\n\n this.menuSurface_ = this.menuSurfaceFactory_(this.root_);\n var list = this.root_.querySelector(_constants__WEBPACK_IMPORTED_MODULE_6__[\"strings\"].LIST_SELECTOR);\n\n if (list) {\n this.list_ = this.listFactory_(list);\n this.list_.wrapFocus = true;\n } else {\n this.list_ = null;\n }\n\n this.handleKeydown_ = function (evt) {\n return _this.foundation_.handleKeydown(evt);\n };\n\n this.handleItemAction_ = function (evt) {\n return _this.foundation_.handleItemAction(_this.items[evt.detail.index]);\n };\n\n this.handleMenuSurfaceOpened_ = function () {\n return _this.foundation_.handleMenuSurfaceOpened();\n };\n\n this.menuSurface_.listen(_material_menu_surface_foundation__WEBPACK_IMPORTED_MODULE_5__[\"MDCMenuSurfaceFoundation\"].strings.OPENED_EVENT, this.handleMenuSurfaceOpened_);\n this.listen('keydown', this.handleKeydown_);\n this.listen(_material_list_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCListFoundation\"].strings.ACTION_EVENT, this.handleItemAction_);\n };\n\n MDCMenu.prototype.destroy = function () {\n if (this.list_) {\n this.list_.destroy();\n }\n\n this.menuSurface_.destroy();\n this.menuSurface_.unlisten(_material_menu_surface_foundation__WEBPACK_IMPORTED_MODULE_5__[\"MDCMenuSurfaceFoundation\"].strings.OPENED_EVENT, this.handleMenuSurfaceOpened_);\n this.unlisten('keydown', this.handleKeydown_);\n this.unlisten(_material_list_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCListFoundation\"].strings.ACTION_EVENT, this.handleItemAction_);\n\n _super.prototype.destroy.call(this);\n };\n\n Object.defineProperty(MDCMenu.prototype, \"open\", {\n get: function get() {\n return this.menuSurface_.open;\n },\n set: function set(value) {\n this.menuSurface_.open = value;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenu.prototype, \"wrapFocus\", {\n get: function get() {\n return this.list_ ? this.list_.wrapFocus : false;\n },\n set: function set(value) {\n if (this.list_) {\n this.list_.wrapFocus = value;\n }\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenu.prototype, \"items\", {\n /**\n * Return the items within the menu. Note that this only contains the set of elements within\n * the items container that are proper list items, and not supplemental / presentational DOM\n * elements.\n */\n get: function get() {\n return this.list_ ? this.list_.listElements : [];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenu.prototype, \"quickOpen\", {\n set: function set(quickOpen) {\n this.menuSurface_.quickOpen = quickOpen;\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Sets default focus state where the menu should focus every time when menu\n * is opened. Focuses the list root (`DefaultFocusState.LIST_ROOT`) element by\n * default.\n * @param focusState Default focus state.\n */\n\n MDCMenu.prototype.setDefaultFocusState = function (focusState) {\n this.foundation_.setDefaultFocusState(focusState);\n };\n /**\n * @param corner Default anchor corner alignment of top-left menu corner.\n */\n\n\n MDCMenu.prototype.setAnchorCorner = function (corner) {\n this.menuSurface_.setAnchorCorner(corner);\n };\n\n MDCMenu.prototype.setAnchorMargin = function (margin) {\n this.menuSurface_.setAnchorMargin(margin);\n };\n /**\n * @return The item within the menu at the index specified.\n */\n\n\n MDCMenu.prototype.getOptionByIndex = function (index) {\n var items = this.items;\n\n if (index < items.length) {\n return this.items[index];\n } else {\n return null;\n }\n };\n\n MDCMenu.prototype.setFixedPosition = function (isFixed) {\n this.menuSurface_.setFixedPosition(isFixed);\n };\n\n MDCMenu.prototype.hoistMenuToBody = function () {\n this.menuSurface_.hoistMenuToBody();\n };\n\n MDCMenu.prototype.setIsHoisted = function (isHoisted) {\n this.menuSurface_.setIsHoisted(isHoisted);\n };\n\n MDCMenu.prototype.setAbsolutePosition = function (x, y) {\n this.menuSurface_.setAbsolutePosition(x, y);\n };\n /**\n * Sets the element that the menu-surface is anchored to.\n */\n\n\n MDCMenu.prototype.setAnchorElement = function (element) {\n this.menuSurface_.anchorElement = element;\n };\n\n MDCMenu.prototype.getDefaultFoundation = function () {\n var _this = this; // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n\n\n var adapter = {\n addClassToElementAtIndex: function addClassToElementAtIndex(index, className) {\n var list = _this.items;\n list[index].classList.add(className);\n },\n removeClassFromElementAtIndex: function removeClassFromElementAtIndex(index, className) {\n var list = _this.items;\n list[index].classList.remove(className);\n },\n addAttributeToElementAtIndex: function addAttributeToElementAtIndex(index, attr, value) {\n var list = _this.items;\n list[index].setAttribute(attr, value);\n },\n removeAttributeFromElementAtIndex: function removeAttributeFromElementAtIndex(index, attr) {\n var list = _this.items;\n list[index].removeAttribute(attr);\n },\n elementContainsClass: function elementContainsClass(element, className) {\n return element.classList.contains(className);\n },\n closeSurface: function closeSurface() {\n return _this.open = false;\n },\n getElementIndex: function getElementIndex(element) {\n return _this.items.indexOf(element);\n },\n getParentElement: function getParentElement(element) {\n return element.parentElement;\n },\n getSelectedElementIndex: function getSelectedElementIndex(selectionGroup) {\n var selectedListItem = selectionGroup.querySelector(\".\" + _constants__WEBPACK_IMPORTED_MODULE_6__[\"cssClasses\"].MENU_SELECTED_LIST_ITEM);\n return selectedListItem ? _this.items.indexOf(selectedListItem) : -1;\n },\n notifySelected: function notifySelected(evtData) {\n return _this.emit(_constants__WEBPACK_IMPORTED_MODULE_6__[\"strings\"].SELECTED_EVENT, {\n index: evtData.index,\n item: _this.items[evtData.index]\n });\n },\n getMenuItemCount: function getMenuItemCount() {\n return _this.items.length;\n },\n focusItemAtIndex: function focusItemAtIndex(index) {\n return _this.items[index].focus();\n },\n focusListRoot: function focusListRoot() {\n return _this.root_.querySelector(_constants__WEBPACK_IMPORTED_MODULE_6__[\"strings\"].LIST_SELECTOR).focus();\n }\n }; // tslint:enable:object-literal-sort-keys\n\n return new _foundation__WEBPACK_IMPORTED_MODULE_7__[\"MDCMenuFoundation\"](adapter);\n };\n\n return MDCMenu;\n}(_material_base_component__WEBPACK_IMPORTED_MODULE_1__[\"MDCComponent\"]);\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu/component.js?");
/***/ }),
/***/ "./node_modules/@material/menu/constants.js":
/*!**************************************************!*\
!*** ./node_modules/@material/menu/constants.js ***!
\**************************************************/
/*! exports provided: cssClasses, strings, numbers, DefaultFocusState */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return cssClasses; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return strings; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"numbers\", function() { return numbers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DefaultFocusState\", function() { return DefaultFocusState; });\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar cssClasses = {\n MENU_SELECTED_LIST_ITEM: 'mdc-menu-item--selected',\n MENU_SELECTION_GROUP: 'mdc-menu__selection-group',\n ROOT: 'mdc-menu'\n};\nvar strings = {\n ARIA_SELECTED_ATTR: 'aria-selected',\n CHECKBOX_SELECTOR: 'input[type=\"checkbox\"]',\n LIST_SELECTOR: '.mdc-list',\n SELECTED_EVENT: 'MDCMenu:selected'\n};\nvar numbers = {\n FOCUS_ROOT_INDEX: -1\n};\nvar DefaultFocusState;\n\n(function (DefaultFocusState) {\n DefaultFocusState[DefaultFocusState[\"NONE\"] = 0] = \"NONE\";\n DefaultFocusState[DefaultFocusState[\"LIST_ROOT\"] = 1] = \"LIST_ROOT\";\n DefaultFocusState[DefaultFocusState[\"FIRST_ITEM\"] = 2] = \"FIRST_ITEM\";\n DefaultFocusState[DefaultFocusState[\"LAST_ITEM\"] = 3] = \"LAST_ITEM\";\n})(DefaultFocusState || (DefaultFocusState = {}));\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu/constants.js?");
/***/ }),
/***/ "./node_modules/@material/menu/foundation.js":
/*!***************************************************!*\
!*** ./node_modules/@material/menu/foundation.js ***!
\***************************************************/
/*! exports provided: MDCMenuFoundation, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuFoundation\", function() { return MDCMenuFoundation; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/foundation */ \"./node_modules/@material/base/foundation.js\");\n/* harmony import */ var _material_list_foundation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @material/list/foundation */ \"./node_modules/@material/list/foundation.js\");\n/* harmony import */ var _material_menu_surface_foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @material/menu-surface/foundation */ \"./node_modules/@material/menu-surface/foundation.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu/constants.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\nvar MDCMenuFoundation =\n/** @class */\nfunction (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCMenuFoundation, _super);\n\n function MDCMenuFoundation(adapter) {\n var _this = _super.call(this, tslib__WEBPACK_IMPORTED_MODULE_0__[\"__assign\"]({}, MDCMenuFoundation.defaultAdapter, adapter)) || this;\n\n _this.closeAnimationEndTimerId_ = 0;\n _this.defaultFocusState_ = _constants__WEBPACK_IMPORTED_MODULE_4__[\"DefaultFocusState\"].LIST_ROOT;\n return _this;\n }\n\n Object.defineProperty(MDCMenuFoundation, \"cssClasses\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_4__[\"cssClasses\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuFoundation, \"strings\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_4__[\"strings\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuFoundation, \"numbers\", {\n get: function get() {\n return _constants__WEBPACK_IMPORTED_MODULE_4__[\"numbers\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCMenuFoundation, \"defaultAdapter\", {\n /**\n * @see {@link MDCMenuAdapter} for typing information on parameters and return types.\n */\n get: function get() {\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n return {\n addClassToElementAtIndex: function addClassToElementAtIndex() {\n return undefined;\n },\n removeClassFromElementAtIndex: function removeClassFromElementAtIndex() {\n return undefined;\n },\n addAttributeToElementAtIndex: function addAttributeToElementAtIndex() {\n return undefined;\n },\n removeAttributeFromElementAtIndex: function removeAttributeFromElementAtIndex() {\n return undefined;\n },\n elementContainsClass: function elementContainsClass() {\n return false;\n },\n closeSurface: function closeSurface() {\n return undefined;\n },\n getElementIndex: function getElementIndex() {\n return -1;\n },\n getParentElement: function getParentElement() {\n return null;\n },\n getSelectedElementIndex: function getSelectedElementIndex() {\n return -1;\n },\n notifySelected: function notifySelected() {\n return undefined;\n },\n getMenuItemCount: function getMenuItemCount() {\n return 0;\n },\n focusItemAtIndex: function focusItemAtIndex() {\n return undefined;\n },\n focusListRoot: function focusListRoot() {\n return undefined;\n }\n }; // tslint:enable:object-literal-sort-keys\n },\n enumerable: true,\n configurable: true\n });\n\n MDCMenuFoundation.prototype.destroy = function () {\n if (this.closeAnimationEndTimerId_) {\n clearTimeout(this.closeAnimationEndTimerId_);\n }\n\n this.adapter_.closeSurface();\n };\n\n MDCMenuFoundation.prototype.handleKeydown = function (evt) {\n var key = evt.key,\n keyCode = evt.keyCode;\n var isTab = key === 'Tab' || keyCode === 9;\n\n if (isTab) {\n this.adapter_.closeSurface();\n }\n };\n\n MDCMenuFoundation.prototype.handleItemAction = function (listItem) {\n var _this = this;\n\n var index = this.adapter_.getElementIndex(listItem);\n\n if (index < 0) {\n return;\n }\n\n this.adapter_.notifySelected({\n index: index\n });\n this.adapter_.closeSurface(); // Wait for the menu to close before adding/removing classes that affect styles.\n\n this.closeAnimationEndTimerId_ = setTimeout(function () {\n var selectionGroup = _this.getSelectionGroup_(listItem);\n\n if (selectionGroup) {\n _this.handleSelectionGroup_(selectionGroup, index);\n }\n }, _material_menu_surface_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuSurfaceFoundation\"].numbers.TRANSITION_CLOSE_DURATION);\n };\n\n MDCMenuFoundation.prototype.handleMenuSurfaceOpened = function () {\n switch (this.defaultFocusState_) {\n case _constants__WEBPACK_IMPORTED_MODULE_4__[\"DefaultFocusState\"].FIRST_ITEM:\n this.adapter_.focusItemAtIndex(0);\n break;\n\n case _constants__WEBPACK_IMPORTED_MODULE_4__[\"DefaultFocusState\"].LAST_ITEM:\n this.adapter_.focusItemAtIndex(this.adapter_.getMenuItemCount() - 1);\n break;\n\n case _constants__WEBPACK_IMPORTED_MODULE_4__[\"DefaultFocusState\"].NONE:\n // Do nothing.\n break;\n\n default:\n this.adapter_.focusListRoot();\n break;\n }\n };\n /**\n * Sets default focus state where the menu should focus every time when menu\n * is opened. Focuses the list root (`DefaultFocusState.LIST_ROOT`) element by\n * default.\n */\n\n\n MDCMenuFoundation.prototype.setDefaultFocusState = function (focusState) {\n this.defaultFocusState_ = focusState;\n };\n /**\n * Handles toggling the selected classes in a selection group when a selection is made.\n */\n\n\n MDCMenuFoundation.prototype.handleSelectionGroup_ = function (selectionGroup, index) {\n // De-select the previous selection in this group.\n var selectedIndex = this.adapter_.getSelectedElementIndex(selectionGroup);\n\n if (selectedIndex >= 0) {\n this.adapter_.removeAttributeFromElementAtIndex(selectedIndex, _constants__WEBPACK_IMPORTED_MODULE_4__[\"strings\"].ARIA_SELECTED_ATTR);\n this.adapter_.removeClassFromElementAtIndex(selectedIndex, _constants__WEBPACK_IMPORTED_MODULE_4__[\"cssClasses\"].MENU_SELECTED_LIST_ITEM);\n } // Select the new list item in this group.\n\n\n this.adapter_.addClassToElementAtIndex(index, _constants__WEBPACK_IMPORTED_MODULE_4__[\"cssClasses\"].MENU_SELECTED_LIST_ITEM);\n this.adapter_.addAttributeToElementAtIndex(index, _constants__WEBPACK_IMPORTED_MODULE_4__[\"strings\"].ARIA_SELECTED_ATTR, 'true');\n };\n /**\n * Returns the parent selection group of an element if one exists.\n */\n\n\n MDCMenuFoundation.prototype.getSelectionGroup_ = function (listItem) {\n var parent = this.adapter_.getParentElement(listItem);\n\n if (!parent) {\n return null;\n }\n\n var isGroup = this.adapter_.elementContainsClass(parent, _constants__WEBPACK_IMPORTED_MODULE_4__[\"cssClasses\"].MENU_SELECTION_GROUP); // Iterate through ancestors until we find the group or get to the list.\n\n while (!isGroup && parent && !this.adapter_.elementContainsClass(parent, _material_list_foundation__WEBPACK_IMPORTED_MODULE_2__[\"MDCListFoundation\"].cssClasses.ROOT)) {\n parent = this.adapter_.getParentElement(parent);\n isGroup = parent ? this.adapter_.elementContainsClass(parent, _constants__WEBPACK_IMPORTED_MODULE_4__[\"cssClasses\"].MENU_SELECTION_GROUP) : false;\n }\n\n if (isGroup) {\n return parent;\n } else {\n return null;\n }\n };\n\n return MDCMenuFoundation;\n}(_material_base_foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCFoundation\"]);\n\n // tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCMenuFoundation);\n\n//# sourceURL=webpack:///./node_modules/@material/menu/foundation.js?");
/***/ }),
/***/ "./node_modules/@material/menu/index.js":
/*!**********************************************!*\
!*** ./node_modules/@material/menu/index.js ***!
\**********************************************/
/*! exports provided: Corner, MDCMenu, cssClasses, strings, numbers, DefaultFocusState, MDCMenuFoundation */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _material_menu_surface_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/menu-surface/constants */ \"./node_modules/@material/menu-surface/constants.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Corner\", function() { return _material_menu_surface_constants__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"]; });\n\n/* harmony import */ var _component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./component */ \"./node_modules/@material/menu/component.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCMenu\", function() { return _component__WEBPACK_IMPORTED_MODULE_1__[\"MDCMenu\"]; });\n\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/menu/constants.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"numbers\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"numbers\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"DefaultFocusState\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"DefaultFocusState\"]; });\n\n/* harmony import */ var _foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./foundation */ \"./node_modules/@material/menu/foundation.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCMenuFoundation\", function() { return _foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCMenuFoundation\"]; });\n\n/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n // for backward compatibility\n\n\n\n\n\n//# sourceURL=webpack:///./node_modules/@material/menu/index.js?");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/Menu.vue?vue&type=script&lang=js&":
/*!*****************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--1!./node_modules/vue-loader/lib??vue-loader-options!./components/menu/Menu.vue?vue&type=script&lang=js& ***!
\*****************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _material_menu__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/menu */ \"./node_modules/@material/menu/index.js\");\n/* harmony import */ var _material_menu_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/menu/constants */ \"./node_modules/@material/menu/constants.js\");\n/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../base */ \"./components/base/index.js\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n mixins: [_base__WEBPACK_IMPORTED_MODULE_2__[\"baseComponentMixin\"], _base__WEBPACK_IMPORTED_MODULE_2__[\"themeClassMixin\"]],\n model: {\n prop: 'open',\n event: 'change'\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n quickOpen: {\n type: Boolean,\n default: false\n },\n anchorCorner: {\n type: String,\n default: ''\n },\n absolutePositionX: {\n type: Number,\n default: null\n },\n absolutePositionY: {\n type: Number,\n default: null\n },\n hoistToBody: {\n type: Boolean,\n default: false\n },\n fixed: {\n type: Boolean,\n default: false\n },\n wrapFocus: {\n type: Boolean,\n default: true\n },\n defaultFocusState: {\n type: [Number, String],\n default: null\n }\n },\n data: function data() {\n return {\n mdcMenu: undefined,\n slotObserver: undefined\n };\n },\n computed: {\n model: {\n get: function get() {\n return this.open;\n },\n set: function set(value) {\n this.$emit('change', value);\n }\n },\n focusState: function focusState() {\n if (!this.defaultFocusState) return null;\n var upperCaseFocusState = String(this.defaultFocusState).toUpperCase();\n\n if (isNaN(this.defaultFocusState) && _material_menu_constants__WEBPACK_IMPORTED_MODULE_1__[\"DefaultFocusState\"].hasOwnProperty(upperCaseFocusState)) {\n return _material_menu_constants__WEBPACK_IMPORTED_MODULE_1__[\"DefaultFocusState\"][upperCaseFocusState];\n }\n\n var numberFocusState = Number(this.defaultFocusState);\n\n if (!isNaN(this.defaultFocusState) && _material_menu_constants__WEBPACK_IMPORTED_MODULE_1__[\"DefaultFocusState\"].hasOwnProperty(numberFocusState)) {\n return numberFocusState;\n }\n\n return null;\n },\n tabIndex: function tabIndex() {\n if (this.$slots.default[0].componentOptions.tag.toLowerCase() === 'm-list') {\n return -1;\n }\n\n return this.mdcMenu ? this.mdcMenu.open ? 0 : -1 : this.open ? 0 : -1;\n }\n },\n watch: {\n open: function open() {\n this.mdcMenu.open = this.open;\n },\n quickOpen: function quickOpen() {\n this.mdcMenu.quickOpen = this.quickOpen;\n },\n hoistToBody: function hoistToBody() {\n if (this.hoistToBody) {\n this.mdcMenu.hoistMenuToBody();\n }\n },\n fixed: function fixed() {\n this.mdcMenu.setFixedPosition(this.fixed);\n },\n anchorCorner: function anchorCorner() {\n if (this.anchorCorner !== '') {\n this.mdcMenu.setAnchorCorner(_material_menu__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"][this.anchorCorner.toUpperCase()]);\n } else {\n this.mdcMenu.setAnchorCorner(_material_menu__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"].TOP_START);\n }\n },\n absolutePositionX: function absolutePositionX() {\n if (this.absolutePositionX !== null) {\n this.mdcMenu.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n },\n absolutePositionY: function absolutePositionY() {\n if (this.absolutePositionY !== null) {\n this.mdcMenu.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n },\n wrapFocus: function wrapFocus() {\n this.mdcMenu.wrapFocus = this.wrapFocus;\n },\n defaultFocusState: function defaultFocusState() {\n if (this.focusState !== null) {\n this.mdcMenu.setDefaultFocusState(this.focusState);\n }\n },\n 'mdcMenu.open': function mdcMenuOpen() {\n this.model = this.mdcMenu.open;\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n this.updateSlot();\n this.slotObserver = new MutationObserver(function () {\n return _this.updateSlot();\n });\n this.slotObserver.observe(this.$el, {\n childList: true,\n subtree: true\n });\n this.mdcMenu = _material_menu__WEBPACK_IMPORTED_MODULE_0__[\"MDCMenu\"].attachTo(this.$el);\n\n if (this.hoistToBody) {\n this.mdcMenu.hoistMenuToBody();\n }\n\n this.mdcMenu.setFixedPosition(this.fixed);\n\n if (this.anchorCorner !== '') {\n this.mdcMenu.setAnchorCorner(_material_menu__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"][this.anchorCorner.toUpperCase()]);\n }\n\n if (this.absolutePositionX !== null || this.absolutePositionY !== null) {\n this.mdcMenu.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n\n this.mdcMenu.wrapFocus = this.wrapFocus;\n\n if (this.focusState !== null) {\n this.mdcMenu.setDefaultFocusState(this.focusState);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.slotObserver.disconnect();\n this.mdcMenu.destroy();\n },\n methods: {\n updateSlot: function updateSlot() {\n if (this.$slots.default) {\n this.$slots.default.map(function (n) {\n n.componentInstance.$el.setAttribute('role', 'menu');\n n.componentInstance.$el.setAttribute('aria-hidden', 'true');\n n.componentInstance.$el.setAttribute('aria-orientation', 'vertical');\n });\n }\n },\n onSelect: function onSelect(event) {\n this.model = false;\n this.$emit('select', event.detail);\n }\n }\n});\n\n//# sourceURL=webpack:///./components/menu/Menu.vue?./node_modules/babel-loader/lib??ref--1!./node_modules/vue-loader/lib??vue-loader-options");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuSurface.vue?vue&type=script&lang=js&":
/*!************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--1!./node_modules/vue-loader/lib??vue-loader-options!./components/menu/MenuSurface.vue?vue&type=script&lang=js& ***!
\************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _material_menu_surface__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/menu-surface */ \"./node_modules/@material/menu-surface/index.js\");\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'MenuSurface',\n model: {\n prop: 'open',\n event: 'change'\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n fixed: {\n type: Boolean,\n default: false\n },\n quickOpen: {\n type: Boolean,\n default: false\n },\n anchorCorner: {\n type: String,\n default: ''\n },\n absolutePositionX: {\n type: Number,\n default: -1\n },\n absolutePositionY: {\n type: Number,\n default: -1\n }\n },\n data: function data() {\n return {\n mdcMenuSurface: undefined\n };\n },\n computed: {\n model: {\n get: function get() {\n return this.open;\n },\n set: function set(value) {\n this.$emit('change', value);\n }\n }\n },\n watch: {\n open: function open() {\n this.mdcMenuSurface.open = this.open;\n },\n quickOpen: function quickOpen() {\n this.mdcMenuSurface.quickOpen = this.quickOpen;\n },\n fixed: function fixed() {\n this.mdcMenuSurface.setFixedPosition(this.fixed);\n },\n anchorCorner: function anchorCorner() {\n if (this.anchorCorner !== '') {\n this.mdcMenuSurface.setAnchorCorner(_material_menu_surface__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"][this.anchorCorner.toUpperCase()]);\n } else {\n this.mdcMenuSurface.setAnchorCorner(_material_menu_surface__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"].TOP_START);\n }\n },\n absolutePositionX: function absolutePositionX() {\n if (this.absolutePositionX > -1 && this.absolutePositionY > -1) {\n this.mdcMenuSurface.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n },\n absolutePositionY: function absolutePositionY() {\n if (this.absolutePositionX > -1 && this.absolutePositionY > -1) {\n this.mdcMenuSurface.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n }\n },\n mounted: function mounted() {\n this.mdcMenuSurface = _material_menu_surface__WEBPACK_IMPORTED_MODULE_0__[\"MDCMenuSurface\"].attachTo(this.$el);\n this.mdcMenuSurface.setFixedPosition(this.fixed);\n\n if (this.anchorCorner !== '') {\n this.mdcMenuSurface.setAnchorCorner(_material_menu_surface__WEBPACK_IMPORTED_MODULE_0__[\"Corner\"][this.anchorCorner.toUpperCase()]);\n }\n\n if (this.absolutePositionX > -1 && this.absolutePositionY > -1) {\n this.mdcMenuSurface.setAbsolutePosition(this.absolutePositionX, this.absolutePositionY);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.mdcMenuSurface.destroy();\n },\n methods: {\n onClosed: function onClosed() {\n this.model = false;\n this.$emit('closed');\n },\n onOpened: function onOpened() {\n this.model = true;\n this.$emit('opened');\n }\n }\n});\n\n//# sourceURL=webpack:///./components/menu/MenuSurface.vue?./node_modules/babel-loader/lib??ref--1!./node_modules/vue-loader/lib??vue-loader-options");
/***/ }),
/***/ "./node_modules/tslib/tslib.es6.js":
/*!*****************************************!*\
!*** ./node_modules/tslib/tslib.es6.js ***!
\*****************************************/
/*! exports provided: __extends, __assign, __rest, __decorate, __param, __metadata, __awaiter, __generator, __exportStar, __values, __read, __spread, __spreadArrays, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__extends\", function() { return __extends; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__assign\", function() { return __assign; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__rest\", function() { return __rest; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__decorate\", function() { return __decorate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__param\", function() { return __param; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__metadata\", function() { return __metadata; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__awaiter\", function() { return __awaiter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__generator\", function() { return __generator; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__exportStar\", function() { return __exportStar; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__values\", function() { return __values; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__read\", function() { return __read; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__spread\", function() { return __spread; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__spreadArrays\", function() { return __spreadArrays; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__await\", function() { return __await; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__asyncGenerator\", function() { return __asyncGenerator; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__asyncDelegator\", function() { return __asyncDelegator; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__asyncValues\", function() { return __asyncValues; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__makeTemplateObject\", function() { return __makeTemplateObject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__importStar\", function() { return __importStar; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__importDefault\", function() { return __importDefault; });\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nfunction __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nfunction __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nfunction __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nfunction __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nfunction __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nfunction __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nfunction __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nfunction __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nfunction __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nfunction __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nfunction __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nfunction __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nfunction __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nfunction __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\n\n//# sourceURL=webpack:///./node_modules/tslib/tslib.es6.js?");
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/Menu.vue?vue&type=template&id=998f83f8&":
/*!***********************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/menu/Menu.vue?vue&type=template&id=998f83f8& ***!
\***********************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"mdc-menu mdc-menu-surface\",\n attrs: { tabindex: _vm.tabIndex },\n on: { \"MDCMenu:selected\": _vm.onSelect }\n },\n [_vm._t(\"default\")],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./components/menu/Menu.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e&":
/*!*****************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/menu/MenuAnchor.vue?vue&type=template&id=d9c18d4e& ***!
\*****************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"mdc-menu-surface--anchor\" },\n [_vm._t(\"default\")],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./components/menu/MenuAnchor.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true&":
/*!******************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/menu/MenuSurface.vue?vue&type=template&id=4855a88e&scoped=true& ***!
\******************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"mdc-menu-surface\",\n on: {\n \"MDCMenuSurface:closed\": _vm.onClosed,\n \"MDCMenuSurface:opened\": _vm.onOpened\n }\n },\n [_vm._t(\"default\")],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./components/menu/MenuSurface.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
/***/ }),
/***/ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js":
/*!********************************************************************!*\
!*** ./node_modules/vue-loader/lib/runtime/componentNormalizer.js ***!
\********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return normalizeComponent; });\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nfunction normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n\n\n//# sourceURL=webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js?");
/***/ })
/******/ });
});