vuetify 3.7.15 → 3.7.16

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.
Files changed (108) hide show
  1. package/dist/json/attributes.json +2932 -2928
  2. package/dist/json/importMap-labs.json +12 -12
  3. package/dist/json/importMap.json +164 -164
  4. package/dist/json/tags.json +3 -2
  5. package/dist/json/web-types.json +5470 -5438
  6. package/dist/vuetify-labs.css +2965 -2965
  7. package/dist/vuetify-labs.d.ts +438 -200
  8. package/dist/vuetify-labs.esm.js +155 -126
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +154 -125
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +4258 -4258
  13. package/dist/vuetify.d.ts +390 -210
  14. package/dist/vuetify.esm.js +101 -69
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +100 -68
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +227 -225
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAppBar/index.d.mts +15 -6
  22. package/lib/components/VAutocomplete/index.d.mts +23 -8
  23. package/lib/components/VBadge/VBadge.mjs +2 -2
  24. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  25. package/lib/components/VBtn/VBtn.mjs +6 -3
  26. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  27. package/lib/components/VBtn/index.d.mts +15 -6
  28. package/lib/components/VCard/VCard.mjs +12 -3
  29. package/lib/components/VCard/VCard.mjs.map +1 -1
  30. package/lib/components/VCard/VCardItem.mjs +11 -4
  31. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  32. package/lib/components/VCard/index.d.mts +75 -30
  33. package/lib/components/VCarousel/VCarousel.mjs +1 -1
  34. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  35. package/lib/components/VChip/VChip.mjs +6 -3
  36. package/lib/components/VChip/VChip.mjs.map +1 -1
  37. package/lib/components/VChip/index.d.mts +15 -6
  38. package/lib/components/VCombobox/index.d.mts +23 -8
  39. package/lib/components/VDataIterator/index.d.mts +2 -2
  40. package/lib/components/VDataTable/composables/headers.mjs +3 -1
  41. package/lib/components/VDataTable/composables/headers.mjs.map +1 -1
  42. package/lib/components/VDataTable/composables/paginate.mjs +2 -2
  43. package/lib/components/VDataTable/composables/paginate.mjs.map +1 -1
  44. package/lib/components/VDataTable/index.d.mts +34 -34
  45. package/lib/components/VDataTable/types.mjs.map +1 -1
  46. package/lib/components/VDatePicker/VDatePickerMonth.mjs +12 -21
  47. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  48. package/lib/components/VDatePicker/index.d.mts +3 -3
  49. package/lib/components/VDialog/index.d.mts +21 -6
  50. package/lib/components/VFab/index.d.mts +15 -6
  51. package/lib/components/VList/VListItem.mjs +11 -5
  52. package/lib/components/VList/VListItem.mjs.map +1 -1
  53. package/lib/components/VList/index.d.mts +32 -14
  54. package/lib/components/VMenu/index.d.mts +21 -6
  55. package/lib/components/VOverlay/VOverlay.mjs +10 -1
  56. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  57. package/lib/components/VOverlay/index.d.mts +6 -0
  58. package/lib/components/VPagination/VPagination.mjs +3 -3
  59. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  60. package/lib/components/VParallax/VParallax.mjs +1 -1
  61. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  62. package/lib/components/VRating/VRating.mjs +1 -1
  63. package/lib/components/VRating/VRating.mjs.map +1 -1
  64. package/lib/components/VSelect/index.d.mts +23 -8
  65. package/lib/components/VSlider/slider.mjs +1 -1
  66. package/lib/components/VSlider/slider.mjs.map +1 -1
  67. package/lib/components/VSnackbar/index.d.mts +21 -6
  68. package/lib/components/VSparkline/VBarline.mjs +1 -1
  69. package/lib/components/VSparkline/VBarline.mjs.map +1 -1
  70. package/lib/components/VTabs/index.d.mts +39 -24
  71. package/lib/components/VTextarea/VTextarea.mjs +2 -2
  72. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  73. package/lib/components/VTooltip/index.d.mts +21 -6
  74. package/lib/components/index.d.mts +333 -153
  75. package/lib/composables/stack.mjs +2 -2
  76. package/lib/composables/stack.mjs.map +1 -1
  77. package/lib/composables/validation.mjs +2 -2
  78. package/lib/composables/validation.mjs.map +1 -1
  79. package/lib/entry-bundler.mjs +1 -1
  80. package/lib/framework.mjs +1 -1
  81. package/lib/index.d.mts +57 -57
  82. package/lib/labs/VDateInput/VDateInput.mjs +3 -2
  83. package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
  84. package/lib/labs/VDateInput/index.d.mts +10 -10
  85. package/lib/labs/VFileUpload/VFileUpload.mjs +3 -2
  86. package/lib/labs/VFileUpload/VFileUpload.mjs.map +1 -1
  87. package/lib/labs/VFileUpload/index.d.mts +32 -14
  88. package/lib/labs/VNumberInput/VNumberInput.mjs +5 -5
  89. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  90. package/lib/labs/VSnackbarQueue/index.d.mts +21 -6
  91. package/lib/labs/VTimePicker/VTimePicker.mjs +30 -31
  92. package/lib/labs/VTimePicker/VTimePicker.mjs.map +1 -1
  93. package/lib/labs/VTimePicker/VTimePickerControls.mjs +14 -13
  94. package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
  95. package/lib/labs/VTimePicker/index.d.mts +35 -13
  96. package/lib/labs/VTimePicker/shared.mjs +2 -0
  97. package/lib/labs/VTimePicker/shared.mjs.map +1 -0
  98. package/lib/labs/VTreeview/index.d.mts +32 -14
  99. package/lib/labs/components.d.mts +128 -55
  100. package/lib/locale/adapters/vuetify.mjs +1 -1
  101. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  102. package/lib/util/animation.mjs +8 -8
  103. package/lib/util/animation.mjs.map +1 -1
  104. package/lib/util/helpers.mjs +6 -4
  105. package/lib/util/helpers.mjs.map +1 -1
  106. package/package.json +2 -2
  107. package/lib/labs/VTimePicker/SelectingTimes.mjs +0 -10
  108. package/lib/labs/VTimePicker/SelectingTimes.mjs.map +0 -1
@@ -130,7 +130,7 @@ declare const VTab: {
130
130
  minWidth?: string | number | undefined;
131
131
  value?: any;
132
132
  loading?: string | boolean | undefined;
133
- text?: string | undefined;
133
+ text?: string | number | boolean | undefined;
134
134
  class?: any;
135
135
  theme?: string | undefined;
136
136
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -173,6 +173,7 @@ declare const VTab: {
173
173
  block: boolean;
174
174
  active: boolean;
175
175
  style: vue.StyleValue;
176
+ text: string | number | boolean;
176
177
  disabled: boolean;
177
178
  size: string | number;
178
179
  readonly: boolean;
@@ -217,7 +218,7 @@ declare const VTab: {
217
218
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
218
219
  value?: any;
219
220
  loading?: string | boolean | undefined;
220
- text?: string | undefined;
221
+ text?: string | number | boolean | undefined;
221
222
  class?: any;
222
223
  theme?: string | undefined;
223
224
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -282,7 +283,7 @@ declare const VTab: {
282
283
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
283
284
  value?: any;
284
285
  loading?: string | boolean | undefined;
285
- text?: string | undefined;
286
+ text?: string | number | boolean | undefined;
286
287
  class?: any;
287
288
  theme?: string | undefined;
288
289
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -317,7 +318,7 @@ declare const VTab: {
317
318
  "onGroup:selected"?: ((val: {
318
319
  value: boolean;
319
320
  }) => any) | undefined;
320
- }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
321
+ }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
321
322
  $attrs: {
322
323
  [x: string]: unknown;
323
324
  };
@@ -369,7 +370,7 @@ declare const VTab: {
369
370
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
370
371
  value?: any;
371
372
  loading?: string | boolean | undefined;
372
- text?: string | undefined;
373
+ text?: string | number | boolean | undefined;
373
374
  class?: any;
374
375
  theme?: string | undefined;
375
376
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -419,6 +420,7 @@ declare const VTab: {
419
420
  block: boolean;
420
421
  active: boolean;
421
422
  style: vue.StyleValue;
423
+ text: string | number | boolean;
422
424
  disabled: boolean;
423
425
  size: string | number;
424
426
  readonly: boolean;
@@ -489,7 +491,7 @@ declare const VTab: {
489
491
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
490
492
  value?: any;
491
493
  loading?: string | boolean | undefined;
492
- text?: string | undefined;
494
+ text?: string | number | boolean | undefined;
493
495
  class?: any;
494
496
  theme?: string | undefined;
495
497
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -526,7 +528,7 @@ declare const VTab: {
526
528
  }) => any) | undefined;
527
529
  }, "group"> & vue.ShallowUnwrapRef<{
528
530
  group: GroupItemProvide | null;
529
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "text" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
531
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
530
532
  _allExposed: {
531
533
  group: GroupItemProvide | null;
532
534
  } | {};
@@ -561,7 +563,7 @@ declare const VTab: {
561
563
  minWidth?: string | number | undefined;
562
564
  value?: any;
563
565
  loading?: string | boolean | undefined;
564
- text?: string | undefined;
566
+ text?: string | number | boolean | undefined;
565
567
  class?: any;
566
568
  theme?: string | undefined;
567
569
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -599,6 +601,7 @@ declare const VTab: {
599
601
  exact: boolean;
600
602
  direction: "horizontal" | "vertical";
601
603
  style: vue.StyleValue;
604
+ text: string | number | boolean;
602
605
  disabled: boolean;
603
606
  size: string | number;
604
607
  readonly: boolean;
@@ -656,7 +659,7 @@ declare const VTab: {
656
659
  minWidth?: string | number | undefined;
657
660
  value?: any;
658
661
  loading?: string | boolean | undefined;
659
- text?: string | undefined;
662
+ text?: string | number | boolean | undefined;
660
663
  class?: any;
661
664
  theme?: string | undefined;
662
665
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -699,6 +702,7 @@ declare const VTab: {
699
702
  block: boolean;
700
703
  active: boolean;
701
704
  style: vue.StyleValue;
705
+ text: string | number | boolean;
702
706
  disabled: boolean;
703
707
  size: string | number;
704
708
  readonly: boolean;
@@ -743,7 +747,7 @@ declare const VTab: {
743
747
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
744
748
  value?: any;
745
749
  loading?: string | boolean | undefined;
746
- text?: string | undefined;
750
+ text?: string | number | boolean | undefined;
747
751
  class?: any;
748
752
  theme?: string | undefined;
749
753
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -808,7 +812,7 @@ declare const VTab: {
808
812
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
809
813
  value?: any;
810
814
  loading?: string | boolean | undefined;
811
- text?: string | undefined;
815
+ text?: string | number | boolean | undefined;
812
816
  class?: any;
813
817
  theme?: string | undefined;
814
818
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -843,7 +847,7 @@ declare const VTab: {
843
847
  "onGroup:selected"?: ((val: {
844
848
  value: boolean;
845
849
  }) => any) | undefined;
846
- }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
850
+ }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
847
851
  $attrs: {
848
852
  [x: string]: unknown;
849
853
  };
@@ -895,7 +899,7 @@ declare const VTab: {
895
899
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
896
900
  value?: any;
897
901
  loading?: string | boolean | undefined;
898
- text?: string | undefined;
902
+ text?: string | number | boolean | undefined;
899
903
  class?: any;
900
904
  theme?: string | undefined;
901
905
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -945,6 +949,7 @@ declare const VTab: {
945
949
  block: boolean;
946
950
  active: boolean;
947
951
  style: vue.StyleValue;
952
+ text: string | number | boolean;
948
953
  disabled: boolean;
949
954
  size: string | number;
950
955
  readonly: boolean;
@@ -1015,7 +1020,7 @@ declare const VTab: {
1015
1020
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
1016
1021
  value?: any;
1017
1022
  loading?: string | boolean | undefined;
1018
- text?: string | undefined;
1023
+ text?: string | number | boolean | undefined;
1019
1024
  class?: any;
1020
1025
  theme?: string | undefined;
1021
1026
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1052,7 +1057,7 @@ declare const VTab: {
1052
1057
  }) => any) | undefined;
1053
1058
  }, "group"> & vue.ShallowUnwrapRef<{
1054
1059
  group: GroupItemProvide | null;
1055
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "text" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
1060
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
1056
1061
  _allExposed: {
1057
1062
  group: GroupItemProvide | null;
1058
1063
  } | {};
@@ -1063,6 +1068,7 @@ declare const VTab: {
1063
1068
  exact: boolean;
1064
1069
  direction: "horizontal" | "vertical";
1065
1070
  style: vue.StyleValue;
1071
+ text: string | number | boolean;
1066
1072
  disabled: boolean;
1067
1073
  size: string | number;
1068
1074
  readonly: boolean;
@@ -1112,7 +1118,7 @@ declare const VTab: {
1112
1118
  minWidth?: string | number | undefined;
1113
1119
  value?: any;
1114
1120
  loading?: string | boolean | undefined;
1115
- text?: string | undefined;
1121
+ text?: string | number | boolean | undefined;
1116
1122
  class?: any;
1117
1123
  theme?: string | undefined;
1118
1124
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1155,6 +1161,7 @@ declare const VTab: {
1155
1161
  block: boolean;
1156
1162
  active: boolean;
1157
1163
  style: vue.StyleValue;
1164
+ text: string | number | boolean;
1158
1165
  disabled: boolean;
1159
1166
  size: string | number;
1160
1167
  readonly: boolean;
@@ -1199,7 +1206,7 @@ declare const VTab: {
1199
1206
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
1200
1207
  value?: any;
1201
1208
  loading?: string | boolean | undefined;
1202
- text?: string | undefined;
1209
+ text?: string | number | boolean | undefined;
1203
1210
  class?: any;
1204
1211
  theme?: string | undefined;
1205
1212
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1264,7 +1271,7 @@ declare const VTab: {
1264
1271
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
1265
1272
  value?: any;
1266
1273
  loading?: string | boolean | undefined;
1267
- text?: string | undefined;
1274
+ text?: string | number | boolean | undefined;
1268
1275
  class?: any;
1269
1276
  theme?: string | undefined;
1270
1277
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1299,7 +1306,7 @@ declare const VTab: {
1299
1306
  "onGroup:selected"?: ((val: {
1300
1307
  value: boolean;
1301
1308
  }) => any) | undefined;
1302
- }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
1309
+ }, "symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple">;
1303
1310
  $attrs: {
1304
1311
  [x: string]: unknown;
1305
1312
  };
@@ -1351,7 +1358,7 @@ declare const VTab: {
1351
1358
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
1352
1359
  value?: any;
1353
1360
  loading?: string | boolean | undefined;
1354
- text?: string | undefined;
1361
+ text?: string | number | boolean | undefined;
1355
1362
  class?: any;
1356
1363
  theme?: string | undefined;
1357
1364
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1401,6 +1408,7 @@ declare const VTab: {
1401
1408
  block: boolean;
1402
1409
  active: boolean;
1403
1410
  style: vue.StyleValue;
1411
+ text: string | number | boolean;
1404
1412
  disabled: boolean;
1405
1413
  size: string | number;
1406
1414
  readonly: boolean;
@@ -1471,7 +1479,7 @@ declare const VTab: {
1471
1479
  position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
1472
1480
  value?: any;
1473
1481
  loading?: string | boolean | undefined;
1474
- text?: string | undefined;
1482
+ text?: string | number | boolean | undefined;
1475
1483
  class?: any;
1476
1484
  theme?: string | undefined;
1477
1485
  to?: string | vue_router.RouteLocationAsRelativeGeneric | vue_router.RouteLocationAsPathGeneric | undefined;
@@ -1508,7 +1516,7 @@ declare const VTab: {
1508
1516
  }) => any) | undefined;
1509
1517
  }, "group"> & vue.ShallowUnwrapRef<{
1510
1518
  group: GroupItemProvide | null;
1511
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "text" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
1519
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "location" | "height" | "width" | "border" | "color" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "position" | "value" | "loading" | "class" | "theme" | "ref" | "to" | "icon" | "$children" | "href" | "elevation" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:prepend" | "v-slot:append" | "baseColor" | "selectedClass" | "onGroup:selected" | "activeColor" | "prependIcon" | "appendIcon" | ("symbol" | "replace" | "flat" | "variant" | "exact" | "block" | "active" | "style" | "text" | "disabled" | "size" | "readonly" | "tag" | "rounded" | "tile" | "density" | "slim" | "stacked" | "ripple") | "v-slot:loader">, `$${any}`> & {
1512
1520
  _allExposed: {
1513
1521
  group: GroupItemProvide | null;
1514
1522
  } | {};
@@ -1519,6 +1527,7 @@ declare const VTab: {
1519
1527
  exact: boolean;
1520
1528
  direction: "horizontal" | "vertical";
1521
1529
  style: vue.StyleValue;
1530
+ text: string | number | boolean;
1522
1531
  disabled: boolean;
1523
1532
  size: string | number;
1524
1533
  readonly: boolean;
@@ -1566,7 +1575,10 @@ declare const VTab: {
1566
1575
  type: PropType<vue.StyleValue>;
1567
1576
  default: null;
1568
1577
  };
1569
- text: StringConstructor;
1578
+ text: {
1579
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
1580
+ default: undefined;
1581
+ };
1570
1582
  disabled: BooleanConstructor;
1571
1583
  size: {
1572
1584
  type: (StringConstructor | NumberConstructor)[];
@@ -1648,7 +1660,10 @@ declare const VTab: {
1648
1660
  type: PropType<vue.StyleValue>;
1649
1661
  default: null;
1650
1662
  };
1651
- text: StringConstructor;
1663
+ text: {
1664
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
1665
+ default: undefined;
1666
+ };
1652
1667
  disabled: BooleanConstructor;
1653
1668
  size: {
1654
1669
  type: (StringConstructor | NumberConstructor)[];
@@ -113,10 +113,10 @@ export const VTextarea = genericComponent()({
113
113
  }
114
114
  }
115
115
  const sizerRef = ref();
116
- const rows = ref(+props.rows);
116
+ const rows = ref(Number(props.rows));
117
117
  const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant));
118
118
  watchEffect(() => {
119
- if (!props.autoGrow) rows.value = +props.rows;
119
+ if (!props.autoGrow) rows.value = Number(props.rows);
120
120
  });
121
121
  function calculateInputHeight() {
122
122
  if (!props.autoGrow) return;
@@ -1 +1 @@
1
- {"version":3,"file":"VTextarea.mjs","names":["VCounter","VField","filterFieldProps","makeVFieldProps","makeVInputProps","VInput","useFocus","forwardRefs","useProxiedModel","Intersect","computed","nextTick","onBeforeUnmount","onMounted","ref","shallowRef","watch","watchEffect","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","propsFactory","useRender","makeVTextareaProps","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","VTextarea","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","controlHeight","textareaRef","isActive","active","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","isPlainOrUnderlined","includes","variant","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","newHeight","floor","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","filterProps","fieldProps","_createVNode","_mergeProps","$event","class","_ref2","id","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText","disabled"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { VCounter } from '@/components/VCounter/VCounter'\nimport { VField } from '@/components/VField'\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VCounterSlot } from '@/components/VCounter/VCounter'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const makeVTextareaProps = propsFactory({\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}, 'VTextarea')\n\ntype VTextareaSlots = Omit<VInputSlots & VFieldSlots, 'default'> & {\n counter: VCounterSlot\n}\n\nexport const VTextarea = genericComponent<VTextareaSlots>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextareaProps(),\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 = shallowRef('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n props.persistentPlaceholder ||\n isFocused.value ||\n props.active\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 const rows = ref(+props.rows)\n const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant))\n watchEffect(() => {\n if (!props.autoGrow) rows.value = +props.rows\n })\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 const newHeight = clamp(height ?? 0, minHeight, maxHeight)\n rows.value = Math.floor((newHeight - padding) / lineHeight)\n\n controlHeight.value = convertToUnit(newHeight)\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-input--plain-underlined': isPlainOrUnderlined.value,\n },\n props.class,\n ]}\n style={ props.style }\n { ...rootAttrs }\n { ...inputProps }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\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 { ...fieldProps }\n id={ id.value }\n active={ isActive.value || isDirty.value }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.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 id={ `${slotProps.id}-sizer` }\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 disabled={ props.disabled }\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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","ignoreList":[]}
1
+ {"version":3,"file":"VTextarea.mjs","names":["VCounter","VField","filterFieldProps","makeVFieldProps","makeVInputProps","VInput","useFocus","forwardRefs","useProxiedModel","Intersect","computed","nextTick","onBeforeUnmount","onMounted","ref","shallowRef","watch","watchEffect","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","propsFactory","useRender","makeVTextareaProps","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","VTextarea","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","controlHeight","textareaRef","isActive","active","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","isPlainOrUnderlined","includes","variant","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","newHeight","floor","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","filterProps","fieldProps","_createVNode","_mergeProps","$event","class","_ref2","id","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText","disabled"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { VCounter } from '@/components/VCounter/VCounter'\nimport { VField } from '@/components/VField'\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VCounterSlot } from '@/components/VCounter/VCounter'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const makeVTextareaProps = propsFactory({\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}, 'VTextarea')\n\ntype VTextareaSlots = Omit<VInputSlots & VFieldSlots, 'default'> & {\n counter: VCounterSlot\n}\n\nexport const VTextarea = genericComponent<VTextareaSlots>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextareaProps(),\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 = shallowRef('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n props.persistentPlaceholder ||\n isFocused.value ||\n props.active\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 const rows = ref(Number(props.rows))\n const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant))\n watchEffect(() => {\n if (!props.autoGrow) rows.value = Number(props.rows)\n })\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 const newHeight = clamp(height ?? 0, minHeight, maxHeight)\n rows.value = Math.floor((newHeight - padding) / lineHeight)\n\n controlHeight.value = convertToUnit(newHeight)\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-input--plain-underlined': isPlainOrUnderlined.value,\n },\n props.class,\n ]}\n style={ props.style }\n { ...rootAttrs }\n { ...inputProps }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\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 { ...fieldProps }\n id={ id.value }\n active={ isActive.value || isDirty.value }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.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 id={ `${slotProps.id}-sizer` }\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 disabled={ props.disabled }\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,QAAQ;AAAA,SACRC,MAAM;AAAA,SACNC,gBAAgB,EAAEC,eAAe;AAAA,SACjCC,eAAe,EAAEC,MAAM,gCAEhC;AAAA,SACSC,QAAQ;AAAA,SACRC,WAAW;AAAA,SACXC,eAAe,8CAExB;AAAA,OACOC,SAAS,8CAEhB;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,eAAe,EAAEC,SAAS,EAAEC,GAAG,EAAEC,UAAU,EAAEC,KAAK,EAAEC,WAAW,QAAQ,KAAK;AAAA,SAChGC,SAAS,EAAEC,KAAK,EAAEC,aAAa,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAErG;AAMA,OAAO,MAAMC,kBAAkB,GAAGF,YAAY,CAAC;EAC7CG,QAAQ,EAAEC,OAAO;EACjBC,SAAS,EAAED,OAAO;EAClBE,OAAO,EAAE,CAACF,OAAO,EAAEG,MAAM,EAAEC,MAAM,CAAqC;EACtEC,YAAY,EAAEC,QAA4C;EAC1DC,MAAM,EAAEH,MAAM;EACdI,WAAW,EAAEJ,MAAM;EACnBK,qBAAqB,EAAET,OAAO;EAC9BU,iBAAiB,EAAEV,OAAO;EAC1BW,QAAQ,EAAEX,OAAO;EACjBY,IAAI,EAAE;IACJC,IAAI,EAAE,CAACV,MAAM,EAAEC,MAAM,CAAC;IACtBU,OAAO,EAAE,CAAC;IACVC,SAAS,EAAGC,CAAM,IAAK,CAACC,KAAK,CAACC,UAAU,CAACF,CAAC,CAAC;EAC7C,CAAC;EACDG,OAAO,EAAE;IACPN,IAAI,EAAE,CAACV,MAAM,EAAEC,MAAM,CAAC;IACtBW,SAAS,EAAGC,CAAM,IAAK,CAACC,KAAK,CAACC,UAAU,CAACF,CAAC,CAAC;EAC7C,CAAC;EACDI,MAAM,EAAEhB,MAAM;EACdiB,cAAc,EAAEC,MAA2C;EAE3D,GAAG7C,eAAe,CAAC,CAAC;EACpB,GAAGD,eAAe,CAAC;AACrB,CAAC,EAAE,WAAW,CAAC;AAMf,OAAO,MAAM+C,SAAS,GAAG5B,gBAAgB,CAAiB,CAAC,CAAC;EAC1D6B,IAAI,EAAE,WAAW;EAEjBC,UAAU,EAAE;IAAE3C;EAAU,CAAC;EAEzB4C,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE7B,kBAAkB,CAAC,CAAC;EAE3B8B,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,CAAEL,KAAK,EAAAM,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAH,IAAA;IAClC,MAAMI,KAAK,GAAGxD,eAAe,CAAC8C,KAAK,EAAE,YAAY,CAAC;IAClD,MAAM;MAAEW,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAG7D,QAAQ,CAACgD,KAAK,CAAC;IAClD,MAAMtB,YAAY,GAAGtB,QAAQ,CAAC,MAAM;MAClC,OAAO,OAAO4C,KAAK,CAACtB,YAAY,KAAK,UAAU,GAC3CsB,KAAK,CAACtB,YAAY,CAACgC,KAAK,CAACI,KAAK,CAAC,GAC/B,CAACJ,KAAK,CAACI,KAAK,IAAI,EAAE,EAAEC,QAAQ,CAAC,CAAC,CAACC,MAAM;IAC3C,CAAC,CAAC;IACF,MAAMC,GAAG,GAAG7D,QAAQ,CAAC,MAAM;MACzB,IAAImD,KAAK,CAACW,SAAS,EAAE,OAAOX,KAAK,CAACW,SAAS;MAE3C,IACE,CAAClB,KAAK,CAACzB,OAAO,IACb,OAAOyB,KAAK,CAACzB,OAAO,KAAK,QAAQ,IAClC,OAAOyB,KAAK,CAACzB,OAAO,KAAK,QAAS,EAClC,OAAO4C,SAAS;MAElB,OAAOnB,KAAK,CAACzB,OAAO;IACtB,CAAC,CAAC;IAEF,SAAS6C,WAAWA,CAClBC,cAAuB,EACvBC,OAAoC,EACpC;MACA,IAAI,CAACtB,KAAK,CAAC1B,SAAS,IAAI,CAAC+C,cAAc,EAAE;MAExCC,OAAO,CAAC,CAAC,CAAC,CAACC,MAAM,EAAuBX,KAAK,GAAG,CAAC;IACpD;IAEA,MAAMY,SAAS,GAAGhE,GAAG,CAAS,CAAC;IAC/B,MAAMiE,SAAS,GAAGjE,GAAG,CAAS,CAAC;IAC/B,MAAMkE,aAAa,GAAGjE,UAAU,CAAC,EAAE,CAAC;IACpC,MAAMkE,WAAW,GAAGnE,GAAG,CAAmB,CAAC;IAC3C,MAAMoE,QAAQ,GAAGxE,QAAQ,CAAC,MACxB4C,KAAK,CAAClB,qBAAqB,IAC3B6B,SAAS,CAACG,KAAK,IACfd,KAAK,CAAC6B,MACP,CAAC;IAEF,SAASC,OAAOA,CAAA,EAAI;MAClB,IAAIH,WAAW,CAACb,KAAK,KAAKiB,QAAQ,CAACC,aAAa,EAAE;QAChDL,WAAW,CAACb,KAAK,EAAEF,KAAK,CAAC,CAAC;MAC5B;MAEA,IAAI,CAACD,SAAS,CAACG,KAAK,EAAEF,KAAK,CAAC,CAAC;IAC/B;IACA,SAASqB,cAAcA,CAAE/B,CAAa,EAAE;MACtC4B,OAAO,CAAC,CAAC;MAETtB,IAAI,CAAC,eAAe,EAAEN,CAAC,CAAC;IAC1B;IACA,SAASgC,kBAAkBA,CAAEhC,CAAa,EAAE;MAC1CM,IAAI,CAAC,mBAAmB,EAAEN,CAAC,CAAC;IAC9B;IACA,SAASiC,OAAOA,CAAEjC,CAAa,EAAE;MAC/BA,CAAC,CAACkC,eAAe,CAAC,CAAC;MAEnBN,OAAO,CAAC,CAAC;MAETzE,QAAQ,CAAC,MAAM;QACbqD,KAAK,CAACI,KAAK,GAAG,EAAE;QAEhBlD,SAAS,CAACoC,KAAK,CAAC,eAAe,CAAC,EAAEE,CAAC,CAAC;MACtC,CAAC,CAAC;IACJ;IACA,SAASmC,OAAOA,CAAEnC,CAAQ,EAAE;MAC1B,MAAMoC,EAAE,GAAGpC,CAAC,CAACqB,MAA6B;MAC1Cb,KAAK,CAACI,KAAK,GAAGwB,EAAE,CAACxB,KAAK;MACtB,IAAId,KAAK,CAACN,cAAc,EAAE6C,IAAI,EAAE;QAC9B,MAAMC,aAAa,GAAG,CAACF,EAAE,CAACG,cAAc,EAAEH,EAAE,CAACI,YAAY,CAAC;QAC1DrF,QAAQ,CAAC,MAAM;UACbiF,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,GAAGnF,GAAG,CAAsB,CAAC;IAC3C,MAAMyB,IAAI,GAAGzB,GAAG,CAACgB,MAAM,CAACwB,KAAK,CAACf,IAAI,CAAC,CAAC;IACpC,MAAM2D,mBAAmB,GAAGxF,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAACyF,QAAQ,CAAC7C,KAAK,CAAC8C,OAAO,CAAC,CAAC;IAC3FnF,WAAW,CAAC,MAAM;MAChB,IAAI,CAACqC,KAAK,CAAC5B,QAAQ,EAAEa,IAAI,CAAC6B,KAAK,GAAGtC,MAAM,CAACwB,KAAK,CAACf,IAAI,CAAC;IACtD,CAAC,CAAC;IACF,SAAS8D,oBAAoBA,CAAA,EAAI;MAC/B,IAAI,CAAC/C,KAAK,CAAC5B,QAAQ,EAAE;MAErBf,QAAQ,CAAC,MAAM;QACb,IAAI,CAACsF,QAAQ,CAAC7B,KAAK,IAAI,CAACW,SAAS,CAACX,KAAK,EAAE;QAEzC,MAAMkC,KAAK,GAAGC,gBAAgB,CAACN,QAAQ,CAAC7B,KAAK,CAAC;QAC9C,MAAMoC,UAAU,GAAGD,gBAAgB,CAACxB,SAAS,CAACX,KAAK,CAACqC,GAAG,CAAC;QAExD,MAAMC,OAAO,GAAG7D,UAAU,CAACyD,KAAK,CAACK,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,GACzE9D,UAAU,CAACyD,KAAK,CAACK,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,GAC3D9D,UAAU,CAACyD,KAAK,CAACK,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QAEhE,MAAMC,MAAM,GAAGX,QAAQ,CAAC7B,KAAK,CAACyC,YAAY;QAC1C,MAAMC,UAAU,GAAGjE,UAAU,CAACyD,KAAK,CAACQ,UAAU,CAAC;QAC/C,MAAMC,SAAS,GAAGC,IAAI,CAACzC,GAAG,CACxB1B,UAAU,CAACS,KAAK,CAACf,IAAI,CAAC,GAAGuE,UAAU,GAAGJ,OAAO,EAC7C7D,UAAU,CAAC2D,UAAU,CAACG,gBAAgB,CAAC,0BAA0B,CAAC,CACpE,CAAC;QACD,MAAMM,SAAS,GAAGpE,UAAU,CAACS,KAAK,CAACR,OAAQ,CAAC,GAAGgE,UAAU,GAAGJ,OAAO,IAAIQ,QAAQ;QAC/E,MAAMC,SAAS,GAAGhG,KAAK,CAACyF,MAAM,IAAI,CAAC,EAAEG,SAAS,EAAEE,SAAS,CAAC;QAC1D1E,IAAI,CAAC6B,KAAK,GAAG4C,IAAI,CAACI,KAAK,CAAC,CAACD,SAAS,GAAGT,OAAO,IAAII,UAAU,CAAC;QAE3D9B,aAAa,CAACZ,KAAK,GAAGhD,aAAa,CAAC+F,SAAS,CAAC;MAChD,CAAC,CAAC;IACJ;IAEAtG,SAAS,CAACwF,oBAAoB,CAAC;IAC/BrF,KAAK,CAACgD,KAAK,EAAEqC,oBAAoB,CAAC;IAClCrF,KAAK,CAAC,MAAMsC,KAAK,CAACf,IAAI,EAAE8D,oBAAoB,CAAC;IAC7CrF,KAAK,CAAC,MAAMsC,KAAK,CAACR,OAAO,EAAEuD,oBAAoB,CAAC;IAChDrF,KAAK,CAAC,MAAMsC,KAAK,CAAC+D,OAAO,EAAEhB,oBAAoB,CAAC;IAEhD,IAAIiB,QAAoC;IACxCtG,KAAK,CAACiF,QAAQ,EAAEvC,GAAG,IAAI;MACrB,IAAIA,GAAG,EAAE;QACP4D,QAAQ,GAAG,IAAIC,cAAc,CAAClB,oBAAoB,CAAC;QACnDiB,QAAQ,CAACE,OAAO,CAACvB,QAAQ,CAAC7B,KAAM,CAAC;MACnC,CAAC,MAAM;QACLkD,QAAQ,EAAEG,UAAU,CAAC,CAAC;MACxB;IACF,CAAC,CAAC;IACF7G,eAAe,CAAC,MAAM;MACpB0G,QAAQ,EAAEG,UAAU,CAAC,CAAC;IACxB,CAAC,CAAC;IAEFjG,SAAS,CAAC,MAAM;MACd,MAAMkG,UAAU,GAAG,CAAC,EAAE3D,KAAK,CAAClC,OAAO,IAAIyB,KAAK,CAACzB,OAAO,IAAIyB,KAAK,CAACtB,YAAY,CAAC;MAC3E,MAAM2F,UAAU,GAAG,CAAC,EAAED,UAAU,IAAI3D,KAAK,CAAC6D,OAAO,CAAC;MAClD,MAAM,CAACC,SAAS,EAAEC,UAAU,CAAC,GAAGzG,gBAAgB,CAACwC,KAAK,CAAC;MACvD,MAAM;QAAEkE,UAAU,EAAEC,CAAC;QAAE,GAAGC;MAAW,CAAC,GAAG5H,MAAM,CAAC6H,WAAW,CAAC5E,KAAK,CAAC;MAClE,MAAM6E,UAAU,GAAGjI,gBAAgB,CAACoD,KAAK,CAAC;MAE1C,OAAA8E,YAAA,CAAA/H,MAAA,EAAAgI,WAAA;QAAA,OAEUvD,SAAS;QAAA,cACLd,KAAK,CAACI,KAAK;QAAA,uBAAAkE,MAAA,IAAXtE,KAAK,CAACI,KAAK,GAAAkE,MAAA;QAAA,SACd,CACL,yBAAyB,EACzB;UACE,sBAAsB,EAAEhF,KAAK,CAACpB,MAAM;UACpC,sBAAsB,EAAEoB,KAAK,CAACP,MAAM;UACpC,wBAAwB,EAAEO,KAAK,CAACpB,MAAM;UACtC,wBAAwB,EAAEoB,KAAK,CAACP,MAAM;UACtC,uBAAuB,EAAEO,KAAK,CAAC5B,QAAQ;UACvC,uBAAuB,EAAE4B,KAAK,CAAChB,QAAQ,IAAIgB,KAAK,CAAC5B,QAAQ;UACzD,2BAA2B,EAAEwE,mBAAmB,CAAC9B;QACnD,CAAC,EACDd,KAAK,CAACiF,KAAK,CACZ;QAAA,SACOjF,KAAK,CAACgD;MAAK,GACduB,SAAS,EACTI,UAAU;QAAA,eACD1F,IAAI,CAAC6B,KAAK,KAAK,CAAC,IAAI,CAAC8B,mBAAmB,CAAC9B,KAAK;QAAA,WAClDH,SAAS,CAACG;MAAK;QAGvB,GAAGL,KAAK;QACRtB,OAAO,EAAE+F,KAAA;UAAA,IAAC;YACRC,EAAE;YACFC,UAAU;YACVC,OAAO;YACPC,UAAU;YACVC;UACF,CAAC,GAAAL,KAAA;UAAA,OAAAJ,YAAA,CAAAnI,MAAA,EAAAoI,WAAA;YAAA,OAEStD,SAAS;YAAA,SACR;cACL,6BAA6B,EAAEC,aAAa,CAACZ;YAC/C,CAAC;YAAA,WACSmB,cAAc;YAAA,eACVC,kBAAkB;YAAA,iBAChBC,OAAO;YAAA,wBACAnC,KAAK,CAAC,sBAAsB,CAAC;YAAA,uBAC9BA,KAAK,CAAC,qBAAqB;UAAC,GAC7C6E,UAAU;YAAA,MACVM,EAAE,CAACrE,KAAK;YAAA,UACJc,QAAQ,CAACd,KAAK,IAAIuE,OAAO,CAACvE,KAAK;YAAA,eAC1B7B,IAAI,CAAC6B,KAAK,KAAK,CAAC,IAAI,CAAC8B,mBAAmB,CAAC9B,KAAK;YAAA,SACpDuE,OAAO,CAACvE,KAAK,IAAId,KAAK,CAACwF,KAAK;YAAA,YACzBJ,UAAU,CAACtE,KAAK;YAAA,WACjBH,SAAS,CAACG,KAAK;YAAA,SACjByE,OAAO,CAACzE,KAAK,KAAK;UAAK;YAG7B,GAAGL,KAAK;YACRtB,OAAO,EAAEsG,KAAA;cAAA,IAAC;gBACRzF,KAAK,EAAE;kBAAEiF,KAAK,EAAES,UAAU;kBAAE,GAAGC;gBAAU;cAC3C,CAAC,GAAAF,KAAA;cAAA,OAAAX,YAAA,CAAAc,SAAA,SAEK5F,KAAK,CAACpB,MAAM,IAAAkG,YAAA;gBAAA;cAAA,IAER9E,KAAK,CAACpB,MAAM,EAEjB,EAAAiH,eAAA,CAAAf,YAAA,aAAAC,WAAA;gBAAA,OAGOpD,WAAW;gBAAA,SACT+D,UAAU;gBAAA,SACVhF,KAAK,CAACI,KAAK;gBAAA,WACTuB,OAAO;gBAAA,aAILrC,KAAK,CAAC1B,SAAS;gBAAA,YAChBgH,UAAU,CAACxE,KAAK;gBAAA,YAChBsE,UAAU,CAACtE,KAAK;gBAAA,eACbd,KAAK,CAACnB,WAAW;gBAAA,QACxBmB,KAAK,CAACf,IAAI;gBAAA,QACVe,KAAK,CAACH,IAAI;gBAAA,WACPiC,OAAO;gBAAA,UACRjB;cAAI,GACR8E,SAAS,EACTnB,UAAU,YAAAsB,iBAAA,eAZD;gBACZC,OAAO,EAAE3E;cACX,CAAC,EAAE,IAAI;gBAAA4E,IAAA;cAAA,MAaPhG,KAAK,CAAC5B,QAAQ,IAAAyH,eAAA,CAAAf,YAAA;gBAAA,SAEL,CACLY,UAAU,EACV,mBAAmB,CACpB;gBAAA,MACI,GAAGC,SAAS,CAACR,EAAE,QAAQ;gBAAA,uBAAAH,MAAA,IAClBtE,KAAK,CAACI,KAAK,GAAAkE,MAAA;gBAAA,OACfrC,QAAQ;gBAAA;gBAAA;cAAA,YAAAsD,WAAA,EADJvF,KAAK,CAACI,KAAK,GAKxB,EAECd,KAAK,CAACP,MAAM,IAAAqF,YAAA;gBAAA;cAAA,IAER9E,KAAK,CAACP,MAAM,EAEjB;YAAA;UAEJ;QAAA,CAGN;QACD6E,OAAO,EAAED,UAAU,GAAGsB,SAAS,IAAAb,YAAA,CAAAc,SAAA,SAEzBnF,KAAK,CAAC6D,OAAO,GAAGqB,SAAS,CAAC,EAE1BvB,UAAU,IAAAU,YAAA,CAAAc,SAAA,SAAAd,YAAA,sBAAAA,YAAA,CAAApI,QAAA;UAAA,UAKGsD,KAAK,CAACjB,iBAAiB,IAAI4B,SAAS,CAACG,KAAK;UAAA,SAC3CpC,YAAY,CAACoC,KAAK;UAAA,OACpBG,GAAG,CAACH,KAAK;UAAA,YACJd,KAAK,CAACkG;QAAQ,GACPzF,KAAK,CAAClC,OAAO,GAGpC,EAEJ,GAAG4C;MAAS;IAIrB,CAAC,CAAC;IAEF,OAAOlE,WAAW,CAAC,CAAC,CAAC,EAAEuE,SAAS,EAAEC,SAAS,EAAEE,WAAW,CAAC;EAC3D;AACF,CAAC,CAAC","ignoreList":[]}
@@ -277,6 +277,7 @@ declare const VTooltip: {
277
277
  }) => vue.VNodeChild) | undefined;
278
278
  onAfterEnter?: (() => any) | undefined;
279
279
  onAfterLeave?: (() => any) | undefined;
280
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
280
281
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
281
282
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
282
283
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
@@ -359,6 +360,7 @@ declare const VTooltip: {
359
360
  } & {
360
361
  onAfterEnter?: (() => any) | undefined;
361
362
  onAfterLeave?: (() => any) | undefined;
363
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
362
364
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
363
365
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
364
366
  }, "absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack">;
@@ -380,7 +382,7 @@ declare const VTooltip: {
380
382
  }>;
381
383
  $root: vue.ComponentPublicInstance | null;
382
384
  $parent: vue.ComponentPublicInstance | null;
383
- $emit: ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
385
+ $emit: ((event: "keydown", e: KeyboardEvent) => void) & ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
384
386
  $el: any;
385
387
  $options: vue.ComponentOptionsBase<{
386
388
  absolute: boolean;
@@ -462,6 +464,7 @@ declare const VTooltip: {
462
464
  } & {
463
465
  onAfterEnter?: (() => any) | undefined;
464
466
  onAfterLeave?: (() => any) | undefined;
467
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
465
468
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
466
469
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
467
470
  }, {
@@ -476,6 +479,7 @@ declare const VTooltip: {
476
479
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
477
480
  'click:outside': (e: MouseEvent) => true;
478
481
  'update:modelValue': (value: boolean) => true;
482
+ keydown: (e: KeyboardEvent) => true;
479
483
  afterEnter: () => true;
480
484
  afterLeave: () => true;
481
485
  }, string, {
@@ -614,6 +618,7 @@ declare const VTooltip: {
614
618
  } & {
615
619
  onAfterEnter?: (() => any) | undefined;
616
620
  onAfterLeave?: (() => any) | undefined;
621
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
617
622
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
618
623
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
619
624
  }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
@@ -625,7 +630,7 @@ declare const VTooltip: {
625
630
  globalTop: Readonly<vue.Ref<boolean>>;
626
631
  localTop: vue.ComputedRef<boolean>;
627
632
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
628
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
633
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "onKeydown" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
629
634
  _allExposed: {
630
635
  activatorEl: vue.Ref<HTMLElement | undefined>;
631
636
  scrimEl: vue.Ref<HTMLElement | undefined>;
@@ -942,6 +947,7 @@ declare const VTooltip: {
942
947
  }) => vue.VNodeChild) | undefined;
943
948
  onAfterEnter?: (() => any) | undefined;
944
949
  onAfterLeave?: (() => any) | undefined;
950
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
945
951
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
946
952
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
947
953
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
@@ -1024,6 +1030,7 @@ declare const VTooltip: {
1024
1030
  } & {
1025
1031
  onAfterEnter?: (() => any) | undefined;
1026
1032
  onAfterLeave?: (() => any) | undefined;
1033
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1027
1034
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1028
1035
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1029
1036
  }, "absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack">;
@@ -1045,7 +1052,7 @@ declare const VTooltip: {
1045
1052
  }>;
1046
1053
  $root: vue.ComponentPublicInstance | null;
1047
1054
  $parent: vue.ComponentPublicInstance | null;
1048
- $emit: ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
1055
+ $emit: ((event: "keydown", e: KeyboardEvent) => void) & ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
1049
1056
  $el: any;
1050
1057
  $options: vue.ComponentOptionsBase<{
1051
1058
  absolute: boolean;
@@ -1127,6 +1134,7 @@ declare const VTooltip: {
1127
1134
  } & {
1128
1135
  onAfterEnter?: (() => any) | undefined;
1129
1136
  onAfterLeave?: (() => any) | undefined;
1137
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1130
1138
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1131
1139
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1132
1140
  }, {
@@ -1141,6 +1149,7 @@ declare const VTooltip: {
1141
1149
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1142
1150
  'click:outside': (e: MouseEvent) => true;
1143
1151
  'update:modelValue': (value: boolean) => true;
1152
+ keydown: (e: KeyboardEvent) => true;
1144
1153
  afterEnter: () => true;
1145
1154
  afterLeave: () => true;
1146
1155
  }, string, {
@@ -1279,6 +1288,7 @@ declare const VTooltip: {
1279
1288
  } & {
1280
1289
  onAfterEnter?: (() => any) | undefined;
1281
1290
  onAfterLeave?: (() => any) | undefined;
1291
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1282
1292
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1283
1293
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1284
1294
  }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
@@ -1290,7 +1300,7 @@ declare const VTooltip: {
1290
1300
  globalTop: Readonly<vue.Ref<boolean>>;
1291
1301
  localTop: vue.ComputedRef<boolean>;
1292
1302
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
1293
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
1303
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "onKeydown" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
1294
1304
  _allExposed: {
1295
1305
  activatorEl: vue.Ref<HTMLElement | undefined>;
1296
1306
  scrimEl: vue.Ref<HTMLElement | undefined>;
@@ -1515,6 +1525,7 @@ declare const VTooltip: {
1515
1525
  }) => vue.VNodeChild) | undefined;
1516
1526
  onAfterEnter?: (() => any) | undefined;
1517
1527
  onAfterLeave?: (() => any) | undefined;
1528
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1518
1529
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1519
1530
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1520
1531
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
@@ -1597,6 +1608,7 @@ declare const VTooltip: {
1597
1608
  } & {
1598
1609
  onAfterEnter?: (() => any) | undefined;
1599
1610
  onAfterLeave?: (() => any) | undefined;
1611
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1600
1612
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1601
1613
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1602
1614
  }, "absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack">;
@@ -1618,7 +1630,7 @@ declare const VTooltip: {
1618
1630
  }>;
1619
1631
  $root: vue.ComponentPublicInstance | null;
1620
1632
  $parent: vue.ComponentPublicInstance | null;
1621
- $emit: ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
1633
+ $emit: ((event: "keydown", e: KeyboardEvent) => void) & ((event: "update:modelValue", value: boolean) => void) & ((event: "click:outside", e: MouseEvent) => void) & ((event: "afterEnter") => void) & ((event: "afterLeave") => void);
1622
1634
  $el: any;
1623
1635
  $options: vue.ComponentOptionsBase<{
1624
1636
  absolute: boolean;
@@ -1700,6 +1712,7 @@ declare const VTooltip: {
1700
1712
  } & {
1701
1713
  onAfterEnter?: (() => any) | undefined;
1702
1714
  onAfterLeave?: (() => any) | undefined;
1715
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1703
1716
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1704
1717
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1705
1718
  }, {
@@ -1714,6 +1727,7 @@ declare const VTooltip: {
1714
1727
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1715
1728
  'click:outside': (e: MouseEvent) => true;
1716
1729
  'update:modelValue': (value: boolean) => true;
1730
+ keydown: (e: KeyboardEvent) => true;
1717
1731
  afterEnter: () => true;
1718
1732
  afterLeave: () => true;
1719
1733
  }, string, {
@@ -1852,6 +1866,7 @@ declare const VTooltip: {
1852
1866
  } & {
1853
1867
  onAfterEnter?: (() => any) | undefined;
1854
1868
  onAfterLeave?: (() => any) | undefined;
1869
+ onKeydown?: ((e: KeyboardEvent) => any) | undefined;
1855
1870
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1856
1871
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1857
1872
  }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
@@ -1863,7 +1878,7 @@ declare const VTooltip: {
1863
1878
  globalTop: Readonly<vue.Ref<boolean>>;
1864
1879
  localTop: vue.ComputedRef<boolean>;
1865
1880
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
1866
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
1881
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "theme" | "ref" | "onAfterEnter" | "onAfterLeave" | "onKeydown" | "$children" | "v-slots" | "v-slot:default" | "ref_for" | "ref_key" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "onUpdate:modelValue" | "contentClass" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "persistent" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "scrim" | "_disableGlobalStack")>, `$${any}`> & {
1867
1882
  _allExposed: {
1868
1883
  activatorEl: vue.Ref<HTMLElement | undefined>;
1869
1884
  scrimEl: vue.Ref<HTMLElement | undefined>;