import Header from "@/components/Header";
import Footer from "@/components/Footer";
import FloatingActions from "@/components/FloatingActions";
import { getInfosUtiles } from "@/lib/api/info-utile";
import type { InfoUtile } from "@/types/info-utile";

const INFOS_REPLI: InfoUtile = {
  id: -1,
  telephonePrincipal: "",
  telephoneSecondaire: null,
  numeroWhatsapp: "",
  emailContact: "contact@pubago.com",
  emailCommandes: null,
  adresseSiege: "Cotonou, Bénin",
  zoneCouverture: "Grand Nokoué, Bénin",
  horairesOuverture: "",
  lienGoogleMaps: null,
  lienFacebook: null,
  lienTiktok: null,
  lienInstagram: null,
  lienLinkedin: null,
  lienX: null,
  lienYoutube: null,
  nomPlateforme: "PUBAGO",
  slogan: "De la pub à gogoo !",
  baseline: "sacki.",
  numeroIfu: null,
  numeroRccm: null,
  updatedAt: "",
};

async function chargerInfos(): Promise<InfoUtile> {
  try {
    return await getInfosUtiles();
  } catch {
    return INFOS_REPLI;
  }
}

export default async function SiteLayout({ children }: { children: React.ReactNode }) {
  const infos = await chargerInfos();

  return (
    <>
      <Header />
      {children}
      <Footer infos={infos} />
      <FloatingActions numeroWhatsapp={infos.numeroWhatsapp} />
    </>
  );
}
