UNPKG

gitdocs

Version:

Easy to use, SEO-friendly, beautiful documentation that lives in your git repo.

37 lines (30 loc) 681 B
import React from 'react' import PropTypes from 'prop-types' import { PageItem } from './styles' const Toc = (props) => { // Don't show this if there aren't enough headers if (props.items.length < 2) return null // Create TOC hierarchy and link to headers const items = props.items.map(t => ( <li key={`${props.items}-${t.slug}`}> <a href={`#${t.slug}`}> {t.content} </a> </li> )) return ( <PageItem sticky={props.sticky}> <div> <h5>Table of Contents</h5> <ul>{items}</ul> </div> </PageItem> ) } Toc.defaultProps = { items: [], } Toc.propTypes = { items: PropTypes.array, } export default Toc