@vuetify/nightly 3.6.5-master.2024-05-13 → 3.6.6-master.2024-05-15

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 (48) hide show
  1. package/CHANGELOG.md +3 -8
  2. package/dist/json/importMap-labs.json +4 -4
  3. package/dist/json/importMap.json +120 -120
  4. package/dist/json/web-types.json +5 -5
  5. package/dist/vuetify-labs.css +2132 -2087
  6. package/dist/vuetify-labs.d.ts +60 -36
  7. package/dist/vuetify-labs.esm.js +27 -19
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +27 -19
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +2725 -2680
  12. package/dist/vuetify.d.ts +98 -74
  13. package/dist/vuetify.esm.js +15 -9
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +15 -9
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +18 -17
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VBanner/VBanner.mjs +3 -1
  21. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  22. package/lib/components/VBanner/index.d.mts +15 -9
  23. package/lib/components/VChipGroup/index.d.mts +15 -9
  24. package/lib/components/VDivider/VDivider.css +1 -0
  25. package/lib/components/VDivider/VDivider.sass +1 -0
  26. package/lib/components/VMenu/VMenu.mjs +2 -1
  27. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  28. package/lib/components/VSelect/VSelect.mjs +1 -1
  29. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  30. package/lib/components/VSlideGroup/VSlideGroup.mjs +3 -1
  31. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  32. package/lib/components/VSlideGroup/index.d.mts +15 -9
  33. package/lib/components/VSwitch/VSwitch.css +44 -0
  34. package/lib/components/VSwitch/VSwitch.mjs +4 -3
  35. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  36. package/lib/components/VSwitch/VSwitch.sass +55 -0
  37. package/lib/components/VTabs/index.d.mts +15 -9
  38. package/lib/components/index.d.mts +60 -36
  39. package/lib/entry-bundler.mjs +1 -1
  40. package/lib/framework.mjs +1 -1
  41. package/lib/index.d.mts +38 -38
  42. package/lib/labs/VTreeview/VTreeviewChildren.mjs +12 -10
  43. package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
  44. package/lib/locale/de.mjs +4 -4
  45. package/lib/locale/de.mjs.map +1 -1
  46. package/lib/locale/hu.mjs +18 -18
  47. package/lib/locale/hu.mjs.map +1 -1
  48. package/package.json +1 -1
@@ -9414,7 +9414,7 @@ declare const VBanner: {
9414
9414
  new (...args: any[]): vue.CreateComponentPublicInstance<{
9415
9415
  style: vue.StyleValue;
9416
9416
  tag: string;
9417
- mobile: boolean | null;
9417
+ mobile: NonNullable<boolean | null> | null;
9418
9418
  sticky: boolean;
9419
9419
  tile: boolean;
9420
9420
  density: Density;
@@ -9461,7 +9461,7 @@ declare const VBanner: {
9461
9461
  }, void, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
9462
9462
  style: vue.StyleValue;
9463
9463
  tag: string;
9464
- mobile: boolean | null;
9464
+ mobile: NonNullable<boolean | null> | null;
9465
9465
  sticky: boolean;
9466
9466
  tile: boolean;
9467
9467
  density: Density;
@@ -9508,7 +9508,7 @@ declare const VBanner: {
9508
9508
  }, {
9509
9509
  style: vue.StyleValue;
9510
9510
  tag: string;
9511
- mobile: boolean | null;
9511
+ mobile: NonNullable<boolean | null> | null;
9512
9512
  sticky: boolean;
9513
9513
  rounded: string | number | boolean;
9514
9514
  tile: boolean;
@@ -9537,7 +9537,7 @@ declare const VBanner: {
9537
9537
  }, {
9538
9538
  style: vue.StyleValue;
9539
9539
  tag: string;
9540
- mobile: boolean | null;
9540
+ mobile: NonNullable<boolean | null> | null;
9541
9541
  sticky: boolean;
9542
9542
  tile: boolean;
9543
9543
  density: Density;
@@ -9584,7 +9584,7 @@ declare const VBanner: {
9584
9584
  }, {}, {}, {}, {}, {
9585
9585
  style: vue.StyleValue;
9586
9586
  tag: string;
9587
- mobile: boolean | null;
9587
+ mobile: NonNullable<boolean | null> | null;
9588
9588
  sticky: boolean;
9589
9589
  rounded: string | number | boolean;
9590
9590
  tile: boolean;
@@ -9597,7 +9597,7 @@ declare const VBanner: {
9597
9597
  } & vue.ComponentOptionsBase<{
9598
9598
  style: vue.StyleValue;
9599
9599
  tag: string;
9600
- mobile: boolean | null;
9600
+ mobile: NonNullable<boolean | null> | null;
9601
9601
  sticky: boolean;
9602
9602
  tile: boolean;
9603
9603
  density: Density;
@@ -9644,7 +9644,7 @@ declare const VBanner: {
9644
9644
  }, void, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
9645
9645
  style: vue.StyleValue;
9646
9646
  tag: string;
9647
- mobile: boolean | null;
9647
+ mobile: NonNullable<boolean | null> | null;
9648
9648
  sticky: boolean;
9649
9649
  rounded: string | number | boolean;
9650
9650
  tile: boolean;
@@ -9683,9 +9683,12 @@ declare const VBanner: {
9683
9683
  type: (StringConstructor | NumberConstructor)[];
9684
9684
  validator(v: any): boolean;
9685
9685
  };
9686
- mobile: {
9686
+ mobile: Omit<{
9687
9687
  type: PropType<boolean | null>;
9688
9688
  default: boolean;
9689
+ }, "default" | "type"> & {
9690
+ type: PropType<NonNullable<boolean | null> | null>;
9691
+ default: NonNullable<boolean | null> | null;
9689
9692
  };
9690
9693
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
9691
9694
  height: (StringConstructor | NumberConstructor)[];
@@ -9733,9 +9736,12 @@ declare const VBanner: {
9733
9736
  type: (StringConstructor | NumberConstructor)[];
9734
9737
  validator(v: any): boolean;
9735
9738
  };
9736
- mobile: {
9739
+ mobile: Omit<{
9737
9740
  type: PropType<boolean | null>;
9738
9741
  default: boolean;
9742
+ }, "default" | "type"> & {
9743
+ type: PropType<NonNullable<boolean | null> | null>;
9744
+ default: NonNullable<boolean | null> | null;
9739
9745
  };
9740
9746
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
9741
9747
  height: (StringConstructor | NumberConstructor)[];
@@ -17655,7 +17661,7 @@ declare const VChipGroup: {
17655
17661
  style: vue.StyleValue;
17656
17662
  disabled: boolean;
17657
17663
  tag: string;
17658
- mobile: boolean | null;
17664
+ mobile: NonNullable<boolean | null> | null;
17659
17665
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17660
17666
  column: boolean;
17661
17667
  multiple: boolean;
@@ -17681,7 +17687,7 @@ declare const VChipGroup: {
17681
17687
  style: vue.StyleValue;
17682
17688
  disabled: boolean;
17683
17689
  tag: string;
17684
- mobile: boolean | null;
17690
+ mobile: NonNullable<boolean | null> | null;
17685
17691
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17686
17692
  column: boolean;
17687
17693
  multiple: boolean;
@@ -17705,7 +17711,7 @@ declare const VChipGroup: {
17705
17711
  style: vue.StyleValue;
17706
17712
  disabled: boolean;
17707
17713
  tag: string;
17708
- mobile: boolean | null;
17714
+ mobile: NonNullable<boolean | null> | null;
17709
17715
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17710
17716
  column: boolean;
17711
17717
  multiple: boolean;
@@ -17738,7 +17744,7 @@ declare const VChipGroup: {
17738
17744
  style: vue.StyleValue;
17739
17745
  disabled: boolean;
17740
17746
  tag: string;
17741
- mobile: boolean | null;
17747
+ mobile: NonNullable<boolean | null> | null;
17742
17748
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17743
17749
  column: boolean;
17744
17750
  multiple: boolean;
@@ -17762,7 +17768,7 @@ declare const VChipGroup: {
17762
17768
  style: vue.StyleValue;
17763
17769
  disabled: boolean;
17764
17770
  tag: string;
17765
- mobile: boolean | null;
17771
+ mobile: NonNullable<boolean | null> | null;
17766
17772
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17767
17773
  column: boolean;
17768
17774
  multiple: boolean;
@@ -17782,7 +17788,7 @@ declare const VChipGroup: {
17782
17788
  style: vue.StyleValue;
17783
17789
  disabled: boolean;
17784
17790
  tag: string;
17785
- mobile: boolean | null;
17791
+ mobile: NonNullable<boolean | null> | null;
17786
17792
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17787
17793
  column: boolean;
17788
17794
  multiple: boolean;
@@ -17808,7 +17814,7 @@ declare const VChipGroup: {
17808
17814
  style: vue.StyleValue;
17809
17815
  disabled: boolean;
17810
17816
  tag: string;
17811
- mobile: boolean | null;
17817
+ mobile: NonNullable<boolean | null> | null;
17812
17818
  variant: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
17813
17819
  column: boolean;
17814
17820
  multiple: boolean;
@@ -17866,9 +17872,12 @@ declare const VChipGroup: {
17866
17872
  type: PropType<vue.StyleValue>;
17867
17873
  default: null;
17868
17874
  };
17869
- mobile: {
17875
+ mobile: Omit<{
17870
17876
  type: PropType<boolean | null>;
17871
17877
  default: boolean;
17878
+ }, "default" | "type"> & {
17879
+ type: PropType<NonNullable<boolean | null> | null>;
17880
+ default: NonNullable<boolean | null> | null;
17872
17881
  };
17873
17882
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
17874
17883
  centerActive: BooleanConstructor;
@@ -17930,9 +17939,12 @@ declare const VChipGroup: {
17930
17939
  type: PropType<vue.StyleValue>;
17931
17940
  default: null;
17932
17941
  };
17933
- mobile: {
17942
+ mobile: Omit<{
17934
17943
  type: PropType<boolean | null>;
17935
17944
  default: boolean;
17945
+ }, "default" | "type"> & {
17946
+ type: PropType<NonNullable<boolean | null> | null>;
17947
+ default: NonNullable<boolean | null> | null;
17936
17948
  };
17937
17949
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
17938
17950
  centerActive: BooleanConstructor;
@@ -53860,7 +53872,7 @@ declare const VSlideGroup: {
53860
53872
  style: vue.StyleValue;
53861
53873
  disabled: boolean;
53862
53874
  tag: string;
53863
- mobile: boolean | null;
53875
+ mobile: NonNullable<boolean | null> | null;
53864
53876
  multiple: boolean;
53865
53877
  direction: "horizontal" | "vertical";
53866
53878
  selectedClass: string;
@@ -53885,7 +53897,7 @@ declare const VSlideGroup: {
53885
53897
  style: vue.StyleValue;
53886
53898
  disabled: boolean;
53887
53899
  tag: string;
53888
- mobile: boolean | null;
53900
+ mobile: NonNullable<boolean | null> | null;
53889
53901
  multiple: boolean;
53890
53902
  direction: "horizontal" | "vertical";
53891
53903
  selectedClass: string;
@@ -53903,7 +53915,7 @@ declare const VSlideGroup: {
53903
53915
  style: vue.StyleValue;
53904
53916
  disabled: boolean;
53905
53917
  tag: string;
53906
- mobile: boolean | null;
53918
+ mobile: NonNullable<boolean | null> | null;
53907
53919
  multiple: boolean;
53908
53920
  direction: "horizontal" | "vertical";
53909
53921
  selectedClass: string;
@@ -53932,7 +53944,7 @@ declare const VSlideGroup: {
53932
53944
  style: vue.StyleValue;
53933
53945
  disabled: boolean;
53934
53946
  tag: string;
53935
- mobile: boolean | null;
53947
+ mobile: NonNullable<boolean | null> | null;
53936
53948
  multiple: boolean;
53937
53949
  direction: "horizontal" | "vertical";
53938
53950
  selectedClass: string;
@@ -53955,7 +53967,7 @@ declare const VSlideGroup: {
53955
53967
  style: vue.StyleValue;
53956
53968
  disabled: boolean;
53957
53969
  tag: string;
53958
- mobile: boolean | null;
53970
+ mobile: NonNullable<boolean | null> | null;
53959
53971
  multiple: boolean;
53960
53972
  direction: "horizontal" | "vertical";
53961
53973
  selectedClass: string;
@@ -53971,7 +53983,7 @@ declare const VSlideGroup: {
53971
53983
  style: vue.StyleValue;
53972
53984
  disabled: boolean;
53973
53985
  tag: string;
53974
- mobile: boolean | null;
53986
+ mobile: NonNullable<boolean | null> | null;
53975
53987
  multiple: boolean;
53976
53988
  direction: "horizontal" | "vertical";
53977
53989
  selectedClass: string;
@@ -53996,7 +54008,7 @@ declare const VSlideGroup: {
53996
54008
  style: vue.StyleValue;
53997
54009
  disabled: boolean;
53998
54010
  tag: string;
53999
- mobile: boolean | null;
54011
+ mobile: NonNullable<boolean | null> | null;
54000
54012
  multiple: boolean;
54001
54013
  direction: "horizontal" | "vertical";
54002
54014
  selectedClass: string;
@@ -54036,9 +54048,12 @@ declare const VSlideGroup: {
54036
54048
  type: StringConstructor;
54037
54049
  default: string;
54038
54050
  };
54039
- mobile: {
54051
+ mobile: Omit<{
54040
54052
  type: PropType<boolean | null>;
54041
54053
  default: boolean;
54054
+ }, "default" | "type"> & {
54055
+ type: PropType<NonNullable<boolean | null> | null>;
54056
+ default: NonNullable<boolean | null> | null;
54042
54057
  };
54043
54058
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
54044
54059
  class: PropType<any>;
@@ -54084,9 +54099,12 @@ declare const VSlideGroup: {
54084
54099
  type: StringConstructor;
54085
54100
  default: string;
54086
54101
  };
54087
- mobile: {
54102
+ mobile: Omit<{
54088
54103
  type: PropType<boolean | null>;
54089
54104
  default: boolean;
54105
+ }, "default" | "type"> & {
54106
+ type: PropType<NonNullable<boolean | null> | null>;
54107
+ default: NonNullable<boolean | null> | null;
54090
54108
  };
54091
54109
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
54092
54110
  class: PropType<any>;
@@ -62521,7 +62539,7 @@ declare const VTabs: {
62521
62539
  style: vue.StyleValue;
62522
62540
  disabled: boolean;
62523
62541
  tag: string;
62524
- mobile: boolean | null;
62542
+ mobile: NonNullable<boolean | null> | null;
62525
62543
  items: readonly TabItem[];
62526
62544
  mandatory: NonNullable<boolean | "force">;
62527
62545
  multiple: boolean;
@@ -62579,7 +62597,7 @@ declare const VTabs: {
62579
62597
  style: vue.StyleValue;
62580
62598
  disabled: boolean;
62581
62599
  tag: string;
62582
- mobile: boolean | null;
62600
+ mobile: NonNullable<boolean | null> | null;
62583
62601
  items: readonly TabItem[];
62584
62602
  mandatory: NonNullable<boolean | "force">;
62585
62603
  multiple: boolean;
@@ -62636,7 +62654,7 @@ declare const VTabs: {
62636
62654
  height: string | number;
62637
62655
  disabled: boolean;
62638
62656
  tag: string;
62639
- mobile: boolean | null;
62657
+ mobile: NonNullable<boolean | null> | null;
62640
62658
  modelValue: any;
62641
62659
  items: readonly TabItem[];
62642
62660
  mandatory: NonNullable<boolean | "force">;
@@ -62683,7 +62701,7 @@ declare const VTabs: {
62683
62701
  style: vue.StyleValue;
62684
62702
  disabled: boolean;
62685
62703
  tag: string;
62686
- mobile: boolean | null;
62704
+ mobile: NonNullable<boolean | null> | null;
62687
62705
  items: readonly TabItem[];
62688
62706
  mandatory: NonNullable<boolean | "force">;
62689
62707
  multiple: boolean;
@@ -62740,7 +62758,7 @@ declare const VTabs: {
62740
62758
  height: string | number;
62741
62759
  disabled: boolean;
62742
62760
  tag: string;
62743
- mobile: boolean | null;
62761
+ mobile: NonNullable<boolean | null> | null;
62744
62762
  modelValue: any;
62745
62763
  items: readonly TabItem[];
62746
62764
  mandatory: NonNullable<boolean | "force">;
@@ -62765,7 +62783,7 @@ declare const VTabs: {
62765
62783
  style: vue.StyleValue;
62766
62784
  disabled: boolean;
62767
62785
  tag: string;
62768
- mobile: boolean | null;
62786
+ mobile: NonNullable<boolean | null> | null;
62769
62787
  items: readonly TabItem[];
62770
62788
  mandatory: NonNullable<boolean | "force">;
62771
62789
  multiple: boolean;
@@ -62824,7 +62842,7 @@ declare const VTabs: {
62824
62842
  height: string | number;
62825
62843
  disabled: boolean;
62826
62844
  tag: string;
62827
- mobile: boolean | null;
62845
+ mobile: NonNullable<boolean | null> | null;
62828
62846
  modelValue: any;
62829
62847
  items: readonly TabItem[];
62830
62848
  mandatory: NonNullable<boolean | "force">;
@@ -62887,9 +62905,12 @@ declare const VTabs: {
62887
62905
  default: string;
62888
62906
  };
62889
62907
  disabled: BooleanConstructor;
62890
- mobile: {
62908
+ mobile: Omit<{
62891
62909
  type: PropType<boolean | null>;
62892
62910
  default: boolean;
62911
+ }, "default" | "type"> & {
62912
+ type: PropType<NonNullable<boolean | null> | null>;
62913
+ default: NonNullable<boolean | null> | null;
62893
62914
  };
62894
62915
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
62895
62916
  class: PropType<any>;
@@ -62965,9 +62986,12 @@ declare const VTabs: {
62965
62986
  default: string;
62966
62987
  };
62967
62988
  disabled: BooleanConstructor;
62968
- mobile: {
62989
+ mobile: Omit<{
62969
62990
  type: PropType<boolean | null>;
62970
62991
  default: boolean;
62992
+ }, "default" | "type"> & {
62993
+ type: PropType<NonNullable<boolean | null> | null>;
62994
+ default: NonNullable<boolean | null> | null;
62971
62995
  };
62972
62996
  mobileBreakpoint: PropType<number | DisplayBreakpoint>;
62973
62997
  class: PropType<any>;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.6.5-master.2024-05-13
2
+ * Vuetify v3.6.6-master.2024-05-15
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -7368,7 +7368,9 @@ const makeVSlideGroupProps = propsFactory({
7368
7368
  validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile'].includes(v)
7369
7369
  },
7370
7370
  ...makeComponentProps(),
7371
- ...makeDisplayProps(),
7371
+ ...makeDisplayProps({
7372
+ mobile: null
7373
+ }),
7372
7374
  ...makeTagProps(),
7373
7375
  ...makeGroupProps({
7374
7376
  selectedClass: 'v-slide-group-item--active'
@@ -11099,7 +11101,7 @@ const VMenu = genericComponent()({
11099
11101
  },
11100
11102
  closeParents(e) {
11101
11103
  setTimeout(() => {
11102
- if (!openChildren.value && (e == null || e && !isClickInsideElement(e, overlay.value.contentEl))) {
11104
+ if (!openChildren.value && !props.persistent && (e == null || e && !isClickInsideElement(e, overlay.value.contentEl))) {
11103
11105
  isActive.value = false;
11104
11106
  parent?.closeParents();
11105
11107
  }
@@ -11138,6 +11140,7 @@ const VMenu = genericComponent()({
11138
11140
  function onKeydown(e) {
11139
11141
  if (props.disabled) return;
11140
11142
  if (e.key === 'Tab' || e.key === 'Enter' && !props.closeOnContentClick) {
11143
+ if (e.key === 'Enter' && e.target instanceof HTMLTextAreaElement) return;
11141
11144
  if (e.key === 'Enter') e.preventDefault();
11142
11145
  const nextElement = getNextElement(focusableChildren(overlay.value?.contentEl, false), e.shiftKey ? 'prev' : 'next', el => el.tabIndex >= 0);
11143
11146
  if (!nextElement) {
@@ -12319,7 +12322,7 @@ const VSelect = genericComponent()({
12319
12322
  let keyboardLookupLastTime;
12320
12323
  const displayItems = computed(() => {
12321
12324
  if (props.hideSelected) {
12322
- return items.value.filter(item => !model.value.some(s => s === item));
12325
+ return items.value.filter(item => !model.value.some(s => props.valueComparator(s, item)));
12323
12326
  }
12324
12327
  return items.value;
12325
12328
  });
@@ -13345,7 +13348,9 @@ const makeVBannerProps = propsFactory({
13345
13348
  ...makeComponentProps(),
13346
13349
  ...makeDensityProps(),
13347
13350
  ...makeDimensionProps(),
13348
- ...makeDisplayProps(),
13351
+ ...makeDisplayProps({
13352
+ mobile: null
13353
+ }),
13349
13354
  ...makeElevationProps(),
13350
13355
  ...makeLocationProps(),
13351
13356
  ...makePositionProps(),
@@ -26172,6 +26177,7 @@ const VSwitch = genericComponent()({
26172
26177
  blur
26173
26178
  } = useFocus(props);
26174
26179
  const control = ref();
26180
+ const isForcedColorsModeActive = IN_BROWSER && window.matchMedia('(forced-colors: active)').matches;
26175
26181
  const loaderColor = computed(() => {
26176
26182
  return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
26177
26183
  });
@@ -26240,7 +26246,7 @@ const VSwitch = genericComponent()({
26240
26246
  backgroundColorStyles
26241
26247
  } = _ref3;
26242
26248
  return createVNode("div", {
26243
- "class": ['v-switch__track', ...backgroundColorClasses.value],
26249
+ "class": ['v-switch__track', !isForcedColorsModeActive ? backgroundColorClasses.value : undefined],
26244
26250
  "style": backgroundColorStyles.value,
26245
26251
  "onClick": onTrackClick
26246
26252
  }, [slots['track-true'] && createVNode("div", {
@@ -26261,7 +26267,7 @@ const VSwitch = genericComponent()({
26261
26267
  return createVNode(Fragment, null, [inputNode, createVNode("div", {
26262
26268
  "class": ['v-switch__thumb', {
26263
26269
  'v-switch__thumb--filled': icon || props.loading
26264
- }, props.inset ? undefined : backgroundColorClasses.value],
26270
+ }, props.inset || isForcedColorsModeActive ? undefined : backgroundColorClasses.value],
26265
26271
  "style": props.inset ? undefined : backgroundColorStyles.value
26266
26272
  }, [slots.thumb ? createVNode(VDefaultsProvider, {
26267
26273
  "defaults": {
@@ -29369,17 +29375,18 @@ const VTreeviewChildren = genericComponent()({
29369
29375
  emit,
29370
29376
  slots
29371
29377
  } = _ref;
29372
- const isLoading = shallowRef(false);
29373
- const hasLoaded = shallowRef(false);
29378
+ const isLoading = shallowRef(null);
29374
29379
  function checkChildren(item) {
29375
29380
  return new Promise(resolve => {
29376
- if (!props.items?.length || !props.loadChildren || hasLoaded.value) return resolve();
29377
- isLoading.value = true;
29378
- props.loadChildren(item).then(resolve);
29379
- }).then(() => {
29380
- hasLoaded.value = true;
29381
+ if (!props.items?.length || !props.loadChildren) return resolve();
29382
+ if (item?.children?.length === 0) {
29383
+ isLoading.value = item.value;
29384
+ props.loadChildren(item).then(resolve);
29385
+ return;
29386
+ }
29387
+ resolve();
29381
29388
  }).finally(() => {
29382
- isLoading.value = false;
29389
+ isLoading.value = null;
29383
29390
  });
29384
29391
  }
29385
29392
  function onClick(e, item) {
@@ -29392,6 +29399,7 @@ const VTreeviewChildren = genericComponent()({
29392
29399
  props: itemProps,
29393
29400
  raw: item
29394
29401
  } = _ref2;
29402
+ const loading = isLoading.value === item.value;
29395
29403
  const slotsWithItem = {
29396
29404
  prepend: slots.prepend ? slotProps => slots.prepend?.({
29397
29405
  ...slotProps,
@@ -29405,7 +29413,7 @@ const VTreeviewChildren = genericComponent()({
29405
29413
  "key": item.value,
29406
29414
  "tabindex": "-1",
29407
29415
  "modelValue": isSelected,
29408
- "loading": isLoading.value,
29416
+ "loading": loading,
29409
29417
  "indeterminate": isIndeterminate,
29410
29418
  "onClick": e => onClick(e, item)
29411
29419
  }, null);
@@ -29429,7 +29437,7 @@ const VTreeviewChildren = genericComponent()({
29429
29437
  props: activatorProps
29430
29438
  } = _ref4;
29431
29439
  return createVNode(VTreeviewItem, mergeProps(itemProps, activatorProps, {
29432
- "loading": isLoading.value,
29440
+ "loading": loading,
29433
29441
  "onClick": e => onClick(e, item)
29434
29442
  }), slotsWithItem);
29435
29443
  },
@@ -30082,7 +30090,7 @@ function createVuetify$1() {
30082
30090
  goTo
30083
30091
  };
30084
30092
  }
30085
- const version$1 = "3.6.5-master.2024-05-13";
30093
+ const version$1 = "3.6.6-master.2024-05-15";
30086
30094
  createVuetify$1.version = version$1;
30087
30095
 
30088
30096
  // Vue's inject() can only be used in setup
@@ -30335,7 +30343,7 @@ var index = /*#__PURE__*/Object.freeze({
30335
30343
 
30336
30344
  /* eslint-disable local-rules/sort-imports */
30337
30345
 
30338
- const version = "3.6.5-master.2024-05-13";
30346
+ const version = "3.6.6-master.2024-05-15";
30339
30347
 
30340
30348
  /* eslint-disable local-rules/sort-imports */
30341
30349