admin-vben/packages/@vben-core/uikit/layout-ui/src/vben-layout.ts

172 lines
2.9 KiB
TypeScript
Raw Normal View History

2024-05-19 13:20:42 +00:00
import type {
ContentCompactType,
LayoutHeaderMode,
LayoutType,
ThemeType,
} from '@vben-core/typings';
interface VbenLayoutProps {
/**
*
* @default 'wide'
*/
contentCompact?: ContentCompactType;
/**
*
* @default 1200
*/
contentCompactWidth?: number;
/**
* padding
* @default 16
*/
contentPadding?: number;
/**
* paddingBottom
* @default 16
*/
contentPaddingBottom?: number;
/**
* paddingLeft
* @default 16
*/
contentPaddingLeft?: number;
/**
* paddingRight
* @default 16
*/
contentPaddingRight?: number;
/**
* paddingTop
* @default 16
*/
contentPaddingTop?: number;
/**
* footer
* @default #fff
*/
footerBackgroundColor?: string;
/**
* footer
* @default true
*/
footerFixed?: boolean;
/**
* footer
* @default 32
*/
footerHeight?: number;
/**
* footer
* @default false
*/
footerVisible?: boolean;
/**
*
* @default #fff
*/
headerBackgroundColor?: string;
/**
* header
* @default 48
*/
headerHeight?: number;
/**
* header
* header
* @default 10
*/
headerHeightOffset?: number;
/**
* header
* @default 'fixed'
*/
headerMode?: LayoutHeaderMode;
/**
* header
* @default true
*/
headerVisible?: boolean;
/**
*
* @default false
*/
isMobile?: boolean;
/**
*
* side-nav
* header-nav
* mixed-nav &
* side-mixed-nav
* full-content
* @default side-nav
*/
layout?: LayoutType;
/**
*
* @default false
*/
sideCollapse?: boolean;
/**
* title
* @default true
*/
sideCollapseShowTitle?: boolean;
/**
*
* @default 48
*/
sideCollapseWidth?: number;
/**
*
* @default false
*/
sideMixedExtraVisible?: boolean;
/**
*
* @default 80
*/
sideMixedWidth?: number;
/**
*
* @default false
*/
sideSemiDark?: boolean;
/**
*
* @default dark
*/
sideTheme?: ThemeType;
/**
*
* @default true
*/
sideVisible?: boolean;
/**
*
* @default 210
*/
sideWidth?: number;
/**
* footer
* @default #fff
*/
tabsBackgroundColor?: string;
/**
* tab
* @default 30
*/
tabsHeight?: number;
/**
* tab
* @default true
*/
tabsVisible?: boolean;
/**
* zIndex
* @default 100
*/
zIndex?: number;
}
export type { VbenLayoutProps };