From a436d52641291e1bc7e85f9dd705d3f3e909dbe6 Mon Sep 17 00:00:00 2001 From: ObaidAbdullah16 Date: Sat, 4 Apr 2026 14:06:59 +0530 Subject: [PATCH 1/2] fix: resolve all flutter analyze errors and deprecation warnings - Replace FlatButton with TextButton in bottom_sheet_setup.dart and confirm_bottom_sheet_view.dart (removed in Flutter 3.x) - Remove deprecated toggleableActiveColor from app_theme.dart - Replace deprecated 'primary:' with 'backgroundColor:' across multiple files - Replace deprecated textTheme.subtitle1 with titleMedium - Downgrade stacked_generator from ^0.7.13 to ^0.7.8 to resolve test_api version conflict with Flutter 3.x SDK Fixes #185, closes #177 --- lib/theme/app_theme.dart | 2 - lib/ui/shared/shared_styles.dart | 4 +- lib/ui/views/Download/download_view.dart | 9 +- lib/ui/views/IRSSI/IRSSI_view.dart | 12 +- .../disk_explorer/disk_explorer_view.dart | 9 +- lib/ui/views/login/login_view.dart | 2 +- .../dumb_widgets/document_type_card.dart | 4 +- .../password_change_dialog_widget.dart | 2 +- .../dumb_widgets/torrent_label_dialog.dart | 2 +- .../bottom_sheets/bottom_sheet_setup.dart | 10 +- .../confirm_bottom_sheet_view.dart | 7 +- .../sort_bottom_sheet_view.dart | 73 +- .../url_bottomsheet_view.dart | 4 +- pubspec.lock | 829 +++++++++++------- pubspec.yaml | 2 +- test/helpers/test_helpers.dart | 22 +- 16 files changed, 608 insertions(+), 385 deletions(-) diff --git a/lib/theme/app_theme.dart b/lib/theme/app_theme.dart index 0f7ae96..45d05ec 100644 --- a/lib/theme/app_theme.dart +++ b/lib/theme/app_theme.dart @@ -10,7 +10,6 @@ class AppTheme { ), primaryColor: kBluePrimaryLT, disabledColor: kGreyLT, - toggleableActiveColor: kIndigoSecondaryLT, colorScheme: ColorScheme.fromSwatch().copyWith(secondary: kIndigoSecondaryLT), ); @@ -23,7 +22,6 @@ class AppTheme { ), primaryColor: kPrimaryDT, disabledColor: kGreyDT, - toggleableActiveColor: kSecondaryDT, colorScheme: ColorScheme.fromSwatch().copyWith(secondary: kSecondaryDT), ); } diff --git a/lib/ui/shared/shared_styles.dart b/lib/ui/shared/shared_styles.dart index 15b2ab7..bc13fb2 100644 --- a/lib/ui/shared/shared_styles.dart +++ b/lib/ui/shared/shared_styles.dart @@ -43,7 +43,7 @@ BoxDecoration kdecoration = BoxDecoration( color: Colors.white, boxShadow: [ BoxShadow( - color: Colors.grey.withOpacity(0.5), + color: Colors.grey.withValues(alpha: 0.5), spreadRadius: 5, blurRadius: 7, offset: Offset(0, 3), // changes position of shadow @@ -56,7 +56,7 @@ BoxDecoration mdecoration = BoxDecoration( color: Colors.white, boxShadow: [ BoxShadow( - color: Colors.grey.withOpacity(0.5), + color: Colors.grey.withValues(alpha: 0.5), spreadRadius: 2, blurRadius: 3, offset: Offset(0, 3), // changes position of shadow diff --git a/lib/ui/views/Download/download_view.dart b/lib/ui/views/Download/download_view.dart index 23c4179..1382c4b 100644 --- a/lib/ui/views/Download/download_view.dart +++ b/lib/ui/views/Download/download_view.dart @@ -13,8 +13,13 @@ class DownloadView extends StatelessWidget { @override Widget build(BuildContext context) { return ViewModelBuilder.reactive( - builder: (context, model, child) => WillPopScope( - onWillPop: model.onBackPress, + builder: (context, model, child) => PopScope( + canPop: false, + onPopInvokedWithResult: (bool didPop, dynamic result) async { + if (didPop) return; + final shouldPop = await model.onBackPress(); + if (shouldPop && context.mounted) Navigator.of(context).pop(); + }, child: Scaffold( body: Container( child: Column( diff --git a/lib/ui/views/IRSSI/IRSSI_view.dart b/lib/ui/views/IRSSI/IRSSI_view.dart index 2bf3946..409d785 100644 --- a/lib/ui/views/IRSSI/IRSSI_view.dart +++ b/lib/ui/views/IRSSI/IRSSI_view.dart @@ -17,7 +17,7 @@ Logger log = getLogger("IRSSIView"); class IRSSIView extends StatelessWidget { @override Widget build(BuildContext context) { - var subtitle1 = Theme.of(context).textTheme.subtitle1?.copyWith( + var subtitle1 = Theme.of(context).textTheme.titleMedium?.copyWith( fontSize: 15, color: (AppStateNotifier.isDarkModeOn) ? Colors.white : Colors.black, ); @@ -190,18 +190,18 @@ class IRSSIView extends StatelessWidget { ElevatedButton.styleFrom( textStyle: Theme.of(context) .textTheme - .button + .labelLarge ?.copyWith( color: Colors.white), - primary: model + backgroundColor: model .irssiButton == IrssiButtons.none ? Colors.grey : Theme.of(context) .primaryColor, padding: const EdgeInsets - .symmetric( + .symmetric( horizontal: 20.0, vertical: 5), shape: @@ -218,7 +218,7 @@ class IRSSIView extends StatelessWidget { : "Refresh", style: Theme.of(context) .textTheme - .button + .labelLarge ?.copyWith( color: Colors.white), @@ -254,7 +254,7 @@ class IRSSIView extends StatelessWidget { index]; var subtitle1 = Theme.of(context) .textTheme - .subtitle1 + .titleMedium ?.copyWith( fontSize: 15, color: (AppStateNotifier diff --git a/lib/ui/views/disk_explorer/disk_explorer_view.dart b/lib/ui/views/disk_explorer/disk_explorer_view.dart index 34d43c7..0333d86 100644 --- a/lib/ui/views/disk_explorer/disk_explorer_view.dart +++ b/lib/ui/views/disk_explorer/disk_explorer_view.dart @@ -17,8 +17,13 @@ class DiskExplorerView extends StatelessWidget { @override Widget build(BuildContext context) { return ViewModelBuilder.reactive( - builder: (context, model, child) => WillPopScope( - onWillPop: model.onBackPress, + builder: (context, model, child) => PopScope( + canPop: false, + onPopInvokedWithResult: (bool didPop, dynamic result) async { + if (didPop) return; + final shouldPop = await model.onBackPress(); + if (shouldPop && context.mounted) Navigator.of(context).pop(); + }, child: Scaffold( appBar: AppBar( backgroundColor: Theme.of(context).primaryColor, diff --git a/lib/ui/views/login/login_view.dart b/lib/ui/views/login/login_view.dart index 807e082..96a386f 100644 --- a/lib/ui/views/login/login_view.dart +++ b/lib/ui/views/login/login_view.dart @@ -156,7 +156,7 @@ class LoginView extends StatelessWidget { side: BorderSide( color: Theme.of(context).primaryColor), ), - primary: !AppStateNotifier.isDarkModeOn + backgroundColor: !AppStateNotifier.isDarkModeOn ? Colors.white : Colors.black), child: Padding( diff --git a/lib/ui/widgets/dumb_widgets/document_type_card.dart b/lib/ui/widgets/dumb_widgets/document_type_card.dart index 3b01100..1fb4204 100644 --- a/lib/ui/widgets/dumb_widgets/document_type_card.dart +++ b/lib/ui/widgets/dumb_widgets/document_type_card.dart @@ -17,7 +17,7 @@ class DocumentTypeCard extends StatelessWidget { @override Widget build(BuildContext context) { - var subtitle1 = Theme.of(context).textTheme.subtitle1?.copyWith( + var subtitle1 = Theme.of(context).textTheme.titleMedium?.copyWith( fontSize: 16, color: (isSelected) ? Colors.white : Colors.black, ); @@ -31,7 +31,7 @@ class DocumentTypeCard extends StatelessWidget { borderRadius: BorderRadius.circular(10), color: isSelected ? Theme.of(context).primaryColor - : Theme.of(context).colorScheme.background, + : Theme.of(context).colorScheme.surface, ), width: App(context).appWidth(0.4), child: Row( diff --git a/lib/ui/widgets/dumb_widgets/password_change_dialog_widget.dart b/lib/ui/widgets/dumb_widgets/password_change_dialog_widget.dart index f9b5e70..14e4a50 100644 --- a/lib/ui/widgets/dumb_widgets/password_change_dialog_widget.dart +++ b/lib/ui/widgets/dumb_widgets/password_change_dialog_widget.dart @@ -46,7 +46,7 @@ class _PasswordChangeDialogState extends State { width: double.infinity, child: ElevatedButton( style: ElevatedButton.styleFrom( - primary: !AppStateNotifier.isDarkModeOn + backgroundColor: !AppStateNotifier.isDarkModeOn ? Colors.white : kGreyDT, shape: RoundedRectangleBorder( diff --git a/lib/ui/widgets/dumb_widgets/torrent_label_dialog.dart b/lib/ui/widgets/dumb_widgets/torrent_label_dialog.dart index 68d5e43..b5fd970 100644 --- a/lib/ui/widgets/dumb_widgets/torrent_label_dialog.dart +++ b/lib/ui/widgets/dumb_widgets/torrent_label_dialog.dart @@ -74,7 +74,7 @@ class TorrentLabelDialog extends StatelessWidget { borderRadius: BorderRadius.circular(5.0), side: BorderSide(color: Theme.of(context).primaryColor), ), - primary: Theme.of(context).primaryColor, + backgroundColor: Theme.of(context).primaryColor, ), child: Text( text, diff --git a/lib/ui/widgets/smart_widgets/bottom_sheets/bottom_sheet_setup.dart b/lib/ui/widgets/smart_widgets/bottom_sheets/bottom_sheet_setup.dart index 1e48ec3..a02aeac 100644 --- a/lib/ui/widgets/smart_widgets/bottom_sheets/bottom_sheet_setup.dart +++ b/lib/ui/widgets/smart_widgets/bottom_sheets/bottom_sheet_setup.dart @@ -1,5 +1,3 @@ -// ignore_for_file: deprecated_member_use - import 'package:flutter/material.dart'; import 'package:rutorrentflutter/app/app.locator.dart'; import 'package:rutorrentflutter/enums/bottom_sheet_type.dart'; @@ -85,15 +83,17 @@ class _FloatingBoxBottomSheet extends StatelessWidget { fontWeight: FontWeight.bold), ), ), - FlatButton( + TextButton( onPressed: () => model.response(completer, textFieldController1.text), + style: TextButton.styleFrom( + backgroundColor: Theme.of(context).primaryColor, + ), child: Text( request.mainButtonTitle!, style: TextStyle( color: Colors.white, fontWeight: FontWeight.bold), ), - color: Theme.of(context).primaryColor, ) ], ) @@ -124,7 +124,7 @@ class BottomSheetViewModel extends BaseViewModel { errorText = "Maximum limit of 250 characters exceeded"; } else { func( - SheetResponse(confirmed: true, responseData: responseText), + SheetResponse(confirmed: true, data: responseText), ); } } diff --git a/lib/ui/widgets/smart_widgets/bottom_sheets/confirm_bottom_sheet/confirm_bottom_sheet_view.dart b/lib/ui/widgets/smart_widgets/bottom_sheets/confirm_bottom_sheet/confirm_bottom_sheet_view.dart index d27859d..1e7591c 100644 --- a/lib/ui/widgets/smart_widgets/bottom_sheets/confirm_bottom_sheet/confirm_bottom_sheet_view.dart +++ b/lib/ui/widgets/smart_widgets/bottom_sheets/confirm_bottom_sheet/confirm_bottom_sheet_view.dart @@ -49,14 +49,15 @@ class ConfirmBottomSheetView extends StatelessWidget { style: TextStyle(color: Theme.of(context).primaryColor), ), ), - // ignore: deprecated_member_use - FlatButton( + TextButton( onPressed: () => completer(SheetResponse(confirmed: true)), + style: TextButton.styleFrom( + backgroundColor: Theme.of(context).primaryColor, + ), child: Text( request.mainButtonTitle!, style: TextStyle(color: Colors.white), ), - color: Theme.of(context).primaryColor, ) ], ) diff --git a/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart b/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart index bbaf487..00ce5dc 100644 --- a/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart +++ b/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart @@ -60,41 +60,44 @@ class SortBottomSheetView extends StatelessWidget { Divider( thickness: 2, ), - Container( - height: 300, - child: ListView.builder( - itemCount: Sort.values.length - 1, - itemBuilder: (context, index) { - Map sortMap = model.getSortMap(); - return sortMap[Sort.values[index]] == null - ? Container() - : GestureDetector( - behavior: HitTestBehavior.opaque, - onTap: () { - model.setSortPreference( - completer, Sort.values[index]); - Navigator.of(context).pop(); - }, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text( - sortMap[Sort.values[index]]!, - style: TextStyle(fontWeight: FontWeight.w600), - ), - Radio( - groupValue: model.sortPreference, - value: Sort.values[index], - onChanged: (selected) { - model.setSortPreference( - completer, Sort.values[index]); - Navigator.of(context).pop(); - }, - ), - ], - ), - ); - }, + RadioGroup( + groupValue: model.sortPreference, + onChanged: (Sort? selected) { + if (selected != null) { + model.setSortPreference(completer, selected); + Navigator.of(context).pop(); + } + }, + child: Container( + height: 300, + child: ListView.builder( + itemCount: Sort.values.length - 1, + itemBuilder: (context, index) { + Map sortMap = model.getSortMap(); + return sortMap[Sort.values[index]] == null + ? Container() + : GestureDetector( + behavior: HitTestBehavior.opaque, + onTap: () { + model.setSortPreference( + completer, Sort.values[index]); + Navigator.of(context).pop(); + }, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + sortMap[Sort.values[index]]!, + style: TextStyle(fontWeight: FontWeight.w600), + ), + Radio( + value: Sort.values[index], + ), + ], + ), + ); + }, + ), ), ) ], diff --git a/lib/ui/widgets/smart_widgets/url_bottom_sheet/url_bottomsheet_view.dart b/lib/ui/widgets/smart_widgets/url_bottom_sheet/url_bottomsheet_view.dart index 8c15b55..40d8e2b 100644 --- a/lib/ui/widgets/smart_widgets/url_bottom_sheet/url_bottomsheet_view.dart +++ b/lib/ui/widgets/smart_widgets/url_bottom_sheet/url_bottomsheet_view.dart @@ -74,7 +74,7 @@ class URLBottomSheetView extends StatelessWidget { side: BorderSide(color: Theme.of(context).primaryColor), ), side: BorderSide(color: Theme.of(context).primaryColor), - primary: Theme.of(context).primaryColor), + backgroundColor: Theme.of(context).primaryColor), child: Padding( padding: const EdgeInsets.symmetric(horizontal: 28, vertical: 16), @@ -107,7 +107,7 @@ class URLBottomSheetView extends StatelessWidget { BorderSide(color: Theme.of(context).primaryColor), ), side: BorderSide(color: Theme.of(context).primaryColor), - primary: Theme.of(context).primaryColor), + backgroundColor: Theme.of(context).primaryColor), child: Padding( padding: const EdgeInsets.symmetric( horizontal: 28, vertical: 16), diff --git a/pubspec.lock b/pubspec.lock index 54e58b5..95f06ee 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,322 +5,384 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - url: "https://pub.dartlang.org" + sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" + url: "https://pub.dev" source: hosted - version: "43.0.0" + version: "67.0.0" + _flutterfire_internals: + dependency: transitive + description: + name: _flutterfire_internals + sha256: "2f428053492f92303e42c9afa8e3a78ad1886760e7b594e2b5a6b6ee47376360" + url: "https://pub.dev" + source: hosted + version: "1.0.2" analyzer: dependency: transitive description: name: analyzer - url: "https://pub.dartlang.org" + sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" + url: "https://pub.dev" source: hosted - version: "4.3.1" + version: "6.4.1" archive: dependency: transitive description: name: archive - url: "https://pub.dartlang.org" + sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d + url: "https://pub.dev" source: hosted - version: "3.3.1" + version: "3.6.1" args: dependency: transitive description: name: args - url: "https://pub.dartlang.org" + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.7.0" async: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 + url: "https://pub.dev" source: hosted - version: "2.8.2" + version: "2.13.1" awesome_notifications: dependency: "direct main" description: name: awesome_notifications - url: "https://pub.dartlang.org" + sha256: "0c055bdbc88140252256603f95d01ffa4aeacff2c10d5a4a4beb226503452919" + url: "https://pub.dev" source: hosted version: "0.0.6+12" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.2" build: dependency: transitive description: name: build - url: "https://pub.dartlang.org" + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.4.1" build_config: dependency: transitive description: name: build_config - url: "https://pub.dartlang.org" + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.2" build_daemon: dependency: transitive description: name: build_daemon - url: "https://pub.dartlang.org" + sha256: bf05f6e12cfea92d3c09308d7bcdab1906cd8a179b023269eed00c071004b957 + url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "4.1.1" build_resolvers: dependency: transitive description: name: build_resolvers - url: "https://pub.dartlang.org" + sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + url: "https://pub.dev" source: hosted - version: "2.0.9" + version: "2.4.2" build_runner: dependency: "direct dev" description: name: build_runner - url: "https://pub.dartlang.org" + sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" + url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.4.13" build_runner_core: dependency: transitive description: name: build_runner_core - url: "https://pub.dartlang.org" + sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 + url: "https://pub.dev" source: hosted - version: "7.2.3" + version: "7.3.2" built_collection: dependency: transitive description: name: built_collection - url: "https://pub.dartlang.org" + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" source: hosted version: "5.1.1" built_value: dependency: transitive description: name: built_value - url: "https://pub.dartlang.org" + sha256: "0730c18c770d05636a8f945c32a4d7d81cb6e0f0148c8db4ad12e7748f7e49af" + url: "https://pub.dev" source: hosted - version: "8.4.0" + version: "8.12.5" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" + sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b + url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.1" checked_yaml: dependency: transitive description: name: checked_yaml - url: "https://pub.dartlang.org" + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" + url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "2.0.4" chewie: dependency: "direct main" description: name: chewie - url: "https://pub.dartlang.org" + sha256: "745e81e84c6d7f3835f89f85bb49771c0a66099e4caf8f8e9e9a372bc66fb2c1" + url: "https://pub.dev" source: hosted - version: "1.3.4" + version: "1.5.0" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.2" + cloud_firestore_platform_interface: + dependency: transitive + description: + name: cloud_firestore_platform_interface + sha256: d023142c18c28b2610c23c196e829c96976569cc2aa2f8e45328ae8a64c428d1 + url: "https://pub.dev" + source: hosted + version: "5.7.7" + cloud_firestore_web: + dependency: transitive + description: + name: cloud_firestore_web + sha256: "3d7d4fa8c1dc5a1f7cb33985ae0ab9924d33d76d4959fe26aed84b7d282887e3" + url: "https://pub.dev" + source: hosted + version: "2.8.10" code_builder: dependency: transitive description: name: code_builder - url: "https://pub.dartlang.org" + sha256: "6a6cab2ba4680d6423f34a9b972a4c9a94ebe1b62ecec4e1a1f2cba91fd1319d" + url: "https://pub.dev" source: hosted - version: "4.2.0" + version: "4.11.1" collection: dependency: transitive description: name: collection - url: "https://pub.dartlang.org" + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" source: hosted - version: "1.16.0" + version: "1.19.1" convert: dependency: transitive description: name: convert - url: "https://pub.dartlang.org" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.1.2" crypto: dependency: transitive description: name: crypto - url: "https://pub.dartlang.org" + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf + url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.7" csslib: dependency: transitive description: name: csslib - url: "https://pub.dartlang.org" + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" + url: "https://pub.dev" source: hosted - version: "0.17.2" + version: "1.0.2" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - url: "https://pub.dartlang.org" + sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd" + url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "1.0.9" dart_style: dependency: transitive description: name: dart_style - url: "https://pub.dartlang.org" + sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + url: "https://pub.dev" source: hosted - version: "2.2.3" + version: "2.3.6" dbus: dependency: transitive description: name: dbus - url: "https://pub.dartlang.org" + sha256: "4f814fc7e73057f78f307a6c4714fe2ffb4bdb994ab1970540a068ec4d5a45be" + url: "https://pub.dev" source: hosted version: "0.7.3" dio: dependency: "direct main" description: name: dio - url: "https://pub.dartlang.org" + sha256: "7d328c4d898a61efc3cd93655a0955858e29a0aa647f0f9e02d59b3bb275e2e8" + url: "https://pub.dev" source: hosted version: "4.0.6" fake_async: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.3.3" ffi: dependency: transitive description: name: ffi - url: "https://pub.dartlang.org" + sha256: "13a6ccf6a459a125b3fcdb6ec73bd5ff90822e071207c663bfd1f70062d51d18" + url: "https://pub.dev" source: hosted version: "1.2.1" file: dependency: transitive description: name: file - url: "https://pub.dartlang.org" + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + url: "https://pub.dev" source: hosted - version: "6.1.2" + version: "6.1.4" file_picker: dependency: "direct main" description: name: file_picker - url: "https://pub.dartlang.org" + sha256: f9245fc33aeba9e0b938d7f3785f10b7a7230e05b8fc40f5a6a8342d7899e391 + url: "https://pub.dev" source: hosted version: "3.0.4" filesize: dependency: "direct main" description: name: filesize - url: "https://pub.dartlang.org" + sha256: f53df1f27ff60e466eefcd9df239e02d4722d5e2debee92a87dfd99ac66de2af + url: "https://pub.dev" source: hosted version: "2.0.1" firebase_analytics: dependency: "direct main" description: name: firebase_analytics - url: "https://pub.dartlang.org" + sha256: "5e277bfb0ffa57a7f0935f6e6f529fcdaf27d65f195d50e5b2bc4a38a2fc00ae" + url: "https://pub.dev" source: hosted - version: "9.3.3" + version: "9.3.8" firebase_analytics_platform_interface: dependency: transitive description: name: firebase_analytics_platform_interface - url: "https://pub.dartlang.org" + sha256: "52c9bd117e2468059381aa20269f3df7362b26ee52fb24c8671cda30ea85ac53" + url: "https://pub.dev" source: hosted - version: "3.3.3" + version: "3.3.7" firebase_analytics_web: dependency: transitive description: name: firebase_analytics_web - url: "https://pub.dartlang.org" + sha256: ff1aee3a05f34f5c8f8c21a0470441c66958a509f96ccca17fdedaced141768e + url: "https://pub.dev" source: hosted - version: "0.4.2+3" + version: "0.4.2+7" firebase_core: dependency: "direct main" description: name: firebase_core - url: "https://pub.dartlang.org" + sha256: "4f1d7c13a909e82ff026679c9b8493cdeb35a9c76bc46c42bf9e2240c9e57e80" + url: "https://pub.dev" source: hosted - version: "1.21.1" + version: "1.24.0" firebase_core_platform_interface: dependency: transitive description: name: firebase_core_platform_interface - url: "https://pub.dartlang.org" + sha256: b63e3be6c96ef5c33bdec1aab23c91eb00696f6452f0519401d640938c94cba2 + url: "https://pub.dev" source: hosted - version: "4.5.1" + version: "4.8.0" firebase_core_web: dependency: transitive description: name: firebase_core_web - url: "https://pub.dartlang.org" + sha256: "839f1b48032a61962792cea1225fae030d4f27163867f181d6d2072dd40acbee" + url: "https://pub.dev" source: hosted - version: "1.7.2" + version: "1.7.3" firebase_crashlytics: dependency: "direct main" description: name: firebase_crashlytics - url: "https://pub.dartlang.org" + sha256: "09655d691972d940a89d7bb1bceb145d0051509dcb753319b36a562f96f00cae" + url: "https://pub.dev" source: hosted - version: "2.8.9" + version: "2.9.0" firebase_crashlytics_platform_interface: dependency: transitive description: name: firebase_crashlytics_platform_interface - url: "https://pub.dartlang.org" + sha256: "12085451cdad3bf36eb9470b2da3478b6076d6dd2705e5d49690828b1f7a0d02" + url: "https://pub.dev" source: hosted - version: "3.2.15" + version: "3.3.0" fixnum: dependency: transitive description: name: fixnum - url: "https://pub.dartlang.org" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.1.1" flare_flutter: dependency: transitive description: name: flare_flutter - url: "https://pub.dartlang.org" + sha256: "99d63c60f00fac81249ce6410ee015d7b125c63d8278a30da81edf3317a1f6a0" + url: "https://pub.dev" source: hosted version: "3.0.2" flare_loading: dependency: transitive description: name: flare_loading - url: "https://pub.dartlang.org" + sha256: "574edb5bccd66112bb86f946a3de564ee3bbd780b93f7f61b328cfe3b9c40171" + url: "https://pub.dev" source: hosted version: "3.0.0" flare_splash_screen: dependency: "direct main" description: name: flare_splash_screen - url: "https://pub.dartlang.org" + sha256: "406e62fc92bd85c5e326bbe12a9d3ca07e84ed8b062b7f2bc7d1cb0de7593a97" + url: "https://pub.dev" source: hosted version: "4.0.0" flutter: @@ -332,56 +394,64 @@ packages: dependency: "direct main" description: name: flutter_dotenv - url: "https://pub.dartlang.org" + sha256: b7c7be5cd9f6ef7a78429cabd2774d3c4af50e79cb2b7593e3d5d763ef95c61b + url: "https://pub.dev" source: hosted - version: "5.0.2" + version: "5.2.1" flutter_launcher_icons: dependency: "direct dev" description: name: flutter_launcher_icons - url: "https://pub.dartlang.org" + sha256: "559c600f056e7c704bd843723c21e01b5fba47e8824bd02422165bcc02a5de1d" + url: "https://pub.dev" source: hosted version: "0.9.3" flutter_local_notifications: dependency: "direct main" description: name: flutter_local_notifications - url: "https://pub.dartlang.org" + sha256: "57d0012730780fe137260dd180e072c18a73fbeeb924cdc029c18aaa0f338d64" + url: "https://pub.dev" source: hosted - version: "9.7.0" + version: "9.9.1" flutter_local_notifications_linux: dependency: transitive description: name: flutter_local_notifications_linux - url: "https://pub.dartlang.org" + sha256: b472bfc173791b59ede323661eae20f7fff0b6908fea33dd720a6ef5d576bae8 + url: "https://pub.dev" source: hosted - version: "0.5.0+1" + version: "0.5.1" flutter_local_notifications_platform_interface: dependency: transitive description: name: flutter_local_notifications_platform_interface - url: "https://pub.dartlang.org" + sha256: "21bceee103a66a53b30ea9daf677f990e5b9e89b62f222e60dd241cd08d63d3a" + url: "https://pub.dev" source: hosted version: "5.0.0" flutter_plugin_android_lifecycle: dependency: transitive description: name: flutter_plugin_android_lifecycle - url: "https://pub.dartlang.org" + sha256: "38d1c268de9097ff59cf0e844ac38759fc78f76836d37edad06fa21e182055a0" + url: "https://pub.dev" source: hosted - version: "2.0.7" + version: "2.0.34" flutter_slidable: dependency: "direct main" description: name: flutter_slidable - url: "https://pub.dartlang.org" + sha256: c7607eb808cdef19c8468246e95a133308aeaeb3971cdd9edfb9d5e31cedfbe9 + url: "https://pub.dev" source: hosted version: "0.6.0" flutter_svg: dependency: "direct main" description: name: flutter_svg - url: "https://pub.dartlang.org" + sha256: "9ac1967e2f72a08af11b05b39167920f90d043cf67163d13a544a358c8f31afa" + url: "https://pub.dev" source: hosted version: "0.22.0" flutter_test: @@ -398,770 +468,911 @@ packages: dependency: "direct main" description: name: fluttertoast - url: "https://pub.dartlang.org" + sha256: "90778fe0497fe3a09166e8cf2e0867310ff434b794526589e77ec03cf08ba8e8" + url: "https://pub.dev" source: hosted - version: "8.0.9" + version: "8.2.14" font_awesome_flutter: dependency: "direct main" description: name: font_awesome_flutter - url: "https://pub.dartlang.org" + sha256: "1f93e5799f0e6c882819e8393a05c6ca5226010f289190f2242ec19f3f0fdba5" + url: "https://pub.dev" source: hosted version: "9.2.0" frontend_server_client: dependency: transitive description: name: frontend_server_client - url: "https://pub.dartlang.org" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 + url: "https://pub.dev" source: hosted - version: "2.1.3" + version: "4.0.0" get: dependency: transitive description: name: get - url: "https://pub.dartlang.org" + sha256: "5ed34a7925b85336e15d472cc4cfe7d9ebf4ab8e8b9f688585bf6b50f4c3d79a" + url: "https://pub.dev" source: hosted - version: "4.6.5" + version: "4.7.3" get_it: dependency: transitive description: name: get_it - url: "https://pub.dartlang.org" + sha256: d85128a5dae4ea777324730dc65edd9c9f43155c109d5cc0a69cab74139fbac1 + url: "https://pub.dev" source: hosted - version: "7.2.0" + version: "7.7.0" glob: dependency: transitive description: name: glob - url: "https://pub.dartlang.org" + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.3" graphs: dependency: transitive description: name: graphs - url: "https://pub.dartlang.org" + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.3.2" hive: dependency: "direct main" description: name: hive - url: "https://pub.dartlang.org" + sha256: "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941" + url: "https://pub.dev" source: hosted version: "2.2.3" html: dependency: "direct main" description: name: html - url: "https://pub.dartlang.org" + sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" + url: "https://pub.dev" source: hosted - version: "0.15.0" + version: "0.15.6" http: dependency: "direct main" description: name: http - url: "https://pub.dartlang.org" + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + url: "https://pub.dev" source: hosted - version: "0.13.4" + version: "0.13.6" http_multi_server: dependency: transitive description: name: http_multi_server - url: "https://pub.dartlang.org" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 + url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - url: "https://pub.dartlang.org" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" source: hosted - version: "4.0.1" + version: "4.1.2" image: dependency: transitive description: name: image - url: "https://pub.dartlang.org" + sha256: "02bafd3b4f399bfeb10034deba9753d93b55ce41cd0c4d3d8b355626f80e5b32" + url: "https://pub.dev" source: hosted version: "3.1.3" injectable: dependency: "direct main" description: name: injectable - url: "https://pub.dartlang.org" + sha256: f71eb879124ed286cbd2210337b91ff5f345f146187c1f1891c172e0ac06443a + url: "https://pub.dev" source: hosted - version: "1.5.3" + version: "1.5.4" intl: dependency: "direct main" description: name: intl - url: "https://pub.dartlang.org" + sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" + url: "https://pub.dev" source: hosted version: "0.17.0" io: dependency: transitive description: name: io - url: "https://pub.dartlang.org" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b + url: "https://pub.dev" source: hosted - version: "1.0.3" + version: "1.0.5" js: dependency: transitive description: name: js - url: "https://pub.dartlang.org" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.dev" source: hosted - version: "0.6.4" + version: "0.6.7" json_annotation: dependency: transitive description: name: json_annotation - url: "https://pub.dartlang.org" + sha256: cb09e7dac6210041fad964ed7fbee004f14258b4eca4040f72d1234062ace4c8 + url: "https://pub.dev" + source: hosted + version: "4.11.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" source: hosted - version: "4.6.0" + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" logger: dependency: "direct main" description: name: logger - url: "https://pub.dartlang.org" + sha256: "7ad7215c15420a102ec687bb320a7312afd449bac63bfb1c60d9787c27b9767f" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.4.0" logging: dependency: transitive description: name: logging - url: "https://pub.dartlang.org" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.3.0" matcher: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: dc0b7dc7651697ea4ff3e69ef44b0407ea32c487a39fff6a4004fa585e901861 + url: "https://pub.dev" source: hosted - version: "0.12.11" + version: "0.12.19" material_color_utilities: dependency: transitive description: name: material_color_utilities - url: "https://pub.dartlang.org" + sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b" + url: "https://pub.dev" source: hosted - version: "0.1.4" + version: "0.13.0" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" + url: "https://pub.dev" source: hosted - version: "1.7.0" + version: "1.17.0" mime: dependency: transitive description: name: mime - url: "https://pub.dartlang.org" + sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.0.6" mockito: dependency: "direct dev" description: name: mockito - url: "https://pub.dartlang.org" + sha256: "6841eed20a7befac0ce07df8116c8b8233ed1f4486a7647c7fc5a02ae6163917" + url: "https://pub.dev" source: hosted - version: "5.2.0" + version: "5.4.4" modal_bottom_sheet: dependency: "direct main" description: name: modal_bottom_sheet - url: "https://pub.dartlang.org" + sha256: ef533916a2c3089571c32bd34e410faca77a6849a3f28f748e0794525c5658a0 + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.2" modal_progress_hud_nsn: dependency: "direct main" description: name: modal_progress_hud_nsn - url: "https://pub.dartlang.org" + sha256: "3cfb24341ea371a7a8bf6aa269a7cfb283d96c9b5631bb56ba751478037ad320" + url: "https://pub.dev" source: hosted version: "0.2.1" nested: dependency: transitive description: name: nested - url: "https://pub.dartlang.org" + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" source: hosted version: "1.0.0" open_file: dependency: "direct main" description: name: open_file - url: "https://pub.dartlang.org" + sha256: "5cd0288033d613ee7908aa974b7ff00805ae55d253f64d311603cf2e30613ca8" + url: "https://pub.dev" source: hosted version: "3.2.1" package_config: dependency: transitive description: name: package_config - url: "https://pub.dartlang.org" + sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.2.0" package_info: dependency: "direct main" description: name: package_info - url: "https://pub.dartlang.org" + sha256: "6c07d9d82c69e16afeeeeb6866fe43985a20b3b50df243091bfc4a4ad2b03b75" + url: "https://pub.dev" source: hosted version: "2.0.2" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" source: hosted - version: "1.8.1" + version: "1.9.1" path_drawing: dependency: transitive description: name: path_drawing - url: "https://pub.dartlang.org" + sha256: "3bdd251dae9ffaef944450b73f168610db7e968e7b20daf0c3907f8b4aafc8a2" + url: "https://pub.dev" source: hosted version: "0.5.1+1" path_parsing: dependency: transitive description: name: path_parsing - url: "https://pub.dartlang.org" + sha256: ee5c47c1058ad66b4a41746ec3996af9593d0858872807bcd64ac118f0700337 + url: "https://pub.dev" source: hosted version: "0.2.1" path_provider: dependency: "direct main" description: name: path_provider - url: "https://pub.dartlang.org" + sha256: "3087813781ab814e4157b172f1a11c46be20179fcc9bea043e0fba36bc0acaa2" + url: "https://pub.dev" source: hosted - version: "2.0.11" + version: "2.0.15" path_provider_android: dependency: transitive description: name: path_provider_android - url: "https://pub.dartlang.org" + sha256: "149441ca6e4f38193b2e004c0ca6376a3d11f51fa5a77552d8bd4d2b0c0912ba" + url: "https://pub.dev" source: hosted - version: "2.0.16" - path_provider_ios: + version: "2.2.23" + path_provider_foundation: dependency: transitive description: - name: path_provider_ios - url: "https://pub.dartlang.org" + name: path_provider_foundation + sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4" + url: "https://pub.dev" source: hosted - version: "2.0.10" + version: "2.5.1" path_provider_linux: dependency: transitive description: name: path_provider_linux - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.7" - path_provider_macos: - dependency: transitive - description: - name: path_provider_macos - url: "https://pub.dartlang.org" + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" source: hosted - version: "2.0.6" + version: "2.2.1" path_provider_platform_interface: dependency: transitive description: name: path_provider_platform_interface - url: "https://pub.dartlang.org" + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" source: hosted - version: "2.0.4" + version: "2.1.2" path_provider_windows: dependency: transitive description: name: path_provider_windows - url: "https://pub.dartlang.org" + sha256: a34ecd7fb548f8e57321fd8e50d865d266941b54e6c3b7758cf8f37c24116905 + url: "https://pub.dev" source: hosted version: "2.0.7" percent_indicator: dependency: "direct main" description: name: percent_indicator - url: "https://pub.dartlang.org" + sha256: "157d29133bbc6ecb11f923d36e7960a96a3f28837549a20b65e5135729f0f9fd" + url: "https://pub.dev" source: hosted - version: "4.2.2" + version: "4.2.5" petitparser: dependency: transitive description: name: petitparser - url: "https://pub.dartlang.org" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 + url: "https://pub.dev" source: hosted - version: "5.0.0" + version: "5.4.0" platform: dependency: transitive description: name: platform - url: "https://pub.dartlang.org" + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.1.6" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface - url: "https://pub.dartlang.org" + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.8" pool: dependency: transitive description: name: pool - url: "https://pub.dartlang.org" + sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" + url: "https://pub.dev" source: hosted - version: "1.5.1" + version: "1.5.2" process: dependency: transitive description: name: process - url: "https://pub.dartlang.org" + sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" + url: "https://pub.dev" source: hosted version: "4.2.4" provider: dependency: transitive description: name: provider - url: "https://pub.dartlang.org" + sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" + url: "https://pub.dev" source: hosted - version: "6.0.3" + version: "6.1.5+1" pub_semver: dependency: transitive description: name: pub_semver - url: "https://pub.dartlang.org" + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.2.0" pubspec_parse: dependency: transitive description: name: pubspec_parse - url: "https://pub.dartlang.org" + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.5.0" recase: dependency: transitive description: name: recase - url: "https://pub.dartlang.org" + sha256: e4eb4ec2dcdee52dcf99cb4ceabaffc631d7424ee55e56f280bc039737f89213 + url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "4.1.0" rxdart: dependency: transitive description: name: rxdart - url: "https://pub.dartlang.org" + sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" + url: "https://pub.dev" source: hosted - version: "0.27.5" + version: "0.28.0" shared_preferences: dependency: "direct main" description: name: shared_preferences - url: "https://pub.dartlang.org" + sha256: c3025c5534b01739267eb7d76959bbc25a6d10f6988e1c2a3036940133dd10bf + url: "https://pub.dev" source: hosted - version: "2.0.15" + version: "2.5.5" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - url: "https://pub.dartlang.org" + sha256: e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53 + url: "https://pub.dev" source: hosted - version: "2.0.12" - shared_preferences_ios: + version: "2.4.23" + shared_preferences_foundation: dependency: transitive description: - name: shared_preferences_ios - url: "https://pub.dartlang.org" + name: shared_preferences_foundation + sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.5.6" shared_preferences_linux: dependency: transitive description: name: shared_preferences_linux - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.1" - shared_preferences_macos: - dependency: transitive - description: - name: shared_preferences_macos - url: "https://pub.dartlang.org" + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" source: hosted - version: "2.0.4" + version: "2.4.1" shared_preferences_platform_interface: dependency: transitive description: name: shared_preferences_platform_interface - url: "https://pub.dartlang.org" + sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9" + url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.4.2" shared_preferences_web: dependency: transitive description: name: shared_preferences_web - url: "https://pub.dartlang.org" + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 + url: "https://pub.dev" source: hosted - version: "2.0.4" + version: "2.4.3" shared_preferences_windows: dependency: transitive description: name: shared_preferences_windows - url: "https://pub.dartlang.org" + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.4.1" shelf: dependency: transitive description: name: shelf - url: "https://pub.dartlang.org" + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 + url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.2" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - url: "https://pub.dartlang.org" + sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67 + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "2.0.1" shimmer: dependency: "direct main" description: name: shimmer - url: "https://pub.dartlang.org" + sha256: "1f1009b5845a1f88f1c5630212279540486f97409e9fc3f63883e71070d107bf" + url: "https://pub.dev" source: hosted version: "2.0.0" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_gen: dependency: transitive description: name: source_gen - url: "https://pub.dartlang.org" + sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" + url: "https://pub.dev" source: hosted - version: "1.2.2" + version: "1.5.0" source_span: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" + url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.10.2" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.12.1" stacked: dependency: "direct main" description: name: stacked - url: "https://pub.dartlang.org" + sha256: "57d96c98d41c5fb5f295395bd81e482c75b1a6b42229f23e15ff282742cdfb98" + url: "https://pub.dev" source: hosted - version: "2.3.15" + version: "2.3.15+1" stacked_core: dependency: transitive description: name: stacked_core - url: "https://pub.dartlang.org" + sha256: "28889e0b3cb612bf8f13d85050df43fb386f9483bd0fba6756637d9bc7af23dd" + url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.2.4" stacked_generator: dependency: "direct dev" description: name: stacked_generator - url: "https://pub.dartlang.org" + sha256: "6ca20eae7da39b16b77270625086d60e055da746d6abc1b037df59ce3dd529e2" + url: "https://pub.dev" source: hosted - version: "0.7.13" + version: "0.7.8" stacked_services: dependency: "direct main" description: name: stacked_services - url: "https://pub.dartlang.org" + sha256: "7e9e4e2f7b507165fb029449216829e7484f4da41627cef5f3e61b8ad5867231" + url: "https://pub.dev" source: hosted version: "0.8.26" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - url: "https://pub.dartlang.org" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 + url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.4.1" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" + sha256: "8161c84903fd860b26bfdefb7963b3f0b68fee7adea0f59ef805ecca346f0c7a" + url: "https://pub.dev" source: hosted - version: "0.4.9" + version: "0.7.10" timezone: dependency: transitive description: name: timezone - url: "https://pub.dartlang.org" + sha256: "57b35f6e8ef731f18529695bffc62f92c6189fac2e52c12d478dec1931afb66e" + url: "https://pub.dev" source: hosted version: "0.8.0" timing: dependency: transitive description: name: timing - url: "https://pub.dartlang.org" + sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" + url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.2" typed_data: dependency: transitive description: name: typed_data - url: "https://pub.dartlang.org" + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.0" universal_io: dependency: transitive description: name: universal_io - url: "https://pub.dartlang.org" + sha256: f63cbc48103236abf48e345e07a03ce5757ea86285ed313a6a032596ed9301e2 + url: "https://pub.dev" source: hosted - version: "2.0.4" + version: "2.3.1" url_launcher: dependency: "direct main" description: name: url_launcher - url: "https://pub.dartlang.org" + sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 + url: "https://pub.dev" source: hosted - version: "6.1.5" + version: "6.3.2" url_launcher_android: dependency: transitive description: name: url_launcher_android - url: "https://pub.dartlang.org" + sha256: "3bb000251e55d4a209aa0e2e563309dc9bb2befea2295fd0cec1f51760aac572" + url: "https://pub.dev" source: hosted - version: "6.0.17" + version: "6.3.29" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - url: "https://pub.dartlang.org" + sha256: "580fe5dfb51671ae38191d316e027f6b76272b026370708c2d898799750a02b0" + url: "https://pub.dev" source: hosted - version: "6.0.17" + version: "6.4.1" url_launcher_linux: dependency: transitive description: name: url_launcher_linux - url: "https://pub.dartlang.org" + sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a + url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.2.2" url_launcher_macos: dependency: transitive description: name: url_launcher_macos - url: "https://pub.dartlang.org" + sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" + url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.2.5" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface - url: "https://pub.dartlang.org" + sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.3.2" url_launcher_web: dependency: transitive description: name: url_launcher_web - url: "https://pub.dartlang.org" + sha256: d0412fcf4c6b31ecfdb7762359b7206ffba3bbffd396c6d9f9c4616ece476c1f + url: "https://pub.dev" source: hosted - version: "2.0.12" + version: "2.4.2" url_launcher_windows: dependency: transitive description: name: url_launcher_windows - url: "https://pub.dartlang.org" + sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" + url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.1.5" vector_math: dependency: transitive description: name: vector_math - url: "https://pub.dartlang.org" + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.2.0" video_player: dependency: "direct main" description: name: video_player - url: "https://pub.dartlang.org" + sha256: "48a7bdaa38a3d50ec10c78627abdbfad863fdf6f0d6e08c7c3c040cfd80ae36f" + url: "https://pub.dev" source: hosted - version: "2.4.5" + version: "2.11.1" video_player_android: dependency: transitive description: name: video_player_android - url: "https://pub.dartlang.org" + sha256: "877a6c7ba772456077d7bfd71314629b3fe2b73733ce503fc77c3314d43a0ca0" + url: "https://pub.dev" source: hosted - version: "2.3.8" + version: "2.9.5" video_player_avfoundation: dependency: transitive description: name: video_player_avfoundation - url: "https://pub.dartlang.org" + sha256: af0e5b8a7a4876fb37e7cc8cb2a011e82bb3ecfa45844ef672e32cb14a1f259e + url: "https://pub.dev" source: hosted - version: "2.3.5" + version: "2.9.4" video_player_platform_interface: dependency: transitive description: name: video_player_platform_interface - url: "https://pub.dartlang.org" + sha256: "57c5d73173f76d801129d0531c2774052c5a7c11ccb962f1830630decd9f24ec" + url: "https://pub.dev" source: hosted - version: "5.1.3" + version: "6.6.0" video_player_web: dependency: transitive description: name: video_player_web - url: "https://pub.dartlang.org" + sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb" + url: "https://pub.dev" source: hosted - version: "2.0.12" + version: "2.4.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" + url: "https://pub.dev" + source: hosted + version: "15.0.2" wakelock: dependency: "direct main" description: name: wakelock - url: "https://pub.dartlang.org" + sha256: "769ecf42eb2d07128407b50cb93d7c10bd2ee48f0276ef0119db1d25cc2f87db" + url: "https://pub.dev" source: hosted version: "0.6.2" wakelock_macos: dependency: transitive description: name: wakelock_macos - url: "https://pub.dartlang.org" + sha256: "047c6be2f88cb6b76d02553bca5a3a3b95323b15d30867eca53a19a0a319d4cd" + url: "https://pub.dev" source: hosted version: "0.4.0" wakelock_platform_interface: dependency: transitive description: name: wakelock_platform_interface - url: "https://pub.dartlang.org" + sha256: "1f4aeb81fb592b863da83d2d0f7b8196067451e4df91046c26b54a403f9de621" + url: "https://pub.dev" source: hosted version: "0.3.0" wakelock_web: dependency: transitive description: name: wakelock_web - url: "https://pub.dartlang.org" + sha256: "1b256b811ee3f0834888efddfe03da8d18d0819317f20f6193e2922b41a501b5" + url: "https://pub.dev" source: hosted version: "0.4.0" wakelock_windows: dependency: transitive description: name: wakelock_windows - url: "https://pub.dartlang.org" + sha256: "108b1b73711f1664ee462e73af34a9286ff496e27d4d8371e2fb4da8fde4cdac" + url: "https://pub.dev" source: hosted version: "0.2.0" watcher: dependency: transitive description: name: watcher - url: "https://pub.dartlang.org" + sha256: "1398c9f081a753f9226febe8900fce8f7d0a67163334e1c94a2438339d79d635" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" + url: "https://pub.dev" source: hosted version: "1.0.1" web_socket_channel: dependency: transitive description: name: web_socket_channel - url: "https://pub.dartlang.org" + sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 + url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "3.0.3" webview_flutter: dependency: transitive description: name: webview_flutter - url: "https://pub.dartlang.org" + sha256: "392c1d83b70fe2495de3ea2c84531268d5b8de2de3f01086a53334d8b6030a88" + url: "https://pub.dev" source: hosted version: "3.0.4" webview_flutter_android: dependency: transitive description: name: webview_flutter_android - url: "https://pub.dartlang.org" + sha256: "8b3b2450e98876c70bfcead876d9390573b34b9418c19e28168b74f6cb252dbd" + url: "https://pub.dev" source: hosted - version: "2.9.2" + version: "2.10.4" webview_flutter_platform_interface: dependency: transitive description: name: webview_flutter_platform_interface - url: "https://pub.dartlang.org" + sha256: "812165e4e34ca677bdfbfa58c01e33b27fd03ab5fa75b70832d4b7d4ca1fa8cf" + url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.9.5" webview_flutter_plus: dependency: "direct main" description: name: webview_flutter_plus - url: "https://pub.dartlang.org" + sha256: bea8756ae096529254725def7c4a633851a785c7d49206e0817125ab02b14307 + url: "https://pub.dev" source: hosted version: "0.3.0+2" webview_flutter_wkwebview: dependency: transitive description: name: webview_flutter_wkwebview - url: "https://pub.dartlang.org" + sha256: a5364369c758892aa487cbf59ea41d9edd10f9d9baf06a94e80f1bd1b4c7bbc0 + url: "https://pub.dev" source: hosted - version: "2.9.2" + version: "2.9.5" win32: dependency: transitive description: name: win32 - url: "https://pub.dartlang.org" + sha256: c0e3a4f7be7dae51d8f152230b86627e3397c1ba8c3fa58e63d44a9f3edc9cef + url: "https://pub.dev" source: hosted version: "2.6.1" xdg_directories: dependency: transitive description: name: xdg_directories - url: "https://pub.dartlang.org" + sha256: bd512f03919aac5f1313eb8249f223bacf4927031bf60b02601f81f687689e86 + url: "https://pub.dev" source: hosted - version: "0.2.0+1" + version: "0.2.0+3" xml: dependency: "direct main" description: name: xml - url: "https://pub.dartlang.org" + sha256: "80d494c09849dc3f899d227a78c30c5b949b985ededf884cb3f3bcd39f4b447a" + url: "https://pub.dev" source: hosted version: "5.4.1" yaml: dependency: transitive description: name: yaml - url: "https://pub.dartlang.org" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.3" sdks: - dart: ">=2.17.0 <3.0.0" - flutter: ">=3.0.0" + dart: ">=3.10.0 <4.0.0" + flutter: ">=3.38.0" diff --git a/pubspec.yaml b/pubspec.yaml index 1ee82dc..fa61dbb 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -55,7 +55,7 @@ dev_dependencies: flutter_test: sdk: flutter build_runner: ^2.0.1 - stacked_generator: ^0.7.13 + stacked_generator: ^0.7.8 flutter_launcher_icons: ^0.9.0 mockito: ^5.0.0 diff --git a/test/helpers/test_helpers.dart b/test/helpers/test_helpers.dart index b9ffa8a..bfcb89d 100644 --- a/test/helpers/test_helpers.dart +++ b/test/helpers/test_helpers.dart @@ -22,17 +22,17 @@ import 'test_helpers.mocks.dart'; Logger log = getLogger("test_helpers.dart"); @GenerateMocks([], customMocks: [ - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), - MockSpec(returnNullOnMissingStub: true), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), + MockSpec(), ]) ProdApiService getAndRegisterProdApiServiceMock({mock = true}) { log.v("getAndRegisterProdApiServiceMock"); From 10ea3f932089a557c9935b47af626728949f5cec Mon Sep 17 00:00:00 2001 From: ObaidAbdullah16 Date: Sat, 4 Apr 2026 22:29:50 +0530 Subject: [PATCH 2/2] [FIX] Resolve Flutter analyze warnings (RadioGroup + VideoPlayerController) --- .../media_player/media_stream_viewmodel.dart | 3 +- .../sort_bottom_sheet_view.dart | 82 ++++++++++--------- test/helpers/test_helpers.mocks.dart | 4 +- 3 files changed, 47 insertions(+), 42 deletions(-) diff --git a/lib/ui/views/media_player/media_stream_viewmodel.dart b/lib/ui/views/media_player/media_stream_viewmodel.dart index 93d0a51..e4330f3 100644 --- a/lib/ui/views/media_player/media_stream_viewmodel.dart +++ b/lib/ui/views/media_player/media_stream_viewmodel.dart @@ -83,7 +83,8 @@ class MediaStreamViewModel extends BaseViewModel { } Future initializePlayer() async { - _videoPlayerController = VideoPlayerController.network(_mediaUrl); + _videoPlayerController = + VideoPlayerController.networkUrl(Uri.parse(_mediaUrl)); await Future.wait([ _videoPlayerController.initialize(), ]); diff --git a/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart b/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart index 00ce5dc..1832d6d 100644 --- a/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart +++ b/lib/ui/widgets/smart_widgets/bottom_sheets/sort_bottom_sheet/sort_bottom_sheet_view.dart @@ -12,13 +12,18 @@ class SortBottomSheetView extends StatelessWidget { final SheetRequest request; final Function(SheetResponse) completer; final Screens screen; - SortBottomSheetView( - {required this.request, required this.completer, required this.screen}); + + SortBottomSheetView({ + required this.request, + required this.completer, + required this.screen, + }); @override Widget build(BuildContext context) { return ViewModelBuilder.reactive( onModelReady: (model) => model.init(screen), + viewModelBuilder: () => SortBottomSheetViewModel(), builder: (context, model, child) => Padding( padding: const EdgeInsets.only( left: 16.0, @@ -33,14 +38,13 @@ class SortBottomSheetView extends StatelessWidget { children: [ Text( 'SORT BY', - style: TextStyle( - fontSize: 18, - ), + style: TextStyle(fontSize: 18), ), Spacer(), TextButton( style: ButtonStyle( - tapTargetSize: MaterialTapTargetSize.shrinkWrap), + tapTargetSize: MaterialTapTargetSize.shrinkWrap, + ), onPressed: () { model.setSortPreference(completer, Sort.values.last); Navigator.of(context).pop(); @@ -57,53 +61,53 @@ class SortBottomSheetView extends StatelessWidget { ), ], ), - Divider( - thickness: 2, - ), + Divider(thickness: 2), RadioGroup( groupValue: model.sortPreference, - onChanged: (Sort? selected) { - if (selected != null) { - model.setSortPreference(completer, selected); - Navigator.of(context).pop(); - } + onChanged: (selected) { + if (selected == null) return; + model.setSortPreference(completer, selected); + Navigator.of(context).pop(); }, - child: Container( + child: SizedBox( height: 300, child: ListView.builder( itemCount: Sort.values.length - 1, itemBuilder: (context, index) { - Map sortMap = model.getSortMap(); - return sortMap[Sort.values[index]] == null - ? Container() - : GestureDetector( - behavior: HitTestBehavior.opaque, - onTap: () { - model.setSortPreference( - completer, Sort.values[index]); - Navigator.of(context).pop(); - }, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text( - sortMap[Sort.values[index]]!, - style: TextStyle(fontWeight: FontWeight.w600), - ), - Radio( - value: Sort.values[index], - ), - ], + final sortMap = model.getSortMap(); + final sortValue = Sort.values[index]; + final label = sortMap[sortValue]; + + if (label == null) return SizedBox.shrink(); + + return InkWell( + onTap: () { + model.setSortPreference(completer, sortValue); + Navigator.of(context).pop(); + }, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Padding( + padding: const EdgeInsets.symmetric(vertical: 12.0), + child: Text( + label, + style: TextStyle(fontWeight: FontWeight.w600), ), - ); + ), + Radio( + value: sortValue, + ), + ], + ), + ); }, ), ), - ) + ), ], ), ), - viewModelBuilder: () => SortBottomSheetViewModel(), ); } } diff --git a/test/helpers/test_helpers.mocks.dart b/test/helpers/test_helpers.mocks.dart index dadad72..dd66cd8 100644 --- a/test/helpers/test_helpers.mocks.dart +++ b/test/helpers/test_helpers.mocks.dart @@ -56,8 +56,8 @@ import 'package:shared_preferences/shared_preferences.dart' as _i24; // ignore_for_file: unnecessary_parenthesis // ignore_for_file: camel_case_types -class _FakeValueNotifier_0 extends _i1.Fake implements _i2.ValueNotifier { -} +class _FakeValueNotifier_0 extends _i1.Fake + implements _i2.ValueNotifier {} class _FakeDiskSpace_1 extends _i1.Fake implements _i3.DiskSpace {}