vuetify 3.6.15 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/dist/json/attributes.json +182 -26
  2. package/dist/json/importMap-labs.json +30 -30
  3. package/dist/json/importMap.json +150 -150
  4. package/dist/json/tags.json +44 -5
  5. package/dist/json/web-types.json +445 -42
  6. package/dist/vuetify-labs.css +2359 -2344
  7. package/dist/vuetify-labs.d.ts +690 -341
  8. package/dist/vuetify-labs.esm.js +253 -211
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +252 -210
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +2553 -2538
  13. package/dist/vuetify.d.ts +559 -315
  14. package/dist/vuetify.esm.js +189 -127
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +188 -126
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +160 -156
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VApp/VApp.mjs +2 -5
  22. package/lib/components/VApp/VApp.mjs.map +1 -1
  23. package/lib/components/VApp/index.d.mts +6 -6
  24. package/lib/components/VAppBar/VAppBar.mjs +5 -5
  25. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  26. package/lib/components/VAppBar/index.d.mts +8 -2
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs +15 -8
  28. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  29. package/lib/components/VAutocomplete/index.d.mts +78 -49
  30. package/lib/components/VAvatar/VAvatar.css +9 -0
  31. package/lib/components/VAvatar/VAvatar.mjs +6 -1
  32. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  33. package/lib/components/VAvatar/VAvatar.sass +1 -0
  34. package/lib/components/VAvatar/_variables.scss +13 -0
  35. package/lib/components/VAvatar/index.d.mts +6 -0
  36. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +2 -3
  37. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  38. package/lib/components/VBottomNavigation/index.d.mts +2 -2
  39. package/lib/components/VBreadcrumbs/index.d.mts +8 -8
  40. package/lib/components/VBtn/VBtn.css +0 -4
  41. package/lib/components/VBtn/VBtn.mjs +3 -1
  42. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  43. package/lib/components/VBtn/VBtn.sass +0 -6
  44. package/lib/components/VBtn/_variables.scss +0 -1
  45. package/lib/components/VBtn/index.d.mts +6 -0
  46. package/lib/components/VCard/VCard.css +1 -0
  47. package/lib/components/VCard/VCard.sass +1 -0
  48. package/lib/components/VCard/_variables.scss +7 -3
  49. package/lib/components/VCarousel/index.d.mts +9 -0
  50. package/lib/components/VCheckbox/index.d.mts +7 -6
  51. package/lib/components/VCombobox/VCombobox.mjs +15 -8
  52. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  53. package/lib/components/VCombobox/index.d.mts +78 -49
  54. package/lib/components/VDialog/index.d.mts +3 -3
  55. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +7 -2
  56. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  57. package/lib/components/VExpansionPanel/index.d.mts +72 -0
  58. package/lib/components/VFab/index.d.mts +6 -0
  59. package/lib/components/VFileInput/index.d.mts +19 -18
  60. package/lib/components/VFooter/VFooter.mjs +1 -3
  61. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  62. package/lib/components/VFooter/index.d.mts +3 -3
  63. package/lib/components/VForm/index.d.mts +10 -9
  64. package/lib/components/VGrid/VContainer.mjs +6 -1
  65. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  66. package/lib/components/VGrid/index.d.mts +36 -0
  67. package/lib/components/VImg/VImg.css +9 -0
  68. package/lib/components/VImg/VImg.mjs +2 -0
  69. package/lib/components/VImg/VImg.mjs.map +1 -1
  70. package/lib/components/VImg/VImg.sass +9 -0
  71. package/lib/components/VImg/index.d.mts +9 -0
  72. package/lib/components/VInput/index.d.mts +7 -6
  73. package/lib/components/VLayout/VLayout.mjs +2 -5
  74. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  75. package/lib/components/VLayout/VLayoutItem.mjs +4 -6
  76. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  77. package/lib/components/VLayout/index.d.mts +9 -9
  78. package/lib/components/VList/VListItem.css +2 -2
  79. package/lib/components/VList/VListItem.mjs +3 -1
  80. package/lib/components/VList/VListItem.mjs.map +1 -1
  81. package/lib/components/VList/VListItem.sass +1 -1
  82. package/lib/components/VList/index.d.mts +19 -18
  83. package/lib/components/VMain/VMain.mjs +2 -3
  84. package/lib/components/VMain/VMain.mjs.map +1 -1
  85. package/lib/components/VMain/index.d.mts +2 -2
  86. package/lib/components/VMenu/VMenu.mjs +26 -8
  87. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  88. package/lib/components/VMenu/index.d.mts +30 -15
  89. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +3 -4
  90. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  91. package/lib/components/VOverlay/VOverlay.mjs +5 -4
  92. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  93. package/lib/components/VOverlay/locationStrategies.mjs +0 -6
  94. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  95. package/lib/components/VOverlay/useActivator.mjs +3 -2
  96. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  97. package/lib/components/VRadioGroup/index.d.mts +7 -6
  98. package/lib/components/VRangeSlider/index.d.mts +7 -6
  99. package/lib/components/VSelect/VSelect.mjs +15 -13
  100. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  101. package/lib/components/VSelect/index.d.mts +78 -49
  102. package/lib/components/VSelect/useScrolling.mjs +3 -3
  103. package/lib/components/VSelect/useScrolling.mjs.map +1 -1
  104. package/lib/components/VSlideGroup/VSlideGroup.mjs +3 -1
  105. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  106. package/lib/components/VSlideGroup/index.d.mts +6 -0
  107. package/lib/components/VSlider/index.d.mts +7 -6
  108. package/lib/components/VSnackbar/index.d.mts +3 -3
  109. package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
  110. package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
  111. package/lib/components/VSpeedDial/index.d.mts +28 -13
  112. package/lib/components/VSwitch/index.d.mts +7 -6
  113. package/lib/components/VTabs/index.d.mts +21 -3
  114. package/lib/components/VTextField/index.d.mts +19 -18
  115. package/lib/components/VTextarea/index.d.mts +19 -18
  116. package/lib/components/VTooltip/index.d.mts +3 -3
  117. package/lib/components/VValidation/index.d.mts +7 -6
  118. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +2 -0
  119. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  120. package/lib/components/VVirtualScroll/index.d.mts +3 -0
  121. package/lib/components/index.d.mts +504 -259
  122. package/lib/composables/layout.mjs +37 -14
  123. package/lib/composables/layout.mjs.map +1 -1
  124. package/lib/composables/nested/nested.mjs +3 -3
  125. package/lib/composables/nested/nested.mjs.map +1 -1
  126. package/lib/composables/nested/openStrategies.mjs +4 -2
  127. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  128. package/lib/composables/nested/selectStrategies.mjs +5 -5
  129. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  130. package/lib/composables/validation.mjs +8 -6
  131. package/lib/composables/validation.mjs.map +1 -1
  132. package/lib/composables/virtual.mjs +1 -0
  133. package/lib/composables/virtual.mjs.map +1 -1
  134. package/lib/entry-bundler.mjs +1 -1
  135. package/lib/entry-bundler.mjs.map +1 -1
  136. package/lib/framework.mjs +1 -1
  137. package/lib/framework.mjs.map +1 -1
  138. package/lib/index.d.mts +55 -56
  139. package/lib/labs/VDateInput/index.d.mts +7 -6
  140. package/lib/labs/VNumberInput/index.d.mts +43 -42
  141. package/lib/labs/VPullToRefresh/VPullToRefresh.mjs +4 -3
  142. package/lib/labs/VPullToRefresh/VPullToRefresh.mjs.map +1 -1
  143. package/lib/labs/VPullToRefresh/index.d.mts +9 -0
  144. package/lib/labs/VSnackbarQueue/index.d.mts +3 -3
  145. package/lib/labs/VStepperVertical/index.d.mts +36 -0
  146. package/lib/labs/VTreeview/VTreeview.mjs +21 -6
  147. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  148. package/lib/labs/VTreeview/VTreeviewChildren.mjs +33 -10
  149. package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
  150. package/lib/labs/VTreeview/VTreeviewItem.css +1 -1
  151. package/lib/labs/VTreeview/VTreeviewItem.mjs +14 -74
  152. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  153. package/lib/labs/VTreeview/VTreeviewItem.sass +2 -5
  154. package/lib/labs/VTreeview/index.d.mts +133 -95
  155. package/lib/labs/components.d.mts +193 -109
  156. package/lib/util/helpers.mjs +5 -0
  157. package/lib/util/helpers.mjs.map +1 -1
  158. package/package.json +2 -2
@@ -74,7 +74,8 @@ type Density = null | 'default' | 'comfortable' | 'compact';
74
74
 
75
75
  type ValidationResult = string | boolean;
76
76
  type ValidationRule = ValidationResult | PromiseLike<ValidationResult> | ((value: any) => ValidationResult) | ((value: any) => PromiseLike<ValidationResult>);
77
- type ValidateOnValue = 'blur' | 'input' | 'submit';
77
+ type ValidateOnValue = 'blur' | 'input' | 'submit' | 'invalid-input';
78
+ type ValidateOn = ValidateOnValue | `${ValidateOnValue} lazy` | `${ValidateOnValue} eager` | `lazy ${ValidateOnValue}` | `eager ${ValidateOnValue}` | 'lazy' | 'eager';
78
79
  interface ValidationProps {
79
80
  disabled: boolean | null;
80
81
  error: boolean;
@@ -87,7 +88,7 @@ interface ValidationProps {
87
88
  rules: readonly ValidationRule[];
88
89
  modelValue: any;
89
90
  'onUpdate:modelValue': EventProp | undefined;
90
- validateOn?: ValidateOnValue | `${ValidateOnValue} lazy` | `lazy ${ValidateOnValue}` | 'lazy';
91
+ validateOn?: ValidateOn;
91
92
  validationValue: any;
92
93
  }
93
94
 
@@ -204,6 +205,7 @@ type Variant = typeof allowedVariants[number];
204
205
 
205
206
  type ListItemSlot = {
206
207
  isActive: boolean;
208
+ isOpen: boolean;
207
209
  isSelected: boolean;
208
210
  isIndeterminate: boolean;
209
211
  select: (value: boolean) => void;
@@ -363,9 +365,9 @@ declare const VList: {
363
365
  rounded?: string | number | boolean | undefined;
364
366
  baseColor?: string | undefined;
365
367
  bgColor?: string | undefined;
368
+ activeColor?: string | undefined;
366
369
  activeClass?: string | undefined;
367
370
  activeStrategy?: ActiveStrategyProp | undefined;
368
- activeColor?: string | undefined;
369
371
  collapseIcon?: string | undefined;
370
372
  expandIcon?: string | undefined;
371
373
  } & {
@@ -434,9 +436,9 @@ declare const VList: {
434
436
  rounded?: string | number | boolean | undefined;
435
437
  baseColor?: string | undefined;
436
438
  bgColor?: string | undefined;
439
+ activeColor?: string | undefined;
437
440
  activeClass?: string | undefined;
438
441
  activeStrategy?: ActiveStrategyProp | undefined;
439
- activeColor?: string | undefined;
440
442
  collapseIcon?: string | undefined;
441
443
  expandIcon?: string | undefined;
442
444
  } & {
@@ -532,9 +534,9 @@ declare const VList: {
532
534
  rounded?: string | number | boolean | undefined;
533
535
  baseColor?: string | undefined;
534
536
  bgColor?: string | undefined;
537
+ activeColor?: string | undefined;
535
538
  activeClass?: string | undefined;
536
539
  activeStrategy?: ActiveStrategyProp | undefined;
537
- activeColor?: string | undefined;
538
540
  collapseIcon?: string | undefined;
539
541
  expandIcon?: string | undefined;
540
542
  } & {
@@ -607,9 +609,9 @@ declare const VList: {
607
609
  rounded?: string | number | boolean | undefined;
608
610
  baseColor?: string | undefined;
609
611
  bgColor?: string | undefined;
612
+ activeColor?: string | undefined;
610
613
  activeClass?: string | undefined;
611
614
  activeStrategy?: ActiveStrategyProp | undefined;
612
- activeColor?: string | undefined;
613
615
  collapseIcon?: string | undefined;
614
616
  expandIcon?: string | undefined;
615
617
  } & {
@@ -932,7 +934,7 @@ type VList = InstanceType<typeof VList>;
932
934
 
933
935
  declare const VMenu: {
934
936
  new (...args: any[]): vue.CreateComponentPublicInstance<{
935
- location: Anchor;
937
+ location: Anchor | undefined;
936
938
  origin: "auto" | Anchor | "overlap";
937
939
  transition: string | boolean | (vue.TransitionProps & {
938
940
  component?: Component;
@@ -958,6 +960,7 @@ declare const VMenu: {
958
960
  noClickAnimation: boolean;
959
961
  persistent: boolean;
960
962
  scrim: string | boolean;
963
+ submenu: boolean;
961
964
  } & {
962
965
  offset?: string | number | number[] | undefined;
963
966
  id?: string | undefined;
@@ -1013,7 +1016,7 @@ declare const VMenu: {
1013
1016
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1014
1017
  }, {
1015
1018
  id: vue.ComputedRef<string>;
1016
- ΨopenChildren: vue.ShallowRef<number>;
1019
+ ΨopenChildren: vue.ShallowRef<Set<number>>;
1017
1020
  } & Omit<Omit<{
1018
1021
  $: vue.ComponentInternalInstance;
1019
1022
  $data: {};
@@ -1459,7 +1462,7 @@ declare const VMenu: {
1459
1462
  onAfterLeave?: (() => any) | undefined;
1460
1463
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1461
1464
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
1462
- }, "target" | "activatorEl" | "scrimEl" | "animateClick" | "contentEl" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
1465
+ }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
1463
1466
  activatorEl: vue.Ref<HTMLElement | undefined>;
1464
1467
  scrimEl: vue.Ref<HTMLElement | undefined>;
1465
1468
  target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
@@ -1471,7 +1474,7 @@ declare const VMenu: {
1471
1474
  }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "theme" | "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" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1472
1475
  'update:modelValue': (value: boolean) => true;
1473
1476
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
1474
- location: Anchor;
1477
+ location: Anchor | undefined;
1475
1478
  origin: "auto" | Anchor | "overlap";
1476
1479
  transition: string | boolean | (vue.TransitionProps & {
1477
1480
  component?: Component;
@@ -1497,6 +1500,7 @@ declare const VMenu: {
1497
1500
  noClickAnimation: boolean;
1498
1501
  persistent: boolean;
1499
1502
  scrim: string | boolean;
1503
+ submenu: boolean;
1500
1504
  } & {
1501
1505
  offset?: string | number | number[] | undefined;
1502
1506
  id?: string | undefined;
@@ -1551,7 +1555,7 @@ declare const VMenu: {
1551
1555
  } & {
1552
1556
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1553
1557
  }, {
1554
- location: Anchor;
1558
+ location: Anchor | undefined;
1555
1559
  origin: "auto" | Anchor | "overlap";
1556
1560
  transition: string | boolean | (vue.TransitionProps & {
1557
1561
  component?: Component;
@@ -1579,6 +1583,7 @@ declare const VMenu: {
1579
1583
  noClickAnimation: boolean;
1580
1584
  persistent: boolean;
1581
1585
  scrim: string | boolean;
1586
+ submenu: boolean;
1582
1587
  }, true, {}, vue.SlotsType<Partial<{
1583
1588
  default: (arg: {
1584
1589
  isActive: vue.Ref<boolean>;
@@ -1596,7 +1601,7 @@ declare const VMenu: {
1596
1601
  M: {};
1597
1602
  Defaults: {};
1598
1603
  }, {
1599
- location: Anchor;
1604
+ location: Anchor | undefined;
1600
1605
  origin: "auto" | Anchor | "overlap";
1601
1606
  transition: string | boolean | (vue.TransitionProps & {
1602
1607
  component?: Component;
@@ -1622,6 +1627,7 @@ declare const VMenu: {
1622
1627
  noClickAnimation: boolean;
1623
1628
  persistent: boolean;
1624
1629
  scrim: string | boolean;
1630
+ submenu: boolean;
1625
1631
  } & {
1626
1632
  offset?: string | number | number[] | undefined;
1627
1633
  id?: string | undefined;
@@ -1677,7 +1683,7 @@ declare const VMenu: {
1677
1683
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1678
1684
  }, {
1679
1685
  id: vue.ComputedRef<string>;
1680
- ΨopenChildren: vue.ShallowRef<number>;
1686
+ ΨopenChildren: vue.ShallowRef<Set<number>>;
1681
1687
  } & Omit<Omit<{
1682
1688
  $: vue.ComponentInternalInstance;
1683
1689
  $data: {};
@@ -2123,7 +2129,7 @@ declare const VMenu: {
2123
2129
  onAfterLeave?: (() => any) | undefined;
2124
2130
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
2125
2131
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
2126
- }, "target" | "activatorEl" | "scrimEl" | "animateClick" | "contentEl" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
2132
+ }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
2127
2133
  activatorEl: vue.Ref<HTMLElement | undefined>;
2128
2134
  scrimEl: vue.Ref<HTMLElement | undefined>;
2129
2135
  target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
@@ -2133,7 +2139,7 @@ declare const VMenu: {
2133
2139
  localTop: vue.ComputedRef<boolean>;
2134
2140
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
2135
2141
  }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "theme" | "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" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, {}, {}, {}, {
2136
- location: Anchor;
2142
+ location: Anchor | undefined;
2137
2143
  origin: "auto" | Anchor | "overlap";
2138
2144
  transition: string | boolean | (vue.TransitionProps & {
2139
2145
  component?: Component;
@@ -2161,12 +2167,13 @@ declare const VMenu: {
2161
2167
  noClickAnimation: boolean;
2162
2168
  persistent: boolean;
2163
2169
  scrim: string | boolean;
2170
+ submenu: boolean;
2164
2171
  }>;
2165
2172
  __isFragment?: never;
2166
2173
  __isTeleport?: never;
2167
2174
  __isSuspense?: never;
2168
2175
  } & vue.ComponentOptionsBase<{
2169
- location: Anchor;
2176
+ location: Anchor | undefined;
2170
2177
  origin: "auto" | Anchor | "overlap";
2171
2178
  transition: string | boolean | (vue.TransitionProps & {
2172
2179
  component?: Component;
@@ -2192,6 +2199,7 @@ declare const VMenu: {
2192
2199
  noClickAnimation: boolean;
2193
2200
  persistent: boolean;
2194
2201
  scrim: string | boolean;
2202
+ submenu: boolean;
2195
2203
  } & {
2196
2204
  offset?: string | number | number[] | undefined;
2197
2205
  id?: string | undefined;
@@ -2247,7 +2255,7 @@ declare const VMenu: {
2247
2255
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
2248
2256
  }, {
2249
2257
  id: vue.ComputedRef<string>;
2250
- ΨopenChildren: vue.ShallowRef<number>;
2258
+ ΨopenChildren: vue.ShallowRef<Set<number>>;
2251
2259
  } & Omit<Omit<{
2252
2260
  $: vue.ComponentInternalInstance;
2253
2261
  $data: {};
@@ -2693,7 +2701,7 @@ declare const VMenu: {
2693
2701
  onAfterLeave?: (() => any) | undefined;
2694
2702
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
2695
2703
  "onClick:outside"?: ((e: MouseEvent) => any) | undefined;
2696
- }, "target" | "activatorEl" | "scrimEl" | "animateClick" | "contentEl" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
2704
+ }, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
2697
2705
  activatorEl: vue.Ref<HTMLElement | undefined>;
2698
2706
  scrimEl: vue.Ref<HTMLElement | undefined>;
2699
2707
  target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
@@ -2705,7 +2713,7 @@ declare const VMenu: {
2705
2713
  }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "target" | "class" | "ref" | "onAfterEnter" | "onAfterLeave" | "$children" | "theme" | "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" | "modelValue" | "locationStrategy" | "scrollStrategy" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
2706
2714
  'update:modelValue': (value: boolean) => true;
2707
2715
  }, string, {
2708
- location: Anchor;
2716
+ location: Anchor | undefined;
2709
2717
  origin: "auto" | Anchor | "overlap";
2710
2718
  transition: string | boolean | (vue.TransitionProps & {
2711
2719
  component?: Component;
@@ -2733,6 +2741,7 @@ declare const VMenu: {
2733
2741
  noClickAnimation: boolean;
2734
2742
  persistent: boolean;
2735
2743
  scrim: string | boolean;
2744
+ submenu: boolean;
2736
2745
  }, {}, string, vue.SlotsType<Partial<{
2737
2746
  default: (arg: {
2738
2747
  isActive: vue.Ref<boolean>;
@@ -2744,9 +2753,12 @@ declare const VMenu: {
2744
2753
  }) => vue.VNode[];
2745
2754
  }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
2746
2755
  offset: vue.PropType<StrategyProps["offset"]>;
2747
- location: {
2756
+ location: Omit<{
2748
2757
  type: vue.PropType<StrategyProps["location"]>;
2749
2758
  default: string;
2759
+ }, "type" | "default"> & {
2760
+ type: vue.PropType<Anchor | undefined>;
2761
+ default: NonNullable<Anchor> | undefined;
2750
2762
  };
2751
2763
  origin: {
2752
2764
  type: vue.PropType<StrategyProps["origin"]>;
@@ -2855,11 +2867,15 @@ declare const VMenu: {
2855
2867
  };
2856
2868
  attach: vue.PropType<boolean | string | Element>;
2857
2869
  id: StringConstructor;
2870
+ submenu: BooleanConstructor;
2858
2871
  }, vue.ExtractPropTypes<{
2859
2872
  offset: vue.PropType<StrategyProps["offset"]>;
2860
- location: {
2873
+ location: Omit<{
2861
2874
  type: vue.PropType<StrategyProps["location"]>;
2862
2875
  default: string;
2876
+ }, "type" | "default"> & {
2877
+ type: vue.PropType<Anchor | undefined>;
2878
+ default: NonNullable<Anchor> | undefined;
2863
2879
  };
2864
2880
  origin: {
2865
2881
  type: vue.PropType<StrategyProps["origin"]>;
@@ -2968,6 +2984,7 @@ declare const VMenu: {
2968
2984
  };
2969
2985
  attach: vue.PropType<boolean | string | Element>;
2970
2986
  id: StringConstructor;
2987
+ submenu: BooleanConstructor;
2971
2988
  }>>;
2972
2989
  type VMenu = InstanceType<typeof VMenu>;
2973
2990
 
@@ -3037,7 +3054,7 @@ declare const VSelect: {
3037
3054
  theme?: string | undefined;
3038
3055
  counter?: string | number | boolean | undefined;
3039
3056
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
3040
- validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
3057
+ validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
3041
3058
  rounded?: string | number | boolean | undefined;
3042
3059
  baseColor?: string | undefined;
3043
3060
  bgColor?: string | undefined;
@@ -3107,9 +3124,9 @@ declare const VSelect: {
3107
3124
  rounded?: string | number | boolean | undefined;
3108
3125
  baseColor?: string | undefined;
3109
3126
  bgColor?: string | undefined;
3127
+ activeColor?: string | undefined;
3110
3128
  activeClass?: string | undefined;
3111
3129
  activeStrategy?: ActiveStrategyProp | undefined;
3112
- activeColor?: string | undefined;
3113
3130
  collapseIcon?: string | undefined;
3114
3131
  expandIcon?: string | undefined;
3115
3132
  "onUpdate:activated"?: ((value: unknown) => any) | undefined;
@@ -3152,9 +3169,9 @@ declare const VSelect: {
3152
3169
  rounded?: string | number | boolean | undefined;
3153
3170
  baseColor?: string | undefined;
3154
3171
  bgColor?: string | undefined;
3172
+ activeColor?: string | undefined;
3155
3173
  activeClass?: string | undefined;
3156
3174
  activeStrategy?: ActiveStrategyProp | undefined;
3157
- activeColor?: string | undefined;
3158
3175
  collapseIcon?: string | undefined;
3159
3176
  expandIcon?: string | undefined;
3160
3177
  } & {
@@ -3267,7 +3284,7 @@ declare const VSelect: {
3267
3284
  }) => vue.VNodeChild) | undefined;
3268
3285
  }) | undefined;
3269
3286
  menuProps?: (Partial<{
3270
- location: Anchor;
3287
+ location: Anchor | undefined;
3271
3288
  origin: "auto" | Anchor | "overlap";
3272
3289
  transition: string | boolean | (vue.TransitionProps & {
3273
3290
  component?: Component;
@@ -3295,8 +3312,9 @@ declare const VSelect: {
3295
3312
  noClickAnimation: boolean;
3296
3313
  persistent: boolean;
3297
3314
  scrim: string | boolean;
3315
+ submenu: boolean;
3298
3316
  }> & Omit<{
3299
- location: Anchor;
3317
+ location: Anchor | undefined;
3300
3318
  origin: "auto" | Anchor | "overlap";
3301
3319
  transition: string | boolean | (vue.TransitionProps & {
3302
3320
  component?: Component;
@@ -3322,6 +3340,7 @@ declare const VSelect: {
3322
3340
  noClickAnimation: boolean;
3323
3341
  persistent: boolean;
3324
3342
  scrim: string | boolean;
3343
+ submenu: boolean;
3325
3344
  offset?: string | number | number[] | undefined;
3326
3345
  id?: string | undefined;
3327
3346
  height?: string | number | undefined;
@@ -3372,7 +3391,7 @@ declare const VSelect: {
3372
3391
  }) => vue.VNodeChild) | undefined;
3373
3392
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
3374
3393
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
3375
- location: Anchor;
3394
+ location: Anchor | undefined;
3376
3395
  origin: "auto" | Anchor | "overlap";
3377
3396
  transition: string | boolean | (vue.TransitionProps & {
3378
3397
  component?: Component;
@@ -3398,6 +3417,7 @@ declare const VSelect: {
3398
3417
  noClickAnimation: boolean;
3399
3418
  persistent: boolean;
3400
3419
  scrim: string | boolean;
3420
+ submenu: boolean;
3401
3421
  } & {
3402
3422
  offset?: string | number | number[] | undefined;
3403
3423
  id?: string | undefined;
@@ -3451,7 +3471,7 @@ declare const VSelect: {
3451
3471
  }) => vue.VNodeChild) | undefined;
3452
3472
  } & {
3453
3473
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
3454
- }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim">) | undefined;
3474
+ }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "submenu">) | undefined;
3455
3475
  itemColor?: string | undefined;
3456
3476
  } & {
3457
3477
  "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
@@ -3521,7 +3541,7 @@ declare const VSelect: {
3521
3541
  theme?: string | undefined;
3522
3542
  counter?: string | number | boolean | undefined;
3523
3543
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
3524
- validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
3544
+ validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
3525
3545
  rounded?: string | number | boolean | undefined;
3526
3546
  baseColor?: string | undefined;
3527
3547
  bgColor?: string | undefined;
@@ -3591,9 +3611,9 @@ declare const VSelect: {
3591
3611
  rounded?: string | number | boolean | undefined;
3592
3612
  baseColor?: string | undefined;
3593
3613
  bgColor?: string | undefined;
3614
+ activeColor?: string | undefined;
3594
3615
  activeClass?: string | undefined;
3595
3616
  activeStrategy?: ActiveStrategyProp | undefined;
3596
- activeColor?: string | undefined;
3597
3617
  collapseIcon?: string | undefined;
3598
3618
  expandIcon?: string | undefined;
3599
3619
  "onUpdate:activated"?: ((value: unknown) => any) | undefined;
@@ -3636,9 +3656,9 @@ declare const VSelect: {
3636
3656
  rounded?: string | number | boolean | undefined;
3637
3657
  baseColor?: string | undefined;
3638
3658
  bgColor?: string | undefined;
3659
+ activeColor?: string | undefined;
3639
3660
  activeClass?: string | undefined;
3640
3661
  activeStrategy?: ActiveStrategyProp | undefined;
3641
- activeColor?: string | undefined;
3642
3662
  collapseIcon?: string | undefined;
3643
3663
  expandIcon?: string | undefined;
3644
3664
  } & {
@@ -3751,7 +3771,7 @@ declare const VSelect: {
3751
3771
  }) => vue.VNodeChild) | undefined;
3752
3772
  }) | undefined;
3753
3773
  menuProps?: (Partial<{
3754
- location: Anchor;
3774
+ location: Anchor | undefined;
3755
3775
  origin: "auto" | Anchor | "overlap";
3756
3776
  transition: string | boolean | (vue.TransitionProps & {
3757
3777
  component?: Component;
@@ -3779,8 +3799,9 @@ declare const VSelect: {
3779
3799
  noClickAnimation: boolean;
3780
3800
  persistent: boolean;
3781
3801
  scrim: string | boolean;
3802
+ submenu: boolean;
3782
3803
  }> & Omit<{
3783
- location: Anchor;
3804
+ location: Anchor | undefined;
3784
3805
  origin: "auto" | Anchor | "overlap";
3785
3806
  transition: string | boolean | (vue.TransitionProps & {
3786
3807
  component?: Component;
@@ -3806,6 +3827,7 @@ declare const VSelect: {
3806
3827
  noClickAnimation: boolean;
3807
3828
  persistent: boolean;
3808
3829
  scrim: string | boolean;
3830
+ submenu: boolean;
3809
3831
  offset?: string | number | number[] | undefined;
3810
3832
  id?: string | undefined;
3811
3833
  height?: string | number | undefined;
@@ -3856,7 +3878,7 @@ declare const VSelect: {
3856
3878
  }) => vue.VNodeChild) | undefined;
3857
3879
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
3858
3880
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
3859
- location: Anchor;
3881
+ location: Anchor | undefined;
3860
3882
  origin: "auto" | Anchor | "overlap";
3861
3883
  transition: string | boolean | (vue.TransitionProps & {
3862
3884
  component?: Component;
@@ -3882,6 +3904,7 @@ declare const VSelect: {
3882
3904
  noClickAnimation: boolean;
3883
3905
  persistent: boolean;
3884
3906
  scrim: string | boolean;
3907
+ submenu: boolean;
3885
3908
  } & {
3886
3909
  offset?: string | number | number[] | undefined;
3887
3910
  id?: string | undefined;
@@ -3935,7 +3958,7 @@ declare const VSelect: {
3935
3958
  }) => vue.VNodeChild) | undefined;
3936
3959
  } & {
3937
3960
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
3938
- }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim">) | undefined;
3961
+ }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "submenu">) | undefined;
3939
3962
  itemColor?: string | undefined;
3940
3963
  } & {
3941
3964
  "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
@@ -4088,7 +4111,7 @@ declare const VSelect: {
4088
4111
  theme?: string | undefined;
4089
4112
  counter?: string | number | boolean | undefined;
4090
4113
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
4091
- validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
4114
+ validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
4092
4115
  rounded?: string | number | boolean | undefined;
4093
4116
  baseColor?: string | undefined;
4094
4117
  bgColor?: string | undefined;
@@ -4158,9 +4181,9 @@ declare const VSelect: {
4158
4181
  rounded?: string | number | boolean | undefined;
4159
4182
  baseColor?: string | undefined;
4160
4183
  bgColor?: string | undefined;
4184
+ activeColor?: string | undefined;
4161
4185
  activeClass?: string | undefined;
4162
4186
  activeStrategy?: ActiveStrategyProp | undefined;
4163
- activeColor?: string | undefined;
4164
4187
  collapseIcon?: string | undefined;
4165
4188
  expandIcon?: string | undefined;
4166
4189
  "onUpdate:activated"?: ((value: unknown) => any) | undefined;
@@ -4203,9 +4226,9 @@ declare const VSelect: {
4203
4226
  rounded?: string | number | boolean | undefined;
4204
4227
  baseColor?: string | undefined;
4205
4228
  bgColor?: string | undefined;
4229
+ activeColor?: string | undefined;
4206
4230
  activeClass?: string | undefined;
4207
4231
  activeStrategy?: ActiveStrategyProp | undefined;
4208
- activeColor?: string | undefined;
4209
4232
  collapseIcon?: string | undefined;
4210
4233
  expandIcon?: string | undefined;
4211
4234
  } & {
@@ -4318,7 +4341,7 @@ declare const VSelect: {
4318
4341
  }) => vue.VNodeChild) | undefined;
4319
4342
  }) | undefined;
4320
4343
  menuProps?: (Partial<{
4321
- location: Anchor;
4344
+ location: Anchor | undefined;
4322
4345
  origin: "auto" | Anchor | "overlap";
4323
4346
  transition: string | boolean | (vue.TransitionProps & {
4324
4347
  component?: Component;
@@ -4346,8 +4369,9 @@ declare const VSelect: {
4346
4369
  noClickAnimation: boolean;
4347
4370
  persistent: boolean;
4348
4371
  scrim: string | boolean;
4372
+ submenu: boolean;
4349
4373
  }> & Omit<{
4350
- location: Anchor;
4374
+ location: Anchor | undefined;
4351
4375
  origin: "auto" | Anchor | "overlap";
4352
4376
  transition: string | boolean | (vue.TransitionProps & {
4353
4377
  component?: Component;
@@ -4373,6 +4397,7 @@ declare const VSelect: {
4373
4397
  noClickAnimation: boolean;
4374
4398
  persistent: boolean;
4375
4399
  scrim: string | boolean;
4400
+ submenu: boolean;
4376
4401
  offset?: string | number | number[] | undefined;
4377
4402
  id?: string | undefined;
4378
4403
  height?: string | number | undefined;
@@ -4423,7 +4448,7 @@ declare const VSelect: {
4423
4448
  }) => vue.VNodeChild) | undefined;
4424
4449
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
4425
4450
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
4426
- location: Anchor;
4451
+ location: Anchor | undefined;
4427
4452
  origin: "auto" | Anchor | "overlap";
4428
4453
  transition: string | boolean | (vue.TransitionProps & {
4429
4454
  component?: Component;
@@ -4449,6 +4474,7 @@ declare const VSelect: {
4449
4474
  noClickAnimation: boolean;
4450
4475
  persistent: boolean;
4451
4476
  scrim: string | boolean;
4477
+ submenu: boolean;
4452
4478
  } & {
4453
4479
  offset?: string | number | number[] | undefined;
4454
4480
  id?: string | undefined;
@@ -4502,7 +4528,7 @@ declare const VSelect: {
4502
4528
  }) => vue.VNodeChild) | undefined;
4503
4529
  } & {
4504
4530
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
4505
- }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim">) | undefined;
4531
+ }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "submenu">) | undefined;
4506
4532
  itemColor?: string | undefined;
4507
4533
  } & {
4508
4534
  "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
@@ -4620,7 +4646,7 @@ declare const VSelect: {
4620
4646
  theme?: string | undefined;
4621
4647
  counter?: string | number | boolean | undefined;
4622
4648
  'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
4623
- validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
4649
+ validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
4624
4650
  rounded?: string | number | boolean | undefined;
4625
4651
  baseColor?: string | undefined;
4626
4652
  bgColor?: string | undefined;
@@ -4690,9 +4716,9 @@ declare const VSelect: {
4690
4716
  rounded?: string | number | boolean | undefined;
4691
4717
  baseColor?: string | undefined;
4692
4718
  bgColor?: string | undefined;
4719
+ activeColor?: string | undefined;
4693
4720
  activeClass?: string | undefined;
4694
4721
  activeStrategy?: ActiveStrategyProp | undefined;
4695
- activeColor?: string | undefined;
4696
4722
  collapseIcon?: string | undefined;
4697
4723
  expandIcon?: string | undefined;
4698
4724
  "onUpdate:activated"?: ((value: unknown) => any) | undefined;
@@ -4735,9 +4761,9 @@ declare const VSelect: {
4735
4761
  rounded?: string | number | boolean | undefined;
4736
4762
  baseColor?: string | undefined;
4737
4763
  bgColor?: string | undefined;
4764
+ activeColor?: string | undefined;
4738
4765
  activeClass?: string | undefined;
4739
4766
  activeStrategy?: ActiveStrategyProp | undefined;
4740
- activeColor?: string | undefined;
4741
4767
  collapseIcon?: string | undefined;
4742
4768
  expandIcon?: string | undefined;
4743
4769
  } & {
@@ -4850,7 +4876,7 @@ declare const VSelect: {
4850
4876
  }) => vue.VNodeChild) | undefined;
4851
4877
  }) | undefined;
4852
4878
  menuProps?: (Partial<{
4853
- location: Anchor;
4879
+ location: Anchor | undefined;
4854
4880
  origin: "auto" | Anchor | "overlap";
4855
4881
  transition: string | boolean | (vue.TransitionProps & {
4856
4882
  component?: Component;
@@ -4878,8 +4904,9 @@ declare const VSelect: {
4878
4904
  noClickAnimation: boolean;
4879
4905
  persistent: boolean;
4880
4906
  scrim: string | boolean;
4907
+ submenu: boolean;
4881
4908
  }> & Omit<{
4882
- location: Anchor;
4909
+ location: Anchor | undefined;
4883
4910
  origin: "auto" | Anchor | "overlap";
4884
4911
  transition: string | boolean | (vue.TransitionProps & {
4885
4912
  component?: Component;
@@ -4905,6 +4932,7 @@ declare const VSelect: {
4905
4932
  noClickAnimation: boolean;
4906
4933
  persistent: boolean;
4907
4934
  scrim: string | boolean;
4935
+ submenu: boolean;
4908
4936
  offset?: string | number | number[] | undefined;
4909
4937
  id?: string | undefined;
4910
4938
  height?: string | number | undefined;
@@ -4955,7 +4983,7 @@ declare const VSelect: {
4955
4983
  }) => vue.VNodeChild) | undefined;
4956
4984
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
4957
4985
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
4958
- location: Anchor;
4986
+ location: Anchor | undefined;
4959
4987
  origin: "auto" | Anchor | "overlap";
4960
4988
  transition: string | boolean | (vue.TransitionProps & {
4961
4989
  component?: Component;
@@ -4981,6 +5009,7 @@ declare const VSelect: {
4981
5009
  noClickAnimation: boolean;
4982
5010
  persistent: boolean;
4983
5011
  scrim: string | boolean;
5012
+ submenu: boolean;
4984
5013
  } & {
4985
5014
  offset?: string | number | number[] | undefined;
4986
5015
  id?: string | undefined;
@@ -5034,7 +5063,7 @@ declare const VSelect: {
5034
5063
  }) => vue.VNodeChild) | undefined;
5035
5064
  } & {
5036
5065
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
5037
- }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim">) | undefined;
5066
+ }, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "locationStrategy" | "scrollStrategy" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "submenu">) | undefined;
5038
5067
  itemColor?: string | undefined;
5039
5068
  } & {
5040
5069
  "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
@@ -62,8 +62,8 @@ export function useScrolling(listRef, textFieldRef) {
62
62
  }
63
63
  }
64
64
  return {
65
- onListScroll,
66
- onListKeydown
67
- };
65
+ onScrollPassive: onListScroll,
66
+ onKeydown: onListKeydown
67
+ }; // typescript doesn't know about vue's event merging
68
68
  }
69
69
  //# sourceMappingURL=useScrolling.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"useScrolling.mjs","names":["shallowRef","watch","useScrolling","listRef","textFieldRef","isScrolling","scrollTimeout","onListScroll","e","cancelAnimationFrame","value","requestAnimationFrame","finishScrolling","Promise","resolve","stop","onListKeydown","key","focus","includes","el","$el","scrollTo","top","scrollHeight","behavior","children","querySelectorAll","getBoundingClientRect","child","bottom","reverse"],"sources":["../../../src/components/VSelect/useScrolling.ts"],"sourcesContent":["// Utilities\nimport { shallowRef, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { VList } from '@/components/VList'\nimport type { VTextField } from '@/components/VTextField'\n\nexport function useScrolling (listRef: Ref<VList | undefined>, textFieldRef: Ref<VTextField | undefined>) {\n const isScrolling = shallowRef(false)\n let scrollTimeout: number\n function onListScroll (e: Event) {\n cancelAnimationFrame(scrollTimeout)\n isScrolling.value = true\n scrollTimeout = requestAnimationFrame(() => {\n scrollTimeout = requestAnimationFrame(() => {\n isScrolling.value = false\n })\n })\n }\n async function finishScrolling () {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise<void>(resolve => {\n if (isScrolling.value) {\n const stop = watch(isScrolling, () => {\n stop()\n resolve()\n })\n } else resolve()\n })\n }\n async function onListKeydown (e: KeyboardEvent) {\n if (e.key === 'Tab') {\n textFieldRef.value?.focus()\n }\n\n if (!['PageDown', 'PageUp', 'Home', 'End'].includes(e.key)) return\n const el: HTMLElement = listRef.value?.$el\n if (!el) return\n\n if (e.key === 'Home' || e.key === 'End') {\n el.scrollTo({\n top: e.key === 'Home' ? 0 : el.scrollHeight,\n behavior: 'smooth',\n })\n }\n\n await finishScrolling()\n\n const children = el.querySelectorAll(':scope > :not(.v-virtual-scroll__spacer)')\n\n if (e.key === 'PageDown' || e.key === 'Home') {\n const top = el.getBoundingClientRect().top\n for (const child of children) {\n if (child.getBoundingClientRect().top >= top) {\n (child as HTMLElement).focus()\n break\n }\n }\n } else {\n const bottom = el.getBoundingClientRect().bottom\n for (const child of [...children].reverse()) {\n if (child.getBoundingClientRect().bottom <= bottom) {\n (child as HTMLElement).focus()\n break\n }\n }\n }\n }\n\n return { onListScroll, onListKeydown }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useScrolling.mjs","names":["shallowRef","watch","useScrolling","listRef","textFieldRef","isScrolling","scrollTimeout","onListScroll","e","cancelAnimationFrame","value","requestAnimationFrame","finishScrolling","Promise","resolve","stop","onListKeydown","key","focus","includes","el","$el","scrollTo","top","scrollHeight","behavior","children","querySelectorAll","getBoundingClientRect","child","bottom","reverse","onScrollPassive","onKeydown"],"sources":["../../../src/components/VSelect/useScrolling.ts"],"sourcesContent":["// Utilities\nimport { shallowRef, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { VList } from '@/components/VList'\nimport type { VTextField } from '@/components/VTextField'\n\nexport function useScrolling (listRef: Ref<VList | undefined>, textFieldRef: Ref<VTextField | undefined>) {\n const isScrolling = shallowRef(false)\n let scrollTimeout: number\n function onListScroll (e: Event) {\n cancelAnimationFrame(scrollTimeout)\n isScrolling.value = true\n scrollTimeout = requestAnimationFrame(() => {\n scrollTimeout = requestAnimationFrame(() => {\n isScrolling.value = false\n })\n })\n }\n async function finishScrolling () {\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise(resolve => requestAnimationFrame(resolve))\n await new Promise<void>(resolve => {\n if (isScrolling.value) {\n const stop = watch(isScrolling, () => {\n stop()\n resolve()\n })\n } else resolve()\n })\n }\n async function onListKeydown (e: KeyboardEvent) {\n if (e.key === 'Tab') {\n textFieldRef.value?.focus()\n }\n\n if (!['PageDown', 'PageUp', 'Home', 'End'].includes(e.key)) return\n const el: HTMLElement = listRef.value?.$el\n if (!el) return\n\n if (e.key === 'Home' || e.key === 'End') {\n el.scrollTo({\n top: e.key === 'Home' ? 0 : el.scrollHeight,\n behavior: 'smooth',\n })\n }\n\n await finishScrolling()\n\n const children = el.querySelectorAll(':scope > :not(.v-virtual-scroll__spacer)')\n\n if (e.key === 'PageDown' || e.key === 'Home') {\n const top = el.getBoundingClientRect().top\n for (const child of children) {\n if (child.getBoundingClientRect().top >= top) {\n (child as HTMLElement).focus()\n break\n }\n }\n } else {\n const bottom = el.getBoundingClientRect().bottom\n for (const child of [...children].reverse()) {\n if (child.getBoundingClientRect().bottom <= bottom) {\n (child as HTMLElement).focus()\n break\n }\n }\n }\n }\n\n return {\n onScrollPassive: onListScroll,\n onKeydown: onListKeydown,\n } as Record<string, Function> // typescript doesn't know about vue's event merging\n}\n"],"mappings":"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","ignoreList":[]}