From 735f81e771d3673f444be99b93cff1ef93c3ac6c Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Tue, 16 Apr 2024 17:27:12 +0200 Subject: [PATCH] feat(DropdownMenu): pass `index` to slots --- src/runtime/components/DropdownMenu.vue | 7 +++++-- src/runtime/components/DropdownMenuContent.vue | 18 +++++++++--------- .../__snapshots__/DropdownMenu.spec.ts.snap | 6 +++--- 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/src/runtime/components/DropdownMenu.vue b/src/runtime/components/DropdownMenu.vue index d7eb2b0b..ba681f91 100644 --- a/src/runtime/components/DropdownMenu.vue +++ b/src/runtime/components/DropdownMenu.vue @@ -41,7 +41,7 @@ export interface DropdownMenuProps extends Omit export interface DropdownMenuEmits extends DropdownMenuRootEmits {} -type SlotProps = (props: { item: T, active?: boolean }) => any +type SlotProps = (props: { item: T, active?: boolean, index: number }) => any export interface DropdownMenuSlots { default(): any @@ -59,7 +59,10 @@ import { reactivePick } from '@vueuse/core' import { UDropdownMenuContent } from '#components' import { omit } from '#ui/utils' -const props = withDefaults(defineProps>(), { portal: true }) +const props = withDefaults(defineProps>(), { + portal: true, + modal: false +}) const emits = defineEmits() const slots = defineSlots>() diff --git a/src/runtime/components/DropdownMenuContent.vue b/src/runtime/components/DropdownMenuContent.vue index c808afa0..e5e7ed89 100644 --- a/src/runtime/components/DropdownMenuContent.vue +++ b/src/runtime/components/DropdownMenuContent.vue @@ -38,20 +38,20 @@ const groups = computed(() => props.items?.length ? (Array.isArray(props.items[0