fix(mobile): URL changement mdp corrigée + v3.0 — multi-org, AppAuth, sécurité prod
Auth: - profile_repository.dart: /api/auth/change-password → /api/membres/auth/change-password Multi-org (Phase 3): - OrgSelectorPage, OrgSwitcherBloc, OrgSwitcherEntry - org_context_service.dart: headers X-Active-Organisation-Id + X-Active-Role Navigation: - MorePage: navigation conditionnelle par typeOrganisation - Suppression adaptive_navigation (remplacé par main_navigation_layout) Auth AppAuth: - keycloak_webview_auth_service: fixes AppAuth Android - AuthBloc: gestion REAUTH_REQUIS + premierLoginComplet Onboarding: - Nouveaux états: payment_method_page, onboarding_shared_widgets - SouscriptionStatusModel mis à jour StatutValidationSouscription Android: - build.gradle: ProGuard/R8, network_security_config - Gradle wrapper mis à jour
This commit is contained in:
@@ -141,6 +141,78 @@ class MembreDeactivated extends MembresState {
|
||||
List<Object?> get props => [membre];
|
||||
}
|
||||
|
||||
/// État de succès après affectation à une organisation
|
||||
class MembreAffecte extends MembresState {
|
||||
final MembreCompletModel membre;
|
||||
|
||||
const MembreAffecte(this.membre);
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membre];
|
||||
}
|
||||
|
||||
/// État de succès après réinitialisation du mot de passe
|
||||
/// [membre] contient motDePasseTemporaire renseigné (retourné une seule fois)
|
||||
class MotDePasseReinitialise extends MembresState {
|
||||
final MembreCompletModel membre;
|
||||
|
||||
const MotDePasseReinitialise(this.membre);
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membre];
|
||||
}
|
||||
|
||||
// ── États cycle de vie adhésion ──────────────────────────────────────────
|
||||
|
||||
/// Invitation envoyée avec succès
|
||||
class MembreInvite extends MembresState {
|
||||
final String membreId;
|
||||
final String organisationId;
|
||||
final String nouveauStatut;
|
||||
|
||||
const MembreInvite({
|
||||
required this.membreId,
|
||||
required this.organisationId,
|
||||
required this.nouveauStatut,
|
||||
});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membreId, organisationId, nouveauStatut];
|
||||
}
|
||||
|
||||
/// Adhésion activée
|
||||
class AdhesionActivee extends MembresState {
|
||||
final String membreId;
|
||||
final String nouveauStatut;
|
||||
|
||||
const AdhesionActivee({required this.membreId, required this.nouveauStatut});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membreId, nouveauStatut];
|
||||
}
|
||||
|
||||
/// Adhésion suspendue
|
||||
class AdhesionSuspendue extends MembresState {
|
||||
final String membreId;
|
||||
final String nouveauStatut;
|
||||
|
||||
const AdhesionSuspendue({required this.membreId, required this.nouveauStatut});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membreId, nouveauStatut];
|
||||
}
|
||||
|
||||
/// Membre radié
|
||||
class MembreRadie extends MembresState {
|
||||
final String membreId;
|
||||
final String nouveauStatut;
|
||||
|
||||
const MembreRadie({required this.membreId, required this.nouveauStatut});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [membreId, nouveauStatut];
|
||||
}
|
||||
|
||||
/// État avec statistiques
|
||||
class MembresStatsLoaded extends MembresState {
|
||||
final Map<String, dynamic> stats;
|
||||
|
||||
Reference in New Issue
Block a user