Refactor Footer component and add Analytics and Footer components to BaseLayout
All checks were successful
Test / test (push) Successful in 38s
Test / test (pull_request) Successful in 37s

This commit is contained in:
Valentin Popov 2024-09-13 00:06:02 +00:00
parent b8fd186801
commit d4a6772ec5
Signed by: Valentin Popov
GPG Key ID: AE3CE523DAAA8401
3 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,49 @@
---
import dayjs from "dayjs";
---
<style lang="scss">
@import "../scss/_variables.scss";
footer {
bottom: 0;
display: flex;
font-size: $fontSizeBase * 0.85;
height: 4em;
justify-content: space-between;
left: 0;
padding: 1em 4em;
position: absolute;
right: 0;
}
@media (width <=684px) {
footer {
padding: 4em 1em 2em;
}
}
ul {
display: flex;
justify-content: space-between;
list-style: none;
}
li {
margin-left: 2em;
}
a {
color: $colorText;
&:visited {
color: $colorText;
}
}
</style>
<footer>
<div>&copy; {dayjs().year()} <a href="mailto:valentin@popov.link">Valentin Popov</a></div>
<ul>
<li><a href="https://analytics.popov.link" target="_blank">Analytics</a></li>
<li><a href="https://code.popov.link/valentineus/valentineus.github.io" target="_blank">Source Code</a></li>
</ul>
</footer>

View File

@ -1,5 +1,6 @@
--- ---
import Analytics from "../components/Analytics.astro"; import Analytics from "../components/Analytics.astro";
import Footer from "../components/Footer.astro";
import Head from "../components/Head.astro"; import Head from "../components/Head.astro";
import Header from "../components/Header.astro"; import Header from "../components/Header.astro";
import "../scss/global.scss"; import "../scss/global.scss";
@ -23,6 +24,7 @@ const { description, title } = Astro.props;
<main> <main>
<slot /> <slot />
</main> </main>
<Footer />
<Analytics title={title ?? import.meta.env.DEFAULT_TITLE} /> <Analytics title={title ?? import.meta.env.DEFAULT_TITLE} />
</body> </body>
</html> </html>

View File

@ -36,6 +36,7 @@ body {
max-width: 52em; max-width: 52em;
min-height: 100vh; min-height: 100vh;
padding: 4em; padding: 4em;
position: relative;
text-rendering: optimizelegibility; text-rendering: optimizelegibility;
} }