beta/src/components/PageHeading.tsx (42 lines of code) (raw):

/* * Copyright (c) Facebook, Inc. and its affiliates. */ import * as React from 'react'; import Breadcrumbs from 'components/Breadcrumbs'; import Tag from 'components/Tag'; import {RouteTag} from './Layout/useRouteMeta'; import {H1} from './MDX/Heading'; interface PageHeadingProps { title: string; status?: string; description?: string; tags?: RouteTag[]; } function PageHeading({ title, status, description, tags = [], }: PageHeadingProps) { return ( <div className="px-5 sm:px-12 pt-5"> <div className="max-w-4xl ml-0 2xl:mx-auto"> {tags ? <Breadcrumbs /> : null} <H1 className="mt-0 text-primary dark:text-primary-dark -mx-.5 break-words"> {title} {status ? <em>—{status}</em> : ''} </H1> {description && ( <p className="mt-4 mb-6 text-primary dark:text-primary-dark text-xl text-gray-90 leading-large"> {description} </p> )} {tags?.length > 0 && ( <div className="mt-4"> {tags.map((tag) => ( <Tag key={tag} variant={tag as RouteTag} /> ))} </div> )} </div> </div> ); } export default PageHeading;