Skip to content

Commit b0ac008

Browse files
authored
refactor: use route props helpers from NextJS (#606)
1 parent f234994 commit b0ac008

6 files changed

Lines changed: 13 additions & 10 deletions

File tree

app/evenement/[slug]/page.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export async function generateStaticParams() {
1313
return events.map((event) => ({ slug: slugEventTitle(event) }));
1414
}
1515

16-
export default async function EventPage({ params }: { params: Promise<{ slug: string }> }) {
16+
export default async function EventPage({ params }: PageProps<'/evenement/[slug]'>) {
1717
const { slug } = await params;
1818
const eventId = parserEventIdFromSlug(slug);
1919
if (!eventId) {
@@ -33,7 +33,7 @@ export default async function EventPage({ params }: { params: Promise<{ slug: st
3333
}
3434
}
3535

36-
export async function generateMetadata({ params }: { params: Promise<{ slug: string }> }): Promise<Metadata> {
36+
export async function generateMetadata({ params }: PageProps<'/evenement/[slug]'>): Promise<Metadata> {
3737
const { slug } = await params;
3838
const eventId = parserEventIdFromSlug(slug);
3939
if (!eventId) {

app/evenement/[slug]/replay/[talkSlug]/opengraph-image.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export const size = {
1010
};
1111
export const contentType = 'image/png';
1212

13-
export default async function Image({ params }: { params: Promise<{ talkSlug: string }> }) {
13+
export default async function Image({ params }: PageProps<'/evenement/[slug]/replay/[talkSlug]'>) {
1414
const { talkSlug } = await params;
1515
const title = talkSlug.replace(/-/g, ' ');
1616
return new ImageResponse(<SimpleText text={title} />, {

app/evenement/[slug]/replay/[talkSlug]/page.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,9 @@ async function getEventAndTalk(slug: string, talkSlug: string) {
4646
}
4747
}
4848

49-
export async function generateMetadata({ params }: { params: Promise<Params> }): Promise<Metadata> {
49+
export async function generateMetadata({
50+
params,
51+
}: PageProps<'/evenement/[slug]/replay/[talkSlug]'>): Promise<Metadata> {
5052
const { slug, talkSlug } = await params;
5153
const result = await getEventAndTalk(slug, talkSlug);
5254
if (!result) return {};
@@ -83,7 +85,7 @@ export async function generateMetadata({ params }: { params: Promise<Params> }):
8385
};
8486
}
8587

86-
export default async function ReplayPage({ params }: { params: Promise<Params> }) {
88+
export default async function ReplayPage({ params }: PageProps<'/evenement/[slug]/replay/[talkSlug]'>) {
8789
const { slug, talkSlug } = await params;
8890
const result = await getEventAndTalk(slug, talkSlug);
8991
if (!result) notFound();

app/evenements-precedents/[year]/opengraph-image.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ export const size = {
99
};
1010
export const contentType = 'image/png';
1111

12-
export default async function Image({ params: { year } }: { params: { year: string } }) {
12+
export default async function Image({ params }: PageProps<'/evenements-precedents/[year]'>) {
13+
const { year } = await params;
1314
return new ImageResponse(<SimpleText text={`Nos évènements de l'année ${year}`} />, {
1415
...size,
1516
});

app/evenements-precedents/[year]/page.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export const revalidate = 3600;
77

88
const DEFAULT_YEAR = `${new Date().getFullYear()}`;
99

10-
export default async function PastEventsPage({ params }: { params: Promise<{ year?: string }> }) {
10+
export default async function PastEventsPage({ params }: PageProps<'/evenements-precedents/[year]'>) {
1111
const { year = DEFAULT_YEAR } = await params;
1212

1313
return (
@@ -18,7 +18,7 @@ export default async function PastEventsPage({ params }: { params: Promise<{ yea
1818
);
1919
}
2020

21-
export async function generateMetadata({ params }: { params: Promise<{ year?: string }> }): Promise<Metadata> {
21+
export async function generateMetadata({ params }: PageProps<'/evenements-precedents/[year]'>): Promise<Metadata> {
2222
const { year = DEFAULT_YEAR } = await params;
2323
const title = `LyonJS | Évènements ${year}`;
2424
const description = `Liste des évènements LyonJS de l'année ${year}, meetup, apéros, conférences et rassemblement, retrouver tous les liens depuis notre création.`;

app/layout.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { Metadata, Viewport } from 'next';
2-
import React, { ReactNode } from 'react';
2+
import React from 'react';
33
import { Header } from '../modules/header/Header';
44
import { Footer } from '../modules/footer/Footer';
55

66
import 'normalize.css';
77
import '../styles/globals.css';
88
import { ORGANISATION_MARKUP } from './org-markup';
99

10-
export default function AppLayout({ children }: { children: ReactNode }) {
10+
export default function AppLayout({ children }: LayoutProps<'/'>) {
1111
return (
1212
<html lang="fr-FR">
1313
<head>

0 commit comments

Comments
 (0)