diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 3414fe87..e9c86059 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -15,9 +15,9 @@ import NavClient from '@/site/NavClient'; import { Metadata } from 'next/types'; import MoreComponentsProvider from '@/state/MoreComponentsProvider'; import CommandK from '@/site/CommandK'; +import CommandKClient from '@/components/CommandKClient'; import '../site/globals.css'; -import CommandKClient from '@/components/CommandKClient'; const ibmPlexMono = IBM_Plex_Mono({ subsets: ['latin'], diff --git a/src/app/shot-on/[camera]/[photoId]/layout.tsx b/src/app/shot-on/[camera]/[photoId]/layout.tsx index e102256d..c4508a7c 100644 --- a/src/app/shot-on/[camera]/[photoId]/layout.tsx +++ b/src/app/shot-on/[camera]/[photoId]/layout.tsx @@ -13,7 +13,10 @@ import PhotoDetailPage from '@/photo/PhotoDetailPage'; import { getPhotoCached } from '@/photo/cache'; import { cameraFromPhoto } from '@/camera'; import { getPhotosCameraDataCached } from '@/camera/data'; -import { ReactNode } from 'react'; +import { ReactNode, cache } from 'react'; + +const getPhotoCachedCached = + cache((photoId: string) => getPhotoCached(photoId)); interface PhotoCameraProps { params: { photoId: string, camera: string } @@ -22,7 +25,7 @@ interface PhotoCameraProps { export async function generateMetadata({ params: { photoId, camera }, }: PhotoCameraProps): Promise { - const photo = await getPhotoCached(photoId); + const photo = await getPhotoCachedCached(photoId); if (!photo) { return {}; } @@ -57,7 +60,7 @@ export default async function PhotoCameraPage({ params: { photoId, camera: cameraProp }, children, }: PhotoCameraProps & { children: ReactNode }) { - const photo = await getPhotoCached(photoId); + const photo = await getPhotoCachedCached(photoId); if (!photo) { redirect(PATH_ROOT); }