ad83b8dc67
CRA tab now computes the assessment live: useCRA POSTs the scenario findings through a new /api/v1/cra/* proxy to the backend mapper and merges the live mapping (CRA requirement, risk, measures, NIST/OWASP crosswalk) with the frontend scenario constants (full measure texts + cyber->safety cross-links, until those move server-side in step 2). Falls back to the static scenario if the backend is unreachable. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
22 lines
553 B
TypeScript
22 lines
553 B
TypeScript
'use client'
|
|
|
|
import { useCRA } from './_hooks/useCRA'
|
|
import { CRACyberView } from './_components/CRACyberView'
|
|
|
|
export default function CRAPage() {
|
|
const { data, live } = useCRA()
|
|
if (!data) {
|
|
return <p className="text-sm text-gray-500">CRA-Risikobeurteilung wird geladen …</p>
|
|
}
|
|
return (
|
|
<div>
|
|
{!live && (
|
|
<p className="mb-3 text-[11px] text-amber-600 dark:text-amber-400">
|
|
Backend nicht erreichbar — statisches Szenario angezeigt.
|
|
</p>
|
|
)}
|
|
<CRACyberView data={data} />
|
|
</div>
|
|
)
|
|
}
|