Initial commit of Astro version
This commit is contained in:
commit
e3d1f6999b
79 changed files with 9880 additions and 0 deletions
95
src/layouts/BaseLayout.astro
Normal file
95
src/layouts/BaseLayout.astro
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
---
|
||||
import "../styles/base.css";
|
||||
import "../styles/fonts.css";
|
||||
import DarkModeScript from "../components/DarkModeScript.astro";
|
||||
import AgeRestrictedModal from "../components/AgeRestrictedModal.astro";
|
||||
import NavHeader from "../components/NavHeader.astro";
|
||||
import IconSun from "../components/icons/IconSun.astro";
|
||||
import IconMoon from "../components/icons/IconMoon.astro";
|
||||
|
||||
type Props = {
|
||||
pageTitle?: string;
|
||||
};
|
||||
|
||||
const { pageTitle } = Astro.props;
|
||||
const title = pageTitle ? `${pageTitle} | Bad Manners` : "Bad Manners";
|
||||
---
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
|
||||
<link rel="manifest" href="/site.webmanifest" />
|
||||
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#37b340" />
|
||||
<meta name="msapplication-TileColor" content="#37b340" />
|
||||
<meta name="theme-color" content="#7DD05A" data-react-helmet="true" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="generator" content={Astro.generator} />
|
||||
<title>{title}</title>
|
||||
<link
|
||||
rel="alternate"
|
||||
type="application/rss+xml"
|
||||
href={new URL("/feed.xml", Astro.site)}
|
||||
title="Commission status"
|
||||
/>
|
||||
<link
|
||||
rel="alternate"
|
||||
type="application/rss+xml"
|
||||
href="https://gallery.badmanners.xyz/feed.xml"
|
||||
title="Gallery feed"
|
||||
/>
|
||||
<meta property="og:title" content={title} />
|
||||
<slot name="head-description" />
|
||||
<meta property="og:url" content={Astro.url} />
|
||||
<meta content="/logo.webp" property="og:image" />
|
||||
</head>
|
||||
<body>
|
||||
<div class="flex min-h-screen flex-col">
|
||||
<div
|
||||
id="bg"
|
||||
class="fixed h-screen w-screen bg-radial from-bm-300 to-bm-500 dark:from-green-800 dark:to-green-950 print:hidden"
|
||||
aria-hidden
|
||||
>
|
||||
</div>
|
||||
<div class="relative my-auto flex flex-col items-center justify-center px-3 py-8 sm:py-12 md:px-12 print:p-0">
|
||||
<main
|
||||
class="w-full max-w-5xl flex-shrink-0 flex-grow-0 justify-center rounded-xl bg-stone-50 px-4 pb-6 pt-4 text-center text-base font-light tracking-tight text-stone-700 sm:px-8 sm:pb-8 sm:pt-6 sm:text-lg dark:bg-zinc-800 dark:text-zinc-50 print:bg-transparent print:p-0"
|
||||
>
|
||||
<NavHeader />
|
||||
<slot />
|
||||
</main>
|
||||
<footer
|
||||
class="sm:text-md flex flex-col items-center pt-9 text-sm font-normal tracking-wide text-black dark:text-white"
|
||||
>
|
||||
<div class="flex items-center">
|
||||
<span id="copyright">© 2023–{new Date().getFullYear()} Bad Manners</span>
|
||||
<span class="print:hidden" aria-hidden> | </span>
|
||||
<a
|
||||
href="/licenses.txt"
|
||||
target="_blank"
|
||||
class="transition-colors hover:text-white hover:underline focus:text-white focus:underline motion-reduce:transition-none dark:hover:text-bm-300 dark:focus:text-bm-300 print:hidden"
|
||||
>
|
||||
Licenses
|
||||
</a>
|
||||
</div>
|
||||
<span class="mt-1 print:hidden"
|
||||
><button
|
||||
data-dark-mode
|
||||
aria-labelledby="label-toggle-dark-mode"
|
||||
aria-hidden
|
||||
class="m-1 hidden p-2 transition-colors hover:text-green-700 focus:text-green-700 motion-reduce:transition-none dark:hover:text-bm-300 dark:focus:text-bm-300"
|
||||
>
|
||||
<IconSun width="1.5rem" height="1.5rem" class="hidden dark:block" />
|
||||
<IconMoon width="1.5rem" height="1.5rem" class="block dark:hidden" />
|
||||
<span id="label-toggle-dark-mode" class="hidden">Toggle dark mode</span>
|
||||
</button> </span
|
||||
>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
<DarkModeScript />
|
||||
<AgeRestrictedModal />
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue