import type { ReactNode } from "react";

import MoldeDosMembros from "@/components/digitais/membros/MoldeDosMembros";
import { ajustesDosDigitais, corDaArea } from "@/lib/digitais/servidor/ajustes-do-pedido";
import { carregarLoja } from "@/lib/loja/dados-da-loja";

/* A aparência da área de membros (Configurações > Aparência) vale para todas as telas dela. */
export default async function LayoutDosMembros({ children, params }: { children: ReactNode; params: Promise<{ slug: string }> }) {
  const { slug } = await params;
  const dados = await carregarLoja(slug);
  const perfil = dados?.profile;
  if (!perfil) return children;
  const ajustes = await ajustesDosDigitais(String(perfil.id));
  const { fonte, fundo, capas } = ajustes.area;
  return (
    <MoldeDosMembros aparencia={{ fonte, fundo, capas }} cor={corDaArea(ajustes, perfil)}>
      {children}
    </MoldeDosMembros>
  );
}
