{"remainingRequest":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js!D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\源码\\vue-element-admin-master\\src\\components\\MDinput\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\源码\\vue-element-admin-master\\src\\components\\MDinput\\index.vue","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\babel.config.js","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMubnVtYmVyLmNvbnN0cnVjdG9yLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8gc291cmNlOmh0dHBzOi8vZ2l0aHViLmNvbS93ZW1ha2Utc2VydmljZXMvdnVlLW1hdGVyaWFsLWlucHV0L2Jsb2IvbWFzdGVyL3NyYy9jb21wb25lbnRzL01hdGVyaWFsSW5wdXQudnVlCmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnTWRJbnB1dCcsCiAgcHJvcHM6IHsKICAgIC8qIGVzbGludC1kaXNhYmxlICovCiAgICBpY29uOiBTdHJpbmcsCiAgICBuYW1lOiBTdHJpbmcsCiAgICB0eXBlOiB7CiAgICAgIHR5cGU6IFN0cmluZywKICAgICAgZGVmYXVsdDogJ3RleHQnCiAgICB9LAogICAgdmFsdWU6IFtTdHJpbmcsIE51bWJlcl0sCiAgICBwbGFjZWhvbGRlcjogU3RyaW5nLAogICAgcmVhZG9ubHk6IEJvb2xlYW4sCiAgICBkaXNhYmxlZDogQm9vbGVhbiwKICAgIG1pbjogU3RyaW5nLAogICAgbWF4OiBTdHJpbmcsCiAgICBzdGVwOiBTdHJpbmcsCiAgICBtaW5sZW5ndGg6IE51bWJlciwKICAgIG1heGxlbmd0aDogTnVtYmVyLAogICAgcmVxdWlyZWQ6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogdHJ1ZQogICAgfSwKICAgIGF1dG9Db21wbGV0ZTogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICdvZmYnCiAgICB9LAogICAgdmFsaWRhdGVFdmVudDogewogICAgICB0eXBlOiBCb29sZWFuLAogICAgICBkZWZhdWx0OiB0cnVlCiAgICB9CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgY3VycmVudFZhbHVlOiB0aGlzLnZhbHVlLAogICAgICBmb2N1czogZmFsc2UsCiAgICAgIGZpbGxQbGFjZUhvbGRlcjogbnVsbAogICAgfTsKICB9LAogIGNvbXB1dGVkOiB7CiAgICBjb21wdXRlZENsYXNzZXM6IGZ1bmN0aW9uIGNvbXB1dGVkQ2xhc3NlcygpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICAnbWF0ZXJpYWwtLWFjdGl2ZSc6IHRoaXMuZm9jdXMsCiAgICAgICAgJ21hdGVyaWFsLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsCiAgICAgICAgJ21hdGVyaWFsLS1yYWlzZWQnOiBCb29sZWFuKHRoaXMuZm9jdXMgfHwgdGhpcy5jdXJyZW50VmFsdWUpIC8vIGhhcyB2YWx1ZQoKICAgICAgfTsKICAgIH0KICB9LAogIHdhdGNoOiB7CiAgICB2YWx1ZTogZnVuY3Rpb24gdmFsdWUobmV3VmFsdWUpIHsKICAgICAgdGhpcy5jdXJyZW50VmFsdWUgPSBuZXdWYWx1ZTsKICAgIH0KICB9LAogIG1ldGhvZHM6IHsKICAgIGhhbmRsZU1vZGVsSW5wdXQ6IGZ1bmN0aW9uIGhhbmRsZU1vZGVsSW5wdXQoZXZlbnQpIHsKICAgICAgdmFyIHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlOwogICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHZhbHVlKTsKCiAgICAgIGlmICh0aGlzLiRwYXJlbnQuJG9wdGlvbnMuY29tcG9uZW50TmFtZSA9PT0gJ0VsRm9ybUl0ZW0nKSB7CiAgICAgICAgaWYgKHRoaXMudmFsaWRhdGVFdmVudCkgewogICAgICAgICAgdGhpcy4kcGFyZW50LiRlbWl0KCdlbC5mb3JtLmNoYW5nZScsIFt2YWx1ZV0pOwogICAgICAgIH0KICAgICAgfQoKICAgICAgdGhpcy4kZW1pdCgnY2hhbmdlJywgdmFsdWUpOwogICAgfSwKICAgIGhhbmRsZU1kRm9jdXM6IGZ1bmN0aW9uIGhhbmRsZU1kRm9jdXMoZXZlbnQpIHsKICAgICAgdGhpcy5mb2N1cyA9IHRydWU7CiAgICAgIHRoaXMuJGVtaXQoJ2ZvY3VzJywgZXZlbnQpOwoKICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIgJiYgdGhpcy5wbGFjZWhvbGRlciAhPT0gJycpIHsKICAgICAgICB0aGlzLmZpbGxQbGFjZUhvbGRlciA9IHRoaXMucGxhY2Vob2xkZXI7CiAgICAgIH0KICAgIH0sCiAgICBoYW5kbGVNZEJsdXI6IGZ1bmN0aW9uIGhhbmRsZU1kQmx1cihldmVudCkgewogICAgICB0aGlzLmZvY3VzID0gZmFsc2U7CiAgICAgIHRoaXMuJGVtaXQoJ2JsdXInLCBldmVudCk7CiAgICAgIHRoaXMuZmlsbFBsYWNlSG9sZGVyID0gbnVsbDsKCiAgICAgIGlmICh0aGlzLiRwYXJlbnQuJG9wdGlvbnMuY29tcG9uZW50TmFtZSA9PT0gJ0VsRm9ybUl0ZW0nKSB7CiAgICAgICAgaWYgKHRoaXMudmFsaWRhdGVFdmVudCkgewogICAgICAgICAgdGhpcy4kcGFyZW50LiRlbWl0KCdlbC5mb3JtLmJsdXInLCBbdGhpcy5jdXJyZW50VmFsdWVdKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn07"},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgHA;AAEA;EACAA,eADA;EAEAC;IACA;IACAC,YAFA;IAGAF,YAHA;IAIAG;MACAA,YADA;MAEAC;IAFA,CAJA;IAQAC,uBARA;IASAC,mBATA;IAUAC,iBAVA;IAWAC,iBAXA;IAYAC,WAZA;IAaAC,WAbA;IAcAC,YAdA;IAeAC,iBAfA;IAgBAC,iBAhBA;IAiBAC;MACAX,aADA;MAEAC;IAFA,CAjBA;IAqBAW;MACAZ,YADA;MAEAC;IAFA,CArBA;IAyBAY;MACAb,aADA;MAEAC;IAFA;EAzBA,CAFA;EAgCAa,IAhCA,kBAgCA;IACA;MACAC,wBADA;MAEAC,YAFA;MAGAC;IAHA;EAKA,CAtCA;EAuCAC;IACAC,eADA,6BACA;MACA;QACA,8BADA;QAEA,mCAFA;QAGA,4DAHA,CAGA;;MAHA;IAKA;EAPA,CAvCA;EAgDAC;IACAlB,KADA,iBACAmB,QADA,EACA;MACA;IACA;EAHA,CAhDA;EAqDAC;IACAC,gBADA,4BACAC,KADA,EACA;MACA;MACA;;MACA;QACA;UACA;QACA;MACA;;MACA;IACA,CAVA;IAWAC,aAXA,yBAWAD,KAXA,EAWA;MACA;MACA;;MACA;QACA;MACA;IACA,CAjBA;IAkBAE,YAlBA,wBAkBAF,KAlBA,EAkBA;MACA;MACA;MACA;;MACA;QACA;UACA;QACA;MACA;IACA;EA3BA;AArDA","names":["name","props","icon","type","default","value","placeholder","readonly","disabled","min","max","step","minlength","maxlength","required","autoComplete","validateEvent","data","currentValue","focus","fillPlaceHolder","computed","computedClasses","watch","newValue","methods","handleModelInput","event","handleMdFocus","handleMdBlur"],"sourceRoot":"src/components/MDinput","sources":["index.vue"],"sourcesContent":["<template>\n <div :class=\"computedClasses\" class=\"material-input__component\">\n <div :class=\"{iconClass:icon}\">\n <i v-if=\"icon\" :class=\"['el-icon-' + icon]\" class=\"el-input__icon material-input__icon\" />\n <input\n v-if=\"type === 'email'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :required=\"required\"\n type=\"email\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <input\n v-if=\"type === 'url'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :required=\"required\"\n type=\"url\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <input\n v-if=\"type === 'number'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :step=\"step\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :max=\"max\"\n :min=\"min\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :required=\"required\"\n type=\"number\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <input\n v-if=\"type === 'password'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :max=\"max\"\n :min=\"min\"\n :required=\"required\"\n type=\"password\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <input\n v-if=\"type === 'tel'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :required=\"required\"\n type=\"tel\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <input\n v-if=\"type === 'text'\"\n v-model=\"currentValue\"\n :name=\"name\"\n :placeholder=\"fillPlaceHolder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"autoComplete\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :required=\"required\"\n type=\"text\"\n class=\"material-input\"\n @focus=\"handleMdFocus\"\n @blur=\"handleMdBlur\"\n @input=\"handleModelInput\"\n >\n <span class=\"material-input-bar\" />\n <label class=\"material-label\">\n <slot />\n </label>\n </div>\n </div>\n</template>\n\n<script>\n// source:https://github.com/wemake-services/vue-material-input/blob/master/src/components/MaterialInput.vue\n\nexport default {\n name: 'MdInput',\n props: {\n /* eslint-disable */\n icon: String,\n name: String,\n type: {\n type: String,\n default: 'text'\n },\n value: [String, Number],\n placeholder: String,\n readonly: Boolean,\n disabled: Boolean,\n min: String,\n max: String,\n step: String,\n minlength: Number,\n maxlength: Number,\n required: {\n type: Boolean,\n default: true\n },\n autoComplete: {\n type: String,\n default: 'off'\n },\n validateEvent: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n currentValue: this.value,\n focus: false,\n fillPlaceHolder: null\n }\n },\n computed: {\n computedClasses() {\n return {\n 'material--active': this.focus,\n 'material--disabled': this.disabled,\n 'material--raised': Boolean(this.focus || this.currentValue) // has value\n }\n }\n },\n watch: {\n value(newValue) {\n this.currentValue = newValue\n }\n },\n methods: {\n handleModelInput(event) {\n const value = event.target.value\n this.$emit('input', value)\n if (this.$parent.$options.componentName === 'ElFormItem') {\n if (this.validateEvent) {\n this.$parent.$emit('el.form.change', [value])\n }\n }\n this.$emit('change', value)\n },\n handleMdFocus(event) {\n this.focus = true\n this.$emit('focus', event)\n if (this.placeholder && this.placeholder !== '') {\n this.fillPlaceHolder = this.placeholder\n }\n },\n handleMdBlur(event) {\n this.focus = false\n this.$emit('blur', event)\n this.fillPlaceHolder = null\n if (this.$parent.$options.componentName === 'ElFormItem') {\n if (this.validateEvent) {\n this.$parent.$emit('el.form.blur', [this.currentValue])\n }\n }\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n // Fonts:\n $font-size-base: 16px;\n $font-size-small: 18px;\n $font-size-smallest: 12px;\n $font-weight-normal: normal;\n $font-weight-bold: bold;\n $apixel: 1px;\n // Utils\n $spacer: 12px;\n $transition: 0.2s ease all;\n $index: 0px;\n $index-has-icon: 30px;\n // Theme:\n $color-white: white;\n $color-grey: #9E9E9E;\n $color-grey-light: #E0E0E0;\n $color-blue: #2196F3;\n $color-red: #F44336;\n $color-black: black;\n // Base clases:\n %base-bar-pseudo {\n content: '';\n height: 1px;\n width: 0;\n bottom: 0;\n position: absolute;\n transition: $transition;\n }\n\n // Mixins:\n @mixin slided-top() {\n top: - ($font-size-base + $spacer);\n left: 0;\n font-size: $font-size-base;\n font-weight: $font-weight-bold;\n }\n\n // Component:\n .material-input__component {\n margin-top: 36px;\n position: relative;\n * {\n box-sizing: border-box;\n }\n .iconClass {\n .material-input__icon {\n position: absolute;\n left: 0;\n line-height: $font-size-base;\n color: $color-blue;\n top: $spacer;\n width: $index-has-icon;\n height: $font-size-base;\n font-size: $font-size-base;\n font-weight: $font-weight-normal;\n pointer-events: none;\n }\n .material-label {\n left: $index-has-icon;\n }\n .material-input {\n text-indent: $index-has-icon;\n }\n }\n .material-input {\n font-size: $font-size-base;\n padding: $spacer $spacer $spacer - $apixel * 10 $spacer / 2;\n display: block;\n width: 100%;\n border: none;\n line-height: 1;\n border-radius: 0;\n &:focus {\n outline: none;\n border: none;\n border-bottom: 1px solid transparent; // fixes the height issue\n }\n }\n .material-label {\n font-weight: $font-weight-normal;\n position: absolute;\n pointer-events: none;\n left: $index;\n top: 0;\n transition: $transition;\n font-size: $font-size-small;\n }\n .material-input-bar {\n position: relative;\n display: block;\n width: 100%;\n &:before {\n @extend %base-bar-pseudo;\n left: 50%;\n }\n &:after {\n @extend %base-bar-pseudo;\n right: 50%;\n }\n }\n // Disabled state:\n &.material--disabled {\n .material-input {\n border-bottom-style: dashed;\n }\n }\n // Raised state:\n &.material--raised {\n .material-label {\n @include slided-top();\n }\n }\n // Active state:\n &.material--active {\n .material-input-bar {\n &:before,\n &:after {\n width: 50%;\n }\n }\n }\n }\n\n .material-input__component {\n background: $color-white;\n .material-input {\n background: none;\n color: $color-black;\n text-indent: $index;\n border-bottom: 1px solid $color-grey-light;\n }\n .material-label {\n color: $color-grey;\n }\n .material-input-bar {\n &:before,\n &:after {\n background: $color-blue;\n }\n }\n // Active state:\n &.material--active {\n .material-label {\n color: $color-blue;\n }\n }\n // Errors:\n &.material--has-errors {\n &.material--active .material-label {\n color: $color-red;\n }\n .material-input-bar {\n &:before,\n &:after {\n background: transparent;\n }\n }\n }\n }\n</style>\n"]}]}
|