2.7 KiB
2.7 KiB
UI Boundaries (MUST / MUST NOT)
Listen-Standard
- MUST Listen ueber
initStandardListPage(...)initialisieren. - MUST Filter-Toolbar ueber zentrale Helper/Partials rendern.
- MUST aktive Chips/Drawer-Verhalten ueber Standard-Contracts laufen lassen.
- MUST NOT direkt
gridFiltersFromSchema(...)oderinitListFilterExperience(...)in Listen-Templates verwenden. - MUST NOT Legacy-Filter-Toggle-Markup (
data-toolbar-toggle,data-filter-overflow,data-filter-toggle) neu einbauen. - MUST rowInteraction-Standard fuer Listen mit Row-Navigation beibehalten (sichtbare Action-Spalte + Enter + Doppelklick-Fallback).
- MUST pageSize-Standard beibehalten (10/25/50/100, Toolbar rechts, URL > localStorage > default).
Detailseiten-Standard
- MUST Hauptformular mit
data-standard-detail-form="1"markieren. - MUST Unsaved/Shortcut/Dirty-State ueber
initStandardDetailPage(...)nutzen. - MUST Detail-Aktionen ueber Action-Policy-Contract (
data-detail-action-policy,data-detail-action-kind,data-detail-confirm-message) steuern. - MUST NOT inline
confirm(...)(onclick/onsubmit) auf standardisierten Detailseiten nutzen.
Confirm + Telemetry Standard
- MUST Confirm-Dialoge zentral ueber den globalen Confirm-Service abwickeln.
- MUST NOT
window.confirm(...)in App-JS oder inline HTML-Handlern verwenden. - MUST relevante Frontend-Warnpfade zentral ueber Frontend-Telemetrie erfassen.
- MUST NOT relevante UX-/Fehlerpfade nur als Console-Warnung implementieren.
Frontend Page-Module Hard Cut
- MUST Seiteninitialisierung ueber dedizierte Module unter
web/js/pages/*umsetzen. - MUST Page-Config ueber
script[type="application/json"]+readPageConfig(...)bereitstellen/lesen. - MUST alle JS-
srcinpages/**undtemplates/**ueberassetVersion('...js...')laden. - MUST NOT inline
<script type="module">...</script>inpages/**odertemplates/**verwenden.
Shared Partials
- MUST Listen-Titlebar ueber
templates/partials/app-list-titlebar.phtmlrendern. - MUST List-Tabs ueber
templates/partials/app-list-tabs.phtmlrendern. - MUST Purge-Action ueber
templates/partials/app-list-purge-action.phtmlrendern. - MUST Detail-Validation-Summary ueber
templates/partials/app-details-validation-summary.phtmlrendern.
RBAC in Templates
- MUST UI-Capabilities nur ueber
$viewAuthlesen. - MUST NOT
can('...')in Templates verwenden.
CSS Boundaries
- MUST Styles moeglichst lokal in
web/css/components,web/css/layoutoderweb/css/pageshalten. - MUST NOT globale unscoped Overrides ohne klaren Scope einfuehren.
- MUST Vendor-Overrides nur in
web/css/vendor-overrides/**pflegen. - MUST bestehende CSS-Variablen bevorzugen statt neue Inline-Farbwerte zu verteilen.