vuetify 3.3.12 → 3.3.13

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 (168) hide show
  1. package/dist/json/attributes.json +45 -5
  2. package/dist/json/importMap.json +12 -12
  3. package/dist/json/tags.json +10 -0
  4. package/dist/json/web-types.json +158 -11
  5. package/dist/vuetify-labs.css +242 -205
  6. package/dist/vuetify-labs.d.ts +169 -35
  7. package/dist/vuetify-labs.esm.js +97 -58
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +97 -58
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +195 -158
  12. package/dist/vuetify.d.ts +172 -38
  13. package/dist/vuetify.esm.js +97 -58
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +97 -58
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +149 -149
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  21. package/lib/components/VAppBar/index.d.mts +6 -6
  22. package/lib/components/VAutocomplete/VAutocomplete.mjs +6 -2
  23. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  24. package/lib/components/VAutocomplete/index.d.mts +42 -0
  25. package/lib/components/VBottomNavigation/VBottomNavigation.css +1 -0
  26. package/lib/components/VBottomNavigation/VBottomNavigation.sass +1 -0
  27. package/lib/components/VBtn/VBtn.css +3 -0
  28. package/lib/components/VBtn/VBtn.sass +3 -0
  29. package/lib/components/VCheckbox/index.d.mts +3 -1
  30. package/lib/components/VCombobox/VCombobox.mjs +6 -2
  31. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  32. package/lib/components/VCombobox/index.d.mts +42 -0
  33. package/lib/components/VField/VField.css +1 -0
  34. package/lib/components/VField/VField.mjs +5 -3
  35. package/lib/components/VField/VField.mjs.map +1 -1
  36. package/lib/components/VField/VField.sass +1 -0
  37. package/lib/components/VFileInput/VFileInput.css +4 -0
  38. package/lib/components/VFileInput/VFileInput.sass +5 -1
  39. package/lib/components/VFileInput/_variables.scss +2 -1
  40. package/lib/components/VList/VList.css +1 -1
  41. package/lib/components/VList/VList.sass +1 -1
  42. package/lib/components/VList/VListItem.css +15 -10
  43. package/lib/components/VList/VListItem.mjs +6 -3
  44. package/lib/components/VList/VListItem.mjs.map +1 -1
  45. package/lib/components/VList/VListItem.sass +17 -10
  46. package/lib/components/VMenu/VMenu.mjs +4 -3
  47. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  48. package/lib/components/VMenu/index.d.mts +5 -5
  49. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +0 -1
  50. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +0 -1
  51. package/lib/components/VNavigationDrawer/_variables.scss +0 -1
  52. package/lib/components/VRadio/index.d.mts +3 -1
  53. package/lib/components/VRadioGroup/VRadioGroup.css +6 -1
  54. package/lib/components/VRadioGroup/VRadioGroup.sass +5 -0
  55. package/lib/components/VRadioGroup/_variables.scss +3 -1
  56. package/lib/components/VRadioGroup/index.d.mts +3 -1
  57. package/lib/components/VSelect/VSelect.mjs +14 -2
  58. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  59. package/lib/components/VSelect/index.d.mts +42 -0
  60. package/lib/components/VSelectionControl/VSelectionControl.mjs +22 -19
  61. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  62. package/lib/components/VSelectionControl/index.d.mts +27 -25
  63. package/lib/components/VSwitch/VSwitch.css +24 -17
  64. package/lib/components/VSwitch/VSwitch.mjs +28 -19
  65. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  66. package/lib/components/VSwitch/VSwitch.sass +20 -11
  67. package/lib/components/VSwitch/_variables.scss +18 -6
  68. package/lib/components/VSwitch/index.d.mts +3 -1
  69. package/lib/components/VTextField/VTextField.css +9 -2
  70. package/lib/components/VTextField/VTextField.mjs +6 -3
  71. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  72. package/lib/components/VTextField/VTextField.sass +10 -3
  73. package/lib/components/VTextField/index.d.mts +6 -0
  74. package/lib/components/VTextarea/VTextarea.mjs +1 -2
  75. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  76. package/lib/components/VTimeline/VTimeline.css +6 -1
  77. package/lib/components/VTimeline/VTimeline.sass +6 -1
  78. package/lib/components/index.d.mts +169 -35
  79. package/lib/entry-bundler.mjs +1 -1
  80. package/lib/framework.mjs +1 -1
  81. package/lib/index.d.mts +3 -3
  82. package/lib/labs/VDateInput/index.d.mts +6 -0
  83. package/lib/locale/af.mjs +1 -0
  84. package/lib/locale/af.mjs.map +1 -1
  85. package/lib/locale/ar.mjs +1 -0
  86. package/lib/locale/ar.mjs.map +1 -1
  87. package/lib/locale/az.mjs +1 -0
  88. package/lib/locale/az.mjs.map +1 -1
  89. package/lib/locale/bg.mjs +1 -0
  90. package/lib/locale/bg.mjs.map +1 -1
  91. package/lib/locale/ca.mjs +1 -0
  92. package/lib/locale/ca.mjs.map +1 -1
  93. package/lib/locale/ckb.mjs +1 -0
  94. package/lib/locale/ckb.mjs.map +1 -1
  95. package/lib/locale/cs.mjs +1 -0
  96. package/lib/locale/cs.mjs.map +1 -1
  97. package/lib/locale/da.mjs +1 -0
  98. package/lib/locale/da.mjs.map +1 -1
  99. package/lib/locale/de.mjs +1 -0
  100. package/lib/locale/de.mjs.map +1 -1
  101. package/lib/locale/el.mjs +1 -0
  102. package/lib/locale/el.mjs.map +1 -1
  103. package/lib/locale/en.mjs +1 -0
  104. package/lib/locale/en.mjs.map +1 -1
  105. package/lib/locale/es.mjs +1 -0
  106. package/lib/locale/es.mjs.map +1 -1
  107. package/lib/locale/et.mjs +1 -0
  108. package/lib/locale/et.mjs.map +1 -1
  109. package/lib/locale/fa.mjs +1 -0
  110. package/lib/locale/fa.mjs.map +1 -1
  111. package/lib/locale/fi.mjs +1 -0
  112. package/lib/locale/fi.mjs.map +1 -1
  113. package/lib/locale/fr.mjs +1 -0
  114. package/lib/locale/fr.mjs.map +1 -1
  115. package/lib/locale/he.mjs +1 -0
  116. package/lib/locale/he.mjs.map +1 -1
  117. package/lib/locale/hr.mjs +1 -0
  118. package/lib/locale/hr.mjs.map +1 -1
  119. package/lib/locale/hu.mjs +1 -0
  120. package/lib/locale/hu.mjs.map +1 -1
  121. package/lib/locale/id.mjs +1 -0
  122. package/lib/locale/id.mjs.map +1 -1
  123. package/lib/locale/index.d.mts +42 -0
  124. package/lib/locale/it.mjs +1 -0
  125. package/lib/locale/it.mjs.map +1 -1
  126. package/lib/locale/ja.mjs +1 -0
  127. package/lib/locale/ja.mjs.map +1 -1
  128. package/lib/locale/ko.mjs +1 -0
  129. package/lib/locale/ko.mjs.map +1 -1
  130. package/lib/locale/lt.mjs +1 -0
  131. package/lib/locale/lt.mjs.map +1 -1
  132. package/lib/locale/lv.mjs +1 -0
  133. package/lib/locale/lv.mjs.map +1 -1
  134. package/lib/locale/nl.mjs +1 -0
  135. package/lib/locale/nl.mjs.map +1 -1
  136. package/lib/locale/no.mjs +1 -0
  137. package/lib/locale/no.mjs.map +1 -1
  138. package/lib/locale/pl.mjs +1 -0
  139. package/lib/locale/pl.mjs.map +1 -1
  140. package/lib/locale/pt.mjs +1 -0
  141. package/lib/locale/pt.mjs.map +1 -1
  142. package/lib/locale/ro.mjs +1 -0
  143. package/lib/locale/ro.mjs.map +1 -1
  144. package/lib/locale/ru.mjs +1 -0
  145. package/lib/locale/ru.mjs.map +1 -1
  146. package/lib/locale/sk.mjs +1 -0
  147. package/lib/locale/sk.mjs.map +1 -1
  148. package/lib/locale/sl.mjs +1 -0
  149. package/lib/locale/sl.mjs.map +1 -1
  150. package/lib/locale/sr-Cyrl.mjs +1 -0
  151. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  152. package/lib/locale/sr-Latn.mjs +1 -0
  153. package/lib/locale/sr-Latn.mjs.map +1 -1
  154. package/lib/locale/sv.mjs +1 -0
  155. package/lib/locale/sv.mjs.map +1 -1
  156. package/lib/locale/th.mjs +1 -0
  157. package/lib/locale/th.mjs.map +1 -1
  158. package/lib/locale/tr.mjs +1 -0
  159. package/lib/locale/tr.mjs.map +1 -1
  160. package/lib/locale/uk.mjs +1 -0
  161. package/lib/locale/uk.mjs.map +1 -1
  162. package/lib/locale/vi.mjs +1 -0
  163. package/lib/locale/vi.mjs.map +1 -1
  164. package/lib/locale/zh-Hans.mjs +1 -0
  165. package/lib/locale/zh-Hans.mjs.map +1 -1
  166. package/lib/locale/zh-Hant.mjs +1 -0
  167. package/lib/locale/zh-Hant.mjs.map +1 -1
  168. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.3.12
2
+ * Vuetify v3.3.13
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1653,6 +1653,7 @@ function createLayout(props) {
1653
1653
 
1654
1654
  var en = {
1655
1655
  badge: 'Badge',
1656
+ open: 'Open',
1656
1657
  close: 'Close',
1657
1658
  dataIterator: {
1658
1659
  noResultsText: 'No matching records found',
@@ -5856,6 +5857,20 @@ const VSelectionControl = genericComponent()({
5856
5857
  }
5857
5858
  }) : props.label;
5858
5859
  const [rootAttrs, inputAttrs] = filterInputAttrs(attrs);
5860
+ const inputNode = createVNode("input", mergeProps({
5861
+ "ref": input,
5862
+ "checked": model.value,
5863
+ "disabled": !!(props.readonly || props.disabled),
5864
+ "id": id.value,
5865
+ "onBlur": onBlur,
5866
+ "onFocus": onFocus,
5867
+ "onInput": onInput,
5868
+ "aria-disabled": !!(props.readonly || props.disabled),
5869
+ "type": props.type,
5870
+ "value": trueValue.value,
5871
+ "name": props.name,
5872
+ "aria-checked": props.type === 'checkbox' ? model.value : undefined
5873
+ }, inputAttrs), null);
5859
5874
  return createVNode("div", mergeProps({
5860
5875
  "class": ['v-selection-control', {
5861
5876
  'v-selection-control--dirty': model.value,
@@ -5872,32 +5887,21 @@ const VSelectionControl = genericComponent()({
5872
5887
  "style": textColorStyles.value
5873
5888
  }, [slots.default?.(), withDirectives(createVNode("div", {
5874
5889
  "class": ['v-selection-control__input']
5875
- }, [icon.value && createVNode(VIcon, {
5876
- "key": "icon",
5877
- "icon": icon.value
5878
- }, null), createVNode("input", mergeProps({
5879
- "ref": input,
5880
- "checked": model.value,
5881
- "disabled": !!(props.readonly || props.disabled),
5882
- "id": id.value,
5883
- "onBlur": onBlur,
5884
- "onFocus": onFocus,
5885
- "onInput": onInput,
5886
- "aria-disabled": !!(props.readonly || props.disabled),
5887
- "type": props.type,
5888
- "value": trueValue.value,
5889
- "name": props.name,
5890
- "aria-checked": props.type === 'checkbox' ? model.value : undefined
5891
- }, inputAttrs), null), slots.input?.({
5890
+ }, [slots.input?.({
5892
5891
  model,
5893
5892
  textColorClasses,
5894
5893
  textColorStyles,
5894
+ inputNode,
5895
+ icon: icon.value,
5895
5896
  props: {
5896
5897
  onFocus,
5897
5898
  onBlur,
5898
5899
  id: id.value
5899
5900
  }
5900
- })]), [[resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && createVNode(VLabel, {
5901
+ }) ?? createVNode(Fragment, null, [icon.value && createVNode(VIcon, {
5902
+ "key": "icon",
5903
+ "icon": icon.value
5904
+ }, null), inputNode])]), [[resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && createVNode(VLabel, {
5901
5905
  "for": id.value,
5902
5906
  "clickable": true
5903
5907
  }, {
@@ -7666,7 +7670,6 @@ const VListItem = genericComponent()({
7666
7670
  "style": [colorStyles.value, dimensionStyles.value, props.style],
7667
7671
  "href": link.href.value,
7668
7672
  "tabindex": isClickable.value ? list ? -2 : 0 : undefined,
7669
- "title": props.title,
7670
7673
  "onClick": onClick,
7671
7674
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
7672
7675
  }, {
@@ -7699,7 +7702,9 @@ const VListItem = genericComponent()({
7699
7702
  }
7700
7703
  }, {
7701
7704
  default: () => [slots.prepend?.(slotProps.value)]
7702
- })]), createVNode("div", {
7705
+ }), createVNode("div", {
7706
+ "class": "v-list-item__spacer"
7707
+ }, null)]), createVNode("div", {
7703
7708
  "class": "v-list-item__content",
7704
7709
  "data-no-activator": ""
7705
7710
  }, [hasTitle && createVNode(VListItemTitle, {
@@ -7743,7 +7748,9 @@ const VListItem = genericComponent()({
7743
7748
  }
7744
7749
  }, {
7745
7750
  default: () => [slots.append?.(slotProps.value)]
7746
- })])]
7751
+ }), createVNode("div", {
7752
+ "class": "v-list-item__spacer"
7753
+ }, null)])]
7747
7754
  }), [[resolveDirective("ripple"), isClickable.value && props.ripple]]);
7748
7755
  });
7749
7756
  return {};
@@ -9854,10 +9861,11 @@ const VMenu = genericComponent()({
9854
9861
  }, 40);
9855
9862
  }
9856
9863
  });
9857
- function onFocusIn(e) {
9864
+ async function onFocusIn(e) {
9858
9865
  const before = e.relatedTarget;
9859
9866
  const after = e.target;
9860
- if (before !== after && overlay.value?.contentEl &&
9867
+ await nextTick();
9868
+ if (isActive.value && before !== after && overlay.value?.contentEl &&
9861
9869
  // We're the topmost menu
9862
9870
  overlay.value?.globalTop &&
9863
9871
  // It isn't the document or the menu body
@@ -10193,7 +10201,7 @@ const VField = genericComponent()({
10193
10201
  'v-field--no-label': !label,
10194
10202
  [`v-field--variant-${props.variant}`]: true
10195
10203
  }, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, rtlClasses.value, props.class],
10196
- "style": [backgroundColorStyles.value, textColorStyles.value, props.style],
10204
+ "style": [backgroundColorStyles.value, props.style],
10197
10205
  "onClick": onClick
10198
10206
  }, attrs), [createVNode("div", {
10199
10207
  "class": "v-field__overlay"
@@ -10217,7 +10225,8 @@ const VField = genericComponent()({
10217
10225
  "ref": floatingLabelRef,
10218
10226
  "class": [textColorClasses.value],
10219
10227
  "floating": true,
10220
- "for": id.value
10228
+ "for": id.value,
10229
+ "style": textColorStyles.value
10221
10230
  }, {
10222
10231
  default: () => [label]
10223
10232
  }), createVNode(VFieldLabel, {
@@ -10253,7 +10262,8 @@ const VField = genericComponent()({
10253
10262
  "key": "append-icon",
10254
10263
  "name": "appendInner"
10255
10264
  }, null)]), createVNode("div", {
10256
- "class": ['v-field__outline', textColorClasses.value]
10265
+ "class": ['v-field__outline', textColorClasses.value],
10266
+ "style": textColorStyles.value
10257
10267
  }, [isOutlined && createVNode(Fragment, null, [createVNode("div", {
10258
10268
  "class": "v-field__outline__start"
10259
10269
  }, null), hasLabel.value && createVNode("div", {
@@ -10297,6 +10307,7 @@ const makeVTextFieldProps = propsFactory({
10297
10307
  persistentPlaceholder: Boolean,
10298
10308
  persistentCounter: Boolean,
10299
10309
  suffix: String,
10310
+ role: String,
10300
10311
  type: {
10301
10312
  type: String,
10302
10313
  default: 'text'
@@ -10421,7 +10432,7 @@ const VTextField = genericComponent()({
10421
10432
  "onClick:clear": onClear,
10422
10433
  "onClick:prependInner": props['onClick:prependInner'],
10423
10434
  "onClick:appendInner": props['onClick:appendInner'],
10424
- "role": "textbox"
10435
+ "role": props.role
10425
10436
  }, fieldProps, {
10426
10437
  "id": id.value,
10427
10438
  "active": isActive.value || isDirty.value,
@@ -10460,10 +10471,12 @@ const VTextField = genericComponent()({
10460
10471
  "class": "v-text-field__prefix"
10461
10472
  }, [createVNode("span", {
10462
10473
  "class": "v-text-field__prefix__text"
10463
- }, [props.prefix])]), createVNode("div", {
10474
+ }, [props.prefix])]), slots.default ? createVNode("div", {
10464
10475
  "class": fieldClass,
10465
10476
  "data-no-activator": ""
10466
- }, [slots.default ? createVNode(Fragment, null, [slots.default(), inputNode]) : cloneVNode(inputNode)]), props.suffix && createVNode("span", {
10477
+ }, [slots.default(), inputNode]) : cloneVNode(inputNode, {
10478
+ class: fieldClass
10479
+ }), props.suffix && createVNode("span", {
10467
10480
  "class": "v-text-field__suffix"
10468
10481
  }, [createVNode("span", {
10469
10482
  "class": "v-text-field__suffix__text"
@@ -10782,6 +10795,14 @@ function useScrolling(listRef, textFieldRef) {
10782
10795
  const makeSelectProps = propsFactory({
10783
10796
  chips: Boolean,
10784
10797
  closableChips: Boolean,
10798
+ closeText: {
10799
+ type: String,
10800
+ default: '$vuetify.close'
10801
+ },
10802
+ openText: {
10803
+ type: String,
10804
+ default: '$vuetify.open'
10805
+ },
10785
10806
  eager: Boolean,
10786
10807
  hideNoData: Boolean,
10787
10808
  hideSelected: Boolean,
@@ -10811,7 +10832,8 @@ const makeSelectProps = propsFactory({
10811
10832
  const makeVSelectProps = propsFactory({
10812
10833
  ...makeSelectProps(),
10813
10834
  ...omit(makeVTextFieldProps({
10814
- modelValue: null
10835
+ modelValue: null,
10836
+ role: 'button'
10815
10837
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
10816
10838
  ...makeTransitionProps({
10817
10839
  transition: {
@@ -10866,6 +10888,7 @@ const VSelect = genericComponent()({
10866
10888
  });
10867
10889
  const selected = computed(() => selections.value.map(selection => selection.props.value));
10868
10890
  const isFocused = shallowRef(false);
10891
+ const label = computed(() => menu.value ? props.closeText : props.openText);
10869
10892
  let keyboardLookupPrefix = '';
10870
10893
  let keyboardLookupLastTime;
10871
10894
  const displayItems = computed(() => {
@@ -10992,7 +11015,9 @@ const VSelect = genericComponent()({
10992
11015
  "onClick:clear": onClear,
10993
11016
  "onMousedown:control": onMousedownControl,
10994
11017
  "onBlur": onBlur,
10995
- "onKeydown": onKeydown
11018
+ "onKeydown": onKeydown,
11019
+ "aria-label": t(label.value),
11020
+ "title": t(label.value)
10996
11021
  }), {
10997
11022
  ...slots,
10998
11023
  default: () => createVNode(Fragment, null, [createVNode(VMenu, mergeProps({
@@ -11255,7 +11280,8 @@ const makeVAutocompleteProps = propsFactory({
11255
11280
  }),
11256
11281
  ...makeSelectProps(),
11257
11282
  ...omit(makeVTextFieldProps({
11258
- modelValue: null
11283
+ modelValue: null,
11284
+ role: 'combobox'
11259
11285
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
11260
11286
  ...makeTransitionProps({
11261
11287
  transition: false
@@ -11292,6 +11318,7 @@ const VAutocomplete = genericComponent()({
11292
11318
  });
11293
11319
  const selectionIndex = shallowRef(-1);
11294
11320
  const color = computed(() => vTextFieldRef.value?.color);
11321
+ const label = computed(() => menu.value ? props.closeText : props.openText);
11295
11322
  const {
11296
11323
  items,
11297
11324
  transformIn,
@@ -11639,7 +11666,9 @@ const VAutocomplete = genericComponent()({
11639
11666
  "class": "v-autocomplete__menu-icon",
11640
11667
  "icon": props.menuIcon,
11641
11668
  "onMousedown": onMousedownMenuIcon,
11642
- "onClick": noop
11669
+ "onClick": noop,
11670
+ "aria-label": t(label.value),
11671
+ "title": t(label.value)
11643
11672
  }, null) : undefined]);
11644
11673
  }
11645
11674
  });
@@ -14783,7 +14812,8 @@ const makeVComboboxProps = propsFactory({
14783
14812
  returnObject: true
14784
14813
  }),
14785
14814
  ...omit(makeVTextFieldProps({
14786
- modelValue: null
14815
+ modelValue: null,
14816
+ role: 'combobox'
14787
14817
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
14788
14818
  ...makeTransitionProps({
14789
14819
  transition: false
@@ -14822,6 +14852,7 @@ const VCombobox = genericComponent()({
14822
14852
  const selectionIndex = shallowRef(-1);
14823
14853
  let cleared = false;
14824
14854
  const color = computed(() => vTextFieldRef.value?.color);
14855
+ const label = computed(() => menu.value ? props.closeText : props.openText);
14825
14856
  const {
14826
14857
  items,
14827
14858
  transformIn,
@@ -15197,7 +15228,9 @@ const VCombobox = genericComponent()({
15197
15228
  "class": "v-combobox__menu-icon",
15198
15229
  "icon": props.menuIcon,
15199
15230
  "onMousedown": onMousedownMenuIcon,
15200
- "onClick": noop
15231
+ "onClick": noop,
15232
+ "aria-label": t(label.value),
15233
+ "title": t(label.value)
15201
15234
  }, null) : undefined]);
15202
15235
  }
15203
15236
  });
@@ -18540,25 +18573,32 @@ const VSwitch = genericComponent()({
18540
18573
  }, null),
18541
18574
  input: _ref3 => {
18542
18575
  let {
18543
- textColorClasses,
18544
- textColorStyles
18576
+ inputNode,
18577
+ icon
18545
18578
  } = _ref3;
18546
- return createVNode("div", {
18547
- "class": ['v-switch__thumb', textColorClasses.value],
18548
- "style": textColorStyles.value
18549
- }, [props.loading && createVNode(LoaderSlot, {
18550
- "name": "v-switch",
18551
- "active": true,
18552
- "color": isValid.value === false ? undefined : loaderColor.value
18553
- }, {
18554
- default: slotProps => slots.loader ? slots.loader(slotProps) : createVNode(VProgressCircular, {
18555
- "active": slotProps.isActive,
18556
- "color": slotProps.color,
18557
- "indeterminate": true,
18558
- "size": "16",
18559
- "width": "2"
18560
- }, null)
18561
- })]);
18579
+ return createVNode(Fragment, null, [inputNode, createVNode("div", {
18580
+ "class": ['v-switch__thumb', {
18581
+ 'v-switch__thumb--filled': icon || props.loading
18582
+ }]
18583
+ }, [createVNode(VScaleTransition, null, {
18584
+ default: () => [!props.loading ? icon && createVNode(VIcon, {
18585
+ "key": icon,
18586
+ "icon": icon,
18587
+ "size": "x-small"
18588
+ }, null) : createVNode(LoaderSlot, {
18589
+ "name": "v-switch",
18590
+ "active": true,
18591
+ "color": isValid.value === false ? undefined : loaderColor.value
18592
+ }, {
18593
+ default: slotProps => slots.loader ? slots.loader(slotProps) : createVNode(VProgressCircular, {
18594
+ "active": slotProps.isActive,
18595
+ "color": slotProps.color,
18596
+ "indeterminate": true,
18597
+ "size": "16",
18598
+ "width": "2"
18599
+ }, null)
18600
+ })]
18601
+ })])]);
18562
18602
  }
18563
18603
  });
18564
18604
  }
@@ -19039,8 +19079,7 @@ const VTextarea = genericComponent()({
19039
19079
  "onMousedown": onControlMousedown,
19040
19080
  "onClick:clear": onClear,
19041
19081
  "onClick:prependInner": props['onClick:prependInner'],
19042
- "onClick:appendInner": props['onClick:appendInner'],
19043
- "role": "textbox"
19082
+ "onClick:appendInner": props['onClick:appendInner']
19044
19083
  }, fieldProps, {
19045
19084
  "active": isActive.value || isDirty.value,
19046
19085
  "centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
@@ -24392,7 +24431,7 @@ function createVuetify$1() {
24392
24431
  date
24393
24432
  };
24394
24433
  }
24395
- const version$1 = "3.3.12";
24434
+ const version$1 = "3.3.13";
24396
24435
  createVuetify$1.version = version$1;
24397
24436
 
24398
24437
  // Vue's inject() can only be used in setup
@@ -24406,7 +24445,7 @@ function inject(key) {
24406
24445
 
24407
24446
  /* eslint-disable local-rules/sort-imports */
24408
24447
 
24409
- const version = "3.3.12";
24448
+ const version = "3.3.13";
24410
24449
 
24411
24450
  /* eslint-disable local-rules/sort-imports */
24412
24451