onLoad method

  1. @override
FutureOr<void> onLoad(
  1. LoadEvent event,
  2. dynamic emit
)

Implementation

@override
FutureOr<void> onLoad(LoadEvent event, emit) async {
  if (state is LoadingState) return;

  emit(LoadingState());

  void callBack(Either<BaseException, PermissionsModel> errorOrNews) {
    errorOrNews.fold(
      (error) => emit(
        ErrorState(
          title: error.title,
          subtitle: error.detail,
          onRepeat: () => add(LoadEvent(isRefresh: true)),
        ),
      ),
      (permissions) {
        data = permissions;
        add(UpdateEvent());
      },
    );
  }

  await _getPermissionsUseCase(
    GetPermissionsSyncParams(
      onAsync: callBack,
      onSync: callBack,
    ),
  );
}