import { DevPortalLayout, CodeBlock, InfoBox, ParameterTable } from '@/components/DevPortalLayout' export default function SDKConfigurationPage() { return (

SDKProvider Props

Der SDKProvider akzeptiert folgende Konfigurationsoptionen:

void', required: false, description: 'Callback fuer Fehlerbehandlung', }, { name: 'onStateChange', type: '(state: SDKState) => void', required: false, description: 'Callback bei State-Aenderungen', }, ]} />

Vollstaendiges Beispiel

{`'use client' import { SDKProvider } from '@breakpilot/compliance-sdk' import { useRouter } from 'next/navigation' export default function SDKLayout({ children }: { children: React.ReactNode }) { const router = useRouter() return ( { console.error('SDK Error:', error) // Optional: Sentry oder anderes Error-Tracking }} onStateChange={(state) => { console.log('State changed:', state.currentStep) // Optional: Analytics-Events }} > {children} ) }`}

Synchronisations-Strategien

1. Nur localStorage (Offline-Only)

{` {children} `}

Ideal fuer: Lokale Entwicklung, Demos, Privacy-fokussierte Installationen. Daten werden nur im Browser gespeichert.

2. Backend-Sync mit Fallback

{` {children} `}

Empfohlen fuer: Produktionsumgebungen. Daten werden mit dem Backend synchronisiert, localStorage dient als Fallback bei Netzwerkproblemen.

3. Nur Backend (kein lokaler Cache)

{` {children} `}

Ideal fuer: Strenge Compliance-Anforderungen, Multi-User-Szenarien. Daten werden nur im Backend gespeichert.

Im Backend-Only Modus ist eine aktive Internetverbindung erforderlich. Bei Netzwerkproblemen koennen Daten verloren gehen.

API URL Konfiguration

Cloud-Version (Standard)

Keine zusaetzliche Konfiguration erforderlich:

{` {/* Nutzt automatisch https://api.breakpilot.io/sdk/v1 */} `}

Self-Hosted

{` {children} `}

Lokale Entwicklung

{` {children} `}

Feature Flags

Das SDK unterstuetzt Feature Flags ueber Subscription-Levels:

{`import { useSDK } from '@breakpilot/compliance-sdk' function MyComponent() { const { state } = useSDK() // Subscription-basierte Features const isEnterprise = state.subscription === 'ENTERPRISE' const isProfessional = ['PROFESSIONAL', 'ENTERPRISE'].includes(state.subscription) // Feature-Gates const canExportPDF = isProfessional const canUseRAG = isProfessional const canCustomizeDSFA = isEnterprise const canUseAPI = isProfessional return (
{canExportPDF && } {canUseRAG && }
) }`}

Logging & Debugging

Aktivieren Sie detailliertes Logging fuer die Entwicklung:

{`// In Ihrer .env.local NEXT_PUBLIC_SDK_DEBUG=true // Oder programmatisch { if (process.env.NODE_ENV === 'development') { console.log('[SDK] State Update:', { phase: state.currentPhase, step: state.currentStep, useCases: state.useCases.length, risks: state.risks.length, }) } }} > {children} `} Der SDK-State ist im React DevTools unter dem SDKProvider-Context sichtbar. Installieren Sie die React Developer Tools Browser-Extension fuer einfaches Debugging.
) }