mirror of
https://github.com/facebook/docusaurus.git
synced 2025-05-11 08:07:26 +02:00
chore: move to monorepo (#1297)
* chore: move to monorepo * lint all js file * simplify circleCI * fix failing tests * fix tests due to folder rename * fix test since v1 website is renamed
This commit is contained in:
parent
6b1d2e8c9c
commit
1f91d19a8c
619 changed files with 12713 additions and 26817 deletions
66
packages/docusaurus-1.x/lib/core/CodeTabsMarkdownBlock.js
Normal file
66
packages/docusaurus-1.x/lib/core/CodeTabsMarkdownBlock.js
Normal file
|
@ -0,0 +1,66 @@
|
|||
/**
|
||||
* Copyright (c) 2017-present, Facebook, Inc.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
import _ from 'lodash';
|
||||
|
||||
const React = require('react');
|
||||
const Remarkable = require('./Remarkable');
|
||||
|
||||
/**
|
||||
* The MarkdownBlock component is used to parse markdown and render to HTML.
|
||||
*/
|
||||
class MarkdownBlock extends React.Component {
|
||||
render() {
|
||||
const groupId = _.uniqueId();
|
||||
|
||||
const tabs = this.props.children.map(({title, content}) => ({
|
||||
id: _.uniqueId(),
|
||||
groupId,
|
||||
label: title,
|
||||
lang: title,
|
||||
panelContent: <Remarkable source={content} />,
|
||||
}));
|
||||
|
||||
return (
|
||||
<div className="tabs">
|
||||
<div className="nav-tabs">
|
||||
{tabs.map((t, i) => {
|
||||
const tabId = `tab-group-${groupId}-tab-${t.id}`;
|
||||
const contentId = `tab-group-${groupId}-content-${t.id}`;
|
||||
return (
|
||||
<div
|
||||
id={tabId}
|
||||
key={tabId}
|
||||
className={`nav-link${i === 0 ? ' active' : ''}`}
|
||||
data-group={`group_${t.groupId}`}
|
||||
data-tab={contentId}>
|
||||
{t.label}
|
||||
</div>
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
<div className="tab-content">
|
||||
{tabs.map((t, i) => {
|
||||
const id = `tab-group-${groupId}-content-${t.id}`;
|
||||
return (
|
||||
<div
|
||||
id={id}
|
||||
key={id}
|
||||
className={`tab-pane${i === 0 ? ' active' : ''}`}
|
||||
data-group={`group_${t.groupId}`}
|
||||
tabIndex="-1">
|
||||
{t.panelContent}
|
||||
</div>
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = MarkdownBlock;
|
Loading…
Add table
Add a link
Reference in a new issue