in website/src/components/table-of-contents.js [35:97]
_renderPage(parentRoute, page, i) {
const {children, name, expanded} = page;
const path = `${parentRoute}/${page.path}`;
const indent = INDENT_BASE + page.depth * INDENT_INC;
if (children && page.depth === 0) {
const maxHeight = getContentHeight(page) - ITEM_HEIGHT;
return (
<div key={`page-${i}`}>
<NavLink
className={`list-header ${expanded ? 'expanded' : ''}`}
activeClassName="active"
key={`group-header${i}`}
to={path}
>
{name}
</NavLink>
<div className="subpages" style={{maxHeight}}>
<ul key={`group-list${i}`}>{children.map(this._renderPage.bind(this, path))}</ul>
</div>
</div>
);
}
if (children) {
return (
<div key={`page-${i}`}>
<h4 style={{paddingLeft: indent}}>{name}</h4>
<ul key={`group-list${i}`}>{children.map(this._renderPage.bind(this, path))}</ul>
</div>
);
}
const tag = page.tag && <span className="badge">{page.tag}</span>;
if (page.external) {
// is external link
return (
<li key={`page-${i}`}>
<a
className="link"
style={{paddingLeft: indent}}
href={page.external}
target="_blank"
rel="noopener noreferrer"
>
{page.name}
</a>
{tag}
</li>
);
}
return (
<li key={`page-${i}`}>
<NavLink className="link" style={{paddingLeft: indent}} to={path} activeClassName="active">
{page.name}
</NavLink>
{tag}
</li>
);
}