From 3e3047ffd409bcb30d0c25dfd909a20689b58167 Mon Sep 17 00:00:00 2001 From: Kingkor Roy Tirtho Date: Sat, 14 Oct 2023 13:05:09 +0600 Subject: [PATCH] fix(fl_query): use sync connection checker instead of async in every operation --- .dart_tool/package_config.json | 4 ++-- .dart_tool/version | 2 +- packages/fl_query/lib/src/core/infinite_query.dart | 2 +- packages/fl_query/lib/src/core/mixins/retryer.dart | 4 ++++ packages/fl_query/lib/src/core/mutation.dart | 2 +- packages/fl_query/lib/src/core/query.dart | 2 +- 6 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.dart_tool/package_config.json b/.dart_tool/package_config.json index 32191a0..6c86843 100644 --- a/.dart_tool/package_config.json +++ b/.dart_tool/package_config.json @@ -242,7 +242,7 @@ "languageVersion": "2.17" } ], - "generated": "2023-05-29T02:30:48.970388Z", + "generated": "2023-10-07T04:33:29.262541Z", "generator": "pub", - "generatorVersion": "3.0.2" + "generatorVersion": "3.1.0" } diff --git a/.dart_tool/version b/.dart_tool/version index e86ec35..97c6841 100644 --- a/.dart_tool/version +++ b/.dart_tool/version @@ -1 +1 @@ -3.10.2 \ No newline at end of file +3.13.2 \ No newline at end of file diff --git a/packages/fl_query/lib/src/core/infinite_query.dart b/packages/fl_query/lib/src/core/infinite_query.dart index adbbac7..4c46564 100644 --- a/packages/fl_query/lib/src/core/infinite_query.dart +++ b/packages/fl_query/lib/src/core/infinite_query.dart @@ -278,7 +278,7 @@ class InfiniteQuery bool get hasNextPage => getNextPage != null; Future _operate(PageType page) async { - if (!await QueryClient.connectivity.isConnected && + if (!QueryClient.connectivity.isConnectedSync && retryConfig.cancelWhenOffline) { return; } diff --git a/packages/fl_query/lib/src/core/mixins/retryer.dart b/packages/fl_query/lib/src/core/mixins/retryer.dart index c3bcc58..b15a549 100644 --- a/packages/fl_query/lib/src/core/mixins/retryer.dart +++ b/packages/fl_query/lib/src/core/mixins/retryer.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'package:async/async.dart'; import 'package:fl_query/src/collections/retry_config.dart'; +import 'package:fl_query/src/core/client.dart'; import 'package:flutter/material.dart'; mixin Retryer { @@ -36,6 +37,9 @@ mixin Retryer { ), ); } + if (!await QueryClient.connectivity.isConnected) { + break; + } } } } diff --git a/packages/fl_query/lib/src/core/mutation.dart b/packages/fl_query/lib/src/core/mutation.dart index c9bc817..bad66a8 100644 --- a/packages/fl_query/lib/src/core/mutation.dart +++ b/packages/fl_query/lib/src/core/mutation.dart @@ -96,7 +96,7 @@ class Mutation Stream get mutationStream => _mutationController.stream; Future _operate(VariablesType variables) async { - if (!await QueryClient.connectivity.isConnected && + if (!QueryClient.connectivity.isConnectedSync && retryConfig.cancelWhenOffline) { return; } diff --git a/packages/fl_query/lib/src/core/query.dart b/packages/fl_query/lib/src/core/query.dart index 91a2762..00c0b8e 100644 --- a/packages/fl_query/lib/src/core/query.dart +++ b/packages/fl_query/lib/src/core/query.dart @@ -147,7 +147,7 @@ class Query CancelableOperation? _operation; Future _operate() async { - if (!await QueryClient.connectivity.isConnected && + if (!QueryClient.connectivity.isConnectedSync && retryConfig.cancelWhenOffline) { return; }