feat: nprogress bar

This commit is contained in:
trafficlunar 2025-04-12 23:28:12 +01:00
parent 53a23f35ef
commit be6e622a5b
4 changed files with 53 additions and 3 deletions

View file

@ -11,6 +11,7 @@
},
"dependencies": {
"@auth/prisma-adapter": "2.7.2",
"@bprogress/next": "^3.2.11",
"@hello-pangea/dnd": "^18.0.1",
"@prisma/client": "^6.6.0",
"@trafficlunar/asmcrypto.js": "^1.0.2",

View file

@ -11,6 +11,9 @@ importers:
'@auth/prisma-adapter':
specifier: 2.7.2
version: 2.7.2(@prisma/client@6.6.0(prisma@6.6.0(typescript@5.8.3))(typescript@5.8.3))
'@bprogress/next':
specifier: ^3.2.11
version: 3.2.11(next@15.2.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
'@hello-pangea/dnd':
specifier: ^18.0.1
version: 18.0.1(@types/react@19.1.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
@ -123,6 +126,22 @@ packages:
resolution: {integrity: sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==}
engines: {node: '>=6.9.0'}
'@bprogress/core@1.3.3':
resolution: {integrity: sha512-Vz9vzZE8xvfkgY09e0S6kzNz/ev/2lUw7A/z0TW7N0ZBG9xmVXrzSsFe3uvypxDa5ltn+xLBtfDtxBc8KsrvBQ==}
'@bprogress/next@3.2.11':
resolution: {integrity: sha512-UPXApgTvtF0zu3GoxctG0sZ177PbresqVUosaV5giAG46CuGRQeY7Ys3McL7I1h9MaUkh1rg+1NPAdnGE4dEig==}
peerDependencies:
next: '>=13.0.0'
react: '>=18.0.0'
react-dom: '>=18.0.0'
'@bprogress/react@1.2.6':
resolution: {integrity: sha512-fAK2qSO4+nG0Rak6+9jZmGWQxsntHS8Zw4fm2dBhPardhlfIPzVV47uhkW2cyQl9+r/1We/kYVq+r31deLO5Zg==}
peerDependencies:
react: '>=18.0.0'
react-dom: '>=18.0.0'
'@emnapi/core@1.4.0':
resolution: {integrity: sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==}
@ -2253,6 +2272,22 @@ snapshots:
dependencies:
regenerator-runtime: 0.14.1
'@bprogress/core@1.3.3': {}
'@bprogress/next@3.2.11(next@15.2.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
dependencies:
'@bprogress/core': 1.3.3
'@bprogress/react': 1.2.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
next: 15.2.4(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)
'@bprogress/react@1.2.6(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
dependencies:
'@bprogress/core': 1.3.3
react: 19.1.0
react-dom: 19.1.0(react@19.1.0)
'@emnapi/core@1.4.0':
dependencies:
'@emnapi/wasi-threads': 1.0.1

View file

@ -5,6 +5,7 @@ import { Lexend } from "next/font/google";
import "./globals.css";
import Header from "./components/header";
import Footer from "./components/footer";
import Providers from "./provider";
const lexend = Lexend({
subsets: ["latin"],
@ -25,9 +26,11 @@ export default function RootLayout({
<body className={`${lexend.className} antialiased flex flex-col items-center min-h-screen`}>
<Script defer src="https://analytics.trafficlunar.net/script.js" data-website-id="bc530384-9b7d-471a-b2e3-f9859da50c24" />
<Providers>
<Header />
<div className="px-4 py-8 max-w-7xl w-full">{children}</div>
<Footer />
</Providers>
</body>
</html>
);

11
src/app/provider.tsx Normal file
View file

@ -0,0 +1,11 @@
"use client";
import { ProgressProvider } from "@bprogress/next/app";
export default function Providers({ children }: { children: React.ReactNode }) {
return (
<ProgressProvider height="4px" color="var(--color-amber-500)" options={{ showSpinner: false }} shallowRouting>
{children}
</ProgressProvider>
);
}