diff --git a/lib/features/home/presentation/pages/home_page.dart b/lib/features/home/presentation/pages/home_page.dart index a31df8ef..066d994f 100644 --- a/lib/features/home/presentation/pages/home_page.dart +++ b/lib/features/home/presentation/pages/home_page.dart @@ -1,21 +1,15 @@ -import 'dart:developer'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:hub/backend/notifications/firebase_messaging_service.dart'; -import 'package:hub/features/home/index.dart'; + import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/shared/components/molecules/drawer/index.dart'; import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/shared/components/molecules/menu/index.dart'; -import 'package:hub/shared/components/molecules/modules/index.dart'; -import 'package:hub/shared/helpers/storage/base_storage.dart'; -import 'package:hub/shared/extensions/string_extensions.dart'; -import 'package:hub/shared/helpers/storage/storage_helper.dart'; + class HomePageWidget extends StatefulWidget { const HomePageWidget({ @@ -36,6 +30,7 @@ class _HomePageWidgetState extends State with WidgetsBindingObse super.initState(); WidgetsBinding.instance.addObserver(this); WidgetsBinding.instance.addPostFrameCallback((_) async { + await LocalsRepositoryImpl().check(context); if (widget.update != null) { await widget.update!(context); } @@ -48,36 +43,7 @@ class _HomePageWidgetState extends State with WidgetsBindingObse super.dispose(); } - @override - void didChangeAppLifecycleState(AppLifecycleState state) async { - Future execute() async { - final isLogged = await StorageHelper().get(SecureStorageKey.isLogged.value); - log('isLogged: $isLogged'); - if (isLogged.toBoolean()) { - WidgetsBinding.instance.addPostFrameCallback((_) async { - await LocalsRepositoryImpl().update(context); - await FirebaseMessagingService().updateDeviceToken(); - }); - } - } - if (state == AppLifecycleState.detached) { - print('AppLifecycleState.detached'); - } - if (state == AppLifecycleState.resumed) { - print('AppLifecycleState.resumed'); - } - if (state == AppLifecycleState.inactive) { - print('AppLifecycleState.inactive'); - } - if (state == AppLifecycleState.paused) { - print('AppLifecycleState.paused'); - } - if (state == AppLifecycleState.hidden) { - print('AppLifecycleState.hidden'); - } - } - - + @override Widget build(BuildContext context) { return Builder( diff --git a/lib/shared/components/molecules/locals/data/repositories/locals_repository_impl.dart b/lib/shared/components/molecules/locals/data/repositories/locals_repository_impl.dart index 97c254c3..9c0a71eb 100644 --- a/lib/shared/components/molecules/locals/data/repositories/locals_repository_impl.dart +++ b/lib/shared/components/molecules/locals/data/repositories/locals_repository_impl.dart @@ -2,6 +2,7 @@ import 'dart:developer'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:hub/backend/notifications/firebase_messaging_service.dart'; import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/shared/components/molecules/menu/presentation/blocs/menu_bloc.dart'; import 'package:hub/shared/components/molecules/modules/index.dart'; @@ -34,6 +35,17 @@ class LocalsRepositoryImpl implements LocalsRepository { await localDataSource.unlinkLocal(); await update(context); } + + Future check(BuildContext context) async { + final String? cliUUID = await StorageHelper().get(KeychainStorageKey.clientUUID.value); + final String? ownerUUID = await StorageHelper().get(KeychainStorageKey.ownerUUID.value); + final bool haveCli = cliUUID != null && cliUUID.isNotEmpty; + final bool haveOwner = ownerUUID != null && ownerUUID.isNotEmpty; + if (!haveCli && !haveOwner) { + await update(context); + await FirebaseMessagingService().updateDeviceToken(); + } + } Future _handleReponse(BuildContext context) async { bool response = false; diff --git a/pubspec.lock b/pubspec.lock index b40d3b0b..3dc25f42 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -466,10 +466,10 @@ packages: dependency: transitive description: name: firebase_core_platform_interface - sha256: e30da58198a6d4b49d5bce4e852f985c32cb10db329ebef9473db2b9f09ce810 + sha256: b94b217e3ad745e784960603d33d99471621ecca151c99c670869b76e50ad2a6 url: "https://pub.dev" source: hosted - version: "5.3.0" + version: "5.3.1" firebase_core_web: dependency: transitive description: @@ -535,10 +535,10 @@ packages: dependency: "direct main" description: name: flutter_animate - sha256: "7c8a6594a9252dad30cc2ef16e33270b6248c4dedc3b3d06c86c4f3f4dc05ae5" + sha256: "7befe2d3252728afb77aecaaea1dec88a89d35b9b1d2eea6d04479e8af9117b5" url: "https://pub.dev" source: hosted - version: "4.5.0" + version: "4.5.2" flutter_bloc: dependency: "direct main" description: @@ -615,10 +615,10 @@ packages: dependency: "direct dev" description: name: flutter_launcher_icons - sha256: "619817c4b65b322b5104b6bb6dfe6cda62d9729bd7ad4303ecc8b4e690a67a77" + sha256: "31cd0885738e87c72d6f055564d37fabcdacee743b396b78c7636c169cac64f5" url: "https://pub.dev" source: hosted - version: "0.14.1" + version: "0.14.2" flutter_lints: dependency: "direct dev" description: @@ -798,10 +798,10 @@ packages: dependency: "direct main" description: name: go_router - sha256: "8660b74171fafae4aa8202100fa2e55349e078281dadc73a241eb8e758534d9d" + sha256: "2fd11229f59e23e967b0775df8d5948a519cd7e1e8b6e849729e010587b46539" url: "https://pub.dev" source: hosted - version: "14.6.1" + version: "14.6.2" google_fonts: dependency: "direct main" description: @@ -1206,10 +1206,10 @@ packages: dependency: "direct main" description: name: path_provider_foundation - sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 + sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.1" path_provider_linux: dependency: transitive description: @@ -1430,10 +1430,10 @@ packages: dependency: "direct main" description: name: shared_preferences_android - sha256: "3b9febd815c9ca29c9e3520d50ec32f49157711e143b7a4ca039eb87e8ade5ab" + sha256: "7f172d1b06de5da47b6264c2692ee2ead20bbbc246690427cdb4fc301cd0c549" url: "https://pub.dev" source: hosted - version: "2.3.3" + version: "2.3.4" shared_preferences_foundation: dependency: "direct main" description: @@ -1675,10 +1675,10 @@ packages: dependency: "direct main" description: name: url_launcher_ios - sha256: e43b677296fadce447e987a2f519dcf5f6d1e527dc35d01ffab4fff5b8a7063e + sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626" url: "https://pub.dev" source: hosted - version: "6.3.1" + version: "6.3.2" url_launcher_linux: dependency: transitive description: @@ -1691,10 +1691,10 @@ packages: dependency: transitive description: name: url_launcher_macos - sha256: "769549c999acdb42b8bcfa7c43d72bf79a382ca7441ab18a808e101149daf672" + sha256: "17ba2000b847f334f16626a574c702b196723af2a289e7a93ffcb79acff855c2" url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" url_launcher_platform_interface: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 229bf883..9d2540c4 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -32,7 +32,7 @@ dependencies: file_picker: ^8.0.7 # flutter_expandable_fab: ^2.1.0 firebase_analytics: ^11.3.0 - flutter_animate: 4.5.0 + flutter_animate: ^4.5.2 # flutter_cache_manager: ^3.4.1 # flutter_plugin_android_lifecycle: ^2.0.23 share_plus: ^10.0.0 @@ -66,7 +66,7 @@ dependencies: path_provider: ^2.1.4 path_provider_android: ^2.2.12 google_mlkit_face_detection: ^0.12.0 - path_provider_foundation: 2.4.0 + path_provider_foundation: ^2.4.1 path_provider_platform_interface: 2.1.2 percent_indicator: ^4.2.3 plugin_platform_interface: 2.1.8