2.7 KiB
Editable Action Card
Zweck
Editable Action Card ist ein fachlich neutrales UI-Pattern fuer Karten mit
Titelaktionen, Lesemodus und optionalem Bearbeitungsmodus.
Das Pattern kapselt nur die technische Interaktion:
- Umschalten zwischen Lese- und Bearbeitungsansicht
- Sichtbarer, im Bearbeitungsmodus deaktivierter Bearbeiten-Button
- Abbrechen einer Bearbeitung
- optionale Loeschbestaetigung mit konfigurierbarem Token
- Deaktivieren der Loeschaktion bis zur gueltigen Bestaetigung
- gleichzeitiges Bearbeiten mehrerer Karten
- optionales Ein- und Ausblenden des Karteninhalts
Fachliche Aktionen, API-Aufrufe, Validierung und die Aktualisierung fachlicher Daten bleiben beim owning Modul.
Markup-Vertrag
Eine Karte wird mit data-shared-editable-action-card markiert. Die
Bedienelemente verwenden folgende Attribute:
data-shared-editable-card-editdata-shared-editable-card-canceldata-shared-editable-card-readdata-shared-editable-card-form- optional
data-shared-editable-card-collapsible - optional
data-shared-editable-card-collapsed - optional
data-shared-editable-card-toggle - optional
data-shared-editable-card-delete - optional
data-shared-editable-card-delete-confirmation - optional
data-shared-editable-card-delete-input - optional
data-shared-editable-card-delete-submit - optional
data-shared-editable-card-delete-cancel
Der Bearbeiten-Button bleibt im Titelsegment sichtbar. Im Bearbeitungsmodus
wird er deaktiviert (disabled, aria-disabled="true" und
sg-button--inactive); die Aktionen zum Abbrechen und Speichern bleiben aktiv.
Das Loesch-Token wird je Karte mit
data-shared-editable-delete-token konfiguriert. Die Standardaktion fuer das
Loeschen bleibt im owning Modul und verwendet den bestehenden fachlichen
Handler.
Optionales Ein- und Ausblenden
Eine Karte mit data-shared-editable-card-collapsible kann ihren Inhalt
ein- und ausblenden. Mit data-shared-editable-card-collapsed wird der initial
eingeklappte Zustand markiert. Der Toggle verwendet die Beschriftungen
„Anzeigen“ und „Verbergen“. Beim Wechsel in den Bearbeitungsmodus wird der
Inhalt eingeblendet und der Toggle deaktiviert. Nach dem Bearbeiten bleibt der
aktuelle Sichtbarkeitszustand erhalten.
Die zentrale Komponente stellt dafür setVisibility(card, visible),
isVisible(card) und setToggleEnabled(card, enabled) bereit. Fachmodule
verwenden diese Methoden nur für fachliche Folgeaktionen wie das erneute
Rendern nach dem Speichern.
Nutzung im Lager
Im Lager-Drawer verwenden die aktive Charge und offene Chargen das Pattern. Rein lesende Karten, insbesondere historische und virtuelle Chargen, bleiben beim bestehenden Content-Card-Pattern.