refactor(frontend): ActionMenu als standardisierte Komponente (DRY) + Rule: Keine Inline-Buttons #193
Labels
No labels
component/backend
component/docs
component/e2e
component/frontend
component/infra
component/keycloak
prio/high
prio/low
prio/medium
type/bug
type/chore
type/feature
type/refactor
type/test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
WompSchmiede/FamilienFeierPlaner#193
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Einordnung
Beschreibung
Das Dropdown-Menue-Pattern fuer Actions (Drei-Punkt-Button) ist aktuell 3x inline dupliziert in
frontend/src/routes/app/events/[eventId]/+page.svelteund wird in 2 weiteren Seiten als Inline-Buttons (ohne Menue) realisiert.Projektregel (neu, in AGENTS.md)
Der Frontend-AGENTS.md-Eintrag unter "App-Template-Komponenten" wird erweitert.
Betroffene Actions-Spalten (vollstaendige Migration)
events/[eventId]/+page.svelte:946-1035events/[eventId]/+page.svelte:1118-1160events/[eventId]/+page.svelte:1238-1271persons/+page.svelte:130-137groups/[groupId]/+page.svelteHinweis fuer #4+#5: Die Aktionen "Bearbeiten" und "Einladen" werden erst in #195 (#4+#5) bzw. #191 (#4) ergaenzt. In diesem Issue werden zunaechst die bestehenden Aktionen (Einladen/Archivieren/Entfernen) ins ActionMenu ueberfuehrt.
Loesungsvorschlag
ActionMenu-Komponente infrontend/src/lib/components/action-menu.svelteInterna:
variant="ghost",h-7 w-7)fixedviagetBoundingClientRectwie bisherdiv.fixed.inset-0.z-40zum Schliessen bei Klick ausserhalbonmouseenter/onmouseleave, Richtungs-Abwaegungleft-full/right-fullAGENTS.md(root) erweitern:docs/design/04-frontend-architektur.mderweitern:Neuer Tabellen-Eintrag unter "Komponenten":
Neuer Abschnitt "Modals / Dialoge" (Hinweis: PersonEditModal wird in #195 ergaenzt):
Abhaengigkeiten
$state,$derived,$props)Buttonaus$lib/components/ui/button.svelteVorteile
<ActionMenu items={...}/>pro StelleDokumentation
frontend/AGENTS.md— Rule fuer Actions-Spaltendocs/design/04-frontend-architektur.md— ActionMenu in Tabelle, neuer "Modals"-Abschnittfrontend/src/lib/components/action-menu.svelte(Code-Selbsterklaerung, keine Kommentare)Dateien
frontend/src/lib/components/action-menu.sveltefrontend/src/routes/app/events/[eventId]/+page.sveltefrontend/src/routes/app/persons/+page.sveltefrontend/src/routes/app/groups/[groupId]/+page.sveltefrontend/AGENTS.mddocs/design/04-frontend-architektur.mdrefactor(frontend): ActionMenu als standardisierte Komponente (DRY)to refactor(frontend): ActionMenu als standardisierte Komponente (DRY) + Rule: Keine Inline-Buttons