Files
StevenandGitHub 4466ba436b chore(examples): use default prettier for examples/templates (#60530)
## Description
This PR ensures that the default prettier config is used for examples
and templates.

This config is compatible with `prettier@3` as well (upgrading prettier
is bigger change that can be a future PR).

## Changes
- Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will
be needed upgrading to prettier@3)
- Added `examples/.prettierrc.json` with default config (this will
change every example)
- Added `packages/create-next-app/templates/.prettierrc.json` with
default config (this will change every template)

## Related

- Fixes #54402
- Closes #54409
2024-01-11 16:01:44 -07:00

53 lines
1.1 KiB
TypeScript

import { notFound } from "next/navigation";
import { getPayloadClient } from "../../../payload/payloadClient";
import Blocks from "../../../components/Blocks";
import { Hero } from "../../../components/Hero";
import { AdminBar } from "../../../components/AdminBar";
import { Metadata } from "next";
export async function generateMetadata({
params: { slug },
}): Promise<Metadata> {
return {
title: slug,
};
}
const Page = async ({ params: { slug } }) => {
const payload = await getPayloadClient();
const pages = await payload.find({
collection: "pages",
where: {
slug: {
equals: slug || "home",
},
},
});
const page = pages.docs[0];
if (!page) return notFound();
return (
<>
<AdminBar adminBarProps={{ collection: "pages", id: page.id }} />
<Hero {...page.hero} />
<Blocks blocks={page.layout} />
</>
);
};
export async function generateStaticParams() {
const payload = await getPayloadClient();
const pages = await payload.find({
collection: "pages",
limit: 0,
});
return pages.docs.map(({ slug }) => ({ slug }));
}
export default Page;