diff --git a/Makefile b/Makefile
index 42e5466..bbbcd10 100644
--- a/Makefile
+++ b/Makefile
@@ -94,4 +94,8 @@ packages-upgrade:
l10n:
flutter gen-l10n
appicon:
- flutter pub run flutter_launcher_icons:main -f flutter_launcher_icons.yaml
\ No newline at end of file
+ flutter pub run flutter_launcher_icons:main -f flutter_launcher_icons.yaml
+deeplink:
+ @printf "Android:\nadb shell am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d 'counter:///counters/2'"
+ @printf "\n\n"
+ @printf "iOS:\nxcrun simctl openurl booted counter:///counters/2"
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 283a60f..ad69081 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -11,6 +11,14 @@
+
+
+
+
+
+
+
+
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index abad461..6c54137 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -47,5 +47,22 @@
UIApplicationSupportsIndirectInputEvents
+
+ FlutterDeepLinkingEnabled
+
+ CFBundleURLTypes
+
+
+ CFBundleTypeRole
+ Editor
+ CFBundleURLName
+ counter.de
+ CFBundleURLSchemes
+
+ de.coodoo.counter
+ counter
+
+
+
diff --git a/lib/src/app.dart b/lib/src/app.dart
index f985d20..a494fd0 100644
--- a/lib/src/app.dart
+++ b/lib/src/app.dart
@@ -1,8 +1,8 @@
+import 'package:counter_workshop/src/core/routing/router.dart';
import 'package:counter_workshop/src/core/theme/app.theme.dart';
import 'package:counter_workshop/src/features/counter/data/repositories/counter.repository.dart';
import 'package:counter_workshop/src/features/counter/presentation/dashboard/bloc/dashboard.bloc.dart';
import 'package:counter_workshop/src/features/counter/presentation/dashboard/bloc/dashboard.event.dart';
-import 'package:counter_workshop/src/features/counter/presentation/dashboard/view/dashboard.page.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
@@ -45,12 +45,14 @@ class AppView extends StatelessWidget {
@override
Widget build(BuildContext context) {
final appTheme = AppTheme();
- return MaterialApp(
+ return MaterialApp.router(
title: 'Counter Demo',
theme: appTheme.light,
darkTheme: appTheme.dark,
themeMode: ThemeMode.system,
- home: const DashboardPage(),
+ routeInformationProvider: router.routeInformationProvider,
+ routeInformationParser: router.routeInformationParser,
+ routerDelegate: router.routerDelegate,
);
}
}
diff --git a/lib/src/core/routing/router.dart b/lib/src/core/routing/router.dart
new file mode 100644
index 0000000..bc5d8b6
--- /dev/null
+++ b/lib/src/core/routing/router.dart
@@ -0,0 +1,31 @@
+import 'package:counter_workshop/src/features/counter/presentation/dashboard/view/dashboard.page.dart';
+import 'package:counter_workshop/src/features/counter/presentation/edit/view/edit_counter.page.dart';
+import 'package:flutter/material.dart';
+import 'package:go_router/go_router.dart';
+
+final router = GoRouter(
+ debugLogDiagnostics: true,
+ initialLocation: '/counters',
+ routes: [
+ GoRoute(
+ path: '/counters',
+ builder: (context, state) => const DashboardPage(),
+ routes: [
+ GoRoute(
+ path: 'new',
+ pageBuilder: (context, state) => const MaterialPage(
+ fullscreenDialog: true,
+ child: EditCounterPage(),
+ ),
+ ),
+ GoRoute(
+ path: ':id',
+ builder: (context, state) {
+ final counterId = state.pathParameters['id'];
+ return EditCounterPage(counterId: counterId!);
+ },
+ ),
+ ],
+ ),
+ ],
+);
diff --git a/lib/src/features/counter/presentation/dashboard/view/dashboard.page.dart b/lib/src/features/counter/presentation/dashboard/view/dashboard.page.dart
index bda3324..0e3d57a 100644
--- a/lib/src/features/counter/presentation/dashboard/view/dashboard.page.dart
+++ b/lib/src/features/counter/presentation/dashboard/view/dashboard.page.dart
@@ -2,9 +2,9 @@ import 'package:counter_workshop/src/core/widgets/error_message.widget.dart';
import 'package:counter_workshop/src/features/counter/presentation/dashboard/bloc/dashboard.bloc.dart';
import 'package:counter_workshop/src/features/counter/presentation/dashboard/bloc/dashboard.state.dart';
import 'package:counter_workshop/src/features/counter/presentation/dashboard/view/widgets/counter_grid.dart';
-import 'package:counter_workshop/src/features/counter/presentation/edit/view/edit_counter.page.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
+import 'package:go_router/go_router.dart';
/// bloc
class DashboardPage extends StatelessWidget {
@@ -38,7 +38,7 @@ class DashboardPage extends StatelessWidget {
floatingActionButton: FloatingActionButton(
child: const Icon(Icons.add),
onPressed: () {
- Navigator.push(context, EditCounterPage.route(fullscreen: true));
+ context.go('/counters/new');
},
),
);
diff --git a/lib/src/features/counter/presentation/dashboard/view/widgets/counter_grid.dart b/lib/src/features/counter/presentation/dashboard/view/widgets/counter_grid.dart
index c2c0516..931699e 100644
--- a/lib/src/features/counter/presentation/dashboard/view/widgets/counter_grid.dart
+++ b/lib/src/features/counter/presentation/dashboard/view/widgets/counter_grid.dart
@@ -1,6 +1,6 @@
import 'package:counter_workshop/src/features/counter/domain/model/counter.model.dart';
-import 'package:counter_workshop/src/features/counter/presentation/edit/view/edit_counter.page.dart';
import 'package:flutter/material.dart';
+import 'package:go_router/go_router.dart';
class CounterGrid extends StatelessWidget {
const CounterGrid({
@@ -26,7 +26,7 @@ class CounterGrid extends StatelessWidget {
final counterModel = counterList[index];
return Card(
child: InkWell(
- onTap: () => Navigator.push(context, EditCounterPage.route(counterId: counterModel.id)),
+ onTap: () => context.push('/counters/${counterModel.id}'),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
diff --git a/lib/src/features/counter/presentation/edit/view/edit_counter.page.dart b/lib/src/features/counter/presentation/edit/view/edit_counter.page.dart
index 2e6a793..361dadb 100644
--- a/lib/src/features/counter/presentation/edit/view/edit_counter.page.dart
+++ b/lib/src/features/counter/presentation/edit/view/edit_counter.page.dart
@@ -17,19 +17,6 @@ class EditCounterPage extends StatelessWidget {
const EditCounterPage({this.counterId, super.key});
final String? counterId;
- static Route route({String? counterId, bool fullscreen = false}) {
- return MaterialPageRoute(
- fullscreenDialog: fullscreen,
- builder: (context) => BlocProvider(
- create: (context) => EditCounterBloc(
- counterRepository: context.read(),
- counterId: counterId,
- ),
- child: EditCounterPage(counterId: counterId),
- ),
- );
- }
-
@override
Widget build(BuildContext context) {
final bloc = EditCounterBloc(
diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj
index ba662d3..db468c4 100644
--- a/macos/Runner.xcodeproj/project.pbxproj
+++ b/macos/Runner.xcodeproj/project.pbxproj
@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 51;
+ objectVersion = 54;
objects = {
/* Begin PBXAggregateTarget section */
@@ -235,6 +235,7 @@
/* Begin PBXShellScriptBuildPhase section */
3399D490228B24CF009A79C7 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
+ alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
@@ -344,7 +345,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- MACOSX_DEPLOYMENT_TARGET = 10.11;
+ MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
@@ -423,7 +424,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- MACOSX_DEPLOYMENT_TARGET = 10.11;
+ MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
@@ -470,7 +471,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- MACOSX_DEPLOYMENT_TARGET = 10.11;
+ MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
diff --git a/pubspec.lock b/pubspec.lock
index f418633..207e0d2 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -5,191 +5,218 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
- url: "https://pub.dartlang.org"
+ sha256: eb376e9acf6938204f90eb3b1f00b578640d3188b4c8a8ec054f9f479af8d051
+ url: "https://pub.dev"
source: hosted
- version: "47.0.0"
+ version: "64.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
- url: "https://pub.dartlang.org"
+ sha256: "69f54f967773f6c26c7dcb13e93d7ccee8b17a641689da39e878d5cf13b06893"
+ url: "https://pub.dev"
source: hosted
- version: "4.7.0"
+ version: "6.2.0"
args:
dependency: transitive
description:
name: args
- url: "https://pub.dartlang.org"
+ sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596
+ url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.4.2"
async:
dependency: transitive
description:
name: async
- url: "https://pub.dartlang.org"
+ sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
+ url: "https://pub.dev"
source: hosted
- version: "2.9.0"
+ version: "2.11.0"
bloc:
dependency: transitive
description:
name: bloc
- url: "https://pub.dartlang.org"
+ sha256: "3820f15f502372d979121de1f6b97bfcf1630ebff8fe1d52fb2b0bfa49be5b49"
+ url: "https://pub.dev"
source: hosted
- version: "8.1.0"
+ version: "8.1.2"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.dartlang.org"
+ sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.1"
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: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
+ url: "https://pub.dev"
source: hosted
- version: "1.1.0"
+ version: "1.1.1"
build_daemon:
dependency: transitive
description:
name: build_daemon
- url: "https://pub.dartlang.org"
+ sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65"
+ url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "4.0.0"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
- url: "https://pub.dartlang.org"
+ sha256: "64e12b0521812d1684b1917bc80945625391cb9bdd4312536b1d69dcb6133ed8"
+ url: "https://pub.dev"
source: hosted
- version: "2.0.9"
+ version: "2.4.1"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- url: "https://pub.dartlang.org"
+ sha256: "10c6bcdbf9d049a0b666702cf1cee4ddfdc38f02a19d35ae392863b47519848b"
+ url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.4.6"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- url: "https://pub.dartlang.org"
+ sha256: c9e32d21dd6626b5c163d48b037ce906bbe428bc23ab77bcd77bb21e593b6185
+ url: "https://pub.dev"
source: hosted
- version: "7.2.3"
+ version: "7.2.11"
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: a8de5955205b4d1dbbbc267daddf2178bd737e4bab8987c04a500478c9651e74
+ url: "https://pub.dev"
source: hosted
- version: "8.4.1"
+ version: "8.6.3"
characters:
dependency: transitive
description:
name: characters
- url: "https://pub.dartlang.org"
+ sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
+ url: "https://pub.dev"
source: hosted
- version: "1.2.1"
+ version: "1.3.0"
checked_yaml:
dependency: transitive
description:
name: checked_yaml
- url: "https://pub.dartlang.org"
+ sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff
+ url: "https://pub.dev"
source: hosted
- version: "2.0.1"
+ version: "2.0.3"
clock:
dependency: transitive
description:
name: clock
- url: "https://pub.dartlang.org"
+ sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
+ url: "https://pub.dev"
source: hosted
version: "1.1.1"
code_builder:
dependency: transitive
description:
name: code_builder
- url: "https://pub.dartlang.org"
+ sha256: "1be9be30396d7e4c0db42c35ea6ccd7cc6a1e19916b5dc64d6ac216b5544d677"
+ url: "https://pub.dev"
source: hosted
- version: "4.2.0"
+ version: "4.7.0"
collection:
dependency: transitive
description:
name: collection
- url: "https://pub.dartlang.org"
+ sha256: "4a07be6cb69c84d677a6c3096fcf960cc3285a8330b4603e0d463d15d9bd934c"
+ url: "https://pub.dev"
source: hosted
- version: "1.16.0"
+ version: "1.17.1"
convert:
dependency: transitive
description:
name: convert
- url: "https://pub.dartlang.org"
+ sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
+ url: "https://pub.dev"
source: hosted
- version: "3.0.2"
+ version: "3.1.1"
crypto:
dependency: transitive
description:
name: crypto
- url: "https://pub.dartlang.org"
+ 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
- url: "https://pub.dartlang.org"
+ sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d
+ url: "https://pub.dev"
source: hosted
- version: "1.0.5"
+ version: "1.0.6"
dart_style:
dependency: transitive
description:
name: dart_style
- url: "https://pub.dartlang.org"
+ sha256: abd7625e16f51f554ea244d090292945ec4d4be7bfbaf2ec8cccea568919d334
+ url: "https://pub.dev"
source: hosted
- version: "2.2.3"
+ version: "2.3.3"
equatable:
dependency: "direct main"
description:
name: equatable
- url: "https://pub.dartlang.org"
+ sha256: c2b87cb7756efdf69892005af546c56c0b5037f54d2a88269b4f347a505e3ca2
+ url: "https://pub.dev"
source: hosted
version: "2.0.5"
fake_async:
dependency: transitive
description:
name: fake_async
- url: "https://pub.dartlang.org"
+ sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
+ url: "https://pub.dev"
source: hosted
version: "1.3.1"
file:
dependency: transitive
description:
name: file
- url: "https://pub.dartlang.org"
+ sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c"
+ url: "https://pub.dev"
source: hosted
- version: "6.1.4"
+ version: "7.0.0"
fixnum:
dependency: transitive
description:
name: fixnum
- url: "https://pub.dartlang.org"
+ sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.1"
+ version: "1.1.0"
flutter:
dependency: "direct main"
description: flutter
@@ -199,189 +226,228 @@ packages:
dependency: "direct main"
description:
name: flutter_bloc
- url: "https://pub.dartlang.org"
+ sha256: e74efb89ee6945bcbce74a5b3a5a3376b088e5f21f55c263fc38cbdc6237faae
+ url: "https://pub.dev"
source: hosted
- version: "8.1.1"
+ version: "8.1.3"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
- url: "https://pub.dartlang.org"
+ sha256: ad76540d21c066228ee3f9d1dad64a9f7e46530e8bb7c85011a88bc1fd874bc5
+ url: "https://pub.dev"
source: hosted
- version: "2.0.1"
+ version: "3.0.0"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
+ flutter_web_plugins:
+ dependency: transitive
+ description: flutter
+ source: sdk
+ version: "0.0.0"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
- url: "https://pub.dartlang.org"
+ sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.3"
+ version: "3.2.0"
glob:
dependency: transitive
description:
name: glob
- url: "https://pub.dartlang.org"
+ sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.2"
+ go_router:
+ dependency: "direct main"
+ description:
+ name: go_router
+ sha256: a206cc4621a644531a2e05e7774616ab4d9d85eab1f3b0e255f3102937fccab1
+ url: "https://pub.dev"
+ source: hosted
+ version: "12.0.0"
graphs:
dependency: transitive
description:
name: graphs
- url: "https://pub.dartlang.org"
+ sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.3.1"
http:
dependency: "direct main"
description:
name: http
- url: "https://pub.dartlang.org"
+ sha256: "759d1a329847dd0f39226c688d3e06a6b8679668e350e2891a6474f8b4bb8525"
+ url: "https://pub.dev"
source: hosted
- version: "0.13.5"
+ version: "1.1.0"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
- url: "https://pub.dartlang.org"
+ sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
+ url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
- url: "https://pub.dartlang.org"
+ sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
+ url: "https://pub.dev"
source: hosted
- version: "4.0.1"
+ version: "4.0.2"
io:
dependency: transitive
description:
name: io
- url: "https://pub.dartlang.org"
+ sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.3"
+ version: "1.0.4"
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: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
+ url: "https://pub.dev"
source: hosted
- version: "4.6.0"
+ version: "4.8.1"
lints:
dependency: transitive
description:
name: lints
- url: "https://pub.dartlang.org"
+ sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
+ url: "https://pub.dev"
source: hosted
- version: "2.0.0"
+ version: "3.0.0"
logging:
dependency: transitive
description:
name: logging
- url: "https://pub.dartlang.org"
+ sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.2"
+ version: "1.2.0"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.dartlang.org"
+ sha256: "6501fbd55da300384b768785b83e5ce66991266cec21af89ab9ae7f5ce1c4cbb"
+ url: "https://pub.dev"
source: hosted
- version: "0.12.12"
+ version: "0.12.15"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
- url: "https://pub.dartlang.org"
+ sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724
+ url: "https://pub.dev"
source: hosted
- version: "0.1.5"
+ version: "0.2.0"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.dartlang.org"
+ sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3"
+ url: "https://pub.dev"
source: hosted
- version: "1.8.0"
+ version: "1.9.1"
mime:
dependency: transitive
description:
name: mime
- url: "https://pub.dartlang.org"
+ sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e
+ url: "https://pub.dev"
source: hosted
- version: "1.0.2"
+ version: "1.0.4"
nested:
dependency: transitive
description:
name: nested
- url: "https://pub.dartlang.org"
+ sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20"
+ url: "https://pub.dev"
source: hosted
version: "1.0.0"
package_config:
dependency: transitive
description:
name: package_config
- url: "https://pub.dartlang.org"
+ sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
+ url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: transitive
description:
name: path
- url: "https://pub.dartlang.org"
+ sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
+ url: "https://pub.dev"
source: hosted
- version: "1.8.2"
+ version: "1.8.3"
pool:
dependency: transitive
description:
name: pool
- url: "https://pub.dartlang.org"
+ sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
+ url: "https://pub.dev"
source: hosted
version: "1.5.1"
provider:
dependency: transitive
description:
name: provider
- url: "https://pub.dartlang.org"
+ sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f
+ url: "https://pub.dev"
source: hosted
- version: "6.0.3"
+ version: "6.0.5"
pub_semver:
dependency: transitive
description:
name: pub_semver
- url: "https://pub.dartlang.org"
+ sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.1"
+ version: "2.1.4"
pubspec_parse:
dependency: transitive
description:
name: pubspec_parse
- url: "https://pub.dartlang.org"
+ sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367
+ url: "https://pub.dev"
source: hosted
- version: "1.2.1"
+ version: "1.2.3"
shelf:
dependency: transitive
description:
name: shelf
- url: "https://pub.dartlang.org"
+ sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
+ url: "https://pub.dev"
source: hosted
- version: "1.3.2"
+ version: "1.4.1"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
- url: "https://pub.dartlang.org"
+ sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.2"
+ version: "1.0.4"
sky_engine:
dependency: transitive
description: flutter
@@ -391,93 +457,106 @@ packages:
dependency: transitive
description:
name: source_span
- url: "https://pub.dartlang.org"
+ sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
+ url: "https://pub.dev"
source: hosted
- version: "1.9.0"
+ version: "1.9.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.dartlang.org"
+ sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
+ url: "https://pub.dev"
source: hosted
- version: "1.10.0"
+ version: "1.11.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
- url: "https://pub.dartlang.org"
+ sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.1"
stream_transform:
dependency: transitive
description:
name: stream_transform
- url: "https://pub.dartlang.org"
+ sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f"
+ url: "https://pub.dev"
source: hosted
- version: "2.0.0"
+ version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.dartlang.org"
+ sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
+ url: "https://pub.dev"
source: hosted
- version: "1.1.1"
+ version: "1.2.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.dartlang.org"
+ sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
+ url: "https://pub.dev"
source: hosted
version: "1.2.1"
test_api:
dependency: transitive
description:
name: test_api
- url: "https://pub.dartlang.org"
+ sha256: eb6ac1540b26de412b3403a163d919ba86f6a973fe6cc50ae3541b80092fdcfb
+ url: "https://pub.dev"
source: hosted
- version: "0.4.12"
+ version: "0.5.1"
timing:
dependency: transitive
description:
name: timing
- url: "https://pub.dartlang.org"
+ sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.0"
+ version: "1.0.1"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.dartlang.org"
+ sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c
+ url: "https://pub.dev"
source: hosted
- version: "1.3.1"
+ version: "1.3.2"
vector_math:
dependency: transitive
description:
name: vector_math
- url: "https://pub.dartlang.org"
+ sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
+ url: "https://pub.dev"
source: hosted
- version: "2.1.2"
+ version: "2.1.4"
watcher:
dependency: transitive
description:
name: watcher
- url: "https://pub.dartlang.org"
+ sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8"
+ url: "https://pub.dev"
source: hosted
- version: "1.0.1"
+ version: "1.1.0"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
- url: "https://pub.dartlang.org"
+ sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b
+ url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.4.0"
yaml:
dependency: transitive
description:
name: yaml
- url: "https://pub.dartlang.org"
+ sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
+ url: "https://pub.dev"
source: hosted
- version: "3.1.1"
+ version: "3.1.2"
sdks:
- dart: ">=2.18.0 <3.0.0"
- flutter: ">=1.16.0"
+ dart: ">=3.0.0 <4.0.0"
+ flutter: ">=3.7.0"
diff --git a/pubspec.yaml b/pubspec.yaml
index 8f03ea3..cd88bb0 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -14,14 +14,15 @@ dependencies:
cupertino_icons: ^1.0.2
equatable: ^2.0.5
- http: ^0.13.5
+ http: ^1.1.0
flutter_bloc: ^8.1.1
+ go_router: ^12.0.0
dev_dependencies:
flutter_test:
sdk: flutter
- flutter_lints: ^2.0.0
+ flutter_lints: ^3.0.0
build_runner: ^2.2.0
flutter: