Caregiver & Next-of-Kin
Feature Detail
Description
The Caregiver & Next-of-Kin feature allows coordinators and peer mentors to register multiple caregivers per contact, each with name, relationship type, and contact details. Caregivers appear as a dedicated section within the contact detail screen with add, edit, and delete actions gated by role. Data is stored in the local Drift database for offline access and synced to the backend via the mutation outbox. Organization Labels apply tenant-specific terminology - such as PÄrÞrende, Foresatte, or NÊrmeste omsorgsperson - without requiring code changes. All caregiver data is encrypted at rest via SQLCipher consistent with the broader offline security model.
Sources & reasoning
Lines 121, 161, and 438 form a clear provenance chain: the requirement is stated (121), marked MUST in Phase 1 (161), and explicitly restated as Phase 1 MUST (438). Blueprint places this in Contacts (not Relatives Database) because it concerns caregivers linked to existing contacts, not a standalone relatives registry. Phase 1 = MVP by ordinal mapping.
-
docs/source/likeperson.md · line 121Barnekreftforeningen jobber primÊrt med familier rundt barn med kreft, ikke kun med de berÞrte selv. Appen mÄ stÞtte registrering av pÄrÞrende (foreldre, sÞsken, nÊrmeste omsorgsperson) som egne kontaktsubjekter knyttet til samme sak.
-
docs/source/likeperson.md · line 161PĂ„rĂžrende database | â | - | - | - | â | MUST (Barnekreft) | 1
-
docs/source/likeperson.md · line 438PÄrÞrende-database er Fase 1 MUST for Barnekreftforeningen
Analysis
Barnekreftforeningen identified caregiver registration as a Phase 1 MUST requirement because their peer mentor program works primarily with families around children with cancer. Without the ability to record caregivers, peer mentors cannot maintain a complete picture of the family's support needs, directly undermining the program's effectiveness. Barnekreftforeningen cannot adopt the platform without this capability at initial release. Beyond Barnekreftforeningen, caregiver relationships matter for NHF's user base of stroke patients and people with cognitive challenges, whose families are actively involved in their care. Capturing this data inside the platform eliminates reliance on personal phone books, improving data security and continuity when peer mentors change.
Caregiver records are modelled as a separate Drift table (contact_caregivers) with a foreign key to the contacts table, supporting one-to-many relationships per contact. The Flutter UI renders caregivers as an expandable section inside the contact detail screen, with add, edit, and delete actions resolved from JWT role claims at build time. Each caregiver form uses AppTextField and AppButton widgets from the design token system for WCAG 2.2 AA compliance. Organization Labels are extended to caregiver terminology and returned in the backend bootstrap payload, cached offline. Offline writes use the mutation outbox pattern: written to Drift first, enqueued for server sync, rolled back on terminal failure. All data is encrypted at rest via SQLCipher, consistent with the platform-wide offline security model.
Quality Assurance
Coordinator (primary) · Peer Mentor (same flow)Coordinator
Quick UAT
- Logg inn som Koordinator. GÄ til Kontakter-fanen og Äpne en eksisterende kontakt.
- Bla ned til PÄrÞrende-seksjonen i kontaktdetaljvisningen og trykk +Legg til pÄrÞrende.
- Fyll inn navn, velg relasjonstype (f.eks. Forelder) og legg til telefonnummer. Trykk Lagre.
- Bekreft at den nye pÄrÞrende vises i PÄrÞrende-listen med korrekt navn, relasjonstype og kontaktinformasjon.
- Trykk Rediger pÄ den nyopprettede posten, endre relasjonstypen og trykk Lagre. Bekreft at endringen er lagret.
- Trykk Slett pÄ posten, bekreft slettingen i dialogboksen og sjekk at posten er fjernet fra listen.
Quick UAT â Accessibility
-
Logg inn som Koordinator. GÄ til Kontakter-fanen og Äpne en eksisterende kontakt.
- Screen reader Bunnavigasjon annonseres med faneroller; kontaktliste-overskrift leses opp ved innlasting.
- Keyboard / focus Tab navigerer bunnavigasjon; Enter Äpner Kontakter; piltaster navigerer liste; Enter Äpner kontakt.
- Focus visibility Synlig fokusring pÄ aktiv bunnav-fane og pÄ valgt kontaktkort.
-
Bla ned til PÄrÞrende-seksjonen i kontaktdetaljvisningen og trykk +Legg til pÄrÞrende.
- Screen reader Seksjonstittel 'PÄrÞrende' leses opp som overskrift; +Legg til pÄrÞrende-knapp er merket med tilgjengelig navn.
- Keyboard / focus Tab navigerer til seksjonsoverskriften og videre til +Legg til pÄrÞrende-knappen; Enter aktiverer.
- Focus visibility Fokus flyttes automatisk til fÞrste felt i skjemaet nÄr det Äpnes.
- Touch target â„ 24Ă24 CSS px for +Legg til-knapp.
-
Fyll inn navn, velg relasjonstype (f.eks. Forelder) og legg til telefonnummer. Trykk Lagre.
- Screen reader Hvert inndatafelt er merket med synlig label lest opp av skjermleser; pÄkrevde felt annonseres som 'obligatorisk'.
- Keyboard / focus Tab navigerer mellom feltene i logisk rekkefÞlge; Space/Enter Äpner relasjonstypevelger.
- Focus visibility Lagre-knapp har synlig fokusring; feilmeldinger kobles til relevante felt via aria-describedby.
- Contrast 4.5:1 for alle feltetiketter og plassholdertekst.
-
Bekreft at den nye pÄrÞrende vises i PÄrÞrende-listen med korrekt navn, relasjonstype og kontaktinformasjon.
- Screen reader Nytt listeelement annonseres via polite live region etter lagring.
- Live region 'PÄrÞrende lagt til.' annonseres som polite live region ved vellykket lagring.
- Zoom Listen er lesbar og kortene brytes korrekt ved 200 % zoom.
-
Trykk Rediger pÄ den nyopprettede posten, endre relasjonstypen og trykk Lagre. Bekreft at endringen er lagret.
- Screen reader Rediger-knapp er merket med 'Rediger [navn]' for Ă„ skille mellom flere poster i listen.
- Keyboard / focus Tab navigerer til Rediger-knapp for riktig post; Enter Äpner redigeringsskjema.
- Focus visibility Fokus returnerer til det redigerte listeelementet etter lagring.
- Live region 'PÄrÞrende oppdatert.' annonseres som polite live region.
-
Trykk Slett pÄ posten, bekreft slettingen i dialogboksen og sjekk at posten er fjernet fra listen.
- Screen reader Bekreftelsesdialog annonseres som dialog-rolle med knappene 'Slett' og 'Avbryt' tydelig merket.
- Keyboard / focus Fokus fanges i dialogen; Escape avbryter; Enter pÄ Slett-knapp bekrefter.
- Focus visibility Etter sletting returnerer fokus til PÄrÞrende-seksjonens +Legg til-knapp eller forrige element.
- Live region 'PÄrÞrende slettet.' annonseres som polite live region.
Role Boundaries
2 role(s) must NOT access this feature-
Global Administrator
Global Administrator har ikke tilgang til Meander Mobile App; skjermen finnes ikke i navigasjonen og deep-link returnerer 401/redirect til admin-portal.
-
Prospective Organization Representative
Rollen har ikke brukerkonto i den operative plattformen; innlogging avvises og skjermen er utilgjengelig.
Expected End State
PÄrÞrende-posten er lagret kryptert i lokal Drift/SQLCipher-database, vises i PÄrÞrende-seksjonen pÄ kontaktdetaljsiden, og er lagt i mutasjonsoutboxen for synkronisering til backend nÄr tilkobling er tilgjengelig.
Components (21)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.