diff --git a/.github/workflows/flutter.yml b/.github/workflows/flutter.yml index 0241426..9b20077 100644 --- a/.github/workflows/flutter.yml +++ b/.github/workflows/flutter.yml @@ -13,7 +13,7 @@ on: workflow_dispatch: env: - FLUTTER_VERSION: 3.24.4 + FLUTTER_VERSION: 3.27.4 jobs: formatting-analysis: diff --git a/lib/pages/home_page.dart b/lib/pages/home_page.dart index f7ad98e..b5a7959 100644 --- a/lib/pages/home_page.dart +++ b/lib/pages/home_page.dart @@ -4,7 +4,6 @@ import 'package:flutter/scheduler.dart'; // Project imports: import 'package:scouting_site/pages/login_page.dart'; -import 'package:scouting_site/pages/summation/averages/averages_page.dart'; import 'package:scouting_site/services/formatters/text_formatter_builder.dart'; import 'package:scouting_site/services/localstorage.dart'; import 'package:scouting_site/services/scouting/scouting.dart'; @@ -107,6 +106,7 @@ class _HomePageState extends State { return Scaffold( appBar: getScoutAppBar("Ionic-Scout"), + drawer: getScoutHamburgerMenu(context), body: Container( color: GlobalColors.backgroundColor, child: SingleChildScrollView( @@ -152,68 +152,44 @@ class _HomePageState extends State { floatingActionButton: Column( mainAxisAlignment: MainAxisAlignment.end, children: [ - Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - const SizedBox( - width: 5, - ), - FloatingActionButton( - tooltip: "Entries", - child: const Icon(Icons.summarize), - onPressed: () async { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => AveragesPage(), - ), - ); - }, - ), - SizedBox( - width: (MediaQuery.of(context).size.width - 140), - ), - FloatingActionButton( - heroTag: 1, - tooltip: "Scout", - child: const Icon(Icons.login_outlined), - onPressed: () async { - final scouterName = _scouterController.text.trim(); - final gameNumber = _gameController.text.trim(); + FloatingActionButton( + tooltip: "Scout", + child: const Icon(Icons.login_outlined), + onPressed: () async { + final scouterName = _scouterController.text.trim(); + final gameNumber = _gameController.text.trim(); - if (scouterName.isEmpty || - _selectedTeam == null || - (_teams.isNotEmpty && !_teams.contains(_selectedTeam)) || - (_selectedTeam?.isEmpty ?? true)) { - showDialog( - context: context, - builder: (context) { - return AlertDialog( - title: const Text('Validation Error'), - content: - const Text('Please fill in all required fields.'), - actions: [ - TextButton( - child: const Text('OK'), - onPressed: () { - Navigator.of(context).pop(); - }, - ), - ], - ); - }, + if (scouterName.isEmpty || + _selectedTeam == null || + (_teams.isNotEmpty && !_teams.contains(_selectedTeam)) || + (_selectedTeam?.isEmpty ?? true)) { + showDialog( + context: context, + builder: (context) { + return AlertDialog( + title: const Text('Validation Error'), + content: + const Text('Please fill in all required fields.'), + actions: [ + TextButton( + child: const Text('OK'), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + ], ); - return; - } + }, + ); + return; + } - localStorage?.setInt("game", int.parse(gameNumber)); - localStorage?.setString("scouter", scouterName); - localStorage?.setString("scoutedTeam", _selectedTeam ?? ""); + localStorage?.setInt("game", int.parse(gameNumber)); + localStorage?.setString("scouter", scouterName); + localStorage?.setString("scoutedTeam", _selectedTeam ?? ""); - Scouting.advance(context); - }, - ), - ], + Scouting.advance(context); + }, ), ], ), diff --git a/lib/pages/summation/averages/averages_page.dart b/lib/pages/summation/averages/averages_page.dart index b9c2c30..50a0f9e 100644 --- a/lib/pages/summation/averages/averages_page.dart +++ b/lib/pages/summation/averages/averages_page.dart @@ -13,6 +13,7 @@ import 'package:scouting_site/services/scouting/form_page_data.dart'; import 'package:scouting_site/services/scouting/question.dart'; import 'package:scouting_site/services/scouting/scouting.dart'; import 'package:scouting_site/theme.dart'; +import 'package:scouting_site/widgets/scout_app_bar.dart'; class AveragesPage extends StatefulWidget { List? formsData; @@ -36,13 +37,8 @@ class _AveragesPageState extends State { return DefaultTabController( length: 1 /* was previously 2 */, child: Scaffold( + drawer: getScoutHamburgerMenu(context), appBar: AppBar( - leading: IconButton( - icon: const Icon(Icons.arrow_back), - onPressed: _handleBackButton, - tooltip: "Back", - color: GlobalColors.backButtonColor, - ), backgroundColor: GlobalColors.appBarColor, title: const Text( "Averages", @@ -143,10 +139,6 @@ class _AveragesPageState extends State { }); } - void _handleBackButton() { - Navigator.of(context).pop(); - } - void getDocuments() async { QuerySnapshot>? snapshot = await DatabaseAPI .instance.firestore diff --git a/lib/pages/summation/scouting_entries_page.dart b/lib/pages/summation/scouting_entries_page.dart index 0ce77c2..a684aef 100644 --- a/lib/pages/summation/scouting_entries_page.dart +++ b/lib/pages/summation/scouting_entries_page.dart @@ -18,6 +18,7 @@ import 'package:scouting_site/services/scouting/scouting.dart'; import 'package:scouting_site/services/title_case.dart'; import 'package:scouting_site/theme.dart'; import 'package:scouting_site/widgets/dialog_widgets/dialog_text_input.dart'; +import 'package:scouting_site/widgets/scout_app_bar.dart'; class ScoutingEntriesPage extends StatefulWidget { const ScoutingEntriesPage({super.key}); @@ -66,13 +67,8 @@ class _ScoutingEntriesPageState extends State { } return Scaffold( + drawer: getScoutHamburgerMenu(context), appBar: AppBar( - leading: IconButton( - icon: const Icon(Icons.arrow_back), - onPressed: _handleBackButton, - tooltip: "Back", - color: GlobalColors.backButtonColor, - ), backgroundColor: GlobalColors.appBarColor, title: const Text( "Scouting Entries", @@ -199,26 +195,16 @@ class _ScoutingEntriesPageState extends State { ), ), ), - floatingActionButton: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - IconButton( - onPressed: () { - getDocuments(); - }, - tooltip: "Re-Fetch Documents", - icon: const Icon(Icons.refresh_outlined), - ), - const SizedBox(width: 12), - ], + floatingActionButton: IconButton( + onPressed: () { + getDocuments(); + }, + tooltip: "Re-Fetch Documents", + icon: const Icon(Icons.refresh_outlined), ), ); } - void _handleBackButton() { - Navigator.of(context).pop(); - } - void getDocuments() async { QuerySnapshot>? snapshot = await DatabaseAPI .instance.firestore diff --git a/lib/pages/summation/team_overview.dart b/lib/pages/summation/team_overview.dart index c01426c..eee1fb5 100644 --- a/lib/pages/summation/team_overview.dart +++ b/lib/pages/summation/team_overview.dart @@ -7,6 +7,7 @@ import 'package:flutter/services.dart'; // Package imports: import 'package:geekyants_flutter_gauges/geekyants_flutter_gauges.dart'; +import 'package:geekyants_flutter_gauges/geekyants_flutter_gauges.dart'; // Project imports: import 'package:scouting_site/services/cast.dart'; @@ -250,7 +251,8 @@ class _TeamOverviewPageState extends State { currPageGauges = []; gauges.add(Text( pageName, - textScaler: const TextScaler.linear(1.2), + textScaler: const TextScaler.linear(1.8), + style: const TextStyle(fontWeight: FontWeight.bold), )); gauges.add(Row( @@ -263,6 +265,7 @@ class _TeamOverviewPageState extends State { if (start == end) { end = 10; } + Color precentileColor = getColorByPrecentile(entry.value, end); currPageGauges.add( Column( mainAxisSize: MainAxisSize.min, @@ -277,22 +280,30 @@ class _TeamOverviewPageState extends State { hideLabels: false, steps: 1, color: Colors.black, + thickness: 40, trackStyle: const TrackStyle( - labelStyle: - TextStyle(color: GlobalColors.teamColor)), + labelStyle: TextStyle( + color: GlobalColors.teamColor, + fontWeight: FontWeight.bold, + )), trackLabelFormater: (double value) { return value.toStringAsFixed(2); }, ), valueBar: [ RadialValueBar( - valueBarThickness: 20, + valueBarThickness: 40, value: entry.value, - color: getColorByPrecentile(entry.value, end), + color: precentileColor, ) ], ), - Text(entry.value.toStringAsFixed(2)), + Text( + entry.value.toStringAsFixed(2), + style: TextStyle( + color: precentileColor, fontWeight: FontWeight.bold), + textScaler: const TextScaler.linear(2), + ), ], ), Transform.translate( @@ -302,7 +313,7 @@ class _TeamOverviewPageState extends State { ], ), ); - currPageGauges.add(const SizedBox(width: 15)); + currPageGauges.add(const SizedBox(width: 20)); } } } diff --git a/lib/widgets/scout_app_bar.dart b/lib/widgets/scout_app_bar.dart index e64b9f0..85ec71e 100644 --- a/lib/widgets/scout_app_bar.dart +++ b/lib/widgets/scout_app_bar.dart @@ -2,18 +2,86 @@ import 'package:flutter/material.dart'; // Project imports: +import 'package:scouting_site/pages/home_page.dart'; +import 'package:scouting_site/pages/summation/averages/averages_page.dart'; +import 'package:scouting_site/pages/summation/scouting_entries_page.dart'; import 'package:scouting_site/theme.dart'; AppBar getScoutAppBar(String title) { return AppBar( backgroundColor: GlobalColors.appBarColor, - leading: Image.asset("images/team_logo.png"), - title: Text( - title, - style: const TextStyle( - fontWeight: FontWeight.bold, - color: GlobalColors.teamColor, + leading: SizedBox( + child: Row( + children: [ + Builder( + builder: (context) => IconButton( + icon: const Icon(Icons.menu), + onPressed: () { + Scaffold.of(context).openDrawer(); + }, + ), + ), + ], ), ), + titleSpacing: 10, + title: Row(children: [ + Image.asset( + "images/team_logo.png", + width: 44, + height: 44, + ), + const SizedBox(width: 15), + Text( + title, + style: const TextStyle( + fontWeight: FontWeight.bold, + color: GlobalColors.teamColor, + ), + ) + ]), + ); +} + +void navigateTo(BuildContext context, Widget page) { + Navigator.pushReplacement( + context, + MaterialPageRoute( + builder: (context) => page, + ), + ); +} + +Drawer getScoutHamburgerMenu(BuildContext context) { + return Drawer( + child: ListView( + padding: EdgeInsets.zero, + children: [ + const DrawerHeader( + child: Text(""), + ), + ListTile( + leading: const Icon(Icons.biotech_rounded), + title: const Text("Scout"), + onTap: () { + navigateTo(context, const HomePage()); + }, + ), + ListTile( + leading: const Icon(Icons.summarize_rounded), + title: const Text("Avgs."), + onTap: () { + navigateTo(context, AveragesPage()); + }, + ), + ListTile( + leading: const Icon(Icons.dataset_rounded), + title: const Text("Entries"), + onTap: () { + navigateTo(context, const ScoutingEntriesPage()); + }, + ) + ], + ), ); } diff --git a/pubspec.lock b/pubspec.lock index 09655f9..ff00c1c 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,39 +5,34 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 url: "https://pub.dev" source: hosted - version: "72.0.0" + version: "80.0.0" _flutterfire_internals: dependency: transitive description: name: _flutterfire_internals - sha256: "9371d13b8ee442e3bfc08a24e3a1b3742c839abbfaf5eef11b79c4b862c89bf7" + sha256: e051259913915ea5bc8fe18664596bea08592fd123930605d562969cd7315fcd url: "https://pub.dev" source: hosted - version: "1.3.41" - _macros: - dependency: transitive - description: dart - source: sdk - version: "0.3.2" + version: "1.3.51" analyzer: dependency: transitive description: name: analyzer - sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" url: "https://pub.dev" source: hosted - version: "6.7.0" + version: "7.3.0" args: dependency: transitive description: name: args - sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.6.0" async: dependency: transitive description: @@ -58,10 +53,10 @@ packages: dependency: transitive description: name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" build_cli_annotations: dependency: transitive description: @@ -74,42 +69,42 @@ packages: dependency: transitive description: name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" build_daemon: dependency: transitive description: name: build_daemon - sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" + sha256: "294a2edaf4814a378725bfe6358210196f5ea37af89ecd81bfa32960113d4948" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.0.3" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + sha256: "99d3980049739a985cf9b21f30881f46db3ebc62c5b8d5e60e27440876b1ba1e" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.3" build_runner: dependency: "direct main" description: name: build_runner - sha256: dd09dd4e2b078992f42aac7f1a622f01882a8492fef08486b27ddde929c19f04 + sha256: "74691599a5bc750dc96a6b4bfd48f7d9d66453eab04c7f4063134800d6a5c573" url: "https://pub.dev" source: hosted - version: "2.4.12" + version: "2.4.14" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 + sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" url: "https://pub.dev" source: hosted - version: "7.3.2" + version: "8.0.0" built_collection: dependency: transitive description: @@ -122,42 +117,42 @@ packages: dependency: transitive description: name: built_value - sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + sha256: "28a712df2576b63c6c005c465989a348604960c0958d28be5303ba9baa841ac2" url: "https://pub.dev" source: hosted - version: "8.9.2" + version: "8.9.3" camera: dependency: "direct main" description: name: camera - sha256: "26ff41045772153f222ffffecba711a206f670f5834d40ebf5eed3811692f167" + sha256: "413d2b34fe28496c35c69ede5b232fb9dd5ca2c3a4cb606b14efc1c7546cc8cb" url: "https://pub.dev" source: hosted - version: "0.11.0+2" + version: "0.11.1" camera_android_camerax: dependency: transitive description: name: camera_android_camerax - sha256: "2985b8e5fca62709ebb2150962b1dae0444ba0a112be888ccf21e8371a1406d9" + sha256: "7cc6adf1868bdcf4e63a56b24b41692dfbad2bec1cdceea451c77798f6a605c3" url: "https://pub.dev" source: hosted - version: "0.6.10+1" + version: "0.6.13" camera_avfoundation: dependency: transitive description: name: camera_avfoundation - sha256: "2e4c568f70e406ccb87376bc06b53d2f5bebaab71e2fbcc1a950e31449381bcf" + sha256: "49cc403dc2aec719cc70ba23419c932f1245d990e43f3c8336014b895751454a" url: "https://pub.dev" source: hosted - version: "0.9.17+5" + version: "0.9.18+4" camera_platform_interface: dependency: transitive description: name: camera_platform_interface - sha256: b3ede1f171532e0d83111fe0980b46d17f1aa9788a07a2fbed07366bbdbb9061 + sha256: "953e7baed3a7c8fae92f7200afeb2be503ff1a17c3b4e4ed7b76f008c2810a31" url: "https://pub.dev" source: hosted - version: "2.8.0" + version: "2.9.0" camera_web: dependency: transitive description: @@ -186,10 +181,10 @@ packages: dependency: transitive description: name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 + sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.0" checked_yaml: dependency: transitive description: @@ -210,42 +205,42 @@ packages: dependency: "direct main" description: name: cloud_firestore - sha256: a31eec60eadaa859f0677bf661d9f86ed15961c716512f64884e59edcb341472 + sha256: d7204f3263ba3236c037972f1ea2821569bd7b896fa348c3d557e3b76b6dc143 url: "https://pub.dev" source: hosted - version: "5.2.1" + version: "5.6.3" cloud_firestore_platform_interface: dependency: transitive description: name: cloud_firestore_platform_interface - sha256: "3224e6158441c8897325e74f9971140cde2c85ee75a26704407a91b969b50829" + sha256: "10a8519164a0e38fce52f78d540bce1170fc210d07989fe49597723400fcd0f1" url: "https://pub.dev" source: hosted - version: "6.3.1" + version: "6.6.3" cloud_firestore_web: dependency: transitive description: name: cloud_firestore_web - sha256: c1312945cb7dd55921bcc10445f6c9a494bc04104b7d0821c3ed577b970ab088 + sha256: "4b9e34f53c32dc9891aea247d82bfb21fe7779c0064d84baea1a4f18210146de" url: "https://pub.dev" source: hosted - version: "4.1.1" + version: "4.4.3" code_builder: dependency: transitive description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" collection: dependency: "direct main" description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.0" connectivity_plus: dependency: "direct main" description: @@ -266,10 +261,10 @@ packages: dependency: transitive description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" cross_file: dependency: transitive description: @@ -282,18 +277,18 @@ packages: dependency: transitive description: name: crypto - sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.6" csslib: dependency: transitive description: name: csslib - sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb" + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.2" cupertino_icons: dependency: "direct main" description: @@ -306,26 +301,26 @@ packages: dependency: transitive description: name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "3.0.1" dbus: dependency: transitive description: name: dbus - sha256: "365c771ac3b0e58845f39ec6deebc76e3276aa9922b0cc60840712094d9047ac" + sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c" url: "https://pub.dev" source: hosted - version: "0.7.10" + version: "0.7.11" equatable: dependency: transitive description: name: equatable - sha256: c2b87cb7756efdf69892005af546c56c0b5037f54d2a88269b4f347a505e3ca2 + sha256: "567c64b3cb4cf82397aac55f4f0cbd3ca20d77c6c03bedbc4ceaddc08904aef7" url: "https://pub.dev" source: hosted - version: "2.0.5" + version: "2.0.7" fake_async: dependency: transitive description: @@ -346,18 +341,18 @@ packages: dependency: transitive description: name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "7.0.1" file_selector_linux: dependency: transitive description: name: file_selector_linux - sha256: "712ce7fab537ba532c8febdb1a8f167b32441e74acd68c3ccb2e36dcb52c4ab2" + sha256: "54cbbd957e1156d29548c7d9b9ec0c0ebb6de0a90452198683a7d23aed617a33" url: "https://pub.dev" source: hosted - version: "0.9.3" + version: "0.9.3+2" file_selector_macos: dependency: transitive description: @@ -386,34 +381,34 @@ packages: dependency: "direct main" description: name: firebase_core - sha256: "06537da27db981947fa535bb91ca120b4e9cb59cb87278dbdde718558cafc9ff" + sha256: "93dc4dd12f9b02c5767f235307f609e61ed9211047132d07f9e02c668f0bfc33" url: "https://pub.dev" source: hosted - version: "3.4.0" + version: "3.11.0" firebase_core_platform_interface: dependency: transitive description: name: firebase_core_platform_interface - sha256: f7d7180c7f99babd4b4c517754d41a09a4943a0f7a69b65c894ca5c68ba66315 + sha256: d7253d255ff10f85cfd2adaba9ac17bae878fa3ba577462451163bd9f1d1f0bf url: "https://pub.dev" source: hosted - version: "5.2.1" + version: "5.4.0" firebase_core_web: dependency: transitive description: name: firebase_core_web - sha256: "362e52457ed2b7b180964769c1e04d1e0ea0259fdf7025fdfedd019d4ae2bd88" + sha256: "0e13c80f0de8acaa5d0519cbe23c8b4cc138a2d5d508b5755c861bdfc9762678" url: "https://pub.dev" source: hosted - version: "2.17.5" + version: "2.20.0" fixnum: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" fl_chart: dependency: "direct main" description: @@ -487,10 +482,10 @@ packages: dependency: transitive description: name: flutter_plugin_android_lifecycle - sha256: "9b78450b89f059e96c9ebb355fa6b3df1d6b330436e0b885fb49594c41721398" + sha256: "615a505aef59b151b46bbeef55b36ce2b6ed299d160c51d84281946f0aa0ce0e" url: "https://pub.dev" source: hosted - version: "2.0.23" + version: "2.0.24" flutter_test: dependency: "direct dev" description: flutter @@ -529,18 +524,18 @@ packages: dependency: transitive description: name: git - sha256: daea03e7471607e7ed942bccd4814cfc7e4fa8ca5d3dd6ad4fb170e44423d1a0 + sha256: de678c6f0d5e2761c2c3643d31b1010883cc4d3e352949ef7c15f98f27d676ea url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.3.1" glob: dependency: transitive description: name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" graphs: dependency: transitive description: @@ -553,34 +548,34 @@ packages: dependency: transitive description: name: html - sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a" + sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec" url: "https://pub.dev" source: hosted - version: "0.15.4" + version: "0.15.5" http: dependency: "direct main" description: name: http - sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 + sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f url: "https://pub.dev" source: hosted - version: "1.2.2" + version: "1.3.0" http_multi_server: dependency: transitive description: name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.1.2" image_picker: dependency: "direct main" description: @@ -593,10 +588,10 @@ packages: dependency: transitive description: name: image_picker_android - sha256: "8faba09ba361d4b246dc0a17cb4289b3324c2b9f6db7b3d457ee69106a86bd32" + sha256: b62d34a506e12bb965e824b6db4fbf709ee4589cf5d3e99b45ab2287b008ee0c url: "https://pub.dev" source: hosted - version: "0.8.12+17" + version: "0.8.12+20" image_picker_for_web: dependency: transitive description: @@ -609,10 +604,10 @@ packages: dependency: transitive description: name: image_picker_ios - sha256: "4f0568120c6fcc0aaa04511cb9f9f4d29fc3d0139884b1d06be88dcec7641d6b" + sha256: "05da758e67bc7839e886b3959848aa6b44ff123ab4b28f67891008afe8ef9100" url: "https://pub.dev" source: hosted - version: "0.8.12+1" + version: "0.8.12+2" image_picker_linux: dependency: transitive description: @@ -625,18 +620,18 @@ packages: dependency: transitive description: name: image_picker_macos - sha256: "3f5ad1e8112a9a6111c46d0b57a7be2286a9a07fc6e1976fdf5be2bd31d4ff62" + sha256: "1b90ebbd9dcf98fb6c1d01427e49a55bd96b5d67b8c67cf955d60a5de74207c1" url: "https://pub.dev" source: hosted - version: "0.2.1+1" + version: "0.2.1+2" image_picker_platform_interface: dependency: transitive description: name: image_picker_platform_interface - sha256: "9ec26d410ff46f483c5519c29c02ef0e02e13a543f882b152d4bfd2f06802f80" + sha256: "886d57f0be73c4b140004e78b9f28a8914a09e50c2d816bdd0520051a71236a0" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.10.1" image_picker_windows: dependency: transitive description: @@ -665,10 +660,10 @@ packages: dependency: transitive description: name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.0.5" js: dependency: transitive description: @@ -689,18 +684,18 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" url: "https://pub.dev" source: hosted - version: "10.0.5" + version: "10.0.7" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.8" leak_tracker_testing: dependency: transitive description: @@ -721,18 +716,10 @@ packages: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - macros: - dependency: transitive - description: - name: macros - sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "0.1.2-main.4" + version: "1.3.0" matcher: dependency: transitive description: @@ -761,10 +748,10 @@ packages: dependency: transitive description: name: mime - sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" url: "https://pub.dev" source: hosted - version: "1.0.6" + version: "2.0.0" nm: dependency: transitive description: @@ -777,10 +764,10 @@ packages: dependency: transitive description: name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" path: dependency: "direct main" description: @@ -793,26 +780,26 @@ packages: dependency: "direct main" description: name: path_provider - sha256: fec0d61223fba3154d87759e3cc27fe2c8dc498f6386c6d6fc80d1afdd1bf378 + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: "6f01f8e37ec30b07bc424b4deabac37cacb1bc7e2e515ad74486039918a37eb7" + sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2" url: "https://pub.dev" source: hosted - version: "2.2.10" + version: "2.2.15" path_provider_foundation: dependency: transitive description: name: path_provider_foundation - sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 + sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.1" path_provider_linux: dependency: transitive description: @@ -857,10 +844,10 @@ packages: dependency: transitive description: name: platform - sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" url: "https://pub.dev" source: hosted - version: "3.1.5" + version: "3.1.6" plugin_platform_interface: dependency: transitive description: @@ -889,18 +876,18 @@ packages: dependency: transitive description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.5.0" service_worker: dependency: "direct main" description: @@ -913,26 +900,26 @@ packages: dependency: "direct main" description: name: shared_preferences - sha256: "746e5369a43170c25816cc472ee016d3a66bc13fcf430c0bc41ad7b4b2922051" + sha256: "846849e3e9b68f3ef4b60c60cf4b3e02e9321bc7f4d8c4692cf87ffa82fc8a3a" url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.5.2" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - sha256: a7e8467e9181cef109f601e3f65765685786c1a738a83d7fbbde377589c0d974 + sha256: ea86be7b7114f9e94fddfbb52649e59a03d6627ccd2387ebddcd6624719e9f16 url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.4.5" shared_preferences_foundation: dependency: transitive description: name: shared_preferences_foundation - sha256: c4b35f6cb8f63c147312c054ce7c2254c8066745125264f0c88739c417fc9d9f + sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03" url: "https://pub.dev" source: hosted - version: "2.5.2" + version: "2.5.4" shared_preferences_linux: dependency: transitive description: @@ -969,23 +956,23 @@ packages: dependency: transitive description: name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 url: "https://pub.dev" source: hosted - version: "1.4.1" + version: "1.4.2" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" + sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67 url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.0.1" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: @@ -998,10 +985,10 @@ packages: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.0" statbotics: dependency: "direct main" description: @@ -1022,18 +1009,18 @@ packages: dependency: transitive description: name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" syncfusion_flutter_charts: dependency: "direct main" description: @@ -1062,18 +1049,18 @@ packages: dependency: transitive description: name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" url: "https://pub.dev" source: hosted - version: "0.7.2" + version: "0.7.3" timing: dependency: transitive description: name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.0.2" tint: dependency: transitive description: @@ -1086,10 +1073,10 @@ packages: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" universal_html: dependency: "direct main" description: @@ -1118,26 +1105,26 @@ packages: dependency: transitive description: name: vm_service - sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b url: "https://pub.dev" source: hosted - version: "14.2.5" + version: "14.3.0" watcher: dependency: transitive description: name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" web: dependency: transitive description: name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "1.1.0" web_socket: dependency: transitive description: @@ -1150,18 +1137,18 @@ packages: dependency: transitive description: name: web_socket_channel - sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" + sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.0.2" xdg_directories: dependency: transitive description: name: xdg_directories - sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.1.0" xml: dependency: transitive description: @@ -1174,10 +1161,10 @@ packages: dependency: transitive description: name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" sdks: - dart: ">=3.5.4 <4.0.0" - flutter: ">=3.24.0" + dart: ">=3.6.0 <4.0.0" + flutter: ">=3.27.0"