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>
This commit is contained in:
BreakPilot Dev
2026-02-08 23:40:15 -08:00
parent f28244753f
commit 660295e218
385 changed files with 138126 additions and 3079 deletions

View File

@@ -0,0 +1,53 @@
'use client'
interface WizardNavigationProps {
currentStep: number
totalSteps: number
onPrev: () => void
onNext: () => void
showNext?: boolean
isLoading?: boolean
nextLabel?: string
prevLabel?: string
}
export function WizardNavigation({
currentStep,
totalSteps,
onPrev,
onNext,
showNext = true,
isLoading = false,
nextLabel = 'Weiter →',
prevLabel = '← Zurueck',
}: WizardNavigationProps) {
return (
<div className="flex justify-between mt-8 pt-6 border-t">
<button
onClick={onPrev}
disabled={currentStep === 0 || isLoading}
className={`px-6 py-2 rounded-lg transition-colors ${
currentStep === 0 || isLoading
? 'bg-gray-200 text-gray-400 cursor-not-allowed'
: 'bg-gray-200 text-gray-700 hover:bg-gray-300'
}`}
>
{prevLabel}
</button>
{showNext && currentStep < totalSteps - 1 && (
<button
onClick={onNext}
disabled={isLoading}
className={`px-6 py-2 rounded-lg transition-colors ${
isLoading
? 'bg-blue-400 cursor-not-allowed'
: 'bg-blue-600 text-white hover:bg-blue-700'
}`}
>
{isLoading ? 'Bitte warten...' : nextLabel}
</button>
)}
</div>
)
}