@tplc/wot
Version:
52 lines (48 loc) • 937 B
text/typescript
import type { ExtractPropTypes, PropType } from 'vue'
import { baseProps, makeNumberProp, numericProp } from '../common/props'
import type { BadgeProps } from '../wd-badge/types'
/**
* 折叠面板子项
*/
export interface TabbarItem {
// 唯一标识
name: string | number
}
export const tabbarItemProps = {
...baseProps,
/**
* 标签页的标题
*/
title: String,
/**
* 唯一标识符
*/
name: numericProp,
/**
* 图标
*/
icon: String,
/**
* 徽标显示值
*/
value: {
type: [Number, String, null] as PropType<number | string | null>,
default: null,
},
/**
* 是否点状徽标
*/
isDot: {
type: Boolean,
default: undefined,
},
/**
* 徽标最大值
*/
max: Number,
/**
* 徽标属性,透传给 Badge 组件
*/
badgeProps: Object as PropType<BadgeProps>,
}
export type TabbarItemProps = ExtractPropTypes<typeof tabbarItemProps>