mirror of
https://github.com/ant-design/ant-design.git
synced 2024-12-23 23:18:36 +08:00
4cdf37bedb
* init form * first demo * add normal login * add style * webit * support nest errors * beauti form errors * use onReset * modal demo * add list demo * match key of errors logic * date demo * customize component * moving style * add status style * without form create * add demos * add inline style * clean up legacy * fix drawer demo * mention * fix edit-row * editable table cell * update mentions demo * fix some test case * fix upload test * fix lint * part of doc * fix ts * doc update * rm react 15 * rm config * enhance test coverage * clean up * fix FormItem context pass logic * add more demo * en to build * update demo * update demo & snapshot * more doc * update list doc * update doc * update demo to display condition render * update snapshot * add provider doc * support configProvider * more doc about validateMessages * more description * more and more doc * fix typo * en doc * Form.List doc * m v3 -> v4 * add skip
48 lines
885 B
JavaScript
48 lines
885 B
JavaScript
import React from 'react';
|
|
import { Tabs } from 'antd';
|
|
|
|
const { TabPane } = Tabs;
|
|
|
|
const LANGS = {
|
|
tsx: 'TypeScript',
|
|
jsx: 'JavaScript',
|
|
};
|
|
|
|
const CodePreview = ({ toReactComponent, codes }) => {
|
|
const langList = Object.keys(codes)
|
|
.sort()
|
|
.reverse();
|
|
|
|
let content;
|
|
|
|
if (langList.length === 1) {
|
|
content = toReactComponent([
|
|
'pre',
|
|
{
|
|
lang: langList[0],
|
|
highlighted: codes[langList[0]],
|
|
},
|
|
]);
|
|
} else {
|
|
content = (
|
|
<Tabs>
|
|
{langList.map(lang => (
|
|
<TabPane tab={LANGS[lang]} key={lang}>
|
|
{toReactComponent([
|
|
'pre',
|
|
{
|
|
lang,
|
|
highlighted: codes[lang],
|
|
},
|
|
])}
|
|
</TabPane>
|
|
))}
|
|
</Tabs>
|
|
);
|
|
}
|
|
|
|
return <div className="highlight">{content}</div>;
|
|
};
|
|
|
|
export default CodePreview;
|