/** * @file * @copyright 2020 Aleksej Komarov * @license MIT */ import { BooleanLike, classes, pureComponentHooks } from 'common/react'; import { InfernoNode } from 'inferno'; import { Box, unit } from './Box'; import { Divider } from './Divider'; type LabeledListProps = { children?: any; }; export const LabeledList = (props: LabeledListProps) => { const { children } = props; return {children}
; }; LabeledList.defaultHooks = pureComponentHooks; type LabeledListItemProps = { className?: string | BooleanLike; label?: string | BooleanLike; labelColor?: string | BooleanLike; color?: string | BooleanLike; textAlign?: string | BooleanLike; verticalAlign?: string | BooleanLike; // VOREStation Addition buttons?: InfernoNode; /** @deprecated */ content?: any; children?: InfernoNode; }; const LabeledListItem = (props: LabeledListItemProps) => { const { className, label, labelColor = 'label', color, textAlign, verticalAlign, // VOREStation Addition buttons, content, children, ...rest // VOREStation Addition } = props; return ( {label ? label + ':' : null} {content} {children} {buttons && {buttons}} ); }; LabeledListItem.defaultHooks = pureComponentHooks; type LabeledListDividerProps = { size?: number; }; const LabeledListDivider = (props: LabeledListDividerProps) => { const padding = props.size ? unit(Math.max(0, props.size - 1)) : 0; return ( ); }; LabeledListDivider.defaultHooks = pureComponentHooks; LabeledList.Item = LabeledListItem; LabeledList.Divider = LabeledListDivider;