@opensig/opendesign
Version:
178 lines (177 loc) • 4.52 kB
TypeScript
import { ExtractPropTypes, PropType } from 'vue';
import { RoundT, SizeT } from '../_utils/types';
export declare const TabVariantTypes: readonly ["solid", "text", "button"];
export type TabVariantT = (typeof TabVariantTypes)[number];
export declare const tabProps: {
/**
* @zh-CN 选中页签值 v-model
* @en-US Selected tab value v-model
*/
modelValue: {
type: (NumberConstructor | StringConstructor)[];
default: undefined;
};
/**
* @zh-CN 页签类型
* @en-US Tab variant
* @default 'text'
* @since 1.2.0 新增button模式
*/
variant: {
type: PropType<TabVariantT>;
default: string;
};
/**
* @zh-CN 页签尺寸
* @en-US Tab size
*/
size: {
type: PropType<SizeT>;
};
/**
* @zh-CN 圆角值(仅button模式可用)
* @en-US Border radius(Only available in button mode)
* @since 1.2.0
*/
round: {
type: PropType<RoundT>;
};
/**
* @zh-CN 是否首次激活后再渲染
* @en-US Whether to render the tab content after the first activation
*/
lazy: {
type: BooleanConstructor;
};
/**
* @zh-CN 是否可添加页签
* @en-US Whether tabs can be added
*/
addable: {
type: BooleanConstructor;
};
/**
* @zh-CN 是否激活新添加的页签
* @en-US Whether to activate the newly added tab
*/
addInactive: {
type: BooleanConstructor;
};
/**
* @zh-CN 最大展示个数,超过时使用“更多”展示
* @en-US Max display count; show via Show more when exceeded.
* @since 1.2.0
*/
maxShow: {
type: NumberConstructor;
};
/**
* @zh-CN 超出个数隐藏时按钮的文案,默认“更多”
* @en-US The button text when items are hidden for exceeding the maximum count, with the default value of “more”.
* @since 1.2.0
*/
moreLabel: {
type: StringConstructor;
};
/**
* @zh-CN 是否展示nav线(button模式不可用)
* @en-US Whether to show the nav line(Unavailable in button mode)
* @default true
* @since 1.2.0
*/
line: {
type: BooleanConstructor;
default: boolean;
};
/**
* @zh-CN 是否是反色模式的button
* @en-US Whether inverse mode button
* @default false
* @since 1.2.0
*/
buttonInverse: {
type: BooleanConstructor;
default: boolean;
};
/**
* @zh-CN 头部自定义样式类名
* @en-US Header custom style class name
* @since 1.2.0
*/
headerClass: {
type: PropType<string | {
[k: string]: boolean;
} | Array<{
[k: string]: boolean;
} | string>>;
};
};
export type TabPropsT = ExtractPropTypes<typeof tabProps>;
export declare const tabPaneProps: {
/**
* @zh-CN 页签值
* @en-US Tab value
*/
value: {
type: (NumberConstructor | StringConstructor)[];
default: undefined;
};
/**
* @zh-CN 页签标题
* @en-US Tab title
*/
label: {
type: StringConstructor;
default: undefined;
};
/**
* @zh-CN 页签切换时过渡动画
* @en-US Transition animation for tab switching
* @default 'o-fade-in'
*/
transition: {
type: StringConstructor;
default: string;
};
/**
* @zh-CN 是否禁用选中该页签
* @en-US Whether to disable selecting this tab
* @default false
*/
disabled: {
type: BooleanConstructor;
default: boolean;
};
/**
* @zh-CN 是否可以删除该页签
* @en-US Whether the tab can be deleted
* @default false
*/
closable: {
type: BooleanConstructor;
default: boolean;
};
/**
* @zh-CN 是否在首次激活时才渲染页签内容
* @en-US Whether to render the tab content only when the tab is first activated
* @default false
*/
lazy: {
type: BooleanConstructor;
default: boolean;
};
/**
* @zh-CN 是否在隐藏时卸载页签内容
* @en-US Whether to unmount the tab content when hidden
* @default false
*/
unmountOnHide: {
type: BooleanConstructor;
default: boolean;
};
};
export type TabPanePropsT = ExtractPropTypes<typeof tabPaneProps>;
export type TabPaneSlotsT = {
nav?: () => any;
default?: () => any;
};