Reorganize repo structure and standards references
This commit is contained in:
1 parent
3cb93a81be
commit
be2054274d
5885 files changed
+2588
-195
No files matched your search
@@ -0,0 +1,17 @@
|
||||
# Standards
|
||||
|
||||
Dieser Bereich sammelt dauerhafte UI-, Layout- und Subframe-Standards.
|
||||
|
||||
Er ist nicht der Ort fuer konkrete Ticket-Flows oder einzelne Screen-Entscheidungen.
|
||||
|
||||
## Inhalt
|
||||
|
||||
| Pfad | Zweck |
|
||||
|---|---|
|
||||
| `Subframe UI Standards/` | eigenes Standards-Projekt fuer Subframe-, Komponenten- und Layout-Standards |
|
||||
|
||||
## Regel
|
||||
|
||||
Standards werden nur geaendert, wenn David explizit daran arbeiten will oder eine systemweite Regel vorher validiert wurde.
|
||||
|
||||
Normale Screen-/Flow-Arbeit dokumentiert Entscheidungen im jeweiligen Wireframe-Paket, nicht automatisch hier.
|
||||
@@ -0,0 +1,83 @@
|
||||
# HiveGrid-Einordnung
|
||||
|
||||
Status: aktiv
|
||||
Datum: 2026-06-29
|
||||
|
||||
Die Subframe UI Standards sind Teil des HiveGrid-Wireframe-Repos, bleiben aber ein eigenes Standards-Projekt.
|
||||
|
||||
## Zweck
|
||||
|
||||
Die Subframe UI Standards dokumentieren Standards fuer:
|
||||
|
||||
- Subframe Component Library
|
||||
- komponentennahe UI-Regeln
|
||||
- Layout- und Spacing-Standards
|
||||
- Control-Groessen
|
||||
- Field-Anatomy
|
||||
- Overlay-, Dialog-, Table- und State-Konventionen
|
||||
- Subframe-Komponentenlinks und Komponenten-Notizen
|
||||
|
||||
Sie sind die zentrale Stelle fuer dauerhaft gueltige Subframe-, Komponenten- und Layout-Standards.
|
||||
|
||||
## Abgrenzung zu HiveGrid Screen-Regeln
|
||||
|
||||
Das HiveGrid Screen-Regelwerk in `01 Regeln/Screen Agent Workflow.md` und `01 Regeln/Wireframing Playbook.md` regelt:
|
||||
|
||||
- wie Flows geplant werden
|
||||
- wie David Entscheidungen validiert
|
||||
- wie Screen-Dateien, Canvas und Tracker synchron bleiben
|
||||
- wann Subframe benutzt werden darf
|
||||
- wie Error States, Backlog und Ticket-Handoffs dokumentiert werden
|
||||
|
||||
Die Subframe UI Standards regeln dagegen:
|
||||
|
||||
- wie UI-Bausteine, Komponenten und Layout-Standards in Subframe gedacht werden
|
||||
- welche Layout-/Spacing-/Control-Regeln als Systemstandard gelten
|
||||
- welche Komponentenregeln langfristig wiederverwendbar sind
|
||||
|
||||
Beide Ebenen duerfen sich ergaenzen, aber nicht ungeprueft ueberschreiben.
|
||||
|
||||
## Aenderungsschutz
|
||||
|
||||
Dieses Standards-Projekt darf nicht nebenbei waehrend normaler Screen- oder Flow-Arbeit geaendert werden.
|
||||
|
||||
Aenderungen sind nur erlaubt, wenn:
|
||||
|
||||
1. David explizit sagt, dass an den Subframe UI Standards gearbeitet wird.
|
||||
2. Eine konkrete Layout-/Komponentenentscheidung vorher mit David validiert wurde.
|
||||
3. Die Aenderung im passenden Standards-Bereich dokumentiert wird.
|
||||
4. Betroffene Querverweise geprueft werden.
|
||||
5. `AI/08_AI-Change-History.md` aktualisiert wird, wenn eine inhaltliche Regelwerksaenderung passiert.
|
||||
|
||||
Nicht erlaubt:
|
||||
|
||||
- Komponentenregeln automatisch aus Screen-Arbeit ableiten.
|
||||
- Werte aus einem Ticket ungeprueft als globale Subframe-Regel speichern.
|
||||
- bestehende Komponenten-Notizen oder Gruppenregeln umschreiben, nur weil ein einzelner Screen anders aussieht.
|
||||
- offene Brainstorming-Punkte als entschiedene Regel eintragen.
|
||||
|
||||
## Nutzung fuer D-D0b
|
||||
|
||||
D-D0b ist der aktuelle Ort, an dem Layout-Entscheidungen validiert werden.
|
||||
|
||||
Nach Validierung koennen dauerhafte Layout-Regeln aus D-D0b in die Subframe UI Standards ueberfuehrt werden.
|
||||
|
||||
Dauerhafte Layout-Regeln stehen danach unter `Layout/`.
|
||||
|
||||
Dabei muss sichtbar bleiben:
|
||||
|
||||
- welche Entscheidung validiert wurde
|
||||
- ob sie neu ist oder aus bestehenden Komponentenregeln kommt
|
||||
- ob sie Carbon nur als Referenz nutzt oder bewusst davon abweicht
|
||||
- ob sie fuer alle Subframe-Screens gilt oder nur fuer bestimmte Layout-Archetypen
|
||||
|
||||
## Arbeitsregel fuer Agents
|
||||
|
||||
Vor Arbeit an diesem Standards-Projekt lesen:
|
||||
|
||||
1. `00_HiveGrid-Einordnung.md`
|
||||
2. `00_Start.md`
|
||||
3. `AI/07_AI-References.md`
|
||||
4. die konkret betroffene Regeldatei
|
||||
|
||||
Bei Unsicherheit: erst fragen, nicht schreiben.
|
||||
@@ -0,0 +1,64 @@
|
||||
# Subframe UI Standards
|
||||
|
||||
Status: Entwurf
|
||||
Datum: 2026-06-02
|
||||
|
||||
Dieses Standards-Projekt dokumentiert dauerhafte Subframe-, Komponenten- und Layout-Standards fuer HiveGrid.
|
||||
|
||||
Seit 2026-06-29 liegt es als eigenes Standards-Projekt im HiveGrid-Wireframe-Repo.
|
||||
Die HiveGrid-Einordnung und der Aenderungsschutz stehen in [[00_HiveGrid-Einordnung]].
|
||||
|
||||
Es dokumentiert Standards, die nicht direkt in einzelnen Screens oder in Subframe selbst geloest werden:
|
||||
|
||||
- Benennung
|
||||
- State-Namen
|
||||
- Varianten-Namen
|
||||
- Size-Namen
|
||||
- Defaults
|
||||
- globale Component-API-Regeln
|
||||
- komponenteninterne Abstaende
|
||||
- Gruppenregeln
|
||||
- Komponenten-Links und Notizen
|
||||
|
||||
Es soll wachsen, wenn echte, validierte Standards entstehen.
|
||||
|
||||
## Struktur
|
||||
|
||||
| Datei | Zweck |
|
||||
| --- | --- |
|
||||
| [[00_HiveGrid-Einordnung]] | Einordnung im HiveGrid-Repo, Zweck, Abgrenzung und Aenderungsschutz |
|
||||
| [[01_Brainstorming]] | Rohe Ideen und offene Gedanken |
|
||||
| [[02_Entscheidungen]] | Entscheidungen, die nachvollziehbar bleiben sollen |
|
||||
| [[03_Benennung]] | Globale Regeln fuer Namen und Begriffe |
|
||||
| [[04_Gruppenregeln]] | Regeln fuer Komponenten-Gruppen |
|
||||
| [[05_Komponenten-Index]] | Link- und Statusuebersicht mit Fertig-Checkbox |
|
||||
| [[06_Backlog]] | Themen fuer spaeter |
|
||||
| [[07_Global-Rules]] | Globale Component-API- und Arbeitsregeln |
|
||||
| [[08_Todo]] | Laufende Aufgaben, Pruefpunkte und Nacharbeiten |
|
||||
| `Layout/` | Validierte Layout-, Spacing-, Dialog-, Table- und Composition-Regeln |
|
||||
| [[AI/07_AI-References]] | Arbeitskontext und Ablauf fuer AI-Aenderungen |
|
||||
| [[AI/08_AI-Change-History]] | AI-Verlauf fuer Aenderungen am Vault |
|
||||
| `Components/` | Einzelne Komponenten-Notizen mit Subframe-Link, Bereich und Regel-Referenzen |
|
||||
|
||||
## Grundmodell
|
||||
|
||||
Standards werden so hoch wie moeglich und so spezifisch wie noetig dokumentiert.
|
||||
|
||||
1. Globale Benennungen stehen in [[03_Benennung]].
|
||||
2. Globale Component-API-Regeln stehen in [[07_Global-Rules]].
|
||||
3. Gruppenregeln stehen in [[04_Gruppenregeln]].
|
||||
4. Der Komponenten-Index ist nur eine Link- und Statusuebersicht.
|
||||
5. Einzelne Komponenten-Notizen stehen unter `Components/`.
|
||||
6. Dauerhafte Layout-Regeln stehen unter `Layout/`, sobald sie validiert sind.
|
||||
7. Laufende Aufgaben und Pruefpunkte stehen in [[08_Todo]].
|
||||
8. AI-Aenderungen werden in [[AI/08_AI-Change-History]] protokolliert.
|
||||
|
||||
Bei Arbeit mit AI zuerst [[AI/07_AI-References]] lesen.
|
||||
|
||||
Wenn die Arbeit aus dem HiveGrid-Wireframe-Kontext kommt, zuerst [[00_HiveGrid-Einordnung]] lesen.
|
||||
|
||||
Beispiel:
|
||||
|
||||
- `disabled` wird global geklaert.
|
||||
- Field-Anatomy-Abstaende fuer Form Inputs stehen in [[04_Gruppenregeln]].
|
||||
- Text-Input-spezifische Notizen stehen in [[Components/Text Input]].
|
||||
@@ -0,0 +1,33 @@
|
||||
# Brainstorming
|
||||
|
||||
Status: Offen
|
||||
|
||||
Hier landen rohe Gedanken, bevor daraus Regeln oder Entscheidungen werden.
|
||||
|
||||
## Ziel
|
||||
|
||||
Das Regelwerk soll spaeter Fragen beantworten wie:
|
||||
|
||||
- Wie nennen wir diesen State?
|
||||
- Wie nennen wir diese Variante?
|
||||
- Welche Komponenten nutzen diese Gruppenregel?
|
||||
- Wo ist der Subframe-Link?
|
||||
- Braucht diese Komponente eine eigene Sonderregel?
|
||||
|
||||
## Offene Fragen
|
||||
|
||||
| Frage | Bereich | Status |
|
||||
| --- | --- | --- |
|
||||
| Heisst die Standardgroesse `default` oder `medium`? | Benennung | Entschieden: `Medium`, kein `Default`-Name |
|
||||
| Nutzen wir `disabled` oder `isDisabled`? | Prop-Benennung | Offen |
|
||||
| Nutzen wir `loading` oder `isLoading`? | Prop-Benennung | Offen |
|
||||
| Schreibweise fuer Code-Props: `Medium` oder `medium`? | Prop-Benennung | Offen |
|
||||
| Nutzen wir `variant="default"` oder nur semantische Varianten? | Prop-Benennung | Offen |
|
||||
| Heisst ein Fehler `error` oder `negative`? | Benennung | Offen |
|
||||
| Heisst eine gefaehrliche Aktion `destructive` oder `danger`? | Benennung | Offen |
|
||||
| Welche Regeln sind global und welche gehoeren zu Gruppen? | Struktur | Offen |
|
||||
| Welche Komponenten brauchen eigene Notizen ueber Gruppenregeln hinaus? | Komponenten | Offen |
|
||||
|
||||
## Inspiration fuer spaeter
|
||||
|
||||
IBM Carbon kann spaeter fuer Spacing-Inspiration genutzt werden. Es ist aktuell noch keine Regelquelle.
|
||||
@@ -0,0 +1,38 @@
|
||||
# Entscheidungen
|
||||
|
||||
Status: Entwurf
|
||||
|
||||
Diese Datei haelt Entscheidungen fest, die spaeter wieder auffindbar sein sollen.
|
||||
|
||||
## Entscheidungslog
|
||||
|
||||
| Datum | Thema | Entscheidung | Grund | Status |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| 2026-06-29 | HiveGrid-Integration | Die Subframe UI Standards werden als eigenes Standards-Projekt in das HiveGrid-Wireframe-Repo aufgenommen. | Layout- und Komponentenstandards sollen zentral versioniert werden, ohne die HiveGrid Screen-/Flow-Arbeitsregeln zu vermischen. | Entschieden |
|
||||
| 2026-06-29 | Aenderungsschutz | Die Subframe UI Standards duerfen nicht nebenbei in normaler Screen-Arbeit geaendert werden; Aenderungen brauchen explizite Aufgabe oder validierte Entscheidung. | Es ist ein eigenes Standards-Projekt und globale Standards duerfen nicht aus einzelnen Screens abgeleitet werden. | Entschieden |
|
||||
| 2026-06-02 | Speicherung | Das Regelwerk wird als Obsidian-kompatibler Markdown-Ordner gespeichert. | Es soll durchsuchbar, verlinkbar und leicht erweiterbar sein. | Entschieden |
|
||||
| 2026-06-02 | Scope | Start mit Benennung, States, Varianten, Defaults, Gruppenregeln und komponenteninternen Abstaenden. | Farben, Shadows, Radius und globale Tokens werden groesstenteils in Subframe gepflegt. | Entschieden |
|
||||
| 2026-06-02 | Regelmodell | Das Modell ist Global -> Gruppe -> Komponenten-Notiz. | Nicht jede Regel gilt fuer jede Komponente und Dopplungen sollen gering bleiben. | Entschieden |
|
||||
| 2026-06-02 | Sprache | Der Start ist auf Deutsch, weil es fuer die gemeinsame Arbeit einfacher ist. | Spaeter kann auf Englisch umgestellt werden. | Entschieden |
|
||||
| 2026-06-02 | Komponenten-Seiten | Komponenten-MDs werden fuer relevante Komponenten angelegt, aber nur leichtgewichtig mit Bereich, Subframe-Link, Regeln und Notizen. | Die Tabelle ist keine zentrale Regelquelle; sie soll nur beim Finden und Pruefen helfen. | Entschieden |
|
||||
| 2026-06-02 | Komponenten-Index | `05_Komponenten-Index.md` ist nur eine Link- und Statusuebersicht mit `Fertig?`-Checkbox, nicht die Regelquelle. | Wiederverwendbares Vokabular gehoert in `03_Benennung.md`, globale API-Regeln in `07_Global-Rules.md` und Gruppenregeln in `04_Gruppenregeln.md`. | Entschieden |
|
||||
| 2026-06-11 | Global Rules | Globale Component-API-Regeln werden in `07_Global-Rules.md` gesammelt. | Die Regeln gelten ueber Komponenten-Gruppen hinweg und sollen nicht mit Gruppenregeln oder Benennungen vermischt werden. | Entschieden |
|
||||
| 2026-06-04 | Size-Namen | Erlaubte Size-Namen sind `3X Small`, `2X Small`, `Extra Small`, `Small`, `Medium`, `Large`, `Extra Large`, `2X Large` und `3X Large`. `Medium` ist der Default, wird aber nicht `Default` genannt. | Die Size-Namen gelten global fuer alle Komponenten, sobald eine Komponente Groessen benennt. | Entschieden |
|
||||
| 2026-06-04 | Bereichsnamen | Komponentenbereiche heissen `Actions`, `Form Inputs`, `Data Display`, `Feedback`, `Overlays`, `Navigation`, `Layout`, `Typography`, `Utility` und `Patterns`. | Die Library soll eine klare, englische Taxonomie haben und `Data Display` nicht doppelt uebersetzen. | Entschieden |
|
||||
| 2026-06-04 | Control-Hoehen | Fuer Button- und formularnahe Controls gelten erstmal `Small` 32px, `Medium` 36px und `Large` 48px. | Buttons, Inputs, Selects und Toggle-artige Controls sollen dieselbe Grundlogik fuer Groessen nutzen. | Entschieden |
|
||||
| 2026-06-11 | Radius-Namen | Radius-Tokens heissen `Radius Small`, `Radius Medium`, `Radius Large` und `Radius Round`. Die Werte sind 4px, 8px, 12px und 9999px. | Radius-Namen sollen zentral benannt werden und nicht pro Komponente neu entstehen. | Entschieden |
|
||||
| 2026-06-11 | Form Input Padding | Einzeilige textnahe Form Inputs nutzen horizontal 12px Randabstand und 8px Gap zwischen Icon und Text. | Text- und Icon-Ausrichtung soll ueber Form Inputs hinweg konsistent bleiben. | Entschieden |
|
||||
| 2026-06-11 | Form Input Radius | Textnahe Form Inputs nutzen `Radius Small` mit 4px. | Form Inputs sollen eine gemeinsame Corner-Radius-Basis haben. | Entschieden |
|
||||
| 2026-06-11 | Form Input Breiten | Textnahe Form Inputs bekommen definierte Min Widths und Default Max Widths; Fill Container bleibt optional. | Inputs sollen konsistente Standardbreiten haben, aber in Layout-Kontexten flexibel ausfuellen koennen. | Entschieden |
|
||||
| 2026-06-20 | Control-Hoehen Scope | `Icon Button`, `Number Input`, `Search Input`, `Combobox Autocomplete` und der Single-date `Date Picker` folgen der gemeinsamen Control-Hoehen-Regel fuer `Small`, `Medium` und `Large`. | Einzeilige Controls und Trigger sollen ueber Actions und Form Inputs hinweg dieselbe Groessenlogik nutzen. | Entschieden |
|
||||
| 2026-06-20 | Date Picker Basisregeln | Die Single-date Version des `Date Picker` nutzt vorerst dieselben Basisregeln wie textnahe Inputs: Standardbreite, horizontales Innenpadding und `Radius Small`. Date-range / von-bis wird separat geklaert. | Die Basisversion soll konsistent sein; Range-Varianten haben vermutlich andere Breiten und Verhalten. | Entschieden |
|
||||
| 2026-06-23 | Form Field-Anatomy | Form Inputs nutzen bei Field-Kontexten die Reihenfolge `label`, `helpText`, Control und `message`. Abstaende: Label zu Help text 8px, Help text zu Control 6px, Control zu Message 4px. `message` ist 12px Medium und heisst in der Naming Convention immer `message`. | Label, Hilfetext und unterer Field-Text sollen ueber Form Inputs hinweg gleich benannt, positioniert und getaktet sein. | Entschieden |
|
||||
| 2026-06-20 | Laufende Aufgaben | `08_Todo.md` sammelt konkrete Pruefpunkte und Nacharbeiten; `06_Backlog.md` bleibt fuer langfristige Themen ohne konkrete Aktion. | Offene Arbeitsfragen sollen nicht im Chat verloren gehen und vom strategischen Backlog getrennt bleiben. | Entschieden |
|
||||
| 2026-06-04 | State-Namen | `default`, `hover`, `active`, `focus`, `disabled`, `loading`, `error` und `selected` sind als State-Namen zugelassen. | Subframe regelt viele States intern, aber das Regelwerk braucht konsistente Begriffe fuer Dokumentation und Varianten. | Entschieden |
|
||||
| 2026-06-04 | Focus vs Selected | `focus` und `selected` bleiben getrennte States. | Focus beschreibt aktuellen Interaktionsfokus; Selected beschreibt eine Auswahl oder aktiven Zustand. Beides kann gleichzeitig auftreten. | Entschieden |
|
||||
|
||||
## Vorlage
|
||||
|
||||
| Datum | Thema | Entscheidung | Grund | Status |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| YYYY-MM-DD | | | | Offen |
|
||||
@@ -0,0 +1,76 @@
|
||||
# Benennung
|
||||
|
||||
Diese Datei gleicht nur das allgemeine Vokabular ab.
|
||||
Komponentenregeln und komponentenspezifische Ausnahmen stehen in [[04_Gruppenregeln]] oder in den Komponenten-Notizen.
|
||||
|
||||
## Size-Namen
|
||||
|
||||
Diese Namen werden fuer Groessen verwendet.
|
||||
`Medium` ist die Standardgroesse. Sie wird trotzdem `Medium` genannt, nicht `Default`.
|
||||
Wenn eine Komponente Groessen benennt, muss sie diese Size-Namen verwenden. Eigene Size-Namen sollen nicht eingefuehrt werden, solange keine neue Benennungsentscheidung dokumentiert ist.
|
||||
|
||||
| Name | Bedeutung | Status | Notizen |
|
||||
| ------------- | --------------------------- | ----------- | --------------------------------------------------- |
|
||||
| `3X Small` | maximal kompakte Groesse | Entschieden | Nur Namensgebung |
|
||||
| `2X Small` | sehr stark kompakte Groesse | Entschieden | Nur Namensgebung |
|
||||
| `Extra Small` | sehr kompakte Groesse | Entschieden | Nur Namensgebung |
|
||||
| `Small` | kompakte Groesse | Entschieden | |
|
||||
| `Medium` | Standardgroesse | Entschieden | Medium ist der Default, heisst aber nicht `Default` |
|
||||
| `Large` | grosse Groesse | Entschieden | |
|
||||
| `Extra Large` | sehr grosse Variante | Entschieden | Nur Namensgebung |
|
||||
| `2X Large` | sehr stark grosse Variante | Entschieden | Nur Namensgebung |
|
||||
| `3X Large` | maximal grosse Variante | Entschieden | Nur Namensgebung |
|
||||
|
||||
## Radius-Namen
|
||||
|
||||
Diese Namen werden fuer Radius-Tokens verwendet.
|
||||
|
||||
| Name | Wert | Status | Notizen |
|
||||
| --- | --- | --- | --- |
|
||||
| `Radius Small` | 4px | Entschieden | |
|
||||
| `Radius Medium` | 8px | Entschieden | |
|
||||
| `Radius Large` | 12px | Entschieden | |
|
||||
| `Radius Round` | 9999px | Entschieden | Fuer Kreise, Pills und voll runde Formen |
|
||||
|
||||
## Field-Namen
|
||||
|
||||
Diese Namen werden fuer Field-Anatomy in Form Inputs verwendet.
|
||||
Die zugehoerigen Abstaende und Typografie-Regeln stehen in [[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]].
|
||||
|
||||
| Name | Bedeutung | Status | Notizen |
|
||||
| --- | --- | --- | --- |
|
||||
| `label` | Field-Label oberhalb des Controls | Entschieden | Nicht fuer den unteren Field-Text verwenden |
|
||||
| `helpText` | Hilfetext zwischen Label und Control | Entschieden | Steht oberhalb des Controls |
|
||||
| `message` | Unterer Field-Text unterhalb des Controls | Entschieden | Heisst immer `message`, nicht `label`, `helper`, `helpText` oder `massage` |
|
||||
|
||||
## State-Namen
|
||||
|
||||
Diese Namen werden fuer States verwendet, auch wenn Subframe viele Interaction States intern abbildet.
|
||||
`Focus` und `Selected` sind nicht dasselbe: `Focus` ist der aktuelle Tastatur- oder Interaktionsfokus, `Selected` ist ein ausgewaehlter oder aktiver Zustand.
|
||||
|
||||
| Name | Bedeutung | Status | Notizen |
|
||||
| --- | --- | --- | --- |
|
||||
| `default` | Normalzustand | Entschieden | Als State-Name erlaubt, nicht als Size-Name |
|
||||
| `hover` | Hover-Zustand | Entschieden | |
|
||||
| `active` | gedrueckt oder aktiv | Entschieden | |
|
||||
| `focus` | Fokuszustand | Entschieden | Fokus auf Interaktion/Tastatur |
|
||||
| `disabled` | nicht nutzbar | Entschieden | |
|
||||
| `loading` | Aktion oder Inhalt laedt | Entschieden | |
|
||||
| `error` | Fehler oder Validierung | Entschieden | Nicht automatisch gleich `destructive` |
|
||||
| `selected` | ausgewaehltes Element | Entschieden | Nicht dasselbe wie `focus` |
|
||||
|
||||
## Varianten-Namen
|
||||
|
||||
Diese Namen werden fuer Varianten verwendet.
|
||||
|
||||
| Name | Bedeutung | Status | Notizen |
|
||||
| ------------- | ------------------------------- | ----------- | -------------------------------------------------------- |
|
||||
| `primary` | wichtigste Aktion oder Betonung | Entschieden | Brand-gebunden; Default ist meistens Primary |
|
||||
| `secondary` | zweite Aktion oder Betonung | Entschieden | Brand-gebunden; Farben spaeter klaeren |
|
||||
| `tertiary` | niedrigere Betonung | Entschieden | Bleibt zusaetzlich zu `ghost` bestehen |
|
||||
| `ghost` | minimale visuelle Betonung | Entschieden | Bleibt zusaetzlich zu `tertiary` bestehen |
|
||||
| `destructive` | gefaehrliche Aktion | Entschieden | Fuer gefaehrliche Aktionen; nicht mit `error` vermischen |
|
||||
| `neutral` | neutrale Variante | Entschieden | Neutrale/schwarze Variante |
|
||||
| `success` | positives Feedback | Entschieden | |
|
||||
| `warning` | Warnung | Entschieden | |
|
||||
| `information` | Information | Entschieden | |
|
||||
@@ -0,0 +1,343 @@
|
||||
# Gruppenregeln
|
||||
|
||||
Status: Entwurf
|
||||
|
||||
Gruppenregeln gelten fuer Komponenten-Bereiche wie Actions, Form Inputs, Data Display, Feedback, Overlays, Navigation, Layout, Typography, Utility und Patterns.
|
||||
|
||||
Der Komponenten-Index ist nur eine Link- und Statusuebersicht. Wiederverwendbare Regeln stehen hier oder in [[03_Benennung]].
|
||||
|
||||
## Format fuer neue Regeln
|
||||
|
||||
Neue Gruppenregeln sollen diese Struktur nutzen:
|
||||
|
||||
```md
|
||||
## Bereichsname
|
||||
|
||||
### Regel: [kurzer Regelname]
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer:
|
||||
|
||||
- [[Components/Component Name]]
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Component Name]] | | Offen |
|
||||
```
|
||||
|
||||
## Bereiche
|
||||
|
||||
| Bereich | Tag | Zweck |
|
||||
| --- | --- | --- |
|
||||
| Actions | `#Actions` | Aktions-Komponenten wie Buttons und Links |
|
||||
| Form Inputs | `#FormInputs` | Inputs, Selects, Toggles, Upload, Field Groups |
|
||||
| Data Display | `#DataDisplay` | Tables, Badges, Avatars, Cards, Empty States |
|
||||
| Feedback | `#Feedback` | Alerts, Toasts, Loader, Skeletons, Error States |
|
||||
| Overlays | `#Overlays` | Dialoge, Drawer, Side Panels, Confirmation Flows |
|
||||
| Navigation | `#Navigation` | Sidebar, Tabs, Breadcrumbs, Page Navigation |
|
||||
| Layout | `#Layout` | Cards, Divider, Collapsibles, Page Templates |
|
||||
| Typography | `#Typography` | Labels und textbezogene Komponenten |
|
||||
| Utility | `#Utility` | Utility Controls wie Theme Toggle |
|
||||
| Patterns | `#Patterns` | Zusammengesetzte Patterns aus mehreren Komponenten |
|
||||
|
||||
## Uebergreifende Control-Regeln
|
||||
|
||||
### Regel: Control-Hoehen fuer Button und Form Inputs
|
||||
|
||||
Status: Teilweise entschieden
|
||||
|
||||
Diese Regel definiert konkrete Hoehen fuer Button und ausgewaehlte Form-Input-Controls.
|
||||
Die Size-Namen selbst sind global in [[03_Benennung]] definiert.
|
||||
Feste Hoehen sind bisher nur fuer `Small`, `Medium` und `Large` entschieden.
|
||||
Sie gilt fuer einzeilige Controls und Trigger, nicht fuer mehrzeilige oder stark spezialisierte Eingabeflaechen.
|
||||
|
||||
| Size | Height | Height Mode | Status |
|
||||
| --- | --- | --- | --- |
|
||||
| `3X Small` | Offen | Offen | Werte offen |
|
||||
| `2X Small` | Offen | Offen | Werte offen |
|
||||
| `Extra Small` | Offen | Offen | Werte offen |
|
||||
| `Small` | 32px | Exact | Entschieden |
|
||||
| `Medium` | 36px | Exact | Entschieden |
|
||||
| `Large` | 48px | Exact | Entschieden |
|
||||
| `Extra Large` | Offen | Offen | Werte offen |
|
||||
| `2X Large` | Offen | Offen | Werte offen |
|
||||
| `3X Large` | Offen | Offen | Werte offen |
|
||||
|
||||
Gilt fuer:
|
||||
|
||||
- [[Components/Button]]
|
||||
- [[Components/Button Group]]
|
||||
- [[Components/Icon Button]]
|
||||
- [[Components/Text Input]]
|
||||
- [[Components/Number Input]]
|
||||
- [[Components/Select]]
|
||||
- [[Components/Multiselect]]
|
||||
- [[Components/Multiselect Tags]]
|
||||
- [[Components/Combobox Autocomplete]]
|
||||
- [[Components/Search Input]]
|
||||
- [[Components/Date Picker]]
|
||||
- [[Components/Toggle Group Segmented Control]]
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Button]] | Referenz fuer Action-Control-Hoehen | Entschieden |
|
||||
| [[Components/Button Group]] | Einzelne Buttons folgen derselben Size-Regel | Entschieden |
|
||||
| [[Components/Icon Button]] | Square Control folgt derselben Size-Regel; Breite entspricht Hoehe | Entschieden |
|
||||
| [[Components/Text Input]] | Input-Hoehe folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Number Input]] | Einzeiliger Input folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Select]] | Select-Hoehe folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Multiselect]] | Control-Hoehe folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Multiselect Tags]] | Tags/Chips muessen zur Control-Hoehe passen | Offen |
|
||||
| [[Components/Combobox Autocomplete]] | Trigger/Input folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Search Input]] | Suchfeld folgt derselben Size-Regel | Entschieden |
|
||||
| [[Components/Date Picker]] | Single-date Trigger folgt derselben Size-Regel; Range-Version separat klaeren | Teilweise entschieden |
|
||||
| [[Components/Toggle Group Segmented Control]] | Erstmal gleiche Hoehen; spaeter visuell pruefen | Offen |
|
||||
|
||||
## Actions
|
||||
|
||||
### Regel: Actions nutzen Action-Sprache
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer:
|
||||
|
||||
- [[Components/Button]]
|
||||
- [[Components/Button Group]]
|
||||
- [[Components/Link]]
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Button]] | Hauptkomponente fuer Actions | Offen |
|
||||
| [[Components/Button Group]] | Gruppierte Actions | Offen |
|
||||
| [[Components/Link]] | Unterschied zwischen Link- und Button-Verhalten klaeren | Offen |
|
||||
|
||||
## Form Inputs
|
||||
|
||||
### Regel: Form Inputs teilen eine Field-Anatomy
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Gilt fuer Komponenten mit `#FormInputs`, wenn sie in einem Field-Kontext mit Label, Help text oder Message verwendet werden.
|
||||
Die Regel steuert die aeussere Field-Struktur, nicht die interne Geometrie des eigentlichen Controls.
|
||||
|
||||
Field-Anatomy:
|
||||
|
||||
| Element | Name in der Konvention | Position | Typografie / Abstand | Status |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| Label | `label` | Oberhalb von Help text oder Control | Abstand zu `helpText`: 8px | Entschieden |
|
||||
| Help text | `helpText` | Zwischen Label und Control | Abstand zum Control: 6px | Entschieden |
|
||||
| Input / Control | Komponenten-Control | Zwischen Help text und Message | Abstand zu `message`: 4px | Entschieden |
|
||||
| Message | `message` | Unterhalb des Controls | 12px, Medium | Entschieden |
|
||||
|
||||
Naming:
|
||||
|
||||
- Der untere Field-Text heisst immer `message`.
|
||||
- `message` wird fuer Props, Slots, Layer-Namen und Dokumentation verwendet.
|
||||
- Der untere Field-Text heisst nicht `label`, `helper`, `helpText` oder `massage`.
|
||||
- `helpText` ist ausschliesslich der Hilfetext oberhalb des Controls.
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Text Input]] | Hauptreferenz fuer Field-Anatomy | Entschieden |
|
||||
| [[Components/Textarea]] | Mehrzeilige Texteingabe; nutzt dieselbe aeussere Field-Anatomy | Entschieden |
|
||||
| [[Components/Number Input]] | Einzeiliges Zahlenfeld mit optionalen Steppern, Prefix oder Suffix | Entschieden |
|
||||
| [[Components/Select]] | Auswahlfeld | Entschieden |
|
||||
| [[Components/Multiselect]] | Auswahlfeld mit mehreren Werten | Entschieden |
|
||||
| [[Components/Multiselect Tags]] | Mehrfachauswahl mit sichtbaren Tags/Chips | Entschieden |
|
||||
| [[Components/Combobox Autocomplete]] | Textfeld mit Such- und Auswahlverhalten | Entschieden |
|
||||
| [[Components/Search Input]] | Spezialisierte Texteingabe fuer Suche | Entschieden |
|
||||
| [[Components/Date Picker]] | Single-date Field nutzt die Field-Anatomy; Range-Version separat klaeren | Teilweise entschieden |
|
||||
| [[Components/File Upload]] | Spezialisierter Input mit gleicher aeusserer Field-Anatomy | Entschieden |
|
||||
| [[Components/Input OTP Pin Code]] | Spezialisiertes Code-Field mit gleicher aeusserer Field-Anatomy | Entschieden |
|
||||
| [[Components/Form Group Input Group]] | Wrapper fuer Label, Help text, Control und Message | Entschieden |
|
||||
| [[Components/Checkbox]] | Nutzt die Field-Anatomy nur, wenn Label, Help text oder Message im Field-Kontext vorkommen | Entschieden |
|
||||
| [[Components/Checkbox Group]] | Nutzt die Field-Anatomy fuer Gruppen-Label, Help text und Message | Entschieden |
|
||||
| [[Components/Radio Group]] | Nutzt die Field-Anatomy fuer Gruppen-Label, Help text und Message | Entschieden |
|
||||
| [[Components/Switch]] | Nutzt die Field-Anatomy nur im Field-Kontext; interne Switch-Struktur bleibt separat | Entschieden |
|
||||
| [[Components/Slider Range Slider]] | Nutzt die Field-Anatomy nur im Field-Kontext; Slider-Geometrie bleibt separat | Entschieden |
|
||||
| [[Components/Toggle Group Segmented Control]] | Nutzt die Field-Anatomy nur im Field-Kontext; interne Toggle-Geometrie bleibt separat | Entschieden |
|
||||
|
||||
### Regel: Form Inputs nutzen definierte Standardbreiten
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Diese Regel definiert Min Width und Default Max Width fuer textnahe Form Inputs.
|
||||
`Fill Container` ist optional: Die Komponente darf bei Bedarf die verfuegbare Containerbreite ausfuellen, soll aber nicht automatisch ohne Kontext auf volle Breite gehen.
|
||||
|
||||
| Feld | Min Width | Default Max Width | Fill Container | Status |
|
||||
| ------------------------------------ | ------------- | ----------------- | -------------- | ----------- |
|
||||
| [[Components/Text Input]] | 12rem / 192px | 20rem / 320px | optional | Entschieden |
|
||||
| [[Components/Textarea]] | 12rem / 192px | 36rem / 576px | optional | Entschieden |
|
||||
| [[Components/Number Input]] | 12rem / 192px | 12rem / 192px | optional | Entschieden |
|
||||
| [[Components/Select]] | 12rem / 192px | 20rem / 320px | optional | Entschieden |
|
||||
| [[Components/Multiselect]] | 12rem / 192px | 24rem / 384px | optional | Entschieden |
|
||||
| [[Components/Multiselect Tags]] | 12rem / 192px | 36rem / 576px | optional | Entschieden |
|
||||
| [[Components/Combobox Autocomplete]] | 12rem / 192px | 24rem / 384px | optional | Entschieden |
|
||||
| [[Components/Search Input]] | 12rem / 192px | 24rem / 384px | optional | Entschieden |
|
||||
| [[Components/Date Picker]] | 12rem / 192px | 20rem / 320px | optional | Entschieden fuer Single Date; Range offen |
|
||||
|
||||
### Regel: Form Inputs nutzen horizontales Innenpadding
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Diese Regel definiert horizontales Innenpadding fuer einzeilige textnahe Form Inputs.
|
||||
Sie gilt fuer Inputs mit Textinhalt und optionale linke oder rechte Icons.
|
||||
Textarea wird nicht ueber diese Regel gesteuert, weil vertikales Padding und mehrzeilige Hoehe separat geklaert werden muessen.
|
||||
|
||||
| Fall | Wert | Mode | Status |
|
||||
| ------------------------------ | ---- | ----- | ----------- |
|
||||
| Linkes Innenpadding ohne Icon | 12px | Exact | Entschieden |
|
||||
| Rechtes Innenpadding ohne Icon | 12px | Exact | Entschieden |
|
||||
| Linker Rand zu linkem Icon | 12px | Exact | Entschieden |
|
||||
| Rechtes Icon zu rechtem Rand | 12px | Exact | Entschieden |
|
||||
| Icon zu Text | 8px | Exact | Entschieden |
|
||||
|
||||
Gilt fuer:
|
||||
|
||||
- [[Components/Text Input]]
|
||||
- [[Components/Number Input]]
|
||||
- [[Components/Select]]
|
||||
- [[Components/Multiselect]]
|
||||
- [[Components/Multiselect Tags]]
|
||||
- [[Components/Combobox Autocomplete]]
|
||||
- [[Components/Search Input]]
|
||||
- [[Components/Date Picker]]
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Text Input]] | Standard-Referenz fuer einzeiliges Padding | Entschieden |
|
||||
| [[Components/Number Input]] | Folgt dem einzeiligen Input-Padding | Entschieden |
|
||||
| [[Components/Select]] | Folgt dem einzeiligen Input-Padding | Entschieden |
|
||||
| [[Components/Multiselect]] | Folgt dem einzeiligen Input-Padding | Entschieden |
|
||||
| [[Components/Multiselect Tags]] | Padding muss mit Tags/Chips zusammen funktionieren | Entschieden |
|
||||
| [[Components/Combobox Autocomplete]] | Folgt dem einzeiligen Input-Padding | Entschieden |
|
||||
| [[Components/Search Input]] | Folgt dem einzeiligen Input-Padding | Entschieden |
|
||||
| [[Components/Date Picker]] | Single-date Trigger folgt dem einzeiligen Input-Padding; Range-Version separat klaeren | Teilweise entschieden |
|
||||
|
||||
### Regel: Form Inputs nutzen Radius Small
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Diese Regel definiert den Standard-Corner-Radius fuer Form Inputs.
|
||||
Der Token ist global in [[03_Benennung]] definiert.
|
||||
|
||||
| Property | Token | Wert | Mode | Status |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| Corner Radius | `Radius Small` | 4px | Exact | Entschieden |
|
||||
|
||||
Gilt fuer:
|
||||
|
||||
- [[Components/Text Input]]
|
||||
- [[Components/Textarea]]
|
||||
- [[Components/Number Input]]
|
||||
- [[Components/Select]]
|
||||
- [[Components/Multiselect]]
|
||||
- [[Components/Multiselect Tags]]
|
||||
- [[Components/Combobox Autocomplete]]
|
||||
- [[Components/Search Input]]
|
||||
- [[Components/Date Picker]]
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Text Input]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Textarea]] | Nutzt `Radius Small`; mehrzeilige Hoehe separat klaeren | Entschieden |
|
||||
| [[Components/Number Input]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Select]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Multiselect]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Multiselect Tags]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Combobox Autocomplete]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Search Input]] | Nutzt `Radius Small` | Entschieden |
|
||||
| [[Components/Date Picker]] | Single-date Trigger nutzt `Radius Small`; Range-Version separat klaeren | Teilweise entschieden |
|
||||
|
||||
## Data Display
|
||||
|
||||
### Regel: Data Display braucht Regeln fuer Inhaltszustaende
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer Komponenten mit `#DataDisplay`.
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Table]] | Hauptreferenz fuer Loading, Empty, Hover und Selection States | Offen |
|
||||
| [[Components/Badge Feedback]] | Benennungsueberschneidung mit Feedback pruefen | Offen |
|
||||
| [[Components/Empty State]] | Kann auch zu Feedback gehoeren | Offen |
|
||||
|
||||
## Feedback
|
||||
|
||||
### Regel: Feedback-Severity-Namen muessen konsistent bleiben
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer Komponenten mit `#Feedback`.
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Banner Alert]] | Beziehung zu [[Components/Alert]] klaeren | Offen |
|
||||
| [[Components/Toast]] | Temporaeres Feedback | Offen |
|
||||
| [[Components/Alert]] | Inline oder persistentes Feedback | Offen |
|
||||
|
||||
## Overlays
|
||||
|
||||
### Regel: Overlays brauchen klare Verhaltensregeln
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer Komponenten mit `#Overlays`.
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Komponente | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Modal Dialog]] | Hauptkandidat fuer Dialog-Regeln | Offen |
|
||||
| [[Components/Confirm Dialog]] | Bestaetigungs-Flow fuer kritische Actions | Offen |
|
||||
| [[Components/Slide Over Side Panel]] | Side-Panel-Verhalten | Offen |
|
||||
|
||||
## Navigation
|
||||
|
||||
Noch keine Gruppenregel entschieden.
|
||||
|
||||
## Layout
|
||||
|
||||
Noch keine Gruppenregel entschieden.
|
||||
|
||||
## Typography
|
||||
|
||||
Noch keine Gruppenregel entschieden.
|
||||
|
||||
## Utility
|
||||
|
||||
Noch keine Gruppenregel entschieden.
|
||||
|
||||
## Patterns
|
||||
|
||||
### Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten
|
||||
|
||||
Status: Offen
|
||||
|
||||
Gilt fuer Eintraege mit `#Patterns`.
|
||||
|
||||
Komponenten-Notizen:
|
||||
|
||||
| Pattern | Notiz | Status |
|
||||
| --- | --- | --- |
|
||||
| [[Components/Bulk Actions Table Multi Select]] | Nutzt Table, Checkbox, Button, Confirm Dialog | Offen |
|
||||
| [[Components/Search Filter Bar]] | Nutzt Search Input, Select, Badge, Button | Offen |
|
||||
| [[Components/Error Recovery]] | Nutzt Feedback- und Retry-Patterns | Offen |
|
||||
@@ -0,0 +1,87 @@
|
||||
# Komponenten-Index
|
||||
|
||||
Status: Entwurf
|
||||
|
||||
Diese Datei ist eine Link- und Statusuebersicht, nicht die zentrale Regelquelle.
|
||||
Regeln stehen in [[03_Benennung]] und [[04_Gruppenregeln]]. Komponenten-spezifische Notizen stehen in den verlinkten Component-Dateien.
|
||||
|
||||
## Komponenten
|
||||
|
||||
| Bereich | Komponente | Lokale Notiz | Subframe | Fertig? |
|
||||
| ------------ | -------------------------------- | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
|
||||
| Actions | Button | [[Components/Button]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Button_3b777358-b86b-40af-9327-891efc6826fe) | <input type="checkbox" checked id="60df8e"> |
|
||||
| Actions | Button Group | [[Components/Button Group]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Button+Group_e0379327-50f0-4852-9ae1-ad09b4bf01d3) | <input type="checkbox" unchecked id="326cf6"> |
|
||||
| Actions | Icon Button | [[Components/Icon Button]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Icon+Button_af9405b1-8c54-4e01-9786-5aad308224f6) | <input type="checkbox" unchecked id="21b207"> |
|
||||
| Actions | Link | [[Components/Link]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Link+Button_a4ee726a-774c-4091-8c49-55b659356024) | <input type="checkbox" checked id="56f603"> |
|
||||
| Form Inputs | Checkbox | [[Components/Checkbox]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Checkbox_3816e3b5-c48c-499b-b45e-0777c6972523) | <input type="checkbox" checked id="c318f5"> |
|
||||
| Form Inputs | Checkbox Group | [[Components/Checkbox Group]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Checkbox+Group_f9f1b596-c6b3-4d60-aa9a-f34b353f8aa5) | <input type="checkbox" checked id="4ac26a"> |
|
||||
| Form Inputs | Combobox Autocomplete | [[Components/Combobox Autocomplete]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Custom+Component_8a1be2ee-c1b7-4407-9c21-6448306d2700) | <input type="checkbox" unchecked id="0818a1"> |
|
||||
| Form Inputs | Date Picker | [[Components/Date Picker]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Date+Field_8597ff0e-368d-42c9-b5bc-b22473c41104) | <input type="checkbox" unchecked id="5f6cef"> |
|
||||
| Form Inputs | File Upload | [[Components/File Upload]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Upload_28a3336a-2bdd-4d1c-8dc1-75c9d6eef452) | <input type="checkbox" checked id="2754c8"> |
|
||||
| Form Inputs | Form Group Input Group | [[Components/Form Group Input Group]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="0b659e"> |
|
||||
| Form Inputs | Input OTP Pin Code | [[Components/Input OTP Pin Code]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Verification+Code_1a223fbe-dca0-4e44-a383-44bbc7db975d) | <input type="checkbox" checked id="80b9d8"> |
|
||||
| Form Inputs | Multiselect | [[Components/Multiselect]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Multi+Select_457d3920-2559-46a2-9dfe-c5b809028265) | <input type="checkbox" checked id="78ca90"> |
|
||||
| Form Inputs | Multiselect Tags | [[Components/Multiselect Tags]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Multi+Select+Tags_8e4472a6-e1eb-47a4-8c95-c911e02208bf) | <input type="checkbox" unchecked id="d6a9cf"> |
|
||||
| Form Inputs | Number Input | [[Components/Number Input]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Number+Input_06ebc0c5-994e-4eac-b855-f3c6d7f1bbbf) | <input type="checkbox" checked id="44979f"> |
|
||||
| Form Inputs | Radio Group | [[Components/Radio Group]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Radio+Group_c4b6300e-20b4-4f3e-8b9f-379a046674ca) | <input type="checkbox" checked id="ed1a88"> |
|
||||
| Form Inputs | Search Input | [[Components/Search Input]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Search+Input_75a35ed3-52c0-4435-8586-e390eb77d723) | <input type="checkbox" unchecked id="ee1a1f"> |
|
||||
| Form Inputs | Select | [[Components/Select]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Select_bb88f90b-8c43-4b73-9c2f-3558ce7838f3) | <input type="checkbox" unchecked id="9691be"> |
|
||||
| Form Inputs | Slider Range Slider | [[Components/Slider Range Slider]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Slider_f4092874-0320-449e-a0c5-b435987c4cfb) | <input type="checkbox" checked id="1561a4"> |
|
||||
| Form Inputs | Switch | [[Components/Switch]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Switch_7a464794-9ea9-4040-b1de-5bfb2ce599d9) | <input type="checkbox" checked id="e4c5d4"> |
|
||||
| Form Inputs | Text Input | [[Components/Text Input]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Text+Field_be48ca43-f8e7-4c0e-8870-d219ea11abfe) | <input type="checkbox" checked id="197ffc"> |
|
||||
| Form Inputs | Textarea | [[Components/Textarea]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Text+Area_4ec05ee8-8f1c-46b2-b863-5419aa7f5cce) | <input type="checkbox" checked id="2ca9a4"> |
|
||||
| Form Inputs | Toggle Group Segmented Control | [[Components/Toggle Group Segmented Control]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Toggle+Group_2026f10a-e3cc-4c89-80da-a7259acae3b7) | <input type="checkbox" checked id="7bbf20"> |
|
||||
| Data Display | Avatar | [[Components/Avatar]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Avatar_bec25ae6-5010-4485-b46b-cf79e3943ab2) | <input type="checkbox" checked id="5c6e36"> |
|
||||
| Data Display | Avatar Group | [[Components/Avatar Group]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Avatar+Group_6e7444ab-1d67-47f5-af23-1a2d3ecf1016) | <input type="checkbox" checked id="f3123b"> |
|
||||
| Data Display | Badge Feedback | [[Components/Badge Feedback]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Badge+Feedback_896531e4-54ea-4e5a-8710-c30fc2ce10fb) | <input type="checkbox" unchecked id="e06288"> |
|
||||
| Data Display | Badge Shortcut | [[Components/Badge Shortcut]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Badge+Shortcut_97bdb082-1124-4dd7-a335-b14b822d0157) | <input type="checkbox" checked id="b7a8c1"> |
|
||||
| Data Display | Empty State | [[Components/Empty State]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_EmptyState_9fcf03a9-ada9-4a3d-80bc-87ff6ce78023) | <input type="checkbox" checked id="96fb67"> |
|
||||
| Data Display | Pagination | [[Components/Pagination]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="88e2a9"> |
|
||||
| Data Display | Stats Card KPI | [[Components/Stats Card KPI]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_StatKpi_63f809c7-22ef-47f8-9fb9-0f33b252be3f) | <input type="checkbox" checked id="1ff432"> |
|
||||
| Data Display | Table | [[Components/Table]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Table_142dfde7-d0cc-48a1-a04c-a08ab2252633) | <input type="checkbox" unchecked id="65a190"> |
|
||||
| Data Display | Tag Label | [[Components/Tag Label]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Tag+_+Label_bb114597-3b27-4c24-a34b-737c67238809) | <input type="checkbox" unchecked id="20dee9"> |
|
||||
| Feedback | Alert | [[Components/Alert]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Alert_3a65613d-d546-467c-80f4-aaba6a7edcd5) | <input type="checkbox" checked id="693d02"> |
|
||||
| Feedback | Banner Alert | [[Components/Banner Alert]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Alert_c836f6cf-ff90-4e2d-991f-5cc256be2b6b) | <input type="checkbox" checked id="6ad9f7"> |
|
||||
| Feedback | Error State | [[Components/Error State]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Partial+page+failure_db7ae858-338b-4089-8177-2dea8e3b97fe) | <input type="checkbox" unchecked id="9e51db"> |
|
||||
| Feedback | Form save retry | [[Components/Form save retry]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Form+save+retry_db7627dd-19cb-457b-bbfd-6fe16d620fe0) | <input type="checkbox" checked id="a837a9"> |
|
||||
| Feedback | Loading Indicator ProgressBar | [[Components/Loading Indicator ProgressBar]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Progress_60964db0-a1bf-428b-b9d5-f34cdf58ea77) | <input type="checkbox" checked id="d60fe4"> |
|
||||
| Feedback | Loading Indicator ProgressCircle | [[Components/Loading Indicator ProgressCircle]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Progress+Circle_91a72105-500a-46e2-997b-7e8cd29b5f81) | <input type="checkbox" unchecked id="ccd072"> |
|
||||
| Feedback | Loading Indicator Skeleton | [[Components/Loading Indicator Skeleton]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Skeleton_08dee637-2ba5-4c5d-86d4-a531fd11481f) | <input type="checkbox" unchecked id="d70991"> |
|
||||
| Feedback | Offline banner | [[Components/Offline banner]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Offline+banner_2582cb6e-0176-4a5c-b70f-c3bef3c7001d) | <input type="checkbox" checked id="e432ea"> |
|
||||
| Feedback | Partial page failure | [[Components/Partial page failure]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Partial+page+failure_db7ae858-338b-4089-8177-2dea8e3b97fe) | <input type="checkbox" checked id="7dcdb9"> |
|
||||
| Feedback | Timeout | [[Components/Timeout]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Timeout_ff21411f-6321-4139-bc92-603c625e2380) | <input type="checkbox" checked id="9faae7"> |
|
||||
| Feedback | Toast | [[Components/Toast]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Toast_2c7966c2-a95d-468a-83fe-bf196b95be7a) | <input type="checkbox" checked id="bdd39f"> |
|
||||
| Feedback | Stepper Progress Steps Horizontal | [[Components/Stepper Progress Steps Horizontal]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Stepper_3c5d47dc-1b1a-45d9-b244-18422d7bfb56) | <input type="checkbox" unchecked id="3c5d47"> |
|
||||
| Feedback | Stepper Progress Steps Vertikal | [[Components/Stepper Progress Steps Vertikal]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Vertical+Stepper_bdc0291d-b5be-40c5-ae2f-527a868488b2) | <input type="checkbox" unchecked id="bdc029"> |
|
||||
| Feedback | Tooltip | [[Components/Tooltip]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Tooltip_ccebd1e9-f6ac-4737-8376-0dfacd90c9f3) | <input type="checkbox" unchecked id="318e85"> |
|
||||
| Overlays | Confirm Dialog | [[Components/Confirm Dialog]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Confirm+Dialog_7826382f-0b13-45d9-ac8f-238fa6de9121) | <input type="checkbox" unchecked id="984f5a"> |
|
||||
| Overlays | Context Menu | [[Components/Context Menu]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Context+Menu_f8a49f07-fa5b-46c8-9399-cbbf0930cc62) | <input type="checkbox" checked id="f8a49f"> |
|
||||
| Overlays | Drawer Bottom Sheet | [[Components/Drawer Bottom Sheet]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="01f46b"> |
|
||||
| Overlays | Dropdown Menu | [[Components/Dropdown Menu]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Dropdown+Menu_99951515-459b-4286-919e-a89e7549b43b) | <input type="checkbox" unchecked id="999515"> |
|
||||
| Overlays | Modal Dialog | [[Components/Modal Dialog]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Dialog_ca59db17-43fb-4247-8094-3c55162e902d) | <input type="checkbox" unchecked id="1443aa"> |
|
||||
| Overlays | Result Dialog | [[Components/Result Dialog]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Result+Dialog_15b54873-a4f7-4507-a25a-06739f26cf11) | <input type="checkbox" unchecked id="de51cd"> |
|
||||
| Overlays | Slide Over Side Panel | [[Components/Slide Over Side Panel]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="b064cf"> |
|
||||
| Navigation | Breadcrumb | [[Components/Breadcrumb]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Breadcrumbs_8898334b-a66f-4ee8-8bd1-afcfa8e37cc0) | <input type="checkbox" unchecked id="d4d9bc"> |
|
||||
| Navigation | Page Header with Back | [[Components/Page Header with Back]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="4c196a"> |
|
||||
| Navigation | Sidebar | [[Components/Sidebar]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Sidebar+with+sections_f4047c8b-cfb4-4761-b9cf-fbcae8a9b9b5) | <input type="checkbox" checked id="017a2b"> |
|
||||
| Navigation | Subbar | [[Components/Subbar]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_Subbar_75a855a6-3419-4c84-97bd-540dd2f180a4) | <input type="checkbox" checked id="75a855"> |
|
||||
| Navigation | Tabs | [[Components/Tabs]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Tabs_e1ad5091-8ad8-4319-b1f7-3e47f0256c20) | <input type="checkbox" checked id="002ac3"> |
|
||||
| Navigation | Tree View | [[Components/Tree View]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Tree+View_4ed46422-ecc3-41e8-8787-e55ee10cdc75) | <input type="checkbox" checked id="4ed464"> |
|
||||
| Layout | Accordion Collapsible | [[Components/Accordion Collapsible]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Accordion_d2e81e20-863a-4027-826a-991d8910efd9) | <input type="checkbox" unchecked id="f11bdc"> |
|
||||
| Layout | Card Icon | [[Components/Card Icon]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_CardIcon_41867f0d-7a6a-4e51-9b08-6cce5a3070b1) | <input type="checkbox" checked id="dfddf1"> |
|
||||
| Layout | Card Image | [[Components/Card Image]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_CardImage_1f735087-2381-42e1-8ceb-491a8bc63948) | <input type="checkbox" checked id="d621d8"> |
|
||||
| Layout | Page Layout Templates | [[Components/Page Layout Templates]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Default+Page+Layout_a57b1c43-310a-493f-b807-8cc88e2452cf) | <input type="checkbox" unchecked id="e996a6"> |
|
||||
| Layout | Separator Divider | [[Components/Separator Divider]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_Divider_d7beb179-8dd1-4635-8e50-38eea311008d) | <input type="checkbox" unchecked id="3af15a"> |
|
||||
| Typography | Label | [[Components/Label]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="c460e4"> |
|
||||
| Utility | Dark Mode Toggle | [[Components/Dark Mode Toggle]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="bbdd9e"> |
|
||||
| Utility | Icon | [[Components/Icon]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Icon+Feedback_e24ec5dc-9821-430d-8254-1d72a7d46218) | <input type="checkbox" checked id="e24ec5"> |
|
||||
| Utility | Icon With Backround | [[Components/Icon With Backround]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=Icon+Feedback+with+background_4a18e9fc-cea3-46ca-8c53-2412462342ad) | <input type="checkbox" checked id="4a18e9"> |
|
||||
| Patterns | Bulk Actions Table Multi Select | [[Components/Bulk Actions Table Multi Select]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="da2cca"> |
|
||||
| Patterns | Copy to Clipboard | [[Components/Copy to Clipboard]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="3d389a"> |
|
||||
| Patterns | Error Recovery | [[Components/Error Recovery]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="ab406e"> |
|
||||
| Patterns | Inline Editing Click to Edit | [[Components/Inline Editing Click to Edit]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="9bc763"> |
|
||||
| Patterns | Kanban Card | [[Components/Kanban Card]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_KanbanCard_27235bcb-e61b-4880-9ae6-3f12d290a434) | <input type="checkbox" unchecked id="27235b"> |
|
||||
| Patterns | Kanban Column | [[Components/Kanban Column]] | [Subframe](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_KanbanColumn_bbc08458-14aa-4512-a807-e673a64315ab) | <input type="checkbox" checked id="bbc084"> |
|
||||
| Patterns | Save State Indicators | [[Components/Save State Indicators]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="67bb7b"> |
|
||||
| Patterns | Search Filter Bar | [[Components/Search Filter Bar]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="056a32"> |
|
||||
| Patterns | Undo Action Toast | [[Components/Undo Action Toast]] | Noch nicht verlinkt | <input type="checkbox" unchecked id="d095a9"> |
|
||||
@@ -0,0 +1,15 @@
|
||||
# Backlog
|
||||
|
||||
Status: Offen
|
||||
|
||||
Themen, die spaeter nuetzlich sind, aber nicht Teil des ersten Regelwerk-Durchgangs sind.
|
||||
|
||||
| Thema | Warum spaeter? | Status |
|
||||
| --- | --- | --- |
|
||||
| IBM Carbon Spacing-Inspiration | Nuetzlich fuer spaetere Spacing-Recherche, aber noch keine Regelquelle | Backlog |
|
||||
| Farben | Werden groesstenteils in Subframe gepflegt | Backlog |
|
||||
| Radius | Wird groesstenteils in Subframe gepflegt | Backlog |
|
||||
| Shadows | Werden groesstenteils in Subframe gepflegt | Backlog |
|
||||
| Globale Typography-Tokens | Sind bereits in Subframe/Tailwind vorhanden | Backlog |
|
||||
| Accessibility-Regeln | Wichtig, aber nicht der erste Struktur-Fokus | Backlog |
|
||||
| Vollstaendige Komponenten-Dokumentation | Erst noetig, wenn eine Komponente echte Regeln oder Ausnahmen braucht | Backlog |
|
||||
@@ -0,0 +1,99 @@
|
||||
# Global Rules
|
||||
|
||||
Diese Datei enthaelt Regeln, die fuer alle Komponenten gelten koennen.
|
||||
Sie ist nicht fuer Vokabular gedacht; Vokabular steht in [[03_Benennung]].
|
||||
Gruppenspezifische visuelle Regeln stehen in [[04_Gruppenregeln]].
|
||||
|
||||
## Component API
|
||||
|
||||
### Regel: Props folgen einer Prioritaets-Hierarchie
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Props werden nach ihrer visuellen und funktionalen Ueberschreibungsstaerke eingeordnet.
|
||||
Je staerker eine Prop andere Darstellung ueberschreiben kann, desto hoeher steht sie in der Reihenfolge.
|
||||
|
||||
| Prioritaet | Kategorie | Bedeutung | Beispiele |
|
||||
| ---------- | ---------------------- | ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
|
||||
| 1 | Zustand | Ueberschreibt andere Styles am staerksten | `disabled`, `error`, `loading`, `checked`, `indeterminate`, `selected` |
|
||||
| 2 | Erscheinung | Legt visuelle Grundidentitaet fest | `variant`, `tone`, `color`, `primary`, `secondary`, `neutral`, `destructive`, `success`, `warning`, `information` |
|
||||
| 3 | Groesse | Veraendert Hoehe, Padding, Schriftgroesse oder Dichte | `size` |
|
||||
| 4 | Layout-Sonderfaelle | Veraendert Struktur oder Rahmenbedingungen | `fillContainer`, `borderless`, `noPadding`, `border`, `square` |
|
||||
| 5 | Sichtbarkeit / Toggles | Blendet Teile ein oder aus | `showLabel`, `hideLabel`, `dismissible`, `noAction` |
|
||||
| 6 | Inhalt / Slots | Liefert Inhalt, aber steuert nicht die visuelle Prioritaet | `children`, `icon`, `image`, `actions`, `actionChildren`, Textwerte |
|
||||
|
||||
|
||||
Innerhalb einer Kategorie wird nach Ueberschreibungsstaerke sortiert.
|
||||
Beispiel: `disabled` steht vor `error`, weil disabled die Komponente vollstaendig inaktiv macht.
|
||||
|
||||
## Edge Cases
|
||||
|
||||
### Regel: Props nach Funktion sortieren, nicht nach Namen
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Ein Prop-Name allein entscheidet nicht ueber die Kategorie.
|
||||
Die Bedeutung des Props entscheidet.
|
||||
|
||||
Beispiel:
|
||||
|
||||
| Prop | Bedeutung | Kategorie |
|
||||
| --- | --- | --- |
|
||||
| `state` bei echtem UI-Zustand | disabled, error, loading | Zustand |
|
||||
| `state` bei Progress-Status | uploading, success, error als visuelle Erscheinung | Erscheinung |
|
||||
|
||||
Leitfrage: Ueberschreibt es alles als Zustand, oder beschreibt es die Grunderscheinung?
|
||||
|
||||
### Regel: Technische Primitive haben Vorrang vor idealer Sortierung
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Bei Subframe- oder Core-Primitives koennen Props technisch vorgegeben sein.
|
||||
Wenn eine Prop als `cannot be modified` oder technisch fixiert gilt, wird sie nicht erzwungen umsortiert.
|
||||
Der Rest der Props wird um diese technische Vorgabe herum sortiert.
|
||||
|
||||
Beispiele:
|
||||
|
||||
- `checked`
|
||||
- `indeterminate`
|
||||
- `open`
|
||||
- `value`
|
||||
|
||||
Semantisch koennen diese Props trotzdem in Kategorie 1 gehoeren.
|
||||
Die technische Reihenfolge hat aber Vorrang, wenn eine Umsortierung das Primitive bricht.
|
||||
|
||||
### Regel: Slot-Props gehoeren zu Inhalt
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Slot-Props und React-Nodes gehoeren zur niedrigsten Prioritaet.
|
||||
Sie erzeugen Inhalt, sind aber keine Style-Treiber.
|
||||
|
||||
Beispiele:
|
||||
|
||||
- `children`
|
||||
- `actions`
|
||||
- `actionChildren`
|
||||
- `icon`
|
||||
- `image`
|
||||
|
||||
### Regel: Komponenten duerfen Kategorien auslassen
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Eine Komponente muss nicht Props aus jeder Kategorie haben.
|
||||
Wenn eine Komponente keine Zustands-Props hat, beginnt ihre API-Hierarchie einfach bei der naechsten passenden Kategorie.
|
||||
|
||||
Beispiel: Avatar, Badge oder Tag koennen ohne `disabled` oder `error` trotzdem regelkonform sein.
|
||||
|
||||
### Regel: Subkomponenten folgen derselben Logik
|
||||
|
||||
Status: Entschieden
|
||||
|
||||
Subkomponenten und interne Parts folgen derselben Prop-Prioritaet im Kleinen.
|
||||
|
||||
Beispiele:
|
||||
|
||||
- `Switch.Thumb`
|
||||
- `Progress.Indicator`
|
||||
- `Select.Trigger`
|
||||
@@ -0,0 +1,26 @@
|
||||
# Todo
|
||||
|
||||
Status: Offen
|
||||
|
||||
Diese Datei sammelt laufende Aufgaben, Pruefpunkte und kleine Nacharbeiten.
|
||||
Sie ist fuer Dinge gedacht, die konkret abgearbeitet werden muessen.
|
||||
Langfristige Themen ohne konkrete Aktion bleiben in [[06_Backlog]].
|
||||
|
||||
## Laufende Aufgaben
|
||||
|
||||
| Aufgabe | Bereich | Komponente / Regel | Status | Notiz |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| Date Picker Range-Version klaeren | Form Inputs | [[Components/Date Picker]] | Offen | Es wird voraussichtlich eine Date-von-bis-Version geben. Breite, Anatomy, Padding und Verhalten separat festlegen. |
|
||||
| Date Picker Varianten pruefen | Form Inputs | [[Components/Date Picker]] | Offen | Single Date ist in Basisregeln aufgenommen; weitere Versionen koennen andere Regeln brauchen. |
|
||||
| Select Colour-Mismatch pruefen | Form Inputs | [[Components/Select]] | Offen | Subframe Problem: Textfarbe weicht ohne klaren Grund ab. |
|
||||
| Table Doppelung rechts pruefen | Data Display | [[Components/Table]] | Offen | Subframe Problem: Doppelung ganz rechts in einem normalen Row. |
|
||||
| Stepper State-Enum pruefen | Feedback | [[Components/Stepper Progress Steps Horizontal]] / [[Components/Stepper Progress Steps Vertikal]] | Offen | Klaeren, ob das Step-Subcomponent `done`, `current` und `upcoming` sauber abbildet. |
|
||||
| Partial page failure / Timeout Zusammenfuehrung klaeren | Feedback | [[Components/Partial page failure]] / [[Components/Timeout]] | Offen | Beide sind laut Notiz eventuell zusammengefuehrt und koennten geloescht oder konsolidiert werden. |
|
||||
| `Icon With Backround` Schreibweise pruefen | Utility | [[Components/Icon With Backround]] | Offen | Name wurde aus Tabelle uebernommen; vermutlich `Background` statt `Backround`. |
|
||||
| Multiselect Tags Control-Hoehe visuell pruefen | Form Inputs | [[Components/Multiselect Tags]] | Offen | Tags/Chips muessen sauber in `Small`, `Medium` und `Large` funktionieren. |
|
||||
| Toggle Group Control-Hoehe visuell pruefen | Form Inputs | [[Components/Toggle Group Segmented Control]] | Offen | Aktuell gleiche Hoehenlogik wie Button/Form Controls; visuell pruefen. |
|
||||
|
||||
## Erledigt
|
||||
|
||||
| Aufgabe | Bereich | Komponente / Regel | Erledigt am | Notiz |
|
||||
| --- | --- | --- | --- | --- |
|
||||
@@ -0,0 +1,121 @@
|
||||
# AI-References
|
||||
|
||||
Tags: #AIReference
|
||||
|
||||
Diese Datei ist der Startkontext fuer AI-Arbeit an den Subframe UI Standards.
|
||||
Sie beschreibt, wie das Standards-Projekt aufgebaut ist und welcher Ablauf bei Aenderungen eingehalten werden muss.
|
||||
|
||||
## HiveGrid-Integration
|
||||
|
||||
Die Subframe UI Standards liegen als eigenes Standards-Projekt im HiveGrid-Wireframe-Repo.
|
||||
|
||||
Vor jeder Arbeit an diesem Standards-Projekt muss [[00_HiveGrid-Einordnung]] gelesen werden.
|
||||
|
||||
Wichtig:
|
||||
|
||||
- Normale HiveGrid-Screen- oder Flow-Arbeit darf dieses Standards-Projekt nicht automatisch veraendern.
|
||||
- Aenderungen an den Standards brauchen eine explizite Aufgabe oder eine vorher validierte Entscheidung von David.
|
||||
- Werte aus Screen-Paketen, D-D0b oder Subframe-Screens werden erst dann globale Regeln, wenn David sie explizit validiert.
|
||||
- Die Standards sind nicht der Ort fuer Ticket-spezifische UX-Entscheidungen; diese bleiben in den Wireframe-Paketen.
|
||||
- Dauerhafte Layout-, Komponenten- oder Subframe-Konventionen koennen hier dokumentiert werden, wenn sie als systemweite Regel validiert sind.
|
||||
|
||||
## Vault-Struktur
|
||||
|
||||
| Bereich | Zweck |
|
||||
| --- | --- |
|
||||
| [[00_HiveGrid-Einordnung]] | Einordnung im HiveGrid-Repo, Zweck, Abgrenzung und Aenderungsschutz |
|
||||
| [[00_Start]] | Einstieg und kurze Orientierung fuer die Subframe UI Standards |
|
||||
| [[01_Brainstorming]] | Offene Ideen, Fragen und noch nicht entschiedene Punkte |
|
||||
| [[02_Entscheidungen]] | Entscheidungslog fuer final getroffene Entscheidungen |
|
||||
| [[03_Benennung]] | Allgemeines Vokabular fuer Namen, States, Varianten und Sizes |
|
||||
| [[04_Gruppenregeln]] | Wiederverwendbare Regeln fuer Komponenten-Gruppen |
|
||||
| [[05_Komponenten-Index]] | Link- und Statusuebersicht fuer Komponenten |
|
||||
| [[06_Backlog]] | Spaetere Aufgaben, offene Themen und Erweiterungen |
|
||||
| [[07_Global-Rules]] | Globale Component-API- und Arbeitsregeln |
|
||||
| [[08_Todo]] | Laufende Aufgaben, Pruefpunkte und Nacharbeiten |
|
||||
| [[AI/08_AI-Change-History]] | AI-Verlauf fuer Aenderungen am Vault |
|
||||
| `Layout/` | Validierte Layout-, Spacing-, Dialog-, Table- und Composition-Regeln |
|
||||
| `Components/` | Einzelne Komponenten-Notizen mit Subframe-Link, Bereich, Notizen und Regel-Referenzen |
|
||||
|
||||
## AI-Dateien
|
||||
|
||||
Alle Dateien, die nur fuer AI-Arbeitskontext, AI-Verlauf oder AI-Pflege gedacht sind, tragen den Tag `#AIReference`.
|
||||
Neue AI-Dateien muessen diesen Tag ebenfalls bekommen.
|
||||
|
||||
## Regel 1: Gruppenregeln gezielt referenzieren
|
||||
|
||||
Jede wiederverwendbare Regel in [[04_Gruppenregeln]] muss eine eigene Ueberschrift haben.
|
||||
Jeder Bereich in [[04_Gruppenregeln]] muss ebenfalls eine eigene Ueberschrift haben.
|
||||
|
||||
Wenn eine Komponente von einer Gruppenregel betroffen ist, soll die Komponenten-Datei nicht nur pauschal auf [[04_Gruppenregeln]] verweisen.
|
||||
Sie soll die konkrete Regel referenzieren.
|
||||
|
||||
Bevorzugte Referenz als Obsidian-Embed:
|
||||
|
||||
```md
|
||||
![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
```
|
||||
|
||||
Alternative als normaler Link:
|
||||
|
||||
```md
|
||||
[[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
```
|
||||
|
||||
Wenn eine Komponente mehrere Regeln betrifft, werden alle passenden Regel-Referenzen in der Komponenten-Datei gelistet.
|
||||
|
||||
## Regel 2: Global Rules pauschal verlinken
|
||||
|
||||
Globale Regeln aus [[07_Global-Rules]] gelten projektweit.
|
||||
Sie werden in Komponenten-Dateien nur pauschal direkt nach [[03_Benennung]] verlinkt.
|
||||
|
||||
```md
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
```
|
||||
|
||||
Keine einzelnen Heading-Embeds fuer Global Rules in Komponenten-Dateien anlegen, ausser das wird spaeter bewusst entschieden.
|
||||
Spezifische Obsidian-Embeds bleiben fuer Gruppenregeln aus [[04_Gruppenregeln]] reserviert.
|
||||
|
||||
## Ablauf fuer Aenderungen
|
||||
|
||||
0. Zuerst klaeren, ob wirklich an den Subframe UI Standards gearbeitet werden soll oder ob die Information nur in ein HiveGrid-Wireframe-Paket gehoert.
|
||||
1. Zuerst klaeren, ob die Aenderung eine Benennung, eine Global Rule, eine Entscheidung, eine Gruppenregel, eine Komponenten-Notiz oder nur den Index betrifft.
|
||||
2. Benennungen nur in [[03_Benennung]] pflegen, wenn es um Vokabular geht.
|
||||
3. Globale Component-API-Regeln in [[07_Global-Rules]] pflegen.
|
||||
4. Wiederverwendbare Gruppenregeln in [[04_Gruppenregeln]] pflegen.
|
||||
5. Dauerhafte Layout-Regeln in `Layout/` pflegen, aber nur wenn sie als systemweite Regel validiert wurden.
|
||||
6. Komponenten-spezifische Notizen in der passenden Datei unter `Components/` pflegen.
|
||||
7. Der [[05_Komponenten-Index]] bleibt nur Link- und Statusuebersicht.
|
||||
8. Offene konkrete Aufgaben oder Pruefpunkte in [[08_Todo]] pflegen.
|
||||
9. Jede inhaltliche Datei-Aenderung in [[AI/08_AI-Change-History]] mit Datum, Uhrzeit, Kontext, betroffenen Dateien, Aenderungen und offenen Punkten dokumentieren.
|
||||
10. Nach jeder Aenderung die Referenzen pruefen.
|
||||
|
||||
## Pflichtpruefung am Ende
|
||||
|
||||
Nach jeder Aenderung muss geprueft werden:
|
||||
|
||||
| Pruefung | Bedeutung |
|
||||
| --- | --- |
|
||||
| Wurde eine Global Rule geaendert? | Dann pruefen, ob sie wirklich global ist und nicht in [[03_Benennung]] oder [[04_Gruppenregeln]] gehoert. Komponenten brauchen nur den pauschalen Link. |
|
||||
| Wurde eine Gruppenregel geaendert? | Dann alle betroffenen Komponenten-Dateien pruefen. |
|
||||
| Wurde eine Regel-Ueberschrift geaendert? | Dann alle Obsidian-Links und Embeds auf diese Regel pruefen. |
|
||||
| Wurde eine Komponente neu hinzugefuegt? | Dann [[03_Benennung]], [[07_Global-Rules]] und die passenden Gruppenregeln referenzieren. |
|
||||
| Wurde eine Komponente geaendert? | Dann pruefen, ob alle passenden Gruppenregeln referenziert sind. |
|
||||
| Entstand ein offener Pruefpunkt? | Dann in [[08_Todo]] eintragen, nicht nur im Chat behalten. |
|
||||
| Wurden Dateien erstellt, geaendert, verschoben oder geloescht? | Dann [[AI/08_AI-Change-History]] mit Datum, Uhrzeit, Kontext, Dateien, Aenderungen und offenen Punkten aktualisieren. |
|
||||
| Wurde eine Regel entfernt oder verschoben? | Dann alte Referenzen in `Components/` bereinigen. |
|
||||
|
||||
Ziel: Regeln und Komponenten muessen in beide Richtungen konsistent bleiben.
|
||||
Eine Regel, die eine Komponente einschliesst, muss in der passenden Komponenten-Datei referenziert sein.
|
||||
Eine Komponenten-Datei soll nur Regeln referenzieren, die wirklich fuer diese Komponente gelten.
|
||||
|
||||
## Offene Arbeitsregeln
|
||||
|
||||
Diese Punkte werden spaeter konkretisiert:
|
||||
|
||||
- Was AI automatisch aendern darf
|
||||
- Was AI vor Aenderungen fragen muss
|
||||
- Welche Dateien nie ohne Rueckfrage geaendert werden sollen
|
||||
- Wie mit Subframe-Links und Subframe-MCP-Daten gearbeitet wird
|
||||
- Wie neue Komponenten-Dateien angelegt werden
|
||||
@@ -0,0 +1,342 @@
|
||||
# AI Change History
|
||||
|
||||
Status: Aktiv
|
||||
Tags: #AIReference
|
||||
|
||||
Diese Datei ist nur fuer AI- und Projektpflege-Kontext gedacht.
|
||||
Sie dokumentiert kurz und nachvollziehbar, was durch AI oder mit AI-Unterstuetzung am Vault geaendert wurde.
|
||||
|
||||
## Pflichtregel fuer AI-Arbeit
|
||||
|
||||
Nach jeder inhaltlichen Aenderung am Vault muss diese Datei aktualisiert werden.
|
||||
Der Eintrag muss kurz, konkret und nachtraeglich nutzbar sein.
|
||||
|
||||
Ein Eintrag muss enthalten:
|
||||
|
||||
- Datum und Uhrzeit im Format `YYYY-MM-DD HH:MM:SS Europe/Berlin`, wenn die Aenderung ab jetzt vorgenommen wird
|
||||
- kurzer Kontext, warum die Aenderung gemacht wurde
|
||||
- betroffene Dateien
|
||||
- wichtigste Aenderungen
|
||||
- offene Folgepunkte, falls vorhanden
|
||||
|
||||
Wenn nur gelesen oder analysiert wurde, ist kein Eintrag noetig.
|
||||
Wenn Dateien erstellt, geaendert, verschoben oder geloescht wurden, ist ein Eintrag Pflicht.
|
||||
Falls alte Eintraege ohne Uhrzeit nachtraeglich normalisiert werden, muss im Kontext stehen, dass die Uhrzeit geschaetzt wurde.
|
||||
|
||||
## Format
|
||||
|
||||
```md
|
||||
### YYYY-MM-DD HH:MM:SS Europe/Berlin - Kurzer Titel
|
||||
|
||||
Kontext:
|
||||
- Warum diese Aenderung gemacht wurde.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[04_Gruppenregeln]]
|
||||
- `Pfad/Datei.md`
|
||||
|
||||
Aenderungen:
|
||||
- Kurz und konkret.
|
||||
|
||||
Offen:
|
||||
- Falls keine offenen Punkte entstanden sind: Keine.
|
||||
```
|
||||
|
||||
## Verlauf
|
||||
|
||||
### 2026-06-29 04:57:39 Europe/Berlin - Repo-Struktur und Standards-Benennung geschaerft
|
||||
|
||||
Kontext:
|
||||
- Die Bezeichnungen `Regeln`, `Regelwerk` und `Subframe-Regelwerk` waren zu nah beieinander und konnten mit den operativen Repo-Arbeitsregeln verwechselt werden.
|
||||
- Die HiveGrid-Cloud-Referenz und die Subframe UI Standards sollten in der Repo-Struktur klarer eingeordnet werden.
|
||||
|
||||
Betroffene Dateien:
|
||||
- `00 Start Here.md`
|
||||
- `AI README.md`
|
||||
- `01 Regeln/Obsidian Struktur.md`
|
||||
- `01 Regeln/Screen Agent Workflow.md`
|
||||
- `03 Quellen und Referenzen/README.md`
|
||||
- `03 Quellen und Referenzen/Repo Notizen.md`
|
||||
- `04 Standards/README.md`
|
||||
- [[00_HiveGrid-Einordnung]]
|
||||
- [[00_Start]]
|
||||
- [[02_Entscheidungen]]
|
||||
- [[AI/07_AI-References]]
|
||||
- [[AI/08_AI-Change-History]]
|
||||
- `Tickets/README.md`
|
||||
- `Tickets/Fertige Tickets/D-P2 Auth Wireframes.md`
|
||||
|
||||
Aenderungen:
|
||||
- Subframe-Standards aus `01 Regeln/` nach `04 Standards/Subframe UI Standards/` verschoben.
|
||||
- HiveGrid-Cloud-Referenz nach `03 Quellen und Referenzen/hivegrid-cloud/` verschoben.
|
||||
- Ticket-Handoff in `Tickets/Fertige Tickets/` eingeordnet.
|
||||
- Zentrale Doku und Pfade auf die neue Struktur aktualisiert.
|
||||
- Sprache von unklaren Regelwerk-Begriffen auf `Standards-Projekt` und `Subframe UI Standards` geschaerft.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-29 01:37:44 Europe/Berlin - HiveGrid-Integration als Teilprojekt dokumentiert
|
||||
|
||||
Kontext:
|
||||
- Das Subframe Component Library Regelwerk wurde in das HiveGrid-Wireframe-Repo uebernommen.
|
||||
- Es soll als eigene Shell fuer dauerhafte Subframe-, Komponenten- und Layout-Regeln dienen, aber nicht nebenbei durch normale Screen-Arbeit veraendert werden.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[00_HiveGrid-Einordnung]]
|
||||
- [[00_Start]]
|
||||
- [[02_Entscheidungen]]
|
||||
- [[AI/07_AI-References]]
|
||||
- [[AI/08_AI-Change-History]]
|
||||
- `Layout/README.md`
|
||||
- `AI README.md`
|
||||
- `01 Regeln/Obsidian Struktur.md`
|
||||
- `01 Regeln/Screen Agent Workflow.md`
|
||||
- `02 Wireframes/D0 Foundation/D-D0b Layout Standards/D-D0b Layout Brainstorming.md`
|
||||
|
||||
Aenderungen:
|
||||
- HiveGrid-Kontext, Zweck, Abgrenzung und Aenderungsschutz fuer das Subframe UI Standards dokumentiert.
|
||||
- Layout-Bereich als Zielort fuer spaeter validierte D-D0b-Regeln angelegt.
|
||||
- Zentrale HiveGrid-Agent-Regeln erweitert, damit das Regelwerk als Referenz genutzt, aber nicht automatisch geaendert wird.
|
||||
- D-D0b-Brainstorming von alter Referenz-Idee auf aktives Subframe UI Standards umgestellt.
|
||||
|
||||
Offen:
|
||||
- Konkrete Layout-Werte fuer D-D0b muessen weiter einzeln mit David validiert werden.
|
||||
|
||||
### 2026-06-21 17:13:59 Europe/Berlin - Fill Container Todo wieder entfernt
|
||||
|
||||
Kontext:
|
||||
- Der Nutzer ist sich beim Entfernen von `Fill Container` als eigener Variante noch nicht sicher.
|
||||
- Bei Buttons kann Fill-Verhalten ueber Layout/Instanz funktionieren, aber bei Komponenten mit Max Width ist das Verhalten nicht automatisch gleichwertig.
|
||||
- `No Padding` und vergleichbare Extra-Varianten sollen vorerst ebenfalls nicht entfernt werden.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[08_Todo]]
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- Offenen Todo-Punkt `Fill Container als Variante entfernen/pruefen` aus [[08_Todo]] entfernt.
|
||||
- Bestehende Regeln und Entscheidungen zu `Fill Container` unveraendert gelassen.
|
||||
|
||||
Offen:
|
||||
- Thema `Fill Container` spaeter neu bewerten, wenn klar ist, wie Max Width, Instanz-Fill und Komponentenvarianten zusammenspielen sollen.
|
||||
|
||||
### 2026-06-21 14:40:30 Europe/Berlin - Fill Container Todo ergaenzt
|
||||
|
||||
Kontext:
|
||||
- Der Nutzer stellte klar, dass `Fill Container` in vielen Komponenten als eigene Variante nicht gebraucht wird, weil Subframe beim Screen-Bau Instanzen/Layout separat auf volle Breite oder Hoehe setzen kann.
|
||||
- Gleichzeitig sollen Min-/Max-Width und Min-/Max-Height Regeln erhalten bleiben; es geht nicht darum, Groessenbegrenzungen zu entfernen.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[08_Todo]]
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- Todo ergaenzt, um `Fill Container` als eigene Variante komponentenuebergreifend zu pruefen und ggf. zu entfernen.
|
||||
- Im Todo vermerkt, dass [[02_Entscheidungen]], [[04_Gruppenregeln]] und [[07_Global-Rules]] spaeter mitgeprueft werden sollen, weil dort `Fill Container` bzw. `fillContainer` bereits als Regel-/Prop-Konzept vorkommt.
|
||||
|
||||
Offen:
|
||||
- Pruefen, in welchen Subframe-Komponenten `Fill Container` als Variante existiert.
|
||||
- Danach entscheiden, ob `fillContainer` in [[07_Global-Rules]] als Layout-Sonderfall bleibt oder enger formuliert werden muss.
|
||||
|
||||
### 2026-06-20 22:12:56 Europe/Berlin - Change History Zeitformat auf Europe/Berlin umgestellt
|
||||
|
||||
Kontext:
|
||||
- Der Nutzer wollte eine lesbare Zeitzonenangabe statt eines technischen numerischen Offsets.
|
||||
- `Europe/Berlin` ist eindeutig und fuer den Vault besser verstaendlich als ein reiner Offset.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- Pflichtformat auf `YYYY-MM-DD HH:MM:SS Europe/Berlin` umgestellt.
|
||||
- Bestehende Change-History-Ueberschriften auf `Europe/Berlin` normalisiert.
|
||||
- Alte Beschreibungstexte bereinigt, damit nicht mehrere Zeitformat-Varianten nebeneinander stehen.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 21:28:08 Europe/Berlin - Alte History-Eintraege mit geschaetzten Zeiten normalisiert
|
||||
|
||||
Kontext:
|
||||
- Der Nutzer wollte, dass auch aeltere Eintraege im Verlauf zeitlich konsistent aussehen, damit spaetere Leser nicht ueber fehlende Uhrzeiten stolpern.
|
||||
- Die nachgetragenen Zeiten sind bewusst plausible Schaetzungen und keine urspruenglich automatisch erfassten Zeitstempel.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- Alte Eintraege ohne Uhrzeit auf das damalige Zeitformat gebracht.
|
||||
- Separate `Zeit:`-Bloecke entfernt.
|
||||
- Kontext der betroffenen Eintraege um den Hinweis `Zeit nachtraeglich geschaetzt` ergaenzt.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 21:23:10 Europe/Berlin - Change History Zeitformat vereinfacht
|
||||
|
||||
Kontext:
|
||||
- Der Nutzer wollte eine normale Uhrzeit wie bei git, ohne ausgeschriebene Zeitzone und ohne Klammerformat.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- Pflichtformat wurde damals auf ein git-nahes Offset-Format umgestellt.
|
||||
- Bestehenden genau datierten Eintrag vom ausgeschriebenen Zeitzonenformat auf das damalige Offset-Format normalisiert.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 21:18:49 Europe/Berlin - Change History um Uhrzeit und Kontext erweitert
|
||||
|
||||
Kontext:
|
||||
- Der Verlauf soll spaeter genauer nachvollziehbar machen, wann und warum AI-Aenderungen gemacht wurden, ohne unnoetig lang zu werden.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/08_AI-Change-History]]
|
||||
- [[AI/07_AI-References]]
|
||||
|
||||
Aenderungen:
|
||||
- Pflichtformat um Uhrzeit mit Zeitzone erweitert.
|
||||
- Kontext-Feld ergaenzt, damit der Grund einer Aenderung nicht nur aus den Datei-Diffs rekonstruiert werden muss.
|
||||
- Bestehende Eintraege mit Kontext ergaenzt.
|
||||
- Bestehende Eintraege als ohne urspruenglich erfasste Uhrzeit markiert, statt nachtraeglich ungenaue Zeiten zu erfinden.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 21:16:30 Europe/Berlin - AI-Dateien getaggt
|
||||
|
||||
Kontext:
|
||||
- AI-bezogene Dateien sollten in Obsidian ueber einen gemeinsamen Tag schnell auffindbar und gruppierbar sein.
|
||||
- Zeit nachtraeglich geschaetzt.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/07_AI-References]]
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- AI-Dateien mit `#AIReference` getaggt.
|
||||
- In `AI/07_AI-References.md` festgelegt, dass neue AI-Kontext-, AI-Verlauf- und AI-Pflege-Dateien ebenfalls `#AIReference` tragen muessen.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 21:13:00 Europe/Berlin - AI Change History angelegt
|
||||
|
||||
Kontext:
|
||||
- Spaetere AI-Bearbeitungen sollen fuer den Nutzer und fuer neue AI-Sessions nachvollziehbar bleiben.
|
||||
- Die Datei soll verhindern, dass wichtige Aenderungen nur im Chat-Verlauf stehen.
|
||||
- Zeit nachtraeglich geschaetzt.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[AI/08_AI-Change-History]]
|
||||
- [[AI/07_AI-References]]
|
||||
- [[00_Start]]
|
||||
|
||||
Aenderungen:
|
||||
- Neue AI-only Verlauf-Datei angelegt.
|
||||
- Pflichtregel dokumentiert: Nach jeder inhaltlichen Datei-Aenderung muss diese History mit Datum, betroffenen Dateien, Aenderungen und offenen Folgepunkten aktualisiert werden.
|
||||
- `AI/07_AI-References.md` erweitert, damit kuenftige AI-Arbeit die History-Datei zwingend mitpflegt.
|
||||
- `00_Start.md` erweitert, damit die History-Datei im Vault-Einstieg sichtbar ist.
|
||||
|
||||
Offen:
|
||||
- Keine.
|
||||
|
||||
### 2026-06-20 20:45:00 Europe/Berlin - Neue Tabelleninformationen in Komponenten-Index uebernommen
|
||||
|
||||
Kontext:
|
||||
- Eine aktualisierte externe Tabelle wurde als neue Quelle fuer Status, Subframe-Links und zusaetzliche Komponenten geliefert.
|
||||
- Es sollten nur fehlende Eintraege mit finaler Pruefung `Ready`, `Work in Progress` oder `Subframe Problem` uebernommen werden; `Open` sollte ignoriert werden.
|
||||
- Zeit nachtraeglich geschaetzt.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[05_Komponenten-Index]]
|
||||
- `Components/Badge Shortcut.md`
|
||||
- `Components/Error State.md`
|
||||
- `Components/Stepper Progress Steps Horizontal.md`
|
||||
- `Components/Stepper Progress Steps Vertikal.md`
|
||||
- `Components/Context Menu.md`
|
||||
- `Components/Dropdown Menu.md`
|
||||
- `Components/Subbar.md`
|
||||
- `Components/Tree View.md`
|
||||
- `Components/Icon.md`
|
||||
- `Components/Icon With Backround.md`
|
||||
- `Components/Kanban Card.md`
|
||||
- `Components/Kanban Column.md`
|
||||
- mehrere bestehende Dateien unter `Components/`
|
||||
|
||||
Aenderungen:
|
||||
- Fehlende Subframe-Links aus der aktualisierten Tabelle ergaenzt: `Checkbox Group`, `Combobox Autocomplete`, `Number Input`, `Search Input`, `Confirm Dialog`, `Result Dialog`.
|
||||
- Neue Komponenten-Notizen angelegt fuer qualifizierte Eintraege mit finaler Pruefung `Ready`, `Work in Progress` oder `Subframe Problem`.
|
||||
- `Finale Pruefung = Open` bewusst ignoriert.
|
||||
- Konkrete Review-Notizen aus der Tabelle uebernommen, u.a. fuer `Icon Button`, `Text Input`, `Select`, `Table`, `Partial page failure` und `Timeout`.
|
||||
- Vorlaeufige Bereichszuordnungen fuer ungruppierte Tabellenzeilen dokumentiert.
|
||||
|
||||
Offen:
|
||||
- Einige neue/ungruppierte Komponenten brauchen spaeter eventuell eine finale Bereichsentscheidung.
|
||||
- `Icon With Backround` Schreibweise pruefen.
|
||||
|
||||
### 2026-06-20 21:02:00 Europe/Berlin - Form-Input-Regeln und Todo-Liste erweitert
|
||||
|
||||
Kontext:
|
||||
- Die Form-Input-Regeln sollten nach den neu hinzugekommenen Input-Komponenten vervollstaendigt werden.
|
||||
- Zusaetzlich wurde eine operative Todo-Liste gewuenscht, damit offene Pruefpunkte nicht verloren gehen.
|
||||
- Zeit nachtraeglich geschaetzt.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[04_Gruppenregeln]]
|
||||
- [[08_Todo]]
|
||||
- [[02_Entscheidungen]]
|
||||
- [[00_Start]]
|
||||
- [[AI/07_AI-References]]
|
||||
- `Components/Icon Button.md`
|
||||
- `Components/Number Input.md`
|
||||
- `Components/Search Input.md`
|
||||
- `Components/Combobox Autocomplete.md`
|
||||
- `Components/Date Picker.md`
|
||||
|
||||
Aenderungen:
|
||||
- Control-Hoehen-Regel erweitert um `Icon Button`, `Number Input`, `Search Input`, `Combobox Autocomplete` und Single-date `Date Picker`.
|
||||
- Field-Anatomy-Regel um weitere Form Inputs erweitert: `Number Input`, `Multiselect`, `Multiselect Tags`, `Combobox Autocomplete`, `Search Input`, `Date Picker`, `Form Group Input Group`.
|
||||
- Single-date `Date Picker` in Standardbreiten, horizontalem Innenpadding und `Radius Small` ergaenzt.
|
||||
- Betroffene Komponenten-Dateien mit konkreten Gruppenregel-Embeds aktualisiert.
|
||||
- Neue operative Todo-Liste `08_Todo.md` angelegt und in Start- sowie AI-Kontext verlinkt.
|
||||
- Entscheidungslog um Control-Hoehen-Scope, Date-Picker-Basisregeln und Todo-Datei erweitert.
|
||||
|
||||
Offen:
|
||||
- Date Picker Range-Version / Date-von-bis separat klaeren.
|
||||
- `Select` Colour-Mismatch pruefen.
|
||||
- `Table` Doppelung rechts pruefen.
|
||||
- Stepper-State-Enum pruefen.
|
||||
- `Partial page failure` / `Timeout` Zusammenfuehrung klaeren.
|
||||
|
||||
### 2026-06-23 15:50:28 Europe/Berlin - Form Field-Anatomy fuer Label, Help text und Message festgelegt
|
||||
|
||||
Kontext:
|
||||
- Aus einem visuellen Beispiel sollte die Field-Anatomy fuer Form Inputs konkretisiert werden.
|
||||
- Der untere Text unter dem Control sollte verbindlich `message` heissen, nicht `Label` oder `massage`.
|
||||
|
||||
Betroffene Dateien:
|
||||
- [[04_Gruppenregeln]]
|
||||
- [[03_Benennung]]
|
||||
- [[02_Entscheidungen]]
|
||||
- [[00_Start]]
|
||||
- `Components/Text Input.md`
|
||||
- `Components/Form Group Input Group.md`
|
||||
- [[AI/08_AI-Change-History]]
|
||||
|
||||
Aenderungen:
|
||||
- `Form Inputs teilen eine Field-Anatomy` von offen auf entschieden gesetzt.
|
||||
- Field-Reihenfolge definiert: `label`, `helpText`, Control, `message`.
|
||||
- Abstaende festgelegt: Label zu Help text 8px, Help text zu Control 6px, Control zu Message 4px.
|
||||
- `message` als unteren Field-Text mit 12px und Medium festgelegt.
|
||||
- Naming-Regel ergaenzt: Der untere Field-Text heisst in Props, Slots, Layer-Namen und Dokumentation immer `message`.
|
||||
- Komponentenliste der Field-Anatomy-Regel um relevante Form Inputs und bedingte Field-Kontexte wie Checkbox, Radio Group, Switch, Slider und Toggle Group erweitert.
|
||||
- Komponenten-Notizen fuer `Text Input` und `Form Group Input Group` konkretisiert.
|
||||
- Entscheidungslog um die neue Form Field-Anatomy-Entscheidung ergaenzt.
|
||||
- Einstieg in `00_Start.md` von offenem Label-Input-Beispiel auf die entschiedene Field-Anatomy-Regel aktualisiert.
|
||||
|
||||
Offen:
|
||||
- Date Picker Range-Version / Date-von-bis separat klaeren.
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Layout
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Accordion_d2e81e20-863a-4027-826a-991d8910efd9)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Alert_3a65613d-d546-467c-80f4-aaba6a7edcd5)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Avatar+Group_6e7444ab-1d67-47f5-af23-1a2d3ecf1016)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Avatar_bec25ae6-5010-4485-b46b-cf79e3943ab2)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Badge+Feedback_896531e4-54ea-4e5a-8710-c30fc2ce10fb)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Badge+Shortcut_97bdb082-1124-4dd7-a335-b14b822d0157)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Alert_c836f6cf-ff90-4e2d-991f-5cc256be2b6b)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Breadcrumbs_8898334b-a66f-4ee8-8bd1-afcfa8e37cc0)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Actions
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Button+Group_e0379327-50f0-4852-9ae1-ad09b4bf01d3)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Actions nutzen Action-Sprache]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Actions
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Button_3b777358-b86b-40af-9327-891efc6826fe)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Actions nutzen Action-Sprache]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Layout
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_CardIcon_41867f0d-7a6a-4e51-9b08-6cce5a3070b1)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Layout
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_CardImage_1f735087-2381-42e1-8ceb-491a8bc63948)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Checkbox+Group_f9f1b596-c6b3-4d60-aa9a-f34b353f8aa5)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Checkbox_3816e3b5-c48c-499b-b45e-0777c6972523)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Custom+Component_8a1be2ee-c1b7-4407-9c21-6448306d2700)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Confirm+Dialog_7826382f-0b13-45d9-ac8f-238fa6de9121)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Context+Menu_f8a49f07-fa5b-46c8-9399-cbbf0930cc62)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Overlays wegen floating menu behavior.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Utility
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Date+Field_8597ff0e-368d-42c9-b5bc-b22473c41104)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Basis-Regeln gelten erstmal fuer Single Date. Date Range / von-bis braucht eine eigene offene Regelklaerung.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Dropdown+Menu_99951515-459b-4286-919e-a89e7549b43b)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Work in Progress.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Overlays wegen floating menu behavior.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_EmptyState_9fcf03a9-ada9-4a3d-80bc-87ff6ce78023)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Partial+page+failure_db7ae858-338b-4089-8177-2dea8e3b97fe)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Work in Progress.
|
||||
- Varianten: 404, 500 mit Retry, 403 und Offline.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Upload_28a3336a-2bdd-4d1c-8dc1-75c9d6eef452)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,13 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Field-Anatomy folgt [[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]].
|
||||
- Wrapper-Struktur: `label`, `helpText`, Control, `message`.
|
||||
- Abstaende: Label zu Help text 8px, Help text zu Control 6px, Control zu Message 4px.
|
||||
- `message` ist der verbindliche Name fuer den unteren Field-Text; nicht `label`, `helper`, `helpText` oder `massage`.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Form+save+retry_db7627dd-19cb-457b-bbfd-6fe16d620fe0)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Actions
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Icon+Button_af9405b1-8c54-4e01-9786-5aad308224f6)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Mehr Size-Varianten. Focus-Ring schmaler.
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Utility
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Icon+Feedback+with+background_4a18e9fc-cea3-46ca-8c53-2412462342ad)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Name aus Tabelle uebernommen; Schreibweise ggf. spaeter pruefen.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Utility.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Utility
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Icon+Feedback_e24ec5dc-9821-430d-8254-1d72a7d46218)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Utility.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Verification+Code_1a223fbe-dca0-4e44-a383-44bbc7db975d)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,12 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_KanbanCard_27235bcb-e61b-4880-9ae6-3f12d290a434)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Work in Progress.
|
||||
- Code Referenz: Kanban Board.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Patterns.
|
||||
@@ -0,0 +1,12 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_KanbanColumn_bbc08458-14aa-4512-a807-e673a64315ab)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Code Referenz: Kanban Board.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Patterns.
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Typography
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Actions
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Link+Button_a4ee726a-774c-4091-8c49-55b659356024)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Actions nutzen Action-Sprache]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Progress_60964db0-a1bf-428b-b9d5-f34cdf58ea77)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Progress+Circle_91a72105-500a-46e2-997b-7e8cd29b5f81)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Michelle+Test_Skeleton_08dee637-2ba5-4c5d-86d4-a531fd11481f)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Dialog_ca59db17-43fb-4247-8094-3c55162e902d)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Multi+Select+Tags_8e4472a6-e1eb-47a4-8c95-c911e02208bf)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Muss zur gemeinsamen Control-Hoehen-Regel passen: `Small` 32px, `Medium` 36px, `Large` 48px. Die Size-Namen kommen global aus [[03_Benennung]].
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Multi+Select_457d3920-2559-46a2-9dfe-c5b809028265)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Number+Input_06ebc0c5-994e-4eac-b855-f3c6d7f1bbbf)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Offline+banner_2582cb6e-0176-4a5c-b70f-c3bef3c7001d)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Layout
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Default+Page+Layout_a57b1c43-310a-493f-b807-8cc88e2452cf)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Partial+page+failure_db7ae858-338b-4089-8177-2dea8e3b97fe)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Loeschen? Wurde zusammengefuehrt.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Radio+Group_c4b6300e-20b4-4f3e-8b9f-379a046674ca)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Result+Dialog_15b54873-a4f7-4507-a25a-06739f26cf11)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Search+Input_75a35ed3-52c0-4435-8586-e390eb77d723)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,14 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Select_bb88f90b-8c43-4b73-9c2f-3558ce7838f3)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Subframe Problem: Colour mismatch for no apparent reason in the text.
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Layout
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_Divider_d7beb179-8dd1-4635-8e50-38eea311008d)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Sidebar+with+sections_f4047c8b-cfb4-4761-b9cf-fbcae8a9b9b5)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Overlays
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Overlays brauchen klare Verhaltensregeln]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Slider_f4092874-0320-449e-a0c5-b435987c4cfb)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_StatKpi_63f809c7-22ef-47f8-9fb9-0f33b252be3f)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,12 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Stepper_3c5d47dc-1b1a-45d9-b244-18422d7bfb56)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Work in Progress.
|
||||
- Pruefen, ob das Step-Subcomponent ein State-Enum fuer `done`, `current` und `upcoming` hat.
|
||||
- Step states: Completed, Current, Upcoming und Error.
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Vertical+Stepper_bdc0291d-b5be-40c5-ae2f-527a868488b2)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Work in Progress.
|
||||
- Step states: Completed, Current, Upcoming und Error.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=MichelleTest_Subbar_75a855a6-3419-4c84-97bd-540dd2f180a4)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Navigation.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Switch_7a464794-9ea9-4040-b1de-5bfb2ce599d9)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Table_142dfde7-d0cc-48a1-a04c-a08ab2252633)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Subframe Problem: Der Weiler hat eine Doppelung ganz rechts in einem normalen Row.
|
||||
@@ -0,0 +1,9 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Tabs_e1ad5091-8ad8-4319-b1f7-3e47f0256c20)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #DataDisplay
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Tag+_+Label_bb114597-3b27-4c24-a34b-737c67238809)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Data Display braucht Regeln fuer Inhaltszustaende]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,17 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Text+Field_be48ca43-f8e7-4c0e-8870-d219ea11abfe)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen horizontales Innenpadding]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Field-Anatomy folgt [[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]].
|
||||
- Reihenfolge: `label`, `helpText`, Control, `message`.
|
||||
- Abstaende: Label zu Help text 8px, Help text zu Control 6px, Control zu Message 4px.
|
||||
- `message` ist 12px Medium und heisst in Props, Slots, Layer-Namen und Dokumentation immer `message`.
|
||||
@@ -0,0 +1,12 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Text+Area_4ec05ee8-8f1c-46b2-b863-5419aa7f5cce)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen definierte Standardbreiten]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs nutzen Radius Small]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Timeout_ff21411f-6321-4139-bc92-603c625e2380)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Loeschen? Wurde zusammengefuehrt.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Toast_2c7966c2-a95d-468a-83fe-bf196b95be7a)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,11 @@
|
||||
Bereich: #FormInputs
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Toggle+Group_2026f10a-e3cc-4c89-80da-a7259acae3b7)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Control-Hoehen fuer Button und Form Inputs]]
|
||||
- ![[04_Gruppenregeln#Regel: Form Inputs teilen eine Field-Anatomy]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Feedback
|
||||
Subframe: [In Subframe öffnen](https://app.subframe.com/f023064a5ca0/library?component=Tooltip_ccebd1e9-f6ac-4737-8376-0dfacd90c9f3)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Feedback-Severity-Namen muessen konsistent bleiben]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Navigation
|
||||
Subframe: [In Subframe oeffnen](https://app.subframe.com/f023064a5ca0/library?component=Tree+View_4ed46422-ecc3-41e8-8787-e55ee10cdc75)
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
|
||||
## Notizen
|
||||
|
||||
- Finale Pruefung: Ready.
|
||||
- Bereich war in der neuen Tabelle leer; vorlaeufig #Navigation.
|
||||
@@ -0,0 +1,10 @@
|
||||
Bereich: #Patterns
|
||||
Subframe: Noch nicht verlinkt
|
||||
Regeln:
|
||||
- [[03_Benennung]]
|
||||
- [[07_Global-Rules]]
|
||||
- ![[04_Gruppenregeln#Regel: Patterns dokumentieren Flows, nicht einzelne Komponenten]]
|
||||
|
||||
## Notizen
|
||||
|
||||
-
|
||||
@@ -0,0 +1,31 @@
|
||||
# Layout-Regeln
|
||||
|
||||
Status: in Aufbau
|
||||
|
||||
Dieser Bereich ist die Zielstruktur fuer dauerhafte Layout-Regeln der Subframe UI Standards.
|
||||
|
||||
Hier hinein gehoeren nur Regeln, die als systemweite Subframe-/HiveGrid-Regel validiert wurden.
|
||||
|
||||
## Zweck
|
||||
|
||||
Dokumentiert werden koennen spaeter:
|
||||
|
||||
- Layout-Raster und Spacing-Rhythmus
|
||||
- Page-, Card-, Dialog- und Table-Padding
|
||||
- Dialogbreiten
|
||||
- Text-Rhythmus
|
||||
- Form- und Settings-Composition
|
||||
- Table-, List- und State-Layouts
|
||||
|
||||
## Nicht hier hinein
|
||||
|
||||
- unvalidierte Brainstorming-Werte
|
||||
- einzelne Screen-Entscheidungen
|
||||
- Ticket-spezifische Sonderfaelle
|
||||
- Komponenten-Details, die besser in `Components/` oder [[04_Gruppenregeln]] liegen
|
||||
|
||||
## Arbeitsregel
|
||||
|
||||
D-D0b ist aktuell der Arbeitsort fuer Layout-Entscheidungen.
|
||||
|
||||
Erst wenn David eine Entscheidung validiert hat und sie wirklich als systemweite Regel gelten soll, wird sie hier dokumentiert.
|
||||
Reference in new issue
Block a user