import * as React from 'react'; import TableTree, { Headers, Header, Rows, Row, Cell, } from '@atlaskit/table-tree'; import SectionMessage from '@atlaskit/section-message'; import titleCase from 'title-case'; import Page, { Section, Title } from '../page'; import pageInfo from '../../pages-list'; import DocsNavContent from '../navigation/docs-nav-content'; import NavigationWrapper from '../navigation-wrapper'; import PageTitle from '../page-title'; import Link from '../switch-link'; import { getTitle } from '../../model/page'; import { DocsPage } from '../../../types'; const NoDocsMessage = () => ( We couldn't find any document pages in your provided docs directory ); type DocsTableProps = { docKey: string; }; type DocsTableState = { expansionMap: { [pageId: string]: boolean; }; }; class DocsTable extends React.Component { state: DocsTableState = { expansionMap: {} }; render() { const { expansionMap } = this.state; const { docKey } = this.props; return (
Name
Path
( 0} isExpanded={Boolean(expansionMap[page.id])} onExpand={() => this.setState({ expansionMap: { ...expansionMap, [page.id]: true, }, }) } onCollapse={() => this.setState({ expansionMap: { ...expansionMap, [page.id]: false, }, }) } > {getTitle(page)} {() => page.pagePath.replace(new RegExp(`^/?${docKey}/`), '') } )} />
); } } type DocsProps = { data: { key: string; }; }; const Docs = ({ data }: DocsProps) => ( <> }> {`${titleCase(data.key)} Overview`} {Object.keys(pageInfo).slice(1).length > 0 ? ( ) : ( )} ); export default Docs;