feat: connectivity adapter package for connectivity_plus

This commit is contained in:
Kingkor Roy Tirtho
2023-06-21 21:39:31 +06:00
parent 7dd9036e69
commit 72ca4cece4
30 changed files with 483 additions and 6 deletions
@@ -0,0 +1,32 @@
library fl_query_connectivity_plus_adapter;
import 'package:fl_query/fl_query.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
/// A [ConnectivityAdapter] that uses the `connectivity_plus` package.
class FlQueryConnectivityPlusAdapter extends ConnectivityAdapter {
@override
Future<bool> get isConnected async {
final connection = await Connectivity().checkConnectivity();
switch (connection) {
case ConnectivityResult.bluetooth:
case ConnectivityResult.none:
return false;
default:
return true;
}
}
@override
Stream<bool> get onConnectivityChanged =>
Connectivity().onConnectivityChanged.map((event) {
switch (event) {
case ConnectivityResult.bluetooth:
case ConnectivityResult.none:
return false;
default:
return true;
}
});
}