{item.label}
{item.value}
import { useMemo, useState } from 'react' import { visitRepository } from '../repositories/visitRepository.js' const tabs = [ { label: 'Fila ativa', value: 'ativa' }, { label: 'Em atendimento', value: 'atendimento' }, { label: 'Finalizadas', value: 'finalizadas' }, ] const cardClass = 'rounded-2xl border border-[#404040] bg-[#262626] shadow-sm' export function VisitsPage({ navigate }) { const careQueue = useMemo(() => visitRepository.getCareQueue(), []) const stages = useMemo(() => visitRepository.getStages(), []) const [activeTab, setActiveTab] = useState('ativa') const visibleQueue = useMemo(() => { if (activeTab === 'finalizadas') { return careQueue.filter((item) => item.status === 'Finalizada') } if (activeTab === 'atendimento') { return careQueue.filter((item) => item.status !== 'Finalizada' && item.status !== 'Aguardando medico') } return careQueue.filter((item) => item.status !== 'Finalizada') }, [activeTab, careQueue]) const summary = [ { label: 'Na fila', value: careQueue.filter((item) => item.status !== 'Finalizada').length, tone: 'text-[#3b82f6]' }, { label: 'Alta prioridade', value: careQueue.filter((item) => item.priority === 'Alta').length, tone: 'text-red-400' }, { label: 'Finalizadas', value: careQueue.filter((item) => item.status === 'Finalizada').length, tone: 'text-emerald-400' }, ] return (
Fila de atendimento, triagem e acompanhamento clĂnico local.
{item.label}
{item.value}
{visibleQueue.length} registros no filtro atual
{item.reason}
Nenhuma consulta caiu neste estado. Troque de aba para ver a fila mockada.
Etapa {index + 1}
{stage.description}
{label}
{value}