import { onUpdateConsentCookie, onAcceptAllConsentCookie } from "./LayoutDefault.telefunc"; import { MobileNavigation } from "@syntax/MobileNavigation"; import { usePageContext } from "vike-react/usePageContext"; import { ThemeProvider } from "@/providers/ThemeProvider"; import { ToastContainer, toast } from "react-toastify"; import { ThemeSelector } from "@syntax/ThemeSelector"; import { Button } from "@/components/syntax/Button"; import { Toggle } from "@/components/common/Toggle"; import { clientOnly } from "vike-react/clientOnly"; import React, { useEffect, useState } from "react"; import { Navigation } from "@syntax/Navigation"; import { Link } from "@/components/common/Link"; import { reload } from "vike/client/router"; import { Hero } from "@syntax/Hero"; import { Logo } from "@syntax/Logo"; import clsx from "clsx"; import "./style.css"; import "./tailwind.css"; import "./prism.css"; import "unfonts.css"; const Search = clientOnly(() => import("@syntax/Search").then((module) => module.Search)); function GitHubIcon(props: React.ComponentPropsWithoutRef<"svg">) { return ( ); } function Header() { const [isScrolled, setIsScrolled] = useState(false); useEffect(() => { function onScroll() { setIsScrolled(window.scrollY > 0); } onScroll(); window.addEventListener("scroll", onScroll, { passive: true }); return () => { window.removeEventListener("scroll", onScroll); }; }, []); return (
Memento Dev
} />
); } function CookieModal() { const { cookies } = usePageContext(); const [consentCookies, setConsentCookies] = useState(cookies.consent); const [isSelectionOpen, setIsSelectionOpen] = useState(false); const [isOpen, setIsOpen] = useState(() => { return Object.keys(cookies.consent).every((value) => value); }); if (isSelectionOpen) { return (

Personnalisation des cookies 🍪

{ setConsentCookies({ ...consentCookies, analytics: checked }); toast .promise(onUpdateConsentCookie("analytics", checked), { pending: "Mise à jour des cookies...", success: "Cookies mis à jour !", error: "Erreur lors de la mise à jour des cookies.", }) .finally(reload); }} /> { setConsentCookies({ ...consentCookies, analytics: checked }); toast .promise(onUpdateConsentCookie("customization", checked), { pending: "Mise à jour des cookies...", success: "Cookies mis à jour !", error: "Erreur lors de la mise à jour des cookies.", }) .then((data) => { setConsentCookies({ ...consentCookies, [data.cookieName]: data.cookieValue }); reload(); }); }} />
); } if (!isOpen) return null; return (

Coucou c'est nous...
les cookies ! 🍪

On ne t'embête pas longtemps, on te laisse même le choix (si ça c'est pas la classe 😎).

Si tu veux en savoir plus, tu peux consulter la page{" "} Politique de confidentialité .

); } export default function DefaultLayout({ children }: { children: React.ReactNode }) { const { urlPathname, cookies } = usePageContext(); const isHomePage = urlPathname === "/"; return (
{isHomePage && }
{children}
); }