vuetify 3.2.3 → 3.2.5

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 (204) hide show
  1. package/dist/json/attributes.json +9 -9
  2. package/dist/json/web-types.json +11 -11
  3. package/dist/vuetify-labs.css +505 -502
  4. package/dist/vuetify-labs.d.ts +4918 -437
  5. package/dist/vuetify-labs.esm.js +142 -124
  6. package/dist/vuetify-labs.esm.js.map +1 -1
  7. package/dist/vuetify-labs.js +142 -124
  8. package/dist/vuetify-labs.min.css +2 -2
  9. package/dist/vuetify.css +10 -7
  10. package/dist/vuetify.d.ts +3796 -248
  11. package/dist/vuetify.esm.js +131 -115
  12. package/dist/vuetify.esm.js.map +1 -1
  13. package/dist/vuetify.js +131 -115
  14. package/dist/vuetify.js.map +1 -1
  15. package/dist/vuetify.min.css +2 -2
  16. package/dist/vuetify.min.js +469 -469
  17. package/dist/vuetify.min.js.map +1 -1
  18. package/lib/components/VAlert/VAlert.mjs +1 -2
  19. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  20. package/lib/components/VAlert/index.d.ts +52 -0
  21. package/lib/components/VApp/index.d.ts +16 -0
  22. package/lib/components/VAppBar/VAppBar.mjs +2 -2
  23. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  24. package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -2
  25. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  26. package/lib/components/VAppBar/VAppBarTitle.mjs +1 -2
  27. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  28. package/lib/components/VAppBar/index.d.ts +84 -0
  29. package/lib/components/VAutocomplete/VAutocomplete.mjs +5 -5
  30. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  31. package/lib/components/VAutocomplete/index.d.ts +76 -12
  32. package/lib/components/VAvatar/index.d.ts +16 -0
  33. package/lib/components/VBadge/index.d.ts +20 -0
  34. package/lib/components/VBanner/index.d.ts +60 -0
  35. package/lib/components/VBottomNavigation/index.d.ts +16 -0
  36. package/lib/components/VBreadcrumbs/index.d.ts +39 -3
  37. package/lib/components/VBtn/index.d.ts +28 -0
  38. package/lib/components/VBtnGroup/index.d.ts +16 -0
  39. package/lib/components/VBtnToggle/index.d.ts +16 -0
  40. package/lib/components/VCard/index.d.ts +144 -0
  41. package/lib/components/VCarousel/index.d.ts +128 -0
  42. package/lib/components/VCheckbox/index.d.ts +84 -0
  43. package/lib/components/VChip/VChip.css +4 -3
  44. package/lib/components/VChip/VChip.sass +3 -3
  45. package/lib/components/VChip/index.d.ts +28 -0
  46. package/lib/components/VChipGroup/index.d.ts +16 -0
  47. package/lib/components/VCode/index.d.ts +16 -0
  48. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -5
  49. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  50. package/lib/components/VCombobox/VCombobox.mjs +5 -5
  51. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  52. package/lib/components/VCombobox/index.d.ts +76 -12
  53. package/lib/components/VCounter/index.d.ts +16 -0
  54. package/lib/components/VDefaultsProvider/index.d.ts +16 -0
  55. package/lib/components/VDialog/index.d.ts +133 -3
  56. package/lib/components/VDivider/index.d.ts +16 -0
  57. package/lib/components/VExpansionPanel/index.d.ts +76 -0
  58. package/lib/components/VField/index.d.ts +23 -3
  59. package/lib/components/VFileInput/index.d.ts +118 -3
  60. package/lib/components/VFooter/VFooter.mjs +2 -2
  61. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  62. package/lib/components/VFooter/index.d.ts +16 -0
  63. package/lib/components/VForm/index.d.ts +19 -3
  64. package/lib/components/VGrid/index.d.ts +64 -0
  65. package/lib/components/VHover/index.d.ts +28 -0
  66. package/lib/components/VIcon/index.d.ts +32 -0
  67. package/lib/components/VImg/VImg.mjs +6 -6
  68. package/lib/components/VImg/VImg.mjs.map +1 -1
  69. package/lib/components/VImg/index.d.ts +40 -12
  70. package/lib/components/VInput/index.d.ts +28 -0
  71. package/lib/components/VItemGroup/index.d.ts +32 -0
  72. package/lib/components/VKbd/index.d.ts +16 -0
  73. package/lib/components/VLabel/index.d.ts +16 -0
  74. package/lib/components/VLayout/index.d.ts +32 -0
  75. package/lib/components/VLazy/index.d.ts +16 -0
  76. package/lib/components/VList/VList.mjs +2 -2
  77. package/lib/components/VList/VList.mjs.map +1 -1
  78. package/lib/components/VList/index.d.ts +176 -12
  79. package/lib/components/VList/list.mjs +4 -4
  80. package/lib/components/VList/list.mjs.map +1 -1
  81. package/lib/components/VLocaleProvider/index.d.ts +16 -0
  82. package/lib/components/VMain/index.d.ts +16 -0
  83. package/lib/components/VMenu/VMenu.mjs +3 -3
  84. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  85. package/lib/components/VMenu/index.d.ts +136 -6
  86. package/lib/components/VMessages/index.d.ts +16 -0
  87. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +2 -0
  88. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +2 -2
  89. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  90. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +2 -0
  91. package/lib/components/VNavigationDrawer/index.d.ts +31 -3
  92. package/lib/components/VNavigationDrawer/sticky.mjs +5 -4
  93. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  94. package/lib/components/VNavigationDrawer/touch.mjs +4 -4
  95. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  96. package/lib/components/VOverlay/index.d.ts +40 -0
  97. package/lib/components/VOverlay/locationStrategies.mjs +1 -1
  98. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  99. package/lib/components/VPagination/VPagination.mjs +2 -2
  100. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  101. package/lib/components/VPagination/index.d.ts +32 -0
  102. package/lib/components/VParallax/index.d.ts +28 -0
  103. package/lib/components/VProgressCircular/index.d.ts +16 -0
  104. package/lib/components/VProgressLinear/index.d.ts +28 -0
  105. package/lib/components/VRadio/index.d.ts +36 -0
  106. package/lib/components/VRadioGroup/index.d.ts +48 -0
  107. package/lib/components/VRangeSlider/index.d.ts +36 -0
  108. package/lib/components/VRating/VRating.mjs +6 -3
  109. package/lib/components/VRating/VRating.mjs.map +1 -1
  110. package/lib/components/VRating/index.d.ts +20 -0
  111. package/lib/components/VResponsive/index.d.ts +20 -0
  112. package/lib/components/VSelect/VSelect.mjs +2 -2
  113. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  114. package/lib/components/VSelect/index.d.ts +76 -12
  115. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
  116. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  117. package/lib/components/VSelectionControl/index.d.ts +10 -6
  118. package/lib/components/VSelectionControlGroup/index.d.ts +16 -0
  119. package/lib/components/VSheet/index.d.ts +16 -0
  120. package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
  121. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  122. package/lib/components/VSlideGroup/index.d.ts +63 -3
  123. package/lib/components/VSlider/index.d.ts +36 -0
  124. package/lib/components/VSlider/slider.mjs +3 -3
  125. package/lib/components/VSlider/slider.mjs.map +1 -1
  126. package/lib/components/VSnackbar/index.d.ts +129 -3
  127. package/lib/components/VSwitch/VSwitch.css +3 -3
  128. package/lib/components/VSwitch/VSwitch.sass +4 -3
  129. package/lib/components/VSwitch/index.d.ts +52 -0
  130. package/lib/components/VSystemBar/VSystemBar.mjs +2 -2
  131. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  132. package/lib/components/VSystemBar/index.d.ts +16 -0
  133. package/lib/components/VTable/index.d.ts +28 -0
  134. package/lib/components/VTabs/VTab.mjs +4 -5
  135. package/lib/components/VTabs/VTab.mjs.map +1 -1
  136. package/lib/components/VTabs/index.d.ts +32 -0
  137. package/lib/components/VTextField/index.d.ts +121 -6
  138. package/lib/components/VTextarea/VTextarea.mjs +6 -3
  139. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  140. package/lib/components/VTextarea/index.d.ts +110 -3
  141. package/lib/components/VThemeProvider/index.d.ts +16 -0
  142. package/lib/components/VTimeline/VTimelineItem.mjs +2 -2
  143. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  144. package/lib/components/VTimeline/index.d.ts +40 -0
  145. package/lib/components/VToolbar/VToolbar.mjs +2 -2
  146. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  147. package/lib/components/VToolbar/index.d.ts +72 -0
  148. package/lib/components/VTooltip/index.d.ts +133 -3
  149. package/lib/components/VValidation/index.d.ts +16 -0
  150. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +3 -3
  151. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  152. package/lib/components/VVirtualScroll/index.d.ts +7 -3
  153. package/lib/components/VWindow/VWindow.mjs +3 -3
  154. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  155. package/lib/components/VWindow/VWindowItem.mjs +3 -3
  156. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  157. package/lib/components/VWindow/index.d.ts +76 -0
  158. package/lib/components/index.d.ts +3786 -245
  159. package/lib/components/transitions/index.d.ts +256 -0
  160. package/lib/composables/display.mjs +3 -3
  161. package/lib/composables/display.mjs.map +1 -1
  162. package/lib/composables/form.mjs +4 -4
  163. package/lib/composables/form.mjs.map +1 -1
  164. package/lib/composables/hydration.mjs +6 -6
  165. package/lib/composables/hydration.mjs.map +1 -1
  166. package/lib/composables/intersectionObserver.mjs +2 -2
  167. package/lib/composables/intersectionObserver.mjs.map +1 -1
  168. package/lib/composables/layout.mjs +3 -3
  169. package/lib/composables/layout.mjs.map +1 -1
  170. package/lib/composables/lazy.mjs +2 -2
  171. package/lib/composables/lazy.mjs.map +1 -1
  172. package/lib/composables/nested/nested.mjs +5 -4
  173. package/lib/composables/nested/nested.mjs.map +1 -1
  174. package/lib/composables/scroll.mjs +6 -6
  175. package/lib/composables/scroll.mjs.map +1 -1
  176. package/lib/composables/ssrBoot.mjs +2 -2
  177. package/lib/composables/ssrBoot.mjs.map +1 -1
  178. package/lib/composables/stack.mjs +5 -4
  179. package/lib/composables/stack.mjs.map +1 -1
  180. package/lib/composables/transition.mjs +5 -2
  181. package/lib/composables/transition.mjs.map +1 -1
  182. package/lib/composables/validation.mjs +3 -3
  183. package/lib/composables/validation.mjs.map +1 -1
  184. package/lib/entry-bundler.mjs +1 -1
  185. package/lib/framework.mjs +1 -1
  186. package/lib/index.d.ts +9 -2
  187. package/lib/labs/VDataTable/VDataTable.mjs +2 -1
  188. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  189. package/lib/labs/VDataTable/VDataTableServer.mjs +2 -1
  190. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  191. package/lib/labs/VDataTable/VDataTableVirtual.mjs +6 -6
  192. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  193. package/lib/labs/VDataTable/composables/virtual.mjs +3 -3
  194. package/lib/labs/VDataTable/composables/virtual.mjs.map +1 -1
  195. package/lib/labs/VDataTable/index.d.ts +894 -2
  196. package/lib/labs/VInfiniteScroll/index.d.ts +32 -0
  197. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  198. package/lib/labs/VSkeletonLoader/index.d.ts +25 -9
  199. package/lib/labs/components.d.ts +951 -11
  200. package/lib/locale/adapters/vuetify.mjs +8 -5
  201. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  202. package/lib/styles/settings/_variables.scss +3 -3
  203. package/lib/util/defineComponent.mjs.map +1 -1
  204. package/package.json +2 -2
@@ -28,6 +28,10 @@ declare const VMain: {
28
28
  } | undefined;
29
29
  } & {
30
30
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
31
+ } & {
32
+ $slots?: {
33
+ default?: (() => vue.VNodeChild) | undefined;
34
+ } | undefined;
31
35
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "style" | "tag" | "scrollable">;
32
36
  $attrs: {
33
37
  [x: string]: unknown;
@@ -57,6 +61,10 @@ declare const VMain: {
57
61
  } | undefined;
58
62
  } & {
59
63
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
64
+ } & {
65
+ $slots?: {
66
+ default?: (() => vue.VNodeChild) | undefined;
67
+ } | undefined;
60
68
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
61
69
  style: vue.StyleValue;
62
70
  tag: string;
@@ -96,6 +104,10 @@ declare const VMain: {
96
104
  } | undefined;
97
105
  } & {
98
106
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
107
+ } & {
108
+ $slots?: {
109
+ default?: (() => vue.VNodeChild) | undefined;
110
+ } | undefined;
99
111
  } & vue.ShallowUnwrapRef<{}> & {} & vue.ComponentCustomProperties & {};
100
112
  __isFragment?: undefined;
101
113
  __isTeleport?: undefined;
@@ -115,6 +127,10 @@ declare const VMain: {
115
127
  } | undefined;
116
128
  } & {
117
129
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
130
+ } & {
131
+ $slots?: {
132
+ default?: (() => vue.VNodeChild) | undefined;
133
+ } | undefined;
118
134
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
119
135
  style: vue.StyleValue;
120
136
  tag: string;
@@ -3,13 +3,13 @@ import { mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
3
3
  import "./VMenu.css";
4
4
 
5
5
  // Components
6
- import { VDialogTransition } from "../transitions/index.mjs";
7
6
  import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
7
+ import { VDialogTransition } from "../transitions/index.mjs";
8
8
  import { VOverlay } from "../VOverlay/index.mjs"; // Composables
9
9
  import { forwardRefs } from "../../composables/forwardRefs.mjs";
10
10
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
11
11
  import { useScopeId } from "../../composables/scopeId.mjs"; // Utilities
12
- import { computed, inject, mergeProps, provide, ref, watch } from 'vue';
12
+ import { computed, inject, mergeProps, provide, ref, shallowRef, watch } from 'vue';
13
13
  import { genericComponent, getUid, omit, propsFactory, useRender } from "../../util/index.mjs";
14
14
  import { makeVOverlayProps } from "../VOverlay/VOverlay.mjs";
15
15
  import { VMenuSymbol } from "./shared.mjs"; // Types
@@ -47,7 +47,7 @@ export const VMenu = genericComponent()({
47
47
  const id = computed(() => props.id || `v-menu-${uid}`);
48
48
  const overlay = ref();
49
49
  const parent = inject(VMenuSymbol, null);
50
- const openChildren = ref(0);
50
+ const openChildren = shallowRef(0);
51
51
  provide(VMenuSymbol, {
52
52
  register() {
53
53
  ++openChildren.value;
@@ -1 +1 @@
1
- {"version":3,"file":"VMenu.mjs","names":["VDialogTransition","VDefaultsProvider","VOverlay","forwardRefs","useProxiedModel","useScopeId","computed","inject","mergeProps","provide","ref","watch","genericComponent","getUid","omit","propsFactory","useRender","makeVOverlayProps","VMenuSymbol","makeVMenuProps","id","String","closeDelay","closeOnContentClick","locationStrategy","openDelay","scrim","scrollStrategy","transition","component","VMenu","name","props","emits","value","setup","_ref","slots","isActive","scopeId","uid","overlay","parent","openChildren","register","unregister","closeParents","setTimeout","val","onClickOutside","activatorProps","overlayProps","filterProps","_createVNode","_mergeProps","class","style","$event","activator","default","_len","arguments","length","args","Array","_key","ΨopenChildren"],"sources":["../../../src/components/VMenu/VMenu.tsx"],"sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { type Component, computed, inject, mergeProps, provide, ref, watch } from 'vue'\nimport { genericComponent, getUid, omit, propsFactory, useRender } from '@/util'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\nimport { VMenuSymbol } from './shared'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVMenuProps = propsFactory({\n // TODO\n // disableKeys: Boolean,\n id: String,\n\n ...omit(makeVOverlayProps({\n closeDelay: 250,\n closeOnContentClick: true,\n locationStrategy: 'connected' as const,\n openDelay: 300,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: { component: VDialogTransition as Component },\n }), ['absolute']),\n}, 'v-menu')\n\nexport const VMenu = genericComponent<OverlaySlots>()({\n name: 'VMenu',\n\n props: makeVMenuProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-menu-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const parent = inject(VMenuSymbol, null)\n const openChildren = ref(0)\n provide(VMenuSymbol, {\n register () {\n ++openChildren.value\n },\n unregister () {\n --openChildren.value\n },\n closeParents () {\n setTimeout(() => {\n if (!openChildren.value) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n watch(isActive, val => {\n val ? parent?.register() : parent?.unregister()\n })\n\n function onClickOutside () {\n parent?.closeParents()\n }\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const [overlayProps] = VOverlay.filterProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-menu',\n props.class,\n ]}\n style={ props.style }\n { ...overlayProps }\n v-model={ isActive.value }\n absolute\n activatorProps={ activatorProps.value }\n onClick:outside={ onClickOutside }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root>\n { slots.default?.(...args) }\n </VDefaultsProvider>\n ),\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({ id, ΨopenChildren: openChildren }, overlay)\n },\n})\n\nexport type VMenu = InstanceType<typeof VMenu>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VMenu.mjs","names":["VDefaultsProvider","VDialogTransition","VOverlay","forwardRefs","useProxiedModel","useScopeId","computed","inject","mergeProps","provide","ref","shallowRef","watch","genericComponent","getUid","omit","propsFactory","useRender","makeVOverlayProps","VMenuSymbol","makeVMenuProps","id","String","closeDelay","closeOnContentClick","locationStrategy","openDelay","scrim","scrollStrategy","transition","component","VMenu","name","props","emits","value","setup","_ref","slots","isActive","scopeId","uid","overlay","parent","openChildren","register","unregister","closeParents","setTimeout","val","onClickOutside","activatorProps","overlayProps","filterProps","_createVNode","_mergeProps","class","style","$event","activator","default","_len","arguments","length","args","Array","_key","ΨopenChildren"],"sources":["../../../src/components/VMenu/VMenu.tsx"],"sourcesContent":["// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VDialogTransition } from '@/components/transitions'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { type Component, computed, inject, mergeProps, provide, ref, shallowRef, watch } from 'vue'\nimport { genericComponent, getUid, omit, propsFactory, useRender } from '@/util'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\nimport { VMenuSymbol } from './shared'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVMenuProps = propsFactory({\n // TODO\n // disableKeys: Boolean,\n id: String,\n\n ...omit(makeVOverlayProps({\n closeDelay: 250,\n closeOnContentClick: true,\n locationStrategy: 'connected' as const,\n openDelay: 300,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: { component: VDialogTransition as Component },\n }), ['absolute']),\n}, 'v-menu')\n\nexport const VMenu = genericComponent<OverlaySlots>()({\n name: 'VMenu',\n\n props: makeVMenuProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-menu-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const parent = inject(VMenuSymbol, null)\n const openChildren = shallowRef(0)\n provide(VMenuSymbol, {\n register () {\n ++openChildren.value\n },\n unregister () {\n --openChildren.value\n },\n closeParents () {\n setTimeout(() => {\n if (!openChildren.value) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n watch(isActive, val => {\n val ? parent?.register() : parent?.unregister()\n })\n\n function onClickOutside () {\n parent?.closeParents()\n }\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const [overlayProps] = VOverlay.filterProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n class={[\n 'v-menu',\n props.class,\n ]}\n style={ props.style }\n { ...overlayProps }\n v-model={ isActive.value }\n absolute\n activatorProps={ activatorProps.value }\n onClick:outside={ onClickOutside }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root>\n { slots.default?.(...args) }\n </VDefaultsProvider>\n ),\n }}\n </VOverlay>\n )\n })\n\n return forwardRefs({ id, ΨopenChildren: openChildren }, overlay)\n },\n})\n\nexport type VMenu = InstanceType<typeof VMenu>\n"],"mappings":"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"}
@@ -190,6 +190,16 @@ declare const VMenu: {
190
190
  isActive: boolean;
191
191
  props: Record<string, any>;
192
192
  }) => vue.VNodeChild) | undefined;
193
+ } & {
194
+ $slots?: {
195
+ default?: ((args_0: {
196
+ isActive: vue.Ref<boolean>;
197
+ }) => vue.VNodeChild) | undefined;
198
+ activator?: ((args_0: {
199
+ isActive: boolean;
200
+ props: Record<string, any>;
201
+ }) => vue.VNodeChild) | undefined;
202
+ } | undefined;
193
203
  } & {
194
204
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
195
205
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "closeDelay" | "openDelay" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim">;
@@ -279,11 +289,21 @@ declare const VMenu: {
279
289
  isActive: boolean;
280
290
  props: Record<string, any>;
281
291
  }) => vue.VNodeChild) | undefined;
292
+ } & {
293
+ $slots?: {
294
+ default?: ((args_0: {
295
+ isActive: vue.Ref<boolean>;
296
+ }) => vue.VNodeChild) | undefined;
297
+ activator?: ((args_0: {
298
+ isActive: boolean;
299
+ props: Record<string, any>;
300
+ }) => vue.VNodeChild) | undefined;
301
+ } | undefined;
282
302
  } & {
283
303
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
284
304
  }, {
285
305
  id: vue.ComputedRef<string>;
286
- ΨopenChildren: vue.Ref<number>;
306
+ ΨopenChildren: vue.ShallowRef<number>;
287
307
  } & Omit<Omit<{
288
308
  $: vue.ComponentInternalInstance;
289
309
  $data: {};
@@ -386,6 +406,16 @@ declare const VMenu: {
386
406
  isActive: boolean;
387
407
  props: Record<string, any>;
388
408
  }) => vue.VNodeChild) | undefined;
409
+ } & {
410
+ $slots?: {
411
+ default?: ((args_0: {
412
+ isActive: vue.Ref<boolean>;
413
+ }) => vue.VNodeChild) | undefined;
414
+ activator?: ((args_0: {
415
+ isActive: boolean;
416
+ props: Record<string, any>;
417
+ }) => vue.VNodeChild) | undefined;
418
+ } | undefined;
389
419
  } & {
390
420
  onAfterLeave?: (() => any) | undefined;
391
421
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -476,6 +506,16 @@ declare const VMenu: {
476
506
  isActive: boolean;
477
507
  props: Record<string, any>;
478
508
  }) => vue.VNodeChild) | undefined;
509
+ } & {
510
+ $slots?: {
511
+ default?: ((args_0: {
512
+ isActive: vue.Ref<boolean>;
513
+ }) => vue.VNodeChild) | undefined;
514
+ activator?: ((args_0: {
515
+ isActive: boolean;
516
+ props: Record<string, any>;
517
+ }) => vue.VNodeChild) | undefined;
518
+ } | undefined;
479
519
  } & {
480
520
  onAfterLeave?: (() => any) | undefined;
481
521
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -610,6 +650,16 @@ declare const VMenu: {
610
650
  isActive: boolean;
611
651
  props: Record<string, any>;
612
652
  }) => vue.VNodeChild) | undefined;
653
+ } & {
654
+ $slots?: {
655
+ default?: ((args_0: {
656
+ isActive: vue.Ref<boolean>;
657
+ }) => vue.VNodeChild) | undefined;
658
+ activator?: ((args_0: {
659
+ isActive: boolean;
660
+ props: Record<string, any>;
661
+ }) => vue.VNodeChild) | undefined;
662
+ } | undefined;
613
663
  } & {
614
664
  onAfterLeave?: (() => any) | undefined;
615
665
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -621,7 +671,7 @@ declare const VMenu: {
621
671
  globalTop: Readonly<vue.Ref<boolean>>;
622
672
  localTop: vue.ComputedRef<boolean>;
623
673
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
624
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
674
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "$slots" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
625
675
  'update:modelValue': (value: boolean) => boolean;
626
676
  }, string, {
627
677
  location: Anchor;
@@ -745,11 +795,21 @@ declare const VMenu: {
745
795
  isActive: boolean;
746
796
  props: Record<string, any>;
747
797
  }) => vue.VNodeChild) | undefined;
798
+ } & {
799
+ $slots?: {
800
+ default?: ((args_0: {
801
+ isActive: vue.Ref<boolean>;
802
+ }) => vue.VNodeChild) | undefined;
803
+ activator?: ((args_0: {
804
+ isActive: boolean;
805
+ props: Record<string, any>;
806
+ }) => vue.VNodeChild) | undefined;
807
+ } | undefined;
748
808
  } & {
749
809
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
750
810
  } & vue.ShallowUnwrapRef<{
751
811
  id: vue.ComputedRef<string>;
752
- ΨopenChildren: vue.Ref<number>;
812
+ ΨopenChildren: vue.ShallowRef<number>;
753
813
  } & Omit<Omit<{
754
814
  $: vue.ComponentInternalInstance;
755
815
  $data: {};
@@ -852,6 +912,16 @@ declare const VMenu: {
852
912
  isActive: boolean;
853
913
  props: Record<string, any>;
854
914
  }) => vue.VNodeChild) | undefined;
915
+ } & {
916
+ $slots?: {
917
+ default?: ((args_0: {
918
+ isActive: vue.Ref<boolean>;
919
+ }) => vue.VNodeChild) | undefined;
920
+ activator?: ((args_0: {
921
+ isActive: boolean;
922
+ props: Record<string, any>;
923
+ }) => vue.VNodeChild) | undefined;
924
+ } | undefined;
855
925
  } & {
856
926
  onAfterLeave?: (() => any) | undefined;
857
927
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -942,6 +1012,16 @@ declare const VMenu: {
942
1012
  isActive: boolean;
943
1013
  props: Record<string, any>;
944
1014
  }) => vue.VNodeChild) | undefined;
1015
+ } & {
1016
+ $slots?: {
1017
+ default?: ((args_0: {
1018
+ isActive: vue.Ref<boolean>;
1019
+ }) => vue.VNodeChild) | undefined;
1020
+ activator?: ((args_0: {
1021
+ isActive: boolean;
1022
+ props: Record<string, any>;
1023
+ }) => vue.VNodeChild) | undefined;
1024
+ } | undefined;
945
1025
  } & {
946
1026
  onAfterLeave?: (() => any) | undefined;
947
1027
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -1076,6 +1156,16 @@ declare const VMenu: {
1076
1156
  isActive: boolean;
1077
1157
  props: Record<string, any>;
1078
1158
  }) => vue.VNodeChild) | undefined;
1159
+ } & {
1160
+ $slots?: {
1161
+ default?: ((args_0: {
1162
+ isActive: vue.Ref<boolean>;
1163
+ }) => vue.VNodeChild) | undefined;
1164
+ activator?: ((args_0: {
1165
+ isActive: boolean;
1166
+ props: Record<string, any>;
1167
+ }) => vue.VNodeChild) | undefined;
1168
+ } | undefined;
1079
1169
  } & {
1080
1170
  onAfterLeave?: (() => any) | undefined;
1081
1171
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -1087,7 +1177,7 @@ declare const VMenu: {
1087
1177
  globalTop: Readonly<vue.Ref<boolean>>;
1088
1178
  localTop: vue.ComputedRef<boolean>;
1089
1179
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
1090
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
1180
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "$slots" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
1091
1181
  __isFragment?: undefined;
1092
1182
  __isTeleport?: undefined;
1093
1183
  __isSuspense?: undefined;
@@ -1164,11 +1254,21 @@ declare const VMenu: {
1164
1254
  isActive: boolean;
1165
1255
  props: Record<string, any>;
1166
1256
  }) => vue.VNodeChild) | undefined;
1257
+ } & {
1258
+ $slots?: {
1259
+ default?: ((args_0: {
1260
+ isActive: vue.Ref<boolean>;
1261
+ }) => vue.VNodeChild) | undefined;
1262
+ activator?: ((args_0: {
1263
+ isActive: boolean;
1264
+ props: Record<string, any>;
1265
+ }) => vue.VNodeChild) | undefined;
1266
+ } | undefined;
1167
1267
  } & {
1168
1268
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1169
1269
  }, {
1170
1270
  id: vue.ComputedRef<string>;
1171
- ΨopenChildren: vue.Ref<number>;
1271
+ ΨopenChildren: vue.ShallowRef<number>;
1172
1272
  } & Omit<Omit<{
1173
1273
  $: vue.ComponentInternalInstance;
1174
1274
  $data: {};
@@ -1271,6 +1371,16 @@ declare const VMenu: {
1271
1371
  isActive: boolean;
1272
1372
  props: Record<string, any>;
1273
1373
  }) => vue.VNodeChild) | undefined;
1374
+ } & {
1375
+ $slots?: {
1376
+ default?: ((args_0: {
1377
+ isActive: vue.Ref<boolean>;
1378
+ }) => vue.VNodeChild) | undefined;
1379
+ activator?: ((args_0: {
1380
+ isActive: boolean;
1381
+ props: Record<string, any>;
1382
+ }) => vue.VNodeChild) | undefined;
1383
+ } | undefined;
1274
1384
  } & {
1275
1385
  onAfterLeave?: (() => any) | undefined;
1276
1386
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -1361,6 +1471,16 @@ declare const VMenu: {
1361
1471
  isActive: boolean;
1362
1472
  props: Record<string, any>;
1363
1473
  }) => vue.VNodeChild) | undefined;
1474
+ } & {
1475
+ $slots?: {
1476
+ default?: ((args_0: {
1477
+ isActive: vue.Ref<boolean>;
1478
+ }) => vue.VNodeChild) | undefined;
1479
+ activator?: ((args_0: {
1480
+ isActive: boolean;
1481
+ props: Record<string, any>;
1482
+ }) => vue.VNodeChild) | undefined;
1483
+ } | undefined;
1364
1484
  } & {
1365
1485
  onAfterLeave?: (() => any) | undefined;
1366
1486
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -1495,6 +1615,16 @@ declare const VMenu: {
1495
1615
  isActive: boolean;
1496
1616
  props: Record<string, any>;
1497
1617
  }) => vue.VNodeChild) | undefined;
1618
+ } & {
1619
+ $slots?: {
1620
+ default?: ((args_0: {
1621
+ isActive: vue.Ref<boolean>;
1622
+ }) => vue.VNodeChild) | undefined;
1623
+ activator?: ((args_0: {
1624
+ isActive: boolean;
1625
+ props: Record<string, any>;
1626
+ }) => vue.VNodeChild) | undefined;
1627
+ } | undefined;
1498
1628
  } & {
1499
1629
  onAfterLeave?: (() => any) | undefined;
1500
1630
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -1506,7 +1636,7 @@ declare const VMenu: {
1506
1636
  globalTop: Readonly<vue.Ref<boolean>>;
1507
1637
  localTop: vue.ComputedRef<boolean>;
1508
1638
  updateLocation: vue.Ref<((e: Event) => void) | undefined>;
1509
- }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1639
+ }> & {} & vue.ComponentCustomProperties & {}, "offset" | "key" | "height" | "width" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "class" | "onAfterLeave" | "$children" | "ref" | "ref_for" | "ref_key" | "theme" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:default" | "v-slots" | "contentClass" | "$slots" | "onUpdate:modelValue" | "activator" | "v-slot:activator" | "closeDelay" | "openDelay" | "contentProps" | "attach" | "onClick:outside" | ("absolute" | "location" | "origin" | "transition" | "zIndex" | "style" | "eager" | "disabled" | "modelValue" | "activatorProps" | "openOnClick" | "openOnHover" | "openOnFocus" | "closeOnContentClick" | "locationStrategy" | "scrollStrategy" | "closeOnBack" | "contained" | "noClickAnimation" | "persistent" | "scrim" | "_disableGlobalStack")>, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1510
1640
  'update:modelValue': (value: boolean) => boolean;
1511
1641
  }, string, {
1512
1642
  location: Anchor;
@@ -46,6 +46,10 @@ declare const VMessages: {
46
46
  } | undefined;
47
47
  } & {
48
48
  "v-slot:message"?: false | ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
49
+ } & {
50
+ $slots?: {
51
+ message?: ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
52
+ } | undefined;
49
53
  } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "active" | "transition" | "style" | "messages">;
50
54
  $attrs: {
51
55
  [x: string]: unknown;
@@ -83,6 +87,10 @@ declare const VMessages: {
83
87
  } | undefined;
84
88
  } & {
85
89
  "v-slot:message"?: false | ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
90
+ } & {
91
+ $slots?: {
92
+ message?: ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
93
+ } | undefined;
86
94
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
87
95
  active: boolean;
88
96
  transition: {
@@ -137,6 +145,10 @@ declare const VMessages: {
137
145
  } | undefined;
138
146
  } & {
139
147
  "v-slot:message"?: false | ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
148
+ } & {
149
+ $slots?: {
150
+ message?: ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
151
+ } | undefined;
140
152
  } & vue.ShallowUnwrapRef<{}> & {} & vue.ComponentCustomProperties & {};
141
153
  __isFragment?: undefined;
142
154
  __isTeleport?: undefined;
@@ -164,6 +176,10 @@ declare const VMessages: {
164
176
  } | undefined;
165
177
  } & {
166
178
  "v-slot:message"?: false | ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
179
+ } & {
180
+ $slots?: {
181
+ message?: ((args_0: VMessageSlot) => vue.VNodeChild) | undefined;
182
+ } | undefined;
167
183
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
168
184
  active: boolean;
169
185
  transition: {
@@ -83,6 +83,8 @@
83
83
 
84
84
  .v-navigation-drawer__scrim {
85
85
  position: absolute;
86
+ top: 0;
87
+ left: 0;
86
88
  width: 100%;
87
89
  height: 100%;
88
90
  background: black;
@@ -19,7 +19,7 @@ import { useRtl } from "../../composables/index.mjs";
19
19
  import { useSsrBoot } from "../../composables/ssrBoot.mjs";
20
20
  import { useSticky } from "./sticky.mjs";
21
21
  import { useTouch } from "./touch.mjs"; // Utilities
22
- import { computed, nextTick, onBeforeMount, ref, toRef, Transition, watch } from 'vue';
22
+ import { computed, nextTick, onBeforeMount, ref, shallowRef, toRef, Transition, watch } from 'vue';
23
23
  import { genericComponent, propsFactory, toPhysical, useRender } from "../../util/index.mjs"; // Types
24
24
  const locations = ['start', 'end', 'left', 'right', 'top', 'bottom'];
25
25
  export const makeVNavigationDrawerProps = propsFactory({
@@ -109,7 +109,7 @@ export const VNavigationDrawer = genericComponent()({
109
109
  ssrBootStyles
110
110
  } = useSsrBoot();
111
111
  const rootEl = ref();
112
- const isHovering = ref(false);
112
+ const isHovering = shallowRef(false);
113
113
  const width = computed(() => {
114
114
  return props.rail && props.expandOnHover && isHovering.value ? Number(props.width) : Number(props.rail ? props.railWidth : props.width);
115
115
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VNavigationDrawer.mjs","names":["makeBorderProps","useBorder","makeComponentProps","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","provideDefaults","useBackgroundColor","useDisplay","useProxiedModel","useRouter","useRtl","useSsrBoot","useSticky","useTouch","computed","nextTick","onBeforeMount","ref","toRef","Transition","watch","genericComponent","propsFactory","toPhysical","useRender","locations","makeVNavigationDrawerProps","color","String","disableResizeWatcher","Boolean","disableRouteWatcher","expandOnHover","floating","modelValue","type","default","permanent","rail","railWidth","Number","scrim","image","temporary","touchless","width","location","validator","value","includes","sticky","tag","VNavigationDrawer","name","props","emits","val","setup","_ref","attrs","emit","slots","isRtl","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","mobile","roundedClasses","router","isActive","v","ssrBootStyles","rootEl","isHovering","isTemporary","isSticky","currentRoute","isDragging","dragProgress","dragStyles","position","layoutSize","size","layoutItemStyles","layoutItemScrimStyles","id","order","parseInt","elementSize","active","disableTransitions","absolute","isStuck","stickyStyles","scrimColor","scrimStyles","opacity","transition","undefined","VList","bgColor","onMouseenter","onMouseleave","hasImage","_createVNode","_Fragment","_mergeProps","class","style","prepend","append","onClick"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useDisplay } from '@/composables/display'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRouter } from '@/composables/router'\nimport { useRtl } from '@/composables'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { useSticky } from './sticky'\nimport { useTouch } from './touch'\n\n// Utilities\nimport { computed, nextTick, onBeforeMount, ref, toRef, Transition, watch } from 'vue'\nimport { genericComponent, propsFactory, toPhysical, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VNavigationDrawerImageSlot = {\n image: string\n}\n\nexport type VNavigationDrawerSlots = {\n default: []\n prepend: []\n append: []\n image: [VNavigationDrawerImageSlot]\n}\n\nconst locations = ['start', 'end', 'left', 'right', 'top', 'bottom'] as const\n\nexport const makeVNavigationDrawerProps = propsFactory({\n color: String,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n permanent: Boolean,\n rail: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n railWidth: {\n type: [Number, String],\n default: 56,\n },\n scrim: {\n type: [String, Boolean],\n default: true,\n },\n image: String,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n location: {\n type: String as PropType<typeof locations[number]>,\n default: 'start',\n validator: (value: any) => locations.includes(value),\n },\n sticky: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n}, 'v-navigation-drawer')\n\nexport const VNavigationDrawer = genericComponent<VNavigationDrawerSlots>()({\n name: 'VNavigationDrawer',\n\n props: makeVNavigationDrawerProps(),\n\n emits: {\n 'update:modelValue': (val: boolean) => true,\n 'update:rail': (val: boolean) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { mobile } = useDisplay()\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const { ssrBootStyles } = useSsrBoot()\n\n const rootEl = ref<HTMLElement>()\n const isHovering = ref(false)\n\n const width = computed(() => {\n return (props.rail && props.expandOnHover && isHovering.value)\n ? Number(props.width)\n : Number(props.rail ? props.railWidth : props.width)\n })\n const location = computed(() => {\n return toPhysical(props.location, isRtl.value) as 'left' | 'right' | 'bottom'\n })\n const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary))\n const isSticky = computed(() =>\n props.sticky &&\n !isTemporary.value &&\n location.value !== 'bottom'\n )\n\n if (props.expandOnHover && props.rail != null) {\n watch(isHovering, val => emit('update:rail', !val))\n }\n\n if (!props.disableResizeWatcher) {\n watch(isTemporary, val => !props.permanent && (nextTick(() => isActive.value = !val)))\n }\n\n if (!props.disableRouteWatcher && router) {\n watch(router.currentRoute, () => isTemporary.value && (isActive.value = false))\n }\n\n watch(() => props.permanent, val => {\n if (val) isActive.value = true\n })\n\n onBeforeMount(() => {\n if (props.modelValue != null || isTemporary.value) return\n\n isActive.value = props.permanent || !mobile.value\n })\n\n const { isDragging, dragProgress, dragStyles } = useTouch({\n isActive,\n isTemporary,\n width,\n touchless: toRef(props, 'touchless'),\n position: location,\n })\n\n const layoutSize = computed(() => {\n const size = isTemporary.value ? 0\n : props.rail && props.expandOnHover ? Number(props.railWidth)\n : width.value\n\n return isDragging.value ? size * dragProgress.value : size\n })\n\n const { layoutItemStyles, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: location,\n layoutSize,\n elementSize: width,\n active: computed(() => isActive.value || isDragging.value),\n disableTransitions: computed(() => isDragging.value),\n absolute: computed(() =>\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n props.absolute || (isSticky.value && typeof isStuck.value !== 'string')\n ),\n })\n\n const { isStuck, stickyStyles } = useSticky({ rootEl, isSticky, layoutItemStyles })\n\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const scrimStyles = computed(() => ({\n ...isDragging.value ? {\n opacity: dragProgress.value * 0.2,\n transition: 'none',\n } : undefined,\n ...layoutItemScrimStyles.value,\n }))\n\n provideDefaults({\n VList: {\n bgColor: 'transparent',\n },\n })\n\n function onMouseenter () {\n isHovering.value = true\n }\n function onMouseleave () {\n isHovering.value = false\n }\n\n useRender(() => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ onMouseenter }\n onMouseleave={ onMouseleave }\n class={[\n 'v-navigation-drawer',\n `v-navigation-drawer--${location.value}`,\n {\n 'v-navigation-drawer--expand-on-hover': props.expandOnHover,\n 'v-navigation-drawer--floating': props.floating,\n 'v-navigation-drawer--is-hovering': isHovering.value,\n 'v-navigation-drawer--rail': props.rail,\n 'v-navigation-drawer--temporary': isTemporary.value,\n 'v-navigation-drawer--active': isActive.value,\n 'v-navigation-drawer--sticky': isSticky.value,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n dragStyles.value,\n ssrBootStyles.value,\n stickyStyles.value,\n props.style,\n ]}\n { ...attrs }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-navigation-drawer__img\">\n { slots.image\n ? slots.image?.({ image: props.image })\n : (<img src={ props.image } alt=\"\" />)\n }\n </div>\n )}\n\n { slots.prepend && (\n <div class=\"v-navigation-drawer__prepend\">\n { slots.prepend?.() }\n </div>\n )}\n\n <div class=\"v-navigation-drawer__content\">\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-navigation-drawer__append\">\n { slots.append?.() }\n </div>\n )}\n </props.tag>\n\n <Transition name=\"fade-transition\">\n { isTemporary.value && (isDragging.value || isActive.value) && !!props.scrim && (\n <div\n class={['v-navigation-drawer__scrim', scrimColor.backgroundColorClasses.value]}\n style={[scrimStyles.value, scrimColor.backgroundColorStyles.value]}\n onClick={ () => isActive.value = false }\n />\n )}\n </Transition>\n </>\n )\n })\n\n return {\n isStuck,\n }\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,eAAe,EAAEC,SAAS;AAAA,SAC1BC,kBAAkB;AAAA,SAClBC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,mBAAmB,EAAEC,aAAa;AAAA,SAClCC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,eAAe;AAAA,SACfC,kBAAkB;AAAA,SAClBC,UAAU;AAAA,SACVC,eAAe;AAAA,SACfC,SAAS;AAAA,SACTC,MAAM;AAAA,SACNC,UAAU;AAAA,SACVC,SAAS;AAAA,SACTC,QAAQ,uBAEjB;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,aAAa,EAAEC,GAAG,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC7EC,gBAAgB,EAAEC,YAAY,EAAEC,UAAU,EAAEC,SAAS,gCAE9D;AAcA,MAAMC,SAAS,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAU;AAE7E,OAAO,MAAMC,0BAA0B,GAAGJ,YAAY,CAAC;EACrDK,KAAK,EAAEC,MAAM;EACbC,oBAAoB,EAAEC,OAAO;EAC7BC,mBAAmB,EAAED,OAAO;EAC5BE,aAAa,EAAEF,OAAO;EACtBG,QAAQ,EAAEH,OAAO;EACjBI,UAAU,EAAE;IACVC,IAAI,EAAEL,OAAmC;IACzCM,OAAO,EAAE;EACX,CAAC;EACDC,SAAS,EAAEP,OAAO;EAClBQ,IAAI,EAAE;IACJH,IAAI,EAAEL,OAAmC;IACzCM,OAAO,EAAE;EACX,CAAC;EACDG,SAAS,EAAE;IACTJ,IAAI,EAAE,CAACK,MAAM,EAAEZ,MAAM,CAAC;IACtBQ,OAAO,EAAE;EACX,CAAC;EACDK,KAAK,EAAE;IACLN,IAAI,EAAE,CAACP,MAAM,EAAEE,OAAO,CAAC;IACvBM,OAAO,EAAE;EACX,CAAC;EACDM,KAAK,EAAEd,MAAM;EACbe,SAAS,EAAEb,OAAO;EAClBc,SAAS,EAAEd,OAAO;EAClBe,KAAK,EAAE;IACLV,IAAI,EAAE,CAACK,MAAM,EAAEZ,MAAM,CAAC;IACtBQ,OAAO,EAAE;EACX,CAAC;EACDU,QAAQ,EAAE;IACRX,IAAI,EAAEP,MAA4C;IAClDQ,OAAO,EAAE,OAAO;IAChBW,SAAS,EAAGC,KAAU,IAAKvB,SAAS,CAACwB,QAAQ,CAACD,KAAK;EACrD,CAAC;EACDE,MAAM,EAAEpB,OAAO;EAEf,GAAGrC,eAAe,EAAE;EACpB,GAAGE,kBAAkB,EAAE;EACvB,GAAGC,kBAAkB,EAAE;EACvB,GAAGE,mBAAmB,EAAE;EACxB,GAAGE,gBAAgB,EAAE;EACrB,GAAGE,YAAY,CAAC;IAAEiD,GAAG,EAAE;EAAM,CAAC,CAAC;EAC/B,GAAGhD,cAAc;AACnB,CAAC,EAAE,qBAAqB,CAAC;AAEzB,OAAO,MAAMiD,iBAAiB,GAAG/B,gBAAgB,EAA0B,CAAC;EAC1EgC,IAAI,EAAE,mBAAmB;EAEzBC,KAAK,EAAE5B,0BAA0B,EAAE;EAEnC6B,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAY,IAAK,IAAI;IAC3C,aAAa,EAAGA,GAAY,IAAK;EACnC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAH,IAAA;IAClC,MAAM;MAAEI;IAAM,CAAC,GAAGpD,MAAM,EAAE;IAC1B,MAAM;MAAEqD;IAAa,CAAC,GAAG3D,YAAY,CAACkD,KAAK,CAAC;IAC5C,MAAM;MAAEU;IAAc,CAAC,GAAGtE,SAAS,CAAC4D,KAAK,CAAC;IAC1C,MAAM;MAAEW,sBAAsB;MAAEC;IAAsB,CAAC,GAAG5D,kBAAkB,CAACY,KAAK,CAACoC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnG,MAAM;MAAEa;IAAiB,CAAC,GAAGtE,YAAY,CAACyD,KAAK,CAAC;IAChD,MAAM;MAAEc;IAAO,CAAC,GAAG7D,UAAU,EAAE;IAC/B,MAAM;MAAE8D;IAAe,CAAC,GAAGpE,UAAU,CAACqD,KAAK,CAAC;IAC5C,MAAMgB,MAAM,GAAG7D,SAAS,EAAE;IAC1B,MAAM8D,QAAQ,GAAG/D,eAAe,CAAC8C,KAAK,EAAE,YAAY,EAAE,IAAI,EAAEkB,CAAC,IAAI,CAAC,CAACA,CAAC,CAAC;IACrE,MAAM;MAAEC;IAAc,CAAC,GAAG9D,UAAU,EAAE;IAEtC,MAAM+D,MAAM,GAAGzD,GAAG,EAAe;IACjC,MAAM0D,UAAU,GAAG1D,GAAG,CAAC,KAAK,CAAC;IAE7B,MAAM4B,KAAK,GAAG/B,QAAQ,CAAC,MAAM;MAC3B,OAAQwC,KAAK,CAAChB,IAAI,IAAIgB,KAAK,CAACtB,aAAa,IAAI2C,UAAU,CAAC3B,KAAK,GACzDR,MAAM,CAACc,KAAK,CAACT,KAAK,CAAC,GACnBL,MAAM,CAACc,KAAK,CAAChB,IAAI,GAAGgB,KAAK,CAACf,SAAS,GAAGe,KAAK,CAACT,KAAK,CAAC;IACxD,CAAC,CAAC;IACF,MAAMC,QAAQ,GAAGhC,QAAQ,CAAC,MAAM;MAC9B,OAAOS,UAAU,CAAC+B,KAAK,CAACR,QAAQ,EAAEgB,KAAK,CAACd,KAAK,CAAC;IAChD,CAAC,CAAC;IACF,MAAM4B,WAAW,GAAG9D,QAAQ,CAAC,MAAM,CAACwC,KAAK,CAACjB,SAAS,KAAK+B,MAAM,CAACpB,KAAK,IAAIM,KAAK,CAACX,SAAS,CAAC,CAAC;IACzF,MAAMkC,QAAQ,GAAG/D,QAAQ,CAAC,MACxBwC,KAAK,CAACJ,MAAM,IACZ,CAAC0B,WAAW,CAAC5B,KAAK,IAClBF,QAAQ,CAACE,KAAK,KAAK,QAAQ,CAC5B;IAED,IAAIM,KAAK,CAACtB,aAAa,IAAIsB,KAAK,CAAChB,IAAI,IAAI,IAAI,EAAE;MAC7ClB,KAAK,CAACuD,UAAU,EAAEnB,GAAG,IAAII,IAAI,CAAC,aAAa,EAAE,CAACJ,GAAG,CAAC,CAAC;IACrD;IAEA,IAAI,CAACF,KAAK,CAACzB,oBAAoB,EAAE;MAC/BT,KAAK,CAACwD,WAAW,EAAEpB,GAAG,IAAI,CAACF,KAAK,CAACjB,SAAS,IAAKtB,QAAQ,CAAC,MAAMwD,QAAQ,CAACvB,KAAK,GAAG,CAACQ,GAAG,CAAE,CAAC;IACxF;IAEA,IAAI,CAACF,KAAK,CAACvB,mBAAmB,IAAIuC,MAAM,EAAE;MACxClD,KAAK,CAACkD,MAAM,CAACQ,YAAY,EAAE,MAAMF,WAAW,CAAC5B,KAAK,KAAKuB,QAAQ,CAACvB,KAAK,GAAG,KAAK,CAAC,CAAC;IACjF;IAEA5B,KAAK,CAAC,MAAMkC,KAAK,CAACjB,SAAS,EAAEmB,GAAG,IAAI;MAClC,IAAIA,GAAG,EAAEe,QAAQ,CAACvB,KAAK,GAAG,IAAI;IAChC,CAAC,CAAC;IAEFhC,aAAa,CAAC,MAAM;MAClB,IAAIsC,KAAK,CAACpB,UAAU,IAAI,IAAI,IAAI0C,WAAW,CAAC5B,KAAK,EAAE;MAEnDuB,QAAQ,CAACvB,KAAK,GAAGM,KAAK,CAACjB,SAAS,IAAI,CAAC+B,MAAM,CAACpB,KAAK;IACnD,CAAC,CAAC;IAEF,MAAM;MAAE+B,UAAU;MAAEC,YAAY;MAAEC;IAAW,CAAC,GAAGpE,QAAQ,CAAC;MACxD0D,QAAQ;MACRK,WAAW;MACX/B,KAAK;MACLD,SAAS,EAAE1B,KAAK,CAACoC,KAAK,EAAE,WAAW,CAAC;MACpC4B,QAAQ,EAAEpC;IACZ,CAAC,CAAC;IAEF,MAAMqC,UAAU,GAAGrE,QAAQ,CAAC,MAAM;MAChC,MAAMsE,IAAI,GAAGR,WAAW,CAAC5B,KAAK,GAAG,CAAC,GAC9BM,KAAK,CAAChB,IAAI,IAAIgB,KAAK,CAACtB,aAAa,GAAGQ,MAAM,CAACc,KAAK,CAACf,SAAS,CAAC,GAC3DM,KAAK,CAACG,KAAK;MAEf,OAAO+B,UAAU,CAAC/B,KAAK,GAAGoC,IAAI,GAAGJ,YAAY,CAAChC,KAAK,GAAGoC,IAAI;IAC5D,CAAC,CAAC;IAEF,MAAM;MAAEC,gBAAgB;MAAEC;IAAsB,CAAC,GAAGvF,aAAa,CAAC;MAChEwF,EAAE,EAAEjC,KAAK,CAACD,IAAI;MACdmC,KAAK,EAAE1E,QAAQ,CAAC,MAAM2E,QAAQ,CAACnC,KAAK,CAACkC,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDN,QAAQ,EAAEpC,QAAQ;MAClBqC,UAAU;MACVO,WAAW,EAAE7C,KAAK;MAClB8C,MAAM,EAAE7E,QAAQ,CAAC,MAAMyD,QAAQ,CAACvB,KAAK,IAAI+B,UAAU,CAAC/B,KAAK,CAAC;MAC1D4C,kBAAkB,EAAE9E,QAAQ,CAAC,MAAMiE,UAAU,CAAC/B,KAAK,CAAC;MACpD6C,QAAQ,EAAE/E,QAAQ,CAAC;MACjB;MACAwC,KAAK,CAACuC,QAAQ,IAAKhB,QAAQ,CAAC7B,KAAK,IAAI,OAAO8C,OAAO,CAAC9C,KAAK,KAAK,QAAS;IAE3E,CAAC,CAAC;IAEF,MAAM;MAAE8C,OAAO;MAAEC;IAAa,CAAC,GAAGnF,SAAS,CAAC;MAAE8D,MAAM;MAAEG,QAAQ;MAAEQ;IAAiB,CAAC,CAAC;IAEnF,MAAMW,UAAU,GAAG1F,kBAAkB,CAACQ,QAAQ,CAAC,MAAM;MACnD,OAAO,OAAOwC,KAAK,CAACb,KAAK,KAAK,QAAQ,GAAGa,KAAK,CAACb,KAAK,GAAG,IAAI;IAC7D,CAAC,CAAC,CAAC;IACH,MAAMwD,WAAW,GAAGnF,QAAQ,CAAC,OAAO;MAClC,IAAGiE,UAAU,CAAC/B,KAAK,GAAG;QACpBkD,OAAO,EAAElB,YAAY,CAAChC,KAAK,GAAG,GAAG;QACjCmD,UAAU,EAAE;MACd,CAAC,GAAGC,SAAS;MACb,GAAGd,qBAAqB,CAACtC;IAC3B,CAAC,CAAC,CAAC;IAEH3C,eAAe,CAAC;MACdgG,KAAK,EAAE;QACLC,OAAO,EAAE;MACX;IACF,CAAC,CAAC;IAEF,SAASC,YAAYA,CAAA,EAAI;MACvB5B,UAAU,CAAC3B,KAAK,GAAG,IAAI;IACzB;IACA,SAASwD,YAAYA,CAAA,EAAI;MACvB7B,UAAU,CAAC3B,KAAK,GAAG,KAAK;IAC1B;IAEAxB,SAAS,CAAC,MAAM;MACd,MAAMiF,QAAQ,GAAI5C,KAAK,CAACnB,KAAK,IAAIY,KAAK,CAACZ,KAAM;MAE7C,OAAAgE,YAAA,CAAAC,SAAA,SAAAD,YAAA,CAAApD,KAAA,CAAAH,GAAA,EAAAyD,WAAA;QAAA,OAGYlC,MAAM;QAAA,gBACG6B,YAAY;QAAA,gBACZC,YAAY;QAAA,SACpB,CACL,qBAAqB,EACpB,wBAAuB1D,QAAQ,CAACE,KAAM,EAAC,EACxC;UACE,sCAAsC,EAAEM,KAAK,CAACtB,aAAa;UAC3D,+BAA+B,EAAEsB,KAAK,CAACrB,QAAQ;UAC/C,kCAAkC,EAAE0C,UAAU,CAAC3B,KAAK;UACpD,2BAA2B,EAAEM,KAAK,CAAChB,IAAI;UACvC,gCAAgC,EAAEsC,WAAW,CAAC5B,KAAK;UACnD,6BAA6B,EAAEuB,QAAQ,CAACvB,KAAK;UAC7C,6BAA6B,EAAE6B,QAAQ,CAAC7B;QAC1C,CAAC,EACDe,YAAY,CAACf,KAAK,EAClBiB,sBAAsB,CAACjB,KAAK,EAC5BgB,aAAa,CAAChB,KAAK,EACnBmB,gBAAgB,CAACnB,KAAK,EACtBqB,cAAc,CAACrB,KAAK,EACpBM,KAAK,CAACuD,KAAK,CACZ;QAAA,SACM,CACL3C,qBAAqB,CAAClB,KAAK,EAC3BqC,gBAAgB,CAACrC,KAAK,EACtBiC,UAAU,CAACjC,KAAK,EAChByB,aAAa,CAACzB,KAAK,EACnB+C,YAAY,CAAC/C,KAAK,EAClBM,KAAK,CAACwD,KAAK;MACZ,GACInD,KAAK;QAAAvB,OAAA,EAAAA,CAAA,MAERqE,QAAQ,IAAAC,YAAA;UAAA,OACC,OAAO;UAAA,SAAO;QAA0B,IAC7C7C,KAAK,CAACnB,KAAK,GACTmB,KAAK,CAACnB,KAAK,GAAG;UAAEA,KAAK,EAAEY,KAAK,CAACZ;QAAM,CAAC,CAAC,GAAAgE,YAAA;UAAA,OACzBpD,KAAK,CAACZ,KAAK;UAAA,OAAO;QAAE,QAAI,EAG3C,EAECmB,KAAK,CAACkD,OAAO,IAAAL,YAAA;UAAA,SACF;QAA8B,IACrC7C,KAAK,CAACkD,OAAO,IAAI,EAEtB,EAAAL,YAAA;UAAA,SAEU;QAA8B,IACrC7C,KAAK,CAACzB,OAAO,IAAI,IAGnByB,KAAK,CAACmD,MAAM,IAAAN,YAAA;UAAA,SACD;QAA6B,IACpC7C,KAAK,CAACmD,MAAM,IAAI,EAErB;MAAA,IAAAN,YAAA,CAAAvF,UAAA;QAAA,QAGc;MAAiB;QAAAiB,OAAA,EAAAA,CAAA,MAC9BwC,WAAW,CAAC5B,KAAK,KAAK+B,UAAU,CAAC/B,KAAK,IAAIuB,QAAQ,CAACvB,KAAK,CAAC,IAAI,CAAC,CAACM,KAAK,CAACb,KAAK,IAAAiE,YAAA;UAAA,SAEjE,CAAC,4BAA4B,EAAEV,UAAU,CAAC/B,sBAAsB,CAACjB,KAAK,CAAC;UAAA,SACvE,CAACiD,WAAW,CAACjD,KAAK,EAAEgD,UAAU,CAAC9B,qBAAqB,CAAClB,KAAK,CAAC;UAAA,WACxDiE,CAAA,KAAM1C,QAAQ,CAACvB,KAAK,GAAG;QAAK,QAEzC;MAAA;IAIT,CAAC,CAAC;IAEF,OAAO;MACL8C;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VNavigationDrawer.mjs","names":["makeBorderProps","useBorder","makeComponentProps","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","provideDefaults","useBackgroundColor","useDisplay","useProxiedModel","useRouter","useRtl","useSsrBoot","useSticky","useTouch","computed","nextTick","onBeforeMount","ref","shallowRef","toRef","Transition","watch","genericComponent","propsFactory","toPhysical","useRender","locations","makeVNavigationDrawerProps","color","String","disableResizeWatcher","Boolean","disableRouteWatcher","expandOnHover","floating","modelValue","type","default","permanent","rail","railWidth","Number","scrim","image","temporary","touchless","width","location","validator","value","includes","sticky","tag","VNavigationDrawer","name","props","emits","val","setup","_ref","attrs","emit","slots","isRtl","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","mobile","roundedClasses","router","isActive","v","ssrBootStyles","rootEl","isHovering","isTemporary","isSticky","currentRoute","isDragging","dragProgress","dragStyles","position","layoutSize","size","layoutItemStyles","layoutItemScrimStyles","id","order","parseInt","elementSize","active","disableTransitions","absolute","isStuck","stickyStyles","scrimColor","scrimStyles","opacity","transition","undefined","VList","bgColor","onMouseenter","onMouseleave","hasImage","_createVNode","_Fragment","_mergeProps","class","style","prepend","append","onClick"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useDisplay } from '@/composables/display'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRouter } from '@/composables/router'\nimport { useRtl } from '@/composables'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { useSticky } from './sticky'\nimport { useTouch } from './touch'\n\n// Utilities\nimport { computed, nextTick, onBeforeMount, ref, shallowRef, toRef, Transition, watch } from 'vue'\nimport { genericComponent, propsFactory, toPhysical, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type VNavigationDrawerImageSlot = {\n image: string\n}\n\nexport type VNavigationDrawerSlots = {\n default: []\n prepend: []\n append: []\n image: [VNavigationDrawerImageSlot]\n}\n\nconst locations = ['start', 'end', 'left', 'right', 'top', 'bottom'] as const\n\nexport const makeVNavigationDrawerProps = propsFactory({\n color: String,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n permanent: Boolean,\n rail: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n railWidth: {\n type: [Number, String],\n default: 56,\n },\n scrim: {\n type: [String, Boolean],\n default: true,\n },\n image: String,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n location: {\n type: String as PropType<typeof locations[number]>,\n default: 'start',\n validator: (value: any) => locations.includes(value),\n },\n sticky: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n}, 'v-navigation-drawer')\n\nexport const VNavigationDrawer = genericComponent<VNavigationDrawerSlots>()({\n name: 'VNavigationDrawer',\n\n props: makeVNavigationDrawerProps(),\n\n emits: {\n 'update:modelValue': (val: boolean) => true,\n 'update:rail': (val: boolean) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { mobile } = useDisplay()\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const { ssrBootStyles } = useSsrBoot()\n\n const rootEl = ref<HTMLElement>()\n const isHovering = shallowRef(false)\n\n const width = computed(() => {\n return (props.rail && props.expandOnHover && isHovering.value)\n ? Number(props.width)\n : Number(props.rail ? props.railWidth : props.width)\n })\n const location = computed(() => {\n return toPhysical(props.location, isRtl.value) as 'left' | 'right' | 'bottom'\n })\n const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary))\n const isSticky = computed(() =>\n props.sticky &&\n !isTemporary.value &&\n location.value !== 'bottom'\n )\n\n if (props.expandOnHover && props.rail != null) {\n watch(isHovering, val => emit('update:rail', !val))\n }\n\n if (!props.disableResizeWatcher) {\n watch(isTemporary, val => !props.permanent && (nextTick(() => isActive.value = !val)))\n }\n\n if (!props.disableRouteWatcher && router) {\n watch(router.currentRoute, () => isTemporary.value && (isActive.value = false))\n }\n\n watch(() => props.permanent, val => {\n if (val) isActive.value = true\n })\n\n onBeforeMount(() => {\n if (props.modelValue != null || isTemporary.value) return\n\n isActive.value = props.permanent || !mobile.value\n })\n\n const { isDragging, dragProgress, dragStyles } = useTouch({\n isActive,\n isTemporary,\n width,\n touchless: toRef(props, 'touchless'),\n position: location,\n })\n\n const layoutSize = computed(() => {\n const size = isTemporary.value ? 0\n : props.rail && props.expandOnHover ? Number(props.railWidth)\n : width.value\n\n return isDragging.value ? size * dragProgress.value : size\n })\n\n const { layoutItemStyles, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: location,\n layoutSize,\n elementSize: width,\n active: computed(() => isActive.value || isDragging.value),\n disableTransitions: computed(() => isDragging.value),\n absolute: computed(() =>\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n props.absolute || (isSticky.value && typeof isStuck.value !== 'string')\n ),\n })\n\n const { isStuck, stickyStyles } = useSticky({ rootEl, isSticky, layoutItemStyles })\n\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const scrimStyles = computed(() => ({\n ...isDragging.value ? {\n opacity: dragProgress.value * 0.2,\n transition: 'none',\n } : undefined,\n ...layoutItemScrimStyles.value,\n }))\n\n provideDefaults({\n VList: {\n bgColor: 'transparent',\n },\n })\n\n function onMouseenter () {\n isHovering.value = true\n }\n function onMouseleave () {\n isHovering.value = false\n }\n\n useRender(() => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ onMouseenter }\n onMouseleave={ onMouseleave }\n class={[\n 'v-navigation-drawer',\n `v-navigation-drawer--${location.value}`,\n {\n 'v-navigation-drawer--expand-on-hover': props.expandOnHover,\n 'v-navigation-drawer--floating': props.floating,\n 'v-navigation-drawer--is-hovering': isHovering.value,\n 'v-navigation-drawer--rail': props.rail,\n 'v-navigation-drawer--temporary': isTemporary.value,\n 'v-navigation-drawer--active': isActive.value,\n 'v-navigation-drawer--sticky': isSticky.value,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n dragStyles.value,\n ssrBootStyles.value,\n stickyStyles.value,\n props.style,\n ]}\n { ...attrs }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-navigation-drawer__img\">\n { slots.image\n ? slots.image?.({ image: props.image })\n : (<img src={ props.image } alt=\"\" />)\n }\n </div>\n )}\n\n { slots.prepend && (\n <div class=\"v-navigation-drawer__prepend\">\n { slots.prepend?.() }\n </div>\n )}\n\n <div class=\"v-navigation-drawer__content\">\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-navigation-drawer__append\">\n { slots.append?.() }\n </div>\n )}\n </props.tag>\n\n <Transition name=\"fade-transition\">\n { isTemporary.value && (isDragging.value || isActive.value) && !!props.scrim && (\n <div\n class={['v-navigation-drawer__scrim', scrimColor.backgroundColorClasses.value]}\n style={[scrimStyles.value, scrimColor.backgroundColorStyles.value]}\n onClick={ () => isActive.value = false }\n />\n )}\n </Transition>\n </>\n )\n })\n\n return {\n isStuck,\n }\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,eAAe,EAAEC,SAAS;AAAA,SAC1BC,kBAAkB;AAAA,SAClBC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,mBAAmB,EAAEC,aAAa;AAAA,SAClCC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,eAAe;AAAA,SACfC,kBAAkB;AAAA,SAClBC,UAAU;AAAA,SACVC,eAAe;AAAA,SACfC,SAAS;AAAA,SACTC,MAAM;AAAA,SACNC,UAAU;AAAA,SACVC,SAAS;AAAA,SACTC,QAAQ,uBAEjB;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,aAAa,EAAEC,GAAG,EAAEC,UAAU,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,QAAQ,KAAK;AAAA,SACzFC,gBAAgB,EAAEC,YAAY,EAAEC,UAAU,EAAEC,SAAS,gCAE9D;AAcA,MAAMC,SAAS,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAU;AAE7E,OAAO,MAAMC,0BAA0B,GAAGJ,YAAY,CAAC;EACrDK,KAAK,EAAEC,MAAM;EACbC,oBAAoB,EAAEC,OAAO;EAC7BC,mBAAmB,EAAED,OAAO;EAC5BE,aAAa,EAAEF,OAAO;EACtBG,QAAQ,EAAEH,OAAO;EACjBI,UAAU,EAAE;IACVC,IAAI,EAAEL,OAAmC;IACzCM,OAAO,EAAE;EACX,CAAC;EACDC,SAAS,EAAEP,OAAO;EAClBQ,IAAI,EAAE;IACJH,IAAI,EAAEL,OAAmC;IACzCM,OAAO,EAAE;EACX,CAAC;EACDG,SAAS,EAAE;IACTJ,IAAI,EAAE,CAACK,MAAM,EAAEZ,MAAM,CAAC;IACtBQ,OAAO,EAAE;EACX,CAAC;EACDK,KAAK,EAAE;IACLN,IAAI,EAAE,CAACP,MAAM,EAAEE,OAAO,CAAC;IACvBM,OAAO,EAAE;EACX,CAAC;EACDM,KAAK,EAAEd,MAAM;EACbe,SAAS,EAAEb,OAAO;EAClBc,SAAS,EAAEd,OAAO;EAClBe,KAAK,EAAE;IACLV,IAAI,EAAE,CAACK,MAAM,EAAEZ,MAAM,CAAC;IACtBQ,OAAO,EAAE;EACX,CAAC;EACDU,QAAQ,EAAE;IACRX,IAAI,EAAEP,MAA4C;IAClDQ,OAAO,EAAE,OAAO;IAChBW,SAAS,EAAGC,KAAU,IAAKvB,SAAS,CAACwB,QAAQ,CAACD,KAAK;EACrD,CAAC;EACDE,MAAM,EAAEpB,OAAO;EAEf,GAAGtC,eAAe,EAAE;EACpB,GAAGE,kBAAkB,EAAE;EACvB,GAAGC,kBAAkB,EAAE;EACvB,GAAGE,mBAAmB,EAAE;EACxB,GAAGE,gBAAgB,EAAE;EACrB,GAAGE,YAAY,CAAC;IAAEkD,GAAG,EAAE;EAAM,CAAC,CAAC;EAC/B,GAAGjD,cAAc;AACnB,CAAC,EAAE,qBAAqB,CAAC;AAEzB,OAAO,MAAMkD,iBAAiB,GAAG/B,gBAAgB,EAA0B,CAAC;EAC1EgC,IAAI,EAAE,mBAAmB;EAEzBC,KAAK,EAAE5B,0BAA0B,EAAE;EAEnC6B,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAY,IAAK,IAAI;IAC3C,aAAa,EAAGA,GAAY,IAAK;EACnC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAA0B;IAAA,IAAxB;MAAEC,KAAK;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAH,IAAA;IAClC,MAAM;MAAEI;IAAM,CAAC,GAAGrD,MAAM,EAAE;IAC1B,MAAM;MAAEsD;IAAa,CAAC,GAAG5D,YAAY,CAACmD,KAAK,CAAC;IAC5C,MAAM;MAAEU;IAAc,CAAC,GAAGvE,SAAS,CAAC6D,KAAK,CAAC;IAC1C,MAAM;MAAEW,sBAAsB;MAAEC;IAAsB,CAAC,GAAG7D,kBAAkB,CAACa,KAAK,CAACoC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnG,MAAM;MAAEa;IAAiB,CAAC,GAAGvE,YAAY,CAAC0D,KAAK,CAAC;IAChD,MAAM;MAAEc;IAAO,CAAC,GAAG9D,UAAU,EAAE;IAC/B,MAAM;MAAE+D;IAAe,CAAC,GAAGrE,UAAU,CAACsD,KAAK,CAAC;IAC5C,MAAMgB,MAAM,GAAG9D,SAAS,EAAE;IAC1B,MAAM+D,QAAQ,GAAGhE,eAAe,CAAC+C,KAAK,EAAE,YAAY,EAAE,IAAI,EAAEkB,CAAC,IAAI,CAAC,CAACA,CAAC,CAAC;IACrE,MAAM;MAAEC;IAAc,CAAC,GAAG/D,UAAU,EAAE;IAEtC,MAAMgE,MAAM,GAAG1D,GAAG,EAAe;IACjC,MAAM2D,UAAU,GAAG1D,UAAU,CAAC,KAAK,CAAC;IAEpC,MAAM4B,KAAK,GAAGhC,QAAQ,CAAC,MAAM;MAC3B,OAAQyC,KAAK,CAAChB,IAAI,IAAIgB,KAAK,CAACtB,aAAa,IAAI2C,UAAU,CAAC3B,KAAK,GACzDR,MAAM,CAACc,KAAK,CAACT,KAAK,CAAC,GACnBL,MAAM,CAACc,KAAK,CAAChB,IAAI,GAAGgB,KAAK,CAACf,SAAS,GAAGe,KAAK,CAACT,KAAK,CAAC;IACxD,CAAC,CAAC;IACF,MAAMC,QAAQ,GAAGjC,QAAQ,CAAC,MAAM;MAC9B,OAAOU,UAAU,CAAC+B,KAAK,CAACR,QAAQ,EAAEgB,KAAK,CAACd,KAAK,CAAC;IAChD,CAAC,CAAC;IACF,MAAM4B,WAAW,GAAG/D,QAAQ,CAAC,MAAM,CAACyC,KAAK,CAACjB,SAAS,KAAK+B,MAAM,CAACpB,KAAK,IAAIM,KAAK,CAACX,SAAS,CAAC,CAAC;IACzF,MAAMkC,QAAQ,GAAGhE,QAAQ,CAAC,MACxByC,KAAK,CAACJ,MAAM,IACZ,CAAC0B,WAAW,CAAC5B,KAAK,IAClBF,QAAQ,CAACE,KAAK,KAAK,QAAQ,CAC5B;IAED,IAAIM,KAAK,CAACtB,aAAa,IAAIsB,KAAK,CAAChB,IAAI,IAAI,IAAI,EAAE;MAC7ClB,KAAK,CAACuD,UAAU,EAAEnB,GAAG,IAAII,IAAI,CAAC,aAAa,EAAE,CAACJ,GAAG,CAAC,CAAC;IACrD;IAEA,IAAI,CAACF,KAAK,CAACzB,oBAAoB,EAAE;MAC/BT,KAAK,CAACwD,WAAW,EAAEpB,GAAG,IAAI,CAACF,KAAK,CAACjB,SAAS,IAAKvB,QAAQ,CAAC,MAAMyD,QAAQ,CAACvB,KAAK,GAAG,CAACQ,GAAG,CAAE,CAAC;IACxF;IAEA,IAAI,CAACF,KAAK,CAACvB,mBAAmB,IAAIuC,MAAM,EAAE;MACxClD,KAAK,CAACkD,MAAM,CAACQ,YAAY,EAAE,MAAMF,WAAW,CAAC5B,KAAK,KAAKuB,QAAQ,CAACvB,KAAK,GAAG,KAAK,CAAC,CAAC;IACjF;IAEA5B,KAAK,CAAC,MAAMkC,KAAK,CAACjB,SAAS,EAAEmB,GAAG,IAAI;MAClC,IAAIA,GAAG,EAAEe,QAAQ,CAACvB,KAAK,GAAG,IAAI;IAChC,CAAC,CAAC;IAEFjC,aAAa,CAAC,MAAM;MAClB,IAAIuC,KAAK,CAACpB,UAAU,IAAI,IAAI,IAAI0C,WAAW,CAAC5B,KAAK,EAAE;MAEnDuB,QAAQ,CAACvB,KAAK,GAAGM,KAAK,CAACjB,SAAS,IAAI,CAAC+B,MAAM,CAACpB,KAAK;IACnD,CAAC,CAAC;IAEF,MAAM;MAAE+B,UAAU;MAAEC,YAAY;MAAEC;IAAW,CAAC,GAAGrE,QAAQ,CAAC;MACxD2D,QAAQ;MACRK,WAAW;MACX/B,KAAK;MACLD,SAAS,EAAE1B,KAAK,CAACoC,KAAK,EAAE,WAAW,CAAC;MACpC4B,QAAQ,EAAEpC;IACZ,CAAC,CAAC;IAEF,MAAMqC,UAAU,GAAGtE,QAAQ,CAAC,MAAM;MAChC,MAAMuE,IAAI,GAAGR,WAAW,CAAC5B,KAAK,GAAG,CAAC,GAC9BM,KAAK,CAAChB,IAAI,IAAIgB,KAAK,CAACtB,aAAa,GAAGQ,MAAM,CAACc,KAAK,CAACf,SAAS,CAAC,GAC3DM,KAAK,CAACG,KAAK;MAEf,OAAO+B,UAAU,CAAC/B,KAAK,GAAGoC,IAAI,GAAGJ,YAAY,CAAChC,KAAK,GAAGoC,IAAI;IAC5D,CAAC,CAAC;IAEF,MAAM;MAAEC,gBAAgB;MAAEC;IAAsB,CAAC,GAAGxF,aAAa,CAAC;MAChEyF,EAAE,EAAEjC,KAAK,CAACD,IAAI;MACdmC,KAAK,EAAE3E,QAAQ,CAAC,MAAM4E,QAAQ,CAACnC,KAAK,CAACkC,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDN,QAAQ,EAAEpC,QAAQ;MAClBqC,UAAU;MACVO,WAAW,EAAE7C,KAAK;MAClB8C,MAAM,EAAE9E,QAAQ,CAAC,MAAM0D,QAAQ,CAACvB,KAAK,IAAI+B,UAAU,CAAC/B,KAAK,CAAC;MAC1D4C,kBAAkB,EAAE/E,QAAQ,CAAC,MAAMkE,UAAU,CAAC/B,KAAK,CAAC;MACpD6C,QAAQ,EAAEhF,QAAQ,CAAC;MACjB;MACAyC,KAAK,CAACuC,QAAQ,IAAKhB,QAAQ,CAAC7B,KAAK,IAAI,OAAO8C,OAAO,CAAC9C,KAAK,KAAK,QAAS;IAE3E,CAAC,CAAC;IAEF,MAAM;MAAE8C,OAAO;MAAEC;IAAa,CAAC,GAAGpF,SAAS,CAAC;MAAE+D,MAAM;MAAEG,QAAQ;MAAEQ;IAAiB,CAAC,CAAC;IAEnF,MAAMW,UAAU,GAAG3F,kBAAkB,CAACQ,QAAQ,CAAC,MAAM;MACnD,OAAO,OAAOyC,KAAK,CAACb,KAAK,KAAK,QAAQ,GAAGa,KAAK,CAACb,KAAK,GAAG,IAAI;IAC7D,CAAC,CAAC,CAAC;IACH,MAAMwD,WAAW,GAAGpF,QAAQ,CAAC,OAAO;MAClC,IAAGkE,UAAU,CAAC/B,KAAK,GAAG;QACpBkD,OAAO,EAAElB,YAAY,CAAChC,KAAK,GAAG,GAAG;QACjCmD,UAAU,EAAE;MACd,CAAC,GAAGC,SAAS;MACb,GAAGd,qBAAqB,CAACtC;IAC3B,CAAC,CAAC,CAAC;IAEH5C,eAAe,CAAC;MACdiG,KAAK,EAAE;QACLC,OAAO,EAAE;MACX;IACF,CAAC,CAAC;IAEF,SAASC,YAAYA,CAAA,EAAI;MACvB5B,UAAU,CAAC3B,KAAK,GAAG,IAAI;IACzB;IACA,SAASwD,YAAYA,CAAA,EAAI;MACvB7B,UAAU,CAAC3B,KAAK,GAAG,KAAK;IAC1B;IAEAxB,SAAS,CAAC,MAAM;MACd,MAAMiF,QAAQ,GAAI5C,KAAK,CAACnB,KAAK,IAAIY,KAAK,CAACZ,KAAM;MAE7C,OAAAgE,YAAA,CAAAC,SAAA,SAAAD,YAAA,CAAApD,KAAA,CAAAH,GAAA,EAAAyD,WAAA;QAAA,OAGYlC,MAAM;QAAA,gBACG6B,YAAY;QAAA,gBACZC,YAAY;QAAA,SACpB,CACL,qBAAqB,EACpB,wBAAuB1D,QAAQ,CAACE,KAAM,EAAC,EACxC;UACE,sCAAsC,EAAEM,KAAK,CAACtB,aAAa;UAC3D,+BAA+B,EAAEsB,KAAK,CAACrB,QAAQ;UAC/C,kCAAkC,EAAE0C,UAAU,CAAC3B,KAAK;UACpD,2BAA2B,EAAEM,KAAK,CAAChB,IAAI;UACvC,gCAAgC,EAAEsC,WAAW,CAAC5B,KAAK;UACnD,6BAA6B,EAAEuB,QAAQ,CAACvB,KAAK;UAC7C,6BAA6B,EAAE6B,QAAQ,CAAC7B;QAC1C,CAAC,EACDe,YAAY,CAACf,KAAK,EAClBiB,sBAAsB,CAACjB,KAAK,EAC5BgB,aAAa,CAAChB,KAAK,EACnBmB,gBAAgB,CAACnB,KAAK,EACtBqB,cAAc,CAACrB,KAAK,EACpBM,KAAK,CAACuD,KAAK,CACZ;QAAA,SACM,CACL3C,qBAAqB,CAAClB,KAAK,EAC3BqC,gBAAgB,CAACrC,KAAK,EACtBiC,UAAU,CAACjC,KAAK,EAChByB,aAAa,CAACzB,KAAK,EACnB+C,YAAY,CAAC/C,KAAK,EAClBM,KAAK,CAACwD,KAAK;MACZ,GACInD,KAAK;QAAAvB,OAAA,EAAAA,CAAA,MAERqE,QAAQ,IAAAC,YAAA;UAAA,OACC,OAAO;UAAA,SAAO;QAA0B,IAC7C7C,KAAK,CAACnB,KAAK,GACTmB,KAAK,CAACnB,KAAK,GAAG;UAAEA,KAAK,EAAEY,KAAK,CAACZ;QAAM,CAAC,CAAC,GAAAgE,YAAA;UAAA,OACzBpD,KAAK,CAACZ,KAAK;UAAA,OAAO;QAAE,QAAI,EAG3C,EAECmB,KAAK,CAACkD,OAAO,IAAAL,YAAA;UAAA,SACF;QAA8B,IACrC7C,KAAK,CAACkD,OAAO,IAAI,EAEtB,EAAAL,YAAA;UAAA,SAEU;QAA8B,IACrC7C,KAAK,CAACzB,OAAO,IAAI,IAGnByB,KAAK,CAACmD,MAAM,IAAAN,YAAA;UAAA,SACD;QAA6B,IACpC7C,KAAK,CAACmD,MAAM,IAAI,EAErB;MAAA,IAAAN,YAAA,CAAAvF,UAAA;QAAA,QAGc;MAAiB;QAAAiB,OAAA,EAAAA,CAAA,MAC9BwC,WAAW,CAAC5B,KAAK,KAAK+B,UAAU,CAAC/B,KAAK,IAAIuB,QAAQ,CAACvB,KAAK,CAAC,IAAI,CAAC,CAACM,KAAK,CAACb,KAAK,IAAAiE,YAAA;UAAA,SAEjE,CAAC,4BAA4B,EAAEV,UAAU,CAAC/B,sBAAsB,CAACjB,KAAK,CAAC;UAAA,SACvE,CAACiD,WAAW,CAACjD,KAAK,EAAEgD,UAAU,CAAC9B,qBAAqB,CAAClB,KAAK,CAAC;UAAA,WACxDiE,CAAA,KAAM1C,QAAQ,CAACvB,KAAK,GAAG;QAAK,QAEzC;MAAA;IAIT,CAAC,CAAC;IAEF,OAAO;MACL8C;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
@@ -78,6 +78,8 @@
78
78
 
79
79
  .v-navigation-drawer__scrim
80
80
  position: absolute
81
+ top: 0
82
+ left: 0
81
83
  width: 100%
82
84
  height: 100%
83
85
  background: black
@@ -78,6 +78,13 @@ declare const VNavigationDrawer: {
78
78
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
79
79
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
80
80
  "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
81
+ } & {
82
+ $slots?: {
83
+ default?: (() => vue.VNodeChild) | undefined;
84
+ prepend?: (() => vue.VNodeChild) | undefined;
85
+ append?: (() => vue.VNodeChild) | undefined;
86
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
87
+ } | undefined;
81
88
  } & {
82
89
  "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
83
90
  "onUpdate:rail"?: ((val: boolean) => any) | undefined;
@@ -141,11 +148,18 @@ declare const VNavigationDrawer: {
141
148
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
142
149
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
143
150
  "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
151
+ } & {
152
+ $slots?: {
153
+ default?: (() => vue.VNodeChild) | undefined;
154
+ prepend?: (() => vue.VNodeChild) | undefined;
155
+ append?: (() => vue.VNodeChild) | undefined;
156
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
157
+ } | undefined;
144
158
  } & {
145
159
  "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
146
160
  "onUpdate:rail"?: ((val: boolean) => any) | undefined;
147
161
  }, {
148
- isStuck: vue.Ref<boolean | "top" | "bottom">;
162
+ isStuck: vue.ShallowRef<boolean | "top" | "bottom">;
149
163
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
150
164
  'update:modelValue': (val: boolean) => true;
151
165
  'update:rail': (val: boolean) => true;
@@ -235,11 +249,18 @@ declare const VNavigationDrawer: {
235
249
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
236
250
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
237
251
  "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
252
+ } & {
253
+ $slots?: {
254
+ default?: (() => vue.VNodeChild) | undefined;
255
+ prepend?: (() => vue.VNodeChild) | undefined;
256
+ append?: (() => vue.VNodeChild) | undefined;
257
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
258
+ } | undefined;
238
259
  } & {
239
260
  "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
240
261
  "onUpdate:rail"?: ((val: boolean) => any) | undefined;
241
262
  } & vue.ShallowUnwrapRef<{
242
- isStuck: vue.Ref<boolean | "top" | "bottom">;
263
+ isStuck: vue.ShallowRef<boolean | "top" | "bottom">;
243
264
  }> & {} & vue.ComponentCustomProperties & {};
244
265
  __isFragment?: undefined;
245
266
  __isTeleport?: undefined;
@@ -290,11 +311,18 @@ declare const VNavigationDrawer: {
290
311
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
291
312
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
292
313
  "v-slot:image"?: false | ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
314
+ } & {
315
+ $slots?: {
316
+ default?: (() => vue.VNodeChild) | undefined;
317
+ prepend?: (() => vue.VNodeChild) | undefined;
318
+ append?: (() => vue.VNodeChild) | undefined;
319
+ image?: ((args_0: VNavigationDrawerImageSlot) => vue.VNodeChild) | undefined;
320
+ } | undefined;
293
321
  } & {
294
322
  "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
295
323
  "onUpdate:rail"?: ((val: boolean) => any) | undefined;
296
324
  }, {
297
- isStuck: vue.Ref<boolean | "top" | "bottom">;
325
+ isStuck: vue.ShallowRef<boolean | "top" | "bottom">;
298
326
  }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
299
327
  'update:modelValue': (val: boolean) => true;
300
328
  'update:rail': (val: boolean) => true;