verify method

dynamic verify()

Implementation

verify() async {
  if (_controller.text.trim().length != widget.otpLength) {
    return;
  }

  if (widget.demoPhoneNumber != null &&
      widget.demoOTP != null &&
      widget.phoneNumber == widget.demoPhoneNumber &&
      _controller.text == widget.demoOTP) {
    Navigator.pop(
      context,
      widget.phoneNumber,
    );
  } else {
    try {
      final res = await widget.sms.otp.verify(
        VerifyOtpPayload(
          phoneNumber: widget.phoneNumber,
          token: widget.token,
          otp: _controller.text,
        ),
      );

      if (mounted) {
        Navigator.pop(
          context,
          res.data?.phoneNumber,
        );
      }
    } catch (e) {
      print(e);
    }
  }
}