verifyOtp method

  1. @override
Future<bool> verifyOtp(
  1. String otp
)
override

Implementation

@override
Future<bool> verifyOtp(String otp) async {
  try {
    final userEmail = (await UserManager().getUser())!.email;
    final ResponseModel<OtpRespponse> responseModel =
        await ResponseModel.fromApiResponse<OtpRespponse>(
      () async => await AuthApiService().verifyOtp(
        OtpRequest(otpCode: otp, email: userEmail),
      ),
      (body) => OtpRespponse.fromJson(body),
    );
    if (responseModel.status == ResponseStatus.success) {
      await UserManager().saveUser(responseModel.response!.data!.user!);
      return responseModel.response!.status!;
    } else if (responseModel.status == ResponseStatus.responseError ||
        responseModel.status == ResponseStatus.nullResponse) {
      SnackbarManager().showAlertSnackbar(responseModel.error!);
    }
  } on Exception catch (e) {
    ExceptionHandler().handle(e);
  }
  return false;
}