From c8f533a691e05581afe6b5a06cf6ea045f46afd3 Mon Sep 17 00:00:00 2001 From: ValueOn AG Date: Thu, 11 Jun 2026 22:55:43 +0200 Subject: [PATCH] panel --- TOPICS.md | 2 +- b-reference/ui-nyla/layout.md | 46 +++++-- .../2026-06-panel-system-standardisierung.md | 129 ++++++++++++++++++ c-work/_CHANGELOG.md | 5 + d-guides/deployment/poweron-sec.kdbx | Bin 29582 -> 31118 bytes 5 files changed, 166 insertions(+), 16 deletions(-) create mode 100644 c-work/4-done/2026-06-panel-system-standardisierung.md diff --git a/TOPICS.md b/TOPICS.md index 047aaca..a339fe5 100644 --- a/TOPICS.md +++ b/TOPICS.md @@ -27,7 +27,7 @@ Lade immer zuerst diese Datei. Dann gezielt die passende(n) Referenz-Datei(en). | Billing & Subscriptions | b-reference/platform-core/billing.md | Abrechnung, Prepaid, State Machine | | Google Voice (STT/TTS) | b-reference/platform-core/voice-google.md | VoiceObjects, ConnectorGoogleSpeech, `/voice-google/stt/*`, CommCoach vs Teamsbot vs Agent | | Frontend Nyla | b-reference/ui-nyla/architecture.md | UI-Seiten, Komponenten, Hooks, Routing | -| Layout-System (StackLayout, Panel, LayoutTabs, ViewStack, FloatingPortal) | b-reference/ui-nyla/layout.md | Scroll-Vertrag, Panel-Varianten, AI-Workspace Kontext-Sidebar (Muster 7), FloatingPortal fuer Dropdowns, Seiten-Aufbau-Muster | +| Layout-System (StackLayout, Panel, LayoutTabs, ViewStack, FloatingPortal) | b-reference/ui-nyla/layout.md | Scroll-Vertrag, Panel-Varianten, Panel-Standard (title/id Pflicht, Collapse Default + Persistenz, stabile Chevrons), PanelLayout-Resize (AI-Workspace), AI-Workspace Kontext-Sidebar (Muster 7), FloatingPortal fuer Dropdowns, Seiten-Aufbau-Muster | | FormGenerator (Table, Form, Tree, Report) | b-reference/ui-nyla/formgenerator.md | Generische UI-Komponenten, Provider-Pattern, API-Anbindung | | Private LLM | b-reference/service-llm-private/architecture.md | Internes LLM, Neutralisierung | | Teams Bot | b-reference/teams-bot/architecture.md | Meeting-Bot, Browser-Bot WebSocket, Director Prompts (Hybrid Agent-Routing), MeetingModule + 5-Tab-UI, Dashboard-SSE, Live-Session-SSE + MFA | diff --git a/b-reference/ui-nyla/layout.md b/b-reference/ui-nyla/layout.md index ef889ab..636cfb5 100644 --- a/b-reference/ui-nyla/layout.md +++ b/b-reference/ui-nyla/layout.md @@ -1,6 +1,6 @@ - - + + # Layout-System -- Referenz @@ -160,10 +160,10 @@ Container fuer eine gesamte Seite oder einen Tab-Inhalt. Compound-Component-Patt

Benutzer

- + - + @@ -179,12 +179,21 @@ Typisierter Container fuer jeden Inhaltsblock. Jede Panel-Instanz hat einen `var | Prop | Typ | Default | Beschreibung | |------|-----|---------|-------------| | `variant` | `card \| table \| dashboard \| toolbar \| editor \| wizard` | `card` | Bestimmt CSS-Verhalten (Flex, Padding, Border) | -| `title` | `string \| ReactNode` | - | Header-Titel (wenn gesetzt, wird Header gerendert) | +| `title` | `string \| ReactNode` | **Pflicht** | Header-Titel. Immer setzen, i18n via `t()` | +| `id` | `string` | **Pflicht** | Stabile, NICHT uebersetzte Region-ID. Default-Persistenzschluessel `panel-collapse:{pathname}:{id}` | | `subtitle` | `string \| ReactNode` | - | Untertitel im Header | -| `actions` | `ReactNode` | - | Action-Buttons im Header | -| `collapsible` | `boolean` | `false` | Collapse/Expand-Toggle im Header | +| `actions` | `ReactNode` | - | Action-Buttons im Header (Klicks togglen den Collapse nicht) | +| `collapsible` | `boolean` | `true` | Collapse/Expand-Toggle (Opt-out mit `collapsible={false}`, z.B. Chat/Editor) | | `defaultCollapsed` | `boolean` | `false` | Initial-Zustand | -| `collapseKey` | `string` | - | localStorage-Key fuer Persistenz (`panel-collapse:{key}`) | +| `collapseKey` | `string` | `{pathname}:{id}` | Expliziter localStorage-Key (`panel-collapse:{key}`); ueberschreibt den id-basierten Default | +| `style` | `CSSProperties` | - | Inline-Style-Passthrough auf den Panel-Root | + +### Pflicht-Konventionen (Stand 2026-06-11) + +- **Jedes** `` hat `title` und `id`. Der Compiler erzwingt das (Props sind required). +- `collapsible` ist standardmaessig `true`: jede Region hat einen Collapse/Expand-Chevron (react-icon `FaChevronDown`/`FaChevronRight`), stabil am rechten Header-Rand (gleiche Position bei collapsed und expanded). +- Collapse-Zustand wird pro Region in localStorage persistiert. +- **Variante `toolbar`**: Chrome (Filter-/Action-Bar), rendert KEINEN sichtbaren Header. `title`/`id` sind trotzdem Pflicht (Identifikation/a11y), aber es gibt keinen Collapse-Toggle und keine doppelte Titelzeile. ### Varianten-Verhalten @@ -211,7 +220,7 @@ CSS-Aenderungen an `[data-variant="table"]` in `Panel.module.css` wirken auf ALL ### Beispiel: Collapsible Dashboard ```tsx - +
@@ -219,6 +228,8 @@ CSS-Aenderungen an `[data-variant="table"]` in `Panel.module.css` wirken auf ALL ``` +`collapsible` ist Default `true` und der id-basierte Persistenzschluessel deckt den haeufigen Fall ab; `collapseKey` nur setzen, wenn der Zustand instanz-/scope-abhaengig sein muss (z.B. `collapseKey={`dashboard-overview-${instanceId}`}`). + ## LayoutTabs Einziges Tab-System. Ersetzt `UiComponents/Tabs` und alle manuellen Tab-Button-Implementierungen. @@ -370,20 +381,22 @@ Beispiele: FilesPage, CommcoachSessionView, RedmineBrowserView ### Muster 7: AI Workspace (Prompt-Centric + Explorer-Kontext) -Kein `PanelLayout`-3-Spalten-Split mehr fuer Kontext. Stattdessen: +2-Spalten-Layout (Kontext + Chat), bei offenem und expandiertem Kontext per `PanelLayout` resizable: ``` StackLayout (variant="table") └── Body (layoutFill) └── workspaceShell ├── topBar: Kontext-Toggle (Icon) · Chatname (`...` wenn neu) · Chat-Picker · Neuer-Chat (+) - └── mainStage (flex row, volle Hoehe) - ├── [optional] WorkspaceContextSidebar (320px, volle Hoehe) - │ ├── contextToolbar: Icons Dateien | Quellen | Aktivitaet | Vorschau | Collapse - │ └── contextSidebarBody: FilesTab | SourcesTab | ToolActivityLog | FilePreview - └── centerColumn: ChatStream + WorkspaceInput + └── mainStage (volle Hoehe) + ├── Kontext offen + expandiert: PanelLayout (persistenceKey="workspace-main-split", horizontal) + │ ├── Pane context (defaultSize 26, minSize 16, maxSize 50): WorkspaceContextSidebar fillWidth + │ └── Pane chat (defaultSize 74): centerColumn (ChatStream + WorkspaceInput) + └── Kontext zu/collapsed: flex row (44px-Strip oder nur centerColumn) ``` +Resize: Divider zwischen Kontext-Sidebar und Chat, Breite in localStorage (`po_panel_layout:workspace-main-split`). Collapse der Sidebar bleibt am Chevron in der Sidebar-Toolbar (PanelLayout-Panes selbst `collapsible:false`). Wenn die Sidebar collapsed ist (44px-Strip), wird kein PanelLayout verwendet. Die Sidebar fuellt im Pane via Prop `fillWidth` die Breite (statt fixer 320px). + URL-Parameter: `?ctxTab=files|sources|activity|preview` (Legacy `data` → `files`). Kontext-Panel offen: `localStorage workspace-ctx-open-{instanceId}`. **Desktop:** Kontext oeffnen setzt Sidebar immer auf expandiert (`ctxSidebarCollapsed=false`). Collapse nur ueber Chevron in der Sidebar-Toolbar. @@ -434,6 +447,9 @@ Bei JEDER Seiten-Migration abarbeiten (Lessons aus Phase 4): | Anti-Pattern | Stattdessen | |-------------|-------------| +| `` ohne `title`/`id` | Immer `title={t('...')}` + stabiles `id`; Compiler erzwingt es | +| `` als reiner Wrapper ohne Titel | Region benennen oder kein Panel verwenden (z.B. `
`) | +| Fixe Spaltenbreite bei 2+ nebeneinanderliegenden Regionen | `PanelLayout` mit Drag-Divider | | `styles.adminPage` / `adminPageFill` | `StackLayout` mit passender Variante | | `styles.tableContainer` | `Panel variant="table"` | | `styles.pageHeader` mit inline Actions | `Panel variant="toolbar"` oder `StackLayout.Header` | diff --git a/c-work/4-done/2026-06-panel-system-standardisierung.md b/c-work/4-done/2026-06-panel-system-standardisierung.md new file mode 100644 index 0000000..f8116e8 --- /dev/null +++ b/c-work/4-done/2026-06-panel-system-standardisierung.md @@ -0,0 +1,129 @@ + + + + + +# Panel-System Standardisierung + +## Beschreibung und Kontext + +Das Layout-System (`StackLayout`, `Panel`, `PanelLayout`) existiert, aber die generischen Faehigkeiten Collapse/Expand und Resize sind faktisch unsichtbar: Sie sind opt-in pro Seite statt zentral garantiert. Der User sieht an keiner Komponente Collapse/Expand- oder Resize-Moeglichkeiten. + +Ziel der urspruenglichen Architektur (Chat "UI layout migration"): Panels werden zentral definiert, Seiten geben nur Inhalt mit und kuemmern sich NICHT um Anordnungslogik. Alle Elemente sollen generisch Verbreitern/Verkleinern und Collapse/Expand koennen, mit stabilen Icons am gleichen Ort. + +## Ist-Zustand + +- `Panel` rendert Header + Collapse-Chevron nur, wenn `title` gesetzt ist (`hasHeader = title != null`, `Panel.tsx` Zeile 45). `collapsible` ist opt-in, Default `false`. +- ~200 Panel-Instanzen in ~60 Dateien haben keinen Titel (`` ~120, `variant="toolbar">` ~55, `variant="table">` ~30) -> kein Header, kein Collapse. +- Chevron ist ein CSS-Dreieck (Border-Trick), Position abhaengig von Actions-Breite -> nicht stabil. +- `PanelLayout` (Resize + Collapse mit Chevron-Icons, localStorage) existiert, wird aber nur auf 4 Seiten genutzt: FilesPage, CommcoachSessionView, RedmineBrowserView, TeamsbotSessionView. +- AI Workspace Desktop (`WorkspacePage.tsx` Zeile 615-621): `mainStage` = flex row mit fixer 320px-Sidebar + Chat, kein Resize-Divider. + +## Ziel + +- Jede Region ist ein `Panel` mit Pflicht-`title` und Pflicht-`id`. +- Collapse/Expand ist Standard (`collapsible` Default true), mit stabilen Chevron-Icons am gleichen Ort. +- Mehrspaltige Layouts (zuerst AI Workspace) sind per Drag-Divider resizable, Breite persistiert. +- Seiten geben nur Inhalt + Titel mit; Anordnungs-, Collapse- und Resize-Logik liegt zentral im Panel-System. + +## Entscheidungen + +| Datum | Entscheidung | Begruendung | +|-------|-------------|------------| +| 2026-06-11 | `title` und `id` werden Pflicht-Props an `Panel` | Compiler erzwingt vollstaendige Migration; jede Region wird identifizierbar und persistierbar | +| 2026-06-11 | `collapsible` Default `true` (opt-out) | User-Vorgabe "alle standard"; Collapse soll ueberall sichtbar sein | +| 2026-06-11 | Chevron als react-icon (`FaChevron*`) fix am Header-Rand | Stabile Icon-Position bei collapsed und expanded (User-Vorgabe) | +| 2026-06-11 | Repetitive Call-Site-Migration via `composer-2.5-fast` Subagents | Effiziente, mechanische Massenaenderung mit klarer Anleitung | +| 2026-06-11 | AI Workspace nutzt `PanelLayout` fuer die 2 Spalten | Resize zwischen Kontext-Sidebar und Chat (User-Vorgabe) | + +## Vorgeschlagene Architektur + +### Phase 1: Panel-Komponente standardisieren + +Dateien: `components/Layout/Panel.tsx`, `Panel.module.css`, `types.ts` + +- `title: string | ReactNode` wird Pflicht-Prop. +- Neues Pflicht-Prop `id: string` (stabil, nicht i18n-abhaengig) -> Auto-Persistenz unter `panel-collapse:{pathname}:{id}`; bestehendes `collapseKey` ueberschreibt weiterhin. +- `collapsible` Default `true` (opt-out mit `collapsible={false}` fuer Chat/Editor). +- Chevron: CSS-Dreieck ersetzen durch `FaChevronDown`/`FaChevronRight`, fix am rechten Header-Rand. +- Variante `toolbar`: kompakter Inline-Titel links, schlanke Hoehe, Collapse auf schmale Leiste. + +### Phase 2: Call-Site-Migration (~60 Dateien) via Subagents + +Alle `` ohne `title` erhalten `title={t('...')}` und `id="..."`. Buckets: +- 2a: `pages/admin/**` (inkl. wizards) +- 2b: `pages/basedata/**` + `pages/billing/**` +- 2c: `pages/views/**` (trustee, commcoach, teamsbot, redmine, realestate, neutralization, workflowAutomation, workspace) +- 2d: Top-Level (Dashboard, Settings, Store, RagInventoryPage, ComplianceAuditPage, IntegrationsOverviewPage) + +### Phase 3: AI Workspace Resize + +`WorkspacePage.tsx` Desktop `mainStage` bei offenem Kontext-Panel durch `PanelLayout direction="horizontal"` ersetzen (Pane context ~25%/minSize 15, Pane chat ~75%, `persistenceKey="workspace-main"`). Mobile Bottom-Sheet unveraendert. + +### Phase 4: Audit mehrspaltige Seiten + +Befundliste aller Seiten mit Side-by-Side-Spalten/Zeilen ohne `PanelLayout`; Umbau als Folgeschritt nach Freigabe. + +## Subagent-Arbeitsweise (composer-2.5) + +Repetitive Call-Site-Migration wird an `composer-2.5-fast` Subagents delegiert, ein Subagent pro Bucket, parallel. Jeder Auftrag enthaelt verpflichtend: + +1. Exakte Dateiliste des Buckets (keine Suche noetig). +2. Mechanische, copy-paste-faehige Regel: Fuer jedes `` ohne `title`: `title={t('')}` + `id=""` ergaenzen, sonst nichts aendern. +3. Namens-Heuristik mit Beispielen: `table` -> Entitaet Plural ("Benutzerliste"), `id="-table"`; `toolbar` -> "Filter"/"Aktionen", `id="-toolbar"`; `card` -> fachlicher Block-Name. +4. Verbote: keine Logik-Aenderung, keine neuen Imports ausser bereits vorhandenem `t`, kein Entfernen von `collapseKey`/`title`. +5. Selbstkontrolle: `ReadLints` ueber geaenderte Dateien; Bericht als Tabelle (Datei + gesetzte title/id). + +Hauptagent reviewt jeden Bericht, prueft Titel-Qualitaet, fuehrt zentralen `npx tsc --noEmit` aus. + +## Betroffene Module + +- `components/Layout/Panel.tsx` + `.module.css` + `types.ts` (Kern) +- `components/Layout/PanelLayout.tsx` (Workspace-Integration, ggf. minSize-Feintuning) +- `pages/views/workspace/WorkspacePage.tsx` + `Workspace.module.css` +- ~60 Seiten-Dateien (Phase 2) +- `wiki/b-reference/ui-nyla/layout.md`, `wiki/TOPICS.md`, `wiki/c-work/_CHANGELOG.md` + +## Akzeptanzkriterien + +| # | Kriterium | Prio | +|---|-----------|------| +| 1 | Jedes `` hat `title` und `id` | must | +| 2 | grep ` Seitentitel in `StackLayout.Header`; durchgaengig falsche i18next-`t('key', 'fallback')`-Signatur auf Projekt-Konvention `t('')` umgestellt. +- `AdminLanguagesPage.tsx:874`: redundantes `style={{ position: relative }}` vom `StackLayout`-Root entfernt (Overlay ist am inneren Panel verankert, das `position: relative` via style-Passthrough traegt). +- Tote Symbole entfernt: `AdminFeatureInstanceUsersPage` (`fetchInstanceUsers`, Rest aus Filter-Race-Fix), `AdminUserAccessOverviewPage` (`TabId`), `WorkspaceInput` (`_horizontalPadding`). +- `NeutralizationView.tsx:766`: Tab-Items von `content` auf `render: () => ...` (`LayoutTabItem`) umgestellt. + +**Ergebnis: `npx tsc --noEmit` ueber das gesamte Repo = 0 Fehler.** Akzeptanzkriterium 6 vollstaendig erfuellt. + +## Abschluss + +- [x] Phase 1: Panel-Komponente standardisiert +- [x] Phase 2: alle Call-Sites migriert (Subagents + Review) +- [x] Phase 3: AI Workspace resizable +- [x] Phase 4: Audit mehrspaltige Seiten dokumentiert +- [x] Typecheck migrationsbedingt gruen (5 JSX-Regressionen behoben), Lint gruen; vorbestehende Altlasten dokumentiert +- [x] layout.md + TOPICS.md nachgefuehrt +- [x] CHANGELOG-Eintrag (neueste zuoberst) +- [x] Dieses Dokument -> 4-done/ verschoben, status: done diff --git a/c-work/_CHANGELOG.md b/c-work/_CHANGELOG.md index 48df55e..c739113 100644 --- a/c-work/_CHANGELOG.md +++ b/c-work/_CHANGELOG.md @@ -14,6 +14,11 @@ Skip: reine Refactors, Formatting, Lint, Dep-Bumps, Test-only, Wiki-Tippfehler. ## 2026-06-11 +- 2026-06-11 | fix | ui-nyla | **Vorbestehende tsc-Altlasten bereinigt (Repo 0 Fehler)**: `AdminSessionsPage` Seitentitel von `StackLayout`-Prop in `StackLayout.Header` verschoben + i18next-`t('key','fallback')` auf Projekt-`t('')` umgestellt; `AdminLanguagesPage` redundantes `style` am `StackLayout`-Root entfernt; `NeutralizationView` Tab-Items `content`->`render`; tote Symbole entfernt (`fetchInstanceUsers`, `TabId`, `_horizontalPadding`). +- 2026-06-11 | feat | ui-nyla | **Panel-System Standardisierung**: `Panel` erhaelt Pflicht-Props `title` + `id`; `collapsible` Default `true` (opt-out); stabile Chevron-Icons (`FaChevronDown`/`FaChevronRight`) fix am Header-Rand; Auto-Collapse-Persistenz `{pathname}:{id}` (localStorage); `style`-Passthrough. ~200 Panel-Call-Sites in ~60 Dateien via composer-2.5-Subagents migriert (Titel+id), Hauptagent-Review + 5 JSX-Regressionen (geloeschte Kind-Tags) behoben. AI Workspace `mainStage` auf `PanelLayout` mit Resize-Divider (Kontext-Sidebar ↔ Chat, Breite persistiert). (c-work: 4-done/2026-06-panel-system-standardisierung.md) +- 2026-06-11 | docs | wiki | **layout.md: Panel-Standardisierung + Workspace-Resize nachgefuehrt** — Panel-Props-Tabelle (title/id Pflicht, collapsible Default true), Beispielmuster + Muster 7 (Workspace), Anti-Patterns; lastReviewed/verifiedAgainst aktualisiert. +- 2026-06-11 | feat | platform-core, ui-nyla | **Multi-Session, Silent Refresh & Trusted Device**: Parallele Browser-Sessions erlaubt (`saveAccessToken` Default `replace_existing=False`); `/refresh`-Endpoint speichert neuen Token in DB (fix); Frontend-Interceptor versucht Silent Refresh vor Login-Redirect; `TrustedDevice`-Modell + Service (MFA-Skip 60d, NIST SP 800-63B konform); Admin-Endpoints + UI fuer Session- und Trusted-Device-Verwaltung (`/api/admin/sessions`, `/api/admin/trusted-devices`); taeglicher Token/Device-Cleanup-Scheduler. +- 2026-06-11 | docs | wiki | **Auth-Referenzseite + IMS aktualisiert**: Neue `b-reference/platform/authentication.md`; `security-overview.md` Abschnitt 10 erweitert (Multi-Session, Silent Refresh, Trusted Device); IAM-Richtlinie (`02_Zugriffsmanagement_IAM_PAM.md`) um Session-Management und regulatorische Grundlagen ergaenzt; TOPICS.md ergaenzt. - 2026-06-11 | fix | ui-nyla | **FormGeneratorTable Filter-Race systemweit behoben**: `_lastTableParams` Ref-Cache in 16 Seiten (10 HIGH, 6 MEDIUM) eingefuehrt. Parent-useEffects die ungefiltert den gleichen Loader wie `hookData.refetch` aufriefen, entfernt oder auf Cache umgestellt. Betroffene Seiten: WorkflowTemplatesPage, AdminUserMandatesPage, AdminMandateRolesPage, AdminFeatureAccessPage, AdminFeatureInstanceUsersPage, AdminFeatureRolesPage, AdminInvitationsPage, TrusteePositionsView, TrusteeDocumentsView, CommcoachSettingsView, ConnectionsPage, FilesPage, PromptsPage, AdminUsersPage, AdminMandatesPage, AdminSubscriptionsPage. - 2026-06-11 | fix | platform-core | **Google STT de-CH Language-Mapping**: `_normalizeSttLanguage()` mappt regionale Varianten (de-CH→de-DE, fr-CH→fr-FR etc.) vor Google Speech API-Aufruf; behebt `400 Invalid recognition config` fuer `latest_long` Modell. - 2026-06-11 | fix | ui-nyla | **8 UI/UX-Bugfixes**: (1) Voice-Preferences 404: `fetch`→`api`-Client in WorkspaceInput. (2) RAG-Seite: Datenobjekt-Toggle + Settings-Button pro Verbindung. (3) DSGVO i18n: Statische DE-Texte statt EN-Backend-Content, LOESCHEN-Placeholder via `t()`. (4) FormGeneratorTable Default-Sort: `initialSort` desc auf Compliance/Billing/Subscriptions. (5) FormGeneratorTable Filter-Race: Parent-Loader in ComplianceAuditPage entfernt + Loader-Params-Cache via Ref. (6+7) Admin-Wizards: Mandanten/User/Rollen alphabetisch sortiert (case-insensitive) in allen 3 Wizards. diff --git a/d-guides/deployment/poweron-sec.kdbx b/d-guides/deployment/poweron-sec.kdbx index d9d2bb175031e6c9776fe8b907ba3bffee796e98..1dfcfc48824ec49c439eb2bd69dbbca67f9aeff5 100644 GIT binary patch literal 31118 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 literal 29582 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 J3zR}(icUfBa5De^