Breadcrumb
Exports
@mbsw/ui에서 가져올 수 있는 항목입니다.
BreadcrumbBreadcrumbItemBreadcrumbSeparatorProps
컴포넌트별 주요 속성입니다. 조건부 속성의 조합과 공통 HTML, Radix 속성은 아래 전체 타입에서 확인하세요.
Breadcrumb
Type reference
전체 타입 보기
속성 조합과 상속 속성을 포함한 TypeScript 선언입니다.
TYPESCRIPT
import { type AnchorHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode } from 'react';
type DataAttributes = {
[key: `data-${string}`]: boolean | number | string | undefined;
};
type AccessibleName = {
'aria-label': string;
'aria-labelledby'?: string;
} | {
'aria-label'?: string;
'aria-labelledby': string;
};
type ReactEventHandlerProp<T> = {
[Property in keyof T]-?: Property extends `on${string}` ? Property : never;
}[keyof T];
export type BreadcrumbProps = Omit<HTMLAttributes<HTMLElement>, 'aria-hidden' | 'children' | 'contentEditable' | 'dangerouslySetInnerHTML' | 'role'> & DataAttributes & AccessibleName & {
'aria-hidden'?: never;
children: ReactNode;
contentEditable?: never;
'data-depth'?: never;
'data-slot'?: never;
role?: never;
};
type BreadcrumbItemSharedProps = DataAttributes & {
className?: string;
'data-current'?: never;
'data-slot'?: never;
keyNumber?: string;
label: string;
leading?: ReactElement;
};
type BreadcrumbCurrentItemProps = BreadcrumbItemSharedProps & Omit<HTMLAttributes<HTMLSpanElement>, 'aria-current' | 'aria-hidden' | 'children' | 'className' | 'contentEditable' | 'dangerouslySetInnerHTML' | ReactEventHandlerProp<HTMLAttributes<HTMLSpanElement>> | 'onClick' | 'onKeyDown' | 'tabIndex'> & {
asChild?: never;
'aria-hidden'?: never;
children?: never;
contentEditable?: never;
current: true;
href?: never;
onClick?: never;
onKeyDown?: never;
role?: never;
tabIndex?: never;
};
type BreadcrumbNativeLinkItemProps = BreadcrumbItemSharedProps & Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'aria-current' | 'aria-hidden' | 'children' | 'className' | 'contentEditable' | 'dangerouslySetInnerHTML' | 'href'> & {
'aria-hidden'?: never;
asChild?: false;
children?: never;
contentEditable?: never;
current?: false;
href: string;
};
type BreadcrumbAsChildItemProps = BreadcrumbItemSharedProps & Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'aria-current' | 'aria-hidden' | 'children' | 'className' | 'contentEditable' | 'dangerouslySetInnerHTML' | 'href'> & {
'aria-hidden'?: never;
asChild: true;
children: ReactElement;
contentEditable?: never;
current?: false;
href?: never;
};
export type BreadcrumbItemProps = BreadcrumbAsChildItemProps | BreadcrumbCurrentItemProps | BreadcrumbNativeLinkItemProps;
export type BreadcrumbSeparatorProps = DataAttributes & Omit<HTMLAttributes<HTMLSpanElement>, 'aria-hidden' | 'children' | 'contentEditable' | 'dangerouslySetInnerHTML' | ReactEventHandlerProp<HTMLAttributes<HTMLSpanElement>> | 'tabIndex'> & {
'data-slot'?: never;
};
export declare const BreadcrumbSeparator: import("react").ForwardRefExoticComponent<DataAttributes & Omit<HTMLAttributes<HTMLSpanElement>, "tabIndex" | "contentEditable" | "aria-hidden" | "children" | "dangerouslySetInnerHTML" | ReactEventHandlerProp<HTMLAttributes<HTMLSpanElement>>> & {
'data-slot'?: never;
} & import("react").RefAttributes<HTMLSpanElement>>;
export declare const BreadcrumbItem: import("react").ForwardRefExoticComponent<BreadcrumbItemProps & import("react").RefAttributes<HTMLElement>>;
export declare const Breadcrumb: import("react").ForwardRefExoticComponent<BreadcrumbProps & import("react").RefAttributes<HTMLElement>>;