confirmVerificationCode method

Future<void> confirmVerificationCode(
  1. String attribute,
  2. String code
)

Confirms the given attribute with the given code

Implementation

Future<void> confirmVerificationCode(
  String attribute,
  String code,
) async {
  emit(state.startLoading(confirmVerificationCodeLoading));

  try {
    await provider.confirmVerificationCodeForAttribute(
      attribute,
      code,
    );
    emit(state.copyWith(
      resetAwaitingVerification: true,
    ));
  } on InvalidCodeException catch (error, stackTrace) {
    emit(state.addMessage(
      Message.error(_localizations.invalidVerificationCode),
      error,
      stackTrace,
    ));
  } on ExpiredCodeException catch (error, stackTrace) {
    emit(state.addMessage(
      Message.error(_localizations.expiredVerificationCode),
      error,
      stackTrace,
    ));
  } on ConfirmUserAttributeException catch (error, stackTrace) {
    emit(state.addMessage(
      Message.error(
        _localizations.confirmUserAttributeError(error.message),
      ),
      error,
      stackTrace,
    ));
  } finally {
    emit(state.endLoading(confirmVerificationCodeLoading));
  }
}