import React from 'react';
import {
List,
PieChart,
Users,
ListChecks,
MessageSquare,
History,
Server,
FileText,
Receipt,
BarChart3
} from 'lucide-react';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { useContasReceber } from '../../hooks/useContasReceber';
import { RegistrosView } from './RegistrosView';
import { CruzamentoView } from './CruzamentoView';
import { ServicesView } from './ServicesView';
import { ClientsView } from './ClientsView';
import { EntradasPlanejadasView } from './EntradasPlanejadasView';
import { BoletosView } from './BoletosView';
import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/card';
import { ScrollArea } from '@/components/ui/scroll-area';
import { cn } from '@/lib/utils';
const ActivityLog = ({ isOpen, onClose }) => {
if (!isOpen) return null;
return (
Atividade (Buzz)
{[
{ user: 'Ana (CFO)', action: 'Validou pagamento', target: 'PAG-1002', time: '10 min atrás', color: 'text-emerald-500' },
{ user: 'Bruno', action: 'Adicionou anexo', target: 'PAG-1045', time: '1h atrás', color: 'text-blue-500' },
].map((log, i) => (
{log.user}
{log.action} {log.target}
{log.time}
))}
);
};
export const ContasReceberView = ({ initialView }) => {
const { state, actions } = useContasReceber(initialView);
const activeSubView = state?.activeSubView || 'default';
const transactions = state?.transactions || [];
const clients = state?.clients || [];
const services = state?.services || [];
const kpis = state?.kpis || {};
const categorias = state?.categorias || [];
const caixas = state?.caixas || [];
const [isBuzzOpen, setIsBuzzOpen] = React.useState(false);
const subViews = [
{ id: 'default', label: 'Cruzamento', icon: BarChart3, description: 'Planejado vs Executado' },
{ id: 'entradas-planejadas', label: 'Entradas Planejadas', icon: FileText, description: 'Estimativas' },
{ id: 'boletos', label: 'Boletos', icon: Receipt, description: 'Cobranças' },
{ id: 'clientes', label: 'Clientes', icon: Users, description: 'Gerenciamento' },
{ id: 'servicos', label: 'Serviços', icon: Server, description: 'Catálogo' },
];
const renderSubView = () => {
switch (activeSubView) {
case 'servicos':
return ;
case 'clientes':
return ;
case 'entradas-planejadas':
return ;
case 'boletos':
return ;
case 'default':
default:
return ;
}
};
return (
{/* Header Section */}
{/* Linha 1: Título, Badge e Botão Activity Log */}
Recebíveis
{/* PREMIUM v2 */}
{/* */}
{/* Linha 2: Menu de Navegação */}
{subViews.map((view) => {
const Icon = view.icon;
return (
);
})}
{/* Content Area */}
setIsBuzzOpen(false)}
/>
);
};