{"ast":null,"code":"module.exports = /******/function (modules) {\n // webpackBootstrap\n /******/ // The module cache\n /******/\n var installedModules = {};\n /******/\n /******/ // The require function\n /******/\n function __webpack_require__(moduleId) {\n /******/\n /******/ // Check if module is in cache\n /******/if (installedModules[moduleId]) {\n /******/return installedModules[moduleId].exports;\n /******/\n }\n /******/ // Create a new module (and put it into the cache)\n /******/\n var module = installedModules[moduleId] = {\n /******/i: moduleId,\n /******/l: false,\n /******/exports: {}\n /******/\n };\n /******/\n /******/ // Execute the module function\n /******/\n modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n /******/\n /******/ // Flag the module as loaded\n /******/\n module.l = true;\n /******/\n /******/ // Return the exports of the module\n /******/\n return module.exports;\n /******/\n }\n /******/\n /******/\n /******/ // expose the modules object (__webpack_modules__)\n /******/\n __webpack_require__.m = modules;\n /******/\n /******/ // expose the module cache\n /******/\n __webpack_require__.c = installedModules;\n /******/\n /******/ // define getter function for harmony exports\n /******/\n __webpack_require__.d = function (exports, name, getter) {\n /******/if (!__webpack_require__.o(exports, name)) {\n /******/Object.defineProperty(exports, name, {\n enumerable: true,\n get: getter\n });\n /******/\n }\n /******/\n };\n /******/\n /******/ // define __esModule on exports\n /******/\n __webpack_require__.r = function (exports) {\n /******/if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n /******/Object.defineProperty(exports, Symbol.toStringTag, {\n value: 'Module'\n });\n /******/\n }\n /******/\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n /******/\n };\n /******/\n /******/ // create a fake namespace object\n /******/ // mode & 1: value is a module id, require it\n /******/ // mode & 2: merge all properties of value into the ns\n /******/ // mode & 4: return value when already ns object\n /******/ // mode & 8|1: behave like require\n /******/\n __webpack_require__.t = function (value, mode) {\n /******/if (mode & 1) value = __webpack_require__(value);\n /******/\n if (mode & 8) return value;\n /******/\n if (mode & 4 && typeof value === 'object' && value && value.__esModule) return value;\n /******/\n var ns = Object.create(null);\n /******/\n __webpack_require__.r(ns);\n /******/\n Object.defineProperty(ns, 'default', {\n enumerable: true,\n value: value\n });\n /******/\n if (mode & 2 && typeof value != 'string') for (var key in value) __webpack_require__.d(ns, key, function (key) {\n return value[key];\n }.bind(null, key));\n /******/\n return ns;\n /******/\n };\n /******/\n /******/ // getDefaultExport function for compatibility with non-harmony modules\n /******/\n __webpack_require__.n = function (module) {\n /******/var getter = module && module.__esModule ? /******/function getDefault() {\n return module['default'];\n } : /******/function getModuleExports() {\n return module;\n };\n /******/\n __webpack_require__.d(getter, 'a', getter);\n /******/\n return getter;\n /******/\n };\n /******/\n /******/ // Object.prototype.hasOwnProperty.call\n /******/\n __webpack_require__.o = function (object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n };\n /******/\n /******/ // __webpack_public_path__\n /******/\n __webpack_require__.p = \"/dist/\";\n /******/\n /******/\n /******/ // Load entry module and return exports\n /******/\n return __webpack_require__(__webpack_require__.s = 75);\n /******/\n}\n/************************************************************************/\n/******/({\n /***/0: /***/function (module, __webpack_exports__, __webpack_require__) {\n \"use strict\";\n\n /* harmony export (binding) */\n __webpack_require__.d(__webpack_exports__, \"a\", function () {\n return normalizeComponent;\n });\n /* globals __VUE_SSR_CONTEXT__ */\n\n // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n // This module is a runtime utility for cleaner component module output and will\n // be included in the final webpack user bundle.\n\n function normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports;\n\n // render functions\n if (render) {\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true;\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId;\n }\n var hook;\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context = context ||\n // cached call\n this.$vnode && this.$vnode.ssrContext ||\n // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context);\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n };\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook;\n } else if (injectStyles) {\n hook = shadowMode ? function () {\n injectStyles.call(this, this.$root.$options.shadowRoot);\n } : injectStyles;\n }\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook;\n // register for functioal component in vue file\n var originalRender = options.render;\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n return {\n exports: scriptExports,\n options: options\n };\n }\n\n /***/\n },\n\n /***/11: /***/function (module, exports) {\n module.exports = require(\"element-ui/lib/mixins/migrating\");\n\n /***/\n },\n\n /***/21: /***/function (module, exports) {\n module.exports = require(\"element-ui/lib/utils/shared\");\n\n /***/\n },\n\n /***/4: /***/function (module, exports) {\n module.exports = require(\"element-ui/lib/mixins/emitter\");\n\n /***/\n },\n\n /***/75: /***/function (module, __webpack_exports__, __webpack_require__) {\n \"use strict\";\n\n __webpack_require__.r(__webpack_exports__);\n\n // 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&\n var render = function () {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _c(\"div\", {\n class: [_vm.type === \"textarea\" ? \"el-textarea\" : \"el-input\", _vm.inputSize ? \"el-input--\" + _vm.inputSize : \"\", {\n \"is-disabled\": _vm.inputDisabled,\n \"is-exceed\": _vm.inputExceed,\n \"el-input-group\": _vm.$slots.prepend || _vm.$slots.append,\n \"el-input-group--append\": _vm.$slots.append,\n \"el-input-group--prepend\": _vm.$slots.prepend,\n \"el-input--prefix\": _vm.$slots.prefix || _vm.prefixIcon,\n \"el-input--suffix\": _vm.$slots.suffix || _vm.suffixIcon || _vm.clearable || _vm.showPassword\n }],\n on: {\n mouseenter: function ($event) {\n _vm.hovering = true;\n },\n mouseleave: function ($event) {\n _vm.hovering = false;\n }\n }\n }, [_vm.type !== \"textarea\" ? [_vm.$slots.prepend ? _c(\"div\", {\n staticClass: \"el-input-group__prepend\"\n }, [_vm._t(\"prepend\")], 2) : _vm._e(), _vm.type !== \"textarea\" ? _c(\"input\", _vm._b({\n ref: \"input\",\n staticClass: \"el-input__inner\",\n attrs: {\n tabindex: _vm.tabindex,\n type: _vm.showPassword ? _vm.passwordVisible ? \"text\" : \"password\" : _vm.type,\n disabled: _vm.inputDisabled,\n readonly: _vm.readonly,\n autocomplete: _vm.autoComplete || _vm.autocomplete,\n \"aria-label\": _vm.label\n },\n on: {\n compositionstart: _vm.handleCompositionStart,\n compositionupdate: _vm.handleCompositionUpdate,\n compositionend: _vm.handleCompositionEnd,\n input: _vm.handleInput,\n focus: _vm.handleFocus,\n blur: _vm.handleBlur,\n change: _vm.handleChange\n }\n }, \"input\", _vm.$attrs, false)) : _vm._e(), _vm.$slots.prefix || _vm.prefixIcon ? _c(\"span\", {\n staticClass: \"el-input__prefix\"\n }, [_vm._t(\"prefix\"), _vm.prefixIcon ? _c(\"i\", {\n staticClass: \"el-input__icon\",\n class: _vm.prefixIcon\n }) : _vm._e()], 2) : _vm._e(), _vm.getSuffixVisible() ? _c(\"span\", {\n staticClass: \"el-input__suffix\"\n }, [_c(\"span\", {\n staticClass: \"el-input__suffix-inner\"\n }, [!_vm.showClear || !_vm.showPwdVisible || !_vm.isWordLimitVisible ? [_vm._t(\"suffix\"), _vm.suffixIcon ? _c(\"i\", {\n staticClass: \"el-input__icon\",\n class: _vm.suffixIcon\n }) : _vm._e()] : _vm._e(), _vm.showClear ? _c(\"i\", {\n staticClass: \"el-input__icon el-icon-circle-close el-input__clear\",\n on: {\n mousedown: function ($event) {\n $event.preventDefault();\n },\n click: _vm.clear\n }\n }) : _vm._e(), _vm.showPwdVisible ? _c(\"i\", {\n staticClass: \"el-input__icon el-icon-view el-input__clear\",\n on: {\n click: _vm.handlePasswordVisible\n }\n }) : _vm._e(), _vm.isWordLimitVisible ? _c(\"span\", {\n staticClass: \"el-input__count\"\n }, [_c(\"span\", {\n staticClass: \"el-input__count-inner\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.textLength) + \"/\" + _vm._s(_vm.upperLimit) + \"\\n \")])]) : _vm._e()], 2), _vm.validateState ? _c(\"i\", {\n staticClass: \"el-input__icon\",\n class: [\"el-input__validateIcon\", _vm.validateIcon]\n }) : _vm._e()]) : _vm._e(), _vm.$slots.append ? _c(\"div\", {\n staticClass: \"el-input-group__append\"\n }, [_vm._t(\"append\")], 2) : _vm._e()] : _c(\"textarea\", _vm._b({\n ref: \"textarea\",\n staticClass: \"el-textarea__inner\",\n style: _vm.textareaStyle,\n attrs: {\n tabindex: _vm.tabindex,\n disabled: _vm.inputDisabled,\n readonly: _vm.readonly,\n autocomplete: _vm.autoComplete || _vm.autocomplete,\n \"aria-label\": _vm.label\n },\n on: {\n compositionstart: _vm.handleCompositionStart,\n compositionupdate: _vm.handleCompositionUpdate,\n compositionend: _vm.handleCompositionEnd,\n input: _vm.handleInput,\n focus: _vm.handleFocus,\n blur: _vm.handleBlur,\n change: _vm.handleChange\n }\n }, \"textarea\", _vm.$attrs, false)), _vm.isWordLimitVisible && _vm.type === \"textarea\" ? _c(\"span\", {\n staticClass: \"el-input__count\"\n }, [_vm._v(_vm._s(_vm.textLength) + \"/\" + _vm._s(_vm.upperLimit))]) : _vm._e()], 2);\n };\n var staticRenderFns = [];\n render._withStripped = true;\n\n // CONCATENATED MODULE: ./packages/input/src/input.vue?vue&type=template&id=343dd774&\n\n // EXTERNAL MODULE: external \"element-ui/lib/mixins/emitter\"\n var emitter_ = __webpack_require__(4);\n var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);\n\n // EXTERNAL MODULE: external \"element-ui/lib/mixins/migrating\"\n var migrating_ = __webpack_require__(11);\n var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);\n\n // CONCATENATED MODULE: ./packages/input/src/calcTextareaHeight.js\n var hiddenTextarea = void 0;\n 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';\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'];\n function calculateNodeStyling(targetElement) {\n var style = window.getComputedStyle(targetElement);\n var boxSizing = style.getPropertyValue('box-sizing');\n var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));\n var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));\n var contextStyle = CONTEXT_STYLE.map(function (name) {\n return name + ':' + style.getPropertyValue(name);\n }).join(';');\n return {\n contextStyle: contextStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n }\n function calcTextareaHeight(targetElement) {\n var minRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var maxRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement('textarea');\n document.body.appendChild(hiddenTextarea);\n }\n var _calculateNodeStyling = calculateNodeStyling(targetElement),\n paddingSize = _calculateNodeStyling.paddingSize,\n borderSize = _calculateNodeStyling.borderSize,\n boxSizing = _calculateNodeStyling.boxSizing,\n contextStyle = _calculateNodeStyling.contextStyle;\n hiddenTextarea.setAttribute('style', contextStyle + ';' + HIDDEN_STYLE);\n hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';\n var height = hiddenTextarea.scrollHeight;\n var result = {};\n if (boxSizing === 'border-box') {\n height = height + borderSize;\n } else if (boxSizing === 'content-box') {\n height = height - paddingSize;\n }\n hiddenTextarea.value = '';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n if (minRows !== null) {\n var minHeight = singleRowHeight * minRows;\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n height = Math.max(minHeight, height);\n result.minHeight = minHeight + 'px';\n }\n if (maxRows !== null) {\n var maxHeight = singleRowHeight * maxRows;\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n height = Math.min(maxHeight, height);\n }\n result.height = height + 'px';\n hiddenTextarea.parentNode && hiddenTextarea.parentNode.removeChild(hiddenTextarea);\n hiddenTextarea = null;\n return result;\n }\n ;\n // EXTERNAL MODULE: external \"element-ui/lib/utils/merge\"\n var merge_ = __webpack_require__(9);\n var merge_default = /*#__PURE__*/__webpack_require__.n(merge_);\n\n // EXTERNAL MODULE: external \"element-ui/lib/utils/shared\"\n var shared_ = __webpack_require__(21);\n\n // 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&\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n //\n\n /* harmony default export */\n var inputvue_type_script_lang_js_ = {\n name: 'ElInput',\n componentName: 'ElInput',\n mixins: [emitter_default.a, migrating_default.a],\n inheritAttrs: false,\n inject: {\n elForm: {\n default: ''\n },\n elFormItem: {\n default: ''\n }\n },\n data: function data() {\n return {\n textareaCalcStyle: {},\n hovering: false,\n focused: false,\n isComposing: false,\n passwordVisible: false\n };\n },\n props: {\n value: [String, Number],\n size: String,\n resize: String,\n form: String,\n disabled: Boolean,\n readonly: Boolean,\n type: {\n type: String,\n default: 'text'\n },\n autosize: {\n type: [Boolean, Object],\n default: false\n },\n autocomplete: {\n type: String,\n default: 'off'\n },\n /** @Deprecated in next major version */\n autoComplete: {\n type: String,\n validator: function validator(val) {\n false && false;\n return true;\n }\n },\n validateEvent: {\n type: Boolean,\n default: true\n },\n suffixIcon: String,\n prefixIcon: String,\n label: String,\n clearable: {\n type: Boolean,\n default: false\n },\n showPassword: {\n type: Boolean,\n default: false\n },\n showWordLimit: {\n type: Boolean,\n default: false\n },\n tabindex: String\n },\n computed: {\n _elFormItemSize: function _elFormItemSize() {\n return (this.elFormItem || {}).elFormItemSize;\n },\n validateState: function validateState() {\n return this.elFormItem ? this.elFormItem.validateState : '';\n },\n needStatusIcon: function needStatusIcon() {\n return this.elForm ? this.elForm.statusIcon : false;\n },\n validateIcon: function validateIcon() {\n return {\n validating: 'el-icon-loading',\n success: 'el-icon-circle-check',\n error: 'el-icon-circle-close'\n }[this.validateState];\n },\n textareaStyle: function textareaStyle() {\n return merge_default()({}, this.textareaCalcStyle, {\n resize: this.resize\n });\n },\n inputSize: function inputSize() {\n return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;\n },\n inputDisabled: function inputDisabled() {\n return this.disabled || (this.elForm || {}).disabled;\n },\n nativeInputValue: function nativeInputValue() {\n return this.value === null || this.value === undefined ? '' : String(this.value);\n },\n showClear: function showClear() {\n return this.clearable && !this.inputDisabled && !this.readonly && this.nativeInputValue && (this.focused || this.hovering);\n },\n showPwdVisible: function showPwdVisible() {\n return this.showPassword && !this.inputDisabled && !this.readonly && (!!this.nativeInputValue || this.focused);\n },\n isWordLimitVisible: function isWordLimitVisible() {\n return this.showWordLimit && this.$attrs.maxlength && (this.type === 'text' || this.type === 'textarea') && !this.inputDisabled && !this.readonly && !this.showPassword;\n },\n upperLimit: function upperLimit() {\n return this.$attrs.maxlength;\n },\n textLength: function textLength() {\n if (typeof this.value === 'number') {\n return String(this.value).length;\n }\n return (this.value || '').length;\n },\n inputExceed: function inputExceed() {\n // show exceed style if length of initial value greater then maxlength\n return this.isWordLimitVisible && this.textLength > this.upperLimit;\n }\n },\n watch: {\n value: function value(val) {\n this.$nextTick(this.resizeTextarea);\n if (this.validateEvent) {\n this.dispatch('ElFormItem', 'el.form.change', [val]);\n }\n },\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n nativeInputValue: function nativeInputValue() {\n this.setNativeInputValue();\n },\n // when change between and