{"ast":null,"code":"import _mergeJSXProps2 from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\n// Utils\nimport { resetScroll } from '../utils/dom/reset-scroll';\nimport { formatNumber } from '../utils/format/number';\nimport { preventDefault } from '../utils/dom/event';\nimport { getRootScrollTop, setRootScrollTop } from '../utils/dom/scroll';\nimport { isDef, addUnit, isObject, isPromise, isFunction, createNamespace } from '../utils'; // Components\n\nimport Icon from '../icon';\nimport Cell from '../cell';\nimport { cellProps } from '../cell/shared';\nvar _createNamespace = createNamespace('field'),\n createComponent = _createNamespace[0],\n bem = _createNamespace[1];\nexport default createComponent({\n inheritAttrs: false,\n provide: function provide() {\n return {\n vanField: this\n };\n },\n inject: {\n vanForm: {\n default: null\n }\n },\n props: _extends({}, cellProps, {\n name: String,\n rules: Array,\n disabled: {\n type: Boolean,\n default: null\n },\n readonly: {\n type: Boolean,\n default: null\n },\n autosize: [Boolean, Object],\n leftIcon: String,\n rightIcon: String,\n clearable: Boolean,\n formatter: Function,\n maxlength: [Number, String],\n labelWidth: [Number, String],\n labelClass: null,\n labelAlign: String,\n inputAlign: String,\n placeholder: String,\n errorMessage: String,\n errorMessageAlign: String,\n showWordLimit: Boolean,\n value: {\n type: [Number, String],\n default: ''\n },\n type: {\n type: String,\n default: 'text'\n },\n error: {\n type: Boolean,\n default: null\n },\n colon: {\n type: Boolean,\n default: null\n },\n clearTrigger: {\n type: String,\n default: 'focus'\n },\n formatTrigger: {\n type: String,\n default: 'onChange'\n }\n }),\n data: function data() {\n return {\n focused: false,\n validateFailed: false,\n validateMessage: ''\n };\n },\n watch: {\n value: function value() {\n this.updateValue(this.value);\n this.resetValidation();\n this.validateWithTrigger('onChange');\n this.$nextTick(this.adjustSize);\n }\n },\n mounted: function mounted() {\n this.updateValue(this.value, this.formatTrigger);\n this.$nextTick(this.adjustSize);\n if (this.vanForm) {\n this.vanForm.addField(this);\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.vanForm) {\n this.vanForm.removeField(this);\n }\n },\n computed: {\n showClear: function showClear() {\n var readonly = this.getProp('readonly');\n if (this.clearable && !readonly) {\n var hasValue = isDef(this.value) && this.value !== '';\n var trigger = this.clearTrigger === 'always' || this.clearTrigger === 'focus' && this.focused;\n return hasValue && trigger;\n }\n },\n showError: function showError() {\n if (this.error !== null) {\n return this.error;\n }\n if (this.vanForm && this.vanForm.showError && this.validateFailed) {\n return true;\n }\n },\n listeners: function listeners() {\n return _extends({}, this.$listeners, {\n blur: this.onBlur,\n focus: this.onFocus,\n input: this.onInput,\n click: this.onClickInput,\n keypress: this.onKeypress\n });\n },\n labelStyle: function labelStyle() {\n var labelWidth = this.getProp('labelWidth');\n if (labelWidth) {\n return {\n width: addUnit(labelWidth)\n };\n }\n },\n formValue: function formValue() {\n if (this.children && (this.$scopedSlots.input || this.$slots.input)) {\n return this.children.value;\n }\n return this.value;\n }\n },\n methods: {\n // @exposed-api\n focus: function focus() {\n if (this.$refs.input) {\n this.$refs.input.focus();\n }\n },\n // @exposed-api\n blur: function blur() {\n if (this.$refs.input) {\n this.$refs.input.blur();\n }\n },\n runValidator: function runValidator(value, rule) {\n return new Promise(function (resolve) {\n var returnVal = rule.validator(value, rule);\n if (isPromise(returnVal)) {\n return returnVal.then(resolve);\n }\n resolve(returnVal);\n });\n },\n isEmptyValue: function isEmptyValue(value) {\n if (Array.isArray(value)) {\n return !value.length;\n }\n if (value === 0) {\n return false;\n }\n return !value;\n },\n runSyncRule: function runSyncRule(value, rule) {\n if (rule.required && this.isEmptyValue(value)) {\n return false;\n }\n if (rule.pattern && !rule.pattern.test(value)) {\n return false;\n }\n return true;\n },\n getRuleMessage: function getRuleMessage(value, rule) {\n var message = rule.message;\n if (isFunction(message)) {\n return message(value, rule);\n }\n return message;\n },\n runRules: function runRules(rules) {\n var _this = this;\n return rules.reduce(function (promise, rule) {\n return promise.then(function () {\n if (_this.validateFailed) {\n return;\n }\n var value = _this.formValue;\n if (rule.formatter) {\n value = rule.formatter(value, rule);\n }\n if (!_this.runSyncRule(value, rule)) {\n _this.validateFailed = true;\n _this.validateMessage = _this.getRuleMessage(value, rule);\n return;\n }\n if (rule.validator) {\n return _this.runValidator(value, rule).then(function (result) {\n if (result === false) {\n _this.validateFailed = true;\n _this.validateMessage = _this.getRuleMessage(value, rule);\n }\n });\n }\n });\n }, Promise.resolve());\n },\n validate: function validate(rules) {\n var _this2 = this;\n if (rules === void 0) {\n rules = this.rules;\n }\n return new Promise(function (resolve) {\n if (!rules) {\n resolve();\n }\n _this2.resetValidation();\n _this2.runRules(rules).then(function () {\n if (_this2.validateFailed) {\n resolve({\n name: _this2.name,\n message: _this2.validateMessage\n });\n } else {\n resolve();\n }\n });\n });\n },\n validateWithTrigger: function validateWithTrigger(trigger) {\n if (this.vanForm && this.rules) {\n var defaultTrigger = this.vanForm.validateTrigger === trigger;\n var rules = this.rules.filter(function (rule) {\n if (rule.trigger) {\n return rule.trigger === trigger;\n }\n return defaultTrigger;\n });\n if (rules.length) {\n this.validate(rules);\n }\n }\n },\n resetValidation: function resetValidation() {\n if (this.validateFailed) {\n this.validateFailed = false;\n this.validateMessage = '';\n }\n },\n updateValue: function updateValue(value, trigger) {\n if (trigger === void 0) {\n trigger = 'onChange';\n }\n value = isDef(value) ? String(value) : ''; // native maxlength have incorrect line-break counting\n // see: https://github.com/vant-ui/vant/issues/5033\n\n var maxlength = this.maxlength;\n if (isDef(maxlength) && value.length > maxlength) {\n if (this.value && this.value.length === +maxlength) {\n value = this.value;\n } else {\n value = value.slice(0, maxlength);\n }\n }\n if (this.type === 'number' || this.type === 'digit') {\n var isNumber = this.type === 'number';\n value = formatNumber(value, isNumber, isNumber);\n }\n if (this.formatter && trigger === this.formatTrigger) {\n value = this.formatter(value);\n }\n var input = this.$refs.input;\n if (input && value !== input.value) {\n input.value = value;\n }\n if (value !== this.value) {\n this.$emit('input', value);\n }\n },\n onInput: function onInput(event) {\n // not update v-model when composing\n if (event.target.composing) {\n return;\n }\n this.updateValue(event.target.value);\n },\n onFocus: function onFocus(event) {\n this.focused = true;\n this.$emit('focus', event); // https://github.com/vant-ui/vant/issues/9715\n\n this.$nextTick(this.adjustSize); // readonly not work in legacy mobile safari\n\n /* istanbul ignore if */\n\n if (this.getProp('readonly')) {\n this.blur();\n }\n },\n onBlur: function onBlur(event) {\n if (this.getProp('readonly')) {\n return;\n }\n this.focused = false;\n this.updateValue(this.value, 'onBlur');\n this.$emit('blur', event);\n this.validateWithTrigger('onBlur');\n this.$nextTick(this.adjustSize);\n resetScroll();\n },\n onClick: function onClick(event) {\n this.$emit('click', event);\n },\n onClickInput: function onClickInput(event) {\n this.$emit('click-input', event);\n },\n onClickLeftIcon: function onClickLeftIcon(event) {\n this.$emit('click-left-icon', event);\n },\n onClickRightIcon: function onClickRightIcon(event) {\n this.$emit('click-right-icon', event);\n },\n onClear: function onClear(event) {\n preventDefault(event);\n this.$emit('input', '');\n this.$emit('clear', event);\n },\n onKeypress: function onKeypress(event) {\n var ENTER_CODE = 13;\n if (event.keyCode === ENTER_CODE) {\n var submitOnEnter = this.getProp('submitOnEnter');\n if (!submitOnEnter && this.type !== 'textarea') {\n preventDefault(event);\n } // trigger blur after click keyboard search button\n\n if (this.type === 'search') {\n this.blur();\n }\n }\n this.$emit('keypress', event);\n },\n adjustSize: function adjustSize() {\n var input = this.$refs.input;\n if (!(this.type === 'textarea' && this.autosize) || !input) {\n return;\n }\n var scrollTop = getRootScrollTop();\n input.style.height = 'auto';\n var height = input.scrollHeight;\n if (isObject(this.autosize)) {\n var _this$autosize = this.autosize,\n maxHeight = _this$autosize.maxHeight,\n minHeight = _this$autosize.minHeight;\n if (maxHeight) {\n height = Math.min(height, maxHeight);\n }\n if (minHeight) {\n height = Math.max(height, minHeight);\n }\n }\n if (height) {\n input.style.height = height + 'px'; // https://github.com/vant-ui/vant/issues/9178\n\n setRootScrollTop(scrollTop);\n }\n },\n genInput: function genInput() {\n var h = this.$createElement;\n var type = this.type;\n var disabled = this.getProp('disabled');\n var readonly = this.getProp('readonly');\n var inputSlot = this.slots('input');\n var inputAlign = this.getProp('inputAlign');\n if (inputSlot) {\n return h(\"div\", {\n \"class\": bem('control', [inputAlign, 'custom']),\n \"on\": {\n \"click\": this.onClickInput\n }\n }, [inputSlot]);\n }\n var inputProps = {\n ref: 'input',\n class: bem('control', inputAlign),\n domProps: {\n value: this.value\n },\n attrs: _extends({}, this.$attrs, {\n name: this.name,\n disabled: disabled,\n readonly: readonly,\n placeholder: this.placeholder\n }),\n on: this.listeners,\n // add model directive to skip IME composition\n directives: [{\n name: 'model',\n value: this.value\n }]\n };\n if (type === 'textarea') {\n return h(\"textarea\", _mergeJSXProps([{}, inputProps]));\n }\n var inputType = type;\n var inputMode; // type=\"number\" is weird in iOS, and can't prevent dot in Android\n // so use inputmode to set keyboard in modern browsers\n\n if (type === 'number') {\n inputType = 'text';\n inputMode = 'decimal';\n }\n if (type === 'digit') {\n inputType = 'tel';\n inputMode = 'numeric';\n }\n return h(\"input\", _mergeJSXProps2([{\n \"attrs\": {\n \"type\": inputType,\n \"inputmode\": inputMode\n }\n }, inputProps]));\n },\n genLeftIcon: function genLeftIcon() {\n var h = this.$createElement;\n var showLeftIcon = this.slots('left-icon') || this.leftIcon;\n if (showLeftIcon) {\n return h(\"div\", {\n \"class\": bem('left-icon'),\n \"on\": {\n \"click\": this.onClickLeftIcon\n }\n }, [this.slots('left-icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.leftIcon,\n \"classPrefix\": this.iconPrefix\n }\n })]);\n }\n },\n genRightIcon: function genRightIcon() {\n var h = this.$createElement;\n var slots = this.slots;\n var showRightIcon = slots('right-icon') || this.rightIcon;\n if (showRightIcon) {\n return h(\"div\", {\n \"class\": bem('right-icon'),\n \"on\": {\n \"click\": this.onClickRightIcon\n }\n }, [slots('right-icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.rightIcon,\n \"classPrefix\": this.iconPrefix\n }\n })]);\n }\n },\n genWordLimit: function genWordLimit() {\n var h = this.$createElement;\n if (this.showWordLimit && this.maxlength) {\n var count = (this.value || '').length;\n return h(\"div\", {\n \"class\": bem('word-limit')\n }, [h(\"span\", {\n \"class\": bem('word-num')\n }, [count]), \"/\", this.maxlength]);\n }\n },\n genMessage: function genMessage() {\n var h = this.$createElement;\n if (this.vanForm && this.vanForm.showErrorMessage === false) {\n return;\n }\n var message = this.errorMessage || this.validateMessage;\n if (message) {\n var errorMessageAlign = this.getProp('errorMessageAlign');\n return h(\"div\", {\n \"class\": bem('error-message', errorMessageAlign)\n }, [message]);\n }\n },\n getProp: function getProp(key) {\n if (isDef(this[key])) {\n return this[key];\n }\n if (this.vanForm && isDef(this.vanForm[key])) {\n return this.vanForm[key];\n }\n },\n genLabel: function genLabel() {\n var h = this.$createElement;\n var colon = this.getProp('colon') ? ':' : '';\n if (this.slots('label')) {\n return [this.slots('label'), colon];\n }\n if (this.label) {\n return h(\"span\", [this.label + colon]);\n }\n }\n },\n render: function render() {\n var _bem;\n var h = arguments[0];\n var slots = this.slots;\n var disabled = this.getProp('disabled');\n var labelAlign = this.getProp('labelAlign');\n var scopedSlots = {\n icon: this.genLeftIcon\n };\n var Label = this.genLabel();\n if (Label) {\n scopedSlots.title = function () {\n return Label;\n };\n }\n var extra = this.slots('extra');\n if (extra) {\n scopedSlots.extra = function () {\n return extra;\n };\n }\n return h(Cell, {\n \"attrs\": {\n \"icon\": this.leftIcon,\n \"size\": this.size,\n \"center\": this.center,\n \"border\": this.border,\n \"isLink\": this.isLink,\n \"required\": this.required,\n \"clickable\": this.clickable,\n \"titleStyle\": this.labelStyle,\n \"valueClass\": bem('value'),\n \"titleClass\": [bem('label', labelAlign), this.labelClass],\n \"arrowDirection\": this.arrowDirection\n },\n \"scopedSlots\": scopedSlots,\n \"class\": bem((_bem = {\n error: this.showError,\n disabled: disabled\n }, _bem[\"label-\" + labelAlign] = labelAlign, _bem['min-height'] = this.type === 'textarea' && !this.autosize, _bem)),\n \"on\": {\n \"click\": this.onClick\n }\n }, [h(\"div\", {\n \"class\": bem('body')\n }, [this.genInput(), this.showClear && h(Icon, {\n \"attrs\": {\n \"name\": \"clear\"\n },\n \"class\": bem('clear'),\n \"on\": {\n \"touchstart\": this.onClear\n }\n }), this.genRightIcon(), slots('button') && h(\"div\", {\n \"class\": bem('button')\n }, [slots('button')])]), this.genWordLimit(), this.genMessage()]);\n }\n});","map":{"version":3,"names":["_mergeJSXProps2","_mergeJSXProps","_extends","resetScroll","formatNumber","preventDefault","getRootScrollTop","setRootScrollTop","isDef","addUnit","isObject","isPromise","isFunction","createNamespace","Icon","Cell","cellProps","_createNamespace","createComponent","bem","inheritAttrs","provide","vanField","inject","vanForm","default","props","name","String","rules","Array","disabled","type","Boolean","readonly","autosize","Object","leftIcon","rightIcon","clearable","formatter","Function","maxlength","Number","labelWidth","labelClass","labelAlign","inputAlign","placeholder","errorMessage","errorMessageAlign","showWordLimit","value","error","colon","clearTrigger","formatTrigger","data","focused","validateFailed","validateMessage","watch","updateValue","resetValidation","validateWithTrigger","$nextTick","adjustSize","mounted","addField","beforeDestroy","removeField","computed","showClear","getProp","hasValue","trigger","showError","listeners","$listeners","blur","onBlur","focus","onFocus","input","onInput","click","onClickInput","keypress","onKeypress","labelStyle","width","formValue","children","$scopedSlots","$slots","methods","$refs","runValidator","rule","Promise","resolve","returnVal","validator","then","isEmptyValue","isArray","length","runSyncRule","required","pattern","test","getRuleMessage","message","runRules","_this","reduce","promise","result","validate","_this2","defaultTrigger","validateTrigger","filter","slice","isNumber","$emit","event","target","composing","onClick","onClickLeftIcon","onClickRightIcon","onClear","ENTER_CODE","keyCode","submitOnEnter","scrollTop","style","height","scrollHeight","_this$autosize","maxHeight","minHeight","Math","min","max","genInput","h","$createElement","inputSlot","slots","inputProps","ref","class","domProps","attrs","$attrs","on","directives","inputType","inputMode","genLeftIcon","showLeftIcon","iconPrefix","genRightIcon","showRightIcon","genWordLimit","count","genMessage","showErrorMessage","key","genLabel","label","render","_bem","arguments","scopedSlots","icon","Label","title","extra","size","center","border","isLink","clickable","arrowDirection"],"sources":["E:/work/sino/sino-h5/node_modules/vant/es/field/index.js"],"sourcesContent":["import _mergeJSXProps2 from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\n// Utils\nimport { resetScroll } from '../utils/dom/reset-scroll';\nimport { formatNumber } from '../utils/format/number';\nimport { preventDefault } from '../utils/dom/event';\nimport { getRootScrollTop, setRootScrollTop } from '../utils/dom/scroll';\nimport { isDef, addUnit, isObject, isPromise, isFunction, createNamespace } from '../utils'; // Components\n\nimport Icon from '../icon';\nimport Cell from '../cell';\nimport { cellProps } from '../cell/shared';\n\nvar _createNamespace = createNamespace('field'),\n createComponent = _createNamespace[0],\n bem = _createNamespace[1];\n\nexport default createComponent({\n inheritAttrs: false,\n provide: function provide() {\n return {\n vanField: this\n };\n },\n inject: {\n vanForm: {\n default: null\n }\n },\n props: _extends({}, cellProps, {\n name: String,\n rules: Array,\n disabled: {\n type: Boolean,\n default: null\n },\n readonly: {\n type: Boolean,\n default: null\n },\n autosize: [Boolean, Object],\n leftIcon: String,\n rightIcon: String,\n clearable: Boolean,\n formatter: Function,\n maxlength: [Number, String],\n labelWidth: [Number, String],\n labelClass: null,\n labelAlign: String,\n inputAlign: String,\n placeholder: String,\n errorMessage: String,\n errorMessageAlign: String,\n showWordLimit: Boolean,\n value: {\n type: [Number, String],\n default: ''\n },\n type: {\n type: String,\n default: 'text'\n },\n error: {\n type: Boolean,\n default: null\n },\n colon: {\n type: Boolean,\n default: null\n },\n clearTrigger: {\n type: String,\n default: 'focus'\n },\n formatTrigger: {\n type: String,\n default: 'onChange'\n }\n }),\n data: function data() {\n return {\n focused: false,\n validateFailed: false,\n validateMessage: ''\n };\n },\n watch: {\n value: function value() {\n this.updateValue(this.value);\n this.resetValidation();\n this.validateWithTrigger('onChange');\n this.$nextTick(this.adjustSize);\n }\n },\n mounted: function mounted() {\n this.updateValue(this.value, this.formatTrigger);\n this.$nextTick(this.adjustSize);\n\n if (this.vanForm) {\n this.vanForm.addField(this);\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.vanForm) {\n this.vanForm.removeField(this);\n }\n },\n computed: {\n showClear: function showClear() {\n var readonly = this.getProp('readonly');\n\n if (this.clearable && !readonly) {\n var hasValue = isDef(this.value) && this.value !== '';\n var trigger = this.clearTrigger === 'always' || this.clearTrigger === 'focus' && this.focused;\n return hasValue && trigger;\n }\n },\n showError: function showError() {\n if (this.error !== null) {\n return this.error;\n }\n\n if (this.vanForm && this.vanForm.showError && this.validateFailed) {\n return true;\n }\n },\n listeners: function listeners() {\n return _extends({}, this.$listeners, {\n blur: this.onBlur,\n focus: this.onFocus,\n input: this.onInput,\n click: this.onClickInput,\n keypress: this.onKeypress\n });\n },\n labelStyle: function labelStyle() {\n var labelWidth = this.getProp('labelWidth');\n\n if (labelWidth) {\n return {\n width: addUnit(labelWidth)\n };\n }\n },\n formValue: function formValue() {\n if (this.children && (this.$scopedSlots.input || this.$slots.input)) {\n return this.children.value;\n }\n\n return this.value;\n }\n },\n methods: {\n // @exposed-api\n focus: function focus() {\n if (this.$refs.input) {\n this.$refs.input.focus();\n }\n },\n // @exposed-api\n blur: function blur() {\n if (this.$refs.input) {\n this.$refs.input.blur();\n }\n },\n runValidator: function runValidator(value, rule) {\n return new Promise(function (resolve) {\n var returnVal = rule.validator(value, rule);\n\n if (isPromise(returnVal)) {\n return returnVal.then(resolve);\n }\n\n resolve(returnVal);\n });\n },\n isEmptyValue: function isEmptyValue(value) {\n if (Array.isArray(value)) {\n return !value.length;\n }\n\n if (value === 0) {\n return false;\n }\n\n return !value;\n },\n runSyncRule: function runSyncRule(value, rule) {\n if (rule.required && this.isEmptyValue(value)) {\n return false;\n }\n\n if (rule.pattern && !rule.pattern.test(value)) {\n return false;\n }\n\n return true;\n },\n getRuleMessage: function getRuleMessage(value, rule) {\n var message = rule.message;\n\n if (isFunction(message)) {\n return message(value, rule);\n }\n\n return message;\n },\n runRules: function runRules(rules) {\n var _this = this;\n\n return rules.reduce(function (promise, rule) {\n return promise.then(function () {\n if (_this.validateFailed) {\n return;\n }\n\n var value = _this.formValue;\n\n if (rule.formatter) {\n value = rule.formatter(value, rule);\n }\n\n if (!_this.runSyncRule(value, rule)) {\n _this.validateFailed = true;\n _this.validateMessage = _this.getRuleMessage(value, rule);\n return;\n }\n\n if (rule.validator) {\n return _this.runValidator(value, rule).then(function (result) {\n if (result === false) {\n _this.validateFailed = true;\n _this.validateMessage = _this.getRuleMessage(value, rule);\n }\n });\n }\n });\n }, Promise.resolve());\n },\n validate: function validate(rules) {\n var _this2 = this;\n\n if (rules === void 0) {\n rules = this.rules;\n }\n\n return new Promise(function (resolve) {\n if (!rules) {\n resolve();\n }\n\n _this2.resetValidation();\n\n _this2.runRules(rules).then(function () {\n if (_this2.validateFailed) {\n resolve({\n name: _this2.name,\n message: _this2.validateMessage\n });\n } else {\n resolve();\n }\n });\n });\n },\n validateWithTrigger: function validateWithTrigger(trigger) {\n if (this.vanForm && this.rules) {\n var defaultTrigger = this.vanForm.validateTrigger === trigger;\n var rules = this.rules.filter(function (rule) {\n if (rule.trigger) {\n return rule.trigger === trigger;\n }\n\n return defaultTrigger;\n });\n\n if (rules.length) {\n this.validate(rules);\n }\n }\n },\n resetValidation: function resetValidation() {\n if (this.validateFailed) {\n this.validateFailed = false;\n this.validateMessage = '';\n }\n },\n updateValue: function updateValue(value, trigger) {\n if (trigger === void 0) {\n trigger = 'onChange';\n }\n\n value = isDef(value) ? String(value) : ''; // native maxlength have incorrect line-break counting\n // see: https://github.com/vant-ui/vant/issues/5033\n\n var maxlength = this.maxlength;\n\n if (isDef(maxlength) && value.length > maxlength) {\n if (this.value && this.value.length === +maxlength) {\n value = this.value;\n } else {\n value = value.slice(0, maxlength);\n }\n }\n\n if (this.type === 'number' || this.type === 'digit') {\n var isNumber = this.type === 'number';\n value = formatNumber(value, isNumber, isNumber);\n }\n\n if (this.formatter && trigger === this.formatTrigger) {\n value = this.formatter(value);\n }\n\n var input = this.$refs.input;\n\n if (input && value !== input.value) {\n input.value = value;\n }\n\n if (value !== this.value) {\n this.$emit('input', value);\n }\n },\n onInput: function onInput(event) {\n // not update v-model when composing\n if (event.target.composing) {\n return;\n }\n\n this.updateValue(event.target.value);\n },\n onFocus: function onFocus(event) {\n this.focused = true;\n this.$emit('focus', event); // https://github.com/vant-ui/vant/issues/9715\n\n this.$nextTick(this.adjustSize); // readonly not work in legacy mobile safari\n\n /* istanbul ignore if */\n\n if (this.getProp('readonly')) {\n this.blur();\n }\n },\n onBlur: function onBlur(event) {\n if (this.getProp('readonly')) {\n return;\n }\n\n this.focused = false;\n this.updateValue(this.value, 'onBlur');\n this.$emit('blur', event);\n this.validateWithTrigger('onBlur');\n this.$nextTick(this.adjustSize);\n resetScroll();\n },\n onClick: function onClick(event) {\n this.$emit('click', event);\n },\n onClickInput: function onClickInput(event) {\n this.$emit('click-input', event);\n },\n onClickLeftIcon: function onClickLeftIcon(event) {\n this.$emit('click-left-icon', event);\n },\n onClickRightIcon: function onClickRightIcon(event) {\n this.$emit('click-right-icon', event);\n },\n onClear: function onClear(event) {\n preventDefault(event);\n this.$emit('input', '');\n this.$emit('clear', event);\n },\n onKeypress: function onKeypress(event) {\n var ENTER_CODE = 13;\n\n if (event.keyCode === ENTER_CODE) {\n var submitOnEnter = this.getProp('submitOnEnter');\n\n if (!submitOnEnter && this.type !== 'textarea') {\n preventDefault(event);\n } // trigger blur after click keyboard search button\n\n\n if (this.type === 'search') {\n this.blur();\n }\n }\n\n this.$emit('keypress', event);\n },\n adjustSize: function adjustSize() {\n var input = this.$refs.input;\n\n if (!(this.type === 'textarea' && this.autosize) || !input) {\n return;\n }\n\n var scrollTop = getRootScrollTop();\n input.style.height = 'auto';\n var height = input.scrollHeight;\n\n if (isObject(this.autosize)) {\n var _this$autosize = this.autosize,\n maxHeight = _this$autosize.maxHeight,\n minHeight = _this$autosize.minHeight;\n\n if (maxHeight) {\n height = Math.min(height, maxHeight);\n }\n\n if (minHeight) {\n height = Math.max(height, minHeight);\n }\n }\n\n if (height) {\n input.style.height = height + 'px'; // https://github.com/vant-ui/vant/issues/9178\n\n setRootScrollTop(scrollTop);\n }\n },\n genInput: function genInput() {\n var h = this.$createElement;\n var type = this.type;\n var disabled = this.getProp('disabled');\n var readonly = this.getProp('readonly');\n var inputSlot = this.slots('input');\n var inputAlign = this.getProp('inputAlign');\n\n if (inputSlot) {\n return h(\"div\", {\n \"class\": bem('control', [inputAlign, 'custom']),\n \"on\": {\n \"click\": this.onClickInput\n }\n }, [inputSlot]);\n }\n\n var inputProps = {\n ref: 'input',\n class: bem('control', inputAlign),\n domProps: {\n value: this.value\n },\n attrs: _extends({}, this.$attrs, {\n name: this.name,\n disabled: disabled,\n readonly: readonly,\n placeholder: this.placeholder\n }),\n on: this.listeners,\n // add model directive to skip IME composition\n directives: [{\n name: 'model',\n value: this.value\n }]\n };\n\n if (type === 'textarea') {\n return h(\"textarea\", _mergeJSXProps([{}, inputProps]));\n }\n\n var inputType = type;\n var inputMode; // type=\"number\" is weird in iOS, and can't prevent dot in Android\n // so use inputmode to set keyboard in modern browsers\n\n if (type === 'number') {\n inputType = 'text';\n inputMode = 'decimal';\n }\n\n if (type === 'digit') {\n inputType = 'tel';\n inputMode = 'numeric';\n }\n\n return h(\"input\", _mergeJSXProps2([{\n \"attrs\": {\n \"type\": inputType,\n \"inputmode\": inputMode\n }\n }, inputProps]));\n },\n genLeftIcon: function genLeftIcon() {\n var h = this.$createElement;\n var showLeftIcon = this.slots('left-icon') || this.leftIcon;\n\n if (showLeftIcon) {\n return h(\"div\", {\n \"class\": bem('left-icon'),\n \"on\": {\n \"click\": this.onClickLeftIcon\n }\n }, [this.slots('left-icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.leftIcon,\n \"classPrefix\": this.iconPrefix\n }\n })]);\n }\n },\n genRightIcon: function genRightIcon() {\n var h = this.$createElement;\n var slots = this.slots;\n var showRightIcon = slots('right-icon') || this.rightIcon;\n\n if (showRightIcon) {\n return h(\"div\", {\n \"class\": bem('right-icon'),\n \"on\": {\n \"click\": this.onClickRightIcon\n }\n }, [slots('right-icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.rightIcon,\n \"classPrefix\": this.iconPrefix\n }\n })]);\n }\n },\n genWordLimit: function genWordLimit() {\n var h = this.$createElement;\n\n if (this.showWordLimit && this.maxlength) {\n var count = (this.value || '').length;\n return h(\"div\", {\n \"class\": bem('word-limit')\n }, [h(\"span\", {\n \"class\": bem('word-num')\n }, [count]), \"/\", this.maxlength]);\n }\n },\n genMessage: function genMessage() {\n var h = this.$createElement;\n\n if (this.vanForm && this.vanForm.showErrorMessage === false) {\n return;\n }\n\n var message = this.errorMessage || this.validateMessage;\n\n if (message) {\n var errorMessageAlign = this.getProp('errorMessageAlign');\n return h(\"div\", {\n \"class\": bem('error-message', errorMessageAlign)\n }, [message]);\n }\n },\n getProp: function getProp(key) {\n if (isDef(this[key])) {\n return this[key];\n }\n\n if (this.vanForm && isDef(this.vanForm[key])) {\n return this.vanForm[key];\n }\n },\n genLabel: function genLabel() {\n var h = this.$createElement;\n var colon = this.getProp('colon') ? ':' : '';\n\n if (this.slots('label')) {\n return [this.slots('label'), colon];\n }\n\n if (this.label) {\n return h(\"span\", [this.label + colon]);\n }\n }\n },\n render: function render() {\n var _bem;\n\n var h = arguments[0];\n var slots = this.slots;\n var disabled = this.getProp('disabled');\n var labelAlign = this.getProp('labelAlign');\n var scopedSlots = {\n icon: this.genLeftIcon\n };\n var Label = this.genLabel();\n\n if (Label) {\n scopedSlots.title = function () {\n return Label;\n };\n }\n\n var extra = this.slots('extra');\n\n if (extra) {\n scopedSlots.extra = function () {\n return extra;\n };\n }\n\n return h(Cell, {\n \"attrs\": {\n \"icon\": this.leftIcon,\n \"size\": this.size,\n \"center\": this.center,\n \"border\": this.border,\n \"isLink\": this.isLink,\n \"required\": this.required,\n \"clickable\": this.clickable,\n \"titleStyle\": this.labelStyle,\n \"valueClass\": bem('value'),\n \"titleClass\": [bem('label', labelAlign), this.labelClass],\n \"arrowDirection\": this.arrowDirection\n },\n \"scopedSlots\": scopedSlots,\n \"class\": bem((_bem = {\n error: this.showError,\n disabled: disabled\n }, _bem[\"label-\" + labelAlign] = labelAlign, _bem['min-height'] = this.type === 'textarea' && !this.autosize, _bem)),\n \"on\": {\n \"click\": this.onClick\n }\n }, [h(\"div\", {\n \"class\": bem('body')\n }, [this.genInput(), this.showClear && h(Icon, {\n \"attrs\": {\n \"name\": \"clear\"\n },\n \"class\": bem('clear'),\n \"on\": {\n \"touchstart\": this.onClear\n }\n }), this.genRightIcon(), slots('button') && h(\"div\", {\n \"class\": bem('button')\n }, [slots('button')])]), this.genWordLimit(), this.genMessage()]);\n }\n});"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}