import { ComponentType, Group, Path } from '../../jsx'; import { ItemLabel } from '../components'; import { getItemProps } from '../utils'; import { registerItem } from './registry'; import type { BaseItemProps } from './types'; export interface DoneListProps extends BaseItemProps { width?: number; height?: number; iconSize?: number; gap?: number; } export const DoneList: ComponentType = (props) => { const [ { datum, indexes, width = 300, height = 30, iconSize = 30, gap = 5, positionH = 'normal', positionV = 'middle', themeColors, }, restProps, ] = getItemProps(props, ['width', 'height', 'iconSize', 'gap']); const textWidth = width - iconSize - gap; const shapeY = positionV === 'middle' ? (height - iconSize) / 2 : positionV === 'flipped' ? height - iconSize : 0; return ( {datum.label || datum.desc} ); }; registerItem('done-list', { component: DoneList, composites: ['label'], });