"use client";

import { PropsWithChildren } from "react";
import { Header } from "./Header";
import { CustomThemeProvider } from "@/context/CustomThemeContext";
import { Box, Paper, Stack } from "@mui/material";
import { ClientProvider } from "@/context/ClientContext";

export default function BaseLayout({
  children,
  endpoint,
  title,
  logoBase64,
}: PropsWithChildren<{
  endpoint?: string;
  title: string;
  logoBase64?: string;
}>) {
  return (
    <ClientProvider endpoint={endpoint ?? ""}>
      <CustomThemeProvider>
        <Paper
          elevation={0}
          square
          sx={{ minHeight: "100vh", display: "flex" }}
        >
          <Stack flex={1}>
            <Header title={title} logoBase64={logoBase64} />
            <Box paddingTop={1} paddingBottom={1} flex={1}>
              {children}
            </Box>
          </Stack>
        </Paper>
      </CustomThemeProvider>
    </ClientProvider>
  );
}