This repository has been archived on 2026-02-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
BreakPilot Dev 660295e218 fix(admin-v2): Restore complete admin-v2 application
The admin-v2 application was incomplete in the repository. This commit
restores all missing components:

- Admin pages (76 pages): dashboard, ai, compliance, dsgvo, education,
  infrastructure, communication, development, onboarding, rbac
- SDK pages (45 pages): tom, dsfa, vvt, loeschfristen, einwilligungen,
  vendor-compliance, tom-generator, dsr, and more
- Developer portal (25 pages): API docs, SDK guides, frameworks
- All components, lib files, hooks, and types
- Updated package.json with all dependencies

The issue was caused by incomplete initial repository state - the full
admin-v2 codebase existed in backend/admin-v2 and docs-src/admin-v2
but was never fully synced to the main admin-v2 directory.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-08 23:40:15 -08:00

58 lines
1.5 KiB
TypeScript

'use client'
import { TestResultCard } from './TestResultCard'
import type { TestCategoryResult } from './types'
interface TestRunnerProps {
category: string
categoryResult?: TestCategoryResult
isLoading: boolean
onRunTests: () => void
runButtonLabel?: string
rerunButtonLabel?: string
}
export function TestRunner({
categoryResult,
isLoading,
onRunTests,
runButtonLabel = '▶️ Tests ausfuehren',
rerunButtonLabel = '🔄 Erneut ausfuehren',
}: TestRunnerProps) {
if (!categoryResult) {
return (
<div className="text-center py-6">
<button
onClick={onRunTests}
disabled={isLoading}
className={`px-6 py-3 rounded-lg font-medium transition-colors ${
isLoading
? 'bg-gray-400 cursor-not-allowed'
: 'bg-green-600 text-white hover:bg-green-700'
}`}
>
{isLoading ? '⏳ Tests laufen...' : runButtonLabel}
</button>
</div>
)
}
return (
<div>
<div className="flex items-center justify-between mb-4">
<h3 className="font-semibold text-gray-700">Testergebnisse</h3>
<button
onClick={onRunTests}
disabled={isLoading}
className="text-sm text-blue-600 hover:text-blue-800"
>
{rerunButtonLabel}
</button>
</div>
{categoryResult.tests.map((test, index) => (
<TestResultCard key={index} result={test} />
))}
</div>
)
}