signUp method

  1. @override
Future<bool> signUp(
  1. SignUpRequest signUpRequest
)
override

Use pass the request from controller as below

Implementation

// /        SignUpRequest(
// /         fullName: fullName,
// /         phone: phone,
// /         email: email,
// /         password: password,
// /         passwordConfirmation: password,
// /         deviceToken: FCMNotificationService.fcmDeviceToken,
// /         deviceType: 'mobile',
// /         platform: Platform.isIOS ? "ios" : 'android',
// /       ),
@override
Future<bool> signUp(
  SignUpRequest signUpRequest,
) async {
  try {
    SignUpRequest request = SignUpRequest(
      fullName: signUpRequest.fullName,
      phone: signUpRequest.phone,
      email: signUpRequest.email,
      password: signUpRequest.password,
      passwordConfirmation: signUpRequest.password,
      deviceToken: notificationDeviceToken,
      deviceType: 'mobile',
      platform: Platform.isIOS ? "ios" : 'android',
    );

    final ResponseModel<AccessResponse> responseModel =
        await ResponseModel.fromApiResponse<AccessResponse>(
      () async => await authApiService.signUpUser(request),
      (body) => AccessResponse.fromJson(body),
    );
    if (responseModel.status == ResponseStatus.success) {
      await TokenManager()
          .setToken(responseModel.response!.data!.accessToken!.token!);
      await UserManager().saveUser(responseModel.response!.data!.user!);
      return true;
    } else if (responseModel.status == ResponseStatus.responseError ||
        responseModel.status == ResponseStatus.nullResponse) {
      SnackbarManager().showAlertSnackbar(responseModel.error!);
    }
  } on Exception catch (e) {
    ExceptionHandler().handle(e);
    return false;
  }
  return false;
}