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.
- package/dist/json/attributes.json +182 -26
- package/dist/json/importMap-labs.json +30 -30
- package/dist/json/importMap.json +150 -150
- package/dist/json/tags.json +44 -5
- package/dist/json/web-types.json +445 -42
- package/dist/vuetify-labs.css +2359 -2344
- package/dist/vuetify-labs.d.ts +690 -341
- package/dist/vuetify-labs.esm.js +253 -211
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +252 -210
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +2553 -2538
- package/dist/vuetify.d.ts +559 -315
- package/dist/vuetify.esm.js +189 -127
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +188 -126
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +160 -156
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VApp/VApp.mjs +2 -5
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/index.d.mts +6 -6
- package/lib/components/VAppBar/VAppBar.mjs +5 -5
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +8 -2
- package/lib/components/VAutocomplete/VAutocomplete.mjs +15 -8
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +78 -49
- package/lib/components/VAvatar/VAvatar.css +9 -0
- package/lib/components/VAvatar/VAvatar.mjs +6 -1
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +1 -0
- package/lib/components/VAvatar/_variables.scss +13 -0
- package/lib/components/VAvatar/index.d.mts +6 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +2 -3
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.mts +2 -2
- package/lib/components/VBreadcrumbs/index.d.mts +8 -8
- package/lib/components/VBtn/VBtn.css +0 -4
- package/lib/components/VBtn/VBtn.mjs +3 -1
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +0 -6
- package/lib/components/VBtn/_variables.scss +0 -1
- package/lib/components/VBtn/index.d.mts +6 -0
- package/lib/components/VCard/VCard.css +1 -0
- package/lib/components/VCard/VCard.sass +1 -0
- package/lib/components/VCard/_variables.scss +7 -3
- package/lib/components/VCarousel/index.d.mts +9 -0
- package/lib/components/VCheckbox/index.d.mts +7 -6
- package/lib/components/VCombobox/VCombobox.mjs +15 -8
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +78 -49
- package/lib/components/VDialog/index.d.mts +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +7 -2
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +72 -0
- package/lib/components/VFab/index.d.mts +6 -0
- package/lib/components/VFileInput/index.d.mts +19 -18
- package/lib/components/VFooter/VFooter.mjs +1 -3
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/index.d.mts +3 -3
- package/lib/components/VForm/index.d.mts +10 -9
- package/lib/components/VGrid/VContainer.mjs +6 -1
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/index.d.mts +36 -0
- package/lib/components/VImg/VImg.css +9 -0
- package/lib/components/VImg/VImg.mjs +2 -0
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/VImg.sass +9 -0
- package/lib/components/VImg/index.d.mts +9 -0
- package/lib/components/VInput/index.d.mts +7 -6
- package/lib/components/VLayout/VLayout.mjs +2 -5
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs +4 -6
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.mts +9 -9
- package/lib/components/VList/VListItem.css +2 -2
- package/lib/components/VList/VListItem.mjs +3 -1
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +1 -1
- package/lib/components/VList/index.d.mts +19 -18
- package/lib/components/VMain/VMain.mjs +2 -3
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/index.d.mts +2 -2
- package/lib/components/VMenu/VMenu.mjs +26 -8
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +30 -15
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +3 -4
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +5 -4
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/locationStrategies.mjs +0 -6
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +3 -2
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.mts +7 -6
- package/lib/components/VRangeSlider/index.d.mts +7 -6
- package/lib/components/VSelect/VSelect.mjs +15 -13
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +78 -49
- package/lib/components/VSelect/useScrolling.mjs +3 -3
- package/lib/components/VSelect/useScrolling.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +3 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.mts +6 -0
- package/lib/components/VSlider/index.d.mts +7 -6
- package/lib/components/VSnackbar/index.d.mts +3 -3
- package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
- package/lib/components/VSpeedDial/index.d.mts +28 -13
- package/lib/components/VSwitch/index.d.mts +7 -6
- package/lib/components/VTabs/index.d.mts +21 -3
- package/lib/components/VTextField/index.d.mts +19 -18
- package/lib/components/VTextarea/index.d.mts +19 -18
- package/lib/components/VTooltip/index.d.mts +3 -3
- package/lib/components/VValidation/index.d.mts +7 -6
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +2 -0
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +3 -0
- package/lib/components/index.d.mts +504 -259
- package/lib/composables/layout.mjs +37 -14
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +3 -3
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/openStrategies.mjs +4 -2
- package/lib/composables/nested/openStrategies.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +5 -5
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/validation.mjs +8 -6
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/virtual.mjs +1 -0
- package/lib/composables/virtual.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +55 -56
- package/lib/labs/VDateInput/index.d.mts +7 -6
- package/lib/labs/VNumberInput/index.d.mts +43 -42
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs +4 -3
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs.map +1 -1
- package/lib/labs/VPullToRefresh/index.d.mts +9 -0
- package/lib/labs/VSnackbarQueue/index.d.mts +3 -3
- package/lib/labs/VStepperVertical/index.d.mts +36 -0
- package/lib/labs/VTreeview/VTreeview.mjs +21 -6
- package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +33 -10
- package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.css +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.mjs +14 -74
- package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +2 -5
- package/lib/labs/VTreeview/index.d.mts +133 -95
- package/lib/labs/components.d.mts +193 -109
- package/lib/util/helpers.mjs +5 -0
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VMenu.mjs","names":["VDialogTransition","VDefaultsProvider","VOverlay","makeVOverlayProps","forwardRefs","useProxiedModel","useScopeId","computed","inject","mergeProps","nextTick","provide","ref","shallowRef","watch","VMenuSymbol","focusableChildren","focusChild","genericComponent","getNextElement","getUid","isClickInsideElement","omit","propsFactory","useRender","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","e","setTimeout","persistent","contentEl","onFocusIn","before","relatedTarget","after","target","globalTop","document","includes","contains","focusable","focus","val","addEventListener","once","removeEventListener","onClickOutside","onKeydown","disabled","key","HTMLTextAreaElement","HTMLInputElement","closest","preventDefault","nextElement","shiftKey","el","tabIndex","activatorEl","onActivatorKeydown","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'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { computed, inject, mergeProps, nextTick, provide, ref, shallowRef, watch } from 'vue'\nimport { VMenuSymbol } from './shared'\nimport {\n focusableChildren,\n focusChild,\n genericComponent,\n getNextElement,\n getUid,\n isClickInsideElement,\n omit,\n propsFactory,\n useRender,\n} from '@/util'\n\n// Types\nimport type { Component } from 'vue'\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}, 'VMenu')\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 (e) {\n setTimeout(() => {\n if (!openChildren.value &&\n !props.persistent &&\n (e == null || (overlay.value?.contentEl && !isClickInsideElement(e, overlay.value.contentEl)))\n ) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n async function onFocusIn (e: FocusEvent) {\n const before = e.relatedTarget as HTMLElement | null\n const after = e.target as HTMLElement | null\n\n await nextTick()\n\n if (\n isActive.value &&\n before !== after &&\n overlay.value?.contentEl &&\n // We're the topmost menu\n overlay.value?.globalTop &&\n // It isn't the document or the menu body\n ![document, overlay.value.contentEl].includes(after!) &&\n // It isn't inside the menu body\n !overlay.value.contentEl.contains(after)\n ) {\n const focusable = focusableChildren(overlay.value.contentEl)\n focusable[0]?.focus()\n }\n }\n\n watch(isActive, val => {\n if (val) {\n parent?.register()\n document.addEventListener('focusin', onFocusIn, { once: true })\n } else {\n parent?.unregister()\n document.removeEventListener('focusin', onFocusIn)\n }\n })\n\n function onClickOutside (e: MouseEvent) {\n parent?.closeParents(e)\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (props.disabled) return\n\n if (e.key === 'Tab' || (e.key === 'Enter' && !props.closeOnContentClick)) {\n if (\n e.key === 'Enter' &&\n ((e.target instanceof HTMLTextAreaElement) ||\n (e.target instanceof HTMLInputElement && !!e.target.closest('form')))\n ) return\n if (e.key === 'Enter') e.preventDefault()\n\n const nextElement = getNextElement(\n focusableChildren(overlay.value?.contentEl as Element, false),\n e.shiftKey ? 'prev' : 'next',\n (el: HTMLElement) => el.tabIndex >= 0\n )\n if (!nextElement) {\n isActive.value = false\n overlay.value?.activatorEl?.focus()\n }\n } else if (['Enter', ' '].includes(e.key) && props.closeOnContentClick) {\n isActive.value = false\n parent?.closeParents()\n }\n }\n\n function onActivatorKeydown (e: KeyboardEvent) {\n if (props.disabled) return\n\n const el = overlay.value?.contentEl\n if (el && isActive.value) {\n if (e.key === 'ArrowDown') {\n e.preventDefault()\n focusChild(el, 'next')\n } else if (e.key === 'ArrowUp') {\n e.preventDefault()\n focusChild(el, 'prev')\n }\n } else if (['ArrowDown', 'ArrowUp'].includes(e.key)) {\n isActive.value = true\n e.preventDefault()\n setTimeout(() => setTimeout(() => onActivatorKeydown(e)))\n }\n }\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n onKeydown: onActivatorKeydown,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n id={ id.value }\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 onKeydown={ onKeydown }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root=\"VMenu\">\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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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VMenu.mjs","names":["VDialogTransition","VDefaultsProvider","VOverlay","makeVOverlayProps","forwardRefs","useRtl","useProxiedModel","useScopeId","computed","inject","mergeProps","nextTick","onBeforeUnmount","onDeactivated","provide","ref","shallowRef","watch","VMenuSymbol","focusableChildren","focusChild","genericComponent","getNextElement","getUid","isClickInsideElement","omit","propsFactory","useRender","makeVMenuProps","id","String","submenu","Boolean","closeDelay","closeOnContentClick","locationStrategy","location","undefined","openDelay","scrim","scrollStrategy","transition","component","VMenu","name","props","emits","value","setup","_ref","slots","isActive","scopeId","isRtl","uid","overlay","parent","openChildren","Set","register","add","unregister","delete","closeParents","e","setTimeout","size","persistent","contentEl","onFocusIn","before","relatedTarget","after","target","globalTop","document","includes","contains","focusable","focus","val","addEventListener","once","removeEventListener","onClickOutside","onKeydown","disabled","key","HTMLTextAreaElement","HTMLInputElement","closest","preventDefault","nextElement","shiftKey","el","tabIndex","activatorEl","onActivatorKeydown","stopImmediatePropagation","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'\nimport { makeVOverlayProps } from '@/components/VOverlay/VOverlay'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport {\n computed,\n inject,\n mergeProps,\n nextTick,\n onBeforeUnmount,\n onDeactivated,\n provide,\n ref,\n shallowRef,\n watch,\n} from 'vue'\nimport { VMenuSymbol } from './shared'\nimport {\n focusableChildren,\n focusChild,\n genericComponent,\n getNextElement,\n getUid,\n isClickInsideElement,\n omit,\n propsFactory,\n useRender,\n} from '@/util'\n\n// Types\nimport type { Component } from 'vue'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVMenuProps = propsFactory({\n // TODO\n // disableKeys: Boolean,\n id: String,\n submenu: Boolean,\n\n ...omit(makeVOverlayProps({\n closeDelay: 250,\n closeOnContentClick: true,\n locationStrategy: 'connected' as const,\n location: undefined,\n openDelay: 300,\n scrim: false,\n scrollStrategy: 'reposition' as const,\n transition: { component: VDialogTransition as Component },\n }), ['absolute']),\n}, 'VMenu')\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 const { isRtl } = useRtl()\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(new Set<number>())\n provide(VMenuSymbol, {\n register () {\n openChildren.value.add(uid)\n },\n unregister () {\n openChildren.value.delete(uid)\n },\n closeParents (e) {\n setTimeout(() => {\n if (!openChildren.value.size &&\n !props.persistent &&\n (e == null || (overlay.value?.contentEl && !isClickInsideElement(e, overlay.value.contentEl)))\n ) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n onBeforeUnmount(() => parent?.unregister())\n onDeactivated(() => isActive.value = false)\n\n async function onFocusIn (e: FocusEvent) {\n const before = e.relatedTarget as HTMLElement | null\n const after = e.target as HTMLElement | null\n\n await nextTick()\n\n if (\n isActive.value &&\n before !== after &&\n overlay.value?.contentEl &&\n // We're the topmost menu\n overlay.value?.globalTop &&\n // It isn't the document or the menu body\n ![document, overlay.value.contentEl].includes(after!) &&\n // It isn't inside the menu body\n !overlay.value.contentEl.contains(after)\n ) {\n const focusable = focusableChildren(overlay.value.contentEl)\n focusable[0]?.focus()\n }\n }\n\n watch(isActive, val => {\n if (val) {\n parent?.register()\n document.addEventListener('focusin', onFocusIn, { once: true })\n } else {\n parent?.unregister()\n document.removeEventListener('focusin', onFocusIn)\n }\n })\n\n function onClickOutside (e: MouseEvent) {\n parent?.closeParents(e)\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (props.disabled) return\n\n if (e.key === 'Tab' || (e.key === 'Enter' && !props.closeOnContentClick)) {\n if (\n e.key === 'Enter' &&\n ((e.target instanceof HTMLTextAreaElement) ||\n (e.target instanceof HTMLInputElement && !!e.target.closest('form')))\n ) return\n if (e.key === 'Enter') e.preventDefault()\n\n const nextElement = getNextElement(\n focusableChildren(overlay.value?.contentEl as Element, false),\n e.shiftKey ? 'prev' : 'next',\n (el: HTMLElement) => el.tabIndex >= 0\n )\n if (!nextElement) {\n isActive.value = false\n overlay.value?.activatorEl?.focus()\n }\n } else if (props.submenu && e.key === (isRtl.value ? 'ArrowRight' : 'ArrowLeft')) {\n isActive.value = false\n overlay.value?.activatorEl?.focus()\n }\n }\n\n function onActivatorKeydown (e: KeyboardEvent) {\n if (props.disabled) return\n\n const el = overlay.value?.contentEl\n if (el && isActive.value) {\n if (e.key === 'ArrowDown') {\n e.preventDefault()\n e.stopImmediatePropagation()\n focusChild(el, 'next')\n } else if (e.key === 'ArrowUp') {\n e.preventDefault()\n e.stopImmediatePropagation()\n focusChild(el, 'prev')\n } else if (props.submenu) {\n if (e.key === (isRtl.value ? 'ArrowRight' : 'ArrowLeft')) {\n isActive.value = false\n } else if (e.key === (isRtl.value ? 'ArrowLeft' : 'ArrowRight')) {\n e.preventDefault()\n focusChild(el, 'first')\n }\n }\n } else if (\n props.submenu\n ? e.key === (isRtl.value ? 'ArrowLeft' : 'ArrowRight')\n : ['ArrowDown', 'ArrowUp'].includes(e.key)\n ) {\n isActive.value = true\n e.preventDefault()\n setTimeout(() => setTimeout(() => onActivatorKeydown(e)))\n }\n }\n\n const activatorProps = computed(() =>\n mergeProps({\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n onKeydown: onActivatorKeydown,\n }, props.activatorProps)\n )\n\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props)\n\n return (\n <VOverlay\n ref={ overlay }\n id={ id.value }\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 location={ props.location ?? (props.submenu ? 'end' : 'bottom') }\n onClick:outside={ onClickOutside }\n onKeydown={ onKeydown }\n { ...scopeId }\n >\n {{\n activator: slots.activator,\n default: (...args) => (\n <VDefaultsProvider root=\"VMenu\">\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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","ignoreList":[]}
|
|
@@ -94,7 +94,7 @@ declare function connectedLocationStrategy(data: LocationStrategyData, props: St
|
|
|
94
94
|
|
|
95
95
|
declare const VMenu: {
|
|
96
96
|
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
|
97
|
-
location: Anchor;
|
|
97
|
+
location: Anchor | undefined;
|
|
98
98
|
origin: "auto" | Anchor | "overlap";
|
|
99
99
|
transition: string | boolean | (vue.TransitionProps & {
|
|
100
100
|
component?: Component;
|
|
@@ -120,6 +120,7 @@ declare const VMenu: {
|
|
|
120
120
|
noClickAnimation: boolean;
|
|
121
121
|
persistent: boolean;
|
|
122
122
|
scrim: string | boolean;
|
|
123
|
+
submenu: boolean;
|
|
123
124
|
} & {
|
|
124
125
|
offset?: string | number | number[] | undefined;
|
|
125
126
|
id?: string | undefined;
|
|
@@ -175,7 +176,7 @@ declare const VMenu: {
|
|
|
175
176
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
176
177
|
}, {
|
|
177
178
|
id: vue.ComputedRef<string>;
|
|
178
|
-
ΨopenChildren: vue.ShallowRef<number
|
|
179
|
+
ΨopenChildren: vue.ShallowRef<Set<number>>;
|
|
179
180
|
} & Omit<Omit<{
|
|
180
181
|
$: vue.ComponentInternalInstance;
|
|
181
182
|
$data: {};
|
|
@@ -621,7 +622,7 @@ declare const VMenu: {
|
|
|
621
622
|
onAfterLeave?: (() => any) | undefined;
|
|
622
623
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
623
624
|
"onClick:outside"?: ((e: MouseEvent) => any) | undefined;
|
|
624
|
-
}, "target" | "
|
|
625
|
+
}, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
|
|
625
626
|
activatorEl: vue.Ref<HTMLElement | undefined>;
|
|
626
627
|
scrimEl: vue.Ref<HTMLElement | undefined>;
|
|
627
628
|
target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
|
|
@@ -633,7 +634,7 @@ declare const VMenu: {
|
|
|
633
634
|
}> & {} & 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, {
|
|
634
635
|
'update:modelValue': (value: boolean) => true;
|
|
635
636
|
}, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
|
636
|
-
location: Anchor;
|
|
637
|
+
location: Anchor | undefined;
|
|
637
638
|
origin: "auto" | Anchor | "overlap";
|
|
638
639
|
transition: string | boolean | (vue.TransitionProps & {
|
|
639
640
|
component?: Component;
|
|
@@ -659,6 +660,7 @@ declare const VMenu: {
|
|
|
659
660
|
noClickAnimation: boolean;
|
|
660
661
|
persistent: boolean;
|
|
661
662
|
scrim: string | boolean;
|
|
663
|
+
submenu: boolean;
|
|
662
664
|
} & {
|
|
663
665
|
offset?: string | number | number[] | undefined;
|
|
664
666
|
id?: string | undefined;
|
|
@@ -713,7 +715,7 @@ declare const VMenu: {
|
|
|
713
715
|
} & {
|
|
714
716
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
715
717
|
}, {
|
|
716
|
-
location: Anchor;
|
|
718
|
+
location: Anchor | undefined;
|
|
717
719
|
origin: "auto" | Anchor | "overlap";
|
|
718
720
|
transition: string | boolean | (vue.TransitionProps & {
|
|
719
721
|
component?: Component;
|
|
@@ -741,6 +743,7 @@ declare const VMenu: {
|
|
|
741
743
|
noClickAnimation: boolean;
|
|
742
744
|
persistent: boolean;
|
|
743
745
|
scrim: string | boolean;
|
|
746
|
+
submenu: boolean;
|
|
744
747
|
}, true, {}, vue.SlotsType<Partial<{
|
|
745
748
|
default: (arg: {
|
|
746
749
|
isActive: vue.Ref<boolean>;
|
|
@@ -758,7 +761,7 @@ declare const VMenu: {
|
|
|
758
761
|
M: {};
|
|
759
762
|
Defaults: {};
|
|
760
763
|
}, {
|
|
761
|
-
location: Anchor;
|
|
764
|
+
location: Anchor | undefined;
|
|
762
765
|
origin: "auto" | Anchor | "overlap";
|
|
763
766
|
transition: string | boolean | (vue.TransitionProps & {
|
|
764
767
|
component?: Component;
|
|
@@ -784,6 +787,7 @@ declare const VMenu: {
|
|
|
784
787
|
noClickAnimation: boolean;
|
|
785
788
|
persistent: boolean;
|
|
786
789
|
scrim: string | boolean;
|
|
790
|
+
submenu: boolean;
|
|
787
791
|
} & {
|
|
788
792
|
offset?: string | number | number[] | undefined;
|
|
789
793
|
id?: string | undefined;
|
|
@@ -839,7 +843,7 @@ declare const VMenu: {
|
|
|
839
843
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
840
844
|
}, {
|
|
841
845
|
id: vue.ComputedRef<string>;
|
|
842
|
-
ΨopenChildren: vue.ShallowRef<number
|
|
846
|
+
ΨopenChildren: vue.ShallowRef<Set<number>>;
|
|
843
847
|
} & Omit<Omit<{
|
|
844
848
|
$: vue.ComponentInternalInstance;
|
|
845
849
|
$data: {};
|
|
@@ -1285,7 +1289,7 @@ declare const VMenu: {
|
|
|
1285
1289
|
onAfterLeave?: (() => any) | undefined;
|
|
1286
1290
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
1287
1291
|
"onClick:outside"?: ((e: MouseEvent) => any) | undefined;
|
|
1288
|
-
}, "target" | "
|
|
1292
|
+
}, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
|
|
1289
1293
|
activatorEl: vue.Ref<HTMLElement | undefined>;
|
|
1290
1294
|
scrimEl: vue.Ref<HTMLElement | undefined>;
|
|
1291
1295
|
target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
|
|
@@ -1295,7 +1299,7 @@ declare const VMenu: {
|
|
|
1295
1299
|
localTop: vue.ComputedRef<boolean>;
|
|
1296
1300
|
updateLocation: vue.Ref<((e: Event) => void) | undefined>;
|
|
1297
1301
|
}> & {} & 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}`>, {}, {}, {}, {
|
|
1298
|
-
location: Anchor;
|
|
1302
|
+
location: Anchor | undefined;
|
|
1299
1303
|
origin: "auto" | Anchor | "overlap";
|
|
1300
1304
|
transition: string | boolean | (vue.TransitionProps & {
|
|
1301
1305
|
component?: Component;
|
|
@@ -1323,12 +1327,13 @@ declare const VMenu: {
|
|
|
1323
1327
|
noClickAnimation: boolean;
|
|
1324
1328
|
persistent: boolean;
|
|
1325
1329
|
scrim: string | boolean;
|
|
1330
|
+
submenu: boolean;
|
|
1326
1331
|
}>;
|
|
1327
1332
|
__isFragment?: never;
|
|
1328
1333
|
__isTeleport?: never;
|
|
1329
1334
|
__isSuspense?: never;
|
|
1330
1335
|
} & vue.ComponentOptionsBase<{
|
|
1331
|
-
location: Anchor;
|
|
1336
|
+
location: Anchor | undefined;
|
|
1332
1337
|
origin: "auto" | Anchor | "overlap";
|
|
1333
1338
|
transition: string | boolean | (vue.TransitionProps & {
|
|
1334
1339
|
component?: Component;
|
|
@@ -1354,6 +1359,7 @@ declare const VMenu: {
|
|
|
1354
1359
|
noClickAnimation: boolean;
|
|
1355
1360
|
persistent: boolean;
|
|
1356
1361
|
scrim: string | boolean;
|
|
1362
|
+
submenu: boolean;
|
|
1357
1363
|
} & {
|
|
1358
1364
|
offset?: string | number | number[] | undefined;
|
|
1359
1365
|
id?: string | undefined;
|
|
@@ -1409,7 +1415,7 @@ declare const VMenu: {
|
|
|
1409
1415
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
1410
1416
|
}, {
|
|
1411
1417
|
id: vue.ComputedRef<string>;
|
|
1412
|
-
ΨopenChildren: vue.ShallowRef<number
|
|
1418
|
+
ΨopenChildren: vue.ShallowRef<Set<number>>;
|
|
1413
1419
|
} & Omit<Omit<{
|
|
1414
1420
|
$: vue.ComponentInternalInstance;
|
|
1415
1421
|
$data: {};
|
|
@@ -1855,7 +1861,7 @@ declare const VMenu: {
|
|
|
1855
1861
|
onAfterLeave?: (() => any) | undefined;
|
|
1856
1862
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
1857
1863
|
"onClick:outside"?: ((e: MouseEvent) => any) | undefined;
|
|
1858
|
-
}, "target" | "
|
|
1864
|
+
}, "target" | "contentEl" | "activatorEl" | "scrimEl" | "animateClick" | "globalTop" | "localTop" | "updateLocation"> & vue.ShallowUnwrapRef<{
|
|
1859
1865
|
activatorEl: vue.Ref<HTMLElement | undefined>;
|
|
1860
1866
|
scrimEl: vue.Ref<HTMLElement | undefined>;
|
|
1861
1867
|
target: vue.ComputedRef<HTMLElement | [x: number, y: number] | undefined>;
|
|
@@ -1867,7 +1873,7 @@ declare const VMenu: {
|
|
|
1867
1873
|
}> & {} & 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, {
|
|
1868
1874
|
'update:modelValue': (value: boolean) => true;
|
|
1869
1875
|
}, string, {
|
|
1870
|
-
location: Anchor;
|
|
1876
|
+
location: Anchor | undefined;
|
|
1871
1877
|
origin: "auto" | Anchor | "overlap";
|
|
1872
1878
|
transition: string | boolean | (vue.TransitionProps & {
|
|
1873
1879
|
component?: Component;
|
|
@@ -1895,6 +1901,7 @@ declare const VMenu: {
|
|
|
1895
1901
|
noClickAnimation: boolean;
|
|
1896
1902
|
persistent: boolean;
|
|
1897
1903
|
scrim: string | boolean;
|
|
1904
|
+
submenu: boolean;
|
|
1898
1905
|
}, {}, string, vue.SlotsType<Partial<{
|
|
1899
1906
|
default: (arg: {
|
|
1900
1907
|
isActive: vue.Ref<boolean>;
|
|
@@ -1906,9 +1913,12 @@ declare const VMenu: {
|
|
|
1906
1913
|
}) => vue.VNode[];
|
|
1907
1914
|
}>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
|
|
1908
1915
|
offset: vue.PropType<StrategyProps["offset"]>;
|
|
1909
|
-
location: {
|
|
1916
|
+
location: Omit<{
|
|
1910
1917
|
type: vue.PropType<StrategyProps["location"]>;
|
|
1911
1918
|
default: string;
|
|
1919
|
+
}, "type" | "default"> & {
|
|
1920
|
+
type: vue.PropType<Anchor | undefined>;
|
|
1921
|
+
default: NonNullable<Anchor> | undefined;
|
|
1912
1922
|
};
|
|
1913
1923
|
origin: {
|
|
1914
1924
|
type: vue.PropType<StrategyProps["origin"]>;
|
|
@@ -2017,11 +2027,15 @@ declare const VMenu: {
|
|
|
2017
2027
|
};
|
|
2018
2028
|
attach: vue.PropType<boolean | string | Element>;
|
|
2019
2029
|
id: StringConstructor;
|
|
2030
|
+
submenu: BooleanConstructor;
|
|
2020
2031
|
}, vue.ExtractPropTypes<{
|
|
2021
2032
|
offset: vue.PropType<StrategyProps["offset"]>;
|
|
2022
|
-
location: {
|
|
2033
|
+
location: Omit<{
|
|
2023
2034
|
type: vue.PropType<StrategyProps["location"]>;
|
|
2024
2035
|
default: string;
|
|
2036
|
+
}, "type" | "default"> & {
|
|
2037
|
+
type: vue.PropType<Anchor | undefined>;
|
|
2038
|
+
default: NonNullable<Anchor> | undefined;
|
|
2025
2039
|
};
|
|
2026
2040
|
origin: {
|
|
2027
2041
|
type: vue.PropType<StrategyProps["origin"]>;
|
|
@@ -2130,6 +2144,7 @@ declare const VMenu: {
|
|
|
2130
2144
|
};
|
|
2131
2145
|
attach: vue.PropType<boolean | string | Element>;
|
|
2132
2146
|
id: StringConstructor;
|
|
2147
|
+
submenu: BooleanConstructor;
|
|
2133
2148
|
}>>;
|
|
2134
2149
|
type VMenu = InstanceType<typeof VMenu>;
|
|
2135
2150
|
|
|
@@ -172,8 +172,7 @@ export const VNavigationDrawer = genericComponent()({
|
|
|
172
172
|
const elementSize = computed(() => ['top', 'bottom'].includes(props.location) ? 0 : width.value);
|
|
173
173
|
const {
|
|
174
174
|
layoutItemStyles,
|
|
175
|
-
layoutItemScrimStyles
|
|
176
|
-
layoutIsReady
|
|
175
|
+
layoutItemScrimStyles
|
|
177
176
|
} = useLayoutItem({
|
|
178
177
|
id: props.name,
|
|
179
178
|
order: computed(() => parseInt(props.order, 10)),
|
|
@@ -269,9 +268,9 @@ export const VNavigationDrawer = genericComponent()({
|
|
|
269
268
|
}, scopeId), null)]
|
|
270
269
|
})]);
|
|
271
270
|
});
|
|
272
|
-
return
|
|
271
|
+
return {
|
|
273
272
|
isStuck
|
|
274
|
-
}
|
|
273
|
+
};
|
|
275
274
|
}
|
|
276
275
|
});
|
|
277
276
|
//# sourceMappingURL=VNavigationDrawer.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VNavigationDrawer.mjs","names":["VDefaultsProvider","VImg","useSticky","useTouch","useRtl","makeBorderProps","useBorder","useBackgroundColor","makeComponentProps","provideDefaults","makeDelayProps","useDelay","makeDisplayProps","useDisplay","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","useProxiedModel","makeRoundedProps","useRounded","useRouter","useScopeId","useSsrBoot","makeTagProps","makeThemeProps","provideTheme","useToggleScope","computed","nextTick","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","persistent","touchless","width","location","validator","value","includes","sticky","mobile","tag","VNavigationDrawer","name","props","emits","val","setup","_ref","attrs","emit","slots","isRtl","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","displayClasses","roundedClasses","router","isActive","v","ssrBootStyles","scopeId","rootEl","isHovering","runOpenDelay","runCloseDelay","isPersistent","isTemporary","isSticky","currentRoute","isDragging","dragProgress","el","position","layoutSize","size","elementSize","layoutItemStyles","layoutItemScrimStyles","layoutIsReady","id","order","parseInt","active","disableTransitions","absolute","isStuck","stickyStyles","scrimColor","scrimStyles","opacity","transition","undefined","VList","bgColor","hasImage","_createVNode","_Fragment","_mergeProps","class","style","height","alt","cover","src","prepend","append","onClick","then"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useSticky } from './sticky'\nimport { useTouch } from './touch'\nimport { useRtl } from '@/composables'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, nextTick, 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 | undefined\n}\n\nexport type VNavigationDrawerSlots = {\n default: never\n prepend: never\n append: never\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: [Boolean, String],\n default: true,\n },\n image: String,\n temporary: Boolean,\n persistent: 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 ...makeDelayProps(),\n ...makeDisplayProps({ mobile: null }),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n}, 'VNavigationDrawer')\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 { displayClasses, mobile } = useDisplay(props)\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const { ssrBootStyles } = useSsrBoot()\n const { scopeId } = useScopeId()\n\n const rootEl = ref<HTMLElement>()\n const isHovering = shallowRef(false)\n\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => {\n isHovering.value = value\n })\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 isPersistent = computed(() => props.persistent)\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 useToggleScope(() => props.expandOnHover && props.rail != null, () => {\n watch(isHovering, val => emit('update:rail', !val))\n })\n\n useToggleScope(() => !props.disableResizeWatcher, () => {\n watch(isTemporary, val => !props.permanent && (nextTick(() => isActive.value = !val)))\n })\n\n useToggleScope(() => !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 if (props.modelValue == null && !isTemporary.value) {\n isActive.value = props.permanent || !mobile.value\n }\n\n const { isDragging, dragProgress } = useTouch({\n el: rootEl,\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 const elementSize = computed(() => ['top', 'bottom'].includes(props.location) ? 0 : width.value)\n const { layoutItemStyles, layoutItemScrimStyles, layoutIsReady } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: location,\n layoutSize,\n elementSize,\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 useRender(() => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ runOpenDelay }\n onMouseleave={ runCloseDelay }\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--persistent': isPersistent.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 displayClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n ssrBootStyles.value,\n stickyStyles.value,\n props.style,\n ['top', 'bottom'].includes(location.value) ? { height: 'auto' } : {},\n ]}\n { ...scopeId }\n { ...attrs }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-navigation-drawer__img\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n alt=\"\"\n cover\n height=\"inherit\"\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n alt: '',\n cover: true,\n height: 'inherit',\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\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={ () => {\n if (isPersistent.value) return\n isActive.value = false\n }}\n { ...scopeId }\n />\n )}\n </Transition>\n </>\n )\n })\n\n return layoutIsReady.then(() => ({ isStuck }))\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,iBAAiB;AAAA,SACjBC,IAAI,6BAEb;AAAA,SACSC,SAAS;AAAA,SACTC,QAAQ;AAAA,SACRC,MAAM;AAAA,SACNC,eAAe,EAAEC,SAAS;AAAA,SAC1BC,kBAAkB;AAAA,SAClBC,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,mBAAmB,EAAEC,aAAa;AAAA,SAClCC,eAAe;AAAA,SACfC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,SAAS;AAAA,SACTC,UAAU;AAAA,SACVC,UAAU;AAAA,SACVC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,cAAc,6CAEvB;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,UAAU,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC1EC,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,CAACL,OAAO,EAAEF,MAAM,CAAC;IACvBQ,OAAO,EAAE;EACX,CAAC;EACDM,KAAK,EAAEd,MAAM;EACbe,SAAS,EAAEb,OAAO;EAClBc,UAAU,EAAEd,OAAO;EACnBe,SAAS,EAAEf,OAAO;EAClBgB,KAAK,EAAE;IACLX,IAAI,EAAE,CAACK,MAAM,EAAEZ,MAAM,CAAC;IACtBQ,OAAO,EAAE;EACX,CAAC;EACDW,QAAQ,EAAE;IACRZ,IAAI,EAAEP,MAA4C;IAClDQ,OAAO,EAAE,OAAO;IAChBY,SAAS,EAAGC,KAAU,IAAKxB,SAAS,CAACyB,QAAQ,CAACD,KAAK;EACrD,CAAC;EACDE,MAAM,EAAErB,OAAO;EAEf,GAAGvC,eAAe,CAAC,CAAC;EACpB,GAAGG,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC,CAAC;EACnB,GAAGE,gBAAgB,CAAC;IAAEsD,MAAM,EAAE;EAAK,CAAC,CAAC;EACrC,GAAGpD,kBAAkB,CAAC,CAAC;EACvB,GAAGE,mBAAmB,CAAC,CAAC;EACxB,GAAGG,gBAAgB,CAAC,CAAC;EACrB,GAAGK,YAAY,CAAC;IAAE2C,GAAG,EAAE;EAAM,CAAC,CAAC;EAC/B,GAAG1C,cAAc,CAAC;AACpB,CAAC,EAAE,mBAAmB,CAAC;AAEvB,OAAO,MAAM2C,iBAAiB,GAAGjC,gBAAgB,CAAyB,CAAC,CAAC;EAC1EkC,IAAI,EAAE,mBAAmB;EAEzBC,KAAK,EAAE9B,0BAA0B,CAAC,CAAC;EAEnC+B,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,GAAG1E,MAAM,CAAC,CAAC;IAC1B,MAAM;MAAE2E;IAAa,CAAC,GAAGrD,YAAY,CAAC4C,KAAK,CAAC;IAC5C,MAAM;MAAEU;IAAc,CAAC,GAAG1E,SAAS,CAACgE,KAAK,CAAC;IAC1C,MAAM;MAAEW,sBAAsB;MAAEC;IAAsB,CAAC,GAAG3E,kBAAkB,CAACyB,KAAK,CAACsC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnG,MAAM;MAAEa;IAAiB,CAAC,GAAGpE,YAAY,CAACuD,KAAK,CAAC;IAChD,MAAM;MAAEc,cAAc;MAAElB;IAAO,CAAC,GAAGrD,UAAU,CAACyD,KAAK,CAAC;IACpD,MAAM;MAAEe;IAAe,CAAC,GAAGjE,UAAU,CAACkD,KAAK,CAAC;IAC5C,MAAMgB,MAAM,GAAGjE,SAAS,CAAC,CAAC;IAC1B,MAAMkE,QAAQ,GAAGrE,eAAe,CAACoD,KAAK,EAAE,YAAY,EAAE,IAAI,EAAEkB,CAAC,IAAI,CAAC,CAACA,CAAC,CAAC;IACrE,MAAM;MAAEC;IAAc,CAAC,GAAGlE,UAAU,CAAC,CAAC;IACtC,MAAM;MAAEmE;IAAQ,CAAC,GAAGpE,UAAU,CAAC,CAAC;IAEhC,MAAMqE,MAAM,GAAG7D,GAAG,CAAc,CAAC;IACjC,MAAM8D,UAAU,GAAG7D,UAAU,CAAC,KAAK,CAAC;IAEpC,MAAM;MAAE8D,YAAY;MAAEC;IAAc,CAAC,GAAGnF,QAAQ,CAAC2D,KAAK,EAAEP,KAAK,IAAI;MAC/D6B,UAAU,CAAC7B,KAAK,GAAGA,KAAK;IAC1B,CAAC,CAAC;IAEF,MAAMH,KAAK,GAAGhC,QAAQ,CAAC,MAAM;MAC3B,OAAQ0C,KAAK,CAAClB,IAAI,IAAIkB,KAAK,CAACxB,aAAa,IAAI8C,UAAU,CAAC7B,KAAK,GACzDT,MAAM,CAACgB,KAAK,CAACV,KAAK,CAAC,GACnBN,MAAM,CAACgB,KAAK,CAAClB,IAAI,GAAGkB,KAAK,CAACjB,SAAS,GAAGiB,KAAK,CAACV,KAAK,CAAC;IACxD,CAAC,CAAC;IACF,MAAMC,QAAQ,GAAGjC,QAAQ,CAAC,MAAM;MAC9B,OAAOS,UAAU,CAACiC,KAAK,CAACT,QAAQ,EAAEiB,KAAK,CAACf,KAAK,CAAC;IAChD,CAAC,CAAC;IACF,MAAMgC,YAAY,GAAGnE,QAAQ,CAAC,MAAM0C,KAAK,CAACZ,UAAU,CAAC;IACrD,MAAMsC,WAAW,GAAGpE,QAAQ,CAAC,MAAM,CAAC0C,KAAK,CAACnB,SAAS,KAAKe,MAAM,CAACH,KAAK,IAAIO,KAAK,CAACb,SAAS,CAAC,CAAC;IACzF,MAAMwC,QAAQ,GAAGrE,QAAQ,CAAC,MACxB0C,KAAK,CAACL,MAAM,IACZ,CAAC+B,WAAW,CAACjC,KAAK,IAClBF,QAAQ,CAACE,KAAK,KAAK,QACrB,CAAC;IAEDpC,cAAc,CAAC,MAAM2C,KAAK,CAACxB,aAAa,IAAIwB,KAAK,CAAClB,IAAI,IAAI,IAAI,EAAE,MAAM;MACpElB,KAAK,CAAC0D,UAAU,EAAEpB,GAAG,IAAII,IAAI,CAAC,aAAa,EAAE,CAACJ,GAAG,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF7C,cAAc,CAAC,MAAM,CAAC2C,KAAK,CAAC3B,oBAAoB,EAAE,MAAM;MACtDT,KAAK,CAAC8D,WAAW,EAAExB,GAAG,IAAI,CAACF,KAAK,CAACnB,SAAS,IAAKtB,QAAQ,CAAC,MAAM0D,QAAQ,CAACxB,KAAK,GAAG,CAACS,GAAG,CAAE,CAAC;IACxF,CAAC,CAAC;IAEF7C,cAAc,CAAC,MAAM,CAAC2C,KAAK,CAACzB,mBAAmB,IAAI,CAAC,CAACyC,MAAM,EAAE,MAAM;MACjEpD,KAAK,CAACoD,MAAM,CAAEY,YAAY,EAAE,MAAMF,WAAW,CAACjC,KAAK,KAAKwB,QAAQ,CAACxB,KAAK,GAAG,KAAK,CAAC,CAAC;IAClF,CAAC,CAAC;IAEF7B,KAAK,CAAC,MAAMoC,KAAK,CAACnB,SAAS,EAAEqB,GAAG,IAAI;MAClC,IAAIA,GAAG,EAAEe,QAAQ,CAACxB,KAAK,GAAG,IAAI;IAChC,CAAC,CAAC;IAEF,IAAIO,KAAK,CAACtB,UAAU,IAAI,IAAI,IAAI,CAACgD,WAAW,CAACjC,KAAK,EAAE;MAClDwB,QAAQ,CAACxB,KAAK,GAAGO,KAAK,CAACnB,SAAS,IAAI,CAACe,MAAM,CAACH,KAAK;IACnD;IAEA,MAAM;MAAEoC,UAAU;MAAEC;IAAa,CAAC,GAAGjG,QAAQ,CAAC;MAC5CkG,EAAE,EAAEV,MAAM;MACVJ,QAAQ;MACRS,WAAW;MACXpC,KAAK;MACLD,SAAS,EAAE3B,KAAK,CAACsC,KAAK,EAAE,WAAW,CAAC;MACpCgC,QAAQ,EAAEzC;IACZ,CAAC,CAAC;IAEF,MAAM0C,UAAU,GAAG3E,QAAQ,CAAC,MAAM;MAChC,MAAM4E,IAAI,GAAGR,WAAW,CAACjC,KAAK,GAAG,CAAC,GAC9BO,KAAK,CAAClB,IAAI,IAAIkB,KAAK,CAACxB,aAAa,GAAGQ,MAAM,CAACgB,KAAK,CAACjB,SAAS,CAAC,GAC3DO,KAAK,CAACG,KAAK;MAEf,OAAOoC,UAAU,CAACpC,KAAK,GAAGyC,IAAI,GAAGJ,YAAY,CAACrC,KAAK,GAAGyC,IAAI;IAC5D,CAAC,CAAC;IACF,MAAMC,WAAW,GAAG7E,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAACoC,QAAQ,CAACM,KAAK,CAACT,QAAQ,CAAC,GAAG,CAAC,GAAGD,KAAK,CAACG,KAAK,CAAC;IAChG,MAAM;MAAE2C,gBAAgB;MAAEC,qBAAqB;MAAEC;IAAc,CAAC,GAAG3F,aAAa,CAAC;MAC/E4F,EAAE,EAAEvC,KAAK,CAACD,IAAI;MACdyC,KAAK,EAAElF,QAAQ,CAAC,MAAMmF,QAAQ,CAACzC,KAAK,CAACwC,KAAK,EAAE,EAAE,CAAC,CAAC;MAChDR,QAAQ,EAAEzC,QAAQ;MAClB0C,UAAU;MACVE,WAAW;MACXO,MAAM,EAAEpF,QAAQ,CAAC,MAAM2D,QAAQ,CAACxB,KAAK,IAAIoC,UAAU,CAACpC,KAAK,CAAC;MAC1DkD,kBAAkB,EAAErF,QAAQ,CAAC,MAAMuE,UAAU,CAACpC,KAAK,CAAC;MACpDmD,QAAQ,EAAEtF,QAAQ,CAAC;MACjB;MACA0C,KAAK,CAAC4C,QAAQ,IAAKjB,QAAQ,CAAClC,KAAK,IAAI,OAAOoD,OAAO,CAACpD,KAAK,KAAK,QAChE;IACF,CAAC,CAAC;IAEF,MAAM;MAAEoD,OAAO;MAAEC;IAAa,CAAC,GAAGlH,SAAS,CAAC;MAAEyF,MAAM;MAAEM,QAAQ;MAAES;IAAiB,CAAC,CAAC;IAEnF,MAAMW,UAAU,GAAG9G,kBAAkB,CAACqB,QAAQ,CAAC,MAAM;MACnD,OAAO,OAAO0C,KAAK,CAACf,KAAK,KAAK,QAAQ,GAAGe,KAAK,CAACf,KAAK,GAAG,IAAI;IAC7D,CAAC,CAAC,CAAC;IACH,MAAM+D,WAAW,GAAG1F,QAAQ,CAAC,OAAO;MAClC,IAAGuE,UAAU,CAACpC,KAAK,GAAG;QACpBwD,OAAO,EAAEnB,YAAY,CAACrC,KAAK,GAAG,GAAG;QACjCyD,UAAU,EAAE;MACd,CAAC,GAAGC,SAAS;MACb,GAAGd,qBAAqB,CAAC5C;IAC3B,CAAC,CAAC,CAAC;IAEHtD,eAAe,CAAC;MACdiH,KAAK,EAAE;QACLC,OAAO,EAAE;MACX;IACF,CAAC,CAAC;IAEFrF,SAAS,CAAC,MAAM;MACd,MAAMsF,QAAQ,GAAI/C,KAAK,CAACrB,KAAK,IAAIc,KAAK,CAACd,KAAM;MAE7C,OAAAqE,YAAA,CAAAC,SAAA,SAAAD,YAAA,CAAAvD,KAAA,CAAAH,GAAA,EAAA4D,WAAA;QAAA,OAGYpC,MAAM;QAAA,gBACGE,YAAY;QAAA,gBACZC,aAAa;QAAA,SACrB,CACL,qBAAqB,EACrB,wBAAwBjC,QAAQ,CAACE,KAAK,EAAE,EACxC;UACE,sCAAsC,EAAEO,KAAK,CAACxB,aAAa;UAC3D,+BAA+B,EAAEwB,KAAK,CAACvB,QAAQ;UAC/C,kCAAkC,EAAE6C,UAAU,CAAC7B,KAAK;UACpD,2BAA2B,EAAEO,KAAK,CAAClB,IAAI;UACvC,gCAAgC,EAAE4C,WAAW,CAACjC,KAAK;UACnD,iCAAiC,EAAEgC,YAAY,CAAChC,KAAK;UACrD,6BAA6B,EAAEwB,QAAQ,CAACxB,KAAK;UAC7C,6BAA6B,EAAEkC,QAAQ,CAAClC;QAC1C,CAAC,EACDgB,YAAY,CAAChB,KAAK,EAClBkB,sBAAsB,CAAClB,KAAK,EAC5BiB,aAAa,CAACjB,KAAK,EACnBqB,cAAc,CAACrB,KAAK,EACpBoB,gBAAgB,CAACpB,KAAK,EACtBsB,cAAc,CAACtB,KAAK,EACpBO,KAAK,CAAC0D,KAAK,CACZ;QAAA,SACM,CACL9C,qBAAqB,CAACnB,KAAK,EAC3B2C,gBAAgB,CAAC3C,KAAK,EACtB0B,aAAa,CAAC1B,KAAK,EACnBqD,YAAY,CAACrD,KAAK,EAClBO,KAAK,CAAC2D,KAAK,EACX,CAAC,KAAK,EAAE,QAAQ,CAAC,CAACjE,QAAQ,CAACH,QAAQ,CAACE,KAAK,CAAC,GAAG;UAAEmE,MAAM,EAAE;QAAO,CAAC,GAAG,CAAC,CAAC;MACrE,GACIxC,OAAO,EACPf,KAAK;QAAAzB,OAAA,EAAAA,CAAA,MAER0E,QAAQ,IAAAC,YAAA;UAAA;UAAA;QAAA,IAEJ,CAAChD,KAAK,CAACrB,KAAK,GAAAqE,YAAA,CAAA5H,IAAA;UAAA;UAAA;UAAA;UAAA;UAAA,OAMJqE,KAAK,CAACd;QAAK,WAAAqE,YAAA,CAAA7H,iBAAA;UAAA;UAAA,YAKN,CAACsE,KAAK,CAACd,KAAK;UAAA,YACb;YACRvD,IAAI,EAAE;cACJkI,GAAG,EAAE,EAAE;cACPC,KAAK,EAAE,IAAI;cACXF,MAAM,EAAE,SAAS;cACjBG,GAAG,EAAE/D,KAAK,CAACd;YACb;UACF;QAAC,GACiBqB,KAAK,CAACrB,KAAK,CAEhC,EAEJ,EAECqB,KAAK,CAACyD,OAAO,IAAAT,YAAA;UAAA;QAAA,IAEThD,KAAK,CAACyD,OAAO,GAAG,CAAC,EAEtB,EAAAT,YAAA;UAAA;QAAA,IAGGhD,KAAK,CAAC3B,OAAO,GAAG,CAAC,IAGnB2B,KAAK,CAAC0D,MAAM,IAAAV,YAAA;UAAA;QAAA,IAERhD,KAAK,CAAC0D,MAAM,GAAG,CAAC,EAErB;MAAA,IAAAV,YAAA,CAAA5F,UAAA;QAAA;MAAA;QAAAiB,OAAA,EAAAA,CAAA,MAIC8C,WAAW,CAACjC,KAAK,KAAKoC,UAAU,CAACpC,KAAK,IAAIwB,QAAQ,CAACxB,KAAK,CAAC,IAAI,CAAC,CAACO,KAAK,CAACf,KAAK,IAAAsE,YAAA,QAAAE,WAAA;UAAA,SAEjE,CAAC,4BAA4B,EAAEV,UAAU,CAACpC,sBAAsB,CAAClB,KAAK,CAAC;UAAA,SACvE,CAACuD,WAAW,CAACvD,KAAK,EAAEsD,UAAU,CAACnC,qBAAqB,CAACnB,KAAK,CAAC;UAAA,WACxDyE,CAAA,KAAM;YACd,IAAIzC,YAAY,CAAChC,KAAK,EAAE;YACxBwB,QAAQ,CAACxB,KAAK,GAAG,KAAK;UACxB;QAAC,GACI2B,OAAO,QAEf;MAAA;IAIT,CAAC,CAAC;IAEF,OAAOkB,aAAa,CAAC6B,IAAI,CAAC,OAAO;MAAEtB;IAAQ,CAAC,CAAC,CAAC;EAChD;AACF,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VNavigationDrawer.mjs","names":["VDefaultsProvider","VImg","useSticky","useTouch","useRtl","makeBorderProps","useBorder","useBackgroundColor","makeComponentProps","provideDefaults","makeDelayProps","useDelay","makeDisplayProps","useDisplay","makeElevationProps","useElevation","makeLayoutItemProps","useLayoutItem","useProxiedModel","makeRoundedProps","useRounded","useRouter","useScopeId","useSsrBoot","makeTagProps","makeThemeProps","provideTheme","useToggleScope","computed","nextTick","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","persistent","touchless","width","location","validator","value","includes","sticky","mobile","tag","VNavigationDrawer","name","props","emits","val","setup","_ref","attrs","emit","slots","isRtl","themeClasses","borderClasses","backgroundColorClasses","backgroundColorStyles","elevationClasses","displayClasses","roundedClasses","router","isActive","v","ssrBootStyles","scopeId","rootEl","isHovering","runOpenDelay","runCloseDelay","isPersistent","isTemporary","isSticky","currentRoute","isDragging","dragProgress","el","position","layoutSize","size","elementSize","layoutItemStyles","layoutItemScrimStyles","id","order","parseInt","active","disableTransitions","absolute","isStuck","stickyStyles","scrimColor","scrimStyles","opacity","transition","undefined","VList","bgColor","hasImage","_createVNode","_Fragment","_mergeProps","class","style","height","alt","cover","src","prepend","append","onClick"],"sources":["../../../src/components/VNavigationDrawer/VNavigationDrawer.tsx"],"sourcesContent":["// Styles\nimport './VNavigationDrawer.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useSticky } from './sticky'\nimport { useTouch } from './touch'\nimport { useRtl } from '@/composables'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { makeDisplayProps, useDisplay } from '@/composables/display'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, nextTick, 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 | undefined\n}\n\nexport type VNavigationDrawerSlots = {\n default: never\n prepend: never\n append: never\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: [Boolean, String],\n default: true,\n },\n image: String,\n temporary: Boolean,\n persistent: 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 ...makeDelayProps(),\n ...makeDisplayProps({ mobile: null }),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n}, 'VNavigationDrawer')\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 { displayClasses, mobile } = useDisplay(props)\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const { ssrBootStyles } = useSsrBoot()\n const { scopeId } = useScopeId()\n\n const rootEl = ref<HTMLElement>()\n const isHovering = shallowRef(false)\n\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => {\n isHovering.value = value\n })\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 isPersistent = computed(() => props.persistent)\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 useToggleScope(() => props.expandOnHover && props.rail != null, () => {\n watch(isHovering, val => emit('update:rail', !val))\n })\n\n useToggleScope(() => !props.disableResizeWatcher, () => {\n watch(isTemporary, val => !props.permanent && (nextTick(() => isActive.value = !val)))\n })\n\n useToggleScope(() => !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 if (props.modelValue == null && !isTemporary.value) {\n isActive.value = props.permanent || !mobile.value\n }\n\n const { isDragging, dragProgress } = useTouch({\n el: rootEl,\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 const elementSize = computed(() => ['top', 'bottom'].includes(props.location) ? 0 : width.value)\n const { layoutItemStyles, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: location,\n layoutSize,\n elementSize,\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 useRender(() => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ runOpenDelay }\n onMouseleave={ runCloseDelay }\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--persistent': isPersistent.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 displayClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n ssrBootStyles.value,\n stickyStyles.value,\n props.style,\n ['top', 'bottom'].includes(location.value) ? { height: 'auto' } : {},\n ]}\n { ...scopeId }\n { ...attrs }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-navigation-drawer__img\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n alt=\"\"\n cover\n height=\"inherit\"\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n alt: '',\n cover: true,\n height: 'inherit',\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\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={ () => {\n if (isPersistent.value) return\n isActive.value = false\n }}\n { ...scopeId }\n />\n )}\n </Transition>\n </>\n )\n })\n\n return {\n isStuck,\n }\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -94,6 +94,9 @@ export const VOverlay = genericComponent()({
|
|
|
94
94
|
emit
|
|
95
95
|
} = _ref;
|
|
96
96
|
const vm = getCurrentInstance('VOverlay');
|
|
97
|
+
const root = ref();
|
|
98
|
+
const scrimEl = ref();
|
|
99
|
+
const contentEl = ref();
|
|
97
100
|
const model = useProxiedModel(props, 'modelValue');
|
|
98
101
|
const isActive = computed({
|
|
99
102
|
get: () => model.value,
|
|
@@ -131,7 +134,8 @@ export const VOverlay = genericComponent()({
|
|
|
131
134
|
scrimEvents
|
|
132
135
|
} = useActivator(props, {
|
|
133
136
|
isActive,
|
|
134
|
-
isTop: localTop
|
|
137
|
+
isTop: localTop,
|
|
138
|
+
contentEl
|
|
135
139
|
});
|
|
136
140
|
const {
|
|
137
141
|
teleportTarget
|
|
@@ -152,9 +156,6 @@ export const VOverlay = genericComponent()({
|
|
|
152
156
|
watch(() => props.disabled, v => {
|
|
153
157
|
if (v) isActive.value = false;
|
|
154
158
|
});
|
|
155
|
-
const root = ref();
|
|
156
|
-
const scrimEl = ref();
|
|
157
|
-
const contentEl = ref();
|
|
158
159
|
const {
|
|
159
160
|
contentStyles,
|
|
160
161
|
updateLocation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VOverlay.mjs","names":["makeLocationStrategyProps","useLocationStrategies","makeScrollStrategyProps","useScrollStrategies","makeActivatorProps","useActivator","useBackgroundColor","makeComponentProps","makeDimensionProps","useDimension","useHydration","makeLazyProps","useLazy","useRtl","useProxiedModel","useBackButton","useRouter","useScopeId","useStack","useTeleport","makeThemeProps","provideTheme","useToggleScope","makeTransitionProps","MaybeTransition","ClickOutside","computed","mergeProps","onBeforeUnmount","ref","Teleport","toRef","Transition","watch","animate","convertToUnit","genericComponent","getCurrentInstance","getScrollParent","IN_BROWSER","propsFactory","standardEasing","useRender","Scrim","props","modelValue","color","rest","_createVNode","default","_mergeProps","backgroundColorClasses","value","backgroundColorStyles","makeVOverlayProps","absolute","Boolean","attach","String","Object","closeOnBack","type","contained","contentClass","contentProps","disabled","opacity","Number","noClickAnimation","persistent","scrim","zIndex","VOverlay","name","directives","inheritAttrs","_disableGlobalStack","emits","e","afterEnter","afterLeave","setup","_ref","slots","attrs","emit","vm","model","isActive","get","set","v","themeClasses","rtlClasses","isRtl","hasContent","onAfterLeave","_onAfterLeave","scrimColor","globalTop","localTop","stackStyles","activatorEl","activatorRef","target","targetEl","targetRef","activatorEvents","contentEvents","scrimEvents","isTop","teleportTarget","rootNode","getRootNode","proxy","$el","ShadowRoot","dimensionStyles","isMounted","scopeId","root","scrimEl","contentEl","contentStyles","updateLocation","onClickOutside","animateClick","closeConditional","MouseEvent","shadowTarget","val","window","addEventListener","onKeydown","removeEventListener","immediate","key","contains","document","activeElement","focus","router","next","top","scrollParent","scrollingElement","scrollTop","transformOrigin","transform","duration","easing","onAfterEnter","_Fragment","activator","activatorProps","class","style","transition","_withDirectives","_vShow","_resolveDirective","handler","include"],"sources":["../../../src/components/VOverlay/VOverlay.tsx"],"sourcesContent":["// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useHydration } from '@/composables/hydration'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport { ClickOutside } from '@/directives/click-outside'\n\n// Utilities\nimport {\n computed,\n mergeProps,\n onBeforeUnmount,\n ref,\n Teleport,\n toRef,\n Transition,\n watch,\n} from 'vue'\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n IN_BROWSER,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { TemplateRef } from '@/util'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n <Transition name=\"fade-transition\" appear>\n { props.modelValue && (\n <div\n class={[\n 'v-overlay__scrim',\n props.color.backgroundColorClasses.value,\n ]}\n style={ props.color.backgroundColorStyles.value }\n { ...rest }\n />\n )}\n </Transition>\n )\n}\n\nexport type OverlaySlots = {\n default: { isActive: Ref<boolean> }\n activator: { isActive: boolean, props: Record<string, any>, targetRef: TemplateRef }\n}\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType<boolean | string | Element>,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n opacity: [Number, String],\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [Boolean, String],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'VOverlay')\n\nexport const VOverlay = genericComponent<OverlaySlots>()({\n name: 'VOverlay',\n\n directives: { ClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...makeVOverlayProps(),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n afterEnter: () => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const vm = getCurrentInstance('VOverlay')\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave: _onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const { globalTop, localTop, stackStyles } = useStack(isActive, toRef(props, 'zIndex'), props._disableGlobalStack)\n const {\n activatorEl, activatorRef,\n target, targetEl, targetRef,\n activatorEvents,\n contentEvents,\n scrimEvents,\n } = useActivator(props, { isActive, isTop: localTop })\n const { teleportTarget } = useTeleport(() => {\n const target = props.attach || props.contained\n if (target) return target\n const rootNode = activatorEl?.value?.getRootNode() || vm.proxy?.$el?.getRootNode()\n if (rootNode instanceof ShadowRoot) return rootNode\n return false\n })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const root = ref<HTMLElement>()\n const scrimEl = ref<HTMLElement>()\n const contentEl = ref<HTMLElement>()\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n target,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n targetEl,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional (e: Event) {\n return isActive.value && globalTop.value && (\n // If using scrim, only close if clicking on it rather than anything opened on top\n !props.scrim || e.target === scrimEl.value || (e instanceof MouseEvent && e.shadowTarget === scrimEl.value)\n )\n }\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n onBeforeUnmount(() => {\n if (!IN_BROWSER) return\n\n window.removeEventListener('keydown', onKeydown)\n })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!props.persistent) {\n isActive.value = false\n if (contentEl.value?.contains(document.activeElement)) {\n activatorEl.value?.focus()\n }\n } else animateClick()\n }\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref<number>()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n function onAfterEnter () {\n emit('afterEnter')\n }\n\n function onAfterLeave () {\n _onAfterLeave()\n emit('afterLeave')\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n targetRef,\n props: mergeProps({\n ref: activatorRef,\n }, activatorEvents.value, props.activatorProps),\n })}\n\n { isMounted.value && hasContent.value && (\n <Teleport\n disabled={ !teleportTarget.value }\n to={ teleportTarget.value }\n >\n <div\n class={[\n 'v-overlay',\n {\n 'v-overlay--absolute': props.absolute || props.contained,\n 'v-overlay--active': isActive.value,\n 'v-overlay--contained': props.contained,\n },\n themeClasses.value,\n rtlClasses.value,\n props.class,\n ]}\n style={[\n stackStyles.value,\n {\n '--v-overlay-opacity': props.opacity,\n top: convertToUnit(top.value),\n },\n props.style,\n ]}\n ref={ root }\n { ...scopeId }\n { ...attrs }\n >\n <Scrim\n color={ scrimColor }\n modelValue={ isActive.value && !!props.scrim }\n ref={ scrimEl }\n { ...scrimEvents.value }\n />\n <MaybeTransition\n appear\n persisted\n transition={ props.transition }\n target={ target.value }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n >\n <div\n ref={ contentEl }\n v-show={ isActive.value }\n v-click-outside={{ handler: onClickOutside, closeConditional, include: () => [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...contentEvents.value }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n </div>\n </MaybeTransition>\n </div>\n </Teleport>\n )}\n </>\n ))\n\n return {\n activatorEl,\n scrimEl,\n target,\n animateClick,\n contentEl,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType<typeof VOverlay>\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VOverlay.mjs","names":["makeLocationStrategyProps","useLocationStrategies","makeScrollStrategyProps","useScrollStrategies","makeActivatorProps","useActivator","useBackgroundColor","makeComponentProps","makeDimensionProps","useDimension","useHydration","makeLazyProps","useLazy","useRtl","useProxiedModel","useBackButton","useRouter","useScopeId","useStack","useTeleport","makeThemeProps","provideTheme","useToggleScope","makeTransitionProps","MaybeTransition","ClickOutside","computed","mergeProps","onBeforeUnmount","ref","Teleport","toRef","Transition","watch","animate","convertToUnit","genericComponent","getCurrentInstance","getScrollParent","IN_BROWSER","propsFactory","standardEasing","useRender","Scrim","props","modelValue","color","rest","_createVNode","default","_mergeProps","backgroundColorClasses","value","backgroundColorStyles","makeVOverlayProps","absolute","Boolean","attach","String","Object","closeOnBack","type","contained","contentClass","contentProps","disabled","opacity","Number","noClickAnimation","persistent","scrim","zIndex","VOverlay","name","directives","inheritAttrs","_disableGlobalStack","emits","e","afterEnter","afterLeave","setup","_ref","slots","attrs","emit","vm","root","scrimEl","contentEl","model","isActive","get","set","v","themeClasses","rtlClasses","isRtl","hasContent","onAfterLeave","_onAfterLeave","scrimColor","globalTop","localTop","stackStyles","activatorEl","activatorRef","target","targetEl","targetRef","activatorEvents","contentEvents","scrimEvents","isTop","teleportTarget","rootNode","getRootNode","proxy","$el","ShadowRoot","dimensionStyles","isMounted","scopeId","contentStyles","updateLocation","onClickOutside","animateClick","closeConditional","MouseEvent","shadowTarget","val","window","addEventListener","onKeydown","removeEventListener","immediate","key","contains","document","activeElement","focus","router","next","top","scrollParent","scrollingElement","scrollTop","transformOrigin","transform","duration","easing","onAfterEnter","_Fragment","activator","activatorProps","class","style","transition","_withDirectives","_vShow","_resolveDirective","handler","include"],"sources":["../../../src/components/VOverlay/VOverlay.tsx"],"sourcesContent":["// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useHydration } from '@/composables/hydration'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useStack } from '@/composables/stack'\nimport { useTeleport } from '@/composables/teleport'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport { ClickOutside } from '@/directives/click-outside'\n\n// Utilities\nimport {\n computed,\n mergeProps,\n onBeforeUnmount,\n ref,\n Teleport,\n toRef,\n Transition,\n watch,\n} from 'vue'\nimport {\n animate,\n convertToUnit,\n genericComponent,\n getCurrentInstance,\n getScrollParent,\n IN_BROWSER,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { BackgroundColorData } from '@/composables/color'\nimport type { TemplateRef } from '@/util'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n <Transition name=\"fade-transition\" appear>\n { props.modelValue && (\n <div\n class={[\n 'v-overlay__scrim',\n props.color.backgroundColorClasses.value,\n ]}\n style={ props.color.backgroundColorStyles.value }\n { ...rest }\n />\n )}\n </Transition>\n )\n}\n\nexport type OverlaySlots = {\n default: { isActive: Ref<boolean> }\n activator: { isActive: boolean, props: Record<string, any>, targetRef: TemplateRef }\n}\n\nexport const makeVOverlayProps = propsFactory({\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType<boolean | string | Element>,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n opacity: [Number, String],\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [Boolean, String],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeLazyProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n}, 'VOverlay')\n\nexport const VOverlay = genericComponent<OverlaySlots>()({\n name: 'VOverlay',\n\n directives: { ClickOutside },\n\n inheritAttrs: false,\n\n props: {\n _disableGlobalStack: Boolean,\n\n ...makeVOverlayProps(),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n afterEnter: () => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const vm = getCurrentInstance('VOverlay')\n const root = ref<HTMLElement>()\n const scrimEl = ref<HTMLElement>()\n const contentEl = ref<HTMLElement>()\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { themeClasses } = provideTheme(props)\n const { rtlClasses, isRtl } = useRtl()\n const { hasContent, onAfterLeave: _onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const { globalTop, localTop, stackStyles } = useStack(isActive, toRef(props, 'zIndex'), props._disableGlobalStack)\n const {\n activatorEl, activatorRef,\n target, targetEl, targetRef,\n activatorEvents,\n contentEvents,\n scrimEvents,\n } = useActivator(props, { isActive, isTop: localTop, contentEl })\n const { teleportTarget } = useTeleport(() => {\n const target = props.attach || props.contained\n if (target) return target\n const rootNode = activatorEl?.value?.getRootNode() || vm.proxy?.$el?.getRootNode()\n if (rootNode instanceof ShadowRoot) return rootNode\n return false\n })\n const { dimensionStyles } = useDimension(props)\n const isMounted = useHydration()\n const { scopeId } = useScopeId()\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n isRtl,\n contentEl,\n target,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n targetEl,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional (e: Event) {\n return isActive.value && globalTop.value && (\n // If using scrim, only close if clicking on it rather than anything opened on top\n !props.scrim || e.target === scrimEl.value || (e instanceof MouseEvent && e.shadowTarget === scrimEl.value)\n )\n }\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n onBeforeUnmount(() => {\n if (!IN_BROWSER) return\n\n window.removeEventListener('keydown', onKeydown)\n })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && globalTop.value) {\n if (!props.persistent) {\n isActive.value = false\n if (contentEl.value?.contains(document.activeElement)) {\n activatorEl.value?.focus()\n }\n } else animateClick()\n }\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (globalTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref<number>()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value && animate(contentEl.value, [\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n function onAfterEnter () {\n emit('afterEnter')\n }\n\n function onAfterLeave () {\n _onAfterLeave()\n emit('afterLeave')\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n targetRef,\n props: mergeProps({\n ref: activatorRef,\n }, activatorEvents.value, props.activatorProps),\n })}\n\n { isMounted.value && hasContent.value && (\n <Teleport\n disabled={ !teleportTarget.value }\n to={ teleportTarget.value }\n >\n <div\n class={[\n 'v-overlay',\n {\n 'v-overlay--absolute': props.absolute || props.contained,\n 'v-overlay--active': isActive.value,\n 'v-overlay--contained': props.contained,\n },\n themeClasses.value,\n rtlClasses.value,\n props.class,\n ]}\n style={[\n stackStyles.value,\n {\n '--v-overlay-opacity': props.opacity,\n top: convertToUnit(top.value),\n },\n props.style,\n ]}\n ref={ root }\n { ...scopeId }\n { ...attrs }\n >\n <Scrim\n color={ scrimColor }\n modelValue={ isActive.value && !!props.scrim }\n ref={ scrimEl }\n { ...scrimEvents.value }\n />\n <MaybeTransition\n appear\n persisted\n transition={ props.transition }\n target={ target.value }\n onAfterEnter={ onAfterEnter }\n onAfterLeave={ onAfterLeave }\n >\n <div\n ref={ contentEl }\n v-show={ isActive.value }\n v-click-outside={{ handler: onClickOutside, closeConditional, include: () => [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...contentEvents.value }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n </div>\n </MaybeTransition>\n </div>\n </Teleport>\n )}\n </>\n ))\n\n return {\n activatorEl,\n scrimEl,\n target,\n animateClick,\n contentEl,\n globalTop,\n localTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType<typeof VOverlay>\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -73,12 +73,6 @@ function getIntrinsicSize(el, isRtl) {
|
|
|
73
73
|
// el.style.removeProperty('max-width')
|
|
74
74
|
// el.style.removeProperty('max-height')
|
|
75
75
|
|
|
76
|
-
if (isRtl) {
|
|
77
|
-
el.style.removeProperty('left');
|
|
78
|
-
} else {
|
|
79
|
-
el.style.removeProperty('right');
|
|
80
|
-
}
|
|
81
|
-
|
|
82
76
|
/* eslint-disable-next-line sonarjs/prefer-immediate-return */
|
|
83
77
|
const contentBox = nullifyTransforms(el);
|
|
84
78
|
if (isRtl) {
|