{"remainingRequest":"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=style&index=0&id=6bb35d14&lang=scss&scoped=true&","dependencies":[{"path":"D:\\源码\\vue-element-admin-master\\src\\components\\MDinput\\index.vue","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\css-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\postcss-loader\\src\\index.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\sass-loader\\dist\\cjs.js","mtime":499162500000},{"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:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgovLyBGb250czoKJGZvbnQtc2l6ZS1iYXNlOiAxNnB4OwokZm9udC1zaXplLXNtYWxsOiAxOHB4OwokZm9udC1zaXplLXNtYWxsZXN0OiAxMnB4OwokZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7CiRmb250LXdlaWdodC1ib2xkOiBib2xkOwokYXBpeGVsOiAxcHg7Ci8vIFV0aWxzCiRzcGFjZXI6IDEycHg7CiR0cmFuc2l0aW9uOiAwLjJzIGVhc2UgYWxsOwokaW5kZXg6IDBweDsKJGluZGV4LWhhcy1pY29uOiAzMHB4OwovLyBUaGVtZToKJGNvbG9yLXdoaXRlOiB3aGl0ZTsKJGNvbG9yLWdyZXk6ICM5RTlFOUU7CiRjb2xvci1ncmV5LWxpZ2h0OiAjRTBFMEUwOwokY29sb3ItYmx1ZTogIzIxOTZGMzsKJGNvbG9yLXJlZDogI0Y0NDMzNjsKJGNvbG9yLWJsYWNrOiBibGFjazsKLy8gQmFzZSBjbGFzZXM6CiViYXNlLWJhci1wc2V1ZG8gewogIGNvbnRlbnQ6ICcnOwogIGhlaWdodDogMXB4OwogIHdpZHRoOiAwOwogIGJvdHRvbTogMDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247Cn0KCi8vIE1peGluczoKQG1peGluIHNsaWRlZC10b3AoKSB7CiAgdG9wOiAtICgkZm9udC1zaXplLWJhc2UgKyAkc3BhY2VyKTsKICBsZWZ0OiAwOwogIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOwogIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDsKfQoKLy8gQ29tcG9uZW50OgoubWF0ZXJpYWwtaW5wdXRfX2NvbXBvbmVudCB7CiAgbWFyZ2luLXRvcDogMzZweDsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgKiB7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIH0KICAuaWNvbkNsYXNzIHsKICAgIC5tYXRlcmlhbC1pbnB1dF9faWNvbiB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgbGVmdDogMDsKICAgICAgbGluZS1oZWlnaHQ6ICRmb250LXNpemUtYmFzZTsKICAgICAgY29sb3I6ICRjb2xvci1ibHVlOwogICAgICB0b3A6ICRzcGFjZXI7CiAgICAgIHdpZHRoOiAkaW5kZXgtaGFzLWljb247CiAgICAgIGhlaWdodDogJGZvbnQtc2l6ZS1iYXNlOwogICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsKICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7CiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgfQogICAgLm1hdGVyaWFsLWxhYmVsIHsKICAgICAgbGVmdDogJGluZGV4LWhhcy1pY29uOwogICAgfQogICAgLm1hdGVyaWFsLWlucHV0IHsKICAgICAgdGV4dC1pbmRlbnQ6ICRpbmRleC1oYXMtaWNvbjsKICAgIH0KICB9CiAgLm1hdGVyaWFsLWlucHV0IHsKICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOwogICAgcGFkZGluZzogJHNwYWNlciAkc3BhY2VyICRzcGFjZXIgLSAkYXBpeGVsICogMTAgJHNwYWNlciAvIDI7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIHdpZHRoOiAxMDAlOwogICAgYm9yZGVyOiBub25lOwogICAgbGluZS1oZWlnaHQ6IDE7CiAgICBib3JkZXItcmFkaXVzOiAwOwogICAgJjpmb2N1cyB7CiAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyAvLyBmaXhlcyB0aGUgaGVpZ2h0IGlzc3VlCiAgICB9CiAgfQogIC5tYXRlcmlhbC1sYWJlbCB7CiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgbGVmdDogJGluZGV4OwogICAgdG9wOiAwOwogICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247CiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7CiAgfQogIC5tYXRlcmlhbC1pbnB1dC1iYXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICB3aWR0aDogMTAwJTsKICAgICY6YmVmb3JlIHsKICAgICAgQGV4dGVuZCAlYmFzZS1iYXItcHNldWRvOwogICAgICBsZWZ0OiA1MCU7CiAgICB9CiAgICAmOmFmdGVyIHsKICAgICAgQGV4dGVuZCAlYmFzZS1iYXItcHNldWRvOwogICAgICByaWdodDogNTAlOwogICAgfQogIH0KICAvLyBEaXNhYmxlZCBzdGF0ZToKICAmLm1hdGVyaWFsLS1kaXNhYmxlZCB7CiAgICAubWF0ZXJpYWwtaW5wdXQgewogICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkYXNoZWQ7CiAgICB9CiAgfQogIC8vIFJhaXNlZCBzdGF0ZToKICAmLm1hdGVyaWFsLS1yYWlzZWQgewogICAgLm1hdGVyaWFsLWxhYmVsIHsKICAgICAgQGluY2x1ZGUgc2xpZGVkLXRvcCgpOwogICAgfQogIH0KICAvLyBBY3RpdmUgc3RhdGU6CiAgJi5tYXRlcmlhbC0tYWN0aXZlIHsKICAgIC5tYXRlcmlhbC1pbnB1dC1iYXIgewogICAgICAmOmJlZm9yZSwKICAgICAgJjphZnRlciB7CiAgICAgICAgd2lkdGg6IDUwJTsKICAgICAgfQogICAgfQogIH0KfQoKLm1hdGVyaWFsLWlucHV0X19jb21wb25lbnQgewogIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTsKICAubWF0ZXJpYWwtaW5wdXQgewogICAgYmFja2dyb3VuZDogbm9uZTsKICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7CiAgICB0ZXh0LWluZGVudDogJGluZGV4OwogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5LWxpZ2h0OwogIH0KICAubWF0ZXJpYWwtbGFiZWwgewogICAgY29sb3I6ICRjb2xvci1ncmV5OwogIH0KICAubWF0ZXJpYWwtaW5wdXQtYmFyIHsKICAgICY6YmVmb3JlLAogICAgJjphZnRlciB7CiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlOwogICAgfQogIH0KICAvLyBBY3RpdmUgc3RhdGU6CiAgJi5tYXRlcmlhbC0tYWN0aXZlIHsKICAgIC5tYXRlcmlhbC1sYWJlbCB7CiAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTsKICAgIH0KICB9CiAgLy8gRXJyb3JzOgogICYubWF0ZXJpYWwtLWhhcy1lcnJvcnMgewogICAgJi5tYXRlcmlhbC0tYWN0aXZlIC5tYXRlcmlhbC1sYWJlbCB7CiAgICAgIGNvbG9yOiAkY29sb3ItcmVkOwogICAgfQogICAgLm1hdGVyaWFsLWlucHV0LWJhciB7CiAgICAgICY6YmVmb3JlLAogICAgICAmOmFmdGVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQogICAgfQogIH0KfQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/components/MDinput","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"]}]}
|