diff --git a/build.zip b/build.zip new file mode 100644 index 0000000..24a5a5a Binary files /dev/null and b/build.zip differ diff --git a/lib/main.dart b/lib/main.dart index 0f9185f..fa8ad8d 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -10,6 +10,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/firebase_options.dart'; import 'package:didvan/models/notification_message.dart'; import 'package:didvan/models/requests/news.dart'; +import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/providers/media.dart'; import 'package:didvan/providers/theme.dart'; import 'package:didvan/providers/user.dart'; @@ -137,6 +138,20 @@ class _DidvanState extends State with WidgetsBindingObserver { navigatorKey.currentState?.pushNamed(path); } } + if (mounted) { + String path = uri.path; + if (path.startsWith('/radar/')) { + final id = path.split('/radar/').last; + if (id.isNotEmpty) { + navigatorKey.currentState?.pushNamed( + Routes.radarDetails, + arguments: {'id': int.parse(id), 'args': const RadarRequestArgs(page: 0)}, + ); + } + } else { + navigatorKey.currentState?.pushNamed(path); + } + } } @override diff --git a/lib/views/splash/splash.dart b/lib/views/splash/splash.dart index a700b9b..87ec3b4 100644 --- a/lib/views/splash/splash.dart +++ b/lib/views/splash/splash.dart @@ -135,20 +135,24 @@ class _SplashState extends State { await ServerDataProvider.getData(); } - final String destinationRoute = - token == null ? Routes.authenticaion : Routes.home; - dynamic routeArguments = - token == null ? {'isResetPassword': false} : {'showDialogs': true}; + print("token route is $token"); + String extractedPath = initialURI?.path.toString() == '/' ? Routes.home : initialURI?.path.toString() ?? Routes.home; + final String destinationRoute = token == null ? Routes.authenticaion : extractedPath; + dynamic routeArguments = token == null ? {'isResetPassword': false} : {'showDialogs': true}; - if (destinationRoute == Routes.home && initialURI != null) { + + if (destinationRoute == Routes.home) { + print("destination route was home and init uri is $initialURI"); (routeArguments as Map)['deepLinkUri'] = initialURI; initialURI = null; } if(destinationRoute == Routes.authenticaion){ + print("destination route is auth route"); routeArguments = false; } + print("destination route: $destinationRoute, route args: $routeArguments"); await navigatorKey.currentState!.pushReplacementNamed( destinationRoute, arguments: routeArguments, diff --git a/makefile b/makefile index 87723a8..5708751 100644 --- a/makefile +++ b/makefile @@ -1,2 +1,9 @@ update_js: - cp ./lib/assets/js/main.js ./build/flutter_assets/lib/assets/js/main.js \ No newline at end of file + cp ./lib/assets/js/main.js ./build/flutter_assets/lib/assets/js/main.js + +zip_web: + powershell Compress-Archive -Path build\web\* -DestinationPath build.zip -Force + +build_web: + flutter build web +