import * as React from 'react';
import classnames from 'classnames';
import {
ITextBaseProps,
ITextCommonProps,
TextBase,
TextBasePropColor,
TextBasePropFontSize,
TextBasePropFontWeight,
} from '../_private/TextBase/TextBase';
export enum TitlePropSize {
caption = 'caption',
s = 's',
m = 'm',
l = 'l',
xl = 'xl',
}
interface IProps extends ITextCommonProps {
privateOptions?: ITextBaseProps;
size?: TitlePropSize | keyof typeof TitlePropSize;
}
export const Title = (props: IProps) => {
const {
className,
id,
privateOptions,
size,
style,
...otherProps
} = props;
return (
);
};
Title.defaultProps = {
size: TitlePropSize.m,
tag: 'div',
} as Partial;
function setSizeProp (props: IProps, defaultValue: TextBasePropFontSize): TextBasePropFontSize {
switch (props.size) {
case TitlePropSize.s:
case TitlePropSize.caption:
return TextBasePropFontSize.s;
case TitlePropSize.m:
return TextBasePropFontSize.m;
case TitlePropSize.l:
return TextBasePropFontSize.l;
case TitlePropSize.xl:
return TextBasePropFontSize.xl;
}
return defaultValue;
}
function setColorProp (props: IProps, defaultColor: TextBasePropColor): TextBasePropColor {
switch (props.size) {
case TitlePropSize.caption:
return TextBasePropColor.gray_gray25_title;
}
return defaultColor;
}