import { PackageMetadata, ProcessedPackageMetadata, } from '@nrwl/nx-dev/models-package'; import { Breadcrumbs, Footer } from '@nrwl/nx-dev/ui-common'; import { NextSeo } from 'next-seo'; import { useRouter } from 'next/router'; import React from 'react'; import { Heading1, Heading2 } from './ui/headings'; import { DocumentList, SchemaList } from './ui/package-reference'; import { TopSchemaLayout } from './ui/top.layout'; export function PackageSchemaSubList({ type, pkg, }: { type: 'document' | 'executor' | 'generator'; pkg: ProcessedPackageMetadata; }): JSX.Element { const router = useRouter(); const capitalize = (text: string): string => text.charAt(0).toUpperCase() + text.slice(1); const vm: { package: PackageMetadata; githubUrl: string; seo: { title: string; description: string; url: string; imageUrl: string }; type: 'document' | 'executor' | 'generator'; heading: string; } = { package: { ...pkg, documents: Object.keys(pkg.documents) .map((k) => pkg.documents[k]) .filter((d) => d.id !== 'overview'), executors: Object.keys(pkg.executors).map((k) => pkg.executors[k]), generators: Object.keys(pkg.generators).map((k) => pkg.generators[k]), }, githubUrl: pkg.githubRoot + pkg.root, seo: { title: `${pkg.packageName}:${type}s | Nx`, description: pkg.description, imageUrl: `https://nx.dev/images/open-graph/${router.asPath .replace('/', '') .replace(/\//gi, '-')}.jpg`, url: 'https://nx.dev' + router.asPath, }, type, heading: capitalize(type) + ' References', }; return ( <>

Here is a list of all {vm.type} available for this package.

{vm.type === 'document' ? ( <> ) : null} {vm.type === 'executor' ? ( <> ) : null} {vm.type === 'generator' ? ( <> ) : null}