changePassword method

  1. @override
Future<ForgotPassword> changePassword({
  1. required String token,
  2. required String currentPassword,
  3. required String password,
  4. required String passwordConfirmation,
})
override

Cambio de contraseña autenticado (distinto del flujo de "olvidé mi contraseña", que no requiere sesión).

Implementation

@override
Future<ForgotPassword> changePassword({
  required String token,
  required String currentPassword,
  required String password,
  required String passwordConfirmation,
}) async {
  final response = await dio.post(
    '/microsite/passwords/change',
    options: Options(headers: {'Authorization': 'Bearer $token'}),
    data: {
      "api_key": Environment.apiKey,
      "campaign": Environment.campaign,
      "participation": {
        "current_password": currentPassword,
        "password": password,
        "password_confirmation": passwordConfirmation,
      },
    },
  );
  final responseData = _parseResponse(response.data);
  return AuthMapper.resetPasswordToEntity(ResetPasswordResponse.fromJson(responseData));
}