import type { SystemInfoConfig } from './types'

export const pcaPlatformConfig: SystemInfoConfig = {
  title: 'PCA Platform System-Info',
  description: 'Partner Content Access Platform fuer Content-Partner.',
  version: '1.0',
  architecture: {
    layers: [
      { title: 'Partner Portal', components: ['Dashboard', 'Content Upload', 'Analytics'], color: '#3b82f6' },
      { title: 'Content Pipeline', components: ['Ingestion', 'Processing', 'Quality Check'], color: '#8b5cf6' },
      { title: 'Distribution', components: ['CDN', 'API Access', 'Embed Codes'], color: '#10b981' },
      { title: 'Monetization', components: ['Usage Tracking', 'Revenue Share', 'Invoicing'], color: '#f59e0b' },
    ],
  },
  features: [
    { name: 'Partner Onboarding', status: 'active', description: 'Self-Service Registrierung' },
    { name: 'Content Upload', status: 'active', description: 'Bulk-Upload und Metadaten' },
    { name: 'Analytics Dashboard', status: 'active', description: 'Nutzungsstatistiken' },
    { name: 'Revenue Tracking', status: 'planned', description: 'Umsatzbeteiligung' },
  ],
  roadmap: [
    { phase: 'Phase 1: Core (Q1)', priority: 'high', items: ['Partner-Registrierung', 'Content-Upload', 'Basic Analytics', 'API Documentation'] },
    { phase: 'Phase 2: Quality (Q2)', priority: 'medium', items: ['Auto-Transcoding', 'Quality Gates', 'Metadata Validation', 'Preview System'] },
    { phase: 'Phase 3: Monetization (Q3)', priority: 'medium', items: ['Usage-based Billing', 'Revenue Reports', 'Payment Integration', 'Contract Management'] },
  ],
  technicalDetails: [
    { component: 'Upload', technology: 'TUS Protocol', description: 'Resumable Uploads' },
    { component: 'Storage', technology: 'MinIO/S3', description: 'Object Storage' },
    { component: 'CDN', technology: 'CloudFlare', description: 'Content Delivery' },
    { component: 'API', technology: 'REST/GraphQL', description: 'Partner Access' },
  ],
  auditInfo: [
    {
      category: 'Partner-Status',
      items: [
        { label: 'Aktive Partner', value: 'Variabel', status: 'ok' },
        { label: 'Pending Approvals', value: 'Dashboard', status: 'ok' },
        { label: 'Content-Uploads', value: 'Tracking', status: 'ok' },
        { label: 'API-Nutzung', value: 'Metered', status: 'ok' },
      ],
    },
    {
      category: 'Content Pipeline',
      items: [
        { label: 'Upload-Status', value: 'Aktiv', status: 'ok' },
        { label: 'Transcoding', value: 'Automatisch', status: 'ok' },
        { label: 'Quality Gates', value: 'Aktiviert', status: 'ok' },
        { label: 'CDN Distribution', value: 'CloudFlare', status: 'ok' },
      ],
    },
    {
      category: 'Monetarisierung',
      items: [
        { label: 'Usage Tracking', value: 'Aktiv', status: 'ok' },
        { label: 'Revenue Share', value: 'Geplant', status: 'warning' },
        { label: 'Invoicing', value: 'Geplant', status: 'warning' },
        { label: 'Payout', value: 'Geplant', status: 'warning' },
      ],
    },
  ],
  fullDocumentation: `
<h2>Partner Content Access (PCA) Platform</h2>

<h3>1. Uebersicht</h3>
<p>Die PCA-Plattform ermoeglicht Content-Partnern das Hochladen, Verwalten und Monetarisieren ihrer Bildungsinhalte. Sie bietet Self-Service-Tools fuer Onboarding und Analytics.</p>

<h3>2. Partner-Workflow</h3>
<pre>
Partner Journey:

Registrierung
     │
     v
┌─────────────────────────┐
│   Onboarding Wizard     │
│   - Firmendaten         │
│   - Vertrag / AGB       │
│   - API-Key Generierung │
└───────────┬─────────────┘
            │
            v
┌─────────────────────────┐
│   Content Upload        │
│   - Bulk Upload         │
│   - Metadata Editor     │
│   - Preview             │
└───────────┬─────────────┘
            │
            v
┌─────────────────────────┐
│   Quality Check         │
│   - Format Validation   │
│   - Metadata Check      │
│   - Review (optional)   │
└───────────┬─────────────┘
            │
            v
┌─────────────────────────┐
│   Publishing            │
│   - CDN Distribution    │
│   - API Access          │
│   - Embed Codes         │
└───────────┬─────────────┘
            │
            v
┌─────────────────────────┐
│   Analytics & Payout    │
│   - Views/Downloads     │
│   - Revenue Tracking    │
│   - Monthly Reports     │
└─────────────────────────┘
</pre>

<h3>3. Content-Typen</h3>
<table>
  <tr><th>Typ</th><th>Formate</th><th>Max. Groesse</th><th>Processing</th></tr>
  <tr><td>Video</td><td>MP4, MOV, MKV</td><td>5 GB</td><td>Transcoding</td></tr>
  <tr><td>Audio</td><td>MP3, WAV, FLAC</td><td>500 MB</td><td>Normalisierung</td></tr>
  <tr><td>Dokument</td><td>PDF, DOCX</td><td>100 MB</td><td>Preview Gen</td></tr>
  <tr><td>Bild</td><td>JPG, PNG, WEBP</td><td>50 MB</td><td>Thumbnails</td></tr>
  <tr><td>Interaktiv</td><td>H5P, SCORM</td><td>200 MB</td><td>Packaging</td></tr>
</table>

<h3>4. API Endpoints</h3>
<table>
  <tr><th>Endpoint</th><th>Methode</th><th>Beschreibung</th></tr>
  <tr><td>/api/pca/partners</td><td>GET</td><td>Partner-Liste</td></tr>
  <tr><td>/api/pca/partners/{id}</td><td>GET</td><td>Partner-Details</td></tr>
  <tr><td>/api/pca/content</td><td>POST</td><td>Content hochladen</td></tr>
  <tr><td>/api/pca/content/{id}</td><td>GET</td><td>Content-Details</td></tr>
  <tr><td>/api/pca/analytics</td><td>GET</td><td>Nutzungsstatistiken</td></tr>
  <tr><td>/api/pca/embed/{id}</td><td>GET</td><td>Embed-Code</td></tr>
</table>

<h3>5. Upload-Protokoll (TUS)</h3>
<pre>
Resumable Upload Flow:

1. POST /uploads
   → Location: /uploads/abc123

2. PATCH /uploads/abc123
   Upload-Offset: 0
   Content-Length: 1000000
   [Binary Data]

3. HEAD /uploads/abc123
   Upload-Offset: 1000000
   Upload-Length: 5000000

4. Repeat PATCH until complete

5. Processing triggered
</pre>

<h3>6. Metadaten-Schema</h3>
<pre>
{
  "title": "Mathematik Grundlagen",
  "description": "Einfuehrung in...",
  "subject": "Mathematik",
  "grade_level": ["5", "6", "7"],
  "content_type": "video",
  "duration_minutes": 15,
  "language": "de",
  "license": "CC-BY-SA-4.0",
  "tags": ["Algebra", "Grundlagen"],
  "author": {
    "name": "Max Mustermann",
    "organization": "Muster Verlag"
  }
}
</pre>

<h3>7. Revenue Model</h3>
<table>
  <tr><th>Modell</th><th>Beschreibung</th><th>Split</th></tr>
  <tr><td>Views</td><td>Pro Aufruf</td><td>70/30</td></tr>
  <tr><td>Downloads</td><td>Pro Download</td><td>70/30</td></tr>
  <tr><td>Subscription</td><td>Anteilig</td><td>60/40</td></tr>
  <tr><td>Enterprise</td><td>Lizenz</td><td>Individuell</td></tr>
</table>

<h3>8. Quality Gates</h3>
<ul>
  <li><strong>Format:</strong> Unterstuetzte Formate, Codec-Check</li>
  <li><strong>Metadaten:</strong> Pflichtfelder ausgefuellt</li>
  <li><strong>Qualitaet:</strong> Min. 720p fuer Video</li>
  <li><strong>Lizenz:</strong> Gueltige Lizenzangabe</li>
  <li><strong>Moderation:</strong> Optionale manuelle Pruefung</li>
</ul>

<h3>9. Analytics-Dashboard</h3>
<table>
  <tr><th>Metrik</th><th>Beschreibung</th><th>Granularitaet</th></tr>
  <tr><td>Views</td><td>Gesamtaufrufe</td><td>Taeglich</td></tr>
  <tr><td>Unique Views</td><td>Eindeutige Nutzer</td><td>Taeglich</td></tr>
  <tr><td>Watch Time</td><td>Gesamtdauer</td><td>Pro Content</td></tr>
  <tr><td>Completion Rate</td><td>% bis Ende</td><td>Pro Content</td></tr>
  <tr><td>Downloads</td><td>Anzahl Downloads</td><td>Taeglich</td></tr>
</table>

<h3>10. Partner-Support</h3>
<pre>
Support-Kanaele:
├── Dokumentation (Self-Service)
├── API Reference (OpenAPI)
├── E-Mail Support (48h SLA)
├── Dedicated Manager (Enterprise)
└── Status Page (status.example.com)
</pre>
`,
}
