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
package/dist/vuetify.js CHANGED
@@ -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
  */
@@ -1645,6 +1645,7 @@
1645
1645
 
1646
1646
  var en = {
1647
1647
  badge: 'Badge',
1648
+ open: 'Open',
1648
1649
  close: 'Close',
1649
1650
  dataIterator: {
1650
1651
  noResultsText: 'No matching records found',
@@ -5848,6 +5849,20 @@
5848
5849
  }
5849
5850
  }) : props.label;
5850
5851
  const [rootAttrs, inputAttrs] = filterInputAttrs(attrs);
5852
+ const inputNode = vue.createVNode("input", vue.mergeProps({
5853
+ "ref": input,
5854
+ "checked": model.value,
5855
+ "disabled": !!(props.readonly || props.disabled),
5856
+ "id": id.value,
5857
+ "onBlur": onBlur,
5858
+ "onFocus": onFocus,
5859
+ "onInput": onInput,
5860
+ "aria-disabled": !!(props.readonly || props.disabled),
5861
+ "type": props.type,
5862
+ "value": trueValue.value,
5863
+ "name": props.name,
5864
+ "aria-checked": props.type === 'checkbox' ? model.value : undefined
5865
+ }, inputAttrs), null);
5851
5866
  return vue.createVNode("div", vue.mergeProps({
5852
5867
  "class": ['v-selection-control', {
5853
5868
  'v-selection-control--dirty': model.value,
@@ -5864,32 +5879,21 @@
5864
5879
  "style": textColorStyles.value
5865
5880
  }, [slots.default?.(), vue.withDirectives(vue.createVNode("div", {
5866
5881
  "class": ['v-selection-control__input']
5867
- }, [icon.value && vue.createVNode(VIcon, {
5868
- "key": "icon",
5869
- "icon": icon.value
5870
- }, null), vue.createVNode("input", vue.mergeProps({
5871
- "ref": input,
5872
- "checked": model.value,
5873
- "disabled": !!(props.readonly || props.disabled),
5874
- "id": id.value,
5875
- "onBlur": onBlur,
5876
- "onFocus": onFocus,
5877
- "onInput": onInput,
5878
- "aria-disabled": !!(props.readonly || props.disabled),
5879
- "type": props.type,
5880
- "value": trueValue.value,
5881
- "name": props.name,
5882
- "aria-checked": props.type === 'checkbox' ? model.value : undefined
5883
- }, inputAttrs), null), slots.input?.({
5882
+ }, [slots.input?.({
5884
5883
  model,
5885
5884
  textColorClasses,
5886
5885
  textColorStyles,
5886
+ inputNode,
5887
+ icon: icon.value,
5887
5888
  props: {
5888
5889
  onFocus,
5889
5890
  onBlur,
5890
5891
  id: id.value
5891
5892
  }
5892
- })]), [[vue.resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && vue.createVNode(VLabel, {
5893
+ }) ?? vue.createVNode(vue.Fragment, null, [icon.value && vue.createVNode(VIcon, {
5894
+ "key": "icon",
5895
+ "icon": icon.value
5896
+ }, null), inputNode])]), [[vue.resolveDirective("ripple"), props.ripple && [!props.disabled && !props.readonly, null, ['center', 'circle']]]])]), label && vue.createVNode(VLabel, {
5893
5897
  "for": id.value,
5894
5898
  "clickable": true
5895
5899
  }, {
@@ -7658,7 +7662,6 @@
7658
7662
  "style": [colorStyles.value, dimensionStyles.value, props.style],
7659
7663
  "href": link.href.value,
7660
7664
  "tabindex": isClickable.value ? list ? -2 : 0 : undefined,
7661
- "title": props.title,
7662
7665
  "onClick": onClick,
7663
7666
  "onKeydown": isClickable.value && !isLink.value && onKeyDown
7664
7667
  }, {
@@ -7691,7 +7694,9 @@
7691
7694
  }
7692
7695
  }, {
7693
7696
  default: () => [slots.prepend?.(slotProps.value)]
7694
- })]), vue.createVNode("div", {
7697
+ }), vue.createVNode("div", {
7698
+ "class": "v-list-item__spacer"
7699
+ }, null)]), vue.createVNode("div", {
7695
7700
  "class": "v-list-item__content",
7696
7701
  "data-no-activator": ""
7697
7702
  }, [hasTitle && vue.createVNode(VListItemTitle, {
@@ -7735,7 +7740,9 @@
7735
7740
  }
7736
7741
  }, {
7737
7742
  default: () => [slots.append?.(slotProps.value)]
7738
- })])]
7743
+ }), vue.createVNode("div", {
7744
+ "class": "v-list-item__spacer"
7745
+ }, null)])]
7739
7746
  }), [[vue.resolveDirective("ripple"), isClickable.value && props.ripple]]);
7740
7747
  });
7741
7748
  return {};
@@ -9846,10 +9853,11 @@
9846
9853
  }, 40);
9847
9854
  }
9848
9855
  });
9849
- function onFocusIn(e) {
9856
+ async function onFocusIn(e) {
9850
9857
  const before = e.relatedTarget;
9851
9858
  const after = e.target;
9852
- if (before !== after && overlay.value?.contentEl &&
9859
+ await vue.nextTick();
9860
+ if (isActive.value && before !== after && overlay.value?.contentEl &&
9853
9861
  // We're the topmost menu
9854
9862
  overlay.value?.globalTop &&
9855
9863
  // It isn't the document or the menu body
@@ -10185,7 +10193,7 @@
10185
10193
  'v-field--no-label': !label,
10186
10194
  [`v-field--variant-${props.variant}`]: true
10187
10195
  }, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, rtlClasses.value, props.class],
10188
- "style": [backgroundColorStyles.value, textColorStyles.value, props.style],
10196
+ "style": [backgroundColorStyles.value, props.style],
10189
10197
  "onClick": onClick
10190
10198
  }, attrs), [vue.createVNode("div", {
10191
10199
  "class": "v-field__overlay"
@@ -10209,7 +10217,8 @@
10209
10217
  "ref": floatingLabelRef,
10210
10218
  "class": [textColorClasses.value],
10211
10219
  "floating": true,
10212
- "for": id.value
10220
+ "for": id.value,
10221
+ "style": textColorStyles.value
10213
10222
  }, {
10214
10223
  default: () => [label]
10215
10224
  }), vue.createVNode(VFieldLabel, {
@@ -10245,7 +10254,8 @@
10245
10254
  "key": "append-icon",
10246
10255
  "name": "appendInner"
10247
10256
  }, null)]), vue.createVNode("div", {
10248
- "class": ['v-field__outline', textColorClasses.value]
10257
+ "class": ['v-field__outline', textColorClasses.value],
10258
+ "style": textColorStyles.value
10249
10259
  }, [isOutlined && vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
10250
10260
  "class": "v-field__outline__start"
10251
10261
  }, null), hasLabel.value && vue.createVNode("div", {
@@ -10289,6 +10299,7 @@
10289
10299
  persistentPlaceholder: Boolean,
10290
10300
  persistentCounter: Boolean,
10291
10301
  suffix: String,
10302
+ role: String,
10292
10303
  type: {
10293
10304
  type: String,
10294
10305
  default: 'text'
@@ -10413,7 +10424,7 @@
10413
10424
  "onClick:clear": onClear,
10414
10425
  "onClick:prependInner": props['onClick:prependInner'],
10415
10426
  "onClick:appendInner": props['onClick:appendInner'],
10416
- "role": "textbox"
10427
+ "role": props.role
10417
10428
  }, fieldProps, {
10418
10429
  "id": id.value,
10419
10430
  "active": isActive.value || isDirty.value,
@@ -10452,10 +10463,12 @@
10452
10463
  "class": "v-text-field__prefix"
10453
10464
  }, [vue.createVNode("span", {
10454
10465
  "class": "v-text-field__prefix__text"
10455
- }, [props.prefix])]), vue.createVNode("div", {
10466
+ }, [props.prefix])]), slots.default ? vue.createVNode("div", {
10456
10467
  "class": fieldClass,
10457
10468
  "data-no-activator": ""
10458
- }, [slots.default ? vue.createVNode(vue.Fragment, null, [slots.default(), inputNode]) : vue.cloneVNode(inputNode)]), props.suffix && vue.createVNode("span", {
10469
+ }, [slots.default(), inputNode]) : vue.cloneVNode(inputNode, {
10470
+ class: fieldClass
10471
+ }), props.suffix && vue.createVNode("span", {
10459
10472
  "class": "v-text-field__suffix"
10460
10473
  }, [vue.createVNode("span", {
10461
10474
  "class": "v-text-field__suffix__text"
@@ -10774,6 +10787,14 @@
10774
10787
  const makeSelectProps = propsFactory({
10775
10788
  chips: Boolean,
10776
10789
  closableChips: Boolean,
10790
+ closeText: {
10791
+ type: String,
10792
+ default: '$vuetify.close'
10793
+ },
10794
+ openText: {
10795
+ type: String,
10796
+ default: '$vuetify.open'
10797
+ },
10777
10798
  eager: Boolean,
10778
10799
  hideNoData: Boolean,
10779
10800
  hideSelected: Boolean,
@@ -10803,7 +10824,8 @@
10803
10824
  const makeVSelectProps = propsFactory({
10804
10825
  ...makeSelectProps(),
10805
10826
  ...omit(makeVTextFieldProps({
10806
- modelValue: null
10827
+ modelValue: null,
10828
+ role: 'button'
10807
10829
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
10808
10830
  ...makeTransitionProps({
10809
10831
  transition: {
@@ -10858,6 +10880,7 @@
10858
10880
  });
10859
10881
  const selected = vue.computed(() => selections.value.map(selection => selection.props.value));
10860
10882
  const isFocused = vue.shallowRef(false);
10883
+ const label = vue.computed(() => menu.value ? props.closeText : props.openText);
10861
10884
  let keyboardLookupPrefix = '';
10862
10885
  let keyboardLookupLastTime;
10863
10886
  const displayItems = vue.computed(() => {
@@ -10984,7 +11007,9 @@
10984
11007
  "onClick:clear": onClear,
10985
11008
  "onMousedown:control": onMousedownControl,
10986
11009
  "onBlur": onBlur,
10987
- "onKeydown": onKeydown
11010
+ "onKeydown": onKeydown,
11011
+ "aria-label": t(label.value),
11012
+ "title": t(label.value)
10988
11013
  }), {
10989
11014
  ...slots,
10990
11015
  default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(VMenu, vue.mergeProps({
@@ -11247,7 +11272,8 @@
11247
11272
  }),
11248
11273
  ...makeSelectProps(),
11249
11274
  ...omit(makeVTextFieldProps({
11250
- modelValue: null
11275
+ modelValue: null,
11276
+ role: 'combobox'
11251
11277
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
11252
11278
  ...makeTransitionProps({
11253
11279
  transition: false
@@ -11284,6 +11310,7 @@
11284
11310
  });
11285
11311
  const selectionIndex = vue.shallowRef(-1);
11286
11312
  const color = vue.computed(() => vTextFieldRef.value?.color);
11313
+ const label = vue.computed(() => menu.value ? props.closeText : props.openText);
11287
11314
  const {
11288
11315
  items,
11289
11316
  transformIn,
@@ -11631,7 +11658,9 @@
11631
11658
  "class": "v-autocomplete__menu-icon",
11632
11659
  "icon": props.menuIcon,
11633
11660
  "onMousedown": onMousedownMenuIcon,
11634
- "onClick": noop
11661
+ "onClick": noop,
11662
+ "aria-label": t(label.value),
11663
+ "title": t(label.value)
11635
11664
  }, null) : undefined]);
11636
11665
  }
11637
11666
  });
@@ -14775,7 +14804,8 @@
14775
14804
  returnObject: true
14776
14805
  }),
14777
14806
  ...omit(makeVTextFieldProps({
14778
- modelValue: null
14807
+ modelValue: null,
14808
+ role: 'combobox'
14779
14809
  }), ['validationValue', 'dirty', 'appendInnerIcon']),
14780
14810
  ...makeTransitionProps({
14781
14811
  transition: false
@@ -14814,6 +14844,7 @@
14814
14844
  const selectionIndex = vue.shallowRef(-1);
14815
14845
  let cleared = false;
14816
14846
  const color = vue.computed(() => vTextFieldRef.value?.color);
14847
+ const label = vue.computed(() => menu.value ? props.closeText : props.openText);
14817
14848
  const {
14818
14849
  items,
14819
14850
  transformIn,
@@ -15189,7 +15220,9 @@
15189
15220
  "class": "v-combobox__menu-icon",
15190
15221
  "icon": props.menuIcon,
15191
15222
  "onMousedown": onMousedownMenuIcon,
15192
- "onClick": noop
15223
+ "onClick": noop,
15224
+ "aria-label": t(label.value),
15225
+ "title": t(label.value)
15193
15226
  }, null) : undefined]);
15194
15227
  }
15195
15228
  });
@@ -18532,25 +18565,32 @@
18532
18565
  }, null),
18533
18566
  input: _ref3 => {
18534
18567
  let {
18535
- textColorClasses,
18536
- textColorStyles
18568
+ inputNode,
18569
+ icon
18537
18570
  } = _ref3;
18538
- return vue.createVNode("div", {
18539
- "class": ['v-switch__thumb', textColorClasses.value],
18540
- "style": textColorStyles.value
18541
- }, [props.loading && vue.createVNode(LoaderSlot, {
18542
- "name": "v-switch",
18543
- "active": true,
18544
- "color": isValid.value === false ? undefined : loaderColor.value
18545
- }, {
18546
- default: slotProps => slots.loader ? slots.loader(slotProps) : vue.createVNode(VProgressCircular, {
18547
- "active": slotProps.isActive,
18548
- "color": slotProps.color,
18549
- "indeterminate": true,
18550
- "size": "16",
18551
- "width": "2"
18552
- }, null)
18553
- })]);
18571
+ return vue.createVNode(vue.Fragment, null, [inputNode, vue.createVNode("div", {
18572
+ "class": ['v-switch__thumb', {
18573
+ 'v-switch__thumb--filled': icon || props.loading
18574
+ }]
18575
+ }, [vue.createVNode(VScaleTransition, null, {
18576
+ default: () => [!props.loading ? icon && vue.createVNode(VIcon, {
18577
+ "key": icon,
18578
+ "icon": icon,
18579
+ "size": "x-small"
18580
+ }, null) : vue.createVNode(LoaderSlot, {
18581
+ "name": "v-switch",
18582
+ "active": true,
18583
+ "color": isValid.value === false ? undefined : loaderColor.value
18584
+ }, {
18585
+ default: slotProps => slots.loader ? slots.loader(slotProps) : vue.createVNode(VProgressCircular, {
18586
+ "active": slotProps.isActive,
18587
+ "color": slotProps.color,
18588
+ "indeterminate": true,
18589
+ "size": "16",
18590
+ "width": "2"
18591
+ }, null)
18592
+ })]
18593
+ })])]);
18554
18594
  }
18555
18595
  });
18556
18596
  }
@@ -19031,8 +19071,7 @@
19031
19071
  "onMousedown": onControlMousedown,
19032
19072
  "onClick:clear": onClear,
19033
19073
  "onClick:prependInner": props['onClick:prependInner'],
19034
- "onClick:appendInner": props['onClick:appendInner'],
19035
- "role": "textbox"
19074
+ "onClick:appendInner": props['onClick:appendInner']
19036
19075
  }, fieldProps, {
19037
19076
  "active": isActive.value || isDirty.value,
19038
19077
  "centerAffix": rows.value === 1 && !isPlainOrUnderlined.value,
@@ -20293,7 +20332,7 @@
20293
20332
  date
20294
20333
  };
20295
20334
  }
20296
- const version$1 = "3.3.12";
20335
+ const version$1 = "3.3.13";
20297
20336
  createVuetify$1.version = version$1;
20298
20337
 
20299
20338
  // Vue's inject() can only be used in setup
@@ -20318,7 +20357,7 @@
20318
20357
  ...options
20319
20358
  });
20320
20359
  };
20321
- const version = "3.3.12";
20360
+ const version = "3.3.13";
20322
20361
  createVuetify.version = version;
20323
20362
 
20324
20363
  exports.components = components;