From a5bb25dd95be81d34564c5b5c4e3174ec126dbdb Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Thu, 25 Apr 2024 11:48:27 +0200 Subject: [PATCH] feat(DropdownMenu): handle item type `separator` --- playground/pages/dropdown-menu.vue | 2 ++ src/runtime/components/DropdownMenu.vue | 2 +- src/runtime/components/DropdownMenuContent.vue | 1 + src/theme/dropdown-menu.ts | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/playground/pages/dropdown-menu.vue b/playground/pages/dropdown-menu.vue index 08a176d9..a03e3658 100644 --- a/playground/pages/dropdown-menu.vue +++ b/playground/pages/dropdown-menu.vue @@ -95,6 +95,8 @@ const items = [ label: 'Support', icon: 'i-heroicons-lifebuoy', to: '/dropdown-menu' + }, { + type: 'separator' as const }, { label: 'Keyboard Shortcuts', icon: 'i-heroicons-key' diff --git a/src/runtime/components/DropdownMenu.vue b/src/runtime/components/DropdownMenu.vue index a539ba63..5d259d42 100644 --- a/src/runtime/components/DropdownMenu.vue +++ b/src/runtime/components/DropdownMenu.vue @@ -22,7 +22,7 @@ export interface DropdownMenuItem extends Omit { * The item type. * @defaultValue "link" */ - type?: 'label' | 'link' + type?: 'label' | 'separator' | 'link' slot?: string open?: boolean defaultOpen?: boolean diff --git a/src/runtime/components/DropdownMenuContent.vue b/src/runtime/components/DropdownMenuContent.vue index ff0aa9cc..9120fa82 100644 --- a/src/runtime/components/DropdownMenuContent.vue +++ b/src/runtime/components/DropdownMenuContent.vue @@ -73,6 +73,7 @@ const groups = computed(() => props.items?.length ? (Array.isArray(props.items[0 +