38 lines
1.3 KiB
TypeScript
38 lines
1.3 KiB
TypeScript
import { fiscalCalculationGaps } from '@/lib/iva-calculation-gaps';
|
|
export function FiscalCalculationGaps({
|
|
draft,
|
|
}: {
|
|
draft: Record<string, unknown>;
|
|
}) {
|
|
try {
|
|
const gaps = fiscalCalculationGaps(draft);
|
|
if (!gaps.length) return null;
|
|
return (
|
|
<details className="rounded border p-3">
|
|
<summary>
|
|
Cálculos indeterminados e condições para resolver (
|
|
{gaps.length})
|
|
</summary>
|
|
<p>
|
|
Contexto desta oportunidade. Cada cálculo conserva o motivo,
|
|
os dados necessários e a condição de resolução. IVA
|
|
documental de aquisição e IVA do fornecimento permanecem
|
|
separados.
|
|
</p>
|
|
{gaps.map((g) => (
|
|
<article key={g.id} className="border-t py-2">
|
|
<h4>
|
|
{g.period} — {g.calculation}
|
|
</h4>
|
|
<p>{g.reason}</p>
|
|
<p>Dados necessários: {g.required.join('; ')}.</p>
|
|
<p>Para resolver: {g.resolution}</p>
|
|
</article>
|
|
))}
|
|
</details>
|
|
);
|
|
} catch (error) {
|
|
return <p role="alert">{String(error)}</p>;
|
|
}
|
|
}
|