new models, frontend functions, public pages

This commit is contained in:
2025-05-07 15:41:03 +09:00
parent 91f0d54563
commit 18497d4343
784 changed files with 124024 additions and 289 deletions

View File

@@ -3,15 +3,12 @@ import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { ReactNode } from "react";
import Script from "next/script";
import Link from "next/link";
import Image from "next/image";
import { LayoutWrapper } from "./components/LayoutWrapper";
const geistSans = Geist({
variable: "--font-geist-sans",
subsets: ["latin"],
});
const geistMono = Geist_Mono({
variable: "--font-geist-mono",
subsets: ["latin"],
@@ -55,6 +52,8 @@ export default function RootLayout({
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"
@@ -63,110 +62,18 @@ export default function RootLayout({
rel="stylesheet"
href="/assets/css/Lato.css?h=8253736d3a23b522f64b7e7d96d1d8ff"
/>
<link
rel="manifest"
href="/manifest.json?h=457941ffad3c027c946331c09a4d7d2f"
/>
<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="#ffffff" />
</head>
<body className={`${geistSans.variable} ${geistMono.variable} antialiased`}>
{/* Header (fixed to top) */}
<nav className="navbar navbar-expand bg-light fixed-top shadow-sm">
<div className="container">
<Link href="/" className="navbar-brand d-flex align-items-center">
<Image
src="/assets/img/CAT.png"
alt="CatLink"
width={89}
height={89}
/>
<span className="ms-2">CatLink</span>
</Link>
<button
className="navbar-toggler"
type="button"
data-bs-toggle="collapse"
data-bs-target="#navcol-1"
/>
<div className="collapse navbar-collapse" id="navcol-1">
<Link href="/auth/login" className="btn btn-primary ms-auto">
<i className="fa fa-user"></i>
<span className="d-none d-sm-inline"> Вход</span>
</Link>
</div>
</div>
</nav>
{/* Main content: добавляем дополнительный отступ сверху */}
<main
style={{
paddingTop: "100px", // <-- тут увеличиваем интервал
paddingBottom: "200px"
}}
// или через класс bootstrap: className="pt-5 pb-5"
>
{children}
</main>
{/* Footer (fixed to bottom) */}
<footer className="bg-light footer fixed-bottom border-top">
<div className="container py-2">
<div className="row">
<div className="col-lg-6 text-center text-lg-start mb-2 mb-lg-0">
<ul className="list-inline mb-1">
<li className="list-inline-item">
<Link href="#">About</Link>
</li>
<li className="list-inline-item"></li>
<li className="list-inline-item">
<Link href="#">Contact</Link>
</li>
<li className="list-inline-item"></li>
<li className="list-inline-item">
<Link href="#">Terms of Use</Link>
</li>
<li className="list-inline-item"></li>
<li className="list-inline-item">
<Link href="#">Privacy Policy</Link>
</li>
</ul>
<p className="text-muted small mb-0">© CatLink 2025</p>
</div>
<div className="col-lg-6 text-center text-lg-end">
<ul className="list-inline mb-0">
<li className="list-inline-item">
<Link href="#">
<i className="fa fa-facebook fa-lg fa-fw"></i>
</Link>
</li>
<li className="list-inline-item">
<Link href="#">
<i className="fa fa-twitter fa-lg fa-fw"></i>
</Link>
</li>
<li className="list-inline-item">
<Link href="#">
<i className="fa fa-instagram fa-lg fa-fw"></i>
</Link>
</li>
</ul>
</div>
</div>
</div>
</footer>
{/* Scripts */}
<Script
src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.0/jquery.min.js"
strategy="beforeInteractive"
/>
<Script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"
strategy="beforeInteractive"
/>
<Script src="/assets/js/bs-init.js" strategy="lazyOnload" />
<body
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
>
<LayoutWrapper>{children}</LayoutWrapper>
</body>
</html>
);