diff --git a/.github/workflows/ci-branch.yml b/.github/workflows/ci-branch.yml index 95a3b75..73080e2 100644 --- a/.github/workflows/ci-branch.yml +++ b/.github/workflows/ci-branch.yml @@ -2,9 +2,9 @@ name: "CI [branch]" on: push: - branches: [ "main" ] + branches: [ "master" ] pull_request: - branches: [ "main" ] + branches: [ "master" ] jobs: build: @@ -14,7 +14,7 @@ jobs: - uses: subosito/flutter-action@v2 with: channel: "stable" - flutter-version: "3.7.6" + flutter-version: "3.13.0" cache: true - uses: actions/checkout@v3 @@ -25,7 +25,7 @@ jobs: - name: Analyze project source run: | flutter analyze --fatal-infos - flutter format --set-exit-if-changed . + dart format --set-exit-if-changed . - name: Run tests run: flutter test diff --git a/.github/workflows/tag-release.yml b/.github/workflows/tag-release.yml index d75d78b..1a36c25 100644 --- a/.github/workflows/tag-release.yml +++ b/.github/workflows/tag-release.yml @@ -24,7 +24,7 @@ jobs: - uses: subosito/flutter-action@v2 with: channel: "stable" - flutter-version: "3.7.6" + flutter-version: "3.13.0" cache: true - name: Create Key @@ -54,4 +54,3 @@ jobs: generateReleaseNotes: true artifacts: build/app/outputs/flutter-apk/app-release.apk token: ${{ secrets.RELEASE_TOKEN }} - diff --git a/lib/app.dart b/lib/app.dart index 081b1dc..257cb8c 100755 --- a/lib/app.dart +++ b/lib/app.dart @@ -4,10 +4,10 @@ import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:provider/provider.dart'; import 'package:sys_dia_log/locale/locales.dart'; import 'package:sys_dia_log/modules/settings/providers/app_settings_provider.dart'; -import 'package:sys_dia_log/routing/router.dart'; +import 'package:sys_dia_log/routing/app_router.dart'; class SysDiaLogApp extends StatelessWidget { - SysDiaLogApp({Key? key}) : super(key: key); + SysDiaLogApp({super.key}); final _appRouter = AppRouter(); @@ -20,7 +20,6 @@ class SysDiaLogApp extends StatelessWidget { ), ], builder: (context, child) => MaterialApp.router( - useInheritedMediaQuery: true, title: 'Sys Dia Log', debugShowCheckedModeBanner: false, theme: ThemeData( diff --git a/lib/modules/home/views/home_view.dart b/lib/modules/home/views/home_view.dart index 3192999..fc32daa 100755 --- a/lib/modules/home/views/home_view.dart +++ b/lib/modules/home/views/home_view.dart @@ -8,9 +8,10 @@ import 'package:sys_dia_log/modules/home/ui/add_new_button.dart'; import 'package:sys_dia_log/modules/home/ui/measurements_list.dart'; import 'package:sys_dia_log/modules/home/ui/refresh_button.dart'; import 'package:sys_dia_log/modules/measurement/models/measurement.dart'; -import 'package:sys_dia_log/routing/router.dart'; +import 'package:sys_dia_log/routing/app_router.dart'; import 'package:sys_dia_log/shared/ui/loading_indicator.dart'; +@RoutePage() class HomeView extends StatefulWidget { const HomeView({super.key}); @@ -28,7 +29,7 @@ class _HomeViewState extends State { } _addNavigate() { - context.router.navigate(MeasurementViewRoute( + context.router.navigate(MeasurementRoute( onAddNewMeasurement: (Measurement m) => setState(() {}))); } diff --git a/lib/modules/measurement/views/measurement_view.dart b/lib/modules/measurement/views/measurement_view.dart index c726197..b1a3219 100755 --- a/lib/modules/measurement/views/measurement_view.dart +++ b/lib/modules/measurement/views/measurement_view.dart @@ -5,13 +5,14 @@ import 'package:intl/intl.dart'; import 'package:numberpicker/numberpicker.dart'; import 'package:sys_dia_log/modules/measurement/models/measurement.dart'; import 'package:sys_dia_log/modules/measurement/service/measurement_service.dart'; -import 'package:sys_dia_log/routing/router.dart'; +import 'package:sys_dia_log/routing/app_router.dart'; import 'package:sys_dia_log/shared/ui/snack_bars.dart'; +@RoutePage() class MeasurementView extends StatefulWidget { final void Function(Measurement)? onAddNewMeasurement; - const MeasurementView({Key? key, this.onAddNewMeasurement}) : super(key: key); + const MeasurementView({super.key, this.onAddNewMeasurement}); @override State createState() => _MeasurementViewState(); @@ -41,7 +42,7 @@ class _MeasurementViewState extends State { widget.onAddNewMeasurement?.call(measurement); - AutoRouter.of(context).navigate(const HomeViewRoute()); + AutoRouter.of(context).navigate(const HomeRoute()); ScaffoldMessenger.of(context) ..removeCurrentSnackBar() diff --git a/lib/modules/settings/views/settings_view.dart b/lib/modules/settings/views/settings_view.dart index 7a80ed4..ef0df91 100755 --- a/lib/modules/settings/views/settings_view.dart +++ b/lib/modules/settings/views/settings_view.dart @@ -1,10 +1,12 @@ +import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:flutter_i18n/widgets/I18nText.dart'; import 'package:sys_dia_log/modules/settings/ui/locale_settings.dart'; import 'package:sys_dia_log/modules/settings/ui/theme_settings.dart'; +@RoutePage() class SettingsView extends StatelessWidget { - const SettingsView({Key? key}) : super(key: key); + const SettingsView({super.key}); @override Widget build(BuildContext context) { diff --git a/lib/routing/app_router.dart b/lib/routing/app_router.dart new file mode 100755 index 0000000..2b79fa1 --- /dev/null +++ b/lib/routing/app_router.dart @@ -0,0 +1,26 @@ +import 'package:auto_route/auto_route.dart'; +import 'package:flutter/material.dart'; +import 'package:sys_dia_log/modules/home/views/home_view.dart'; +import 'package:sys_dia_log/modules/measurement/models/measurement.dart'; +import 'package:sys_dia_log/modules/measurement/views/measurement_view.dart'; +import 'package:sys_dia_log/modules/settings/views/settings_view.dart'; +import 'package:sys_dia_log/shared/views/nav_bar_view.dart'; +import 'package:sys_dia_log/shared/views/splash_screen_view.dart'; + +part 'app_router.gr.dart'; + +@AutoRouterConfig(replaceInRouteName: 'View,Route') +class AppRouter extends _$AppRouter { + @override + RouteType get defaultRouteType => const RouteType.material(); + + @override + List get routes => [ + AutoRoute(page: SplashScreenRoute.page, initial: true), + CustomRoute(page: NavBarRoute.page, children: [ + AutoRoute(page: HomeRoute.page), + AutoRoute(page: MeasurementRoute.page), + AutoRoute(page: SettingsRoute.page) + ]), + ]; +} diff --git a/lib/routing/app_router.gr.dart b/lib/routing/app_router.gr.dart new file mode 100644 index 0000000..6132cfe --- /dev/null +++ b/lib/routing/app_router.gr.dart @@ -0,0 +1,148 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +// ************************************************************************** +// AutoRouterGenerator +// ************************************************************************** + +// ignore_for_file: type=lint +// coverage:ignore-file + +part of 'app_router.dart'; + +abstract class _$AppRouter extends RootStackRouter { + // ignore: unused_element + _$AppRouter({super.navigatorKey}); + + @override + final Map pagesMap = { + HomeRoute.name: (routeData) { + return AutoRoutePage( + routeData: routeData, + child: const HomeView(), + ); + }, + MeasurementRoute.name: (routeData) { + final args = routeData.argsAs( + orElse: () => const MeasurementRouteArgs()); + return AutoRoutePage( + routeData: routeData, + child: MeasurementView( + key: args.key, + onAddNewMeasurement: args.onAddNewMeasurement, + ), + ); + }, + NavBarRoute.name: (routeData) { + return AutoRoutePage( + routeData: routeData, + child: const NavBarView(), + ); + }, + SettingsRoute.name: (routeData) { + return AutoRoutePage( + routeData: routeData, + child: const SettingsView(), + ); + }, + SplashScreenRoute.name: (routeData) { + return AutoRoutePage( + routeData: routeData, + child: const SplashScreenView(), + ); + }, + }; +} + +/// generated route for +/// [HomeView] +class HomeRoute extends PageRouteInfo { + const HomeRoute({List? children}) + : super( + HomeRoute.name, + initialChildren: children, + ); + + static const String name = 'HomeRoute'; + + static const PageInfo page = PageInfo(name); +} + +/// generated route for +/// [MeasurementView] +class MeasurementRoute extends PageRouteInfo { + MeasurementRoute({ + Key? key, + void Function(Measurement)? onAddNewMeasurement, + List? children, + }) : super( + MeasurementRoute.name, + args: MeasurementRouteArgs( + key: key, + onAddNewMeasurement: onAddNewMeasurement, + ), + initialChildren: children, + ); + + static const String name = 'MeasurementRoute'; + + static const PageInfo page = + PageInfo(name); +} + +class MeasurementRouteArgs { + const MeasurementRouteArgs({ + this.key, + this.onAddNewMeasurement, + }); + + final Key? key; + + final void Function(Measurement)? onAddNewMeasurement; + + @override + String toString() { + return 'MeasurementRouteArgs{key: $key, onAddNewMeasurement: $onAddNewMeasurement}'; + } +} + +/// generated route for +/// [NavBarView] +class NavBarRoute extends PageRouteInfo { + const NavBarRoute({List? children}) + : super( + NavBarRoute.name, + initialChildren: children, + ); + + static const String name = 'NavBarRoute'; + + static const PageInfo page = PageInfo(name); +} + +/// generated route for +/// [SettingsView] +class SettingsRoute extends PageRouteInfo { + const SettingsRoute({List? children}) + : super( + SettingsRoute.name, + initialChildren: children, + ); + + static const String name = 'SettingsRoute'; + + static const PageInfo page = PageInfo(name); +} + +/// generated route for +/// [SplashScreenView] +class SplashScreenRoute extends PageRouteInfo { + const SplashScreenRoute({List? children}) + : super( + SplashScreenRoute.name, + initialChildren: children, + ); + + static const String name = 'SplashScreenRoute'; + + static const PageInfo page = PageInfo(name); +} diff --git a/lib/routing/router.dart b/lib/routing/router.dart deleted file mode 100755 index f8d110c..0000000 --- a/lib/routing/router.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:auto_route/auto_route.dart'; -import 'package:flutter/material.dart'; -import 'package:sys_dia_log/modules/home/views/home_view.dart'; -import 'package:sys_dia_log/modules/measurement/views/measurement_view.dart'; -import 'package:sys_dia_log/modules/settings/views/settings_view.dart'; -import 'package:sys_dia_log/shared/views/splash_screen_view.dart'; -import 'package:sys_dia_log/shared/views/nav_bar_view.dart'; -import '../modules/measurement/models/measurement.dart'; - -part 'router.gr.dart'; - -@MaterialAutoRouter( - replaceInRouteName: 'Page,Route,View', - routes: [ - AutoRoute(page: SplashScreenView, initial: true), - CustomRoute( - page: NavBarView, - children: [ - AutoRoute(page: HomeView), - AutoRoute(page: MeasurementView), - AutoRoute(page: SettingsView) - ], - transitionsBuilder: TransitionsBuilders.fadeIn) - ], -) -class AppRouter extends _$AppRouter {} diff --git a/lib/routing/router.gr.dart b/lib/routing/router.gr.dart deleted file mode 100644 index d76b451..0000000 --- a/lib/routing/router.gr.dart +++ /dev/null @@ -1,171 +0,0 @@ -// ************************************************************************** -// AutoRouteGenerator -// ************************************************************************** - -// GENERATED CODE - DO NOT MODIFY BY HAND - -// ************************************************************************** -// AutoRouteGenerator -// ************************************************************************** -// -// ignore_for_file: type=lint - -part of 'router.dart'; - -class _$AppRouter extends RootStackRouter { - _$AppRouter([GlobalKey? navigatorKey]) : super(navigatorKey); - - @override - final Map pagesMap = { - SplashScreenViewRoute.name: (routeData) { - return MaterialPageX( - routeData: routeData, - child: const SplashScreenView(), - ); - }, - NavBarViewRoute.name: (routeData) { - return CustomPage( - routeData: routeData, - child: const NavBarView(), - transitionsBuilder: TransitionsBuilders.fadeIn, - opaque: true, - barrierDismissible: false, - ); - }, - HomeViewRoute.name: (routeData) { - return MaterialPageX( - routeData: routeData, - child: const HomeView(), - ); - }, - MeasurementViewRoute.name: (routeData) { - final args = routeData.argsAs( - orElse: () => const MeasurementViewRouteArgs()); - return MaterialPageX( - routeData: routeData, - child: MeasurementView( - key: args.key, - onAddNewMeasurement: args.onAddNewMeasurement, - ), - ); - }, - SettingsViewRoute.name: (routeData) { - return MaterialPageX( - routeData: routeData, - child: const SettingsView(), - ); - }, - }; - - @override - List get routes => [ - RouteConfig( - SplashScreenViewRoute.name, - path: '/', - ), - RouteConfig( - NavBarViewRoute.name, - path: '/nav-bar-view', - children: [ - RouteConfig( - HomeViewRoute.name, - path: 'home-view', - parent: NavBarViewRoute.name, - ), - RouteConfig( - MeasurementViewRoute.name, - path: 'measurement-view', - parent: NavBarViewRoute.name, - ), - RouteConfig( - SettingsViewRoute.name, - path: 'settings-view', - parent: NavBarViewRoute.name, - ), - ], - ), - ]; -} - -/// generated route for -/// [SplashScreenView] -class SplashScreenViewRoute extends PageRouteInfo { - const SplashScreenViewRoute() - : super( - SplashScreenViewRoute.name, - path: '/', - ); - - static const String name = 'SplashScreenViewRoute'; -} - -/// generated route for -/// [NavBarView] -class NavBarViewRoute extends PageRouteInfo { - const NavBarViewRoute({List? children}) - : super( - NavBarViewRoute.name, - path: '/nav-bar-view', - initialChildren: children, - ); - - static const String name = 'NavBarViewRoute'; -} - -/// generated route for -/// [HomeView] -class HomeViewRoute extends PageRouteInfo { - const HomeViewRoute() - : super( - HomeViewRoute.name, - path: 'home-view', - ); - - static const String name = 'HomeViewRoute'; -} - -/// generated route for -/// [MeasurementView] -class MeasurementViewRoute extends PageRouteInfo { - MeasurementViewRoute({ - Key? key, - void Function(Measurement)? onAddNewMeasurement, - }) : super( - MeasurementViewRoute.name, - path: 'measurement-view', - args: MeasurementViewRouteArgs( - key: key, - onAddNewMeasurement: onAddNewMeasurement, - ), - ); - - static const String name = 'MeasurementViewRoute'; -} - -class MeasurementViewRouteArgs { - const MeasurementViewRouteArgs({ - this.key, - this.onAddNewMeasurement, - }); - - final Key? key; - - final void Function(Measurement)? onAddNewMeasurement; - - @override - String toString() { - return 'MeasurementViewRouteArgs{key: $key, onAddNewMeasurement: $onAddNewMeasurement}'; - } -} - -/// generated route for -/// [SettingsView] -class SettingsViewRoute extends PageRouteInfo { - const SettingsViewRoute() - : super( - SettingsViewRoute.name, - path: 'settings-view', - ); - - static const String name = 'SettingsViewRoute'; -} diff --git a/lib/shared/views/nav_bar_view.dart b/lib/shared/views/nav_bar_view.dart index 5d96ff4..d2c811f 100755 --- a/lib/shared/views/nav_bar_view.dart +++ b/lib/shared/views/nav_bar_view.dart @@ -1,27 +1,23 @@ import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:flutter_i18n/flutter_i18n.dart'; +import 'package:sys_dia_log/routing/app_router.dart'; -import 'package:sys_dia_log/routing/router.dart'; - +@RoutePage() class NavBarView extends StatelessWidget { const NavBarView({super.key}); @override Widget build(BuildContext context) { return AutoTabsRouter( - routes: [ - const HomeViewRoute(), - MeasurementViewRoute(), - const SettingsViewRoute() - ], - builder: (context, child, animation) { + routes: [const HomeRoute(), MeasurementRoute(), const SettingsRoute()], + transitionBuilder: (context, child, animation) => FadeTransition( + opacity: animation, + child: child, + ), + builder: (context, child) { final tabsRouter = AutoTabsRouter.of(context); return Scaffold( - body: FadeTransition( - opacity: animation, - child: child, - ), bottomNavigationBar: NavigationBar( destinations: [ NavigationDestination( diff --git a/lib/shared/views/splash_screen_view.dart b/lib/shared/views/splash_screen_view.dart index 5bfba99..c156df0 100755 --- a/lib/shared/views/splash_screen_view.dart +++ b/lib/shared/views/splash_screen_view.dart @@ -1,8 +1,9 @@ import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:flutter_i18n/flutter_i18n.dart'; -import 'package:sys_dia_log/routing/router.dart'; +import 'package:sys_dia_log/routing/app_router.dart'; +@RoutePage() class SplashScreenView extends StatefulWidget { const SplashScreenView({super.key}); @@ -15,7 +16,7 @@ class _SplashScreenViewState extends State { void initState() { super.initState(); Future.delayed(const Duration(seconds: 2), - () => AutoRouter.of(context).replace(const NavBarViewRoute())); + () => AutoRouter.of(context).replace(const NavBarRoute())); } @override diff --git a/pubspec.lock b/pubspec.lock index 7f9f693..dd4cd2c 100755 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,58 +5,58 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "98d1d33ed129b372846e862de23a0fc365745f4d7b5e786ce667fcbbb7ac5c07" + sha256: eb376e9acf6938204f90eb3b1f00b578640d3188b4c8a8ec054f9f479af8d051 url: "https://pub.dev" source: hosted - version: "55.0.0" + version: "64.0.0" analyzer: dependency: transitive description: name: analyzer - sha256: "881348aed9b0b425882c97732629a6a31093c8ff20fc4b3b03fb9d3d50a3a126" + sha256: "69f54f967773f6c26c7dcb13e93d7ccee8b17a641689da39e878d5cf13b06893" url: "https://pub.dev" source: hosted - version: "5.7.1" + version: "6.2.0" archive: dependency: transitive description: name: archive - sha256: d6347d54a2d8028e0437e3c099f66fdb8ae02c4720c1e7534c9f24c10351f85d + sha256: "7b875fd4a20b165a3084bd2d210439b22ebc653f21cea4842729c0c30c82596b" url: "https://pub.dev" source: hosted - version: "3.3.6" + version: "3.4.9" args: dependency: transitive description: name: args - sha256: "4cab82a83ffef80b262ddedf47a0a8e56ee6fbf7fe21e6e768b02792034dd440" + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.2" async: dependency: transitive description: name: async - sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.11.0" auto_route: dependency: "direct main" description: name: auto_route - sha256: "12047baeca0e01df93165ef33275b32119d72699ab9a49dc64c20e78f586f96d" + sha256: "82f8df1d177416bc6b7a449127d0270ff1f0f633a91f2ceb7a85d4f07c3affa1" url: "https://pub.dev" source: hosted - version: "5.0.4" + version: "7.8.4" auto_route_generator: dependency: "direct dev" description: name: auto_route_generator - sha256: de5bfbc02ae4eebb339dd90d325749ae7536e903f6513ef72b88954072d72b0e + sha256: "11067a3bcd643812518fe26c0c9ec073990286cabfd9d74b6da9ef9b913c4d22" url: "https://pub.dev" source: hosted - version: "5.0.3" + version: "7.3.2" boolean_selector: dependency: transitive description: @@ -69,10 +69,10 @@ packages: dependency: transitive description: name: build - sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777" + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.4.1" build_config: dependency: transitive description: @@ -85,34 +85,34 @@ packages: dependency: transitive description: name: build_daemon - sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169" + sha256: "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "4.0.1" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: db49b8609ef8c81cca2b310618c3017c00f03a92af44c04d310b907b2d692d95 + sha256: "64e12b0521812d1684b1917bc80945625391cb9bdd4312536b1d69dcb6133ed8" url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.4.1" build_runner: dependency: "direct dev" description: name: build_runner - sha256: b0a8a7b8a76c493e85f1b84bffa0588859a06197863dba8c9036b15581fd9727 + sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b" url: "https://pub.dev" source: hosted - version: "2.3.3" + version: "2.4.6" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292" + sha256: c9e32d21dd6626b5c163d48b037ce906bbe428bc23ab77bcd77bb21e593b6185 url: "https://pub.dev" source: hosted - version: "7.2.7" + version: "7.2.11" built_collection: dependency: transitive description: @@ -125,34 +125,34 @@ packages: dependency: transitive description: name: built_value - sha256: "31b7c748fd4b9adf8d25d72a4c4a59ef119f12876cf414f94f8af5131d5fa2b0" + sha256: "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e" url: "https://pub.dev" source: hosted - version: "8.4.4" + version: "8.7.0" characters: dependency: transitive description: name: characters - sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.3.0" checked_yaml: dependency: transitive description: name: checked_yaml - sha256: "3d1505d91afa809d177efd4eed5bb0eb65805097a1463abdd2add076effae311" + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "2.0.3" cli_util: dependency: transitive description: name: cli_util - sha256: "66f86e916d285c1a93d3b79587d94bd71984a66aac4ff74e524cfa7877f1395c" + sha256: b8db3080e59b2503ca9e7922c3df2072cf13992354d5e944074ffa836fba43b7 url: "https://pub.dev" source: hosted - version: "0.3.5" + version: "0.4.0" clock: dependency: transitive description: @@ -165,18 +165,18 @@ packages: dependency: transitive description: name: code_builder - sha256: "0d43dd1288fd145de1ecc9a3948ad4a6d5a82f0a14c4fdd0892260787d975cbe" + sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677" url: "https://pub.dev" source: hosted - version: "4.4.0" + version: "4.7.0" collection: dependency: transitive description: name: collection - sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 url: "https://pub.dev" source: hosted - version: "1.17.0" + version: "1.17.2" convert: dependency: transitive description: @@ -189,26 +189,26 @@ packages: dependency: transitive description: name: crypto - sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - sha256: e35129dc44c9118cee2a5603506d823bab99c68393879edb440e0090d07586be + sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "1.0.6" dart_style: dependency: transitive description: name: dart_style - sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb" + sha256: abd7625e16f51f554ea244d090292945ec4d4be7bfbaf2ec8cccea568919d334 url: "https://pub.dev" source: hosted - version: "2.2.5" + version: "2.3.3" fake_async: dependency: transitive description: @@ -221,18 +221,18 @@ packages: dependency: transitive description: name: ffi - sha256: a38574032c5f1dd06c4aee541789906c12ccaab8ba01446e800d9c5b79c4a978 + sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "2.1.0" file: dependency: transitive description: name: file - sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" url: "https://pub.dev" source: hosted - version: "6.1.4" + version: "7.0.0" fixnum: dependency: transitive description: @@ -250,26 +250,26 @@ packages: dependency: "direct main" description: name: flutter_i18n - sha256: "5f453b2533939c20042902e0ecf12f0a6941e647f839b9add7a5f6c0a625af66" + sha256: c7e9752c5dea38963bed26513c25a6e5db70c110fc2c68b84694aafa37b29636 url: "https://pub.dev" source: hosted - version: "0.32.4" + version: "0.34.0" flutter_launcher_icons: dependency: "direct dev" description: name: flutter_launcher_icons - sha256: ce0e501cfc258907842238e4ca605e74b7fd1cdf04b3b43e86c43f3e40a1592c + sha256: "526faf84284b86a4cb36d20a5e45147747b7563d921373d4ee0559c54fcdbcea" url: "https://pub.dev" source: hosted - version: "0.11.0" + version: "0.13.1" flutter_lints: dependency: "direct dev" description: name: flutter_lints - sha256: aeb0b80a8b3709709c9cc496cdc027c5b3216796bc0af0ce1007eaf24464fd4c + sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7 url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.1" flutter_localizations: dependency: "direct main" description: flutter @@ -297,26 +297,26 @@ packages: dependency: transitive description: name: glob - sha256: "4515b5b6ddb505ebdd242a5f2cc5d22d3d6a80013789debfbda7777f47ea308c" + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" graphic: dependency: "direct main" description: name: graphic - sha256: "9c317c01fd04a2ec750e456bf8ed4ef000ad8bb6bf125785085490b2ef31f0be" + sha256: "1443f5b89e802c5ae6e6ffdbc0091f3808d74557b4794595b1aa8ffcf944cced" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "2.2.1" graphs: dependency: transitive description: name: graphs - sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2 + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.3.1" hive: dependency: "direct main" description: @@ -337,18 +337,18 @@ packages: dependency: "direct dev" description: name: hive_generator - sha256: "65998cc4d2cd9680a3d9709d893d2f6bb15e6c1f92626c3f1fa650b4b3281521" + sha256: "06cb8f58ace74de61f63500564931f9505368f45f98958bd7a6c35ba24159db4" url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.0.1" http: dependency: transitive description: name: http - sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482" + sha256: "759d1a329847dd0f39226c688d3e06a6b8679668e350e2891a6474f8b4bb8525" url: "https://pub.dev" source: hosted - version: "0.13.5" + version: "1.1.0" http_multi_server: dependency: transitive description: @@ -369,10 +369,10 @@ packages: dependency: transitive description: name: image - sha256: "8e9d133755c3e84c73288363e6343157c383a0c6c56fc51afcc5d4d7180306d6" + sha256: "028f61960d56f26414eb616b48b04eb37d700cbe477b7fb09bf1d7ce57fd9271" url: "https://pub.dev" source: hosted - version: "3.3.0" + version: "4.1.3" infinite_listview: dependency: transitive description: @@ -385,10 +385,10 @@ packages: dependency: "direct main" description: name: intl - sha256: "910f85bce16fb5c6f614e117efa303e85a1731bb0081edf3604a2ae6e9a3cc91" + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" url: "https://pub.dev" source: hosted - version: "0.17.0" + version: "0.18.1" io: dependency: transitive description: @@ -401,58 +401,58 @@ packages: dependency: transitive description: name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.6.7" json_annotation: dependency: transitive description: name: json_annotation - sha256: c33da08e136c3df0190bd5bbe51ae1df4a7d96e7954d1d7249fea2968a72d317 + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 url: "https://pub.dev" source: hosted - version: "4.8.0" + version: "4.8.1" lints: dependency: transitive description: name: lints - sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593" + sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.0" logging: dependency: "direct main" description: name: logging - sha256: "04094f2eb032cbb06c6f6e8d3607edcfcb0455e2bb6cbc010cb01171dcb64e6d" + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.2.0" matcher: dependency: transitive description: name: matcher - sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.dev" source: hosted - version: "0.12.13" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.dev" source: hosted - version: "0.2.0" + version: "0.5.0" meta: dependency: transitive description: name: meta - sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.1" mime: dependency: transitive description: @@ -473,10 +473,10 @@ packages: dependency: "direct main" description: name: numberpicker - sha256: "73723bd13c940ebcd9e5f0ed56b4874588c1748a9a6a38254f97ad627715142e" + sha256: "4c129154944b0f6b133e693f8749c3f8bfb67c4d07ef9dcab48b595c22d1f156" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" package_config: dependency: transitive description: @@ -489,10 +489,10 @@ packages: dependency: transitive description: name: path - sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.8.3" path_drawing: dependency: transitive description: @@ -513,82 +513,82 @@ packages: dependency: transitive description: name: path_provider - sha256: "04890b994ee89bfa80bf3080bfec40d5a92c5c7a785ebb02c13084a099d2b6f9" + sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa url: "https://pub.dev" source: hosted - version: "2.0.13" + version: "2.1.1" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: "7623b7d4be0f0f7d9a8b5ee6879fc13e4522d4c875ab86801dee4af32b54b83e" + sha256: e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72 url: "https://pub.dev" source: hosted - version: "2.0.23" + version: "2.2.1" path_provider_foundation: dependency: transitive description: name: path_provider_foundation - sha256: eec003594f19fe2456ea965ae36b3fc967bc5005f508890aafe31fa75e41d972 + sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.3.1" path_provider_linux: dependency: transitive description: name: path_provider_linux - sha256: "525ad5e07622d19447ad740b1ed5070031f7a5437f44355ae915ff56e986429a" + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 url: "https://pub.dev" source: hosted - version: "2.1.9" + version: "2.2.1" path_provider_platform_interface: dependency: transitive description: name: path_provider_platform_interface - sha256: "57585299a729335f1298b43245842678cb9f43a6310351b18fb577d6e33165ec" + sha256: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c" url: "https://pub.dev" source: hosted - version: "2.0.6" + version: "2.1.1" path_provider_windows: dependency: transitive description: name: path_provider_windows - sha256: "642ddf65fde5404f83267e8459ddb4556316d3ee6d511ed193357e25caa3632d" + sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.2.1" petitparser: dependency: transitive description: name: petitparser - sha256: "49392a45ced973e8d94a85fdb21293fbb40ba805fc49f2965101ae748a3683b4" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 url: "https://pub.dev" source: hosted - version: "5.1.0" + version: "5.4.0" platform: dependency: transitive description: name: platform - sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76" + sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.1.3" plugin_platform_interface: dependency: transitive description: name: plugin_platform_interface - sha256: "6a2128648c854906c53fa8e33986fc0247a1116122f9534dd20e3ab9e16a32bc" + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.6" pointycastle: dependency: transitive description: name: pointycastle - sha256: db7306cf0249f838d1a24af52b5a5887c5bf7f31d8bb4e827d071dc0939ad346 + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" url: "https://pub.dev" source: hosted - version: "3.6.2" + version: "3.7.3" pool: dependency: transitive description: @@ -597,54 +597,46 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" - process: - dependency: transitive - description: - name: process - sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09" - url: "https://pub.dev" - source: hosted - version: "4.2.4" provider: dependency: "direct main" description: name: provider - sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f + sha256: "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096" url: "https://pub.dev" source: hosted - version: "6.0.5" + version: "6.1.1" pub_semver: dependency: transitive description: name: pub_semver - sha256: "307de764d305289ff24ad257ad5c5793ce56d04947599ad68b3baa124105fc17" + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" url: "https://pub.dev" source: hosted - version: "2.1.3" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: ec85d7d55339d85f44ec2b682a82fea340071e8978257e5a43e69f79e98ef50c + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 url: "https://pub.dev" source: hosted - version: "1.2.2" + version: "1.2.3" shelf: dependency: transitive description: name: shelf - sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 url: "https://pub.dev" source: hosted - version: "1.4.0" + version: "1.4.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: a988c0e8d8ffbdb8a28aa7ec8e449c260f3deb808781fe1284d22c5bba7156e8 + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" url: "https://pub.dev" source: hosted - version: "1.0.3" + version: "1.0.4" sky_engine: dependency: transitive description: flutter @@ -654,26 +646,26 @@ packages: dependency: transitive description: name: source_gen - sha256: c2bea18c95cfa0276a366270afaa2850b09b4a76db95d546f3d003dcc7011298 + sha256: fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16 url: "https://pub.dev" source: hosted - version: "1.2.7" + version: "1.4.0" source_helper: dependency: transitive description: name: source_helper - sha256: "3b67aade1d52416149c633ba1bb36df44d97c6b51830c2198e934e3fca87ca1f" + sha256: "6adebc0006c37dd63fe05bca0a929b99f06402fc95aa35bf36d67f5c06de01fd" url: "https://pub.dev" source: hosted - version: "1.3.3" + version: "1.3.4" source_span: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" stack_trace: dependency: transitive description: @@ -718,10 +710,10 @@ packages: dependency: transitive description: name: test_api - sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.dev" source: hosted - version: "0.4.16" + version: "0.6.0" timing: dependency: transitive description: @@ -734,18 +726,18 @@ packages: dependency: transitive description: name: toml - sha256: "69756bc12eccf279b72217a87310d217efc4b3752f722e890f672801f19ac485" + sha256: "157c5dca5160fced243f3ce984117f729c788bb5e475504f3dbcda881accee44" url: "https://pub.dev" source: hosted - version: "0.13.1" + version: "0.14.0" typed_data: dependency: transitive description: name: typed_data - sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.2" vector_math: dependency: transitive description: @@ -758,58 +750,66 @@ packages: dependency: transitive description: name: watcher - sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0" + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: ca49c0bc209c687b887f30527fb6a9d80040b072cc2990f34b9bec3e7663101b + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.4.0" win32: dependency: transitive description: name: win32 - sha256: c9ebe7ee4ab0c2194e65d3a07d8c54c5d00bb001b76081c4a04cdb8448b59e46 + sha256: "350a11abd2d1d97e0cc7a28a81b781c08002aa2864d9e3f192ca0ffa18b06ed3" url: "https://pub.dev" source: hosted - version: "3.1.3" + version: "5.0.9" xdg_directories: dependency: transitive description: name: xdg_directories - sha256: ee1505df1426458f7f60aac270645098d318a8b4766d85fde75f76f2e21807d1 + sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2" url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.3" xml: dependency: transitive description: name: xml - sha256: "979ee37d622dec6365e2efa4d906c37470995871fe9ae080d967e192d88286b5" + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" url: "https://pub.dev" source: hosted - version: "6.2.2" + version: "6.3.0" xml2json: dependency: transitive description: name: xml2json - sha256: c8cb35b83cce879c2ea86951fd257f4e765b0030a0298b35cf94f2b3d0f32095 + sha256: ffb6dc0132a59b2d10d1716aea34ff53fb0e5b73f46a347d302a1a993ea57675 url: "https://pub.dev" source: hosted - version: "5.3.6" + version: "6.2.1" yaml: dependency: transitive description: name: yaml - sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370" + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" sdks: - dart: ">=2.19.0 <3.0.0" - flutter: ">=3.0.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/pubspec.yaml b/pubspec.yaml index 6554ca4..86bbe70 100755 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -5,33 +5,33 @@ publish_to: 'none' version: 1.0.0+1 environment: - sdk: ">=2.17.6 <3.7.6" + sdk: '>=3.1.0 <4.0.0' dependencies: flutter: sdk: flutter flutter_localizations: sdk: flutter - intl: ^0.17.0 - flutter_i18n: ^0.32.4 - logging: ^1.1.0 - cupertino_icons: ^1.0.5 - auto_route: ^5.0.4 - numberpicker: ^2.1.1 + intl: ^0.18.1 + flutter_i18n: ^0.34.0 + logging: ^1.2.0 + cupertino_icons: ^1.0.6 + auto_route: ^7.8.4 + numberpicker: ^2.1.2 hive: ^2.2.3 hive_flutter: ^1.1.0 - provider: ^6.0.5 - graphic: ^1.0.1 + provider: ^6.1.1 + graphic: ^2.2.1 dev_dependencies: flutter_test: sdk: flutter - build_runner: ^2.3.3 - flutter_lints: ^2.0.1 - flutter_launcher_icons: ^0.11.0 - auto_route_generator: ^5.0.3 - hive_generator: ^2.0.0 + build_runner: ^2.4.6 + flutter_lints: ^3.0.1 + flutter_launcher_icons: ^0.13.1 + auto_route_generator: ^7.3.2 + hive_generator: ^2.0.1 flutter: uses-material-design: true