66 lines
1.3 KiB
TypeScript
66 lines
1.3 KiB
TypeScript
import type { Metadata } from "next";
|
|
import localFont from "next/font/local";
|
|
import "./globals.css";
|
|
import NextTopLoader from 'nextjs-toploader';
|
|
import { Toaster } from "react-hot-toast";
|
|
const geistSans = localFont({
|
|
src: "./fonts/GeistVF.woff",
|
|
variable: "--font-geist-sans",
|
|
weight: "100 900",
|
|
});
|
|
const geistMono = localFont({
|
|
src: "./fonts/GeistMonoVF.woff",
|
|
variable: "--font-geist-mono",
|
|
weight: "100 900",
|
|
});
|
|
|
|
|
|
|
|
|
|
export const metadata: Metadata = {
|
|
title: "All And One Music",
|
|
description: "發掘你的音樂之路",
|
|
icons: [
|
|
{
|
|
rel: 'icon',
|
|
type: 'image/png',
|
|
sizes: '32x32',
|
|
url: '/favicon/favicon-32x32.png',
|
|
},
|
|
{
|
|
rel: 'icon',
|
|
type: 'image/png',
|
|
sizes: '16x16',
|
|
url: '/favicon/favicon-16x16.png',
|
|
},
|
|
{
|
|
rel: 'apple-touch-icon',
|
|
sizes: '180x180',
|
|
url: '/favicon/apple-touch-icon.png',
|
|
},
|
|
],
|
|
};
|
|
|
|
export default function RootLayout({
|
|
|
|
children,
|
|
}: Readonly<{
|
|
children: React.ReactNode;
|
|
}>) {
|
|
return (
|
|
<html lang="en">
|
|
|
|
<body
|
|
className={`${geistSans.variable} ${geistMono.variable} antialiased bg-[#F6E5E9]`}
|
|
>
|
|
<link rel="icon" href="/favicon.ico" sizes="any" />
|
|
<NextTopLoader color="#D60050" height={5} />
|
|
<Toaster position="bottom-center" />
|
|
{children}
|
|
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|
|
|