diff --git a/app/(website)/tech-talk/[slug]/page.tsx b/app/(website)/tech-talk/[slug]/page.tsx index 34f9690..d4bddf7 100644 --- a/app/(website)/tech-talk/[slug]/page.tsx +++ b/app/(website)/tech-talk/[slug]/page.tsx @@ -14,10 +14,6 @@ import { CodeData, } from "@/types"; -type Props = { - params: { slug: string }; -}; - export async function generateStaticParams() { const posts = await getPosts(); if (!Array.isArray(posts)) { @@ -53,7 +49,11 @@ function extractDescriptionFromBlocks( return null; } -export async function generateMetadata({ params }: Props): Promise { +export async function generateMetadata({ + params, +}: { + params: Promise<{ slug: string }>; +}): Promise { const { slug } = await params; const post = await getPostBySlug(slug, { fields: [ @@ -228,7 +228,11 @@ const renderBlock = (block: ContentBlock) => { } }; -export default async function PostPage({ params }: Props) { +export default async function PostPage({ + params, +}: { + params: Promise<{ slug: string }>; +}) { const { slug } = await params; const post = await getPostBySlug(slug); diff --git a/app/(website)/vacancies/[slug]/page.tsx b/app/(website)/vacancies/[slug]/page.tsx index 39d2568..91bbcb5 100644 --- a/app/(website)/vacancies/[slug]/page.tsx +++ b/app/(website)/vacancies/[slug]/page.tsx @@ -23,13 +23,11 @@ async function getVacancy(slug: string): Promise { return res.json(); } -interface VacancyDetailsPageProps { - params: { slug: string }; -} - export default async function VacancyDetailsPage({ params, -}: VacancyDetailsPageProps) { +}: { + params: Promise<{ slug: string }>; +}) { const { slug } = await params; const vacancy = await getVacancy(slug); @@ -37,7 +35,7 @@ export default async function VacancyDetailsPage({ notFound(); } - const shareUrl = `${process.env.WEBSITE_URL}/vacancies/${params.slug}`; + const shareUrl = `${process.env.WEBSITE_URL}/vacancies/${slug}`; const shareTitle = encodeURIComponent( `Job Opening: ${vacancy.title} at ${ vacancy.company?.name || "Owethu Managed Services" diff --git a/app/api/vacancies/[slug]/route.ts b/app/api/vacancies/[slug]/route.ts index 5cbc86a..3c58651 100644 --- a/app/api/vacancies/[slug]/route.ts +++ b/app/api/vacancies/[slug]/route.ts @@ -3,9 +3,9 @@ import { demoVacancies } from "@/lib/demo-data/vacancies"; export async function GET( request: Request, - { params }: { params: { slug: string } } + { params }: { params: Promise<{ slug: string }> } ) { - const slug = params.slug; + const { slug } = await params; // In a real application, you would fetch this data from your CMS (Directus) const vacancy = demoVacancies.find( (v) => v.slug === slug && v.status === "Open"