Upgrade Next.js to 14.1.0

This commit is contained in:
Sebastien Castiel
2024-01-24 09:50:37 -05:00
parent 2f58e466da
commit 7956156d70
10 changed files with 1037 additions and 163 deletions

View File

@@ -9,6 +9,7 @@ import {
import { expenseFormSchema } from '@/lib/schemas'
import { Metadata } from 'next'
import { notFound, redirect } from 'next/navigation'
import { Suspense } from 'react'
export const metadata: Metadata = {
title: 'Edit expense',
@@ -39,12 +40,14 @@ export default async function EditExpensePage({
}
return (
<ExpenseForm
group={group}
expense={expense}
categories={categories}
onSubmit={updateExpenseAction}
onDelete={deleteExpenseAction}
/>
<Suspense>
<ExpenseForm
group={group}
expense={expense}
categories={categories}
onSubmit={updateExpenseAction}
onDelete={deleteExpenseAction}
/>
</Suspense>
)
}

View File

@@ -3,6 +3,7 @@ import { createExpense, getCategories, getGroup } from '@/lib/api'
import { expenseFormSchema } from '@/lib/schemas'
import { Metadata } from 'next'
import { notFound, redirect } from 'next/navigation'
import { Suspense } from 'react'
export const metadata: Metadata = {
title: 'Create expense',
@@ -25,10 +26,12 @@ export default async function ExpensePage({
}
return (
<ExpenseForm
group={group}
categories={categories}
onSubmit={createExpenseAction}
/>
<Suspense>
<ExpenseForm
group={group}
categories={categories}
onSubmit={createExpenseAction}
/>
</Suspense>
)
}

View File

@@ -6,7 +6,6 @@ export async function GET(
req: Request,
{ params: { groupId } }: { params: { groupId: string } },
) {
console.log({ groupId })
const prisma = await getPrisma()
const group = await prisma.group.findUnique({
where: { id: groupId },

View File

@@ -5,7 +5,7 @@ import { getGroup } from '@/lib/api'
import { Metadata } from 'next'
import Link from 'next/link'
import { notFound } from 'next/navigation'
import { PropsWithChildren } from 'react'
import { PropsWithChildren, Suspense } from 'react'
type Props = {
params: {
@@ -41,7 +41,9 @@ export default async function GroupLayout({
</h1>
<div className="flex gap-2 justify-between">
<GroupTabs groupId={groupId} />
<Suspense>
<GroupTabs groupId={groupId} />
</Suspense>
<ShareButton group={group} />
</div>
</div>

View File

@@ -1,11 +1,11 @@
import { PropsWithChildren } from 'react'
import { PropsWithChildren, Suspense } from 'react'
export default function GroupsLayout({ children }: PropsWithChildren<{}>) {
return (
<>
<Suspense>
<main className="flex-1 max-w-screen-md w-full mx-auto px-4 py-6 flex flex-col gap-6">
{children}
</main>
</>
</Suspense>
)
}

View File

@@ -7,6 +7,7 @@ import { env } from '@/lib/env'
import type { Metadata, Viewport } from 'next'
import Image from 'next/image'
import Link from 'next/link'
import { Suspense } from 'react'
import './globals.css'
export const metadata: Metadata = {
@@ -71,7 +72,9 @@ export default function RootLayout({
enableSystem
disableTransitionOnChange
>
<ProgressBar />
<Suspense>
<ProgressBar />
</Suspense>
<header className="fixed top-0 left-0 right-0 h-16 flex justify-between bg-white dark:bg-gray-950 bg-opacity-50 dark:bg-opacity-50 p-2 border-b backdrop-blur-sm z-50">
<Link
className="flex items-center gap-2 hover:scale-105 transition-transform"

View File

@@ -3,7 +3,7 @@ import { Github } from 'lucide-react'
import Link from 'next/link'
// FIX for https://github.com/vercel/next.js/issues/58615
export const dynamic = 'force-dynamic'
// export const dynamic = 'force-dynamic'
export default function HomePage() {
return (