diff --git a/.fvmrc b/.fvmrc
index eb1057a..38802ac 100644
--- a/.fvmrc
+++ b/.fvmrc
@@ -1,4 +1,4 @@
{
- "flutter": "3.32.0",
+ "flutter": "3.32.8",
"flavors": {}
}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 30ecbd7..72a68d6 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,3 +1,3 @@
{
- "dart.flutterSdkPath": ".fvm/flutter_sdk"
+ "dart.flutterSdkPath": ".fvm/versions/3.32.8"
}
\ No newline at end of file
diff --git a/README.md b/README.md
index 7f67648..a80a475 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
-[](https://docs.flutter.dev/release/whats-new#flutter-332)
+[](https://docs.flutter.dev/release/whats-new#flutter-332)
[](https://dart.dev/guides/whats-new#dart-380)
[](LICENSE)
@@ -11,7 +11,6 @@
[](https://github.com/HE-LU/flutter-template/actions/workflows/flutter_project_codecheck_android.yml)
-[](#)
@@ -71,6 +70,7 @@
- [Authors](#authors)
+
@@ -78,6 +78,7 @@
- Notes that could be beneficial to know during the development.
- For example list of test accounts, required credentials, steps required to get testing account, etc.
+
@@ -92,6 +93,7 @@ These are our four core values:
- **Innovation** - We encourage creativity and innovation within the Flutter team. Support an environment where team members feel comfortable suggesting new ideas, experimenting with different approaches, and finding new solutions to problems.
+
@@ -114,6 +116,7 @@ These are our four core values:
9. - [ ] Go through all the ToDo's inside the project, and react to them.
+
@@ -199,6 +202,7 @@ For Google sign in:
- for iOS, you have to copy value from `REVERSED_CLIENT_ID` from `GoogleService-Info.plist` into `GOOGLE_REVERSED_CLIENT_ID` in build settings.
+
@@ -407,6 +411,7 @@ To be able to use the firebase provider for Apple login, we need to do some conf
- The app will crash, and you will see the error message `[CustomException] Received error PlatformException(google_sign_in, Your app is missing support for the following URL schemes: com.googleusercontent.apps......` in the debug console if the custom URL schemes setup is incorrect after tapping the Google Auth button.
+
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 50e2c2e..2f3991e 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -9,6 +9,7 @@
diff --git a/build.yaml b/build.yaml
index 26cf9f7..a0ab740 100644
--- a/build.yaml
+++ b/build.yaml
@@ -7,15 +7,12 @@ targets:
generate_for:
- lib/common/data/dto/*_dto.dart
- lib/common/data/dto/**/*_dto.dart
- - lib/common/data/dto/**/**/*_dto.dart
- lib/common/data/enum/*.dart
- lib/common/data/enum/**/*.dart
- - lib/common/data/enum/**/**/*.dart
- lib/common/data/model/*.dart
- lib/common/data/model/**/*.dart
- - lib/common/data/model/**/**/*.dart
- lib/common/validator/*.dart
@@ -24,11 +21,9 @@ targets:
- lib/features/*_event.dart
- lib/features/**/*_event.dart
- - lib/features/**/**/*_event.dart
- lib/features/*_state.dart
- lib/features/**/*_state.dart
- - lib/features/**/**/*_state.dart
# Title: Riverpod
@@ -39,11 +34,9 @@ targets:
- lib/common/provider/*.dart
- lib/common/provider/**/*.dart
- - lib/common/provider/**/**/*.dart
- lib/common/usecase/*.dart
- lib/common/usecase/**/*.dart
- - lib/common/usecase/**/**/*.dart
- lib/core/analytics/analytics_manager.dart
- lib/core/analytics/analytics_route_observer.dart
@@ -53,7 +46,6 @@ targets:
- lib/features/*_state.dart
- lib/features/**/*_state.dart
- - lib/features/**/**/*_state.dart
# Title: Json Serializable
@@ -62,15 +54,12 @@ targets:
generate_for:
- lib/common/data/dto/*_dto.dart
- lib/common/data/dto/**/*_dto.dart
- - lib/common/data/dto/**/**/*_dto.dart
- lib/common/data/enum/*.dart
- lib/common/data/enum/**/*.dart
- - lib/common/data/enum/**/**/*.dart
- lib/common/data/model/*.dart
- lib/common/data/model/**/*.dart
- - lib/common/data/model/**/**/*.dart
# Title: Auto Route
diff --git a/flutter.code-workspace b/flutter.code-workspace
index 3ba5c0f..10b6934 100644
--- a/flutter.code-workspace
+++ b/flutter.code-workspace
@@ -236,6 +236,7 @@
"cSpell.words": [
"Buildless",
"Refreshable",
+ "Riverpod",
"usecase"
]
}
diff --git a/ios/Podfile b/ios/Podfile
index 526c6f1..6b7de04 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
-platform :ios, '13.0'
+platform :ios, '15.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 1f604d3..002833b 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,11 +1,11 @@
PODS:
- app_settings (5.1.1):
- Flutter
- - AppAuth (1.7.6):
- - AppAuth/Core (= 1.7.6)
- - AppAuth/ExternalUserAgent (= 1.7.6)
- - AppAuth/Core (1.7.6)
- - AppAuth/ExternalUserAgent (1.7.6):
+ - AppAuth (2.0.0):
+ - AppAuth/Core (= 2.0.0)
+ - AppAuth/ExternalUserAgent (= 2.0.0)
+ - AppAuth/Core (2.0.0)
+ - AppAuth/ExternalUserAgent (2.0.0):
- AppAuth/Core
- AppCheckCore (11.2.0):
- GoogleUtilities/Environment (~> 8.0)
@@ -14,138 +14,124 @@ PODS:
- CocoaAsyncSocket (7.6.5)
- device_info_plus (0.0.1):
- Flutter
- - Firebase/Analytics (11.10.0):
- - Firebase/Core
- - Firebase/Auth (11.10.0):
+ - Firebase/Auth (12.0.0):
- Firebase/CoreOnly
- - FirebaseAuth (~> 11.10.0)
- - Firebase/Core (11.10.0):
+ - FirebaseAuth (~> 12.0.0)
+ - Firebase/CoreOnly (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - Firebase/Crashlytics (12.0.0):
- Firebase/CoreOnly
- - FirebaseAnalytics (~> 11.10.0)
- - Firebase/CoreOnly (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - Firebase/Crashlytics (11.10.0):
+ - FirebaseCrashlytics (~> 12.0.0)
+ - Firebase/Messaging (12.0.0):
- Firebase/CoreOnly
- - FirebaseCrashlytics (~> 11.10.0)
- - Firebase/DynamicLinks (11.10.0):
+ - FirebaseMessaging (~> 12.0.0)
+ - Firebase/RemoteConfig (12.0.0):
- Firebase/CoreOnly
- - FirebaseDynamicLinks (~> 11.10.0)
- - Firebase/Messaging (11.10.0):
- - Firebase/CoreOnly
- - FirebaseMessaging (~> 11.10.0)
- - Firebase/RemoteConfig (11.10.0):
- - Firebase/CoreOnly
- - FirebaseRemoteConfig (~> 11.10.0)
- - firebase_analytics (11.4.6):
- - Firebase/Analytics (= 11.10.0)
+ - FirebaseRemoteConfig (~> 12.0.0)
+ - firebase_analytics (12.0.0):
- firebase_core
+ - FirebaseAnalytics (= 12.0.0)
- Flutter
- - firebase_auth (5.5.4):
- - Firebase/Auth (= 11.10.0)
+ - firebase_auth (6.0.0):
+ - Firebase/Auth (= 12.0.0)
- firebase_core
- Flutter
- - firebase_core (3.13.1):
- - Firebase/CoreOnly (= 11.10.0)
- - Flutter
- - firebase_crashlytics (4.3.6):
- - Firebase/Crashlytics (= 11.10.0)
- - firebase_core
+ - firebase_core (4.0.0):
+ - Firebase/CoreOnly (= 12.0.0)
- Flutter
- - firebase_dynamic_links (6.1.6):
- - Firebase/DynamicLinks (= 11.10.0)
+ - firebase_crashlytics (5.0.0):
+ - Firebase/Crashlytics (= 12.0.0)
- firebase_core
- Flutter
- - firebase_messaging (15.2.6):
- - Firebase/Messaging (= 11.10.0)
+ - firebase_messaging (16.0.0):
+ - Firebase/Messaging (= 12.0.0)
- firebase_core
- Flutter
- - firebase_remote_config (5.4.4):
- - Firebase/RemoteConfig (= 11.10.0)
+ - firebase_remote_config (6.0.0):
+ - Firebase/RemoteConfig (= 12.0.0)
- firebase_core
- Flutter
- - FirebaseABTesting (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseAnalytics (11.10.0):
- - FirebaseAnalytics/AdIdSupport (= 11.10.0)
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/MethodSwizzler (~> 8.0)
- - GoogleUtilities/Network (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
+ - FirebaseABTesting (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseAnalytics (12.0.0):
+ - FirebaseAnalytics/Default (= 12.0.0)
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/MethodSwizzler (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
- nanopb (~> 3.30910.0)
- - FirebaseAnalytics/AdIdSupport (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - GoogleAppMeasurement (= 11.10.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/MethodSwizzler (~> 8.0)
- - GoogleUtilities/Network (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
+ - FirebaseAnalytics/Default (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - GoogleAppMeasurement/Default (= 12.0.0)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/MethodSwizzler (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
- nanopb (~> 3.30910.0)
- - FirebaseAppCheckInterop (11.13.0)
- - FirebaseAuth (11.10.0):
- - FirebaseAppCheckInterop (~> 11.0)
- - FirebaseAuthInterop (~> 11.0)
- - FirebaseCore (~> 11.10.0)
- - FirebaseCoreExtension (~> 11.10.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/Environment (~> 8.0)
- - GTMSessionFetcher/Core (< 5.0, >= 3.4)
+ - FirebaseAppCheckInterop (12.0.0)
+ - FirebaseAuth (12.0.0):
+ - FirebaseAppCheckInterop (~> 12.0.0)
+ - FirebaseAuthInterop (~> 12.0.0)
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseCoreExtension (~> 12.0.0)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/Environment (~> 8.1)
+ - GTMSessionFetcher/Core (< 6.0, >= 3.4)
- RecaptchaInterop (~> 101.0)
- - FirebaseAuthInterop (11.13.0)
- - FirebaseCore (11.10.0):
- - FirebaseCoreInternal (~> 11.10.0)
- - GoogleUtilities/Environment (~> 8.0)
- - GoogleUtilities/Logger (~> 8.0)
- - FirebaseCoreExtension (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseCoreInternal (11.10.0):
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
- - FirebaseCrashlytics (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - FirebaseRemoteConfigInterop (~> 11.0)
- - FirebaseSessions (~> 11.0)
- - GoogleDataTransport (~> 10.0)
- - GoogleUtilities/Environment (~> 8.0)
+ - FirebaseAuthInterop (12.0.0)
+ - FirebaseCore (12.0.0):
+ - FirebaseCoreInternal (~> 12.0.0)
+ - GoogleUtilities/Environment (~> 8.1)
+ - GoogleUtilities/Logger (~> 8.1)
+ - FirebaseCoreExtension (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseCoreInternal (12.0.0):
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
+ - FirebaseCrashlytics (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - FirebaseRemoteConfigInterop (~> 12.0.0)
+ - FirebaseSessions (~> 12.0.0)
+ - GoogleDataTransport (~> 10.1)
+ - GoogleUtilities/Environment (~> 8.1)
- nanopb (~> 3.30910.0)
- PromisesObjC (~> 2.4)
- - FirebaseDynamicLinks (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - GoogleUtilities/Environment (~> 8.0)
- - GoogleUtilities/UserDefaults (~> 8.0)
+ - FirebaseInstallations (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - GoogleUtilities/Environment (~> 8.1)
+ - GoogleUtilities/UserDefaults (~> 8.1)
- PromisesObjC (~> 2.4)
- - FirebaseMessaging (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - GoogleDataTransport (~> 10.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/Environment (~> 8.0)
- - GoogleUtilities/Reachability (~> 8.0)
- - GoogleUtilities/UserDefaults (~> 8.0)
+ - FirebaseMessaging (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - GoogleDataTransport (~> 10.1)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/Environment (~> 8.1)
+ - GoogleUtilities/Reachability (~> 8.1)
+ - GoogleUtilities/UserDefaults (~> 8.1)
- nanopb (~> 3.30910.0)
- - FirebaseRemoteConfig (11.10.0):
- - FirebaseABTesting (~> 11.0)
- - FirebaseCore (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - FirebaseRemoteConfigInterop (~> 11.0)
- - FirebaseSharedSwift (~> 11.0)
- - GoogleUtilities/Environment (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
- - FirebaseRemoteConfigInterop (11.13.0)
- - FirebaseSessions (11.10.0):
- - FirebaseCore (~> 11.10.0)
- - FirebaseCoreExtension (~> 11.10.0)
- - FirebaseInstallations (~> 11.0)
- - GoogleDataTransport (~> 10.0)
- - GoogleUtilities/Environment (~> 8.0)
- - GoogleUtilities/UserDefaults (~> 8.0)
+ - FirebaseRemoteConfig (12.0.0):
+ - FirebaseABTesting (~> 12.0.0)
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - FirebaseRemoteConfigInterop (~> 12.0.0)
+ - FirebaseSharedSwift (~> 12.0.0)
+ - GoogleUtilities/Environment (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
+ - FirebaseRemoteConfigInterop (12.0.0)
+ - FirebaseSessions (12.0.0):
+ - FirebaseCore (~> 12.0.0)
+ - FirebaseCoreExtension (~> 12.0.0)
+ - FirebaseInstallations (~> 12.0.0)
+ - GoogleDataTransport (~> 10.1)
+ - GoogleUtilities/Environment (~> 8.1)
+ - GoogleUtilities/UserDefaults (~> 8.1)
- nanopb (~> 3.30910.0)
- PromisesSwift (~> 2.1)
- - FirebaseSharedSwift (11.13.0)
+ - FirebaseSharedSwift (12.0.0)
- Flutter (1.0.0)
- flutter_local_notifications (0.0.1):
- Flutter
@@ -154,38 +140,43 @@ PODS:
- freerasp (1.0.0):
- Flutter
- google_sign_in_ios (0.0.1):
- - AppAuth (>= 1.7.4)
- Flutter
- FlutterMacOS
- - GoogleSignIn (~> 8.0)
+ - GoogleSignIn (~> 9.0)
- GTMSessionFetcher (>= 3.4.0)
- - GoogleAppMeasurement (11.10.0):
- - GoogleAppMeasurement/AdIdSupport (= 11.10.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/MethodSwizzler (~> 8.0)
- - GoogleUtilities/Network (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
+ - GoogleAdsOnDeviceConversion (2.1.0):
+ - GoogleUtilities/Logger (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - nanopb (~> 3.30910.0)
+ - GoogleAppMeasurement/Core (12.0.0):
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/MethodSwizzler (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
- nanopb (~> 3.30910.0)
- - GoogleAppMeasurement/AdIdSupport (11.10.0):
- - GoogleAppMeasurement/WithoutAdIdSupport (= 11.10.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/MethodSwizzler (~> 8.0)
- - GoogleUtilities/Network (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
+ - GoogleAppMeasurement/Default (12.0.0):
+ - GoogleAdsOnDeviceConversion (= 2.1.0)
+ - GoogleAppMeasurement/Core (= 12.0.0)
+ - GoogleAppMeasurement/IdentitySupport (= 12.0.0)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/MethodSwizzler (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
- nanopb (~> 3.30910.0)
- - GoogleAppMeasurement/WithoutAdIdSupport (11.10.0):
- - GoogleUtilities/AppDelegateSwizzler (~> 8.0)
- - GoogleUtilities/MethodSwizzler (~> 8.0)
- - GoogleUtilities/Network (~> 8.0)
- - "GoogleUtilities/NSData+zlib (~> 8.0)"
+ - GoogleAppMeasurement/IdentitySupport (12.0.0):
+ - GoogleAppMeasurement/Core (= 12.0.0)
+ - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+ - GoogleUtilities/MethodSwizzler (~> 8.1)
+ - GoogleUtilities/Network (~> 8.1)
+ - "GoogleUtilities/NSData+zlib (~> 8.1)"
- nanopb (~> 3.30910.0)
- GoogleDataTransport (10.1.0):
- nanopb (~> 3.30910.0)
- PromisesObjC (~> 2.4)
- - GoogleSignIn (8.0.0):
- - AppAuth (< 2.0, >= 1.7.3)
+ - GoogleSignIn (9.0.0):
+ - AppAuth (~> 2.0)
- AppCheckCore (~> 11.0)
- - GTMAppAuth (< 5.0, >= 4.1.1)
+ - GTMAppAuth (~> 5.0)
- GTMSessionFetcher/Core (~> 3.3)
- GoogleUtilities/AppDelegateSwizzler (8.1.0):
- GoogleUtilities/Environment
@@ -214,8 +205,8 @@ PODS:
- GoogleUtilities/UserDefaults (8.1.0):
- GoogleUtilities/Logger
- GoogleUtilities/Privacy
- - GTMAppAuth (4.1.1):
- - AppAuth/Core (~> 1.7)
+ - GTMAppAuth (5.0.0):
+ - AppAuth/Core (~> 2.0)
- GTMSessionFetcher/Core (< 4.0, >= 3.3)
- GTMSessionFetcher (3.5.0):
- GTMSessionFetcher/Full (= 3.5.0)
@@ -259,7 +250,6 @@ DEPENDENCIES:
- firebase_auth (from `.symlinks/plugins/firebase_auth/ios`)
- firebase_core (from `.symlinks/plugins/firebase_core/ios`)
- firebase_crashlytics (from `.symlinks/plugins/firebase_crashlytics/ios`)
- - firebase_dynamic_links (from `.symlinks/plugins/firebase_dynamic_links/ios`)
- firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`)
- firebase_remote_config (from `.symlinks/plugins/firebase_remote_config/ios`)
- Flutter (from `Flutter`)
@@ -291,13 +281,13 @@ SPEC REPOS:
- FirebaseCoreExtension
- FirebaseCoreInternal
- FirebaseCrashlytics
- - FirebaseDynamicLinks
- FirebaseInstallations
- FirebaseMessaging
- FirebaseRemoteConfig
- FirebaseRemoteConfigInterop
- FirebaseSessions
- FirebaseSharedSwift
+ - GoogleAdsOnDeviceConversion
- GoogleAppMeasurement
- GoogleDataTransport
- GoogleSignIn
@@ -322,8 +312,6 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/firebase_core/ios"
firebase_crashlytics:
:path: ".symlinks/plugins/firebase_crashlytics/ios"
- firebase_dynamic_links:
- :path: ".symlinks/plugins/firebase_dynamic_links/ios"
firebase_messaging:
:path: ".symlinks/plugins/firebase_messaging/ios"
firebase_remote_config:
@@ -357,44 +345,43 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
app_settings: 58017cd26b604ae98c3e65acbdd8ba173703cc82
- AppAuth: d4f13a8fe0baf391b2108511793e4b479691fb73
+ AppAuth: 1c1a8afa7e12f2ec3a294d9882dfa5ab7d3cb063
AppCheckCore: cc8fd0a3a230ddd401f326489c99990b013f0c4f
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
device_info_plus: bf2e3232933866d73fe290f2942f2156cdd10342
- Firebase: 1fe1c0a7d9aaea32efe01fbea5f0ebd8d70e53a2
- firebase_analytics: 943aa4699bf6afe056a96991ba8ee34776323d4c
- firebase_auth: 519455ee22dea9cb8b4e05d7821f93f77db88882
- firebase_core: 3c2f323cae65c97a636a05a23b17730ef93df2cf
- firebase_crashlytics: 6f5f71ba7ec7b6a0412c4ed076272643c434f69f
- firebase_dynamic_links: 9ac84226585cfd0e723a13d5547122155fed99c4
- firebase_messaging: 456e01ff29a451c90097d0b45925551d5be0c143
- firebase_remote_config: 6dc3e79fe219c24f1393faf91463559bf3784fd4
- FirebaseABTesting: dfc10eb6cc08fe3b391ac9e5aa40396d43ea6675
- FirebaseAnalytics: 4e42333f02cf78ed93703a5c36f36dd518aebdef
- FirebaseAppCheckInterop: 72066489c209823649a997132bcd9269bc33a4bb
- FirebaseAuth: c4146bdfdc87329f9962babd24dae89373f49a32
- FirebaseAuthInterop: 4fa327ec3c551a80a6929561f83af80b1dd44937
- FirebaseCore: 8344daef5e2661eb004b177488d6f9f0f24251b7
- FirebaseCoreExtension: 6f357679327f3614e995dc7cf3f2d600bdc774ac
- FirebaseCoreInternal: ef4505d2afb1d0ebbc33162cb3795382904b5679
- FirebaseCrashlytics: 84b073c997235740e6a951b7ee49608932877e5c
- FirebaseDynamicLinks: a76f75ddb0612301c34b3f598100449b41bc2669
- FirebaseInstallations: 9980995bdd06ec8081dfb6ab364162bdd64245c3
- FirebaseMessaging: 2b9f56aa4ed286e1f0ce2ee1d413aabb8f9f5cb9
- FirebaseRemoteConfig: 10695bc0ce3b103e3706a5578c43f2a9f69d5aaa
- FirebaseRemoteConfigInterop: 7915cec47731a806cda541f90898ad0fab8f9f86
- FirebaseSessions: 9b3b30947b97a15370e0902ee7a90f50ef60ead6
- FirebaseSharedSwift: aca73668bc95e8efccb618e0167eab05d19d3a75
+ Firebase: 800d487043c0557d9faed71477a38d9aafb08a41
+ firebase_analytics: 2d63841132d444fad3d3e71682dc0072ae2aaf08
+ firebase_auth: ea2c71a75676e82165974c12b0d09a946340a1c7
+ firebase_core: c70f903d70ec229c08c2f49aba5a8c1338546d40
+ firebase_crashlytics: f5df4d26483758138b386e0db8a704e5b7ba6543
+ firebase_messaging: efa3a73cad64b05131bfe138c139a65e0daebe78
+ firebase_remote_config: f137e220690596eb50e2724d6c85a14c5c8c092a
+ FirebaseABTesting: 2cad22e464cd7ef4589ae29f897bc71ff83ce83b
+ FirebaseAnalytics: 6d790cd1b159b4eb61a99948df0934ce505a34f7
+ FirebaseAppCheckInterop: c848d06a04030c9858ef0ae555b82035dbe470d0
+ FirebaseAuth: 654e4de84787c45d7265599a651038e854ccb439
+ FirebaseAuthInterop: 002da671896af5e8879ae117dc604ed240b86e80
+ FirebaseCore: 055f4ab117d5964158c833f3d5e7ec6d91648d4a
+ FirebaseCoreExtension: 639afb3de6abd611952be78a794c54a47fa0f361
+ FirebaseCoreInternal: dedc28e569a4be85f38f3d6af1070a2e12018d55
+ FirebaseCrashlytics: db75aa0cab8d00f68406fa247c32fe17ade884d7
+ FirebaseInstallations: d4c7c958f99c8860d7fcece786314ae790e2f988
+ FirebaseMessaging: af49f8d7c0a3d2a017d9302c80946f45a7777dde
+ FirebaseRemoteConfig: 4cbbe0083474359025e7bb334b9d0cff16b78d3a
+ FirebaseRemoteConfigInterop: bfa0ea72ba3dc5af739777296424e46bd6f42613
+ FirebaseSessions: 4e784acda213108aafef536535cdfc03504acc42
+ FirebaseSharedSwift: 59266c22ccfcef604d725c034c568fa666ea9bda
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
flutter_local_notifications: ff50f8405aaa0ccdc7dcfb9022ca192e8ad9688f
flutter_native_splash: df59bb2e1421aa0282cb2e95618af4dcb0c56c29
freerasp: bb827d80b926abcfb8f4ca4ff4557c2fe4a5ae21
- google_sign_in_ios: 7411fab6948df90490dc4620ecbcabdc3ca04017
- GoogleAppMeasurement: 36684bfb3ee034e2b42b4321eb19da3a1b81e65d
+ google_sign_in_ios: 4bb0e529b167cadc6ac785b6ed943c0a0a4cc1c9
+ GoogleAdsOnDeviceConversion: 2be6297a4f048459e0ae17fad9bfd2844e10cf64
+ GoogleAppMeasurement: 8f6ab04ad6ae493b53fcf56bd26323fb2f1384f3
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
- GoogleSignIn: ce8c89bb9b37fb624b92e7514cc67335d1e277e4
+ GoogleSignIn: c7f09cfbc85a1abf69187be091997c317cc33b77
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
- GTMAppAuth: f69bd07d68cd3b766125f7e072c45d7340dea0de
+ GTMAppAuth: 217a876b249c3c585a54fd6f73e6b58c4f5c4238
GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
package_info_plus: c0502532a26c7662a62a356cebe2692ec5fe4ec4
@@ -409,6 +396,6 @@ SPEC CHECKSUMS:
sign_in_with_apple: f3bf75217ea4c2c8b91823f225d70230119b8440
url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe
-PODFILE CHECKSUM: 2dd925d938854ab0a15694b67b98ef05cc6d9fd1
+PODFILE CHECKSUM: 4b58752610e7b5bbd146b584e63d3c1bd146c7d4
COCOAPODS: 1.16.2
diff --git a/lib/app/setup/setup_app.dart b/lib/app/setup/setup_app.dart
index 3acc9fa..6bff945 100644
--- a/lib/app/setup/setup_app.dart
+++ b/lib/app/setup/setup_app.dart
@@ -20,6 +20,7 @@ import 'package:flutter_app/core/flogger.dart';
import 'package:flutter_native_splash/flutter_native_splash.dart';
import 'package:flutter_web_plugins/url_strategy.dart';
import 'package:freerasp/freerasp.dart';
+import 'package:google_sign_in/google_sign_in.dart';
import 'package:window_manager/window_manager.dart';
Future setupApp({required Flavor flavor}) async {
@@ -47,6 +48,9 @@ Future setupApp({required Flavor flavor}) async {
await _setupFirebaseMessaging();
await _setupLocalNotificationsService();
+ // Setup Google Sign In
+ await GoogleSignIn.instance.initialize();
+
// Setup FreeRASP Security
await _setupRASP(flavor: flavor);
diff --git a/lib/app/theme/app_theme.dart b/lib/app/theme/app_theme.dart
index 034ba34..b90d1c7 100644
--- a/lib/app/theme/app_theme.dart
+++ b/lib/app/theme/app_theme.dart
@@ -16,11 +16,19 @@ class AppTheme {
final colorScheme = CustomColorScheme(brightness: brightness);
final textTheme = CustomTextTheme(colorScheme: colorScheme);
+ // Create a native color scheme based on the custom color scheme.
+ var nativeColorScheme = kDebugMode
+ ? _getUndefinedColorScheme(brightness)
+ : ColorScheme.fromSeed(seedColor: colorScheme.primary, brightness: brightness);
+
+ // Override colors that make sense to override, and that we can match.
+ nativeColorScheme = nativeColorScheme.copyWith(
+ surface: colorScheme.surface,
+ );
+
return ThemeData(
brightness: brightness,
- colorScheme: kDebugMode
- ? _getUndefinedColorScheme(brightness)
- : ColorScheme.fromSeed(seedColor: colorScheme.primary, brightness: brightness),
+ colorScheme: nativeColorScheme,
visualDensity: VisualDensity.standard, // Needed for consistent web and app sizing
textTheme: kDebugMode ? _getUndefinedTextTheme() : null,
scaffoldBackgroundColor: colorScheme.surface,
diff --git a/lib/common/data/model/exception/custom_exception.dart b/lib/common/data/model/exception/custom_exception.dart
index ca3767a..ffc1d56 100644
--- a/lib/common/data/model/exception/custom_exception.dart
+++ b/lib/common/data/model/exception/custom_exception.dart
@@ -7,6 +7,7 @@ import 'package:flutter_app/common/extension/build_context.dart';
import 'package:flutter_app/core/analytics/crashlytics_manager.dart';
import 'package:flutter_app/core/flogger.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
+import 'package:google_sign_in/google_sign_in.dart';
import 'package:sign_in_with_apple/sign_in_with_apple.dart';
part 'custom_exception.freezed.dart';
@@ -51,6 +52,13 @@ sealed class CustomException with _$CustomException implements Exception {
return CustomException.withMessage(message: error.message);
}
+ } else if (error is GoogleSignInException) {
+ switch (error.code) {
+ case GoogleSignInExceptionCode.canceled:
+ return const CustomException.signInCancelled();
+ default:
+ return CustomException.withMessage(message: error.description);
+ }
} else if (error is SignInWithAppleAuthorizationException) {
switch (error.code) {
case AuthorizationErrorCode.canceled:
diff --git a/lib/common/usecase/authentication/sign_in_with_google_use_case.dart b/lib/common/usecase/authentication/sign_in_with_google_use_case.dart
index 897e7c2..4884f2e 100644
--- a/lib/common/usecase/authentication/sign_in_with_google_use_case.dart
+++ b/lib/common/usecase/authentication/sign_in_with_google_use_case.dart
@@ -1,5 +1,4 @@
import 'package:firebase_auth/firebase_auth.dart';
-import 'package:flutter_app/common/data/model/exception/custom_exception.dart';
import 'package:flutter_app/common/data/model/user_model.dart';
import 'package:flutter_app/common/usecase/authentication/sign_in_with_auth_credential_use_case.dart';
import 'package:flutter_app/core/flogger.dart';
@@ -9,29 +8,33 @@ import 'package:riverpod_annotation/riverpod_annotation.dart';
part 'sign_in_with_google_use_case.g.dart';
+const List _scopes = [
+ 'email',
+];
+
@riverpod
Future signInWithGoogleUseCase(Ref ref) async {
Flogger.d('[Authentication] Sign in with Google started');
- final googleSignIn = GoogleSignIn();
+ final googleSignIn = GoogleSignIn.instance;
- // Step 1: Logout from Current Google account if any
- if (await googleSignIn.isSignedIn()) {
- await googleSignIn.disconnect();
- }
+ // Subtitle: Step 1 - Logout from Current Google account if any
+ await googleSignIn.disconnect();
- // Step 2: Sign in with Google
- final googleSignInAccount = await googleSignIn.signIn();
+ // Subtitle: Step 2 - Authenticate user with Google
+ final account = await googleSignIn.authenticate();
- if (googleSignInAccount == null) throw const CustomException.signInCancelled();
+ // Subtitle: Step 3 - Authorize scopes
+ var authorization = await account.authorizationClient.authorizationForScopes(_scopes);
+ authorization ??= await account.authorizationClient.authorizeScopes(_scopes);
- final googleSignInAuthentication = await googleSignInAccount.authentication;
+ // Subtitle: Step 4 - Create OAuth credential for Firebase
final oauthCredential = GoogleAuthProvider.credential(
- accessToken: googleSignInAuthentication.accessToken,
- idToken: googleSignInAuthentication.idToken,
+ accessToken: authorization.accessToken,
+ idToken: account.authentication.idToken,
);
- Flogger.d('[Authentication] Received credential from Google: $oauthCredential');
+ Flogger.d('[Authentication] Received credential: $oauthCredential');
return await ref.read(
signInWithAuthCredentialUseCaseProvider(
diff --git a/lib/common/usecase/authentication/sign_out_use_case.dart b/lib/common/usecase/authentication/sign_out_use_case.dart
index 93d0382..1be59e6 100644
--- a/lib/common/usecase/authentication/sign_out_use_case.dart
+++ b/lib/common/usecase/authentication/sign_out_use_case.dart
@@ -14,7 +14,7 @@ Future signOutUseCase(Ref ref) async {
// Title: Try to sign out from Google - if any
try {
- await GoogleSignIn().disconnect();
+ await GoogleSignIn.instance.disconnect();
} on MissingPluginException catch (error) {
Flogger.d('[Authentication] MissingPluginException $error');
} on PlatformException catch (error) {
diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift
index 160e063..bae23f1 100644
--- a/macos/Flutter/GeneratedPluginRegistrant.swift
+++ b/macos/Flutter/GeneratedPluginRegistrant.swift
@@ -28,12 +28,12 @@ import window_manager
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
AppSettingsPlugin.register(with: registry.registrar(forPlugin: "AppSettingsPlugin"))
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
- FLTFirebaseAnalyticsPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAnalyticsPlugin"))
+ FirebaseAnalyticsPlugin.register(with: registry.registrar(forPlugin: "FirebaseAnalyticsPlugin"))
FLTFirebaseAuthPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAuthPlugin"))
FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin"))
FLTFirebaseCrashlyticsPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCrashlyticsPlugin"))
FLTFirebaseMessagingPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseMessagingPlugin"))
- FLTFirebaseRemoteConfigPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseRemoteConfigPlugin"))
+ FirebaseRemoteConfigPlugin.register(with: registry.registrar(forPlugin: "FirebaseRemoteConfigPlugin"))
FlutterLocalNotificationsPlugin.register(with: registry.registrar(forPlugin: "FlutterLocalNotificationsPlugin"))
FLTGoogleSignInPlugin.register(with: registry.registrar(forPlugin: "FLTGoogleSignInPlugin"))
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
diff --git a/pubspec.lock b/pubspec.lock
index 6583bb6..f15be97 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -5,34 +5,34 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
- sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57
+ sha256: da0d9209ca76bde579f2da330aeb9df62b6319c834fa7baae052021b0462401f
url: "https://pub.dev"
source: hosted
- version: "80.0.0"
+ version: "85.0.0"
_flutterfire_internals:
dependency: transitive
description:
name: _flutterfire_internals
- sha256: "214e6f07e2a44f45972e0365c7b537eaeaddb4598db0778dd4ac64b4acd3f5b1"
+ sha256: bb84ee51e527053dd8e25ecc9f97a6abfdc19130fb4d883e4e8585e23e7e6dd8
url: "https://pub.dev"
source: hosted
- version: "1.3.55"
+ version: "1.3.60"
analyzer:
dependency: transitive
description:
name: analyzer
- sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e"
+ sha256: f4ad0fea5f102201015c9aae9d93bc02f75dd9491529a8c21f88d17a8523d44c
url: "https://pub.dev"
source: hosted
- version: "7.3.0"
+ version: "7.6.0"
analyzer_plugin:
dependency: transitive
description:
name: analyzer_plugin
- sha256: b3075265c5ab222f8b3188342dcb50b476286394a40323e85d1fa725035d40a4
+ sha256: a5ab7590c27b779f3d4de67f31c4109dbe13dd7339f86461a6f2a8ab2594d8ce
url: "https://pub.dev"
source: hosted
- version: "0.13.0"
+ version: "0.13.4"
ansicolor:
dependency: transitive
description:
@@ -77,10 +77,10 @@ packages:
dependency: "direct main"
description:
name: auto_route
- sha256: "89bc5d17d8c575399891194b8cd02b39f52a8512c730052f17ebe443cdcb9109"
+ sha256: b8c036fa613a98a759cf0fdcba26e62f4985dcbff01a5e760ab411e8554bbaf0
url: "https://pub.dev"
source: hosted
- version: "10.0.1"
+ version: "10.1.0+1"
auto_route_generator:
dependency: "direct dev"
description:
@@ -101,10 +101,10 @@ packages:
dependency: transitive
description:
name: build
- sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0
+ sha256: "51dc711996cbf609b90cbe5b335bbce83143875a9d58e4b5c6d3c4f684d3dda7"
url: "https://pub.dev"
source: hosted
- version: "2.4.2"
+ version: "2.5.4"
build_config:
dependency: transitive
description:
@@ -125,26 +125,26 @@ packages:
dependency: transitive
description:
name: build_resolvers
- sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0
+ sha256: ee4257b3f20c0c90e72ed2b57ad637f694ccba48839a821e87db762548c22a62
url: "https://pub.dev"
source: hosted
- version: "2.4.4"
+ version: "2.5.4"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99"
+ sha256: "382a4d649addbfb7ba71a3631df0ec6a45d5ab9b098638144faf27f02778eb53"
url: "https://pub.dev"
source: hosted
- version: "2.4.15"
+ version: "2.5.4"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021"
+ sha256: "85fbbb1036d576d966332a3f5ce83f2ce66a40bea1a94ad2d5fc29a19a0d3792"
url: "https://pub.dev"
source: hosted
- version: "8.0.0"
+ version: "9.1.2"
built_collection:
dependency: transitive
description:
@@ -157,10 +157,10 @@ packages:
dependency: transitive
description:
name: built_value
- sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4
+ sha256: "0b1b12a0a549605e5f04476031cd0bc91ead1d7c8e830773a18ee54179b3cb62"
url: "https://pub.dev"
source: hosted
- version: "8.9.5"
+ version: "8.11.0"
characters:
dependency: transitive
description:
@@ -181,10 +181,10 @@ packages:
dependency: transitive
description:
name: checked_yaml
- sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff
+ sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f"
url: "https://pub.dev"
source: hosted
- version: "2.0.3"
+ version: "2.0.4"
ci:
dependency: transitive
description:
@@ -293,18 +293,18 @@ packages:
dependency: transitive
description:
name: custom_lint_visitor
- sha256: "36282d85714af494ee2d7da8c8913630aa6694da99f104fb2ed4afcf8fc857d8"
+ sha256: "4a86a0d8415a91fbb8298d6ef03e9034dc8e323a599ddc4120a0e36c433983a2"
url: "https://pub.dev"
source: hosted
- version: "1.0.0+7.3.0"
+ version: "1.0.0+7.7.0"
dart_style:
dependency: transitive
description:
name: dart_style
- sha256: "5b236382b47ee411741447c1f1e111459c941ea1b3f2b540dde54c210a3662af"
+ sha256: "8a0e5fba27e8ee025d2ffb4ee820b4e6e2cf5e4246a6b1a477eb66866947e0bb"
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.1"
dartx:
dependency: transitive
description:
@@ -325,18 +325,18 @@ packages:
dependency: "direct main"
description:
name: device_info_plus
- sha256: "0c6396126421b590089447154c5f98a5de423b70cfb15b1578fd018843ee6f53"
+ sha256: "98f28b42168cc509abc92f88518882fd58061ea372d7999aecc424345c7bff6a"
url: "https://pub.dev"
source: hosted
- version: "11.4.0"
+ version: "11.5.0"
device_info_plus_platform_interface:
dependency: transitive
description:
name: device_info_plus_platform_interface
- sha256: "0b04e02b30791224b31969eb1b50d723498f402971bff3630bca2ba839bd1ed2"
+ sha256: e1ea89119e34903dca74b883d0dd78eb762814f97fb6c76f35e9ff74d261a18f
url: "https://pub.dev"
source: hosted
- version: "7.0.2"
+ version: "7.0.3"
dio:
dependency: "direct main"
description:
@@ -381,10 +381,10 @@ packages:
dependency: transitive
description:
name: extended_image_library
- sha256: ae468c31c375064964de11cbb31310a58c4462df6e3bae1a0bc0066f586795d5
+ sha256: "1f9a24d3a00c2633891c6a7b5cab2807999eb2d5b597e5133b63f49d113811fe"
url: "https://pub.dev"
source: hosted
- version: "5.0.0"
+ version: "5.0.1"
fake_async:
dependency: transitive
description:
@@ -413,154 +413,138 @@ packages:
dependency: "direct main"
description:
name: firebase_analytics
- sha256: b5b31727ad7c7f41e139637d1d582e435fd14054abcbd162c64476f90737105c
+ sha256: "07146e89e11302c6b07e3465c2c556ebcdd0053a3c5b1aa9bfd3203b778e5b4c"
url: "https://pub.dev"
source: hosted
- version: "11.4.6"
+ version: "12.0.0"
firebase_analytics_platform_interface:
dependency: transitive
description:
name: firebase_analytics_platform_interface
- sha256: "86817ee7db6377e09830467932c31644713d8e8915cefff64610ad735612bc7d"
+ sha256: "27e81a0efc821bec6cba64abc1083b91c8ddbad28eeb4c6f6b7c78a59d06f259"
url: "https://pub.dev"
source: hosted
- version: "4.3.6"
+ version: "5.0.0"
firebase_analytics_web:
dependency: transitive
description:
name: firebase_analytics_web
- sha256: "4914e184a6aa37811d976db59f95fa8fda1d58db49ab7f73d4d8aac9dd9b19b7"
+ sha256: "7d87f47462042a7d9125e3123db2783bc72917d85e2719d4cb6aeaec209605e1"
url: "https://pub.dev"
source: hosted
- version: "0.5.10+12"
+ version: "0.6.0"
firebase_auth:
dependency: "direct main"
description:
name: firebase_auth
- sha256: "10cd3f00a247f33b0a5c77574011a87379432bf3fec77a500b55f2bcc30ddd8b"
+ sha256: "974541532dc3f5ea3c0d7c5bb3e6c90fb81a8950e0e15c4a11e2b17a06379070"
url: "https://pub.dev"
source: hosted
- version: "5.5.4"
+ version: "6.0.0"
firebase_auth_platform_interface:
dependency: transitive
description:
name: firebase_auth_platform_interface
- sha256: "2d15872a8899b0459fab6b4c148fd142e135acfc8a303d383d80b455e4dba7bd"
+ sha256: "86a6318fd53a2958a9323454a4b8601b19963030157d71f92e356deadf9a3551"
url: "https://pub.dev"
source: hosted
- version: "7.6.3"
+ version: "8.0.0"
firebase_auth_web:
dependency: transitive
description:
name: firebase_auth_web
- sha256: efba45393050ca03d992eae1d305d5fc8c0c9f5980624053512e935c23767c4f
+ sha256: "042d424d50515cd62b4c0bda70872f5fa7e69c905e442b087e07e0117aac1222"
url: "https://pub.dev"
source: hosted
- version: "5.14.3"
+ version: "6.0.0"
firebase_core:
dependency: "direct main"
description:
name: firebase_core
- sha256: "8cfe3c900512399ce8d50fcc817e5758ff8615eeb6fa5c846a4cc47bbf6353b6"
+ sha256: "6b343e6f7b72a4f32d7ce8df8c9a28d8f54b4ac20d7c6500f3e8b3969afca457"
url: "https://pub.dev"
source: hosted
- version: "3.13.1"
+ version: "4.0.0"
firebase_core_platform_interface:
dependency: transitive
description:
name: firebase_core_platform_interface
- sha256: d7253d255ff10f85cfd2adaba9ac17bae878fa3ba577462451163bd9f1d1f0bf
+ sha256: "5dbc900677dcbe5873d22ad7fbd64b047750124f1f9b7ebe2a33b9ddccc838eb"
url: "https://pub.dev"
source: hosted
- version: "5.4.0"
+ version: "6.0.0"
firebase_core_web:
dependency: transitive
description:
name: firebase_core_web
- sha256: ddd72baa6f727e5b23f32d9af23d7d453d67946f380bd9c21daf474ee0f7326e
+ sha256: "5d28b14dd32282fb7ce2b22b897362453755b6b8541d491127dc72b755bb7b16"
url: "https://pub.dev"
source: hosted
- version: "2.23.0"
+ version: "3.0.0"
firebase_crashlytics:
dependency: "direct main"
description:
name: firebase_crashlytics
- sha256: "49d20b1dd87bb42746e27b5c72c1e3a3d84ae6415d062f8b31ecb71a35d36d0c"
+ sha256: "95b6871850b1a7e3b09c284c59a0c71fafcad3eee8ac1b6f06aaf8979290cbb8"
url: "https://pub.dev"
source: hosted
- version: "4.3.6"
+ version: "5.0.0"
firebase_crashlytics_platform_interface:
dependency: transitive
description:
name: firebase_crashlytics_platform_interface
- sha256: "0a5b2c9a662db7563482547b31da06a3951277cbfb42af12c5b52a15456ea951"
- url: "https://pub.dev"
- source: hosted
- version: "3.8.6"
- firebase_dynamic_links:
- dependency: "direct main"
- description:
- name: firebase_dynamic_links
- sha256: "417b07ed518cd33cd00d0b9546b5bb1e0a0b7edff694c322881cbafca01ebfc5"
- url: "https://pub.dev"
- source: hosted
- version: "6.1.6"
- firebase_dynamic_links_platform_interface:
- dependency: transitive
- description:
- name: firebase_dynamic_links_platform_interface
- sha256: "998fc351ded1fc5e366ace0e627b5e35b462d760f22058d86ee7351c2c96da97"
+ sha256: ba5b7a916f1ebedc6db35b33abdc618f202fc25e0792088dfba698e19fec9c09
url: "https://pub.dev"
source: hosted
- version: "0.2.7+6"
+ version: "3.8.11"
firebase_messaging:
dependency: "direct main"
description:
name: firebase_messaging
- sha256: "38111089e511f03daa2c66b4c3614c16421b7d78c84ee04331a0a65b47df4542"
+ sha256: "10272b553a49c13a6cedfd00121047157521f82a5d3f2a1706b9dd28342cc482"
url: "https://pub.dev"
source: hosted
- version: "15.2.6"
+ version: "16.0.0"
firebase_messaging_platform_interface:
dependency: transitive
description:
name: firebase_messaging_platform_interface
- sha256: ba254769982e5f439e534eed68856181c74e2b3f417c8188afad2bb440807cc7
+ sha256: b846a305feb3f74ee3f0aace447f65a4696bc6550bc828ecf5a84a1b77473d16
url: "https://pub.dev"
source: hosted
- version: "4.6.6"
+ version: "4.7.0"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
- sha256: dba89137272aac39e95f71408ba25c33fb8ed903cd5fa8d1e49b5cd0d96069e0
+ sha256: "28714749880f7242c5fb3b1ee6c66b41f61453f02ae348b43c82957df80b87ae"
url: "https://pub.dev"
source: hosted
- version: "3.10.6"
+ version: "4.0.0"
firebase_remote_config:
dependency: "direct main"
description:
name: firebase_remote_config
- sha256: e65062f7435c8be13826d38c75218b30251a096ca742e7da55342b33ff8b4749
+ sha256: d22fe46323f19f5ea252202438c4e006567aa2f2f116521e9373618bcd4daedc
url: "https://pub.dev"
source: hosted
- version: "5.4.4"
+ version: "6.0.0"
firebase_remote_config_platform_interface:
dependency: transitive
description:
name: firebase_remote_config_platform_interface
- sha256: "6d2f94570edbea0b1fb47e623af576f1896d14f839b1e3ba9b393a5e7c93c84d"
+ sha256: "3ab6c74a1a0ea28e275d44b1ebd3158fc188af301ff96ec36f0fa2d42d4caa63"
url: "https://pub.dev"
source: hosted
- version: "1.5.4"
+ version: "2.0.1"
firebase_remote_config_web:
dependency: transitive
description:
name: firebase_remote_config_web
- sha256: "5cf6eff2748193b64e9eb9965d5d727585f562d2946a53239385ad667e1c22e4"
+ sha256: c46d8320a9d263e13b89266f3552cc445b6f1f2bd28d74d010dcf8abad0b82d1
url: "https://pub.dev"
source: hosted
- version: "1.8.4"
+ version: "1.8.10"
fixnum:
dependency: transitive
description:
@@ -586,34 +570,34 @@ packages:
dependency: transitive
description:
name: flutter_gen_core
- sha256: "3eaa2d3d8be58267ac4cd5e215ac965dd23cae0410dc073de2e82e227be32bfc"
+ sha256: eda54fdc5de08e7eeea663eb8442aafc8660b5a13fda4e0c9e572c64e50195fb
url: "https://pub.dev"
source: hosted
- version: "5.10.0"
+ version: "5.11.0"
flutter_gen_runner:
dependency: "direct dev"
description:
name: flutter_gen_runner
- sha256: e74b4ead01df3e8f02e73a26ca856759dbbe8cb3fd60941ba9f4005cd0cd19c9
+ sha256: "669bf8b7a9b4acbdcb7fcc5e12bf638aca19acedf43341714cbca3bf3a219521"
url: "https://pub.dev"
source: hosted
- version: "5.10.0"
+ version: "5.11.0"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
- sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1"
+ sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1"
url: "https://pub.dev"
source: hosted
- version: "5.0.0"
+ version: "6.0.0"
flutter_local_notifications:
dependency: "direct main"
description:
name: flutter_local_notifications
- sha256: b94a50aabbe56ef254f95f3be75640f99120429f0a153b2dc30143cffc9bfdf3
+ sha256: "20ca0a9c82ce0c855ac62a2e580ab867f3fbea82680a90647f7953832d0850ae"
url: "https://pub.dev"
source: hosted
- version: "19.2.1"
+ version: "19.4.0"
flutter_local_notifications_linux:
dependency: transitive
description:
@@ -626,18 +610,18 @@ packages:
dependency: transitive
description:
name: flutter_local_notifications_platform_interface
- sha256: "2569b973fc9d1f63a37410a9f7c1c552081226c597190cb359ef5d5762d1631c"
+ sha256: "277d25d960c15674ce78ca97f57d0bae2ee401c844b6ac80fcd972a9c99d09fe"
url: "https://pub.dev"
source: hosted
- version: "9.0.0"
+ version: "9.1.0"
flutter_local_notifications_windows:
dependency: transitive
description:
name: flutter_local_notifications_windows
- sha256: f8fc0652a601f83419d623c85723a3e82ad81f92b33eaa9bcc21ea1b94773e6e
+ sha256: ed46d7ae4ec9d19e4c8fa2badac5fe27ba87a3fe387343ce726f927af074ec98
url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.0.2"
flutter_localizations:
dependency: "direct main"
description: flutter
@@ -679,10 +663,10 @@ packages:
dependency: "direct main"
description:
name: flutter_svg
- sha256: d44bf546b13025ec7353091516f6881f1d4c633993cb109c3916c3a0159dadf1
+ sha256: cd57f7969b4679317c17af6fd16ee233c1e60a82ed209d8a475c54fd6fd6f845
url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.2.0"
flutter_test:
dependency: "direct dev"
description: flutter
@@ -697,10 +681,10 @@ packages:
dependency: "direct main"
description:
name: freerasp
- sha256: cfff05a951f6314475cefbe6f37c385afd1c36989389735bd78373182fa7d706
+ sha256: a6c3f534499959152f0b9a24779f45dcac21f1c7e139c1cce26c0a80f68ca7a4
url: "https://pub.dev"
source: hosted
- version: "7.0.0"
+ version: "7.2.1"
freezed:
dependency: "direct dev"
description:
@@ -713,10 +697,10 @@ packages:
dependency: "direct main"
description:
name: freezed_annotation
- sha256: c87ff004c8aa6af2d531668b46a4ea379f7191dc6dfa066acd53d506da6e044b
+ sha256: "7294967ff0a6d98638e7acb774aac3af2550777accd8149c90af5b014e6d44d8"
url: "https://pub.dev"
source: hosted
- version: "3.0.0"
+ version: "3.1.0"
frontend_server_client:
dependency: transitive
description:
@@ -745,42 +729,42 @@ packages:
dependency: "direct main"
description:
name: google_sign_in
- sha256: d0a2c3bcb06e607bb11e4daca48bd4b6120f0bbc4015ccebbe757d24ea60ed2a
+ sha256: "939a8b58f84c4053811b8c1bc9adbcb59449a15b37958264bbf60020698cca0e"
url: "https://pub.dev"
source: hosted
- version: "6.3.0"
+ version: "7.1.1"
google_sign_in_android:
dependency: transitive
description:
name: google_sign_in_android
- sha256: d5e23c56a4b84b6427552f1cf3f98f716db3b1d1a647f16b96dbb5b93afa2805
+ sha256: f256b8f0e6c09d135c166fe20b25256e24d60fe1a72e6bdc112a200bd0d555b4
url: "https://pub.dev"
source: hosted
- version: "6.2.1"
+ version: "7.0.3"
google_sign_in_ios:
dependency: transitive
description:
name: google_sign_in_ios
- sha256: "102005f498ce18442e7158f6791033bbc15ad2dcc0afa4cf4752e2722a516c96"
+ sha256: c7ee744ebbcd98353966dbdee735d4fca085226f6bf725c6bea8a5c8fe0055bc
url: "https://pub.dev"
source: hosted
- version: "5.9.0"
+ version: "6.1.0"
google_sign_in_platform_interface:
dependency: transitive
description:
name: google_sign_in_platform_interface
- sha256: "5f6f79cf139c197261adb6ac024577518ae48fdff8e53205c5373b5f6430a8aa"
+ sha256: "8736443134d2cccadd4f228d600177cb3947e36683466a6ab96877ce6932885a"
url: "https://pub.dev"
source: hosted
- version: "2.5.0"
+ version: "3.0.0"
google_sign_in_web:
dependency: transitive
description:
name: google_sign_in_web
- sha256: "460547beb4962b7623ac0fb8122d6b8268c951cf0b646dd150d60498430e4ded"
+ sha256: "09ac306b2787b48f19c857b9f93375b654f774643c75bd6a1a078c85f4f7b468"
url: "https://pub.dev"
source: hosted
- version: "0.12.4+4"
+ version: "1.0.0"
graphs:
dependency: transitive
description:
@@ -937,10 +921,10 @@ packages:
dependency: transitive
description:
name: lints
- sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
+ sha256: a5e2b223cb7c9c8efdc663ef484fdd95bb243bff242ef5b13e26883547fce9a0
url: "https://pub.dev"
source: hosted
- version: "5.1.1"
+ version: "6.0.0"
logging:
dependency: transitive
description:
@@ -993,10 +977,10 @@ packages:
dependency: "direct dev"
description:
name: netglade_analysis
- sha256: "67778583fbddc666daddb53a9ab948bf5a37cbfb949c5d7fdf51b87b0cd1746a"
+ sha256: "5f3b6824ad4b341d7c75eb854c42045468cd9cd6ff1b62638459ba06918c0cb0"
url: "https://pub.dev"
source: hosted
- version: "16.1.0"
+ version: "18.0.0"
package_config:
dependency: transitive
description:
@@ -1089,34 +1073,34 @@ packages:
dependency: "direct dev"
description:
name: patrol
- sha256: "254493e63a7307ee6080c2f6ab649f4dca404a9871d9b98d473563127c18823b"
+ sha256: "8432f7d71f5d40788804f1a5662f082dc10c6c991ec1160c0cd6e4ecf1aed542"
url: "https://pub.dev"
source: hosted
- version: "3.15.2"
+ version: "3.18.0"
patrol_finders:
dependency: transitive
description:
name: patrol_finders
- sha256: "8787f9d5c3417b72e8959a55ad51c024cc0594d15e5db85bc179c4d8faa0c493"
+ sha256: "4a658d7d560de523f92deb3fa3326c78747ca0bf7e7f4b8788c012463138b628"
url: "https://pub.dev"
source: hosted
- version: "2.7.2"
+ version: "2.9.0"
patrol_log:
dependency: transitive
description:
name: patrol_log
- sha256: "98b2701400c7a00b11533ab942bdeb44c3c714746e7cdb12e6cb93b6d06361da"
+ sha256: "9fed4143980df1e3bbcfa00d0b443c7d68f04f9132317b7698bbc37f8a5a58c5"
url: "https://pub.dev"
source: hosted
- version: "0.3.0"
+ version: "0.5.0"
permission_handler:
dependency: "direct main"
description:
name: permission_handler
- sha256: "2d070d8684b68efb580a5997eb62f675e8a885ef0be6e754fb9ef489c177470f"
+ sha256: bc917da36261b00137bbc8896bf1482169cd76f866282368948f032c8c1caae1
url: "https://pub.dev"
source: hosted
- version: "12.0.0+1"
+ version: "12.0.1"
permission_handler_android:
dependency: transitive
description:
@@ -1193,10 +1177,10 @@ packages:
dependency: transitive
description:
name: posix
- sha256: f0d7856b6ca1887cfa6d1d394056a296ae33489db914e365e2044fdada449e62
+ sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61"
url: "https://pub.dev"
source: hosted
- version: "6.0.2"
+ version: "6.0.3"
pretty_dio_logger:
dependency: "direct main"
description:
@@ -1438,10 +1422,10 @@ packages:
dependency: transitive
description:
name: source_helper
- sha256: "86d247119aedce8e63f4751bd9626fc9613255935558447569ad42f9f5b48b3c"
+ sha256: "4f81479fe5194a622cdd1713fe1ecb683a6e6c85cd8cec8e2e35ee5ab3fdf2a1"
url: "https://pub.dev"
source: hosted
- version: "1.3.5"
+ version: "1.3.6"
source_span:
dependency: transitive
description:
@@ -1526,10 +1510,10 @@ packages:
dependency: transitive
description:
name: talker_logger
- sha256: d8d2afd912c4a185bc125d8ae84d5960c3505f7ec52856e732a4b8a0db510b5d
+ sha256: "778ec673f1b71a6516e5576ae8d90ea23bbbcf9f405a97cc30e8ccdc33e26d27"
url: "https://pub.dev"
source: hosted
- version: "4.7.9"
+ version: "4.9.3"
term_glyph:
dependency: transitive
description:
@@ -1598,10 +1582,10 @@ packages:
dependency: "direct main"
description:
name: url_launcher
- sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
+ sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8
url: "https://pub.dev"
source: hosted
- version: "6.3.1"
+ version: "6.3.2"
url_launcher_android:
dependency: transitive
description:
@@ -1670,10 +1654,10 @@ packages:
dependency: transitive
description:
name: vector_graphics
- sha256: "44cc7104ff32563122a929e4620cf3efd584194eec6d1d913eb5ba593dbcf6de"
+ sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6
url: "https://pub.dev"
source: hosted
- version: "1.1.18"
+ version: "1.1.19"
vector_graphics_codec:
dependency: transitive
description:
@@ -1686,10 +1670,10 @@ packages:
dependency: transitive
description:
name: vector_graphics_compiler
- sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad"
+ sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331"
url: "https://pub.dev"
source: hosted
- version: "1.1.16"
+ version: "1.1.17"
vector_math:
dependency: transitive
description:
@@ -1710,10 +1694,10 @@ packages:
dependency: transitive
description:
name: watcher
- sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104"
+ sha256: "0b7fd4a0bbc4b92641dbf20adfd7e3fd1398fe17102d94b674234563e110088a"
url: "https://pub.dev"
source: hosted
- version: "1.1.1"
+ version: "1.1.2"
web:
dependency: transitive
description:
@@ -1742,10 +1726,10 @@ packages:
dependency: transitive
description:
name: win32
- sha256: "329edf97fdd893e0f1e3b9e88d6a0e627128cc17cc316a8d67fda8f1451178ba"
+ sha256: "66814138c3562338d05613a6e368ed8cfb237ad6d64a9e9334be3f309acfca03"
url: "https://pub.dev"
source: hosted
- version: "5.13.0"
+ version: "5.14.0"
win32_registry:
dependency: transitive
description:
@@ -1758,10 +1742,10 @@ packages:
dependency: "direct main"
description:
name: window_manager
- sha256: "732896e1416297c63c9e3fb95aea72d0355f61390263982a47fd519169dc5059"
+ sha256: "7eb6d6c4164ec08e1bf978d6e733f3cebe792e2a23fb07cbca25c2872bfdbdcd"
url: "https://pub.dev"
source: hosted
- version: "0.4.3"
+ version: "0.5.1"
xdg_directories:
dependency: transitive
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 5ad99bb..8e684dc 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
name: flutter_app
-description: Template project for flutter apps.
+description: Template project for Flutter apps.
publish_to: "none" # Remove this line if you wish to publish to pub.dev
version: 1.0.0+10000000 #1 00 00 000
@@ -22,10 +22,10 @@ dependencies:
riverpod_annotation: 2.6.1
# Navigation
- auto_route: 10.0.1
+ auto_route: 10.1.0+1
# Data Structures
- freezed_annotation: 3.0.0
+ freezed_annotation: 3.1.0
json_annotation: 4.9.0
# Network
@@ -35,26 +35,25 @@ dependencies:
shared_preferences: 2.5.3
# Firebase
- firebase_analytics: 11.4.6
- firebase_auth: 5.5.4
- firebase_core: 3.13.1
- firebase_crashlytics: 4.3.6
- firebase_dynamic_links: 6.1.6
- firebase_messaging: 15.2.6
- firebase_remote_config: 5.4.4
+ firebase_analytics: 12.0.0
+ firebase_auth: 6.0.0
+ firebase_core: 4.0.0
+ firebase_crashlytics: 5.0.0
+ firebase_messaging: 16.0.0
+ firebase_remote_config: 6.0.0
# Authentication
- google_sign_in: 6.3.0
+ google_sign_in: 7.1.1
sign_in_with_apple: 7.0.1
# Device
- device_info_plus: 11.4.0
+ device_info_plus: 11.5.0
package_info_plus: 8.3.0
path_provider: 2.1.5
- window_manager: 0.4.3
+ window_manager: 0.5.1
# Security
- freerasp: 7.0.0
+ freerasp: 7.2.1
# Logging
pretty_dio_logger: 1.4.0
@@ -65,12 +64,12 @@ dependencies:
# Resources
extended_image: 10.0.1
flutter_native_splash: 2.4.6
- flutter_svg: 2.1.0
+ flutter_svg: 2.2.0
intl: 0.20.2
# UI
flutter_animate: 4.5.2
- flutter_local_notifications: 19.2.1
+ flutter_local_notifications: 19.4.0
modal_bottom_sheet: 3.0.0
universal_html: 2.2.4
@@ -78,8 +77,8 @@ dependencies:
app_settings: 6.1.1
collection: 1.19.1
crypto: 3.0.6
- permission_handler: 12.0.0+1
- url_launcher: 6.3.1
+ permission_handler: 12.0.1
+ url_launcher: 6.3.2
dev_dependencies:
@@ -87,7 +86,7 @@ dev_dependencies:
sdk: flutter
# Build Runner
- build_runner: 2.4.15
+ build_runner: 2.5.4
# State management
riverpod_generator: 2.6.5
@@ -100,16 +99,16 @@ dev_dependencies:
json_serializable: 6.9.5
# Resources
- flutter_gen_runner: 5.10.0
+ flutter_gen_runner: 5.11.0
# Lint
custom_lint: 0.7.5
- flutter_lints: 5.0.0
- netglade_analysis: 16.1.0
+ flutter_lints: 6.0.0
+ netglade_analysis: 18.0.0
riverpod_lint: 2.6.5
# UI Tests
- patrol: 3.15.2
+ patrol: 3.18.0
patrol: