import { getCookie } from "cookies-next"; import Head from "next/head"; import type { ReactNode } from "react"; import { SIDEBAR_COOKIE_NAME, Sidebar, } from "~/components/area-riservata/sidebar"; import { BannerFactory } from "~/components/banners"; import { Footer } from "~/components/footer"; import { LoadingPage } from "~/components/loading"; import { SiteHeader } from "~/components/navbar/site-header"; import { UserViewProvider } from "~/lib/userViewContext"; import { cn } from "~/lib/utils"; import { useTranslation } from "~/providers/I18nProvider"; import { EnforcedSessionContext, useSession, } from "~/providers/SessionProvider"; import type { UsersId } from "~/schemas/public/Users"; import type { ValidSession } from "~/server/api/trpc"; import { api } from "~/utils/api"; import { UserViewHeader } from "./area-riservata/userViewHeader"; interface Props { bodyClassName?: string; containerClassName?: string; children: ReactNode; noFooter?: boolean; footerClassName?: string; } export const Layout = ({ children, noFooter, bodyClassName, containerClassName, footerClassName, }: Props) => { const { data: bannerData } = api.banners.getBannerData.useQuery({ area_riservata: false, }); return (