Fix onboarding UX and add replaceable journey analytics

Make recipient changes explicit, prioritize verification retry, and label simulated outcomes prominently. Add shared typed analytics with bounded dummy capture, correlated service events and documented PostHog adapter contract. Validate privacy, retries, abandonment, keyboard recovery and accessibility. Related to #12.
This commit is contained in:
Stephan D committed 2026-09-12 08:36:45 +02:00
1 parent bf7778f312
commit f1cbf64282
28 files changed
+1158 -64

No files matched your search

@@ -461,7 +461,7 @@ abstract class AppLocalizations {
/// No description provided for @verificationRetry.
///
/// In en, this message translates to:
/// **'Try again'**
/// **'Retry verification'**
String get verificationRetry;
/// No description provided for @verificationBack.
@@ -493,6 +493,48 @@ abstract class AppLocalizations {
/// In en, this message translates to:
/// **'CONFIRM YOUR EMAIL'**
String get verificationStep;
/// No description provided for @demoSentHeading.
///
/// In en, this message translates to:
/// **'Demo email prepared.'**
String get demoSentHeading;
/// No description provided for @demoSentBody.
///
/// In en, this message translates to:
/// **'No email was sent. Use the demo confirmation below to preview the next step.'**
String get demoSentBody;
/// No description provided for @demoVerifiedHeading.
///
/// In en, this message translates to:
/// **'Demo verification\ncomplete.'**
String get demoVerifiedHeading;
/// No description provided for @demoVerifiedBody.
///
/// In en, this message translates to:
/// **'You’ve previewed email confirmation. No account was verified. Return to login to explore the demo.'**
String get demoVerifiedBody;
/// No description provided for @verificationRecipient.
///
/// In en, this message translates to:
/// **'Recipient'**
String get verificationRecipient;
/// No description provided for @verificationChangeEmail.
///
/// In en, this message translates to:
/// **'Change email'**
String get verificationChangeEmail;
/// No description provided for @demoResend.
///
/// In en, this message translates to:
/// **'Prepare demo email again'**
String get demoResend;
}
class _AppLocalizationsDelegate