From d56d3a13e3240fedeadcbd8bcadb5c732b7ce2bc Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Wed, 17 Apr 2024 12:12:33 +0200 Subject: [PATCH] feat(Breadcrumb): rename `links` to `items` + improve slots --- playground/pages/breadcrumb.vue | 29 ++-- src/runtime/components/Breadcrumb.vue | 46 ++++--- src/theme/breadcrumb.ts | 15 ++- test/components/Breadcrumb.spec.ts | 27 ++-- .../__snapshots__/Breadcrumb.spec.ts.snap | 125 +++++++++++++++--- 5 files changed, 180 insertions(+), 62 deletions(-) diff --git a/playground/pages/breadcrumb.vue b/playground/pages/breadcrumb.vue index ff6ace16..727d8ebc 100644 --- a/playground/pages/breadcrumb.vue +++ b/playground/pages/breadcrumb.vue @@ -1,20 +1,31 @@ diff --git a/src/runtime/components/Breadcrumb.vue b/src/runtime/components/Breadcrumb.vue index 070808fe..826eb55d 100644 --- a/src/runtime/components/Breadcrumb.vue +++ b/src/runtime/components/Breadcrumb.vue @@ -10,33 +10,37 @@ const appConfig = _appConfig as AppConfig & { ui: { breadcrumb: Partial extends Omit { - links?: T[] + items?: T[] separatorIcon?: IconProps['name'] class?: any ui?: Partial } -type SlotProps = (props: { link: T, active: boolean, index: number }) => any +type SlotProps = (props: { item: T, index: number, active?: boolean }) => any export interface BreadcrumbSlots { leading: SlotProps - default: SlotProps + label: SlotProps trailing: SlotProps + item: SlotProps + [key: string]: SlotProps separator(): any } -