translateAuthBlocMessage function

String translateAuthBlocMessage(
  1. String? messageKey,
  2. CoreLocalizations localizations
)

Translate Auth BLoC message keys to localized strings

Implementation

String translateAuthBlocMessage(
  String? messageKey,
  CoreLocalizations localizations,
) {
  if (messageKey == null || messageKey.isEmpty) return '';

  // Handle direct l10n keys with parameters
  if (messageKey.startsWith('passwordChangeSuccess:')) {
    final parts = messageKey.split(':');
    if (parts.length >= 2) {
      final username = parts[1];
      return localizations.passwordChangeSuccess(username);
    }
  }

  switch (messageKey) {
    case AuthBlocMessageKeys.loginSuccess:
      return localizations.authLoginSuccess;
    case AuthBlocMessageKeys.loginFailure:
      return localizations.authLoginFailure;
    case AuthBlocMessageKeys.logoutSuccess:
      return localizations.authLogoutSuccess;
    case AuthBlocMessageKeys.registerSuccess:
      return localizations.authRegisterSuccess;
    case AuthBlocMessageKeys.registerFailure:
      return localizations.authRegisterFailure;
    case AuthBlocMessageKeys.passwordResetSuccess:
      return localizations.authPasswordResetSuccess;
    case AuthBlocMessageKeys.passwordResetFailure:
      return localizations.authPasswordResetFailure;
    case AuthBlocMessageKeys.updateSuccess:
      return localizations.authUpdateSuccess;
    case AuthBlocMessageKeys.updateFailure:
      return localizations.authUpdateFailure;
    default:
      return messageKey;
  }
}