From bc85d70924eee6cbcfa01735b9abff9324926ca5 Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Thu, 4 Apr 2024 12:07:59 +0200 Subject: [PATCH] chore(DropdownMenu): move slots type to parent --- src/runtime/components/DropdownMenu.vue | 11 ++++++++--- src/runtime/components/DropdownMenuContent.vue | 15 ++++----------- src/runtime/types/index.d.ts | 1 - 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/runtime/components/DropdownMenu.vue b/src/runtime/components/DropdownMenu.vue index 04640fce..809e6b0c 100644 --- a/src/runtime/components/DropdownMenu.vue +++ b/src/runtime/components/DropdownMenu.vue @@ -4,7 +4,7 @@ import type { DropdownMenuRootProps, DropdownMenuRootEmits, DropdownMenuContentP import type { AppConfig } from '@nuxt/schema' import _appConfig from '#build/app.config' import theme from '#build/ui/dropdown-menu' -import type { AvatarProps, IconProps, KbdProps, LinkProps, DropdownMenuContentSlots } from '#ui/types' +import type { AvatarProps, IconProps, KbdProps, LinkProps } from '#ui/types' const appConfig = _appConfig as AppConfig & { ui: { dropdownMenu: Partial } } @@ -37,8 +37,13 @@ export interface DropdownMenuProps extends Omit export interface DropdownMenuEmits extends DropdownMenuRootEmits {} -export interface DropdownMenuSlots extends DropdownMenuContentSlots { - default (): any +type SlotProps = (props: { item: T, active?: boolean }) => any + +export interface DropdownMenuSlots { + default(): any + leading: SlotProps + label: SlotProps + trailing: SlotProps } diff --git a/src/runtime/components/DropdownMenuContent.vue b/src/runtime/components/DropdownMenuContent.vue index e06145da..a502d63b 100644 --- a/src/runtime/components/DropdownMenuContent.vue +++ b/src/runtime/components/DropdownMenuContent.vue @@ -1,8 +1,8 @@