WP-13 Flutter spec
Patient screens at Stitch parity. Decision: ADR 0012. Kit: design-system.md. Wire: exchange/patient-screens.md.
Usage
The patient role shell opens these screens. Each screen is built from lib/presentation/kit/ widgets and AfiaTheme. Labels come from AppLocalizations. New keys live in l10n-src/patient.json. Folders: lib/presentation/patient/home/, lib/presentation/patient/visits/, lib/presentation/patient/record/, lib/presentation/patient/billing/, lib/presentation/patient/health/.
| Screen | Folder | Stitch folder |
|---|---|---|
PatientHomeScreen | home/ | cran_dashboard_patient_afia |
ClinicianSearchScreen | visits/ | recherche_de_m_decin_mobile_afia |
SlotPickerScreen | visits/ | cr_neaux_disponibles_mobile_afia |
BookVisitScreen | visits/ | r_servation_de_rendez_vous_mobile_afia |
VisitConfirmedScreen | visits/ | confirmation_de_rendez_vous_mobile_afia |
MyVisitsScreen | visits/ | mes_rendez_vous_mobile_afia |
ChangeVisitScreen | visits/ | modification_de_rendez_vous_mobile_afia |
CancelVisitScreen | visits/ | annulation_de_rendez_vous_mobile_afia |
WaitingRoomScreen | visits/ | salle_d_attente_virtuelle_mobile_afia |
NetworkIssueScreen | visits/ | gestion_des_incidents_r_seau_mobile_afia |
VisitEndedScreen | visits/ | fin_de_consultation_mobile_afia |
RecordSummaryScreen | record/ | synth_se_patient_mobile_afia |
ExamsScreen | record/ | examens_mobile_afia |
ExamResultScreen | record/ | r_sultats_d_examen_mobile_afia |
SharedDocumentsScreen | record/ | documents_partag_s_mobile_afia |
PaymentHistoryScreen | billing/ | historique_des_paiements_afia |
PayVisitScreen | billing/ | payer_la_consultation_afia |
PaymentMethodsScreen | billing/ | moyens_de_paiement_afia |
PaymentDoneScreen | billing/ | confirmation_de_paiement_afia |
InvoiceDetailScreen | billing/ | d_tail_de_la_facture_afia |
HealthAlertsScreen | health/ | alertes_de_sant_afia |
MyProfileScreen | health/ | mon_profil_afia |
HelpScreen | health/ | aide_et_support_afia |
Domain
None. Screens import the domain types from WP-12 and the owner packages. They do not add domain types.
Models
None. A screen may hold a small view state class beside it. It does not parse JSON.
Data sources
None. Screens call repositories, not data sources.
Repositories
Screens call:
- CareGateway
- BookingRepository
- PatientProfileRepository
- patient results repository
- billing and monitoring calls in CareGateway
A missing field is a WP-12 request, not a local fix.
Does not do
Nni, charts, the follow-up programme, video controls, ai assistants, voice, and forums. Domain or data code. Theme changes. Copying the side-by-side French and Arabic Stitch text.