mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 19:41:09 +02:00
Erweiterung von M7a um events als zweites Auto-Sync-Target
(docs/plans/forms-module.md M7 — Teil 2):
- AutoSyncConfig erweitert mit optionalem `targetId` — speichert die
eventId, zu der RSVPs angelegt werden sollen.
- lib/auto-sync.ts:
- buildEventGuestFromAnswers (pure): mapping form-field-id →
guest-key (name/email/phone/note/plusOnes). plusOnes wird zu
non-negativem Integer gecoerct, Negative + non-numeric werden
silently gedroppt.
- dispatchTarget('events'): wirft wenn targetId fehlt; ruft
eventGuestsStore.addGuest mit rsvpStatus='yes' (Form-Submit
impliziert Zusage). Mindest-Voraussetzung: name muss gesetzt
sein, sonst null (verhindert leere Gast-Zeilen).
- feedback / library / space_member bleiben strukturell mit
"noch nicht implementiert"-throw — feedback ist eigene Domain
(kein Dexie), library + space_member brauchen mehr Architektur.
- lib/auto-sync.spec.ts: 4 neue Tests (direct mapping, plusOnes
parsing, empty/null skip, unknown-key drop). Total Forms-Tests
jetzt 26/26.
- SettingsPanel: SUPPORTED_TARGETS auf [contacts, events] erweitert.
Bei target='events': event-picker dropdown (nutzt useAllEvents),
Hint wenn kein Event gewählt, Mapping-Grid mit GuestKey-Optionen
(name, email, phone, note, Begleitpersonen). Target-Switch löscht
altes mapping (verschiedene Targets, verschiedene Keys).
- 13 neue i18n-Keys × 5 Locales (autoSync.targetEvents,
eventsHint, eventPicker*, eventNeeded, guestKey.*).
Use-Case: Vereins-Sommerfest. Form mit "Wie heißt du? / Email /
Bringst du jemanden mit?" → autoSync zu Event "Sommerfest 2026".
Submit erzeugt automatisch Gast mit RSVP=yes. Kein manuelles
Übertragen mehr nötig — direkter Pipeline-Vorteil gegenüber
Typeform/Tally.
svelte-check 0 errors. i18n-parity 6415 keys.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| api | ||
| calc/packages/shared | ||
| calendar | ||
| cards | ||
| chat | ||
| citycorners | ||
| contacts | ||
| docs | ||
| food | ||
| guides | ||
| inventory | ||
| mana | ||
| manavoxel | ||
| memoro | ||
| moodlit | ||
| mukke | ||
| news | ||
| photos | ||
| picture | ||
| plants | ||
| presi | ||
| questions | ||
| quotes/packages/content | ||
| skilltree | ||
| storage | ||
| times | ||
| todo | ||
| traces | ||
| uload | ||