From e67256c01096298b51003af0ea789f95a27a568f Mon Sep 17 00:00:00 2001 From: "Vicente J. Ruiz Jurado" Date: Fri, 3 Aug 2018 20:26:15 +0200 Subject: [PATCH] Connectivity redux work --- lib/models/appState.dart | 13 +++++++++---- lib/redux/appActions.dart | 8 ++++++-- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/lib/models/appState.dart b/lib/models/appState.dart index 2db9b18..05aa9a7 100644 --- a/lib/models/appState.dart +++ b/lib/models/appState.dart @@ -6,7 +6,7 @@ import 'package:fires_flutter/models/yourLocation.dart'; import 'package:flutter/material.dart'; import 'package:json_annotation/json_annotation.dart'; import 'package:meta/meta.dart'; - +import 'package:connectivity/connectivity.dart'; import 'fireMapState.dart'; import 'user.dart'; @@ -39,6 +39,8 @@ class AppState extends Object with _$AppStateSerializerMixin { final int fireNotificationsUnread; @JsonKey(ignore: true) final FireMapState fireMapState; + @JsonKey(ignore: true) + final ConnectivityResult connectivity; @JsonKey(ignore: true) factory AppState.fromJson(Map json) => @@ -56,6 +58,7 @@ class AppState extends Object with _$AppStateSerializerMixin { this.firesApiKey, this.firesApiUrl, this.serverUrl, + this.connectivity, this.fireMapState: const FireMapState.initial()}); AppState copyWith( @@ -70,7 +73,8 @@ class AppState extends Object with _$AppStateSerializerMixin { List yourLocations, List fireNotifications, int fireNotificationsUnread, - FireMapState fireMapState}) { + FireMapState fireMapState, + ConnectivityResult connectivity}) { return new AppState( isLoading: isLoading ?? this.isLoading, isLoaded: isLoaded ?? this.isLoaded, @@ -84,12 +88,13 @@ class AppState extends Object with _$AppStateSerializerMixin { fireNotifications: fireNotifications ?? this.fireNotifications, fireNotificationsUnread: fireNotificationsUnread ?? this.fireNotificationsUnread, - fireMapState: fireMapState ?? this.fireMapState); + fireMapState: fireMapState ?? this.fireMapState, + connectivity: connectivity ?? this.connectivity); } @override String toString() { - return 'AppState{\nuser: ${user}\nisLoading: $isLoading\nisLoaded: $isLoaded\napiKey: ${ellipse( + return 'AppState{\nuser: ${user}\nconnectivity: ${connectivity.toString()}\nisLoading: $isLoading\nisLoaded: $isLoaded\napiKey: ${ellipse( firesApiKey, 8)}\napiUrl: ${firesApiUrl}\nserverUrl: ${serverUrl}\nfireMapState: $fireMapState\nyourLocations count: ${yourLocations .length}\nunread notif: ${fireNotificationsUnread}\nfireNotifications: ${fireNotifications}\nyourLocations: ${yourLocations}}'; diff --git a/lib/redux/appActions.dart b/lib/redux/appActions.dart index 8eb718b..3c474d3 100644 --- a/lib/redux/appActions.dart +++ b/lib/redux/appActions.dart @@ -1,7 +1,7 @@ import 'package:fires_flutter/models/yourLocation.dart'; import 'package:fires_flutter/models/fireNotification.dart'; import 'dart:async'; - +import 'package:connectivity/connectivity.dart'; abstract class AppActions {} class FetchYourLocationsAction extends AppActions { @@ -51,4 +51,8 @@ class FetchFireNotificationsSucceededAction extends AppActions { FetchFireNotificationsSucceededAction(this.fetchedFireNotifications, this.unreadCount); } -// OnConnect \ No newline at end of file +class OnConnectivityChanged extends AppActions { + final ConnectivityResult connectivityResult; + + OnConnectivityChanged(this.connectivityResult); +} \ No newline at end of file