UNPKG

tdesign-react

Version:
134 lines (133 loc) 2.99 kB
/** * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC * */ import { TNode } from '../common'; import { MouseEvent } from 'react'; export interface TdTabsProps { /** * 选项卡右侧的操作区域 */ action?: TNode; /** * 选项卡是否可增加 * @default false */ addable?: boolean; /** * 是否禁用选项卡 * @default false */ disabled?: boolean; /** * 是否开启拖拽调整顺序 * @default false */ dragSort?: boolean; /** * 选项卡列表 */ list?: Array<TdTabPanelProps>; /** * 选项卡位置 * @default top */ placement?: 'left' | 'top' | 'bottom' | 'right'; /** * Tab较多的时候,选中滑块滚动最终停留的位置 * @default auto */ scrollPosition?: 'auto' | 'start' | 'center' | 'end'; /** * 组件尺寸 * @default medium */ size?: 'medium' | 'large'; /** * 选项卡风格,包含 默认风格 和 卡片风格两种 * @default normal */ theme?: 'normal' | 'card'; /** * 激活的选项卡值 */ value?: TabValue; /** * 激活的选项卡值,非受控属性 */ defaultValue?: TabValue; /** * 添加选项卡时触发 */ onAdd?: (context: { e: MouseEvent<HTMLDivElement>; }) => void; /** * 激活的选项卡发生变化时触发 */ onChange?: (value: TabValue) => void; /** * 拖拽排序时触发 */ onDragSort?: (context: TabsDragSortContext) => void; /** * 删除选项卡时触发 */ onRemove?: (options: { value: TabValue; index: number; e: MouseEvent<HTMLSpanElement>; }) => void; } export interface TdTabPanelProps { /** * 选项卡内容隐藏时是否销毁 * @default true */ destroyOnHide?: boolean; /** * 是否禁用当前选项卡 * @default false */ disabled?: boolean; /** * 选项卡组件开启允许拖动排序时,当前选项卡是否允许拖动 * @default true */ draggable?: boolean; /** * 选项卡名称,可自定义选项卡导航内容 */ label?: TNode; /** * 是否启用选项卡懒加载 * @default false */ lazy?: boolean; /** * 用于自定义选项卡面板内容 */ panel?: TNode; /** * 当前选项卡是否允许移除 * @default false */ removable?: boolean; /** * 选项卡的值,唯一标识 */ value?: TabValue; /** * 点击删除按钮时触发 */ onRemove?: (options: { value: TabValue; e: MouseEvent<HTMLSpanElement>; }) => void; } export type TabValue = string | number; export interface TabsDragSortContext { currentIndex: number; current: TabValue; targetIndex: number; target: TabValue; }