import { createFileRoute, notFound } from '@tanstack/react-router' import { useSuspenseQuery } from '@tanstack/react-query' import { Helmet } from 'react-helmet-async' import { pageBySlugQuery } from '@/lib/queries' import { PageView } from '@/components/page-view' export const Route = createFileRoute('/$slug')({ loader: async ({ context: { queryClient }, params: { slug } }) => { const page = await queryClient.ensureQueryData(pageBySlugQuery(slug)) if (!page) throw notFound() }, component: CmsPage, }) function CmsPage() { const { slug } = Route.useParams() const { data: page } = useSuspenseQuery(pageBySlugQuery(slug)) if (!page) return null return ( <> {page.title && ( {page.title} )} ) }