handleCreateUser method

Future<void> handleCreateUser()

Implementation

Future<void> handleCreateUser() async {
  if (!formKey.currentState!.validate()) return;
  emit(state.copyWith(isLoading: true));

  try {
    final response = await ApiService.createUserApi(
      email: emailController.text,
      name: usernameController.text,
      dob: dobController.value?.toIso8601String(),
      gender: genderController.value,
    );

    // final responseMap = response.getDataOrThrow()

    // onAnalytics!(AnalyticsEvents.appLoginSuccess, {
    //   'phone': phoneController.text.toString(),
    //   'email': responseMap?['data']['merchantResponse']['email'],
    //   'customer_id': responseMap?['data']['merchantResponse']['id']?.toString() ?? ""
    // });
    onSuccessData?.call(FlowResult(
        flowType: FlowType.createUser, data: response.getDataOrThrow()));
    emit(state.copyWith(
        isSuccess: true, isUserLoggedIn: true, isLoading: false));
  } catch (err) {
    emit(state.copyWith(
        error: SingleUseData((err as Failure).message), isLoading: false));
  }
}