mirror of
https://github.com/ant-design/ant-design.git
synced 2024-11-24 19:19:57 +08:00
c80136a9a7
* text with prefix * add edit style * support editable * enhance accessibility & type experience * optimize IME case * support copy * add locale * add secondary & disabled * add ellipsis shadow text * split to 3 components * update snapshot * update desc * change lines also need update ellipsis * skip aria when is in ellipsis * add ResizeObserver in _util * update snapshot * move TestBase into test file * update test case * update doc * fix typo * important => level * use rows * update demo cols to 1 * fix cssText not work in firefox * update doc * add miss point * support extendable * update snapshot * fix doc * copyable support string * update snapshot * update doc * update doc desc * adjust style * full test * reset after test * rename * update snapshot * fix compile * adjust style * update desc * update prefixCls * update margin * adjust * nest wrap of tag content * adjust style * update comment * rm % * one more thing * tmp of measure * merge string as children * update snapshot * update testcase * remove comment * use internal variable for configProvider passing * update snapshot * use expandable instead of extendable * less variable it * update demo * update less * adjust code & mark style * remove mark padding * update measure logic * support nest element style * use childNode.textContent to fix react 15 error * update css * popout Typography * add link style * adjust doc * use ellipsis instead of rows & expandable * update doc * update doc * update doc & style * fix typo * add css ellipsis support * client render * update snapshot * enhance copyable * support onExpand * update test case * add test of css ellipsis * fix logic in react 15 * rename onChange -> onSave * use tagName of article * fix lint
25 lines
683 B
TypeScript
25 lines
683 B
TypeScript
import * as React from 'react';
|
|
import warning from 'warning';
|
|
import Base, { BlockProps } from './Base';
|
|
import { tupleNum, Omit } from '../_util/type';
|
|
|
|
const TITLE_ELE_LIST = tupleNum(1, 2, 3, 4);
|
|
|
|
type TitleProps = Omit<BlockProps & { level?: (typeof TITLE_ELE_LIST)[number] }, 'strong'>;
|
|
|
|
const Title: React.SFC<TitleProps> = props => {
|
|
const { level = 1, ...restProps } = props;
|
|
let component: string;
|
|
|
|
if (TITLE_ELE_LIST.indexOf(level) !== -1) {
|
|
component = `h${level}`;
|
|
} else {
|
|
warning(false, 'Title only accept `1 | 2 | 3 | 4` as `level` value.');
|
|
component = 'h1';
|
|
}
|
|
|
|
return <Base {...restProps} component={component} />;
|
|
};
|
|
|
|
export default Title;
|