feat(onboarding): réordonne le wizard en compte → préférences → foyer → sources (#129) #139
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/onboarding-wizard-order"
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?
Contexte
Closes #129(puce 2 de #3). Ordre voulu : compte → préférences (régime + allergènes) → foyer → sources (uniquement si le foyer vient d'être créé).Avant : compte → régime → foyer → [sources si créé ou rejoint] → allergènes. Les allergènes étaient le dernier écran et l'étape sources apparaissait aussi pour un foyer rejoint.
Changements
Navigation —
SignupPage→/onboarding/regime(inchangé) ;regime→allergenes→foyer. L'étapefoyerdécide de la suite :goToNextStep(createdHousehold)route vers/onboarding/sourcesseulement si le foyer a été créé, sinon/(rejoindre, passer, ou la branche défensive « déjà un foyer » après un retour navigateur — impossible d'y distinguer créé de rejoint, et l'étape sources s'auto-saute de toute façon si rien à configurer).OnboardingSourcesPagedevient la dernière étape : submit / court-circuit « aucune source » / catch vont tous vers/.Compteurs — nouveau module
pages/onboarding/onboarding-steps.ts: la séquence des étapes +onboardingStepIndicator(step, { hasSources? }). Ils étaient codés en dur page par page (un réordonnancement les cassait tous) et l'étape allergènes faisait ungetCurrentHouse()au montage juste pour deviner « 3 sur 3 » ou « 4 sur 4 » — supprimé, elle précède maintenant le foyer. régime / allergènes / foyer sont en amont du choix « créer vs rejoindre/passer » → « sur 3 » ; seule l'étapesources, jamais atteinte hors du chemin à 4 étapes, affiche « 4 sur 4 ».Libellés —
OnboardingAllergensPage: bouton « Continuer » (plus « Terminer »).OnboardingSourcesPage: bouton « Terminer ». Zéro nouvelle clé i18n (onboarding.continue/onboarding.finishexistent déjà), titres régime/allergènes conservés séparés (2 sous-écrans, pas de fusion).Doc —
App.tsx(blocs<Route>réordonnés + commentaire du groupe/onboarding/*),specs/frontend-architecture.md(ordre, diagramme mermaid, condition « created only »).Tests
onboarding.featureréécrit — 4 parcours :Compteurs vérifiés sur chaque chemin.
onboardingStepIndicatorest couvert de bout en bout par ces assertions (tous les steps, chemins avec et sans sources).Vérification locale
pnpm lint✓ ·pnpm build✓ · Cypress :onboarding.feature4/4, régressionauth/preferences/household-settings16/16.🤖 Generated with Claude Code