@quanxi/ui
Version:
全悉组件库
50 lines (49 loc) • 1.37 kB
TypeScript
import React from "react";
import { MenuProps } from "antd";
import "./style.scss";
export type MenuItem = Required<NavigationProps>["items"][number];
export interface CustomMenuProps extends Omit<MenuProps, "items"> {
items: CustomMenuItem[];
}
export type CustomMenuItem = {
label: string;
value: string;
key: string;
hidden?: boolean;
icon?: React.ReactNode;
children?: CustomMenuItem[];
meta?: RouteMeta;
disabled?: boolean;
isNew?: boolean;
} & Required<MenuProps>["items"][number];
export interface RouteMeta {
micro?: MicroInfo;
hideSideNavigationBar?: boolean;
hideInBreadcrumb?: boolean;
hideTopNavigationBar?: boolean;
hideOperationalZone?: boolean;
}
export interface MicroInfo {
name: any;
entry: string;
props?: {
routePrefix: string;
baseRoute?: string;
};
}
export interface NavigationProps extends CustomMenuProps {
operationItems?: MenuItem[];
onOperItemClick?: (label: string) => void;
footerOperation?: React.ReactNode;
userName?: string;
noticeNum?: number;
onClickSearchItem?: (item: CustomMenuItem) => void;
showSearch?: boolean;
className?: string;
customLogo?: {
noName: React.ReactNode;
withName: React.ReactNode;
};
}
declare const Navigation: React.FC<NavigationProps>;
export default Navigation;