| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642 | module.exports =/******/ (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 = "/dist/";/******//******//******/ 	// Load entry module and return exports/******/ 	return __webpack_require__(__webpack_require__.s = 130);/******/ })/************************************************************************//******/ ({/***/ 0:/***/ (function(module, __webpack_exports__, __webpack_require__) {"use strict";/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });/* globals __VUE_SSR_CONTEXT__ */// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).// This module is a runtime utility for cleaner component module output and will// be included in the final webpack user bundle.function normalizeComponent (  scriptExports,  render,  staticRenderFns,  functionalTemplate,  injectStyles,  scopeId,  moduleIdentifier, /* server only */  shadowMode /* vue-cli only */) {  // Vue.extend constructor export interop  var options = typeof scriptExports === 'function'    ? scriptExports.options    : scriptExports  // render functions  if (render) {    options.render = render    options.staticRenderFns = staticRenderFns    options._compiled = true  }  // functional template  if (functionalTemplate) {    options.functional = true  }  // scopedId  if (scopeId) {    options._scopeId = 'data-v-' + scopeId  }  var hook  if (moduleIdentifier) { // server build    hook = function (context) {      // 2.3 injection      context =        context || // cached call        (this.$vnode && this.$vnode.ssrContext) || // stateful        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional      // 2.2 with runInNewContext: true      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {        context = __VUE_SSR_CONTEXT__      }      // inject component styles      if (injectStyles) {        injectStyles.call(this, context)      }      // register component module identifier for async chunk inferrence      if (context && context._registeredComponents) {        context._registeredComponents.add(moduleIdentifier)      }    }    // used by ssr in case component is cached and beforeCreate    // never gets called    options._ssrRegister = hook  } else if (injectStyles) {    hook = shadowMode      ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }      : injectStyles  }  if (hook) {    if (options.functional) {      // for template-only hot-reload because in that case the render fn doesn't      // go through the normalizer      options._injectStyles = hook      // register for functioal component in vue file      var originalRender = options.render      options.render = function renderWithStyleInjection (h, context) {        hook.call(context)        return originalRender(h, context)      }    } else {      // inject component registration as beforeCreate hook      var existing = options.beforeCreate      options.beforeCreate = existing        ? [].concat(existing, hook)        : [hook]    }  }  return {    exports: scriptExports,    options: options  }}/***/ }),/***/ 11:/***/ (function(module, exports) {module.exports = require("element-ui/lib/mixins/migrating");/***/ }),/***/ 12:/***/ (function(module, exports) {module.exports = require("element-ui/lib/utils/clickoutside");/***/ }),/***/ 130:/***/ (function(module, __webpack_exports__, __webpack_require__) {"use strict";__webpack_require__.r(__webpack_exports__);// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"var clickoutside_ = __webpack_require__(12);var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"var emitter_ = __webpack_require__(4);var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"var migrating_ = __webpack_require__(11);var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);// EXTERNAL MODULE: external "element-ui/lib/button"var button_ = __webpack_require__(14);var button_default = /*#__PURE__*/__webpack_require__.n(button_);// EXTERNAL MODULE: external "element-ui/lib/button-group"var button_group_ = __webpack_require__(36);var button_group_default = /*#__PURE__*/__webpack_require__.n(button_group_);// EXTERNAL MODULE: external "element-ui/lib/utils/util"var util_ = __webpack_require__(3);// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js&/* harmony default export */ var dropdownvue_type_script_lang_js_ = ({  name: 'ElDropdown',  componentName: 'ElDropdown',  mixins: [emitter_default.a, migrating_default.a],  directives: { Clickoutside: clickoutside_default.a },  components: {    ElButton: button_default.a,    ElButtonGroup: button_group_default.a  },  provide: function provide() {    return {      dropdown: this    };  },  props: {    trigger: {      type: String,      default: 'hover'    },    type: String,    size: {      type: String,      default: ''    },    splitButton: Boolean,    hideOnClick: {      type: Boolean,      default: true    },    placement: {      type: String,      default: 'bottom-end'    },    visibleArrow: {      default: true    },    showTimeout: {      type: Number,      default: 250    },    hideTimeout: {      type: Number,      default: 150    },    tabindex: {      type: Number,      default: 0    },    disabled: {      type: Boolean,      default: false    }  },  data: function data() {    return {      timeout: null,      visible: false,      triggerElm: null,      menuItems: null,      menuItemsArray: null,      dropdownElm: null,      focusing: false,      listId: 'dropdown-menu-' + Object(util_["generateId"])()    };  },  computed: {    dropdownSize: function dropdownSize() {      return this.size || (this.$ELEMENT || {}).size;    }  },  mounted: function mounted() {    this.$on('menu-item-click', this.handleMenuItemClick);  },  watch: {    visible: function visible(val) {      this.broadcast('ElDropdownMenu', 'visible', val);      this.$emit('visible-change', val);    },    focusing: function focusing(val) {      var selfDefine = this.$el.querySelector('.el-dropdown-selfdefine');      if (selfDefine) {        // 自定义        if (val) {          selfDefine.className += ' focusing';        } else {          selfDefine.className = selfDefine.className.replace('focusing', '');        }      }    }  },  methods: {    getMigratingConfig: function getMigratingConfig() {      return {        props: {          'menu-align': 'menu-align is renamed to placement.'        }      };    },    show: function show() {      var _this = this;      if (this.disabled) return;      clearTimeout(this.timeout);      this.timeout = setTimeout(function () {        _this.visible = true;      }, this.trigger === 'click' ? 0 : this.showTimeout);    },    hide: function hide() {      var _this2 = this;      if (this.disabled) return;      this.removeTabindex();      if (this.tabindex >= 0) {        this.resetTabindex(this.triggerElm);      }      clearTimeout(this.timeout);      this.timeout = setTimeout(function () {        _this2.visible = false;      }, this.trigger === 'click' ? 0 : this.hideTimeout);    },    handleClick: function handleClick() {      if (this.disabled) return;      if (this.visible) {        this.hide();      } else {        this.show();      }    },    handleTriggerKeyDown: function handleTriggerKeyDown(ev) {      var keyCode = ev.keyCode;      if ([38, 40].indexOf(keyCode) > -1) {        // up/down        this.removeTabindex();        this.resetTabindex(this.menuItems[0]);        this.menuItems[0].focus();        ev.preventDefault();        ev.stopPropagation();      } else if (keyCode === 13) {        // space enter选中        this.handleClick();      } else if ([9, 27].indexOf(keyCode) > -1) {        // tab || esc        this.hide();      }    },    handleItemKeyDown: function handleItemKeyDown(ev) {      var keyCode = ev.keyCode;      var target = ev.target;      var currentIndex = this.menuItemsArray.indexOf(target);      var max = this.menuItemsArray.length - 1;      var nextIndex = void 0;      if ([38, 40].indexOf(keyCode) > -1) {        // up/down        if (keyCode === 38) {          // up          nextIndex = currentIndex !== 0 ? currentIndex - 1 : 0;        } else {          // down          nextIndex = currentIndex < max ? currentIndex + 1 : max;        }        this.removeTabindex();        this.resetTabindex(this.menuItems[nextIndex]);        this.menuItems[nextIndex].focus();        ev.preventDefault();        ev.stopPropagation();      } else if (keyCode === 13) {        // enter选中        this.triggerElmFocus();        target.click();        if (this.hideOnClick) {          // click关闭          this.visible = false;        }      } else if ([9, 27].indexOf(keyCode) > -1) {        // tab // esc        this.hide();        this.triggerElmFocus();      }    },    resetTabindex: function resetTabindex(ele) {      // 下次tab时组件聚焦元素      this.removeTabindex();      ele.setAttribute('tabindex', '0'); // 下次期望的聚焦元素    },    removeTabindex: function removeTabindex() {      this.triggerElm.setAttribute('tabindex', '-1');      this.menuItemsArray.forEach(function (item) {        item.setAttribute('tabindex', '-1');      });    },    initAria: function initAria() {      this.dropdownElm.setAttribute('id', this.listId);      this.triggerElm.setAttribute('aria-haspopup', 'list');      this.triggerElm.setAttribute('aria-controls', this.listId);      if (!this.splitButton) {        // 自定义        this.triggerElm.setAttribute('role', 'button');        this.triggerElm.setAttribute('tabindex', this.tabindex);        this.triggerElm.setAttribute('class', (this.triggerElm.getAttribute('class') || '') + ' el-dropdown-selfdefine'); // 控制      }    },    initEvent: function initEvent() {      var _this3 = this;      var trigger = this.trigger,          show = this.show,          hide = this.hide,          handleClick = this.handleClick,          splitButton = this.splitButton,          handleTriggerKeyDown = this.handleTriggerKeyDown,          handleItemKeyDown = this.handleItemKeyDown;      this.triggerElm = splitButton ? this.$refs.trigger.$el : this.$slots.default[0].elm;      var dropdownElm = this.dropdownElm;      this.triggerElm.addEventListener('keydown', handleTriggerKeyDown); // triggerElm keydown      dropdownElm.addEventListener('keydown', handleItemKeyDown, true); // item keydown      // 控制自定义元素的样式      if (!splitButton) {        this.triggerElm.addEventListener('focus', function () {          _this3.focusing = true;        });        this.triggerElm.addEventListener('blur', function () {          _this3.focusing = false;        });        this.triggerElm.addEventListener('click', function () {          _this3.focusing = false;        });      }      if (trigger === 'hover') {        this.triggerElm.addEventListener('mouseenter', show);        this.triggerElm.addEventListener('mouseleave', hide);        dropdownElm.addEventListener('mouseenter', show);        dropdownElm.addEventListener('mouseleave', hide);      } else if (trigger === 'click') {        this.triggerElm.addEventListener('click', handleClick);      }    },    handleMenuItemClick: function handleMenuItemClick(command, instance) {      if (this.hideOnClick) {        this.visible = false;      }      this.$emit('command', command, instance);    },    triggerElmFocus: function triggerElmFocus() {      this.triggerElm.focus && this.triggerElm.focus();    },    initDomOperation: function initDomOperation() {      this.dropdownElm = this.popperElm;      this.menuItems = this.dropdownElm.querySelectorAll("[tabindex='-1']");      this.menuItemsArray = [].slice.call(this.menuItems);      this.initEvent();      this.initAria();    }  },  render: function render(h) {    var _this4 = this;    var hide = this.hide,        splitButton = this.splitButton,        type = this.type,        dropdownSize = this.dropdownSize,        disabled = this.disabled;    var handleMainButtonClick = function handleMainButtonClick(event) {      _this4.$emit('click', event);      hide();    };    var triggerElm = null;    if (splitButton) {      triggerElm = h('el-button-group', [h(        'el-button',        {          attrs: { type: type, size: dropdownSize, disabled: disabled },          nativeOn: {            'click': handleMainButtonClick          }        },        [this.$slots.default]      ), h(        'el-button',        { ref: 'trigger', attrs: { type: type, size: dropdownSize, disabled: disabled },          'class': 'el-dropdown__caret-button' },        [h('i', { 'class': 'el-dropdown__icon el-icon-arrow-down' })]      )]);    } else {      triggerElm = this.$slots.default;      var vnodeData = triggerElm[0].data || {};      var _vnodeData$attrs = vnodeData.attrs,          attrs = _vnodeData$attrs === undefined ? {} : _vnodeData$attrs;      if (disabled && !attrs.disabled) {        attrs.disabled = true;        vnodeData.attrs = attrs;      }    }    var menuElm = disabled ? null : this.$slots.dropdown;    return h(      'div',      { 'class': 'el-dropdown', directives: [{          name: 'clickoutside',          value: hide        }],        attrs: { 'aria-disabled': disabled }      },      [triggerElm, menuElm]    );  }});// CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue?vue&type=script&lang=js& /* harmony default export */ var src_dropdownvue_type_script_lang_js_ = (dropdownvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.jsvar componentNormalizer = __webpack_require__(0);// CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vuevar render, staticRenderFns/* normalize component */var component = Object(componentNormalizer["a" /* default */])(  src_dropdownvue_type_script_lang_js_,  render,  staticRenderFns,  false,  null,  null,  null  )/* hot reload */if (false) { var api; }component.options.__file = "packages/dropdown/src/dropdown.vue"/* harmony default export */ var dropdown = (component.exports);// CONCATENATED MODULE: ./packages/dropdown/index.js/* istanbul ignore next */dropdown.install = function (Vue) {  Vue.component(dropdown.name, dropdown);};/* harmony default export */ var packages_dropdown = __webpack_exports__["default"] = (dropdown);/***/ }),/***/ 14:/***/ (function(module, exports) {module.exports = require("element-ui/lib/button");/***/ }),/***/ 3:/***/ (function(module, exports) {module.exports = require("element-ui/lib/utils/util");/***/ }),/***/ 36:/***/ (function(module, exports) {module.exports = require("element-ui/lib/button-group");/***/ }),/***/ 4:/***/ (function(module, exports) {module.exports = require("element-ui/lib/mixins/emitter");/***/ })/******/ });
 |