module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // object to store loaded chunks
/******/ // "0" means "already loaded"
/******/ var installedChunks = {
/******/ 0: 0
/******/ };
/******/
/******/ // 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;
/******/ }
/******/
/******/ // This file contains only the entry chunk.
/******/ // The chunk loading function for additional chunks
/******/ __webpack_require__.e = function requireEnsure(chunkId) {
/******/ var promises = [];
/******/
/******/
/******/ // require() chunk loading for javascript
/******/
/******/ // "0" is the signal for "already loaded"
/******/ if(installedChunks[chunkId] !== 0) {
/******/ var chunk = require("./" + ({"1":"components/activity-area","2":"components/ad-item","3":"components/address-add","4":"components/address-list","5":"components/after-sales-list","6":"components/comment-list","7":"components/count-down","8":"components/coupons-list","9":"components/deliver-search","10":"components/evaluation-list","11":"components/goods-list","12":"components/home-seckill","13":"components/input-express","14":"components/null-data","15":"components/number-box","16":"components/order-list","17":"components/price-formate","18":"components/shop-item","19":"components/upload","20":"pages/account/forget_pwd","21":"pages/account/login","22":"pages/account/register","23":"pages/category","24":"pages/confirm_order","25":"pages/get_coupons","26":"pages/goods_details/_id","27":"pages/goods_list/_type","28":"pages/help_center/help_center_detail","29":"pages/help_center/index","30":"pages/index","31":"pages/news_list/index","32":"pages/news_list/news_list_detail","33":"pages/payment","34":"pages/seckill","35":"pages/shop_cart","36":"pages/shop_street","37":"pages/shop_street_detail","38":"pages/special_area","39":"pages/store_settled/detail","40":"pages/store_settled/index","41":"pages/store_settled/record","42":"pages/user/address/index","43":"pages/user/after_sales/after_sale_details","44":"pages/user/after_sales/apply_result","45":"pages/user/after_sales/apply_sale","46":"pages/user/after_sales/index","47":"pages/user/collection","48":"pages/user/coupons","49":"pages/user/evaluation/evaluate","50":"pages/user/evaluation/index","51":"pages/user/order/detail","52":"pages/user/order/index","53":"pages/user/profile","54":"pages/user/user_wallet"}[chunkId]||chunkId) + ".js");
/******/ var moreModules = chunk.modules, chunkIds = chunk.ids;
/******/ for(var moduleId in moreModules) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ for(var i = 0; i < chunkIds.length; i++)
/******/ installedChunks[chunkIds[i]] = 0;
/******/ }
/******/ return Promise.all(promises);
/******/ };
/******/
/******/ // 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 = "/pc/_nuxt/";
/******/
/******/ // uncaught error handler for webpack runtime
/******/ __webpack_require__.oe = function(err) {
/******/ process.nextTick(function() {
/******/ throw err; // catch this error by using import().catch()
/******/ });
/******/ };
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 63);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports) {
module.exports = require("vue");
/***/ }),
/* 1 */
/***/ (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,
(options.functional ? this.parent : 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 functional 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
}
}
/***/ }),
/* 2 */
/***/ (function(module, exports) {
module.exports = require("vuex");
/***/ }),
/* 3 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
// css base code, injected by the css-loader
// eslint-disable-next-line func-names
module.exports = function (useSourceMap) {
var list = []; // return the list of modules as css string
list.toString = function toString() {
return this.map(function (item) {
var content = cssWithMappingToString(item, useSourceMap);
if (item[2]) {
return "@media ".concat(item[2], " {").concat(content, "}");
}
return content;
}).join('');
}; // import a list of modules into the list
// eslint-disable-next-line func-names
list.i = function (modules, mediaQuery, dedupe) {
if (typeof modules === 'string') {
// eslint-disable-next-line no-param-reassign
modules = [[null, modules, '']];
}
var alreadyImportedModules = {};
if (dedupe) {
for (var i = 0; i < this.length; i++) {
// eslint-disable-next-line prefer-destructuring
var id = this[i][0];
if (id != null) {
alreadyImportedModules[id] = true;
}
}
}
for (var _i = 0; _i < modules.length; _i++) {
var item = [].concat(modules[_i]);
if (dedupe && alreadyImportedModules[item[0]]) {
// eslint-disable-next-line no-continue
continue;
}
if (mediaQuery) {
if (!item[2]) {
item[2] = mediaQuery;
} else {
item[2] = "".concat(mediaQuery, " and ").concat(item[2]);
}
}
list.push(item);
}
};
return list;
};
function cssWithMappingToString(item, useSourceMap) {
var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring
var cssMapping = item[3];
if (!cssMapping) {
return content;
}
if (useSourceMap && typeof btoa === 'function') {
var sourceMapping = toComment(cssMapping);
var sourceURLs = cssMapping.sources.map(function (source) {
return "/*# sourceURL=".concat(cssMapping.sourceRoot || '').concat(source, " */");
});
return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
}
return [content].join('\n');
} // Adapted from convert-source-map (MIT)
function toComment(sourceMap) {
// eslint-disable-next-line no-undef
var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
var data = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(base64);
return "/*# ".concat(data, " */");
}
/***/ }),
/* 4 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, "default", function() { return /* binding */ addStylesServer; });
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/listToStyles.js
/**
* Translates the list format produced by css-loader into something
* easier to manipulate.
*/
function listToStyles (parentId, list) {
var styles = []
var newStyles = {}
for (var i = 0; i < list.length; i++) {
var item = list[i]
var id = item[0]
var css = item[1]
var media = item[2]
var sourceMap = item[3]
var part = {
id: parentId + ':' + i,
css: css,
media: media,
sourceMap: sourceMap
}
if (!newStyles[id]) {
styles.push(newStyles[id] = { id: id, parts: [part] })
} else {
newStyles[id].parts.push(part)
}
}
return styles
}
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/addStylesServer.js
function addStylesServer (parentId, list, isProduction, context) {
if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
context = __VUE_SSR_CONTEXT__
}
if (context) {
if (!context.hasOwnProperty('styles')) {
Object.defineProperty(context, 'styles', {
enumerable: true,
get: function() {
return renderStyles(context._styles)
}
})
// expose renderStyles for vue-server-renderer (vuejs/#6353)
context._renderStyles = renderStyles
}
var styles = context._styles || (context._styles = {})
list = listToStyles(parentId, list)
if (isProduction) {
addStyleProd(styles, list)
} else {
addStyleDev(styles, list)
}
}
}
// In production, render as few style tags as possible.
// (mostly because IE9 has a limit on number of style tags)
function addStyleProd (styles, list) {
for (var i = 0; i < list.length; i++) {
var parts = list[i].parts
for (var j = 0; j < parts.length; j++) {
var part = parts[j]
// group style tags by media types.
var id = part.media || 'default'
var style = styles[id]
if (style) {
if (style.ids.indexOf(part.id) < 0) {
style.ids.push(part.id)
style.css += '\n' + part.css
}
} else {
styles[id] = {
ids: [part.id],
css: part.css,
media: part.media
}
}
}
}
}
// In dev we use individual style tag for each module for hot-reload
// and source maps.
function addStyleDev (styles, list) {
for (var i = 0; i < list.length; i++) {
var parts = list[i].parts
for (var j = 0; j < parts.length; j++) {
var part = parts[j]
styles[part.id] = {
ids: [part.id],
css: part.css,
media: part.media
}
}
}
}
function renderStyles (styles) {
var css = ''
for (var key in styles) {
var style = styles[key]
css += ''
}
return css
}
/***/ }),
/* 5 */
/***/ (function(module, exports) {
module.exports = require("ufo");
/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
exports.isEmpty = exports.isEqual = exports.arrayEquals = exports.looseEqual = exports.capitalize = exports.kebabCase = exports.autoprefixer = exports.isFirefox = exports.isEdge = exports.isIE = exports.coerceTruthyValueToArray = exports.arrayFind = exports.arrayFindIndex = exports.escapeRegexpString = exports.valueEquals = exports.generateId = exports.getValueByPath = undefined;
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
exports.noop = noop;
exports.hasOwn = hasOwn;
exports.toObject = toObject;
exports.getPropByPath = getPropByPath;
exports.rafThrottle = rafThrottle;
exports.objToArray = objToArray;
var _vue = __webpack_require__(0);
var _vue2 = _interopRequireDefault(_vue);
var _types = __webpack_require__(48);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var hasOwnProperty = Object.prototype.hasOwnProperty;
function noop() {};
function hasOwn(obj, key) {
return hasOwnProperty.call(obj, key);
};
function extend(to, _from) {
for (var key in _from) {
to[key] = _from[key];
}
return to;
};
function toObject(arr) {
var res = {};
for (var i = 0; i < arr.length; i++) {
if (arr[i]) {
extend(res, arr[i]);
}
}
return res;
};
var getValueByPath = exports.getValueByPath = function getValueByPath(object, prop) {
prop = prop || '';
var paths = prop.split('.');
var current = object;
var result = null;
for (var i = 0, j = paths.length; i < j; i++) {
var path = paths[i];
if (!current) break;
if (i === j - 1) {
result = current[path];
break;
}
current = current[path];
}
return result;
};
function getPropByPath(obj, path, strict) {
var tempObj = obj;
path = path.replace(/\[(\w+)\]/g, '.$1');
path = path.replace(/^\./, '');
var keyArr = path.split('.');
var i = 0;
for (var len = keyArr.length; i < len - 1; ++i) {
if (!tempObj && !strict) break;
var key = keyArr[i];
if (key in tempObj) {
tempObj = tempObj[key];
} else {
if (strict) {
throw new Error('please transfer a valid prop path to form item!');
}
break;
}
}
return {
o: tempObj,
k: keyArr[i],
v: tempObj ? tempObj[keyArr[i]] : null
};
};
var generateId = exports.generateId = function generateId() {
return Math.floor(Math.random() * 10000);
};
var valueEquals = exports.valueEquals = function valueEquals(a, b) {
// see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
if (a === b) return true;
if (!(a instanceof Array)) return false;
if (!(b instanceof Array)) return false;
if (a.length !== b.length) return false;
for (var i = 0; i !== a.length; ++i) {
if (a[i] !== b[i]) return false;
}
return true;
};
var escapeRegexpString = exports.escapeRegexpString = function escapeRegexpString() {
var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
return String(value).replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
};
// TODO: use native Array.find, Array.findIndex when IE support is dropped
var arrayFindIndex = exports.arrayFindIndex = function arrayFindIndex(arr, pred) {
for (var i = 0; i !== arr.length; ++i) {
if (pred(arr[i])) {
return i;
}
}
return -1;
};
var arrayFind = exports.arrayFind = function arrayFind(arr, pred) {
var idx = arrayFindIndex(arr, pred);
return idx !== -1 ? arr[idx] : undefined;
};
// coerce truthy value to array
var coerceTruthyValueToArray = exports.coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
if (Array.isArray(val)) {
return val;
} else if (val) {
return [val];
} else {
return [];
}
};
var isIE = exports.isIE = function isIE() {
return !_vue2.default.prototype.$isServer && !isNaN(Number(document.documentMode));
};
var isEdge = exports.isEdge = function isEdge() {
return !_vue2.default.prototype.$isServer && navigator.userAgent.indexOf('Edge') > -1;
};
var isFirefox = exports.isFirefox = function isFirefox() {
return !_vue2.default.prototype.$isServer && !!window.navigator.userAgent.match(/firefox/i);
};
var autoprefixer = exports.autoprefixer = function autoprefixer(style) {
if ((typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object') return style;
var rules = ['transform', 'transition', 'animation'];
var prefixes = ['ms-', 'webkit-'];
rules.forEach(function (rule) {
var value = style[rule];
if (rule && value) {
prefixes.forEach(function (prefix) {
style[prefix + rule] = value;
});
}
});
return style;
};
var kebabCase = exports.kebabCase = function kebabCase(str) {
var hyphenateRE = /([^-])([A-Z])/g;
return str.replace(hyphenateRE, '$1-$2').replace(hyphenateRE, '$1-$2').toLowerCase();
};
var capitalize = exports.capitalize = function capitalize(str) {
if (!(0, _types.isString)(str)) return str;
return str.charAt(0).toUpperCase() + str.slice(1);
};
var looseEqual = exports.looseEqual = function looseEqual(a, b) {
var isObjectA = (0, _types.isObject)(a);
var isObjectB = (0, _types.isObject)(b);
if (isObjectA && isObjectB) {
return JSON.stringify(a) === JSON.stringify(b);
} else if (!isObjectA && !isObjectB) {
return String(a) === String(b);
} else {
return false;
}
};
var arrayEquals = exports.arrayEquals = function arrayEquals(arrayA, arrayB) {
arrayA = arrayA || [];
arrayB = arrayB || [];
if (arrayA.length !== arrayB.length) {
return false;
}
for (var i = 0; i < arrayA.length; i++) {
if (!looseEqual(arrayA[i], arrayB[i])) {
return false;
}
}
return true;
};
var isEqual = exports.isEqual = function isEqual(value1, value2) {
if (Array.isArray(value1) && Array.isArray(value2)) {
return arrayEquals(value1, value2);
}
return looseEqual(value1, value2);
};
var isEmpty = exports.isEmpty = function isEmpty(val) {
// null or undefined
if (val == null) return true;
if (typeof val === 'boolean') return false;
if (typeof val === 'number') return !val;
if (val instanceof Error) return val.message === '';
switch (Object.prototype.toString.call(val)) {
// String or Array
case '[object String]':
case '[object Array]':
return !val.length;
// Map or Set or File
case '[object File]':
case '[object Map]':
case '[object Set]':
{
return !val.size;
}
// Plain Object
case '[object Object]':
{
return !Object.keys(val).length;
}
}
return false;
};
function rafThrottle(fn) {
var locked = false;
return function () {
var _this = this;
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
if (locked) return;
locked = true;
window.requestAnimationFrame(function (_) {
fn.apply(_this, args);
locked = false;
});
};
}
function objToArray(obj) {
if (Array.isArray(obj)) {
return obj;
}
return isEmpty(obj) ? [] : [obj];
}
/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
exports.isInContainer = exports.getScrollContainer = exports.isScroll = exports.getStyle = exports.once = exports.off = exports.on = undefined;
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /* istanbul ignore next */
exports.hasClass = hasClass;
exports.addClass = addClass;
exports.removeClass = removeClass;
exports.setStyle = setStyle;
var _vue = __webpack_require__(0);
var _vue2 = _interopRequireDefault(_vue);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var isServer = _vue2.default.prototype.$isServer;
var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
var MOZ_HACK_REGEXP = /^moz([A-Z])/;
var ieVersion = isServer ? 0 : Number(document.documentMode);
/* istanbul ignore next */
var trim = function trim(string) {
return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
};
/* istanbul ignore next */
var camelCase = function camelCase(name) {
return name.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
return offset ? letter.toUpperCase() : letter;
}).replace(MOZ_HACK_REGEXP, 'Moz$1');
};
/* istanbul ignore next */
var on = exports.on = function () {
if (!isServer && document.addEventListener) {
return function (element, event, handler) {
if (element && event && handler) {
element.addEventListener(event, handler, false);
}
};
} else {
return function (element, event, handler) {
if (element && event && handler) {
element.attachEvent('on' + event, handler);
}
};
}
}();
/* istanbul ignore next */
var off = exports.off = function () {
if (!isServer && document.removeEventListener) {
return function (element, event, handler) {
if (element && event) {
element.removeEventListener(event, handler, false);
}
};
} else {
return function (element, event, handler) {
if (element && event) {
element.detachEvent('on' + event, handler);
}
};
}
}();
/* istanbul ignore next */
var once = exports.once = function once(el, event, fn) {
var listener = function listener() {
if (fn) {
fn.apply(this, arguments);
}
off(el, event, listener);
};
on(el, event, listener);
};
/* istanbul ignore next */
function hasClass(el, cls) {
if (!el || !cls) return false;
if (cls.indexOf(' ') !== -1) throw new Error('className should not contain space.');
if (el.classList) {
return el.classList.contains(cls);
} else {
return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
}
};
/* istanbul ignore next */
function addClass(el, cls) {
if (!el) return;
var curClass = el.className;
var classes = (cls || '').split(' ');
for (var i = 0, j = classes.length; i < j; i++) {
var clsName = classes[i];
if (!clsName) continue;
if (el.classList) {
el.classList.add(clsName);
} else if (!hasClass(el, clsName)) {
curClass += ' ' + clsName;
}
}
if (!el.classList) {
el.setAttribute('class', curClass);
}
};
/* istanbul ignore next */
function removeClass(el, cls) {
if (!el || !cls) return;
var classes = cls.split(' ');
var curClass = ' ' + el.className + ' ';
for (var i = 0, j = classes.length; i < j; i++) {
var clsName = classes[i];
if (!clsName) continue;
if (el.classList) {
el.classList.remove(clsName);
} else if (hasClass(el, clsName)) {
curClass = curClass.replace(' ' + clsName + ' ', ' ');
}
}
if (!el.classList) {
el.setAttribute('class', trim(curClass));
}
};
/* istanbul ignore next */
var getStyle = exports.getStyle = ieVersion < 9 ? function (element, styleName) {
if (isServer) return;
if (!element || !styleName) return null;
styleName = camelCase(styleName);
if (styleName === 'float') {
styleName = 'styleFloat';
}
try {
switch (styleName) {
case 'opacity':
try {
return element.filters.item('alpha').opacity / 100;
} catch (e) {
return 1.0;
}
default:
return element.style[styleName] || element.currentStyle ? element.currentStyle[styleName] : null;
}
} catch (e) {
return element.style[styleName];
}
} : function (element, styleName) {
if (isServer) return;
if (!element || !styleName) return null;
styleName = camelCase(styleName);
if (styleName === 'float') {
styleName = 'cssFloat';
}
try {
var computed = document.defaultView.getComputedStyle(element, '');
return element.style[styleName] || computed ? computed[styleName] : null;
} catch (e) {
return element.style[styleName];
}
};
/* istanbul ignore next */
function setStyle(element, styleName, value) {
if (!element || !styleName) return;
if ((typeof styleName === 'undefined' ? 'undefined' : _typeof(styleName)) === 'object') {
for (var prop in styleName) {
if (styleName.hasOwnProperty(prop)) {
setStyle(element, prop, styleName[prop]);
}
}
} else {
styleName = camelCase(styleName);
if (styleName === 'opacity' && ieVersion < 9) {
element.style.filter = isNaN(value) ? '' : 'alpha(opacity=' + value * 100 + ')';
} else {
element.style[styleName] = value;
}
}
};
var isScroll = exports.isScroll = function isScroll(el, vertical) {
if (isServer) return;
var determinedDirection = vertical !== null && vertical !== undefined;
var overflow = determinedDirection ? vertical ? getStyle(el, 'overflow-y') : getStyle(el, 'overflow-x') : getStyle(el, 'overflow');
return overflow.match(/(scroll|auto|overlay)/);
};
var getScrollContainer = exports.getScrollContainer = function getScrollContainer(el, vertical) {
if (isServer) return;
var parent = el;
while (parent) {
if ([window, document, document.documentElement].includes(parent)) {
return window;
}
if (isScroll(parent, vertical)) {
return parent;
}
parent = parent.parentNode;
}
return parent;
};
var isInContainer = exports.isInContainer = function isInContainer(el, container) {
if (isServer || !el || !container) return false;
var elRect = el.getBoundingClientRect();
var containerRect = void 0;
if ([window, document, document.documentElement, null, undefined].includes(container)) {
containerRect = {
top: 0,
right: window.innerWidth,
bottom: window.innerHeight,
left: 0
};
} else {
containerRect = container.getBoundingClientRect();
}
return elRect.top < containerRect.bottom && elRect.bottom > containerRect.top && elRect.right > containerRect.left && elRect.left < containerRect.right;
};
/***/ }),
/* 8 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/footer.vue?vue&type=template&id=4c0cd368&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"footer-container"},[_vm._ssrNode("
")])}
var staticRenderFns = []
// CONCATENATED MODULE: ./components/layout/footer.vue?vue&type=template&id=4c0cd368&scoped=true&
// EXTERNAL MODULE: external "vuex"
var external_vuex_ = __webpack_require__(2);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/footer.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var footervue_type_script_lang_js_ = ({
data() {
return {
lists: [{
name: '自营商城',
icon: 'icon-ziying'
}, {
name: '正品保障',
icon: 'icon-zhengpin'
}, {
name: '专属服务',
icon: 'icon-fuwu'
}, {
name: '售后无忧',
icon: 'icon-peisong'
}, {
name: '极速配送',
icon: 'icon-shouhou'
}]
};
},
computed: { ...Object(external_vuex_["mapState"])(['config'])
}
});
// CONCATENATED MODULE: ./components/layout/footer.vue?vue&type=script&lang=js&
/* harmony default export */ var layout_footervue_type_script_lang_js_ = (footervue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);
// CONCATENATED MODULE: ./components/layout/footer.vue
function injectStyles (context) {
var style0 = __webpack_require__(90)
if (style0.__inject__) style0.__inject__(context)
}
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
layout_footervue_type_script_lang_js_,
render,
staticRenderFns,
false,
injectStyles,
"4c0cd368",
"173b96ce"
)
/* harmony default export */ var footer = __webpack_exports__["default"] = (component.exports);
/***/ }),
/* 9 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
function _broadcast(componentName, eventName, params) {
this.$children.forEach(function (child) {
var name = child.$options.componentName;
if (name === componentName) {
child.$emit.apply(child, [eventName].concat(params));
} else {
_broadcast.apply(child, [componentName, eventName].concat([params]));
}
});
}
exports.default = {
methods: {
dispatch: function dispatch(componentName, eventName, params) {
var parent = this.$parent || this.$root;
var name = parent.$options.componentName;
while (parent && (!name || name !== componentName)) {
parent = parent.$parent;
if (parent) {
name = parent.$options.componentName;
}
}
if (parent) {
parent.$emit.apply(parent, [eventName].concat(params));
}
},
broadcast: function broadcast(componentName, eventName, params) {
_broadcast.call(this, componentName, eventName, params);
}
}
};
/***/ }),
/* 10 */
/***/ (function(module, exports) {
module.exports = require("js-cookie");
/***/ }),
/* 11 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/header.vue?vue&type=template&id=0f5bd3dc&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',[_vm._ssrNode("",[_vm._ssrNode("",[_vm._ssrNode("","
",[_vm._ssrNode("","
",[(
_vm.publicData.article && _vm.publicData.article.length
)?[_vm._ssrNode("
"),_c('client-only',[_c('swiper',{ref:"headerSwiper",attrs:{"options":_vm.swiperOptions}},_vm._l((_vm.publicData.article),function(item,index){return _c('swiper-slide',{key:index,staticClass:"swiper-item"},[_c('nuxt-link',{staticClass:"flex-col row-center",staticStyle:{"height":"100%"},attrs:{"to":'/news_list/news_list_detail?id=' +
item.id}},[_c('div',{staticClass:"line1"},[_vm._v("\n "+_vm._s(item.title)+"\n ")])])],1)}),1)],1)]:_vm._e()],2),_vm._ssrNode(" "),_vm._ssrNode("","
",[_vm._ssrNode(((_vm.publicData.name)?(""+_vm._ssrEscape("\n 您好,欢迎来到 "+_vm._s(_vm.publicData.name)+"!\n ")+"
"):"")+" "),_vm._ssrNode("",[(_vm.publicData.nickname)?_vm._ssrNode("","",[_c('el-popover',{attrs:{"placement":"bottom","trigger":"hover"}},[_c('div',{staticClass:"user-nav"},[_c('nuxt-link',{staticClass:"lighter xs item",attrs:{"to":"/user/user_wallet"}},[_vm._v("我的钱包")]),_vm._v(" "),_c('nuxt-link',{staticClass:"lighter xs item",attrs:{"to":"/user/coupons"}},[_vm._v("优惠券("+_vm._s(_vm.publicData.coupon_num)+")")]),_vm._v(" "),_c('nuxt-link',{staticClass:"lighter xs item",attrs:{"to":"/user/collection"}},[_vm._v("我的收藏")]),_vm._v(" "),_c('div',{staticClass:"lighter xs item",on:{"click":_vm.onLogout}},[_vm._v("\n 退出登录\n ")])],1),_vm._v(" "),_c('nuxt-link',{attrs:{"slot":"reference","to":"/user/profile"},slot:"reference"},[_vm._v("\n "+_vm._s(_vm.publicData.nickname)+"\n "),_c('i',{staticClass:"el-icon-arrow-down"})])],1)],1):_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/account/login"}},[_vm._v("登录")]),_vm._ssrNode("\n |\n "),_c('nuxt-link',{attrs:{"to":"/account/register"}},[_vm._v("注册")])],2),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/user/order"}},[_vm._v("我的订单")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/user/profile"}},[_vm._v("个人中心")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/help_center"}},[_vm._v("帮助中心")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/store_settled"}},[_vm._v("商家入驻")])],1),_vm._ssrNode(" "),(
_vm.publicData.mnp_qr_code ||
_vm.publicData.oa_qr_code
)?_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/"}},[_vm._v("手机端\n "),_c('i',{staticClass:"el-icon-arrow-down"})]),_vm._ssrNode(" "+((_vm.publicData.mnp_qr_code)?("
\n 官方小程序\n
"):"")+" "+((_vm.publicData.oa_qr_code)?("
公众号
"):"")+"
")],2):_vm._e(),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/"}},[_vm._v("返回官网")])],1)],2)],2)],2)]),_vm._ssrNode(" "),_vm._ssrNode("","
",[_vm._ssrNode("","
",[_vm._ssrNode("","
",[_c('nuxt-link',{staticClass:"flex row-center",attrs:{"to":"/"}},[_c('img',{staticClass:"logo",attrs:{"src":_vm.config.shop_login_logo,"alt":"logo"}})]),_vm._ssrNode(" "),_vm._ssrNode("","
",[_vm._ssrNode("","
",[_vm._ssrNode(" "),_c('el-button',{staticClass:"search-btn",attrs:{"type":"primary"},on:{"click":_vm.toSearch}},[_vm._v("\n 搜索\n ")])],2),_vm._ssrNode(" "),_c('el-button',{staticClass:"cart",attrs:{"type":"primary","plain":""}},[_c('nuxt-link',{attrs:{"to":"/shop_cart"}},[_vm._v("购物车("+_vm._s(_vm.publicData.cart_num)+")")])],1)],2)],2)])])],2)])}
var staticRenderFns = []
// CONCATENATED MODULE: ./components/layout/header.vue?vue&type=template&id=0f5bd3dc&scoped=true&
// EXTERNAL MODULE: external "vue-awesome-swiper"
var external_vue_awesome_swiper_ = __webpack_require__(58);
// EXTERNAL MODULE: external "vuex"
var external_vuex_ = __webpack_require__(2);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/header.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var headervue_type_script_lang_js_ = ({
directives: {
swiper: external_vue_awesome_swiper_["directive"]
},
data() {
return {
name: '',
swiperOptions: {
direction: 'vertical',
// autoHeight: true,
height: 40,
initialSlide: 0,
autoplay: true
}
};
},
methods: { ...Object(external_vuex_["mapMutations"])(['logout']),
...Object(external_vuex_["mapActions"])(['getPublicData']),
toSearch() {
if (!this.name) return this.$message.error('请输入商品名称');
this.$router.push({
path: '/goods_list',
query: {
name: this.name
}
});
},
onLogout() {
this.logout();
this.$message({
message: '退出成功',
type: 'success'
});
setTimeout(() => location.reload(), 1500);
}
},
watch: {
$route: {
immediate: true,
handler: function (val) {
console.log(val);
if (val.path == '/goods_list') {
this.name = val.query.name;
} else {
this.name = '';
}
}
}
},
computed: { ...Object(external_vuex_["mapState"])(['publicData', 'config'])
}
});
// CONCATENATED MODULE: ./components/layout/header.vue?vue&type=script&lang=js&
/* harmony default export */ var layout_headervue_type_script_lang_js_ = (headervue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);
// CONCATENATED MODULE: ./components/layout/header.vue
function injectStyles (context) {
var style0 = __webpack_require__(88)
if (style0.__inject__) style0.__inject__(context)
}
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
layout_headervue_type_script_lang_js_,
render,
staticRenderFns,
false,
injectStyles,
"0f5bd3dc",
"386dfac0"
)
/* harmony default export */ var header = __webpack_exports__["default"] = (component.exports);
/***/ }),
/* 12 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/float-nav.vue?vue&type=template&id=6a0400af&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"float-nav bg-white flex-col col-center"},[_vm._ssrNode("","
",[_c('nuxt-link',{staticClass:"item flex-col col-center lighter",attrs:{"to":"/shop_cart"}},[_c('el-badge',{attrs:{"value":_vm.publicData.cart_num,"type":"primary"}},[_c('span',{staticClass:"iconfont icon-cart-Empty"})]),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("购物车")])],1),_vm._ssrNode(" "),_c('nuxt-link',{staticClass:"item flex-col col-center lighter",attrs:{"to":"/user/coupons"}},[_c('el-badge',{attrs:{"value":_vm.publicData.coupon_num,"type":"primary"}},[_c('span',{staticClass:"iconfont icon-coupons"})]),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("优惠券")])],1),_vm._ssrNode(" "),_c('nuxt-link',{staticClass:"item flex-col col-center lighter",attrs:{"to":"/user/order"}},[_c('span',{staticClass:"iconfont icon-icon_order"}),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("订单")])]),_vm._ssrNode(" "),_c('nuxt-link',{staticClass:"item flex-col col-center lighter",attrs:{"to":"/user/collection"}},[_c('span',{staticClass:"iconfont icon-collection"}),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("收藏")])]),_vm._ssrNode(" "),_c('nuxt-link',{staticClass:"item flex-col col-center lighter",attrs:{"to":"/help_center"}},[_c('span',{staticClass:"iconfont icon-survey"}),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("帮助")])]),_vm._ssrNode(" "),_c('el-popover',{attrs:{"placement":"left","width":"165","trigger":"hover"}},[_c('div',{staticClass:"flex-col col-center",staticStyle:{"text-align":"center","margin":"0"}},[_c('img',{staticStyle:{"width":"100px","height":"100px"},attrs:{"src":_vm.server.image,"alt":""}}),_vm._v(" "),_c('div',{staticClass:"sm m-t-8"},[_vm._v(_vm._s(_vm.server.phone))]),_vm._v(" "),_c('div',{staticClass:"sm m-t-10"},[_vm._v("\n 在线时间:"+_vm._s(_vm.server.business_time)+"\n ")])]),_vm._v(" "),_c('div',{staticClass:"item flex-col col-center lighter",attrs:{"slot":"reference"},slot:"reference"},[_c('span',{staticClass:"iconfont icon-service"}),_vm._v(" "),_c('div',{staticClass:"sm"},[_vm._v("客服")])])])],2),_vm._ssrNode("
")],2)}
var staticRenderFns = []
// CONCATENATED MODULE: ./components/layout/float-nav.vue?vue&type=template&id=6a0400af&scoped=true&
// EXTERNAL MODULE: external "vuex"
var external_vuex_ = __webpack_require__(2);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/float-nav.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var float_navvue_type_script_lang_js_ = ({
data() {
return {
server: {}
};
},
created() {
this.getService();
},
methods: {
async getService() {
const {
data,
code
} = await this.$get('setting/getPlatformCustomerService');
if (code == 1) {
this.server = data;
}
},
scrollTop() {
cancelAnimationFrame(this.timer);
const self = this;
this.timer = requestAnimationFrame(function fn() {
var oTop = document.body.scrollTop || document.documentElement.scrollTop;
if (oTop > 0) {
scrollTo(0, oTop - 250);
self.timer = requestAnimationFrame(fn);
} else {
cancelAnimationFrame(self.timer);
}
});
}
},
computed: { ...Object(external_vuex_["mapState"])(['publicData'])
}
});
// CONCATENATED MODULE: ./components/layout/float-nav.vue?vue&type=script&lang=js&
/* harmony default export */ var layout_float_navvue_type_script_lang_js_ = (float_navvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);
// CONCATENATED MODULE: ./components/layout/float-nav.vue
function injectStyles (context) {
var style0 = __webpack_require__(92)
if (style0.__inject__) style0.__inject__(context)
}
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
layout_float_navvue_type_script_lang_js_,
render,
staticRenderFns,
false,
injectStyles,
"6a0400af",
"2ceb4dcf"
)
/* harmony default export */ var float_nav = __webpack_exports__["default"] = (component.exports);
/***/ }),
/* 13 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/main-nav.vue?vue&type=template&id=148c6b8c&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',[_vm._ssrNode("",[_vm._ssrNode("","
",[_c('category'),_vm._ssrNode(" "),_vm._ssrNode("",[_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/"}},[_vm._v("首页")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/seckill"}},[_vm._v("限时秒杀")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/goods_list/1"}},[_vm._v("热销榜单")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/goods_list/2"}},[_vm._v("新品推荐")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/shop_street"}},[_vm._v("店铺街")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/get_coupons"}},[_vm._v("领券中心")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/news_list"}},[_vm._v("商城资讯")])],1),_vm._ssrNode(" "),_vm._ssrNode("","",[_c('nuxt-link',{attrs:{"to":"/help_center"}},[_vm._v("帮助中心")])],1)],2)],2)])])}
var staticRenderFns = []
// CONCATENATED MODULE: ./components/layout/main-nav.vue?vue&type=template&id=148c6b8c&scoped=true&
// EXTERNAL MODULE: external "vuex"
var external_vuex_ = __webpack_require__(2);
// EXTERNAL MODULE: ./components/layout/category.vue + 4 modules
var category = __webpack_require__(61);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/layout/main-nav.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var main_navvue_type_script_lang_js_ = ({
components: {
Category: category["default"]
},
created() {},
computed: { ...Object(external_vuex_["mapState"])(['publicData'])
}
});
// CONCATENATED MODULE: ./components/layout/main-nav.vue?vue&type=script&lang=js&
/* harmony default export */ var layout_main_navvue_type_script_lang_js_ = (main_navvue_type_script_lang_js_);
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(1);
// CONCATENATED MODULE: ./components/layout/main-nav.vue
function injectStyles (context) {
var style0 = __webpack_require__(96)
if (style0.__inject__) style0.__inject__(context)
}
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])(
layout_main_navvue_type_script_lang_js_,
render,
staticRenderFns,
false,
injectStyles,
"148c6b8c",
"4277e8fc"
)
/* harmony default export */ var main_nav = __webpack_exports__["default"] = (component.exports);
/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {
/* WEBPACK VAR INJECTION */(function(URL) {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 = 45);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(110);
/***/ }),
/* 1 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(7);
/***/ }),
/* 2 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(6);
/***/ }),
/* 3 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(9);
/***/ }),
/* 4 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(21);
/***/ }),
/* 5 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(16);
/***/ }),
/* 6 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(0);
/***/ }),
/* 7 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(17);
/***/ }),
/* 8 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(23);
/***/ }),
/* 9 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(50);
/***/ }),
/* 10 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(51);
/***/ }),
/* 11 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(49);
/***/ }),
/* 12 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(20);
/***/ }),
/* 13 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(115);
/***/ }),
/* 14 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(24);
/***/ }),
/* 15 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(48);
/***/ }),
/* 16 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(25);
/***/ }),
/* 17 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(52);
/***/ }),
/* 18 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(26);
/***/ }),
/* 19 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(18);
/***/ }),
/* 20 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(47);
/***/ }),
/* 21 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(117);
/***/ }),
/* 22 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(118);
/***/ }),
/* 23 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(27);
/***/ }),
/* 24 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(53);
/***/ }),
/* 25 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(119);
/***/ }),
/* 26 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(120);
/***/ }),
/* 27 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(28);
/***/ }),
/* 28 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(121);
/***/ }),
/* 29 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(54);
/***/ }),
/* 30 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(22);
/***/ }),
/* 31 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(122);
/***/ }),
/* 32 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(123);
/***/ }),
/* 33 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(124);
/***/ }),
/* 34 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(29);
/***/ }),
/* 35 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(125);
/***/ }),
/* 36 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(126);
/***/ }),
/* 37 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(127);
/***/ }),
/* 38 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(128);
/***/ }),
/* 39 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(129);
/***/ }),
/* 40 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(130);
/***/ }),
/* 41 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(131);
/***/ }),
/* 42 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(132);
/***/ }),
/* 43 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(55);
/***/ }),
/* 44 */
/***/ (function(module, exports) {
module.exports = __webpack_require__(133);
/***/ }),
/* 45 */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__(46);
/***/ }),
/* 46 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/pagination/src/pager.vue?vue&type=template&id=7274f267&
var pagervue_type_template_id_7274f267_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"ul",
{ staticClass: "el-pager", on: { click: _vm.onPagerClick } },
[
_vm.pageCount > 0
? _c(
"li",
{
staticClass: "number",
class: { active: _vm.currentPage === 1, disabled: _vm.disabled }
},
[_vm._v("1")]
)
: _vm._e(),
_vm.showPrevMore
? _c("li", {
staticClass: "el-icon more btn-quickprev",
class: [_vm.quickprevIconClass, { disabled: _vm.disabled }],
on: {
mouseenter: function($event) {
_vm.onMouseenter("left")
},
mouseleave: function($event) {
_vm.quickprevIconClass = "el-icon-more"
}
}
})
: _vm._e(),
_vm._l(_vm.pagers, function(pager) {
return _c(
"li",
{
key: pager,
staticClass: "number",
class: { active: _vm.currentPage === pager, disabled: _vm.disabled }
},
[_vm._v(_vm._s(pager))]
)
}),
_vm.showNextMore
? _c("li", {
staticClass: "el-icon more btn-quicknext",
class: [_vm.quicknextIconClass, { disabled: _vm.disabled }],
on: {
mouseenter: function($event) {
_vm.onMouseenter("right")
},
mouseleave: function($event) {
_vm.quicknextIconClass = "el-icon-more"
}
}
})
: _vm._e(),
_vm.pageCount > 1
? _c(
"li",
{
staticClass: "number",
class: {
active: _vm.currentPage === _vm.pageCount,
disabled: _vm.disabled
}
},
[_vm._v(_vm._s(_vm.pageCount))]
)
: _vm._e()
],
2
)
}
var staticRenderFns = []
pagervue_type_template_id_7274f267_render._withStripped = true
// CONCATENATED MODULE: ./packages/pagination/src/pager.vue?vue&type=template&id=7274f267&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/pagination/src/pager.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var pagervue_type_script_lang_js_ = ({
name: 'ElPager',
props: {
currentPage: Number,
pageCount: Number,
pagerCount: Number,
disabled: Boolean
},
watch: {
showPrevMore: function showPrevMore(val) {
if (!val) this.quickprevIconClass = 'el-icon-more';
},
showNextMore: function showNextMore(val) {
if (!val) this.quicknextIconClass = 'el-icon-more';
}
},
methods: {
onPagerClick: function onPagerClick(event) {
var target = event.target;
if (target.tagName === 'UL' || this.disabled) {
return;
}
var newPage = Number(event.target.textContent);
var pageCount = this.pageCount;
var currentPage = this.currentPage;
var pagerCountOffset = this.pagerCount - 2;
if (target.className.indexOf('more') !== -1) {
if (target.className.indexOf('quickprev') !== -1) {
newPage = currentPage - pagerCountOffset;
} else if (target.className.indexOf('quicknext') !== -1) {
newPage = currentPage + pagerCountOffset;
}
}
/* istanbul ignore if */
if (!isNaN(newPage)) {
if (newPage < 1) {
newPage = 1;
}
if (newPage > pageCount) {
newPage = pageCount;
}
}
if (newPage !== currentPage) {
this.$emit('change', newPage);
}
},
onMouseenter: function onMouseenter(direction) {
if (this.disabled) return;
if (direction === 'left') {
this.quickprevIconClass = 'el-icon-d-arrow-left';
} else {
this.quicknextIconClass = 'el-icon-d-arrow-right';
}
}
},
computed: {
pagers: function pagers() {
var pagerCount = this.pagerCount;
var halfPagerCount = (pagerCount - 1) / 2;
var currentPage = Number(this.currentPage);
var pageCount = Number(this.pageCount);
var showPrevMore = false;
var showNextMore = false;
if (pageCount > pagerCount) {
if (currentPage > pagerCount - halfPagerCount) {
showPrevMore = true;
}
if (currentPage < pageCount - halfPagerCount) {
showNextMore = true;
}
}
var array = [];
if (showPrevMore && !showNextMore) {
var startPage = pageCount - (pagerCount - 2);
for (var i = startPage; i < pageCount; i++) {
array.push(i);
}
} else if (!showPrevMore && showNextMore) {
for (var _i = 2; _i < pagerCount; _i++) {
array.push(_i);
}
} else if (showPrevMore && showNextMore) {
var offset = Math.floor(pagerCount / 2) - 1;
for (var _i2 = currentPage - offset; _i2 <= currentPage + offset; _i2++) {
array.push(_i2);
}
} else {
for (var _i3 = 2; _i3 < pageCount; _i3++) {
array.push(_i3);
}
}
this.showPrevMore = showPrevMore;
this.showNextMore = showNextMore;
return array;
}
},
data: function data() {
return {
current: null,
showPrevMore: false,
showNextMore: false,
quicknextIconClass: 'el-icon-more',
quickprevIconClass: 'el-icon-more'
};
}
});
// CONCATENATED MODULE: ./packages/pagination/src/pager.vue?vue&type=script&lang=js&
/* harmony default export */ var src_pagervue_type_script_lang_js_ = (pagervue_type_script_lang_js_);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
/* 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
}
}
// CONCATENATED MODULE: ./packages/pagination/src/pager.vue
/* normalize component */
var component = normalizeComponent(
src_pagervue_type_script_lang_js_,
pagervue_type_template_id_7274f267_render,
staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var api; }
component.options.__file = "packages/pagination/src/pager.vue"
/* harmony default export */ var pager = (component.exports);
// EXTERNAL MODULE: external "element-ui/lib/select"
var select_ = __webpack_require__(36);
var select_default = /*#__PURE__*/__webpack_require__.n(select_);
// EXTERNAL MODULE: external "element-ui/lib/option"
var option_ = __webpack_require__(37);
var option_default = /*#__PURE__*/__webpack_require__.n(option_);
// EXTERNAL MODULE: external "element-ui/lib/input"
var input_ = __webpack_require__(8);
var input_default = /*#__PURE__*/__webpack_require__.n(input_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/locale"
var locale_ = __webpack_require__(4);
var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
// EXTERNAL MODULE: external "element-ui/lib/utils/util"
var util_ = __webpack_require__(2);
// CONCATENATED MODULE: ./packages/pagination/src/pagination.js
/* harmony default export */ var pagination = ({
name: 'ElPagination',
props: {
pageSize: {
type: Number,
default: 10
},
small: Boolean,
total: Number,
pageCount: Number,
pagerCount: {
type: Number,
validator: function validator(value) {
return (value | 0) === value && value > 4 && value < 22 && value % 2 === 1;
},
default: 7
},
currentPage: {
type: Number,
default: 1
},
layout: {
default: 'prev, pager, next, jumper, ->, total'
},
pageSizes: {
type: Array,
default: function _default() {
return [10, 20, 30, 40, 50, 100];
}
},
popperClass: String,
prevText: String,
nextText: String,
background: Boolean,
disabled: Boolean,
hideOnSinglePage: Boolean
},
data: function data() {
return {
internalCurrentPage: 1,
internalPageSize: 0,
lastEmittedPage: -1,
userChangePageSize: false
};
},
render: function render(h) {
var layout = this.layout;
if (!layout) return null;
if (this.hideOnSinglePage && (!this.internalPageCount || this.internalPageCount === 1)) return null;
var template = h('div', { 'class': ['el-pagination', {
'is-background': this.background,
'el-pagination--small': this.small
}] });
var TEMPLATE_MAP = {
prev: h('prev'),
jumper: h('jumper'),
pager: h('pager', {
attrs: { currentPage: this.internalCurrentPage, pageCount: this.internalPageCount, pagerCount: this.pagerCount, disabled: this.disabled },
on: {
'change': this.handleCurrentChange
}
}),
next: h('next'),
sizes: h('sizes', {
attrs: { pageSizes: this.pageSizes }
}),
slot: h('slot', [this.$slots.default ? this.$slots.default : '']),
total: h('total')
};
var components = layout.split(',').map(function (item) {
return item.trim();
});
var rightWrapper = h('div', { 'class': 'el-pagination__rightwrapper' });
var haveRightWrapper = false;
template.children = template.children || [];
rightWrapper.children = rightWrapper.children || [];
components.forEach(function (compo) {
if (compo === '->') {
haveRightWrapper = true;
return;
}
if (!haveRightWrapper) {
template.children.push(TEMPLATE_MAP[compo]);
} else {
rightWrapper.children.push(TEMPLATE_MAP[compo]);
}
});
if (haveRightWrapper) {
template.children.unshift(rightWrapper);
}
return template;
},
components: {
Prev: {
render: function render(h) {
return h(
'button',
{
attrs: {
type: 'button',
disabled: this.$parent.disabled || this.$parent.internalCurrentPage <= 1
},
'class': 'btn-prev', on: {
'click': this.$parent.prev
}
},
[this.$parent.prevText ? h('span', [this.$parent.prevText]) : h('i', { 'class': 'el-icon el-icon-arrow-left' })]
);
}
},
Next: {
render: function render(h) {
return h(
'button',
{
attrs: {
type: 'button',
disabled: this.$parent.disabled || this.$parent.internalCurrentPage === this.$parent.internalPageCount || this.$parent.internalPageCount === 0
},
'class': 'btn-next', on: {
'click': this.$parent.next
}
},
[this.$parent.nextText ? h('span', [this.$parent.nextText]) : h('i', { 'class': 'el-icon el-icon-arrow-right' })]
);
}
},
Sizes: {
mixins: [locale_default.a],
props: {
pageSizes: Array
},
watch: {
pageSizes: {
immediate: true,
handler: function handler(newVal, oldVal) {
if (Object(util_["valueEquals"])(newVal, oldVal)) return;
if (Array.isArray(newVal)) {
this.$parent.internalPageSize = newVal.indexOf(this.$parent.pageSize) > -1 ? this.$parent.pageSize : this.pageSizes[0];
}
}
}
},
render: function render(h) {
var _this = this;
return h(
'span',
{ 'class': 'el-pagination__sizes' },
[h(
'el-select',
{
attrs: {
value: this.$parent.internalPageSize,
popperClass: this.$parent.popperClass || '',
size: 'mini',
disabled: this.$parent.disabled },
on: {
'input': this.handleChange
}
},
[this.pageSizes.map(function (item) {
return h('el-option', {
attrs: {
value: item,
label: item + _this.t('el.pagination.pagesize') }
});
})]
)]
);
},
components: {
ElSelect: select_default.a,
ElOption: option_default.a
},
methods: {
handleChange: function handleChange(val) {
if (val !== this.$parent.internalPageSize) {
this.$parent.internalPageSize = val = parseInt(val, 10);
this.$parent.userChangePageSize = true;
this.$parent.$emit('update:pageSize', val);
this.$parent.$emit('size-change', val);
}
}
}
},
Jumper: {
mixins: [locale_default.a],
components: { ElInput: input_default.a },
data: function data() {
return {
userInput: null
};
},
watch: {
'$parent.internalCurrentPage': function $parentInternalCurrentPage() {
this.userInput = null;
}
},
methods: {
handleKeyup: function handleKeyup(_ref) {
var keyCode = _ref.keyCode,
target = _ref.target;
// Chrome, Safari, Firefox triggers change event on Enter
// Hack for IE: https://github.com/ElemeFE/element/issues/11710
// Drop this method when we no longer supports IE
if (keyCode === 13) {
this.handleChange(target.value);
}
},
handleInput: function handleInput(value) {
this.userInput = value;
},
handleChange: function handleChange(value) {
this.$parent.internalCurrentPage = this.$parent.getValidCurrentPage(value);
this.$parent.emitChange();
this.userInput = null;
}
},
render: function render(h) {
return h(
'span',
{ 'class': 'el-pagination__jump' },
[this.t('el.pagination.goto'), h('el-input', {
'class': 'el-pagination__editor is-in-pagination',
attrs: { min: 1,
max: this.$parent.internalPageCount,
value: this.userInput !== null ? this.userInput : this.$parent.internalCurrentPage,
type: 'number',
disabled: this.$parent.disabled
},
nativeOn: {
'keyup': this.handleKeyup
},
on: {
'input': this.handleInput,
'change': this.handleChange
}
}), this.t('el.pagination.pageClassifier')]
);
}
},
Total: {
mixins: [locale_default.a],
render: function render(h) {
return typeof this.$parent.total === 'number' ? h(
'span',
{ 'class': 'el-pagination__total' },
[this.t('el.pagination.total', { total: this.$parent.total })]
) : '';
}
},
Pager: pager
},
methods: {
handleCurrentChange: function handleCurrentChange(val) {
this.internalCurrentPage = this.getValidCurrentPage(val);
this.userChangePageSize = true;
this.emitChange();
},
prev: function prev() {
if (this.disabled) return;
var newVal = this.internalCurrentPage - 1;
this.internalCurrentPage = this.getValidCurrentPage(newVal);
this.$emit('prev-click', this.internalCurrentPage);
this.emitChange();
},
next: function next() {
if (this.disabled) return;
var newVal = this.internalCurrentPage + 1;
this.internalCurrentPage = this.getValidCurrentPage(newVal);
this.$emit('next-click', this.internalCurrentPage);
this.emitChange();
},
getValidCurrentPage: function getValidCurrentPage(value) {
value = parseInt(value, 10);
var havePageCount = typeof this.internalPageCount === 'number';
var resetValue = void 0;
if (!havePageCount) {
if (isNaN(value) || value < 1) resetValue = 1;
} else {
if (value < 1) {
resetValue = 1;
} else if (value > this.internalPageCount) {
resetValue = this.internalPageCount;
}
}
if (resetValue === undefined && isNaN(value)) {
resetValue = 1;
} else if (resetValue === 0) {
resetValue = 1;
}
return resetValue === undefined ? value : resetValue;
},
emitChange: function emitChange() {
var _this2 = this;
this.$nextTick(function () {
if (_this2.internalCurrentPage !== _this2.lastEmittedPage || _this2.userChangePageSize) {
_this2.$emit('current-change', _this2.internalCurrentPage);
_this2.lastEmittedPage = _this2.internalCurrentPage;
_this2.userChangePageSize = false;
}
});
}
},
computed: {
internalPageCount: function internalPageCount() {
if (typeof this.total === 'number') {
return Math.max(1, Math.ceil(this.total / this.internalPageSize));
} else if (typeof this.pageCount === 'number') {
return Math.max(1, this.pageCount);
}
return null;
}
},
watch: {
currentPage: {
immediate: true,
handler: function handler(val) {
this.internalCurrentPage = this.getValidCurrentPage(val);
}
},
pageSize: {
immediate: true,
handler: function handler(val) {
this.internalPageSize = isNaN(val) ? 10 : val;
}
},
internalCurrentPage: {
immediate: true,
handler: function handler(newVal) {
this.$emit('update:currentPage', newVal);
this.lastEmittedPage = -1;
}
},
internalPageCount: function internalPageCount(newVal) {
/* istanbul ignore if */
var oldPage = this.internalCurrentPage;
if (newVal > 0 && oldPage === 0) {
this.internalCurrentPage = 1;
} else if (oldPage > newVal) {
this.internalCurrentPage = newVal === 0 ? 1 : newVal;
this.userChangePageSize && this.emitChange();
}
this.userChangePageSize = false;
}
}
});
// CONCATENATED MODULE: ./packages/pagination/index.js
/* istanbul ignore next */
pagination.install = function (Vue) {
Vue.component(pagination.name, pagination);
};
/* harmony default export */ var packages_pagination = (pagination);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
var componentvue_type_template_id_60140e62_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{
attrs: { name: "dialog-fade" },
on: { "after-enter": _vm.afterEnter, "after-leave": _vm.afterLeave }
},
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.visible,
expression: "visible"
}
],
staticClass: "el-dialog__wrapper",
on: {
click: function($event) {
if ($event.target !== $event.currentTarget) {
return null
}
return _vm.handleWrapperClick($event)
}
}
},
[
_c(
"div",
{
key: _vm.key,
ref: "dialog",
class: [
"el-dialog",
{
"is-fullscreen": _vm.fullscreen,
"el-dialog--center": _vm.center
},
_vm.customClass
],
style: _vm.style,
attrs: {
role: "dialog",
"aria-modal": "true",
"aria-label": _vm.title || "dialog"
}
},
[
_c(
"div",
{ staticClass: "el-dialog__header" },
[
_vm._t("title", [
_c("span", { staticClass: "el-dialog__title" }, [
_vm._v(_vm._s(_vm.title))
])
]),
_vm.showClose
? _c(
"button",
{
staticClass: "el-dialog__headerbtn",
attrs: { type: "button", "aria-label": "Close" },
on: { click: _vm.handleClose }
},
[
_c("i", {
staticClass:
"el-dialog__close el-icon el-icon-close"
})
]
)
: _vm._e()
],
2
),
_vm.rendered
? _c(
"div",
{ staticClass: "el-dialog__body" },
[_vm._t("default")],
2
)
: _vm._e(),
_vm.$slots.footer
? _c(
"div",
{ staticClass: "el-dialog__footer" },
[_vm._t("footer")],
2
)
: _vm._e()
]
)
]
)
]
)
}
var componentvue_type_template_id_60140e62_staticRenderFns = []
componentvue_type_template_id_60140e62_render._withStripped = true
// CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=template&id=60140e62&
// EXTERNAL MODULE: external "element-ui/lib/utils/popup"
var popup_ = __webpack_require__(11);
var popup_default = /*#__PURE__*/__webpack_require__.n(popup_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(9);
var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(3);
var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dialog/src/component.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var componentvue_type_script_lang_js_ = ({
name: 'ElDialog',
mixins: [popup_default.a, emitter_default.a, migrating_default.a],
props: {
title: {
type: String,
default: ''
},
modal: {
type: Boolean,
default: true
},
modalAppendToBody: {
type: Boolean,
default: true
},
appendToBody: {
type: Boolean,
default: false
},
lockScroll: {
type: Boolean,
default: true
},
closeOnClickModal: {
type: Boolean,
default: true
},
closeOnPressEscape: {
type: Boolean,
default: true
},
showClose: {
type: Boolean,
default: true
},
width: String,
fullscreen: Boolean,
customClass: {
type: String,
default: ''
},
top: {
type: String,
default: '15vh'
},
beforeClose: Function,
center: {
type: Boolean,
default: false
},
destroyOnClose: Boolean
},
data: function data() {
return {
closed: false,
key: 0
};
},
watch: {
visible: function visible(val) {
var _this = this;
if (val) {
this.closed = false;
this.$emit('open');
this.$el.addEventListener('scroll', this.updatePopper);
this.$nextTick(function () {
_this.$refs.dialog.scrollTop = 0;
});
if (this.appendToBody) {
document.body.appendChild(this.$el);
}
} else {
this.$el.removeEventListener('scroll', this.updatePopper);
if (!this.closed) this.$emit('close');
if (this.destroyOnClose) {
this.$nextTick(function () {
_this.key++;
});
}
}
}
},
computed: {
style: function style() {
var style = {};
if (!this.fullscreen) {
style.marginTop = this.top;
if (this.width) {
style.width = this.width;
}
}
return style;
}
},
methods: {
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'size': 'size is removed.'
}
};
},
handleWrapperClick: function handleWrapperClick() {
if (!this.closeOnClickModal) return;
this.handleClose();
},
handleClose: function handleClose() {
if (typeof this.beforeClose === 'function') {
this.beforeClose(this.hide);
} else {
this.hide();
}
},
hide: function hide(cancel) {
if (cancel !== false) {
this.$emit('update:visible', false);
this.$emit('close');
this.closed = true;
}
},
updatePopper: function updatePopper() {
this.broadcast('ElSelectDropdown', 'updatePopper');
this.broadcast('ElDropdownMenu', 'updatePopper');
},
afterEnter: function afterEnter() {
this.$emit('opened');
},
afterLeave: function afterLeave() {
this.$emit('closed');
}
},
mounted: function mounted() {
if (this.visible) {
this.rendered = true;
this.open();
if (this.appendToBody) {
document.body.appendChild(this.$el);
}
}
},
destroyed: function destroyed() {
// if appendToBody is true, remove DOM node after destroy
if (this.appendToBody && this.$el && this.$el.parentNode) {
this.$el.parentNode.removeChild(this.$el);
}
}
});
// CONCATENATED MODULE: ./packages/dialog/src/component.vue?vue&type=script&lang=js&
/* harmony default export */ var src_componentvue_type_script_lang_js_ = (componentvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/dialog/src/component.vue
/* normalize component */
var component_component = normalizeComponent(
src_componentvue_type_script_lang_js_,
componentvue_type_template_id_60140e62_render,
componentvue_type_template_id_60140e62_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var component_api; }
component_component.options.__file = "packages/dialog/src/component.vue"
/* harmony default export */ var src_component = (component_component.exports);
// CONCATENATED MODULE: ./packages/dialog/index.js
/* istanbul ignore next */
src_component.install = function (Vue) {
Vue.component(src_component.name, src_component);
};
/* harmony default export */ var dialog = (src_component);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=152f2ee6&
var autocompletevue_type_template_id_152f2ee6_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
directives: [
{
name: "clickoutside",
rawName: "v-clickoutside",
value: _vm.close,
expression: "close"
}
],
staticClass: "el-autocomplete",
attrs: {
"aria-haspopup": "listbox",
role: "combobox",
"aria-expanded": _vm.suggestionVisible,
"aria-owns": _vm.id
}
},
[
_c(
"el-input",
_vm._b(
{
ref: "input",
on: {
input: _vm.handleInput,
change: _vm.handleChange,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
clear: _vm.handleClear
},
nativeOn: {
keydown: [
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "up", 38, $event.key, [
"Up",
"ArrowUp"
])
) {
return null
}
$event.preventDefault()
_vm.highlight(_vm.highlightedIndex - 1)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "down", 40, $event.key, [
"Down",
"ArrowDown"
])
) {
return null
}
$event.preventDefault()
_vm.highlight(_vm.highlightedIndex + 1)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "enter", 13, $event.key, "Enter")
) {
return null
}
return _vm.handleKeyEnter($event)
},
function($event) {
if (
!("button" in $event) &&
_vm._k($event.keyCode, "tab", 9, $event.key, "Tab")
) {
return null
}
return _vm.close($event)
}
]
}
},
"el-input",
[_vm.$props, _vm.$attrs],
false
),
[
_vm.$slots.prepend
? _c("template", { slot: "prepend" }, [_vm._t("prepend")], 2)
: _vm._e(),
_vm.$slots.append
? _c("template", { slot: "append" }, [_vm._t("append")], 2)
: _vm._e(),
_vm.$slots.prefix
? _c("template", { slot: "prefix" }, [_vm._t("prefix")], 2)
: _vm._e(),
_vm.$slots.suffix
? _c("template", { slot: "suffix" }, [_vm._t("suffix")], 2)
: _vm._e()
],
2
),
_c(
"el-autocomplete-suggestions",
{
ref: "suggestions",
class: [_vm.popperClass ? _vm.popperClass : ""],
attrs: {
"visible-arrow": "",
"popper-options": _vm.popperOptions,
"append-to-body": _vm.popperAppendToBody,
placement: _vm.placement,
id: _vm.id
}
},
_vm._l(_vm.suggestions, function(item, index) {
return _c(
"li",
{
key: index,
class: { highlighted: _vm.highlightedIndex === index },
attrs: {
id: _vm.id + "-item-" + index,
role: "option",
"aria-selected": _vm.highlightedIndex === index
},
on: {
click: function($event) {
_vm.select(item)
}
}
},
[
_vm._t(
"default",
[
_vm._v("\n " + _vm._s(item[_vm.valueKey]) + "\n ")
],
{ item: item }
)
],
2
)
}),
0
)
],
1
)
}
var autocompletevue_type_template_id_152f2ee6_staticRenderFns = []
autocompletevue_type_template_id_152f2ee6_render._withStripped = true
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=template&id=152f2ee6&
// EXTERNAL MODULE: external "throttle-debounce/debounce"
var debounce_ = __webpack_require__(16);
var debounce_default = /*#__PURE__*/__webpack_require__.n(debounce_);
// EXTERNAL MODULE: external "element-ui/lib/utils/clickoutside"
var clickoutside_ = __webpack_require__(10);
var clickoutside_default = /*#__PURE__*/__webpack_require__.n(clickoutside_);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=cd10dcf0&
var autocomplete_suggestionsvue_type_template_id_cd10dcf0_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{ attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
[
_c(
"div",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.showPopper,
expression: "showPopper"
}
],
staticClass: "el-autocomplete-suggestion el-popper",
class: {
"is-loading": !_vm.parent.hideLoading && _vm.parent.loading
},
style: { width: _vm.dropdownWidth },
attrs: { role: "region" }
},
[
_c(
"el-scrollbar",
{
attrs: {
tag: "ul",
"wrap-class": "el-autocomplete-suggestion__wrap",
"view-class": "el-autocomplete-suggestion__list"
}
},
[
!_vm.parent.hideLoading && _vm.parent.loading
? _c("li", [_c("i", { staticClass: "el-icon-loading" })])
: _vm._t("default")
],
2
)
],
1
)
]
)
}
var autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns = []
autocomplete_suggestionsvue_type_template_id_cd10dcf0_render._withStripped = true
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=template&id=cd10dcf0&
// EXTERNAL MODULE: external "element-ui/lib/utils/vue-popper"
var vue_popper_ = __webpack_require__(5);
var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
// EXTERNAL MODULE: external "element-ui/lib/scrollbar"
var scrollbar_ = __webpack_require__(18);
var scrollbar_default = /*#__PURE__*/__webpack_require__.n(scrollbar_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var autocomplete_suggestionsvue_type_script_lang_js_ = ({
components: { ElScrollbar: scrollbar_default.a },
mixins: [vue_popper_default.a, emitter_default.a],
componentName: 'ElAutocompleteSuggestions',
data: function data() {
return {
parent: this.$parent,
dropdownWidth: ''
};
},
props: {
options: {
default: function _default() {
return {
gpuAcceleration: false
};
}
},
id: String
},
methods: {
select: function select(item) {
this.dispatch('ElAutocomplete', 'item-click', item);
}
},
updated: function updated() {
var _this = this;
this.$nextTick(function (_) {
_this.popperJS && _this.updatePopper();
});
},
mounted: function mounted() {
this.$parent.popperElm = this.popperElm = this.$el;
this.referenceElm = this.$parent.$refs.input.$refs.input || this.$parent.$refs.input.$refs.textarea;
this.referenceList = this.$el.querySelector('.el-autocomplete-suggestion__list');
this.referenceList.setAttribute('role', 'listbox');
this.referenceList.setAttribute('id', this.id);
},
created: function created() {
var _this2 = this;
this.$on('visible', function (val, inputWidth) {
_this2.dropdownWidth = inputWidth + 'px';
_this2.showPopper = val;
});
}
});
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue?vue&type=script&lang=js&
/* harmony default export */ var src_autocomplete_suggestionsvue_type_script_lang_js_ = (autocomplete_suggestionsvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete-suggestions.vue
/* normalize component */
var autocomplete_suggestions_component = normalizeComponent(
src_autocomplete_suggestionsvue_type_script_lang_js_,
autocomplete_suggestionsvue_type_template_id_cd10dcf0_render,
autocomplete_suggestionsvue_type_template_id_cd10dcf0_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var autocomplete_suggestions_api; }
autocomplete_suggestions_component.options.__file = "packages/autocomplete/src/autocomplete-suggestions.vue"
/* harmony default export */ var autocomplete_suggestions = (autocomplete_suggestions_component.exports);
// EXTERNAL MODULE: external "element-ui/lib/mixins/focus"
var focus_ = __webpack_require__(23);
var focus_default = /*#__PURE__*/__webpack_require__.n(focus_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var autocompletevue_type_script_lang_js_ = ({
name: 'ElAutocomplete',
mixins: [emitter_default.a, focus_default()('input'), migrating_default.a],
inheritAttrs: false,
componentName: 'ElAutocomplete',
components: {
ElInput: input_default.a,
ElAutocompleteSuggestions: autocomplete_suggestions
},
directives: { Clickoutside: clickoutside_default.a },
props: {
valueKey: {
type: String,
default: 'value'
},
popperClass: String,
popperOptions: Object,
placeholder: String,
clearable: {
type: Boolean,
default: false
},
disabled: Boolean,
name: String,
size: String,
value: String,
maxlength: Number,
minlength: Number,
autofocus: Boolean,
fetchSuggestions: Function,
triggerOnFocus: {
type: Boolean,
default: true
},
customItem: String,
selectWhenUnmatched: {
type: Boolean,
default: false
},
prefixIcon: String,
suffixIcon: String,
label: String,
debounce: {
type: Number,
default: 300
},
placement: {
type: String,
default: 'bottom-start'
},
hideLoading: Boolean,
popperAppendToBody: {
type: Boolean,
default: true
},
highlightFirstItem: {
type: Boolean,
default: false
}
},
data: function data() {
return {
activated: false,
suggestions: [],
loading: false,
highlightedIndex: -1,
suggestionDisabled: false
};
},
computed: {
suggestionVisible: function suggestionVisible() {
var suggestions = this.suggestions;
var isValidData = Array.isArray(suggestions) && suggestions.length > 0;
return (isValidData || this.loading) && this.activated;
},
id: function id() {
return 'el-autocomplete-' + Object(util_["generateId"])();
}
},
watch: {
suggestionVisible: function suggestionVisible(val) {
var $input = this.getInput();
if ($input) {
this.broadcast('ElAutocompleteSuggestions', 'visible', [val, $input.offsetWidth]);
}
}
},
methods: {
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'custom-item': 'custom-item is removed, use scoped slot instead.',
'props': 'props is removed, use value-key instead.'
}
};
},
getData: function getData(queryString) {
var _this = this;
if (this.suggestionDisabled) {
return;
}
this.loading = true;
this.fetchSuggestions(queryString, function (suggestions) {
_this.loading = false;
if (_this.suggestionDisabled) {
return;
}
if (Array.isArray(suggestions)) {
_this.suggestions = suggestions;
_this.highlightedIndex = _this.highlightFirstItem ? 0 : -1;
} else {
console.error('[Element Error][Autocomplete]autocomplete suggestions must be an array');
}
});
},
handleInput: function handleInput(value) {
this.$emit('input', value);
this.suggestionDisabled = false;
if (!this.triggerOnFocus && !value) {
this.suggestionDisabled = true;
this.suggestions = [];
return;
}
this.debouncedGetData(value);
},
handleChange: function handleChange(value) {
this.$emit('change', value);
},
handleFocus: function handleFocus(event) {
this.activated = true;
this.$emit('focus', event);
if (this.triggerOnFocus) {
this.debouncedGetData(this.value);
}
},
handleBlur: function handleBlur(event) {
this.$emit('blur', event);
},
handleClear: function handleClear() {
this.activated = false;
this.$emit('clear');
},
close: function close(e) {
this.activated = false;
},
handleKeyEnter: function handleKeyEnter(e) {
var _this2 = this;
if (this.suggestionVisible && this.highlightedIndex >= 0 && this.highlightedIndex < this.suggestions.length) {
e.preventDefault();
this.select(this.suggestions[this.highlightedIndex]);
} else if (this.selectWhenUnmatched) {
this.$emit('select', { value: this.value });
this.$nextTick(function (_) {
_this2.suggestions = [];
_this2.highlightedIndex = -1;
});
}
},
select: function select(item) {
var _this3 = this;
this.$emit('input', item[this.valueKey]);
this.$emit('select', item);
this.$nextTick(function (_) {
_this3.suggestions = [];
_this3.highlightedIndex = -1;
});
},
highlight: function highlight(index) {
if (!this.suggestionVisible || this.loading) {
return;
}
if (index < 0) {
this.highlightedIndex = -1;
return;
}
if (index >= this.suggestions.length) {
index = this.suggestions.length - 1;
}
var suggestion = this.$refs.suggestions.$el.querySelector('.el-autocomplete-suggestion__wrap');
var suggestionList = suggestion.querySelectorAll('.el-autocomplete-suggestion__list li');
var highlightItem = suggestionList[index];
var scrollTop = suggestion.scrollTop;
var offsetTop = highlightItem.offsetTop;
if (offsetTop + highlightItem.scrollHeight > scrollTop + suggestion.clientHeight) {
suggestion.scrollTop += highlightItem.scrollHeight;
}
if (offsetTop < scrollTop) {
suggestion.scrollTop -= highlightItem.scrollHeight;
}
this.highlightedIndex = index;
var $input = this.getInput();
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
},
getInput: function getInput() {
return this.$refs.input.getInput();
}
},
mounted: function mounted() {
var _this4 = this;
this.debouncedGetData = debounce_default()(this.debounce, this.getData);
this.$on('item-click', function (item) {
_this4.select(item);
});
var $input = this.getInput();
$input.setAttribute('role', 'textbox');
$input.setAttribute('aria-autocomplete', 'list');
$input.setAttribute('aria-controls', 'id');
$input.setAttribute('aria-activedescendant', this.id + '-item-' + this.highlightedIndex);
},
beforeDestroy: function beforeDestroy() {
this.$refs.suggestions.$destroy();
}
});
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue?vue&type=script&lang=js&
/* harmony default export */ var src_autocompletevue_type_script_lang_js_ = (autocompletevue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/autocomplete/src/autocomplete.vue
/* normalize component */
var autocomplete_component = normalizeComponent(
src_autocompletevue_type_script_lang_js_,
autocompletevue_type_template_id_152f2ee6_render,
autocompletevue_type_template_id_152f2ee6_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var autocomplete_api; }
autocomplete_component.options.__file = "packages/autocomplete/src/autocomplete.vue"
/* harmony default export */ var autocomplete = (autocomplete_component.exports);
// CONCATENATED MODULE: ./packages/autocomplete/index.js
/* istanbul ignore next */
autocomplete.install = function (Vue) {
Vue.component(autocomplete.name, autocomplete);
};
/* harmony default export */ var packages_autocomplete = (autocomplete);
// EXTERNAL MODULE: external "element-ui/lib/button"
var button_ = __webpack_require__(13);
var button_default = /*#__PURE__*/__webpack_require__.n(button_);
// EXTERNAL MODULE: external "element-ui/lib/button-group"
var button_group_ = __webpack_require__(28);
var button_group_default = /*#__PURE__*/__webpack_require__.n(button_group_);
// 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_);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown.vue
var dropdown_render, dropdown_staticRenderFns
/* normalize component */
var dropdown_component = normalizeComponent(
src_dropdownvue_type_script_lang_js_,
dropdown_render,
dropdown_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var dropdown_api; }
dropdown_component.options.__file = "packages/dropdown/src/dropdown.vue"
/* harmony default export */ var dropdown = (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 = (dropdown);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
var dropdown_menuvue_type_template_id_0da6b714_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"transition",
{ attrs: { name: "el-zoom-in-top" }, on: { "after-leave": _vm.doDestroy } },
[
_c(
"ul",
{
directives: [
{
name: "show",
rawName: "v-show",
value: _vm.showPopper,
expression: "showPopper"
}
],
staticClass: "el-dropdown-menu el-popper",
class: [_vm.size && "el-dropdown-menu--" + _vm.size]
},
[_vm._t("default")],
2
)
]
)
}
var dropdown_menuvue_type_template_id_0da6b714_staticRenderFns = []
dropdown_menuvue_type_template_id_0da6b714_render._withStripped = true
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=template&id=0da6b714&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
/* harmony default export */ var dropdown_menuvue_type_script_lang_js_ = ({
name: 'ElDropdownMenu',
componentName: 'ElDropdownMenu',
mixins: [vue_popper_default.a],
props: {
visibleArrow: {
type: Boolean,
default: true
},
arrowOffset: {
type: Number,
default: 0
}
},
data: function data() {
return {
size: this.dropdown.dropdownSize
};
},
inject: ['dropdown'],
created: function created() {
var _this = this;
this.$on('updatePopper', function () {
if (_this.showPopper) _this.updatePopper();
});
this.$on('visible', function (val) {
_this.showPopper = val;
});
},
mounted: function mounted() {
this.dropdown.popperElm = this.popperElm = this.$el;
this.referenceElm = this.dropdown.$el;
// compatible with 2.6 new v-slot syntax
// issue link https://github.com/ElemeFE/element/issues/14345
this.dropdown.initDomOperation();
},
watch: {
'dropdown.placement': {
immediate: true,
handler: function handler(val) {
this.currentPlacement = val;
}
}
}
});
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue?vue&type=script&lang=js&
/* harmony default export */ var src_dropdown_menuvue_type_script_lang_js_ = (dropdown_menuvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-menu.vue
/* normalize component */
var dropdown_menu_component = normalizeComponent(
src_dropdown_menuvue_type_script_lang_js_,
dropdown_menuvue_type_template_id_0da6b714_render,
dropdown_menuvue_type_template_id_0da6b714_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var dropdown_menu_api; }
dropdown_menu_component.options.__file = "packages/dropdown/src/dropdown-menu.vue"
/* harmony default export */ var dropdown_menu = (dropdown_menu_component.exports);
// CONCATENATED MODULE: ./packages/dropdown-menu/index.js
/* istanbul ignore next */
dropdown_menu.install = function (Vue) {
Vue.component(dropdown_menu.name, dropdown_menu);
};
/* harmony default export */ var packages_dropdown_menu = (dropdown_menu);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
var dropdown_itemvue_type_template_id_6359102a_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"li",
{
staticClass: "el-dropdown-menu__item",
class: {
"is-disabled": _vm.disabled,
"el-dropdown-menu__item--divided": _vm.divided
},
attrs: {
"aria-disabled": _vm.disabled,
tabindex: _vm.disabled ? null : -1
},
on: { click: _vm.handleClick }
},
[_vm.icon ? _c("i", { class: _vm.icon }) : _vm._e(), _vm._t("default")],
2
)
}
var dropdown_itemvue_type_template_id_6359102a_staticRenderFns = []
dropdown_itemvue_type_template_id_6359102a_render._withStripped = true
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=template&id=6359102a&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var dropdown_itemvue_type_script_lang_js_ = ({
name: 'ElDropdownItem',
mixins: [emitter_default.a],
props: {
command: {},
disabled: Boolean,
divided: Boolean,
icon: String
},
methods: {
handleClick: function handleClick(e) {
this.dispatch('ElDropdown', 'menu-item-click', [this.command, this]);
}
}
});
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_dropdown_itemvue_type_script_lang_js_ = (dropdown_itemvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/dropdown/src/dropdown-item.vue
/* normalize component */
var dropdown_item_component = normalizeComponent(
src_dropdown_itemvue_type_script_lang_js_,
dropdown_itemvue_type_template_id_6359102a_render,
dropdown_itemvue_type_template_id_6359102a_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var dropdown_item_api; }
dropdown_item_component.options.__file = "packages/dropdown/src/dropdown-item.vue"
/* harmony default export */ var dropdown_item = (dropdown_item_component.exports);
// CONCATENATED MODULE: ./packages/dropdown-item/index.js
/* istanbul ignore next */
dropdown_item.install = function (Vue) {
Vue.component(dropdown_item.name, dropdown_item);
};
/* harmony default export */ var packages_dropdown_item = (dropdown_item);
// CONCATENATED MODULE: ./src/utils/aria-utils.js
var aria = aria || {};
aria.Utils = aria.Utils || {};
/**
* @desc Set focus on descendant nodes until the first focusable element is
* found.
* @param element
* DOM node for which to find the first focusable descendant.
* @returns
* true if a focusable element is found and focus is set.
*/
aria.Utils.focusFirstDescendant = function (element) {
for (var i = 0; i < element.childNodes.length; i++) {
var child = element.childNodes[i];
if (aria.Utils.attemptFocus(child) || aria.Utils.focusFirstDescendant(child)) {
return true;
}
}
return false;
};
/**
* @desc Find the last descendant node that is focusable.
* @param element
* DOM node for which to find the last focusable descendant.
* @returns
* true if a focusable element is found and focus is set.
*/
aria.Utils.focusLastDescendant = function (element) {
for (var i = element.childNodes.length - 1; i >= 0; i--) {
var child = element.childNodes[i];
if (aria.Utils.attemptFocus(child) || aria.Utils.focusLastDescendant(child)) {
return true;
}
}
return false;
};
/**
* @desc Set Attempt to set focus on the current node.
* @param element
* The node to attempt to focus on.
* @returns
* true if element is focused.
*/
aria.Utils.attemptFocus = function (element) {
if (!aria.Utils.isFocusable(element)) {
return false;
}
aria.Utils.IgnoreUtilFocusChanges = true;
try {
element.focus();
} catch (e) {}
aria.Utils.IgnoreUtilFocusChanges = false;
return document.activeElement === element;
};
aria.Utils.isFocusable = function (element) {
if (element.tabIndex > 0 || element.tabIndex === 0 && element.getAttribute('tabIndex') !== null) {
return true;
}
if (element.disabled) {
return false;
}
switch (element.nodeName) {
case 'A':
return !!element.href && element.rel !== 'ignore';
case 'INPUT':
return element.type !== 'hidden' && element.type !== 'file';
case 'BUTTON':
case 'SELECT':
case 'TEXTAREA':
return true;
default:
return false;
}
};
/**
* 触发一个事件
* mouseenter, mouseleave, mouseover, keyup, change, click 等
* @param {Element} elm
* @param {String} name
* @param {*} opts
*/
aria.Utils.triggerEvent = function (elm, name) {
var eventName = void 0;
if (/^mouse|click/.test(name)) {
eventName = 'MouseEvents';
} else if (/^key/.test(name)) {
eventName = 'KeyboardEvent';
} else {
eventName = 'HTMLEvents';
}
var evt = document.createEvent(eventName);
for (var _len = arguments.length, opts = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
opts[_key - 2] = arguments[_key];
}
evt.initEvent.apply(evt, [name].concat(opts));
elm.dispatchEvent ? elm.dispatchEvent(evt) : elm.fireEvent('on' + name, evt);
return elm;
};
aria.Utils.keys = {
tab: 9,
enter: 13,
space: 32,
left: 37,
up: 38,
right: 39,
down: 40,
esc: 27
};
/* harmony default export */ var aria_utils = (aria.Utils);
// CONCATENATED MODULE: ./src/utils/menu/aria-submenu.js
var SubMenu = function SubMenu(parent, domNode) {
this.domNode = domNode;
this.parent = parent;
this.subMenuItems = [];
this.subIndex = 0;
this.init();
};
SubMenu.prototype.init = function () {
this.subMenuItems = this.domNode.querySelectorAll('li');
this.addListeners();
};
SubMenu.prototype.gotoSubIndex = function (idx) {
if (idx === this.subMenuItems.length) {
idx = 0;
} else if (idx < 0) {
idx = this.subMenuItems.length - 1;
}
this.subMenuItems[idx].focus();
this.subIndex = idx;
};
SubMenu.prototype.addListeners = function () {
var _this = this;
var keys = aria_utils.keys;
var parentNode = this.parent.domNode;
Array.prototype.forEach.call(this.subMenuItems, function (el) {
el.addEventListener('keydown', function (event) {
var prevDef = false;
switch (event.keyCode) {
case keys.down:
_this.gotoSubIndex(_this.subIndex + 1);
prevDef = true;
break;
case keys.up:
_this.gotoSubIndex(_this.subIndex - 1);
prevDef = true;
break;
case keys.tab:
aria_utils.triggerEvent(parentNode, 'mouseleave');
break;
case keys.enter:
case keys.space:
prevDef = true;
event.currentTarget.click();
break;
}
if (prevDef) {
event.preventDefault();
event.stopPropagation();
}
return false;
});
});
};
/* harmony default export */ var aria_submenu = (SubMenu);
// CONCATENATED MODULE: ./src/utils/menu/aria-menuitem.js
var MenuItem = function MenuItem(domNode) {
this.domNode = domNode;
this.submenu = null;
this.init();
};
MenuItem.prototype.init = function () {
this.domNode.setAttribute('tabindex', '0');
var menuChild = this.domNode.querySelector('.el-menu');
if (menuChild) {
this.submenu = new aria_submenu(this, menuChild);
}
this.addListeners();
};
MenuItem.prototype.addListeners = function () {
var _this = this;
var keys = aria_utils.keys;
this.domNode.addEventListener('keydown', function (event) {
var prevDef = false;
switch (event.keyCode) {
case keys.down:
aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
_this.submenu && _this.submenu.gotoSubIndex(0);
prevDef = true;
break;
case keys.up:
aria_utils.triggerEvent(event.currentTarget, 'mouseenter');
_this.submenu && _this.submenu.gotoSubIndex(_this.submenu.subMenuItems.length - 1);
prevDef = true;
break;
case keys.tab:
aria_utils.triggerEvent(event.currentTarget, 'mouseleave');
break;
case keys.enter:
case keys.space:
prevDef = true;
event.currentTarget.click();
break;
}
if (prevDef) {
event.preventDefault();
}
});
};
/* harmony default export */ var aria_menuitem = (MenuItem);
// CONCATENATED MODULE: ./src/utils/menu/aria-menubar.js
var Menu = function Menu(domNode) {
this.domNode = domNode;
this.init();
};
Menu.prototype.init = function () {
var menuChildren = this.domNode.childNodes;
[].filter.call(menuChildren, function (child) {
return child.nodeType === 1;
}).forEach(function (child) {
new aria_menuitem(child); // eslint-disable-line
});
};
/* harmony default export */ var aria_menubar = (Menu);
// EXTERNAL MODULE: external "element-ui/lib/utils/dom"
var dom_ = __webpack_require__(1);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu.vue?vue&type=script&lang=js&
/* harmony default export */ var menuvue_type_script_lang_js_ = ({
name: 'ElMenu',
render: function render(h) {
var component = h(
'ul',
{
attrs: {
role: 'menubar'
},
key: +this.collapse,
style: { backgroundColor: this.backgroundColor || '' },
'class': {
'el-menu--horizontal': this.mode === 'horizontal',
'el-menu--collapse': this.collapse,
"el-menu": true
}
},
[this.$slots.default]
);
if (this.collapseTransition) {
return h('el-menu-collapse-transition', [component]);
} else {
return component;
}
},
componentName: 'ElMenu',
mixins: [emitter_default.a, migrating_default.a],
provide: function provide() {
return {
rootMenu: this
};
},
components: {
'el-menu-collapse-transition': {
functional: true,
render: function render(createElement, context) {
var data = {
props: {
mode: 'out-in'
},
on: {
beforeEnter: function beforeEnter(el) {
el.style.opacity = 0.2;
},
enter: function enter(el) {
Object(dom_["addClass"])(el, 'el-opacity-transition');
el.style.opacity = 1;
},
afterEnter: function afterEnter(el) {
Object(dom_["removeClass"])(el, 'el-opacity-transition');
el.style.opacity = '';
},
beforeLeave: function beforeLeave(el) {
if (!el.dataset) el.dataset = {};
if (Object(dom_["hasClass"])(el, 'el-menu--collapse')) {
Object(dom_["removeClass"])(el, 'el-menu--collapse');
el.dataset.oldOverflow = el.style.overflow;
el.dataset.scrollWidth = el.clientWidth;
Object(dom_["addClass"])(el, 'el-menu--collapse');
} else {
Object(dom_["addClass"])(el, 'el-menu--collapse');
el.dataset.oldOverflow = el.style.overflow;
el.dataset.scrollWidth = el.clientWidth;
Object(dom_["removeClass"])(el, 'el-menu--collapse');
}
el.style.width = el.scrollWidth + 'px';
el.style.overflow = 'hidden';
},
leave: function leave(el) {
Object(dom_["addClass"])(el, 'horizontal-collapse-transition');
el.style.width = el.dataset.scrollWidth + 'px';
}
}
};
return createElement('transition', data, context.children);
}
}
},
props: {
mode: {
type: String,
default: 'vertical'
},
defaultActive: {
type: String,
default: ''
},
defaultOpeneds: Array,
uniqueOpened: Boolean,
router: Boolean,
menuTrigger: {
type: String,
default: 'hover'
},
collapse: Boolean,
backgroundColor: String,
textColor: String,
activeTextColor: String,
collapseTransition: {
type: Boolean,
default: true
}
},
data: function data() {
return {
activeIndex: this.defaultActive,
openedMenus: this.defaultOpeneds && !this.collapse ? this.defaultOpeneds.slice(0) : [],
items: {},
submenus: {}
};
},
computed: {
hoverBackground: function hoverBackground() {
return this.backgroundColor ? this.mixColor(this.backgroundColor, 0.2) : '';
},
isMenuPopup: function isMenuPopup() {
return this.mode === 'horizontal' || this.mode === 'vertical' && this.collapse;
}
},
watch: {
defaultActive: function defaultActive(value) {
if (!this.items[value]) {
this.activeIndex = null;
}
this.updateActiveIndex(value);
},
defaultOpeneds: function defaultOpeneds(value) {
if (!this.collapse) {
this.openedMenus = value;
}
},
collapse: function collapse(value) {
if (value) this.openedMenus = [];
this.broadcast('ElSubmenu', 'toggle-collapse', value);
}
},
methods: {
updateActiveIndex: function updateActiveIndex(val) {
var item = this.items[val] || this.items[this.activeIndex] || this.items[this.defaultActive];
if (item) {
this.activeIndex = item.index;
this.initOpenedMenu();
} else {
this.activeIndex = null;
}
},
getMigratingConfig: function getMigratingConfig() {
return {
props: {
'theme': 'theme is removed.'
}
};
},
getColorChannels: function getColorChannels(color) {
color = color.replace('#', '');
if (/^[0-9a-fA-F]{3}$/.test(color)) {
color = color.split('');
for (var i = 2; i >= 0; i--) {
color.splice(i, 0, color[i]);
}
color = color.join('');
}
if (/^[0-9a-fA-F]{6}$/.test(color)) {
return {
red: parseInt(color.slice(0, 2), 16),
green: parseInt(color.slice(2, 4), 16),
blue: parseInt(color.slice(4, 6), 16)
};
} else {
return {
red: 255,
green: 255,
blue: 255
};
}
},
mixColor: function mixColor(color, percent) {
var _getColorChannels = this.getColorChannels(color),
red = _getColorChannels.red,
green = _getColorChannels.green,
blue = _getColorChannels.blue;
if (percent > 0) {
// shade given color
red *= 1 - percent;
green *= 1 - percent;
blue *= 1 - percent;
} else {
// tint given color
red += (255 - red) * percent;
green += (255 - green) * percent;
blue += (255 - blue) * percent;
}
return 'rgb(' + Math.round(red) + ', ' + Math.round(green) + ', ' + Math.round(blue) + ')';
},
addItem: function addItem(item) {
this.$set(this.items, item.index, item);
},
removeItem: function removeItem(item) {
delete this.items[item.index];
},
addSubmenu: function addSubmenu(item) {
this.$set(this.submenus, item.index, item);
},
removeSubmenu: function removeSubmenu(item) {
delete this.submenus[item.index];
},
openMenu: function openMenu(index, indexPath) {
var openedMenus = this.openedMenus;
if (openedMenus.indexOf(index) !== -1) return;
// 将不在该菜单路径下的其余菜单收起
// collapse all menu that are not under current menu item
if (this.uniqueOpened) {
this.openedMenus = openedMenus.filter(function (index) {
return indexPath.indexOf(index) !== -1;
});
}
this.openedMenus.push(index);
},
closeMenu: function closeMenu(index) {
var i = this.openedMenus.indexOf(index);
if (i !== -1) {
this.openedMenus.splice(i, 1);
}
},
handleSubmenuClick: function handleSubmenuClick(submenu) {
var index = submenu.index,
indexPath = submenu.indexPath;
var isOpened = this.openedMenus.indexOf(index) !== -1;
if (isOpened) {
this.closeMenu(index);
this.$emit('close', index, indexPath);
} else {
this.openMenu(index, indexPath);
this.$emit('open', index, indexPath);
}
},
handleItemClick: function handleItemClick(item) {
var _this = this;
var index = item.index,
indexPath = item.indexPath;
var oldActiveIndex = this.activeIndex;
var hasIndex = item.index !== null;
if (hasIndex) {
this.activeIndex = item.index;
}
this.$emit('select', index, indexPath, item);
if (this.mode === 'horizontal' || this.collapse) {
this.openedMenus = [];
}
if (this.router && hasIndex) {
this.routeToItem(item, function (error) {
_this.activeIndex = oldActiveIndex;
if (error) {
// vue-router 3.1.0+ push/replace cause NavigationDuplicated error
// https://github.com/ElemeFE/element/issues/17044
if (error.name === 'NavigationDuplicated') return;
console.error(error);
}
});
}
},
// 初始化展开菜单
// initialize opened menu
initOpenedMenu: function initOpenedMenu() {
var _this2 = this;
var index = this.activeIndex;
var activeItem = this.items[index];
if (!activeItem || this.mode === 'horizontal' || this.collapse) return;
var indexPath = activeItem.indexPath;
// 展开该菜单项的路径上所有子菜单
// expand all submenus of the menu item
indexPath.forEach(function (index) {
var submenu = _this2.submenus[index];
submenu && _this2.openMenu(index, submenu.indexPath);
});
},
routeToItem: function routeToItem(item, onError) {
var route = item.route || item.index;
try {
this.$router.push(route, function () {}, onError);
} catch (e) {
console.error(e);
}
},
open: function open(index) {
var _this3 = this;
var indexPath = this.submenus[index.toString()].indexPath;
indexPath.forEach(function (i) {
return _this3.openMenu(i, indexPath);
});
},
close: function close(index) {
this.closeMenu(index);
}
},
mounted: function mounted() {
this.initOpenedMenu();
this.$on('item-click', this.handleItemClick);
this.$on('submenu-click', this.handleSubmenuClick);
if (this.mode === 'horizontal') {
new aria_menubar(this.$el); // eslint-disable-line
}
this.$watch('items', this.updateActiveIndex);
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menuvue_type_script_lang_js_ = (menuvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/menu/src/menu.vue
var menu_render, menu_staticRenderFns
/* normalize component */
var menu_component = normalizeComponent(
src_menuvue_type_script_lang_js_,
menu_render,
menu_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var menu_api; }
menu_component.options.__file = "packages/menu/src/menu.vue"
/* harmony default export */ var src_menu = (menu_component.exports);
// CONCATENATED MODULE: ./packages/menu/index.js
/* istanbul ignore next */
src_menu.install = function (Vue) {
Vue.component(src_menu.name, src_menu);
};
/* harmony default export */ var packages_menu = (src_menu);
// EXTERNAL MODULE: external "element-ui/lib/transitions/collapse-transition"
var collapse_transition_ = __webpack_require__(21);
var collapse_transition_default = /*#__PURE__*/__webpack_require__.n(collapse_transition_);
// CONCATENATED MODULE: ./packages/menu/src/menu-mixin.js
/* harmony default export */ var menu_mixin = ({
inject: ['rootMenu'],
computed: {
indexPath: function indexPath() {
var path = [this.index];
var parent = this.$parent;
while (parent.$options.componentName !== 'ElMenu') {
if (parent.index) {
path.unshift(parent.index);
}
parent = parent.$parent;
}
return path;
},
parentMenu: function parentMenu() {
var parent = this.$parent;
while (parent && ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1) {
parent = parent.$parent;
}
return parent;
},
paddingStyle: function paddingStyle() {
if (this.rootMenu.mode !== 'vertical') return {};
var padding = 20;
var parent = this.$parent;
if (this.rootMenu.collapse) {
padding = 20;
} else {
while (parent && parent.$options.componentName !== 'ElMenu') {
if (parent.$options.componentName === 'ElSubmenu') {
padding += 20;
}
parent = parent.$parent;
}
}
return { paddingLeft: padding + 'px' };
}
}
});
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/submenu.vue?vue&type=script&lang=js&
var poperMixins = {
props: {
transformOrigin: {
type: [Boolean, String],
default: false
},
offset: vue_popper_default.a.props.offset,
boundariesPadding: vue_popper_default.a.props.boundariesPadding,
popperOptions: vue_popper_default.a.props.popperOptions
},
data: vue_popper_default.a.data,
methods: vue_popper_default.a.methods,
beforeDestroy: vue_popper_default.a.beforeDestroy,
deactivated: vue_popper_default.a.deactivated
};
/* harmony default export */ var submenuvue_type_script_lang_js_ = ({
name: 'ElSubmenu',
componentName: 'ElSubmenu',
mixins: [menu_mixin, emitter_default.a, poperMixins],
components: { ElCollapseTransition: collapse_transition_default.a },
props: {
index: {
type: String,
required: true
},
showTimeout: {
type: Number,
default: 300
},
hideTimeout: {
type: Number,
default: 300
},
popperClass: String,
disabled: Boolean,
popperAppendToBody: {
type: Boolean,
default: undefined
}
},
data: function data() {
return {
popperJS: null,
timeout: null,
items: {},
submenus: {},
mouseInChild: false
};
},
watch: {
opened: function opened(val) {
var _this = this;
if (this.isMenuPopup) {
this.$nextTick(function (_) {
_this.updatePopper();
});
}
}
},
computed: {
// popper option
appendToBody: function appendToBody() {
return this.popperAppendToBody === undefined ? this.isFirstLevel : this.popperAppendToBody;
},
menuTransitionName: function menuTransitionName() {
return this.rootMenu.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top';
},
opened: function opened() {
return this.rootMenu.openedMenus.indexOf(this.index) > -1;
},
active: function active() {
var isActive = false;
var submenus = this.submenus;
var items = this.items;
Object.keys(items).forEach(function (index) {
if (items[index].active) {
isActive = true;
}
});
Object.keys(submenus).forEach(function (index) {
if (submenus[index].active) {
isActive = true;
}
});
return isActive;
},
hoverBackground: function hoverBackground() {
return this.rootMenu.hoverBackground;
},
backgroundColor: function backgroundColor() {
return this.rootMenu.backgroundColor || '';
},
activeTextColor: function activeTextColor() {
return this.rootMenu.activeTextColor || '';
},
textColor: function textColor() {
return this.rootMenu.textColor || '';
},
mode: function mode() {
return this.rootMenu.mode;
},
isMenuPopup: function isMenuPopup() {
return this.rootMenu.isMenuPopup;
},
titleStyle: function titleStyle() {
if (this.mode !== 'horizontal') {
return {
color: this.textColor
};
}
return {
borderBottomColor: this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent',
color: this.active ? this.activeTextColor : this.textColor
};
},
isFirstLevel: function isFirstLevel() {
var isFirstLevel = true;
var parent = this.$parent;
while (parent && parent !== this.rootMenu) {
if (['ElSubmenu', 'ElMenuItemGroup'].indexOf(parent.$options.componentName) > -1) {
isFirstLevel = false;
break;
} else {
parent = parent.$parent;
}
}
return isFirstLevel;
}
},
methods: {
handleCollapseToggle: function handleCollapseToggle(value) {
if (value) {
this.initPopper();
} else {
this.doDestroy();
}
},
addItem: function addItem(item) {
this.$set(this.items, item.index, item);
},
removeItem: function removeItem(item) {
delete this.items[item.index];
},
addSubmenu: function addSubmenu(item) {
this.$set(this.submenus, item.index, item);
},
removeSubmenu: function removeSubmenu(item) {
delete this.submenus[item.index];
},
handleClick: function handleClick() {
var rootMenu = this.rootMenu,
disabled = this.disabled;
if (rootMenu.menuTrigger === 'hover' && rootMenu.mode === 'horizontal' || rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
return;
}
this.dispatch('ElMenu', 'submenu-click', this);
},
handleMouseenter: function handleMouseenter(event) {
var _this2 = this;
var showTimeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.showTimeout;
if (!('ActiveXObject' in window) && event.type === 'focus' && !event.relatedTarget) {
return;
}
var rootMenu = this.rootMenu,
disabled = this.disabled;
if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
return;
}
this.dispatch('ElSubmenu', 'mouse-enter-child');
clearTimeout(this.timeout);
this.timeout = setTimeout(function () {
_this2.rootMenu.openMenu(_this2.index, _this2.indexPath);
}, showTimeout);
if (this.appendToBody) {
this.$parent.$el.dispatchEvent(new MouseEvent('mouseenter'));
}
},
handleMouseleave: function handleMouseleave() {
var _this3 = this;
var deepDispatch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var rootMenu = this.rootMenu;
if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical') {
return;
}
this.dispatch('ElSubmenu', 'mouse-leave-child');
clearTimeout(this.timeout);
this.timeout = setTimeout(function () {
!_this3.mouseInChild && _this3.rootMenu.closeMenu(_this3.index);
}, this.hideTimeout);
if (this.appendToBody && deepDispatch) {
if (this.$parent.$options.name === 'ElSubmenu') {
this.$parent.handleMouseleave(true);
}
}
},
handleTitleMouseenter: function handleTitleMouseenter() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
var title = this.$refs['submenu-title'];
title && (title.style.backgroundColor = this.rootMenu.hoverBackground);
},
handleTitleMouseleave: function handleTitleMouseleave() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
var title = this.$refs['submenu-title'];
title && (title.style.backgroundColor = this.rootMenu.backgroundColor || '');
},
updatePlacement: function updatePlacement() {
this.currentPlacement = this.mode === 'horizontal' && this.isFirstLevel ? 'bottom-start' : 'right-start';
},
initPopper: function initPopper() {
this.referenceElm = this.$el;
this.popperElm = this.$refs.menu;
this.updatePlacement();
}
},
created: function created() {
var _this4 = this;
this.$on('toggle-collapse', this.handleCollapseToggle);
this.$on('mouse-enter-child', function () {
_this4.mouseInChild = true;
clearTimeout(_this4.timeout);
});
this.$on('mouse-leave-child', function () {
_this4.mouseInChild = false;
clearTimeout(_this4.timeout);
});
},
mounted: function mounted() {
this.parentMenu.addSubmenu(this);
this.rootMenu.addSubmenu(this);
this.initPopper();
},
beforeDestroy: function beforeDestroy() {
this.parentMenu.removeSubmenu(this);
this.rootMenu.removeSubmenu(this);
},
render: function render(h) {
var _this5 = this;
var active = this.active,
opened = this.opened,
paddingStyle = this.paddingStyle,
titleStyle = this.titleStyle,
backgroundColor = this.backgroundColor,
rootMenu = this.rootMenu,
currentPlacement = this.currentPlacement,
menuTransitionName = this.menuTransitionName,
mode = this.mode,
disabled = this.disabled,
popperClass = this.popperClass,
$slots = this.$slots,
isFirstLevel = this.isFirstLevel;
var popupMenu = h(
'transition',
{
attrs: { name: menuTransitionName }
},
[h(
'div',
{
ref: 'menu',
directives: [{
name: 'show',
value: opened
}],
'class': ['el-menu--' + mode, popperClass],
on: {
'mouseenter': function mouseenter($event) {
return _this5.handleMouseenter($event, 100);
},
'mouseleave': function mouseleave() {
return _this5.handleMouseleave(true);
},
'focus': function focus($event) {
return _this5.handleMouseenter($event, 100);
}
}
},
[h(
'ul',
{
attrs: {
role: 'menu'
},
'class': ['el-menu el-menu--popup', 'el-menu--popup-' + currentPlacement],
style: { backgroundColor: rootMenu.backgroundColor || '' } },
[$slots.default]
)]
)]
);
var inlineMenu = h('el-collapse-transition', [h(
'ul',
{
attrs: {
role: 'menu'
},
'class': 'el-menu el-menu--inline',
directives: [{
name: 'show',
value: opened
}],
style: { backgroundColor: rootMenu.backgroundColor || '' } },
[$slots.default]
)]);
var submenuTitleIcon = rootMenu.mode === 'horizontal' && isFirstLevel || rootMenu.mode === 'vertical' && !rootMenu.collapse ? 'el-icon-arrow-down' : 'el-icon-arrow-right';
return h(
'li',
{
'class': {
'el-submenu': true,
'is-active': active,
'is-opened': opened,
'is-disabled': disabled
},
attrs: { role: 'menuitem',
'aria-haspopup': 'true',
'aria-expanded': opened
},
on: {
'mouseenter': this.handleMouseenter,
'mouseleave': function mouseleave() {
return _this5.handleMouseleave(false);
},
'focus': this.handleMouseenter
}
},
[h(
'div',
{
'class': 'el-submenu__title',
ref: 'submenu-title',
on: {
'click': this.handleClick,
'mouseenter': this.handleTitleMouseenter,
'mouseleave': this.handleTitleMouseleave
},
style: [paddingStyle, titleStyle, { backgroundColor: backgroundColor }]
},
[$slots.title, h('i', { 'class': ['el-submenu__icon-arrow', submenuTitleIcon] })]
), this.isMenuPopup ? popupMenu : inlineMenu]
);
}
});
// CONCATENATED MODULE: ./packages/menu/src/submenu.vue?vue&type=script&lang=js&
/* harmony default export */ var src_submenuvue_type_script_lang_js_ = (submenuvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/menu/src/submenu.vue
var submenu_render, submenu_staticRenderFns
/* normalize component */
var submenu_component = normalizeComponent(
src_submenuvue_type_script_lang_js_,
submenu_render,
submenu_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var submenu_api; }
submenu_component.options.__file = "packages/menu/src/submenu.vue"
/* harmony default export */ var submenu = (submenu_component.exports);
// CONCATENATED MODULE: ./packages/submenu/index.js
/* istanbul ignore next */
submenu.install = function (Vue) {
Vue.component(submenu.name, submenu);
};
/* harmony default export */ var packages_submenu = (submenu);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
var menu_itemvue_type_template_id_2a5dbfea_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"li",
{
staticClass: "el-menu-item",
class: {
"is-active": _vm.active,
"is-disabled": _vm.disabled
},
style: [
_vm.paddingStyle,
_vm.itemStyle,
{ backgroundColor: _vm.backgroundColor }
],
attrs: { role: "menuitem", tabindex: "-1" },
on: {
click: _vm.handleClick,
mouseenter: _vm.onMouseEnter,
focus: _vm.onMouseEnter,
blur: _vm.onMouseLeave,
mouseleave: _vm.onMouseLeave
}
},
[
_vm.parentMenu.$options.componentName === "ElMenu" &&
_vm.rootMenu.collapse &&
_vm.$slots.title
? _c("el-tooltip", { attrs: { effect: "dark", placement: "right" } }, [
_c(
"div",
{ attrs: { slot: "content" }, slot: "content" },
[_vm._t("title")],
2
),
_c(
"div",
{
staticStyle: {
position: "absolute",
left: "0",
top: "0",
height: "100%",
width: "100%",
display: "inline-block",
"box-sizing": "border-box",
padding: "0 20px"
}
},
[_vm._t("default")],
2
)
])
: [_vm._t("default"), _vm._t("title")]
],
2
)
}
var menu_itemvue_type_template_id_2a5dbfea_staticRenderFns = []
menu_itemvue_type_template_id_2a5dbfea_render._withStripped = true
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=template&id=2a5dbfea&
// EXTERNAL MODULE: external "element-ui/lib/tooltip"
var tooltip_ = __webpack_require__(26);
var tooltip_default = /*#__PURE__*/__webpack_require__.n(tooltip_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var menu_itemvue_type_script_lang_js_ = ({
name: 'ElMenuItem',
componentName: 'ElMenuItem',
mixins: [menu_mixin, emitter_default.a],
components: { ElTooltip: tooltip_default.a },
props: {
index: {
default: null,
validator: function validator(val) {
return typeof val === 'string' || val === null;
}
},
route: [String, Object],
disabled: Boolean
},
computed: {
active: function active() {
return this.index === this.rootMenu.activeIndex;
},
hoverBackground: function hoverBackground() {
return this.rootMenu.hoverBackground;
},
backgroundColor: function backgroundColor() {
return this.rootMenu.backgroundColor || '';
},
activeTextColor: function activeTextColor() {
return this.rootMenu.activeTextColor || '';
},
textColor: function textColor() {
return this.rootMenu.textColor || '';
},
mode: function mode() {
return this.rootMenu.mode;
},
itemStyle: function itemStyle() {
var style = {
color: this.active ? this.activeTextColor : this.textColor
};
if (this.mode === 'horizontal' && !this.isNested) {
style.borderBottomColor = this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent';
}
return style;
},
isNested: function isNested() {
return this.parentMenu !== this.rootMenu;
}
},
methods: {
onMouseEnter: function onMouseEnter() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
this.$el.style.backgroundColor = this.hoverBackground;
},
onMouseLeave: function onMouseLeave() {
if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
this.$el.style.backgroundColor = this.backgroundColor;
},
handleClick: function handleClick() {
if (!this.disabled) {
this.dispatch('ElMenu', 'item-click', this);
this.$emit('click', this);
}
}
},
mounted: function mounted() {
this.parentMenu.addItem(this);
this.rootMenu.addItem(this);
},
beforeDestroy: function beforeDestroy() {
this.parentMenu.removeItem(this);
this.rootMenu.removeItem(this);
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menu_itemvue_type_script_lang_js_ = (menu_itemvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/menu/src/menu-item.vue
/* normalize component */
var menu_item_component = normalizeComponent(
src_menu_itemvue_type_script_lang_js_,
menu_itemvue_type_template_id_2a5dbfea_render,
menu_itemvue_type_template_id_2a5dbfea_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var menu_item_api; }
menu_item_component.options.__file = "packages/menu/src/menu-item.vue"
/* harmony default export */ var menu_item = (menu_item_component.exports);
// CONCATENATED MODULE: ./packages/menu-item/index.js
/* istanbul ignore next */
menu_item.install = function (Vue) {
Vue.component(menu_item.name, menu_item);
};
/* harmony default export */ var packages_menu_item = (menu_item);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
var menu_item_groupvue_type_template_id_543b7bdc_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c("li", { staticClass: "el-menu-item-group" }, [
_c(
"div",
{
staticClass: "el-menu-item-group__title",
style: { paddingLeft: _vm.levelPadding + "px" }
},
[!_vm.$slots.title ? [_vm._v(_vm._s(_vm.title))] : _vm._t("title")],
2
),
_c("ul", [_vm._t("default")], 2)
])
}
var menu_item_groupvue_type_template_id_543b7bdc_staticRenderFns = []
menu_item_groupvue_type_template_id_543b7bdc_render._withStripped = true
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=template&id=543b7bdc&
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var menu_item_groupvue_type_script_lang_js_ = ({
name: 'ElMenuItemGroup',
componentName: 'ElMenuItemGroup',
inject: ['rootMenu'],
props: {
title: {
type: String
}
},
data: function data() {
return {
paddingLeft: 20
};
},
computed: {
levelPadding: function levelPadding() {
var padding = 20;
var parent = this.$parent;
if (this.rootMenu.collapse) return 20;
while (parent && parent.$options.componentName !== 'ElMenu') {
if (parent.$options.componentName === 'ElSubmenu') {
padding += 20;
}
parent = parent.$parent;
}
return padding;
}
}
});
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue?vue&type=script&lang=js&
/* harmony default export */ var src_menu_item_groupvue_type_script_lang_js_ = (menu_item_groupvue_type_script_lang_js_);
// CONCATENATED MODULE: ./packages/menu/src/menu-item-group.vue
/* normalize component */
var menu_item_group_component = normalizeComponent(
src_menu_item_groupvue_type_script_lang_js_,
menu_item_groupvue_type_template_id_543b7bdc_render,
menu_item_groupvue_type_template_id_543b7bdc_staticRenderFns,
false,
null,
null,
null
)
/* hot reload */
if (false) { var menu_item_group_api; }
menu_item_group_component.options.__file = "packages/menu/src/menu-item-group.vue"
/* harmony default export */ var menu_item_group = (menu_item_group_component.exports);
// CONCATENATED MODULE: ./packages/menu-item-group/index.js
/* istanbul ignore next */
menu_item_group.install = function (Vue) {
Vue.component(menu_item_group.name, menu_item_group);
};
/* harmony default export */ var packages_menu_item_group = (menu_item_group);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=template&id=343dd774&
var inputvue_type_template_id_343dd774_render = function() {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"div",
{
class: [
_vm.type === "textarea" ? "el-textarea" : "el-input",
_vm.inputSize ? "el-input--" + _vm.inputSize : "",
{
"is-disabled": _vm.inputDisabled,
"is-exceed": _vm.inputExceed,
"el-input-group": _vm.$slots.prepend || _vm.$slots.append,
"el-input-group--append": _vm.$slots.append,
"el-input-group--prepend": _vm.$slots.prepend,
"el-input--prefix": _vm.$slots.prefix || _vm.prefixIcon,
"el-input--suffix":
_vm.$slots.suffix ||
_vm.suffixIcon ||
_vm.clearable ||
_vm.showPassword
}
],
on: {
mouseenter: function($event) {
_vm.hovering = true
},
mouseleave: function($event) {
_vm.hovering = false
}
}
},
[
_vm.type !== "textarea"
? [
_vm.$slots.prepend
? _c(
"div",
{ staticClass: "el-input-group__prepend" },
[_vm._t("prepend")],
2
)
: _vm._e(),
_vm.type !== "textarea"
? _c(
"input",
_vm._b(
{
ref: "input",
staticClass: "el-input__inner",
attrs: {
tabindex: _vm.tabindex,
type: _vm.showPassword
? _vm.passwordVisible
? "text"
: "password"
: _vm.type,
disabled: _vm.inputDisabled,
readonly: _vm.readonly,
autocomplete: _vm.autoComplete || _vm.autocomplete,
"aria-label": _vm.label
},
on: {
compositionstart: _vm.handleCompositionStart,
compositionupdate: _vm.handleCompositionUpdate,
compositionend: _vm.handleCompositionEnd,
input: _vm.handleInput,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
change: _vm.handleChange
}
},
"input",
_vm.$attrs,
false
)
)
: _vm._e(),
_vm.$slots.prefix || _vm.prefixIcon
? _c(
"span",
{ staticClass: "el-input__prefix" },
[
_vm._t("prefix"),
_vm.prefixIcon
? _c("i", {
staticClass: "el-input__icon",
class: _vm.prefixIcon
})
: _vm._e()
],
2
)
: _vm._e(),
_vm.getSuffixVisible()
? _c("span", { staticClass: "el-input__suffix" }, [
_c(
"span",
{ staticClass: "el-input__suffix-inner" },
[
!_vm.showClear ||
!_vm.showPwdVisible ||
!_vm.isWordLimitVisible
? [
_vm._t("suffix"),
_vm.suffixIcon
? _c("i", {
staticClass: "el-input__icon",
class: _vm.suffixIcon
})
: _vm._e()
]
: _vm._e(),
_vm.showClear
? _c("i", {
staticClass:
"el-input__icon el-icon-circle-close el-input__clear",
on: {
mousedown: function($event) {
$event.preventDefault()
},
click: _vm.clear
}
})
: _vm._e(),
_vm.showPwdVisible
? _c("i", {
staticClass:
"el-input__icon el-icon-view el-input__clear",
on: { click: _vm.handlePasswordVisible }
})
: _vm._e(),
_vm.isWordLimitVisible
? _c("span", { staticClass: "el-input__count" }, [
_c(
"span",
{ staticClass: "el-input__count-inner" },
[
_vm._v(
"\n " +
_vm._s(_vm.textLength) +
"/" +
_vm._s(_vm.upperLimit) +
"\n "
)
]
)
])
: _vm._e()
],
2
),
_vm.validateState
? _c("i", {
staticClass: "el-input__icon",
class: ["el-input__validateIcon", _vm.validateIcon]
})
: _vm._e()
])
: _vm._e(),
_vm.$slots.append
? _c(
"div",
{ staticClass: "el-input-group__append" },
[_vm._t("append")],
2
)
: _vm._e()
]
: _c(
"textarea",
_vm._b(
{
ref: "textarea",
staticClass: "el-textarea__inner",
style: _vm.textareaStyle,
attrs: {
tabindex: _vm.tabindex,
disabled: _vm.inputDisabled,
readonly: _vm.readonly,
autocomplete: _vm.autoComplete || _vm.autocomplete,
"aria-label": _vm.label
},
on: {
compositionstart: _vm.handleCompositionStart,
compositionupdate: _vm.handleCompositionUpdate,
compositionend: _vm.handleCompositionEnd,
input: _vm.handleInput,
focus: _vm.handleFocus,
blur: _vm.handleBlur,
change: _vm.handleChange
}
},
"textarea",
_vm.$attrs,
false
)
),
_vm.isWordLimitVisible && _vm.type === "textarea"
? _c("span", { staticClass: "el-input__count" }, [
_vm._v(_vm._s(_vm.textLength) + "/" + _vm._s(_vm.upperLimit))
])
: _vm._e()
],
2
)
}
var inputvue_type_template_id_343dd774_staticRenderFns = []
inputvue_type_template_id_343dd774_render._withStripped = true
// CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=template&id=343dd774&
// CONCATENATED MODULE: ./packages/input/src/calcTextareaHeight.js
var hiddenTextarea = void 0;
var HIDDEN_STYLE = '\n height:0 !important;\n visibility:hidden !important;\n overflow:hidden !important;\n position:absolute !important;\n z-index:-1000 !important;\n top:0 !important;\n right:0 !important\n';
var CONTEXT_STYLE = ['letter-spacing', 'line-height', 'padding-top', 'padding-bottom', 'font-family', 'font-weight', 'font-size', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-left', 'padding-right', 'border-width', 'box-sizing'];
function calculateNodeStyling(targetElement) {
var style = window.getComputedStyle(targetElement);
var boxSizing = style.getPropertyValue('box-sizing');
var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));
var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));
var contextStyle = CONTEXT_STYLE.map(function (name) {
return name + ':' + style.getPropertyValue(name);
}).join(';');
return { contextStyle: contextStyle, paddingSize: paddingSize, borderSize: borderSize, boxSizing: boxSizing };
}
function calcTextareaHeight(targetElement) {
var minRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
var maxRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
if (!hiddenTextarea) {
hiddenTextarea = document.createElement('textarea');
document.body.appendChild(hiddenTextarea);
}
var _calculateNodeStyling = calculateNodeStyling(targetElement),
paddingSize = _calculateNodeStyling.paddingSize,
borderSize = _calculateNodeStyling.borderSize,
boxSizing = _calculateNodeStyling.boxSizing,
contextStyle = _calculateNodeStyling.contextStyle;
hiddenTextarea.setAttribute('style', contextStyle + ';' + HIDDEN_STYLE);
hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';
var height = hiddenTextarea.scrollHeight;
var result = {};
if (boxSizing === 'border-box') {
height = height + borderSize;
} else if (boxSizing === 'content-box') {
height = height - paddingSize;
}
hiddenTextarea.value = '';
var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
if (minRows !== null) {
var minHeight = singleRowHeight * minRows;
if (boxSizing === 'border-box') {
minHeight = minHeight + paddingSize + borderSize;
}
height = Math.max(minHeight, height);
result.minHeight = minHeight + 'px';
}
if (maxRows !== null) {
var maxHeight = singleRowHeight * maxRows;
if (boxSizing === 'border-box') {
maxHeight = maxHeight + paddingSize + borderSize;
}
height = Math.min(maxHeight, height);
}
result.height = height + 'px';
hiddenTextarea.parentNode && hiddenTextarea.parentNode.removeChild(hiddenTextarea);
hiddenTextarea = null;
return result;
};
// EXTERNAL MODULE: external "element-ui/lib/utils/merge"
var merge_ = __webpack_require__(7);
var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);
// EXTERNAL MODULE: external "element-ui/lib/utils/shared"
var shared_ = __webpack_require__(19);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input/src/input.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var inputvue_type_script_lang_js_ = ({
name: 'ElInput',
componentName: 'ElInput',
mixins: [emitter_default.a, migrating_default.a],
inheritAttrs: false,
inject: {
elForm: {
default: ''
},
elFormItem: {
default: ''
}
},
data: function data() {
return {
textareaCalcStyle: {},
hovering: false,
focused: false,
isComposing: false,
passwordVisible: false
};
},
props: {
value: [String, Number],
size: String,
resize: String,
form: String,
disabled: Boolean,
readonly: Boolean,
type: {
type: String,
default: 'text'
},
autosize: {
type: [Boolean, Object],
default: false
},
autocomplete: {
type: String,
default: 'off'
},
/** @Deprecated in next major version */
autoComplete: {
type: String,
validator: function validator(val) {
false && false;
return true;
}
},
validateEvent: {
type: Boolean,
default: true
},
suffixIcon: String,
prefixIcon: String,
label: String,
clearable: {
type: Boolean,
default: false
},
showPassword: {
type: Boolean,
default: false
},
showWordLimit: {
type: Boolean,
default: false
},
tabindex: String
},
computed: {
_elFormItemSize: function _elFormItemSize() {
return (this.elFormItem || {}).elFormItemSize;
},
validateState: function validateState() {
return this.elFormItem ? this.elFormItem.validateState : '';
},
needStatusIcon: function needStatusIcon() {
return this.elForm ? this.elForm.statusIcon : false;
},
validateIcon: function validateIcon() {
return {
validating: 'el-icon-loading',
success: 'el-icon-circle-check',
error: 'el-icon-circle-close'
}[this.validateState];
},
textareaStyle: function textareaStyle() {
return merge_default()({}, this.textareaCalcStyle, { resize: this.resize });
},
inputSize: function inputSize() {
return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
},
inputDisabled: function inputDisabled() {
return this.disabled || (this.elForm || {}).disabled;
},
nativeInputValue: function nativeInputValue() {
return this.value === null || this.value === undefined ? '' : String(this.value);
},
showClear: function showClear() {
return this.clearable && !this.inputDisabled && !this.readonly && this.nativeInputValue && (this.focused || this.hovering);
},
showPwdVisible: function showPwdVisible() {
return this.showPassword && !this.inputDisabled && !this.readonly && (!!this.nativeInputValue || this.focused);
},
isWordLimitVisible: function isWordLimitVisible() {
return this.showWordLimit && this.$attrs.maxlength && (this.type === 'text' || this.type === 'textarea') && !this.inputDisabled && !this.readonly && !this.showPassword;
},
upperLimit: function upperLimit() {
return this.$attrs.maxlength;
},
textLength: function textLength() {
if (typeof this.value === 'number') {
return String(this.value).length;
}
return (this.value || '').length;
},
inputExceed: function inputExceed() {
// show exceed style if length of initial value greater then maxlength
return this.isWordLimitVisible && this.textLength > this.upperLimit;
}
},
watch: {
value: function value(val) {
this.$nextTick(this.resizeTextarea);
if (this.validateEvent) {
this.dispatch('ElFormItem', 'el.form.change', [val]);
}
},
// native input value is set explicitly
// do not use v-model / :value in template
// see: https://github.com/ElemeFE/element/issues/14521
nativeInputValue: function nativeInputValue() {
this.setNativeInputValue();
},
// when change between and