From 0fa0f5b671bb7cb72eb15b155c74eea3ea62e701 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Galley?= Date: Tue, 30 Jul 2024 13:24:27 -0400 Subject: [PATCH] setup redirects in next js config (#733) --- .../app/(basenames)/name/[username]/page.tsx | 19 +++++-------------- apps/web/next.config.js | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/apps/web/app/(basenames)/name/[username]/page.tsx b/apps/web/app/(basenames)/name/[username]/page.tsx index 4184508..533be33 100644 --- a/apps/web/app/(basenames)/name/[username]/page.tsx +++ b/apps/web/app/(basenames)/name/[username]/page.tsx @@ -1,11 +1,9 @@ import ProfileProviders from 'apps/web/app/(basenames)/name/[username]/ProfileProviders'; import { Metadata } from 'next'; -import { base } from 'viem/chains'; import { fetchAddress, fetchDescription, formatDefaultUsername, - USERNAME_DOMAINS, } from 'apps/web/src/utils/usernames'; import { redirect } from 'next/navigation'; import classNames from 'classnames'; @@ -34,18 +32,7 @@ export async function generateMetadata({ params }: UsernameProfileProps): Promis } export default async function Username({ params }: UsernameProfileProps) { - let username = params.username; - - // redirect /[name].base.eth to /name - if (username.endsWith(`.${USERNAME_DOMAINS[base.id]}`)) { - return redirect(username.replace(`.${USERNAME_DOMAINS[base.id]}`, '')); - } - - username = await formatDefaultUsername(params.username); - - const usernameProfilePageClasses = classNames( - 'mx-auto mt-32 flex min-h-screen w-full max-w-[1440px] flex-col justify-between gap-10 px-4 px-4 pb-40 md:flex-row md:px-8', - ); + let username = await formatDefaultUsername(params.username); const ensAddress = await fetchAddress(username); @@ -54,6 +41,10 @@ export default async function Username({ params }: UsernameProfileProps) { redirect(`/name/not-found?name=${username}`); } + const usernameProfilePageClasses = classNames( + 'mx-auto mt-32 flex min-h-screen w-full max-w-[1440px] flex-col justify-between gap-10 px-4 px-4 pb-40 md:flex-row md:px-8', + ); + return (
diff --git a/apps/web/next.config.js b/apps/web/next.config.js index 866015a..8eee54b 100644 --- a/apps/web/next.config.js +++ b/apps/web/next.config.js @@ -238,6 +238,21 @@ module.exports = extendBaseConfig( destination: 'https://buildonbase.deform.cc/registry-edit/', permanent: true, }, + { + source: '/name/:path.base.eth', + destination: '/name/:path', + permanent: true, + }, + { + source: '/names/:path', + destination: '/name/:path', + permanent: true, + }, + { + source: '/name', + destination: '/names', + permanent: true, + }, ]; }, },