UNPKG

element-ui

Version:

A Component Library for Vue.js.

406 lines (330 loc) 10.6 kB
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] = { /******/ exports: {}, /******/ id: moduleId, /******/ loaded: false /******/ }; /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ // Flag the module as loaded /******/ module.loaded = 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; /******/ // __webpack_public_path__ /******/ __webpack_require__.p = "/dist/"; /******/ // Load entry module and return exports /******/ return __webpack_require__(0); /******/ }) /************************************************************************/ /******/ ({ /***/ 0: /***/ function(module, exports, __webpack_require__) { module.exports = __webpack_require__(216); /***/ }, /***/ 3: /***/ function(module, exports) { /* globals __VUE_SSR_CONTEXT__ */ // this module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle module.exports = function normalizeComponent ( rawScriptExports, compiledTemplate, injectStyles, scopeId, moduleIdentifier /* server only */ ) { var esModule var scriptExports = rawScriptExports = rawScriptExports || {} // ES6 modules interop var type = typeof rawScriptExports.default if (type === 'object' || type === 'function') { esModule = rawScriptExports scriptExports = rawScriptExports.default } // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (compiledTemplate) { options.render = compiledTemplate.render options.staticRenderFns = compiledTemplate.staticRenderFns } // scopedId if (scopeId) { options._scopeId = scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || (this.$vnode && this.$vnode.ssrContext) // 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 = injectStyles } if (hook) { // inject component registration as beforeCreate hook var existing = options.beforeCreate options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } return { esModule: esModule, exports: scriptExports, options: options } } /***/ }, /***/ 14: /***/ function(module, exports) { module.exports = require("element-ui/lib/mixins/emitter"); /***/ }, /***/ 216: /***/ function(module, exports, __webpack_require__) { 'use strict'; exports.__esModule = true; var _option = __webpack_require__(217); var _option2 = _interopRequireDefault(_option); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* istanbul ignore next */ _option2.default.install = function (Vue) { Vue.component(_option2.default.name, _option2.default); }; exports.default = _option2.default; /***/ }, /***/ 217: /***/ function(module, exports, __webpack_require__) { var Component = __webpack_require__(3)( /* script */ __webpack_require__(218), /* template */ __webpack_require__(220), /* styles */ null, /* scopeId */ null, /* moduleIdentifier (server only) */ null ) module.exports = Component.exports /***/ }, /***/ 218: /***/ function(module, exports, __webpack_require__) { 'use strict'; exports.__esModule = true; 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; }; // // // // // // // // // // // // // // // // // var _emitter = __webpack_require__(14); var _emitter2 = _interopRequireDefault(_emitter); var _util = __webpack_require__(219); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = { mixins: [_emitter2.default], name: 'ElOption', componentName: 'ElOption', props: { value: { required: true }, label: [String, Number], created: Boolean, disabled: { type: Boolean, default: false } }, data: function data() { return { index: -1, groupDisabled: false, visible: true, hitState: false }; }, computed: { isObject: function isObject() { return Object.prototype.toString.call(this.value).toLowerCase() === '[object object]'; }, currentLabel: function currentLabel() { return this.label || (this.isObject ? '' : this.value); }, currentValue: function currentValue() { return this.value || this.label || ''; }, parent: function parent() { var result = this.$parent; while (!result.isSelect) { result = result.$parent; } return result; }, itemSelected: function itemSelected() { if (!this.parent.multiple) { return this.isEqual(this.value, this.parent.value); } else { return this.contains(this.parent.value, this.value); } }, limitReached: function limitReached() { if (this.parent.multiple) { return !this.itemSelected && this.parent.value.length >= this.parent.multipleLimit && this.parent.multipleLimit > 0; } else { return false; } } }, watch: { currentLabel: function currentLabel() { if (!this.created && !this.parent.remote) this.dispatch('ElSelect', 'setSelected'); }, value: function value() { if (!this.created && !this.parent.remote) this.dispatch('ElSelect', 'setSelected'); } }, methods: { isEqual: function isEqual(a, b) { if (!this.isObject) { return a === b; } else { var valueKey = this.parent.valueKey; return (0, _util.getValueByPath)(a, valueKey) === (0, _util.getValueByPath)(b, valueKey); } }, contains: function contains() { var _this = this; var arr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var target = arguments[1]; if (!this.isObject) { return arr.indexOf(target) > -1; } else { var _ret = function () { var valueKey = _this.parent.valueKey; return { v: arr.some(function (item) { return (0, _util.getValueByPath)(item, valueKey) === (0, _util.getValueByPath)(target, valueKey); }) }; }(); if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === "object") return _ret.v; } }, handleGroupDisabled: function handleGroupDisabled(val) { this.groupDisabled = val; }, hoverItem: function hoverItem() { if (!this.disabled && !this.groupDisabled) { this.parent.hoverIndex = this.parent.options.indexOf(this); } }, selectOptionClick: function selectOptionClick() { if (this.disabled !== true && this.groupDisabled !== true) { this.dispatch('ElSelect', 'handleOptionClick', this); } }, queryChange: function queryChange(query) { // query 里如果有正则中的特殊字符,需要先将这些字符转义 var parsedQuery = String(query).replace(/(\^|\(|\)|\[|\]|\$|\*|\+|\.|\?|\\|\{|\}|\|)/g, '\\$1'); this.visible = new RegExp(parsedQuery, 'i').test(this.currentLabel) || this.created; if (!this.visible) { this.parent.filteredOptionsCount--; } }, resetIndex: function resetIndex() { var _this2 = this; this.$nextTick(function () { _this2.index = _this2.parent.options.indexOf(_this2); }); } }, created: function created() { this.parent.options.push(this); this.parent.cachedOptions.push(this); this.parent.optionsCount++; this.parent.filteredOptionsCount++; this.index = this.parent.options.indexOf(this); this.$on('queryChange', this.queryChange); this.$on('handleGroupDisabled', this.handleGroupDisabled); this.$on('resetIndex', this.resetIndex); }, beforeDestroy: function beforeDestroy() { this.dispatch('ElSelect', 'onOptionDestroy', this); } }; /***/ }, /***/ 219: /***/ function(module, exports) { module.exports = require("element-ui/lib/utils/util"); /***/ }, /***/ 220: /***/ function(module, exports) { module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; return _c('li', { directives: [{ name: "show", rawName: "v-show", value: (_vm.visible), expression: "visible" }], staticClass: "el-select-dropdown__item", class: { 'selected': _vm.itemSelected, 'is-disabled': _vm.disabled || _vm.groupDisabled || _vm.limitReached, 'hover': _vm.parent.hoverIndex === _vm.index }, on: { "mouseenter": _vm.hoverItem, "click": function($event) { $event.stopPropagation(); _vm.selectOptionClick($event) } } }, [_vm._t("default", [_c('span', [_vm._v(_vm._s(_vm.currentLabel))])])], 2) },staticRenderFns: []} /***/ } /******/ });