86 lines
2.3 KiB
TypeScript
86 lines
2.3 KiB
TypeScript
// src/app/layout.tsx
|
|
import type { Metadata } from "next";
|
|
import { Geist, Geist_Mono } from "next/font/google";
|
|
import "./globals.css";
|
|
import "./styles/themes.css";
|
|
import "./styles/comfort.css";
|
|
import { ReactNode } from "react";
|
|
import { LayoutWrapper } from "./components/LayoutWrapper";
|
|
import Providers from "./components/Providers";
|
|
|
|
const geistSans = Geist({
|
|
variable: "--font-geist-sans",
|
|
subsets: ["latin"],
|
|
});
|
|
const geistMono = Geist_Mono({
|
|
variable: "--font-geist-mono",
|
|
subsets: ["latin"],
|
|
});
|
|
|
|
export const metadata: Metadata = {
|
|
title: "CatLink",
|
|
description: "Ваши ссылки в одном месте",
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children,
|
|
}: {
|
|
children: ReactNode;
|
|
}) {
|
|
return (
|
|
<html lang="ru">
|
|
<head>
|
|
<meta charSet="utf-8" />
|
|
<link
|
|
rel="apple-touch-icon"
|
|
type="image/png"
|
|
sizes="180x180"
|
|
href="/assets/img/apple-touch-icon.png?h=0f5e29c1169e75a7003e818478b67caa"
|
|
/>
|
|
<link
|
|
rel="icon"
|
|
type="image/png"
|
|
sizes="96x96"
|
|
href="/assets/img/favicon-96x96.png?h=c8792ce927e01a494c4af48bed5dc5e3"
|
|
/>
|
|
<link
|
|
rel="icon"
|
|
type="image/png"
|
|
sizes="192x192"
|
|
href="/assets/img/web-app-manifest-192x192.png?h=c8792ce927e01a494c4af48bed5dc5e3"
|
|
/>
|
|
<link
|
|
rel="icon"
|
|
type="image/png"
|
|
sizes="512x512"
|
|
href="/assets/img/web-app-manifest-512x512.png?h=c8792ce927e01a494c4af48bed5dc5e3"
|
|
/>
|
|
|
|
{/* Bootstrap & Lato & Icons */}
|
|
<link
|
|
rel="stylesheet"
|
|
href="/assets/bootstrap/css/bootstrap.min.css?h=608a9825a1f76f674715160908e57785"
|
|
/>
|
|
<link
|
|
rel="stylesheet"
|
|
href="/assets/css/Lato.css?h=8253736d3a23b522f64b7e7d96d1d8ff"
|
|
/>
|
|
<link
|
|
rel="stylesheet"
|
|
href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css"
|
|
/>
|
|
|
|
<link rel="manifest" href="/manifest.json?h=457941ffad3c027c946331c09a4d7d2f" />
|
|
<meta name="theme-color" content="#1a1a23" />
|
|
</head>
|
|
<body
|
|
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
|
|
>
|
|
<Providers>
|
|
<LayoutWrapper>{children}</LayoutWrapper>
|
|
</Providers>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|