import { useState } from 'react'; import { Card, CardContent, CardHeader, CardTitle, CardDescription } from '@/components/ui/card'; import { Badge } from '@/components/ui/badge'; import { Button } from '@/components/ui/button'; import { BookOpen, CheckCircle2, Play } from 'lucide-react'; import { generateAllScenarios } from '@/lib/audit/scenarios'; import type { AuditScenario } from '@/lib/audit/types'; import { useNavigate } from 'react-router-dom'; export default function BibliographicTestPanel() { const [scenarios] = useState(() => generateAllScenarios().filter(s => s.isBibliographic) ); const navigate = useNavigate(); const handleCopyInputs = (scenario: AuditScenario) => { // Navega pro módulo navigate(`/${scenario.module === 'isolated-roof' ? 'cobertura-isolada' : scenario.module === 'sign' ? 'muros' : scenario.module === 'bar' ? 'barras' : scenario.module === 'bridge' ? 'pontes' : scenario.module === 'dynamics' ? 'dinamica' : scenario.module === 'vault' ? 'abobada' : scenario.module === 'dome' ? 'cupula' : scenario.module}`); }; return (
Validação Bibliográfica (TesteBib) Casos clássicos da literatura brasileira de engenharia estrutural (Blessmann, Pfeil, Rebello) com resolução passo a passo. Os valores calculados localmente pelo aplicativo são comparados ao gabarito da literatura. {scenarios.map(s => (
{s.id}
{s.moduleLabel}

Enunciado

{s.enunciadoParafraseado}

Referência Bibliográfica

{s.bibliografiaReferencia}

Inputs (Geometria / Vento)
{Object.entries(s.inputs).map(([k, v]) => (
{k}: {JSON.stringify(v)}
))}
Valores Calculados (Kernel Local)
{Object.entries(s.outputs).slice(0, 5).map(([k, v]) => (
{k}: {typeof v === 'number' ? v.toFixed(3) : JSON.stringify(v)}
))}
))} {scenarios.length === 0 && (

Nenhum cenário bibliográfico encontrado.

)}
); }