@vuetify/nightly 3.2.0-dev-20230405.0 → 3.2.0-dev-20230415.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +3 -2
- package/dist/json/attributes.json +24 -8
- package/dist/json/importMap-labs.json +0 -4
- package/dist/json/importMap.json +56 -52
- package/dist/json/tags.json +5 -1
- package/dist/json/web-types.json +83 -47
- package/dist/vuetify-labs.css +2296 -2277
- package/dist/vuetify-labs.d.ts +712 -662
- package/dist/vuetify-labs.esm.js +269 -227
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +268 -226
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +32 -4
- package/dist/vuetify.d.ts +593 -417
- package/dist/vuetify.esm.js +247 -34
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +246 -33
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +319 -293
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +5 -2
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +38 -32
- package/lib/components/VCheckbox/index.d.ts +14 -14
- package/lib/components/VChip/VChip.mjs +2 -2
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +14 -14
- package/lib/components/VCombobox/VCombobox.mjs +6 -3
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +38 -32
- package/lib/components/VField/VField.mjs +3 -3
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/index.d.ts +20 -20
- package/lib/components/VFileInput/VFileInput.mjs +0 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +50 -56
- package/lib/components/VImg/VImg.mjs +3 -3
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +19 -19
- package/lib/components/VInput/VInput.mjs +2 -2
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +14 -14
- package/lib/components/VList/VList.mjs +2 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +12 -0
- package/lib/components/VList/VListItem.mjs +2 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +5 -0
- package/lib/components/VList/index.d.ts +14 -14
- package/lib/components/VOverlay/useActivator.mjs +1 -0
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.css +3 -1
- package/lib/components/VProgressCircular/VProgressCircular.sass +3 -1
- package/lib/components/VProgressCircular/_variables.scss +1 -0
- package/lib/components/VProgressLinear/VProgressLinear.css +5 -2
- package/lib/components/VProgressLinear/VProgressLinear.sass +3 -0
- package/lib/components/VProgressLinear/_variables.scss +1 -1
- package/lib/components/VRadioGroup/index.d.ts +14 -14
- package/lib/components/VRangeSlider/index.d.ts +14 -14
- package/lib/components/VSelect/VSelect.mjs +31 -2
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +38 -32
- package/lib/components/VSlider/index.d.ts +14 -14
- package/lib/components/VSwitch/index.d.ts +14 -14
- package/lib/components/VTextField/VTextField.mjs +2 -2
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +83 -77
- package/lib/components/VTextarea/VTextarea.mjs +8 -5
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +56 -50
- package/lib/components/VToolbar/VToolbar.css +2 -0
- package/lib/components/VToolbar/VToolbar.sass +2 -0
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -0
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -0
- package/lib/components/VVirtualScroll/index.mjs.map +1 -0
- package/lib/components/index.d.ts +576 -403
- package/lib/components/index.mjs +2 -1
- package/lib/components/index.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +2 -1
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/theme.mjs +1 -1
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.ts +16 -15
- package/lib/labs/VDataTable/VDataTable.mjs +4 -4
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +5 -7
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +4 -3
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +5 -3
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.ts +137 -111
- package/lib/labs/components.d.ts +138 -261
- package/lib/labs/components.mjs +0 -1
- package/lib/labs/components.mjs.map +1 -1
- package/lib/util/helpers.mjs +1 -1
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +0 -1
- package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs.map +0 -1
- package/lib/labs/VVirtualScroll/index.mjs.map +0 -1
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.css +0 -0
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.mjs +0 -0
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.sass +0 -0
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScrollItem.mjs +0 -0
- /package/lib/{labs → components}/VVirtualScroll/index.d.ts +0 -0
- /package/lib/{labs → components}/VVirtualScroll/index.mjs +0 -0
|
@@ -6,8 +6,8 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
declare function deepEqual(a: any, b: any): boolean;
|
|
9
|
-
type EventProp<T = (...args:
|
|
10
|
-
declare const EventProp: PropType<EventProp<(...args:
|
|
9
|
+
type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
|
|
10
|
+
declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
|
|
11
11
|
|
|
12
12
|
type Density = null | 'default' | 'comfortable' | 'compact';
|
|
13
13
|
|
|
@@ -95,8 +95,8 @@ declare const VSwitch: {
|
|
|
95
95
|
modelValue?: any;
|
|
96
96
|
prependIcon?: IconValue | undefined;
|
|
97
97
|
appendIcon?: IconValue | undefined;
|
|
98
|
-
'onClick:append'?: EventProp<(
|
|
99
|
-
'onClick:prepend'?: EventProp<(
|
|
98
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
99
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
100
100
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
101
101
|
validationValue?: any;
|
|
102
102
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -196,8 +196,8 @@ declare const VSwitch: {
|
|
|
196
196
|
modelValue?: any;
|
|
197
197
|
prependIcon?: IconValue | undefined;
|
|
198
198
|
appendIcon?: IconValue | undefined;
|
|
199
|
-
'onClick:append'?: EventProp<(
|
|
200
|
-
'onClick:prepend'?: EventProp<(
|
|
199
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
200
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
201
201
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
202
202
|
validationValue?: any;
|
|
203
203
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -326,8 +326,8 @@ declare const VSwitch: {
|
|
|
326
326
|
modelValue?: any;
|
|
327
327
|
prependIcon?: IconValue | undefined;
|
|
328
328
|
appendIcon?: IconValue | undefined;
|
|
329
|
-
'onClick:append'?: EventProp<(
|
|
330
|
-
'onClick:prepend'?: EventProp<(
|
|
329
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
330
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
331
331
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
332
332
|
validationValue?: any;
|
|
333
333
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -417,8 +417,8 @@ declare const VSwitch: {
|
|
|
417
417
|
modelValue?: any;
|
|
418
418
|
prependIcon?: IconValue | undefined;
|
|
419
419
|
appendIcon?: IconValue | undefined;
|
|
420
|
-
'onClick:append'?: EventProp<(
|
|
421
|
-
'onClick:prepend'?: EventProp<(
|
|
420
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
421
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
422
422
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
423
423
|
validationValue?: any;
|
|
424
424
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -558,8 +558,8 @@ declare const VSwitch: {
|
|
|
558
558
|
default: string;
|
|
559
559
|
validator: (v: any) => boolean;
|
|
560
560
|
};
|
|
561
|
-
'onClick:prepend': vue.PropType<EventProp<(
|
|
562
|
-
'onClick:append': vue.PropType<EventProp<(
|
|
561
|
+
'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
562
|
+
'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
563
563
|
indeterminate: BooleanConstructor;
|
|
564
564
|
inset: BooleanConstructor;
|
|
565
565
|
flat: BooleanConstructor;
|
|
@@ -628,8 +628,8 @@ declare const VSwitch: {
|
|
|
628
628
|
default: string;
|
|
629
629
|
validator: (v: any) => boolean;
|
|
630
630
|
};
|
|
631
|
-
'onClick:prepend': vue.PropType<EventProp<(
|
|
632
|
-
'onClick:append': vue.PropType<EventProp<(
|
|
631
|
+
'onClick:prepend': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
632
|
+
'onClick:append': vue.PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
633
633
|
indeterminate: BooleanConstructor;
|
|
634
634
|
inset: BooleanConstructor;
|
|
635
635
|
flat: BooleanConstructor;
|
|
@@ -13,7 +13,6 @@ import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Utiliti
|
|
|
13
13
|
import { cloneVNode, computed, nextTick, ref } from 'vue';
|
|
14
14
|
import { callEvent, filterInputAttrs, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
15
15
|
const activeTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month'];
|
|
16
|
-
const EventProp = [Function, Array];
|
|
17
16
|
export const makeVTextFieldProps = propsFactory({
|
|
18
17
|
autofocus: Boolean,
|
|
19
18
|
counter: [Boolean, Number, String],
|
|
@@ -29,6 +28,7 @@ export const makeVTextFieldProps = propsFactory({
|
|
|
29
28
|
type: String,
|
|
30
29
|
default: 'text'
|
|
31
30
|
},
|
|
31
|
+
modelModifiers: Object,
|
|
32
32
|
...makeVInputProps(),
|
|
33
33
|
...makeVFieldProps()
|
|
34
34
|
}, 'v-text-field');
|
|
@@ -103,7 +103,7 @@ export const VTextField = genericComponent()({
|
|
|
103
103
|
function onInput(e) {
|
|
104
104
|
const el = e.target;
|
|
105
105
|
model.value = el.value;
|
|
106
|
-
if (['text', 'search', 'password', 'tel', 'url'].includes(props.type)) {
|
|
106
|
+
if (props.modelModifiers?.trim && ['text', 'search', 'password', 'tel', 'url'].includes(props.type)) {
|
|
107
107
|
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
108
108
|
nextTick(() => {
|
|
109
109
|
el.selectionStart = caretPosition[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VTextField.mjs","names":["filterFieldProps","makeVFieldProps","VField","filterInputProps","makeVInputProps","VInput","VCounter","Intersect","forwardRefs","useFocus","useProxiedModel","cloneVNode","computed","nextTick","ref","callEvent","filterInputAttrs","genericComponent","propsFactory","useRender","activeTypes","EventProp","Function","Array","makeVTextFieldProps","autofocus","Boolean","counter","Number","String","counterValue","hint","persistentHint","prefix","placeholder","persistentPlaceholder","persistentCounter","suffix","type","default","VTextField","name","directives","inheritAttrs","props","emits","e","focused","val","setup","_ref","attrs","emit","slots","model","isFocused","focus","blur","value","toString","length","max","maxlength","undefined","onIntersect","isIntersecting","entries","target","vInputRef","vFieldRef","inputRef","isActive","includes","messages","onFocus","document","activeElement","onControlMousedown","preventDefault","onControlClick","onClear","stopPropagation","onInput","el","caretPosition","selectionStart","selectionEnd","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","fieldProps","_createVNode","_mergeProps","$event","variant","_ref2","id","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","class","fieldClass","slotProps","inputNode","_withDirectives","_resolveDirective","handler","once","_Fragment"],"sources":["../../../src/components/VTextField/VTextField.tsx"],"sourcesContent":["// Styles\nimport './VTextField.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps, VField } from '@/components/VField/VField'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter } from '@/components/VCounter'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { cloneVNode, computed, nextTick, ref } from 'vue'\nimport { callEvent, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nconst activeTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\ntype EventProp<T = (...args: any[]) => any> = T | T[]\nconst EventProp = [Function, Array] as PropType<EventProp>\n\nexport const makeVTextFieldProps = propsFactory({\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n hint: String,\n persistentHint: Boolean,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n}, 'v-text-field')\n\nexport const VTextField = genericComponent<Omit<VInputSlots & VFieldSlots, 'default'> & MakeSlots<{\n default: []\n}>>()({\n name: 'VTextField',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextFieldProps(),\n\n emits: {\n 'click:control': (e: MouseEvent) => true,\n 'mousedown:control': (e: MouseEvent) => true,\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value ?? '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as unknown as undefined\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VField>()\n const inputRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n activeTypes.includes(props.type) ||\n props.persistentPlaceholder ||\n isFocused.value\n ))\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (isFocused.value || props.persistentHint) ? props.hint : ''\n })\n function onFocus () {\n if (inputRef.value !== document.activeElement) {\n inputRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n\n if (e.target === inputRef.value) return\n\n onFocus()\n e.preventDefault()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = null\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLInputElement\n model.value = el.value\n if (['text', 'search', 'password', 'tel', 'url'].includes(props.type)) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const hasDetails = !!(hasCounter || slots.details)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = filterInputProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-text-field',\n {\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant),\n },\n ]}\n onClick:prepend={ props['onClick:prepend'] }\n onClick:append={ props['onClick:append'] }\n { ...rootAttrs }\n { ...inputProps }\n focused={ isFocused.value }\n messages={ messages.value }\n >\n {{\n ...slots,\n default: ({\n id,\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n onMousedown={ onControlMousedown }\n onClick={ onControlClick }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\n id={ id.value }\n active={ isActive.value || isDirty.value }\n dirty={ isDirty.value || props.dirty }\n disabled={ isDisabled.value }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => {\n const inputNode = (\n <input\n ref={ inputRef }\n value={ model.value }\n onInput={ onInput }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n name={ props.name }\n placeholder={ props.placeholder }\n size={ 1 }\n type={ props.type }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n )\n\n return (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n { slots.default ? (\n <div\n class={ fieldClass }\n data-no-activator=\"\"\n >\n { slots.default() }\n { inputNode }\n </div>\n ) : cloneVNode(inputNode, { class: fieldClass })}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n )}\n </>\n )\n },\n }}\n </VField>\n ),\n details: hasDetails ? slotProps => (\n <>\n { slots.details?.(slotProps) }\n\n { hasCounter && (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots:default={ slots.counter }\n />\n </>\n )}\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return forwardRefs({}, vInputRef, vFieldRef, inputRef)\n },\n})\n\nexport type VTextField = InstanceType<typeof VTextField>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VTextField.mjs","names":["filterFieldProps","makeVFieldProps","VField","filterInputProps","makeVInputProps","VInput","VCounter","Intersect","forwardRefs","useFocus","useProxiedModel","cloneVNode","computed","nextTick","ref","callEvent","filterInputAttrs","genericComponent","propsFactory","useRender","activeTypes","makeVTextFieldProps","autofocus","Boolean","counter","Number","String","counterValue","Function","hint","persistentHint","prefix","placeholder","persistentPlaceholder","persistentCounter","suffix","type","default","modelModifiers","Object","VTextField","name","directives","inheritAttrs","props","emits","e","focused","val","setup","_ref","attrs","emit","slots","model","isFocused","focus","blur","value","toString","length","max","maxlength","undefined","onIntersect","isIntersecting","entries","target","vInputRef","vFieldRef","inputRef","isActive","includes","messages","onFocus","document","activeElement","onControlMousedown","preventDefault","onControlClick","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","fieldProps","_createVNode","_mergeProps","$event","variant","_ref2","id","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","class","fieldClass","slotProps","inputNode","_withDirectives","_resolveDirective","handler","once","_Fragment"],"sources":["../../../src/components/VTextField/VTextField.tsx"],"sourcesContent":["// Styles\nimport './VTextField.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps, VField } from '@/components/VField/VField'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter } from '@/components/VCounter'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { cloneVNode, computed, nextTick, ref } from 'vue'\nimport { callEvent, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nconst activeTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\nexport const makeVTextFieldProps = propsFactory({\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n hint: String,\n persistentHint: Boolean,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n modelModifiers: Object as PropType<Record<string, boolean>>,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n}, 'v-text-field')\n\nexport const VTextField = genericComponent<Omit<VInputSlots & VFieldSlots, 'default'> & MakeSlots<{\n default: []\n}>>()({\n name: 'VTextField',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextFieldProps(),\n\n emits: {\n 'click:control': (e: MouseEvent) => true,\n 'mousedown:control': (e: MouseEvent) => true,\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value ?? '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as unknown as undefined\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VField>()\n const inputRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n activeTypes.includes(props.type) ||\n props.persistentPlaceholder ||\n isFocused.value\n ))\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (isFocused.value || props.persistentHint) ? props.hint : ''\n })\n function onFocus () {\n if (inputRef.value !== document.activeElement) {\n inputRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n\n if (e.target === inputRef.value) return\n\n onFocus()\n e.preventDefault()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = null\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLInputElement\n model.value = el.value\n if (\n props.modelModifiers?.trim &&\n ['text', 'search', 'password', 'tel', 'url'].includes(props.type)\n ) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const hasDetails = !!(hasCounter || slots.details)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = filterInputProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-text-field',\n {\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant),\n },\n ]}\n onClick:prepend={ props['onClick:prepend'] }\n onClick:append={ props['onClick:append'] }\n { ...rootAttrs }\n { ...inputProps }\n focused={ isFocused.value }\n messages={ messages.value }\n >\n {{\n ...slots,\n default: ({\n id,\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n onMousedown={ onControlMousedown }\n onClick={ onControlClick }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\n id={ id.value }\n active={ isActive.value || isDirty.value }\n dirty={ isDirty.value || props.dirty }\n disabled={ isDisabled.value }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => {\n const inputNode = (\n <input\n ref={ inputRef }\n value={ model.value }\n onInput={ onInput }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n name={ props.name }\n placeholder={ props.placeholder }\n size={ 1 }\n type={ props.type }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n )\n\n return (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n { slots.default ? (\n <div\n class={ fieldClass }\n data-no-activator=\"\"\n >\n { slots.default() }\n { inputNode }\n </div>\n ) : cloneVNode(inputNode, { class: fieldClass })}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n )}\n </>\n )\n },\n }}\n </VField>\n ),\n details: hasDetails ? slotProps => (\n <>\n { slots.details?.(slotProps) }\n\n { hasCounter && (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots:default={ slots.counter }\n />\n </>\n )}\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return forwardRefs({}, vInputRef, vFieldRef, inputRef)\n },\n})\n\nexport type VTextField = InstanceType<typeof VTextField>\n"],"mappings":"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"}
|
|
@@ -5,8 +5,8 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
|
|
|
5
5
|
filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): [yes: Partial<Pick<T, U>>, no: Omit<T, U>];
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
type EventProp<T = (...args:
|
|
9
|
-
declare const EventProp: PropType<EventProp<(...args:
|
|
8
|
+
type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
|
|
9
|
+
declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
|
|
10
10
|
|
|
11
11
|
interface LoaderSlotProps {
|
|
12
12
|
color: string | undefined;
|
|
@@ -114,17 +114,18 @@ declare const VTextField: {
|
|
|
114
114
|
appendIcon?: IconValue | undefined;
|
|
115
115
|
appendInnerIcon?: IconValue | undefined;
|
|
116
116
|
prependInnerIcon?: IconValue | undefined;
|
|
117
|
-
'onClick:clear'?: EventProp<(
|
|
118
|
-
'onClick:append'?: EventProp<(
|
|
119
|
-
'onClick:prepend'?: EventProp<(
|
|
120
|
-
'onClick:appendInner'?: EventProp<(
|
|
121
|
-
'onClick:prependInner'?: EventProp<(
|
|
117
|
+
'onClick:clear'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
118
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
119
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
120
|
+
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
121
|
+
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
122
122
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
123
123
|
validationValue?: any;
|
|
124
124
|
hideDetails?: boolean | "auto" | undefined;
|
|
125
125
|
hint?: string | undefined;
|
|
126
126
|
suffix?: string | undefined;
|
|
127
127
|
counterValue?: ((value: any) => number) | undefined;
|
|
128
|
+
modelModifiers?: Record<string, boolean> | undefined;
|
|
128
129
|
} & {
|
|
129
130
|
$children?: {} | vue.VNodeChild | {
|
|
130
131
|
clear?: (() => vue.VNodeChild) | undefined;
|
|
@@ -228,17 +229,18 @@ declare const VTextField: {
|
|
|
228
229
|
appendIcon?: IconValue | undefined;
|
|
229
230
|
appendInnerIcon?: IconValue | undefined;
|
|
230
231
|
prependInnerIcon?: IconValue | undefined;
|
|
231
|
-
'onClick:clear'?: EventProp<(
|
|
232
|
-
'onClick:append'?: EventProp<(
|
|
233
|
-
'onClick:prepend'?: EventProp<(
|
|
234
|
-
'onClick:appendInner'?: EventProp<(
|
|
235
|
-
'onClick:prependInner'?: EventProp<(
|
|
232
|
+
'onClick:clear'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
233
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
234
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
235
|
+
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
236
|
+
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
236
237
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
237
238
|
validationValue?: any;
|
|
238
239
|
hideDetails?: boolean | "auto" | undefined;
|
|
239
240
|
hint?: string | undefined;
|
|
240
241
|
suffix?: string | undefined;
|
|
241
242
|
counterValue?: ((value: any) => number) | undefined;
|
|
243
|
+
modelModifiers?: Record<string, boolean> | undefined;
|
|
242
244
|
} & {
|
|
243
245
|
$children?: {} | vue.VNodeChild | {
|
|
244
246
|
clear?: (() => vue.VNodeChild) | undefined;
|
|
@@ -320,8 +322,8 @@ declare const VTextField: {
|
|
|
320
322
|
modelValue?: any;
|
|
321
323
|
prependIcon?: IconValue | undefined;
|
|
322
324
|
appendIcon?: IconValue | undefined;
|
|
323
|
-
'onClick:append'?: EventProp<(
|
|
324
|
-
'onClick:prepend'?: EventProp<(
|
|
325
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
326
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
325
327
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
326
328
|
validationValue?: any;
|
|
327
329
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -383,8 +385,8 @@ declare const VTextField: {
|
|
|
383
385
|
modelValue?: any;
|
|
384
386
|
prependIcon?: IconValue | undefined;
|
|
385
387
|
appendIcon?: IconValue | undefined;
|
|
386
|
-
'onClick:append'?: EventProp<(
|
|
387
|
-
'onClick:prepend'?: EventProp<(
|
|
388
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
389
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
388
390
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
389
391
|
validationValue?: any;
|
|
390
392
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -469,8 +471,8 @@ declare const VTextField: {
|
|
|
469
471
|
modelValue?: any;
|
|
470
472
|
prependIcon?: IconValue | undefined;
|
|
471
473
|
appendIcon?: IconValue | undefined;
|
|
472
|
-
'onClick:append'?: EventProp<(
|
|
473
|
-
'onClick:prepend'?: EventProp<(
|
|
474
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
475
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
474
476
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
475
477
|
validationValue?: any;
|
|
476
478
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -544,9 +546,9 @@ declare const VTextField: {
|
|
|
544
546
|
default: string;
|
|
545
547
|
validator: (v: any) => boolean;
|
|
546
548
|
};
|
|
547
|
-
'onClick:clear': PropType<EventProp<(
|
|
548
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
549
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
549
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
550
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
551
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
550
552
|
focused: BooleanConstructor;
|
|
551
553
|
id: StringConstructor;
|
|
552
554
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -590,9 +592,9 @@ declare const VTextField: {
|
|
|
590
592
|
default: string;
|
|
591
593
|
validator: (v: any) => boolean;
|
|
592
594
|
};
|
|
593
|
-
'onClick:clear': PropType<EventProp<(
|
|
594
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
595
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
595
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
596
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
597
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
596
598
|
focused: BooleanConstructor;
|
|
597
599
|
id: StringConstructor;
|
|
598
600
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -659,9 +661,9 @@ declare const VTextField: {
|
|
|
659
661
|
default: string;
|
|
660
662
|
validator: (v: any) => boolean;
|
|
661
663
|
};
|
|
662
|
-
'onClick:clear': PropType<EventProp<(
|
|
663
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
664
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
664
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
665
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
666
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
665
667
|
focused: BooleanConstructor;
|
|
666
668
|
id: StringConstructor;
|
|
667
669
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -794,17 +796,18 @@ declare const VTextField: {
|
|
|
794
796
|
appendIcon?: IconValue | undefined;
|
|
795
797
|
appendInnerIcon?: IconValue | undefined;
|
|
796
798
|
prependInnerIcon?: IconValue | undefined;
|
|
797
|
-
'onClick:clear'?: EventProp<(
|
|
798
|
-
'onClick:append'?: EventProp<(
|
|
799
|
-
'onClick:prepend'?: EventProp<(
|
|
800
|
-
'onClick:appendInner'?: EventProp<(
|
|
801
|
-
'onClick:prependInner'?: EventProp<(
|
|
799
|
+
'onClick:clear'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
800
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
801
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
802
|
+
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
803
|
+
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
802
804
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
803
805
|
validationValue?: any;
|
|
804
806
|
hideDetails?: boolean | "auto" | undefined;
|
|
805
807
|
hint?: string | undefined;
|
|
806
808
|
suffix?: string | undefined;
|
|
807
809
|
counterValue?: ((value: any) => number) | undefined;
|
|
810
|
+
modelModifiers?: Record<string, boolean> | undefined;
|
|
808
811
|
} & {
|
|
809
812
|
$children?: {} | vue.VNodeChild | {
|
|
810
813
|
clear?: (() => vue.VNodeChild) | undefined;
|
|
@@ -886,8 +889,8 @@ declare const VTextField: {
|
|
|
886
889
|
modelValue?: any;
|
|
887
890
|
prependIcon?: IconValue | undefined;
|
|
888
891
|
appendIcon?: IconValue | undefined;
|
|
889
|
-
'onClick:append'?: EventProp<(
|
|
890
|
-
'onClick:prepend'?: EventProp<(
|
|
892
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
893
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
891
894
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
892
895
|
validationValue?: any;
|
|
893
896
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -949,8 +952,8 @@ declare const VTextField: {
|
|
|
949
952
|
modelValue?: any;
|
|
950
953
|
prependIcon?: IconValue | undefined;
|
|
951
954
|
appendIcon?: IconValue | undefined;
|
|
952
|
-
'onClick:append'?: EventProp<(
|
|
953
|
-
'onClick:prepend'?: EventProp<(
|
|
955
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
956
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
954
957
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
955
958
|
validationValue?: any;
|
|
956
959
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -1035,8 +1038,8 @@ declare const VTextField: {
|
|
|
1035
1038
|
modelValue?: any;
|
|
1036
1039
|
prependIcon?: IconValue | undefined;
|
|
1037
1040
|
appendIcon?: IconValue | undefined;
|
|
1038
|
-
'onClick:append'?: EventProp<(
|
|
1039
|
-
'onClick:prepend'?: EventProp<(
|
|
1041
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1042
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1040
1043
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
1041
1044
|
validationValue?: any;
|
|
1042
1045
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -1110,9 +1113,9 @@ declare const VTextField: {
|
|
|
1110
1113
|
default: string;
|
|
1111
1114
|
validator: (v: any) => boolean;
|
|
1112
1115
|
};
|
|
1113
|
-
'onClick:clear': PropType<EventProp<(
|
|
1114
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1115
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1116
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1117
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1118
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1116
1119
|
focused: BooleanConstructor;
|
|
1117
1120
|
id: StringConstructor;
|
|
1118
1121
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1156,9 +1159,9 @@ declare const VTextField: {
|
|
|
1156
1159
|
default: string;
|
|
1157
1160
|
validator: (v: any) => boolean;
|
|
1158
1161
|
};
|
|
1159
|
-
'onClick:clear': PropType<EventProp<(
|
|
1160
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1161
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1162
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1163
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1164
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1162
1165
|
focused: BooleanConstructor;
|
|
1163
1166
|
id: StringConstructor;
|
|
1164
1167
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1225,9 +1228,9 @@ declare const VTextField: {
|
|
|
1225
1228
|
default: string;
|
|
1226
1229
|
validator: (v: any) => boolean;
|
|
1227
1230
|
};
|
|
1228
|
-
'onClick:clear': PropType<EventProp<(
|
|
1229
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1230
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1231
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1232
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1233
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1231
1234
|
focused: BooleanConstructor;
|
|
1232
1235
|
id: StringConstructor;
|
|
1233
1236
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1315,17 +1318,18 @@ declare const VTextField: {
|
|
|
1315
1318
|
appendIcon?: IconValue | undefined;
|
|
1316
1319
|
appendInnerIcon?: IconValue | undefined;
|
|
1317
1320
|
prependInnerIcon?: IconValue | undefined;
|
|
1318
|
-
'onClick:clear'?: EventProp<(
|
|
1319
|
-
'onClick:append'?: EventProp<(
|
|
1320
|
-
'onClick:prepend'?: EventProp<(
|
|
1321
|
-
'onClick:appendInner'?: EventProp<(
|
|
1322
|
-
'onClick:prependInner'?: EventProp<(
|
|
1321
|
+
'onClick:clear'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1322
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1323
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1324
|
+
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1325
|
+
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1323
1326
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
1324
1327
|
validationValue?: any;
|
|
1325
1328
|
hideDetails?: boolean | "auto" | undefined;
|
|
1326
1329
|
hint?: string | undefined;
|
|
1327
1330
|
suffix?: string | undefined;
|
|
1328
1331
|
counterValue?: ((value: any) => number) | undefined;
|
|
1332
|
+
modelModifiers?: Record<string, boolean> | undefined;
|
|
1329
1333
|
} & {
|
|
1330
1334
|
$children?: {} | vue.VNodeChild | {
|
|
1331
1335
|
clear?: (() => vue.VNodeChild) | undefined;
|
|
@@ -1407,8 +1411,8 @@ declare const VTextField: {
|
|
|
1407
1411
|
modelValue?: any;
|
|
1408
1412
|
prependIcon?: IconValue | undefined;
|
|
1409
1413
|
appendIcon?: IconValue | undefined;
|
|
1410
|
-
'onClick:append'?: EventProp<(
|
|
1411
|
-
'onClick:prepend'?: EventProp<(
|
|
1414
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1415
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1412
1416
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
1413
1417
|
validationValue?: any;
|
|
1414
1418
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -1470,8 +1474,8 @@ declare const VTextField: {
|
|
|
1470
1474
|
modelValue?: any;
|
|
1471
1475
|
prependIcon?: IconValue | undefined;
|
|
1472
1476
|
appendIcon?: IconValue | undefined;
|
|
1473
|
-
'onClick:append'?: EventProp<(
|
|
1474
|
-
'onClick:prepend'?: EventProp<(
|
|
1477
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1478
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1475
1479
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
1476
1480
|
validationValue?: any;
|
|
1477
1481
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -1556,8 +1560,8 @@ declare const VTextField: {
|
|
|
1556
1560
|
modelValue?: any;
|
|
1557
1561
|
prependIcon?: IconValue | undefined;
|
|
1558
1562
|
appendIcon?: IconValue | undefined;
|
|
1559
|
-
'onClick:append'?: EventProp<(
|
|
1560
|
-
'onClick:prepend'?: EventProp<(
|
|
1563
|
+
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1564
|
+
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
|
1561
1565
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
|
1562
1566
|
validationValue?: any;
|
|
1563
1567
|
hideDetails?: boolean | "auto" | undefined;
|
|
@@ -1631,9 +1635,9 @@ declare const VTextField: {
|
|
|
1631
1635
|
default: string;
|
|
1632
1636
|
validator: (v: any) => boolean;
|
|
1633
1637
|
};
|
|
1634
|
-
'onClick:clear': PropType<EventProp<(
|
|
1635
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1636
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1638
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1639
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1640
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1637
1641
|
focused: BooleanConstructor;
|
|
1638
1642
|
id: StringConstructor;
|
|
1639
1643
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1677,9 +1681,9 @@ declare const VTextField: {
|
|
|
1677
1681
|
default: string;
|
|
1678
1682
|
validator: (v: any) => boolean;
|
|
1679
1683
|
};
|
|
1680
|
-
'onClick:clear': PropType<EventProp<(
|
|
1681
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1682
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1684
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1685
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1686
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1683
1687
|
focused: BooleanConstructor;
|
|
1684
1688
|
id: StringConstructor;
|
|
1685
1689
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1746,9 +1750,9 @@ declare const VTextField: {
|
|
|
1746
1750
|
default: string;
|
|
1747
1751
|
validator: (v: any) => boolean;
|
|
1748
1752
|
};
|
|
1749
|
-
'onClick:clear': PropType<EventProp<(
|
|
1750
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1751
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1753
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1754
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1755
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1752
1756
|
focused: BooleanConstructor;
|
|
1753
1757
|
id: StringConstructor;
|
|
1754
1758
|
}, "$children" | "v-slot:default" | "$slots" | "v-slots" | "modelValue" | "onUpdate:modelValue" | "v-slot:loader" | "v-slot:clear" | "v-slot:label" | "v-slot:prepend-inner" | "v-slot:append-inner">>> & {
|
|
@@ -1846,9 +1850,9 @@ declare const VTextField: {
|
|
|
1846
1850
|
default: string;
|
|
1847
1851
|
validator: (v: any) => boolean;
|
|
1848
1852
|
};
|
|
1849
|
-
'onClick:clear': PropType<EventProp<(
|
|
1850
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1851
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1853
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1854
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1855
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1852
1856
|
focused: BooleanConstructor;
|
|
1853
1857
|
errorMessages: {
|
|
1854
1858
|
type: PropType<string | string[]>;
|
|
@@ -1885,8 +1889,8 @@ declare const VTextField: {
|
|
|
1885
1889
|
default: string;
|
|
1886
1890
|
validator: (v: any) => boolean;
|
|
1887
1891
|
};
|
|
1888
|
-
'onClick:prepend': PropType<EventProp<(
|
|
1889
|
-
'onClick:append': PropType<EventProp<(
|
|
1892
|
+
'onClick:prepend': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1893
|
+
'onClick:append': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1890
1894
|
autofocus: BooleanConstructor;
|
|
1891
1895
|
counter: PropType<string | number | true>;
|
|
1892
1896
|
counterValue: PropType<(value: any) => number>;
|
|
@@ -1901,6 +1905,7 @@ declare const VTextField: {
|
|
|
1901
1905
|
type: StringConstructor;
|
|
1902
1906
|
default: string;
|
|
1903
1907
|
};
|
|
1908
|
+
modelModifiers: PropType<Record<string, boolean>>;
|
|
1904
1909
|
}, vue.ExtractPropTypes<{
|
|
1905
1910
|
loading: (StringConstructor | BooleanConstructor)[];
|
|
1906
1911
|
theme: StringConstructor;
|
|
@@ -1926,9 +1931,9 @@ declare const VTextField: {
|
|
|
1926
1931
|
default: string;
|
|
1927
1932
|
validator: (v: any) => boolean;
|
|
1928
1933
|
};
|
|
1929
|
-
'onClick:clear': PropType<EventProp<(
|
|
1930
|
-
'onClick:appendInner': PropType<EventProp<(
|
|
1931
|
-
'onClick:prependInner': PropType<EventProp<(
|
|
1934
|
+
'onClick:clear': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1935
|
+
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1936
|
+
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1932
1937
|
focused: BooleanConstructor;
|
|
1933
1938
|
errorMessages: {
|
|
1934
1939
|
type: PropType<string | string[]>;
|
|
@@ -1965,8 +1970,8 @@ declare const VTextField: {
|
|
|
1965
1970
|
default: string;
|
|
1966
1971
|
validator: (v: any) => boolean;
|
|
1967
1972
|
};
|
|
1968
|
-
'onClick:prepend': PropType<EventProp<(
|
|
1969
|
-
'onClick:append': PropType<EventProp<(
|
|
1973
|
+
'onClick:prepend': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1974
|
+
'onClick:append': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
|
1970
1975
|
autofocus: BooleanConstructor;
|
|
1971
1976
|
counter: PropType<string | number | true>;
|
|
1972
1977
|
counterValue: PropType<(value: any) => number>;
|
|
@@ -1981,6 +1986,7 @@ declare const VTextField: {
|
|
|
1981
1986
|
type: StringConstructor;
|
|
1982
1987
|
default: string;
|
|
1983
1988
|
};
|
|
1989
|
+
modelModifiers: PropType<Record<string, boolean>>;
|
|
1984
1990
|
}>>;
|
|
1985
1991
|
type VTextField = InstanceType<typeof VTextField>;
|
|
1986
1992
|
|
|
@@ -42,6 +42,7 @@ export const VTextarea = genericComponent()({
|
|
|
42
42
|
validator: v => !isNaN(parseFloat(v))
|
|
43
43
|
},
|
|
44
44
|
suffix: String,
|
|
45
|
+
modelModifiers: Object,
|
|
45
46
|
...makeVInputProps(),
|
|
46
47
|
...makeVFieldProps()
|
|
47
48
|
},
|
|
@@ -106,12 +107,14 @@ export const VTextarea = genericComponent()({
|
|
|
106
107
|
}
|
|
107
108
|
function onInput(e) {
|
|
108
109
|
const el = e.target;
|
|
109
|
-
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
110
110
|
model.value = el.value;
|
|
111
|
-
|
|
112
|
-
el.selectionStart
|
|
113
|
-
|
|
114
|
-
|
|
111
|
+
if (props.modelModifiers?.trim) {
|
|
112
|
+
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
113
|
+
nextTick(() => {
|
|
114
|
+
el.selectionStart = caretPosition[0];
|
|
115
|
+
el.selectionEnd = caretPosition[1];
|
|
116
|
+
});
|
|
117
|
+
}
|
|
115
118
|
}
|
|
116
119
|
const sizerRef = ref();
|
|
117
120
|
function calculateInputHeight() {
|