@vuetify/nightly 4.0.0-dev-20230419.0 → 4.0.0-dev-20230422.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 +7 -2
- package/dist/json/attributes.json +172 -108
- package/dist/json/importMap.json +58 -58
- package/dist/json/tags.json +16 -0
- package/dist/json/web-types.json +522 -220
- package/dist/vuetify-labs.css +335 -172
- package/dist/vuetify-labs.d.ts +620 -171
- package/dist/vuetify-labs.esm.js +864 -182
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +864 -181
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +166 -3
- package/dist/vuetify.d.ts +584 -167
- package/dist/vuetify.esm.js +806 -134
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +806 -133
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +748 -682
- package/dist/vuetify.min.js.map +1 -1
- package/lib/adapters/date-adapter.mjs +2 -0
- package/lib/adapters/date-adapter.mjs.map +1 -0
- package/lib/adapters/vuetify.mjs +399 -0
- package/lib/adapters/vuetify.mjs.map +1 -0
- package/lib/blueprints/index.d.ts +34 -0
- package/lib/blueprints/md1.d.ts +34 -0
- package/lib/blueprints/md2.d.ts +34 -0
- package/lib/blueprints/md3.d.ts +34 -0
- package/lib/components/VAppBar/VAppBar.mjs +62 -10
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.ts +26 -0
- package/lib/components/VAutocomplete/VAutocomplete.css +9 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +50 -6
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +10 -0
- package/lib/components/VAutocomplete/index.d.ts +29 -17
- package/lib/components/VBtn/_mixins.scss +1 -1
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +21 -16
- package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.ts +22 -1
- package/lib/components/VCombobox/VCombobox.css +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +6 -4
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +1 -1
- package/lib/components/VCombobox/index.d.ts +29 -17
- package/lib/components/VField/index.d.ts +6 -0
- package/lib/components/VFileInput/VFileInput.mjs +13 -17
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +68 -23
- package/lib/components/VInput/VInput.mjs +14 -7
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +22 -1
- package/lib/components/VOverlay/locationStrategies.mjs +9 -4
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +22 -1
- package/lib/components/VRangeSlider/VRangeSlider.mjs +33 -22
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +39 -6
- package/lib/components/VSelect/VSelect.mjs +6 -0
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +32 -17
- package/lib/components/VSlider/VSlider.mjs +33 -15
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +39 -6
- package/lib/components/VSlider/slider.mjs +43 -23
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.mjs +5 -3
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.ts +43 -1
- package/lib/components/VTextField/VTextField.mjs +4 -12
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +70 -22
- package/lib/components/VTextarea/VTextarea.mjs +4 -12
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +61 -22
- package/lib/components/VToolbar/VToolbar.css +3 -1
- package/lib/components/VToolbar/VToolbar.sass +3 -1
- package/lib/components/VValidation/index.d.ts +10 -1
- package/lib/components/index.d.ts +525 -150
- package/lib/composables/date.mjs +39 -0
- package/lib/composables/date.mjs.map +1 -0
- package/lib/composables/focus.mjs +3 -2
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/index.mjs +1 -0
- package/lib/composables/index.mjs.map +1 -1
- package/lib/composables/items.mjs +7 -2
- package/lib/composables/items.mjs.map +1 -1
- package/lib/composables/scroll.mjs +3 -0
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +8 -3
- package/lib/framework.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.mjs +2 -2
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/index.d.ts +59 -17
- package/lib/labs/VDataTable/VDataTable.mjs +2 -2
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +52 -44
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +2 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +0 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/options.mjs +2 -1
- package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.ts +44 -11
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +1 -0
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
- package/lib/labs/components.d.ts +53 -20
- package/lib/styles/main.css +152 -0
- package/lib/styles/settings/_utilities.scss +11 -1
- package/lib/util/helpers.mjs +4 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
@@ -5,7 +5,7 @@ import "../VTextField/VTextField.css";
|
|
5
5
|
|
6
6
|
// Components
|
7
7
|
import { filterFieldProps, makeVFieldProps } from "../VField/VField.mjs";
|
8
|
-
import {
|
8
|
+
import { makeVInputProps, VInput } from "../VInput/VInput.mjs";
|
9
9
|
import { VCounter } from "../VCounter/index.mjs";
|
10
10
|
import { VField } from "../VField/index.mjs"; // Directives
|
11
11
|
import Intersect from "../../directives/intersect/index.mjs"; // Composables
|
@@ -25,8 +25,6 @@ export const VTextarea = genericComponent()({
|
|
25
25
|
autofocus: Boolean,
|
26
26
|
counter: [Boolean, Number, String],
|
27
27
|
counterValue: Function,
|
28
|
-
hint: String,
|
29
|
-
persistentHint: Boolean,
|
30
28
|
prefix: String,
|
31
29
|
placeholder: String,
|
32
30
|
persistentPlaceholder: Boolean,
|
@@ -81,9 +79,6 @@ export const VTextarea = genericComponent()({
|
|
81
79
|
const controlHeight = ref('');
|
82
80
|
const textareaRef = ref();
|
83
81
|
const isActive = computed(() => isFocused.value || props.persistentPlaceholder);
|
84
|
-
const messages = computed(() => {
|
85
|
-
return props.messages.length ? props.messages : isFocused.value || props.persistentHint ? props.hint : '';
|
86
|
-
});
|
87
82
|
function onFocus() {
|
88
83
|
if (textareaRef.value !== document.activeElement) {
|
89
84
|
textareaRef.value?.focus();
|
@@ -155,7 +150,7 @@ export const VTextarea = genericComponent()({
|
|
155
150
|
const [{
|
156
151
|
modelValue: _,
|
157
152
|
...inputProps
|
158
|
-
}] =
|
153
|
+
}] = VInput.filterProps(props);
|
159
154
|
const [fieldProps] = filterFieldProps(props);
|
160
155
|
return _createVNode(VInput, _mergeProps({
|
161
156
|
"ref": vInputRef,
|
@@ -169,12 +164,9 @@ export const VTextarea = genericComponent()({
|
|
169
164
|
'v-textarea--auto-grow': props.autoGrow,
|
170
165
|
'v-textarea--no-resize': props.noResize || props.autoGrow,
|
171
166
|
'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant)
|
172
|
-
}]
|
173
|
-
"onClick:prepend": props['onClick:prepend'],
|
174
|
-
"onClick:append": props['onClick:append']
|
167
|
+
}]
|
175
168
|
}, rootAttrs, inputProps, {
|
176
|
-
"focused": isFocused.value
|
177
|
-
"messages": messages.value
|
169
|
+
"focused": isFocused.value
|
178
170
|
}), {
|
179
171
|
...slots,
|
180
172
|
default: _ref2 => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTextarea.mjs","names":["filterFieldProps","makeVFieldProps","filterInputProps","makeVInputProps","VInput","VCounter","VField","Intersect","forwardRefs","useFocus","useProxiedModel","computed","nextTick","onBeforeUnmount","onMounted","ref","watch","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","useRender","VTextarea","name","directives","inheritAttrs","props","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","hint","persistentHint","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","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","controlHeight","textareaRef","isActive","messages","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","fieldProps","_createVNode","_mergeProps","$event","includes","variant","_ref2","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","class","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter } from '@/components/VCounter'\nimport { VField } from '@/components/VField'\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 { computed, nextTick, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const VTextarea = genericComponent<Omit<VInputSlots & VFieldSlots, 'default'>>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: {\n autoGrow: Boolean,\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 noResize: Boolean,\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n maxRows: {\n type: [Number, String],\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n suffix: String,\n modelModifiers: Object as PropType<Record<string, boolean>>,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n },\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 string | number\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<VInput>()\n const controlHeight = ref('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n isFocused.value ||\n props.persistentPlaceholder\n ))\n\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (isFocused.value || props.persistentHint) ? props.hint : ''\n })\n\n function onFocus () {\n if (textareaRef.value !== document.activeElement) {\n textareaRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLTextAreaElement\n model.value = el.value\n if (props.modelModifiers?.trim) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n const sizerRef = ref<HTMLTextAreaElement>()\n function calculateInputHeight () {\n if (!props.autoGrow) return\n\n nextTick(() => {\n if (!sizerRef.value || !vFieldRef.value) return\n\n const style = getComputedStyle(sizerRef.value)\n const fieldStyle = getComputedStyle(vFieldRef.value.$el)\n\n const padding = parseFloat(style.getPropertyValue('--v-field-padding-top')) +\n parseFloat(style.getPropertyValue('--v-input-padding-top')) +\n parseFloat(style.getPropertyValue('--v-field-padding-bottom'))\n\n const height = sizerRef.value.scrollHeight\n const lineHeight = parseFloat(style.lineHeight)\n const minHeight = Math.max(\n parseFloat(props.rows) * lineHeight + padding,\n parseFloat(fieldStyle.getPropertyValue('--v-input-control-height'))\n )\n const maxHeight = parseFloat(props.maxRows!) * lineHeight + padding || Infinity\n\n controlHeight.value = convertToUnit(clamp(height ?? 0, minHeight, maxHeight))\n })\n }\n\n onMounted(calculateInputHeight)\n watch(model, calculateInputHeight)\n watch(() => props.rows, calculateInputHeight)\n watch(() => props.maxRows, calculateInputHeight)\n watch(() => props.density, calculateInputHeight)\n\n let observer: ResizeObserver | undefined\n watch(sizerRef, val => {\n if (val) {\n observer = new ResizeObserver(calculateInputHeight)\n observer.observe(sizerRef.value!)\n } else {\n observer?.disconnect()\n }\n })\n onBeforeUnmount(() => {\n observer?.disconnect()\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-textarea v-text-field',\n {\n 'v-textarea--prefixed': props.prefix,\n 'v-textarea--suffixed': props.suffix,\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-textarea--auto-grow': props.autoGrow,\n 'v-textarea--no-resize': props.noResize || props.autoGrow,\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 isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n style={{\n '--v-textarea-control-height': controlHeight.value,\n }}\n onClick={ onControlClick }\n onMousedown={ onControlMousedown }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\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 <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n <textarea\n ref={ textareaRef }\n class={ fieldClass }\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 placeholder={ props.placeholder }\n rows={ props.rows }\n name={ props.name }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { props.autoGrow && (\n <textarea\n class={[\n fieldClass,\n 'v-textarea__sizer',\n ]}\n v-model={ model.value }\n ref={ sizerRef }\n readonly\n aria-hidden=\"true\"\n />\n )}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\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, textareaRef)\n },\n})\n\nexport type VTextarea = InstanceType<typeof VTextarea>\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"VTextarea.mjs","names":["filterFieldProps","makeVFieldProps","makeVInputProps","VInput","VCounter","VField","Intersect","forwardRefs","useFocus","useProxiedModel","computed","nextTick","onBeforeUnmount","onMounted","ref","watch","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","useRender","VTextarea","name","directives","inheritAttrs","props","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","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","controlHeight","textareaRef","isActive","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","filterProps","fieldProps","_createVNode","_mergeProps","$event","includes","variant","_ref2","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","class","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter } from '@/components/VCounter'\nimport { VField } from '@/components/VField'\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 { computed, nextTick, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const VTextarea = genericComponent<Omit<VInputSlots & VFieldSlots, 'default'>>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: {\n autoGrow: Boolean,\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n noResize: Boolean,\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n maxRows: {\n type: [Number, String],\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n suffix: String,\n modelModifiers: Object as PropType<Record<string, boolean>>,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n },\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 string | number\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<VInput>()\n const controlHeight = ref('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n isFocused.value ||\n props.persistentPlaceholder\n ))\n\n function onFocus () {\n if (textareaRef.value !== document.activeElement) {\n textareaRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLTextAreaElement\n model.value = el.value\n if (props.modelModifiers?.trim) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n const sizerRef = ref<HTMLTextAreaElement>()\n function calculateInputHeight () {\n if (!props.autoGrow) return\n\n nextTick(() => {\n if (!sizerRef.value || !vFieldRef.value) return\n\n const style = getComputedStyle(sizerRef.value)\n const fieldStyle = getComputedStyle(vFieldRef.value.$el)\n\n const padding = parseFloat(style.getPropertyValue('--v-field-padding-top')) +\n parseFloat(style.getPropertyValue('--v-input-padding-top')) +\n parseFloat(style.getPropertyValue('--v-field-padding-bottom'))\n\n const height = sizerRef.value.scrollHeight\n const lineHeight = parseFloat(style.lineHeight)\n const minHeight = Math.max(\n parseFloat(props.rows) * lineHeight + padding,\n parseFloat(fieldStyle.getPropertyValue('--v-input-control-height'))\n )\n const maxHeight = parseFloat(props.maxRows!) * lineHeight + padding || Infinity\n\n controlHeight.value = convertToUnit(clamp(height ?? 0, minHeight, maxHeight))\n })\n }\n\n onMounted(calculateInputHeight)\n watch(model, calculateInputHeight)\n watch(() => props.rows, calculateInputHeight)\n watch(() => props.maxRows, calculateInputHeight)\n watch(() => props.density, calculateInputHeight)\n\n let observer: ResizeObserver | undefined\n watch(sizerRef, val => {\n if (val) {\n observer = new ResizeObserver(calculateInputHeight)\n observer.observe(sizerRef.value!)\n } else {\n observer?.disconnect()\n }\n })\n onBeforeUnmount(() => {\n observer?.disconnect()\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 }] = VInput.filterProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-textarea v-text-field',\n {\n 'v-textarea--prefixed': props.prefix,\n 'v-textarea--suffixed': props.suffix,\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-textarea--auto-grow': props.autoGrow,\n 'v-textarea--no-resize': props.noResize || props.autoGrow,\n 'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant),\n },\n ]}\n { ...rootAttrs }\n { ...inputProps }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n style={{\n '--v-textarea-control-height': controlHeight.value,\n }}\n onClick={ onControlClick }\n onMousedown={ onControlMousedown }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\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 <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n <textarea\n ref={ textareaRef }\n class={ fieldClass }\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 placeholder={ props.placeholder }\n rows={ props.rows }\n name={ props.name }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { props.autoGrow && (\n <textarea\n class={[\n fieldClass,\n 'v-textarea__sizer',\n ]}\n v-model={ model.value }\n ref={ sizerRef }\n readonly\n aria-hidden=\"true\"\n />\n )}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\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, textareaRef)\n },\n})\n\nexport type VTextarea = InstanceType<typeof VTextarea>\n"],"mappings":";AAAA;AACA;AACA;;AAEA;AAAA,SACSA,gBAAgB,EAAEC,eAAe;AAAA,SACjCC,eAAe,EAAEC,MAAM;AAAA,SACvBC,QAAQ;AAAA,SACRC,MAAM,+BAEf;AAAA,OACOC,SAAS,8CAEhB;AAAA,SACSC,WAAW;AAAA,SACXC,QAAQ;AAAA,SACRC,eAAe,8CAExB;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,eAAe,EAAEC,SAAS,EAAEC,GAAG,EAAEC,KAAK,QAAQ,KAAK;AAAA,SACvEC,SAAS,EAAEC,KAAK,EAAEC,aAAa,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,SAAS,gCAEvF;AAKA,OAAO,MAAMC,SAAS,GAAGF,gBAAgB,EAA8C,CAAC;EACtFG,IAAI,EAAE,WAAW;EAEjBC,UAAU,EAAE;IAAElB;EAAU,CAAC;EAEzBmB,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACLC,QAAQ,EAAEC,OAAO;IACjBC,SAAS,EAAED,OAAO;IAClBE,OAAO,EAAE,CAACF,OAAO,EAAEG,MAAM,EAAEC,MAAM,CAAqC;IACtEC,YAAY,EAAEC,QAA4C;IAC1DC,MAAM,EAAEH,MAAM;IACdI,WAAW,EAAEJ,MAAM;IACnBK,qBAAqB,EAAET,OAAO;IAC9BU,iBAAiB,EAAEV,OAAO;IAC1BW,QAAQ,EAAEX,OAAO;IACjBY,IAAI,EAAE;MACJC,IAAI,EAAE,CAACV,MAAM,EAAEC,MAAM,CAAC;MACtBU,OAAO,EAAE,CAAC;MACVC,SAAS,EAAGC,CAAM,IAAK,CAACC,KAAK,CAACC,UAAU,CAACF,CAAC,CAAC;IAC7C,CAAC;IACDG,OAAO,EAAE;MACPN,IAAI,EAAE,CAACV,MAAM,EAAEC,MAAM,CAAC;MACtBW,SAAS,EAAGC,CAAM,IAAK,CAACC,KAAK,CAACC,UAAU,CAACF,CAAC,CAAC;IAC7C,CAAC;IACDI,MAAM,EAAEhB,MAAM;IACdiB,cAAc,EAAEC,MAA2C;IAE3D,GAAGhD,eAAe,EAAE;IACpB,GAAGD,eAAe;EACpB,CAAC;EAEDkD,KAAK,EAAE;IACL,eAAe,EAAGC,CAAa,IAAK,IAAI;IACxC,mBAAmB,EAAGA,CAAa,IAAK,IAAI;IAC5C,gBAAgB,EAAGC,OAAgB,IAAK,IAAI;IAC5C,mBAAmB,EAAGC,GAAW,IAAK;EACxC,CAAC;EAEDC,KAAKA,CAAE7B,KAAK,EAAA8B,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAH,IAAA;IAClC,MAAMI,KAAK,GAAGnD,eAAe,CAACiB,KAAK,EAAE,YAAY,CAAC;IAClD,MAAM;MAAEmC,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGvD,QAAQ,CAACkB,KAAK,CAAC;IAClD,MAAMO,YAAY,GAAGvB,QAAQ,CAAC,MAAM;MAClC,OAAO,OAAOgB,KAAK,CAACO,YAAY,KAAK,UAAU,GAC3CP,KAAK,CAACO,YAAY,CAAC2B,KAAK,CAACI,KAAK,CAAC,GAC/B,CAACJ,KAAK,CAACI,KAAK,IAAI,EAAE,EAAEC,QAAQ,EAAE,CAACC,MAAM;IAC3C,CAAC,CAAC;IACF,MAAMC,GAAG,GAAGzD,QAAQ,CAAC,MAAM;MACzB,IAAI+C,KAAK,CAACW,SAAS,EAAE,OAAOX,KAAK,CAACW,SAAS;MAE3C,IACE,CAAC1C,KAAK,CAACI,OAAO,IACb,OAAOJ,KAAK,CAACI,OAAO,KAAK,QAAQ,IAClC,OAAOJ,KAAK,CAACI,OAAO,KAAK,QAAS,EAClC,OAAOuC,SAAS;MAElB,OAAO3C,KAAK,CAACI,OAAO;IACtB,CAAC,CAAC;IAEF,SAASwC,WAAWA,CAClBC,cAAuB,EACvBC,OAAoC,EACpC;MACA,IAAI,CAAC9C,KAAK,CAACG,SAAS,IAAI,CAAC0C,cAAc,EAAE;MAExCC,OAAO,CAAC,CAAC,CAAC,CAACC,MAAM,EAAuBX,KAAK,IAAI;IACpD;IAEA,MAAMY,SAAS,GAAG5D,GAAG,EAAU;IAC/B,MAAM6D,SAAS,GAAG7D,GAAG,EAAU;IAC/B,MAAM8D,aAAa,GAAG9D,GAAG,CAAC,EAAE,CAAC;IAC7B,MAAM+D,WAAW,GAAG/D,GAAG,EAAoB;IAC3C,MAAMgE,QAAQ,GAAGpE,QAAQ,CAAC,MACxBmD,SAAS,CAACG,KAAK,IACftC,KAAK,CAACW,qBACP,CAAC;IAEF,SAAS0C,OAAOA,CAAA,EAAI;MAClB,IAAIF,WAAW,CAACb,KAAK,KAAKgB,QAAQ,CAACC,aAAa,EAAE;QAChDJ,WAAW,CAACb,KAAK,EAAEF,KAAK,EAAE;MAC5B;MAEA,IAAI,CAACD,SAAS,CAACG,KAAK,EAAEF,KAAK,EAAE;IAC/B;IACA,SAASoB,cAAcA,CAAE9B,CAAa,EAAE;MACtC2B,OAAO,EAAE;MAETrB,IAAI,CAAC,eAAe,EAAEN,CAAC,CAAC;IAC1B;IACA,SAAS+B,kBAAkBA,CAAE/B,CAAa,EAAE;MAC1CM,IAAI,CAAC,mBAAmB,EAAEN,CAAC,CAAC;IAC9B;IACA,SAASgC,OAAOA,CAAEhC,CAAa,EAAE;MAC/BA,CAAC,CAACiC,eAAe,EAAE;MAEnBN,OAAO,EAAE;MAETpE,QAAQ,CAAC,MAAM;QACbiD,KAAK,CAACI,KAAK,GAAG,EAAE;QAEhBhD,SAAS,CAACU,KAAK,CAAC,eAAe,CAAC,EAAE0B,CAAC,CAAC;MACtC,CAAC,CAAC;IACJ;IACA,SAASkC,OAAOA,CAAElC,CAAQ,EAAE;MAC1B,MAAMmC,EAAE,GAAGnC,CAAC,CAACqB,MAA6B;MAC1Cb,KAAK,CAACI,KAAK,GAAGuB,EAAE,CAACvB,KAAK;MACtB,IAAItC,KAAK,CAACuB,cAAc,EAAEuC,IAAI,EAAE;QAC9B,MAAMC,aAAa,GAAG,CAACF,EAAE,CAACG,cAAc,EAAEH,EAAE,CAACI,YAAY,CAAC;QAC1DhF,QAAQ,CAAC,MAAM;UACb4E,EAAE,CAACG,cAAc,GAAGD,aAAa,CAAC,CAAC,CAAC;UACpCF,EAAE,CAACI,YAAY,GAAGF,aAAa,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC;MACJ;IACF;IAEA,MAAMG,QAAQ,GAAG9E,GAAG,EAAuB;IAC3C,SAAS+E,oBAAoBA,CAAA,EAAI;MAC/B,IAAI,CAACnE,KAAK,CAACC,QAAQ,EAAE;MAErBhB,QAAQ,CAAC,MAAM;QACb,IAAI,CAACiF,QAAQ,CAAC5B,KAAK,IAAI,CAACW,SAAS,CAACX,KAAK,EAAE;QAEzC,MAAM8B,KAAK,GAAGC,gBAAgB,CAACH,QAAQ,CAAC5B,KAAK,CAAC;QAC9C,MAAMgC,UAAU,GAAGD,gBAAgB,CAACpB,SAAS,CAACX,KAAK,CAACiC,GAAG,CAAC;QAExD,MAAMC,OAAO,GAAGpD,UAAU,CAACgD,KAAK,CAACK,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,GACzErD,UAAU,CAACgD,KAAK,CAACK,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,GAC3DrD,UAAU,CAACgD,KAAK,CAACK,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QAEhE,MAAMC,MAAM,GAAGR,QAAQ,CAAC5B,KAAK,CAACqC,YAAY;QAC1C,MAAMC,UAAU,GAAGxD,UAAU,CAACgD,KAAK,CAACQ,UAAU,CAAC;QAC/C,MAAMC,SAAS,GAAGC,IAAI,CAACrC,GAAG,CACxBrB,UAAU,CAACpB,KAAK,CAACc,IAAI,CAAC,GAAG8D,UAAU,GAAGJ,OAAO,EAC7CpD,UAAU,CAACkD,UAAU,CAACG,gBAAgB,CAAC,0BAA0B,CAAC,CAAC,CACpE;QACD,MAAMM,SAAS,GAAG3D,UAAU,CAACpB,KAAK,CAACqB,OAAO,CAAE,GAAGuD,UAAU,GAAGJ,OAAO,IAAIQ,QAAQ;QAE/E9B,aAAa,CAACZ,KAAK,GAAG9C,aAAa,CAACD,KAAK,CAACmF,MAAM,IAAI,CAAC,EAAEG,SAAS,EAAEE,SAAS,CAAC,CAAC;MAC/E,CAAC,CAAC;IACJ;IAEA5F,SAAS,CAACgF,oBAAoB,CAAC;IAC/B9E,KAAK,CAAC6C,KAAK,EAAEiC,oBAAoB,CAAC;IAClC9E,KAAK,CAAC,MAAMW,KAAK,CAACc,IAAI,EAAEqD,oBAAoB,CAAC;IAC7C9E,KAAK,CAAC,MAAMW,KAAK,CAACqB,OAAO,EAAE8C,oBAAoB,CAAC;IAChD9E,KAAK,CAAC,MAAMW,KAAK,CAACiF,OAAO,EAAEd,oBAAoB,CAAC;IAEhD,IAAIe,QAAoC;IACxC7F,KAAK,CAAC6E,QAAQ,EAAEtC,GAAG,IAAI;MACrB,IAAIA,GAAG,EAAE;QACPsD,QAAQ,GAAG,IAAIC,cAAc,CAAChB,oBAAoB,CAAC;QACnDe,QAAQ,CAACE,OAAO,CAAClB,QAAQ,CAAC5B,KAAK,CAAE;MACnC,CAAC,MAAM;QACL4C,QAAQ,EAAEG,UAAU,EAAE;MACxB;IACF,CAAC,CAAC;IACFnG,eAAe,CAAC,MAAM;MACpBgG,QAAQ,EAAEG,UAAU,EAAE;IACxB,CAAC,CAAC;IAEF1F,SAAS,CAAC,MAAM;MACd,MAAM2F,UAAU,GAAG,CAAC,EAAErD,KAAK,CAAC7B,OAAO,IAAIJ,KAAK,CAACI,OAAO,IAAIJ,KAAK,CAACO,YAAY,CAAC;MAC3E,MAAMgF,UAAU,GAAG,CAAC,EAAED,UAAU,IAAIrD,KAAK,CAACuD,OAAO,CAAC;MAClD,MAAM,CAACC,SAAS,EAAEC,UAAU,CAAC,GAAGjG,gBAAgB,CAACsC,KAAK,CAAC;MACvD,MAAM,CAAC;QAAE4D,UAAU,EAAEC,CAAC;QAAE,GAAGC;MAAW,CAAC,CAAC,GAAGpH,MAAM,CAACqH,WAAW,CAAC9F,KAAK,CAAC;MACpE,MAAM,CAAC+F,UAAU,CAAC,GAAGzH,gBAAgB,CAAC0B,KAAK,CAAC;MAE5C,OAAAgG,YAAA,CAAAvH,MAAA,EAAAwH,WAAA;QAAA,OAEUjD,SAAS;QAAA,cACLd,KAAK,CAACI,KAAK;QAAA,uBAAA4D,MAAA,IAAXhE,KAAK,CAACI,KAAK,GAAA4D,MAAA;QAAA,SACd,CACL,yBAAyB,EACzB;UACE,sBAAsB,EAAElG,KAAK,CAACS,MAAM;UACpC,sBAAsB,EAAET,KAAK,CAACsB,MAAM;UACpC,wBAAwB,EAAEtB,KAAK,CAACS,MAAM;UACtC,wBAAwB,EAAET,KAAK,CAACsB,MAAM;UACtC,uBAAuB,EAAEtB,KAAK,CAACC,QAAQ;UACvC,uBAAuB,EAAED,KAAK,CAACa,QAAQ,IAAIb,KAAK,CAACC,QAAQ;UACzD,6BAA6B,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAACkG,QAAQ,CAACnG,KAAK,CAACoG,OAAO;QAC/E,CAAC;MACF,GACIX,SAAS,EACTI,UAAU;QAAA,WACL1D,SAAS,CAACG;MAAK;QAGvB,GAAGL,KAAK;QACRjB,OAAO,EAAEqF,KAAA;UAAA,IAAC;YACRC,UAAU;YACVC,OAAO;YACPC,UAAU;YACVC;UACF,CAAC,GAAAJ,KAAA;UAAA,OAAAL,YAAA,CAAArH,MAAA,EAAAsH,WAAA;YAAA,OAEShD,SAAS;YAAA,SACR;cACL,6BAA6B,EAAEC,aAAa,CAACZ;YAC/C,CAAC;YAAA,WACSkB,cAAc;YAAA,eACVC,kBAAkB;YAAA,iBAChBC,OAAO;YAAA,wBACA1D,KAAK,CAAC,sBAAsB,CAAC;YAAA,uBAC9BA,KAAK,CAAC,qBAAqB,CAAC;YAAA,QAC7C;UAAS,GACT+F,UAAU;YAAA,UACN3C,QAAQ,CAACd,KAAK,IAAIiE,OAAO,CAACjE,KAAK;YAAA,SAChCiE,OAAO,CAACjE,KAAK,IAAItC,KAAK,CAAC0G,KAAK;YAAA,YACzBJ,UAAU,CAAChE,KAAK;YAAA,WACjBH,SAAS,CAACG,KAAK;YAAA,SACjBmE,OAAO,CAACnE,KAAK,KAAK;UAAK;YAG7B,GAAGL,KAAK;YACRjB,OAAO,EAAE2F,KAAA;cAAA,IAAC;gBACR3G,KAAK,EAAE;kBAAE4G,KAAK,EAAEC,UAAU;kBAAE,GAAGC;gBAAU;cAC3C,CAAC,GAAAH,KAAA;cAAA,OAAAX,YAAA,CAAAe,SAAA,SAEK/G,KAAK,CAACS,MAAM,IAAAuF,YAAA;gBAAA,SACA;cAAsB,IAC9BhG,KAAK,CAACS,MAAM,EAEjB,EAAAuG,eAAA,CAAAhB,YAAA,aAAAC,WAAA;gBAAA,OAGO9C,WAAW;gBAAA,SACT0D,UAAU;gBAAA,SACV3E,KAAK,CAACI,KAAK;gBAAA,WACTsB,OAAO;gBAAA,aAIL5D,KAAK,CAACG,SAAS;gBAAA,YAChBqG,UAAU,CAAClE,KAAK;gBAAA,YAChBgE,UAAU,CAAChE,KAAK;gBAAA,eACbtC,KAAK,CAACU,WAAW;gBAAA,QACxBV,KAAK,CAACc,IAAI;gBAAA,QACVd,KAAK,CAACH,IAAI;gBAAA,WACPwD,OAAO;gBAAA,UACRhB;cAAI,GACRyE,SAAS,EACTpB,UAAU,YAAAuB,iBAAA,eAZD;gBACZC,OAAO,EAAEtE;cACX,CAAC,EAAE,IAAI;gBAAAuE,IAAA;cAAA,MAaPnH,KAAK,CAACC,QAAQ,IAAA+G,eAAA,CAAAhB,YAAA;gBAAA,SAEL,CACLa,UAAU,EACV,mBAAmB,CACpB;gBAAA,uBAAAX,MAAA,IACShE,KAAK,CAACI,KAAK,GAAA4D,MAAA;gBAAA,OACfhC,QAAQ;gBAAA;gBAAA,eAEF;cAAM,YAAAkD,WAAA,EAHRlF,KAAK,CAACI,KAAK,GAKxB,EAECtC,KAAK,CAACsB,MAAM,IAAA0E,YAAA;gBAAA,SACA;cAAsB,IAC9BhG,KAAK,CAACsB,MAAM,EAEjB;YAAA;UAEJ;QAAA,CAGN;QACDkE,OAAO,EAAED,UAAU,GAAGuB,SAAS,IAAAd,YAAA,CAAAe,SAAA,SAEzB9E,KAAK,CAACuD,OAAO,GAAGsB,SAAS,CAAC,EAE1BxB,UAAU,IAAAU,YAAA,CAAAe,SAAA,SAAAf,YAAA,sBAAAA,YAAA,CAAAtH,QAAA;UAAA,UAKGsB,KAAK,CAACY,iBAAiB,IAAIuB,SAAS,CAACG,KAAK;UAAA,SAC3C/B,YAAY,CAAC+B,KAAK;UAAA,OACpBG,GAAG,CAACH;QAAK,GACGL,KAAK,CAAC7B,OAAO,GAGpC,EAEJ,GAAGuC;MAAS;IAIrB,CAAC,CAAC;IAEF,OAAO9D,WAAW,CAAC,CAAC,CAAC,EAAEmE,SAAS,EAAEC,SAAS,EAAEE,WAAW,CAAC;EAC3D;AACF,CAAC,CAAC"}
|
@@ -65,11 +65,11 @@ declare const VTextarea: {
|
|
65
65
|
errorMessages: string | string[];
|
66
66
|
maxErrors: string | number;
|
67
67
|
rules: ValidationRule[];
|
68
|
+
persistentHint: boolean;
|
68
69
|
clearable: boolean;
|
69
70
|
dirty: boolean;
|
70
71
|
persistentClear: boolean;
|
71
72
|
singleLine: boolean;
|
72
|
-
persistentHint: boolean;
|
73
73
|
persistentPlaceholder: boolean;
|
74
74
|
persistentCounter: boolean;
|
75
75
|
autoGrow: boolean;
|
@@ -92,11 +92,11 @@ declare const VTextarea: {
|
|
92
92
|
errorMessages: string | string[];
|
93
93
|
maxErrors: string | number;
|
94
94
|
rules: ValidationRule[];
|
95
|
+
persistentHint: boolean;
|
95
96
|
clearable: boolean;
|
96
97
|
dirty: boolean;
|
97
98
|
persistentClear: boolean;
|
98
99
|
singleLine: boolean;
|
99
|
-
persistentHint: boolean;
|
100
100
|
persistentPlaceholder: boolean;
|
101
101
|
persistentCounter: boolean;
|
102
102
|
autoGrow: boolean;
|
@@ -124,10 +124,11 @@ declare const VTextarea: {
|
|
124
124
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
125
125
|
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
126
126
|
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
127
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
127
128
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
128
129
|
validationValue?: any;
|
129
|
-
hideDetails?: boolean | "auto" | undefined;
|
130
130
|
hint?: string | undefined;
|
131
|
+
hideDetails?: boolean | "auto" | undefined;
|
131
132
|
suffix?: string | undefined;
|
132
133
|
counterValue?: ((value: any) => number) | undefined;
|
133
134
|
modelModifiers?: Record<string, boolean> | undefined;
|
@@ -177,7 +178,7 @@ declare const VTextarea: {
|
|
177
178
|
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
178
179
|
"onClick:control"?: ((e: MouseEvent) => any) | undefined;
|
179
180
|
"onMousedown:control"?: ((e: MouseEvent) => any) | undefined;
|
180
|
-
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "flat" | "reverse" | "error" | "active" | "direction" | "autofocus" | "disabled" | "readonly" | "messages" | "rounded" | "density" | "variant" | "clearIcon" | "focused" | "errorMessages" | "maxErrors" | "rules" | "
|
181
|
+
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "flat" | "reverse" | "error" | "active" | "direction" | "autofocus" | "disabled" | "readonly" | "messages" | "rounded" | "density" | "variant" | "clearIcon" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint" | "clearable" | "dirty" | "persistentClear" | "singleLine" | "persistentPlaceholder" | "persistentCounter" | "autoGrow" | "noResize" | "rows">;
|
181
182
|
$attrs: {
|
182
183
|
[x: string]: unknown;
|
183
184
|
};
|
@@ -208,11 +209,11 @@ declare const VTextarea: {
|
|
208
209
|
errorMessages: string | string[];
|
209
210
|
maxErrors: string | number;
|
210
211
|
rules: ValidationRule[];
|
212
|
+
persistentHint: boolean;
|
211
213
|
clearable: boolean;
|
212
214
|
dirty: boolean;
|
213
215
|
persistentClear: boolean;
|
214
216
|
singleLine: boolean;
|
215
|
-
persistentHint: boolean;
|
216
217
|
persistentPlaceholder: boolean;
|
217
218
|
persistentCounter: boolean;
|
218
219
|
autoGrow: boolean;
|
@@ -240,10 +241,11 @@ declare const VTextarea: {
|
|
240
241
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
241
242
|
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
242
243
|
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
244
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
243
245
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
244
246
|
validationValue?: any;
|
245
|
-
hideDetails?: boolean | "auto" | undefined;
|
246
247
|
hint?: string | undefined;
|
248
|
+
hideDetails?: boolean | "auto" | undefined;
|
247
249
|
suffix?: string | undefined;
|
248
250
|
counterValue?: ((value: any) => number) | undefined;
|
249
251
|
modelModifiers?: Record<string, boolean> | undefined;
|
@@ -307,6 +309,7 @@ declare const VTextarea: {
|
|
307
309
|
errorMessages: string | string[];
|
308
310
|
maxErrors: string | number;
|
309
311
|
rules: ValidationRule[];
|
312
|
+
persistentHint: boolean;
|
310
313
|
}> & Omit<{
|
311
314
|
error: boolean;
|
312
315
|
direction: "horizontal" | "vertical";
|
@@ -318,6 +321,7 @@ declare const VTextarea: {
|
|
318
321
|
errorMessages: string | string[];
|
319
322
|
maxErrors: string | number;
|
320
323
|
rules: ValidationRule[];
|
324
|
+
persistentHint: boolean;
|
321
325
|
} & {
|
322
326
|
id?: string | undefined;
|
323
327
|
name?: string | undefined;
|
@@ -327,8 +331,10 @@ declare const VTextarea: {
|
|
327
331
|
appendIcon?: IconValue | undefined;
|
328
332
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
329
333
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
334
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
330
335
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
331
336
|
validationValue?: any;
|
337
|
+
hint?: string | undefined;
|
332
338
|
hideDetails?: boolean | "auto" | undefined;
|
333
339
|
} & {
|
334
340
|
$children?: {} | vue.VNodeChild | {
|
@@ -356,7 +362,7 @@ declare const VTextarea: {
|
|
356
362
|
"v-slot:details"?: false | ((args_0: VInputSlot) => vue.VNodeChild) | undefined;
|
357
363
|
} & {
|
358
364
|
"onUpdate:modelValue"?: ((val: any) => any) | undefined;
|
359
|
-
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules">;
|
365
|
+
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint">;
|
360
366
|
$attrs: {
|
361
367
|
[x: string]: unknown;
|
362
368
|
};
|
@@ -381,6 +387,7 @@ declare const VTextarea: {
|
|
381
387
|
errorMessages: string | string[];
|
382
388
|
maxErrors: string | number;
|
383
389
|
rules: ValidationRule[];
|
390
|
+
persistentHint: boolean;
|
384
391
|
} & {
|
385
392
|
id?: string | undefined;
|
386
393
|
name?: string | undefined;
|
@@ -390,8 +397,10 @@ declare const VTextarea: {
|
|
390
397
|
appendIcon?: IconValue | undefined;
|
391
398
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
392
399
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
400
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
393
401
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
394
402
|
validationValue?: any;
|
403
|
+
hint?: string | undefined;
|
395
404
|
hideDetails?: boolean | "auto" | undefined;
|
396
405
|
} & {
|
397
406
|
$children?: {} | vue.VNodeChild | {
|
@@ -436,6 +445,7 @@ declare const VTextarea: {
|
|
436
445
|
errorMessages: string | string[];
|
437
446
|
maxErrors: string | number;
|
438
447
|
rules: ValidationRule[];
|
448
|
+
persistentHint: boolean;
|
439
449
|
}, {}, string> & {
|
440
450
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
441
451
|
created?: ((() => void) | (() => void)[]) | undefined;
|
@@ -467,6 +477,7 @@ declare const VTextarea: {
|
|
467
477
|
errorMessages: string | string[];
|
468
478
|
maxErrors: string | number;
|
469
479
|
rules: ValidationRule[];
|
480
|
+
persistentHint: boolean;
|
470
481
|
} & {
|
471
482
|
id?: string | undefined;
|
472
483
|
name?: string | undefined;
|
@@ -476,8 +487,10 @@ declare const VTextarea: {
|
|
476
487
|
appendIcon?: IconValue | undefined;
|
477
488
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
478
489
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
490
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
479
491
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
480
492
|
validationValue?: any;
|
493
|
+
hint?: string | undefined;
|
481
494
|
hideDetails?: boolean | "auto" | undefined;
|
482
495
|
} & {
|
483
496
|
$children?: {} | vue.VNodeChild | {
|
@@ -509,7 +522,7 @@ declare const VTextarea: {
|
|
509
522
|
reset: () => void;
|
510
523
|
resetValidation: () => void;
|
511
524
|
validate: () => Promise<string[]>;
|
512
|
-
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "validateOn" | "validationValue" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
525
|
+
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
513
526
|
'click:control': (e: MouseEvent) => true;
|
514
527
|
'mousedown:control': (e: MouseEvent) => true;
|
515
528
|
'update:focused': (focused: boolean) => true;
|
@@ -532,11 +545,11 @@ declare const VTextarea: {
|
|
532
545
|
errorMessages: string | string[];
|
533
546
|
maxErrors: string | number;
|
534
547
|
rules: ValidationRule[];
|
548
|
+
persistentHint: boolean;
|
535
549
|
clearable: boolean;
|
536
550
|
dirty: boolean;
|
537
551
|
persistentClear: boolean;
|
538
552
|
singleLine: boolean;
|
539
|
-
persistentHint: boolean;
|
540
553
|
persistentPlaceholder: boolean;
|
541
554
|
persistentCounter: boolean;
|
542
555
|
autoGrow: boolean;
|
@@ -579,11 +592,11 @@ declare const VTextarea: {
|
|
579
592
|
errorMessages: string | string[];
|
580
593
|
maxErrors: string | number;
|
581
594
|
rules: ValidationRule[];
|
595
|
+
persistentHint: boolean;
|
582
596
|
clearable: boolean;
|
583
597
|
dirty: boolean;
|
584
598
|
persistentClear: boolean;
|
585
599
|
singleLine: boolean;
|
586
|
-
persistentHint: boolean;
|
587
600
|
persistentPlaceholder: boolean;
|
588
601
|
persistentCounter: boolean;
|
589
602
|
autoGrow: boolean;
|
@@ -611,10 +624,11 @@ declare const VTextarea: {
|
|
611
624
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
612
625
|
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
613
626
|
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
627
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
614
628
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
615
629
|
validationValue?: any;
|
616
|
-
hideDetails?: boolean | "auto" | undefined;
|
617
630
|
hint?: string | undefined;
|
631
|
+
hideDetails?: boolean | "auto" | undefined;
|
618
632
|
suffix?: string | undefined;
|
619
633
|
counterValue?: ((value: any) => number) | undefined;
|
620
634
|
modelModifiers?: Record<string, boolean> | undefined;
|
@@ -678,6 +692,7 @@ declare const VTextarea: {
|
|
678
692
|
errorMessages: string | string[];
|
679
693
|
maxErrors: string | number;
|
680
694
|
rules: ValidationRule[];
|
695
|
+
persistentHint: boolean;
|
681
696
|
}> & Omit<{
|
682
697
|
error: boolean;
|
683
698
|
direction: "horizontal" | "vertical";
|
@@ -689,6 +704,7 @@ declare const VTextarea: {
|
|
689
704
|
errorMessages: string | string[];
|
690
705
|
maxErrors: string | number;
|
691
706
|
rules: ValidationRule[];
|
707
|
+
persistentHint: boolean;
|
692
708
|
} & {
|
693
709
|
id?: string | undefined;
|
694
710
|
name?: string | undefined;
|
@@ -698,8 +714,10 @@ declare const VTextarea: {
|
|
698
714
|
appendIcon?: IconValue | undefined;
|
699
715
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
700
716
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
717
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
701
718
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
702
719
|
validationValue?: any;
|
720
|
+
hint?: string | undefined;
|
703
721
|
hideDetails?: boolean | "auto" | undefined;
|
704
722
|
} & {
|
705
723
|
$children?: {} | vue.VNodeChild | {
|
@@ -727,7 +745,7 @@ declare const VTextarea: {
|
|
727
745
|
"v-slot:details"?: false | ((args_0: VInputSlot) => vue.VNodeChild) | undefined;
|
728
746
|
} & {
|
729
747
|
"onUpdate:modelValue"?: ((val: any) => any) | undefined;
|
730
|
-
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules">;
|
748
|
+
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint">;
|
731
749
|
$attrs: {
|
732
750
|
[x: string]: unknown;
|
733
751
|
};
|
@@ -752,6 +770,7 @@ declare const VTextarea: {
|
|
752
770
|
errorMessages: string | string[];
|
753
771
|
maxErrors: string | number;
|
754
772
|
rules: ValidationRule[];
|
773
|
+
persistentHint: boolean;
|
755
774
|
} & {
|
756
775
|
id?: string | undefined;
|
757
776
|
name?: string | undefined;
|
@@ -761,8 +780,10 @@ declare const VTextarea: {
|
|
761
780
|
appendIcon?: IconValue | undefined;
|
762
781
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
763
782
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
783
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
764
784
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
765
785
|
validationValue?: any;
|
786
|
+
hint?: string | undefined;
|
766
787
|
hideDetails?: boolean | "auto" | undefined;
|
767
788
|
} & {
|
768
789
|
$children?: {} | vue.VNodeChild | {
|
@@ -807,6 +828,7 @@ declare const VTextarea: {
|
|
807
828
|
errorMessages: string | string[];
|
808
829
|
maxErrors: string | number;
|
809
830
|
rules: ValidationRule[];
|
831
|
+
persistentHint: boolean;
|
810
832
|
}, {}, string> & {
|
811
833
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
812
834
|
created?: ((() => void) | (() => void)[]) | undefined;
|
@@ -838,6 +860,7 @@ declare const VTextarea: {
|
|
838
860
|
errorMessages: string | string[];
|
839
861
|
maxErrors: string | number;
|
840
862
|
rules: ValidationRule[];
|
863
|
+
persistentHint: boolean;
|
841
864
|
} & {
|
842
865
|
id?: string | undefined;
|
843
866
|
name?: string | undefined;
|
@@ -847,8 +870,10 @@ declare const VTextarea: {
|
|
847
870
|
appendIcon?: IconValue | undefined;
|
848
871
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
849
872
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
873
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
850
874
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
851
875
|
validationValue?: any;
|
876
|
+
hint?: string | undefined;
|
852
877
|
hideDetails?: boolean | "auto" | undefined;
|
853
878
|
} & {
|
854
879
|
$children?: {} | vue.VNodeChild | {
|
@@ -880,7 +905,7 @@ declare const VTextarea: {
|
|
880
905
|
reset: () => void;
|
881
906
|
resetValidation: () => void;
|
882
907
|
validate: () => Promise<string[]>;
|
883
|
-
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "validateOn" | "validationValue" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules") | "v-slot:details">, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
|
908
|
+
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
|
884
909
|
__isFragment?: undefined;
|
885
910
|
__isTeleport?: undefined;
|
886
911
|
__isSuspense?: undefined;
|
@@ -901,11 +926,11 @@ declare const VTextarea: {
|
|
901
926
|
errorMessages: string | string[];
|
902
927
|
maxErrors: string | number;
|
903
928
|
rules: ValidationRule[];
|
929
|
+
persistentHint: boolean;
|
904
930
|
clearable: boolean;
|
905
931
|
dirty: boolean;
|
906
932
|
persistentClear: boolean;
|
907
933
|
singleLine: boolean;
|
908
|
-
persistentHint: boolean;
|
909
934
|
persistentPlaceholder: boolean;
|
910
935
|
persistentCounter: boolean;
|
911
936
|
autoGrow: boolean;
|
@@ -933,10 +958,11 @@ declare const VTextarea: {
|
|
933
958
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
934
959
|
'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
935
960
|
'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
961
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
936
962
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
937
963
|
validationValue?: any;
|
938
|
-
hideDetails?: boolean | "auto" | undefined;
|
939
964
|
hint?: string | undefined;
|
965
|
+
hideDetails?: boolean | "auto" | undefined;
|
940
966
|
suffix?: string | undefined;
|
941
967
|
counterValue?: ((value: any) => number) | undefined;
|
942
968
|
modelModifiers?: Record<string, boolean> | undefined;
|
@@ -1000,6 +1026,7 @@ declare const VTextarea: {
|
|
1000
1026
|
errorMessages: string | string[];
|
1001
1027
|
maxErrors: string | number;
|
1002
1028
|
rules: ValidationRule[];
|
1029
|
+
persistentHint: boolean;
|
1003
1030
|
}> & Omit<{
|
1004
1031
|
error: boolean;
|
1005
1032
|
direction: "horizontal" | "vertical";
|
@@ -1011,6 +1038,7 @@ declare const VTextarea: {
|
|
1011
1038
|
errorMessages: string | string[];
|
1012
1039
|
maxErrors: string | number;
|
1013
1040
|
rules: ValidationRule[];
|
1041
|
+
persistentHint: boolean;
|
1014
1042
|
} & {
|
1015
1043
|
id?: string | undefined;
|
1016
1044
|
name?: string | undefined;
|
@@ -1020,8 +1048,10 @@ declare const VTextarea: {
|
|
1020
1048
|
appendIcon?: IconValue | undefined;
|
1021
1049
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1022
1050
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1051
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
1023
1052
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
1024
1053
|
validationValue?: any;
|
1054
|
+
hint?: string | undefined;
|
1025
1055
|
hideDetails?: boolean | "auto" | undefined;
|
1026
1056
|
} & {
|
1027
1057
|
$children?: {} | vue.VNodeChild | {
|
@@ -1049,7 +1079,7 @@ declare const VTextarea: {
|
|
1049
1079
|
"v-slot:details"?: false | ((args_0: VInputSlot) => vue.VNodeChild) | undefined;
|
1050
1080
|
} & {
|
1051
1081
|
"onUpdate:modelValue"?: ((val: any) => any) | undefined;
|
1052
|
-
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules">;
|
1082
|
+
} & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint">;
|
1053
1083
|
$attrs: {
|
1054
1084
|
[x: string]: unknown;
|
1055
1085
|
};
|
@@ -1074,6 +1104,7 @@ declare const VTextarea: {
|
|
1074
1104
|
errorMessages: string | string[];
|
1075
1105
|
maxErrors: string | number;
|
1076
1106
|
rules: ValidationRule[];
|
1107
|
+
persistentHint: boolean;
|
1077
1108
|
} & {
|
1078
1109
|
id?: string | undefined;
|
1079
1110
|
name?: string | undefined;
|
@@ -1083,8 +1114,10 @@ declare const VTextarea: {
|
|
1083
1114
|
appendIcon?: IconValue | undefined;
|
1084
1115
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1085
1116
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1117
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
1086
1118
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
1087
1119
|
validationValue?: any;
|
1120
|
+
hint?: string | undefined;
|
1088
1121
|
hideDetails?: boolean | "auto" | undefined;
|
1089
1122
|
} & {
|
1090
1123
|
$children?: {} | vue.VNodeChild | {
|
@@ -1129,6 +1162,7 @@ declare const VTextarea: {
|
|
1129
1162
|
errorMessages: string | string[];
|
1130
1163
|
maxErrors: string | number;
|
1131
1164
|
rules: ValidationRule[];
|
1165
|
+
persistentHint: boolean;
|
1132
1166
|
}, {}, string> & {
|
1133
1167
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
1134
1168
|
created?: ((() => void) | (() => void)[]) | undefined;
|
@@ -1160,6 +1194,7 @@ declare const VTextarea: {
|
|
1160
1194
|
errorMessages: string | string[];
|
1161
1195
|
maxErrors: string | number;
|
1162
1196
|
rules: ValidationRule[];
|
1197
|
+
persistentHint: boolean;
|
1163
1198
|
} & {
|
1164
1199
|
id?: string | undefined;
|
1165
1200
|
name?: string | undefined;
|
@@ -1169,8 +1204,10 @@ declare const VTextarea: {
|
|
1169
1204
|
appendIcon?: IconValue | undefined;
|
1170
1205
|
'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1171
1206
|
'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
|
1207
|
+
'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
|
1172
1208
|
validateOn?: "input" | "blur" | "submit" | undefined;
|
1173
1209
|
validationValue?: any;
|
1210
|
+
hint?: string | undefined;
|
1174
1211
|
hideDetails?: boolean | "auto" | undefined;
|
1175
1212
|
} & {
|
1176
1213
|
$children?: {} | vue.VNodeChild | {
|
@@ -1202,7 +1239,7 @@ declare const VTextarea: {
|
|
1202
1239
|
reset: () => void;
|
1203
1240
|
resetValidation: () => void;
|
1204
1241
|
validate: () => Promise<string[]>;
|
1205
|
-
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "validateOn" | "validationValue" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
1242
|
+
}> & {} & vue.ComponentCustomProperties & {}, "id" | "name" | "label" | "$children" | "v-slot:default" | "$slots" | "v-slots" | keyof vue.VNodeProps | keyof vue.AllowedComponentProps | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
1206
1243
|
'click:control': (e: MouseEvent) => true;
|
1207
1244
|
'mousedown:control': (e: MouseEvent) => true;
|
1208
1245
|
'update:focused': (focused: boolean) => true;
|
@@ -1225,11 +1262,11 @@ declare const VTextarea: {
|
|
1225
1262
|
errorMessages: string | string[];
|
1226
1263
|
maxErrors: string | number;
|
1227
1264
|
rules: ValidationRule[];
|
1265
|
+
persistentHint: boolean;
|
1228
1266
|
clearable: boolean;
|
1229
1267
|
dirty: boolean;
|
1230
1268
|
persistentClear: boolean;
|
1231
1269
|
singleLine: boolean;
|
1232
|
-
persistentHint: boolean;
|
1233
1270
|
persistentPlaceholder: boolean;
|
1234
1271
|
persistentCounter: boolean;
|
1235
1272
|
autoGrow: boolean;
|
@@ -1269,6 +1306,7 @@ declare const VTextarea: {
|
|
1269
1306
|
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
1270
1307
|
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
1271
1308
|
focused: BooleanConstructor;
|
1309
|
+
'onUpdate:focused': PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
|
1272
1310
|
errorMessages: {
|
1273
1311
|
type: PropType<string | string[]>;
|
1274
1312
|
default: () => never[];
|
@@ -1295,6 +1333,8 @@ declare const VTextarea: {
|
|
1295
1333
|
appendIcon: PropType<IconValue>;
|
1296
1334
|
prependIcon: PropType<IconValue>;
|
1297
1335
|
hideDetails: PropType<boolean | "auto">;
|
1336
|
+
hint: StringConstructor;
|
1337
|
+
persistentHint: BooleanConstructor;
|
1298
1338
|
messages: {
|
1299
1339
|
type: PropType<string | string[]>;
|
1300
1340
|
default: () => never[];
|
@@ -1310,8 +1350,6 @@ declare const VTextarea: {
|
|
1310
1350
|
autofocus: BooleanConstructor;
|
1311
1351
|
counter: PropType<string | number | true>;
|
1312
1352
|
counterValue: PropType<(value: any) => number>;
|
1313
|
-
hint: StringConstructor;
|
1314
|
-
persistentHint: BooleanConstructor;
|
1315
1353
|
prefix: StringConstructor;
|
1316
1354
|
placeholder: StringConstructor;
|
1317
1355
|
persistentPlaceholder: BooleanConstructor;
|
@@ -1362,6 +1400,7 @@ declare const VTextarea: {
|
|
1362
1400
|
'onClick:appendInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
1363
1401
|
'onClick:prependInner': PropType<EventProp<[MouseEvent], (args_0: MouseEvent) => any>>;
|
1364
1402
|
focused: BooleanConstructor;
|
1403
|
+
'onUpdate:focused': PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
|
1365
1404
|
errorMessages: {
|
1366
1405
|
type: PropType<string | string[]>;
|
1367
1406
|
default: () => never[];
|
@@ -1388,6 +1427,8 @@ declare const VTextarea: {
|
|
1388
1427
|
appendIcon: PropType<IconValue>;
|
1389
1428
|
prependIcon: PropType<IconValue>;
|
1390
1429
|
hideDetails: PropType<boolean | "auto">;
|
1430
|
+
hint: StringConstructor;
|
1431
|
+
persistentHint: BooleanConstructor;
|
1391
1432
|
messages: {
|
1392
1433
|
type: PropType<string | string[]>;
|
1393
1434
|
default: () => never[];
|
@@ -1403,8 +1444,6 @@ declare const VTextarea: {
|
|
1403
1444
|
autofocus: BooleanConstructor;
|
1404
1445
|
counter: PropType<string | number | true>;
|
1405
1446
|
counterValue: PropType<(value: any) => number>;
|
1406
|
-
hint: StringConstructor;
|
1407
|
-
persistentHint: BooleanConstructor;
|
1408
1447
|
prefix: StringConstructor;
|
1409
1448
|
placeholder: StringConstructor;
|
1410
1449
|
persistentPlaceholder: BooleanConstructor;
|
@@ -8,7 +8,7 @@
|
|
8
8
|
overflow: hidden;
|
9
9
|
position: relative;
|
10
10
|
transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
11
|
-
transition-property: height, width, transform, max-width, left, right, top, bottom;
|
11
|
+
transition-property: height, width, transform, max-width, left, right, top, bottom, box-shadow;
|
12
12
|
width: 100%;
|
13
13
|
border-color: rgba(var(--v-border-color), var(--v-border-opacity));
|
14
14
|
border-style: solid;
|
@@ -78,6 +78,8 @@
|
|
78
78
|
width: 100%;
|
79
79
|
height: 100%;
|
80
80
|
display: flex;
|
81
|
+
opacity: var(--v-toolbar-image-opacity, 1);
|
82
|
+
transition-property: opacity;
|
81
83
|
}
|
82
84
|
|
83
85
|
.v-toolbar__prepend,
|