Newer
Older
import React from "react"
import Helmet from "react-helmet"
import { useStaticQuery, graphql } from "gatsby"
import SEO from "./seo"
import Header from "../components/Header"
import Footer from "../components/Footer"
children: React.ReactNode
UserMenu?: React.ReactNode
}
/**
* Default Layout with Header (Helmet & SEO) and Footer
* @param {Props} props - Page content
* @returns {JSX.Element} The complete page
*/
const Layout = ({ children }: Props): JSX.Element => {
const data = useStaticQuery(graphql`
query {
directus {
site {
icon {
id
imageFile {
id
publicURL
}
}
return (
<>
<Helmet>
<link
rel="icon"
href={data.directus.site?.icon?.imageFile?.publicURL}
{/* https://www.freecodecamp.org/news/how-to-keep-your-footer-where-it-belongs-59c6aa05c59c */}
<div className="relative min-h-screen">
<div className="pb-24">
<Header />
{children}
</div>
<Footer className="absolute bottom-0 h-24" />
</div>