You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.1 KiB
93 lines
2.1 KiB
11 months ago
|
import { isString } from '@vue/shared';
|
||
|
import { buildProps, definePropType, mutable } from '../../../utils/props.mjs';
|
||
|
import { UPDATE_MODEL_EVENT } from '../../../utils/constants.mjs';
|
||
|
import '../../../hooks/index.mjs';
|
||
|
import { useSizeProp } from '../../../hooks/use-common-props/index.mjs';
|
||
|
|
||
|
const inputProps = buildProps({
|
||
|
size: useSizeProp,
|
||
|
disabled: Boolean,
|
||
|
modelValue: {
|
||
|
type: definePropType(void 0),
|
||
|
default: ""
|
||
|
},
|
||
|
type: {
|
||
|
type: String,
|
||
|
default: "text"
|
||
|
},
|
||
|
resize: {
|
||
|
type: String,
|
||
|
values: ["none", "both", "horizontal", "vertical"]
|
||
|
},
|
||
|
autosize: {
|
||
|
type: definePropType([Boolean, Object]),
|
||
|
default: false
|
||
|
},
|
||
|
autocomplete: {
|
||
|
type: String,
|
||
|
default: "off"
|
||
|
},
|
||
|
placeholder: {
|
||
|
type: String
|
||
|
},
|
||
|
form: {
|
||
|
type: String,
|
||
|
default: ""
|
||
|
},
|
||
|
readonly: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
},
|
||
|
clearable: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
},
|
||
|
showPassword: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
},
|
||
|
showWordLimit: {
|
||
|
type: Boolean,
|
||
|
default: false
|
||
|
},
|
||
|
suffixIcon: {
|
||
|
type: definePropType([String, Object]),
|
||
|
default: ""
|
||
|
},
|
||
|
prefixIcon: {
|
||
|
type: definePropType([String, Object]),
|
||
|
default: ""
|
||
|
},
|
||
|
label: {
|
||
|
type: String
|
||
|
},
|
||
|
tabindex: {
|
||
|
type: [Number, String]
|
||
|
},
|
||
|
validateEvent: {
|
||
|
type: Boolean,
|
||
|
default: true
|
||
|
},
|
||
|
inputStyle: {
|
||
|
type: definePropType([Object, Array, String]),
|
||
|
default: () => mutable({})
|
||
|
}
|
||
|
});
|
||
|
const inputEmits = {
|
||
|
[UPDATE_MODEL_EVENT]: (value) => isString(value),
|
||
|
input: (value) => isString(value),
|
||
|
change: (value) => isString(value),
|
||
|
focus: (evt) => evt instanceof FocusEvent,
|
||
|
blur: (evt) => evt instanceof FocusEvent,
|
||
|
clear: () => true,
|
||
|
mouseleave: (evt) => evt instanceof MouseEvent,
|
||
|
mouseenter: (evt) => evt instanceof MouseEvent,
|
||
|
keydown: (evt) => evt instanceof KeyboardEvent,
|
||
|
compositionstart: (evt) => evt instanceof CompositionEvent,
|
||
|
compositionupdate: (evt) => evt instanceof CompositionEvent,
|
||
|
compositionend: (evt) => evt instanceof CompositionEvent
|
||
|
};
|
||
|
|
||
|
export { inputEmits, inputProps };
|
||
|
//# sourceMappingURL=input.mjs.map
|