-
Notifications
You must be signed in to change notification settings - Fork 227
/
Copy pathbreadcrumb-stub.js
39 lines (38 loc) · 1.31 KB
/
breadcrumb-stub.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import { Heading } from 'components/shared/heading';
import { Breadcrumbs } from 'components/templates/doc-page/breadcrumbs';
import styles from 'components/templates/doc-page/doc-page.module.scss';
import { Link } from 'gatsby';
import { DocLayout } from 'layouts/doc-layout';
import React from 'react';
import { childrenToList, slugify } from 'utils';
export default function (props) {
const {
pageContext: { sidebarTree, breadcrumbs, navLinks, title, directChildren },
} = props;
return (
<DocLayout sidebarTree={sidebarTree} navLinks={navLinks}>
<div className={`${styles.container}`}>
<Breadcrumbs items={breadcrumbs} label={styles.breadcrumbsStub} />
<Heading className={styles.title}>{title}</Heading>
<ul className={styles.sectionList}>
{childrenToList(directChildren).map(({ meta, name }, i) => (
<li key={`bcl-${i}`}>
{meta.redirect ? (
<a href={meta.redirect} className={'link'}>
{name}
</a>
) : (
<Link
to={`${meta.path || slugify(`/${name}`)}`}
className={'link'}
>
{name}
</Link>
)}
</li>
))}
</ul>
</div>
</DocLayout>
);
}