From 348c2935ec7962a2798ed4b83216f73d54f91c45 Mon Sep 17 00:00:00 2001 From: problematicconsumer Date: Fri, 5 Jan 2024 15:21:10 +0330 Subject: [PATCH] Refactor service wrappers --- lib/bootstrap.dart | 4 ++-- lib/core/router/app_router.dart | 4 ++-- lib/features/app/widget/app.dart | 2 +- .../deep_link/notifier/deep_link_notifier.dart} | 5 ++--- lib/features/{wrapper => }/shortcut/shortcut_wrapper.dart | 0 5 files changed, 7 insertions(+), 8 deletions(-) rename lib/{services/deep_link_service.dart => features/deep_link/notifier/deep_link_notifier.dart} (91%) rename lib/features/{wrapper => }/shortcut/shortcut_wrapper.dart (100%) diff --git a/lib/bootstrap.dart b/lib/bootstrap.dart index 333b2b86..7398b845 100644 --- a/lib/bootstrap.dart +++ b/lib/bootstrap.dart @@ -17,13 +17,13 @@ import 'package:hiddify/core/preferences/preferences_migration.dart'; import 'package:hiddify/core/preferences/preferences_provider.dart'; import 'package:hiddify/features/app/widget/app.dart'; import 'package:hiddify/features/auto_start/notifier/auto_start_notifier.dart'; +import 'package:hiddify/features/deep_link/notifier/deep_link_notifier.dart'; import 'package:hiddify/features/geo_asset/data/geo_asset_data_providers.dart'; import 'package:hiddify/features/log/data/log_data_providers.dart'; import 'package:hiddify/features/profile/data/profile_data_providers.dart'; import 'package:hiddify/features/profile/notifier/active_profile_notifier.dart'; import 'package:hiddify/features/system_tray/notifier/system_tray_notifier.dart'; import 'package:hiddify/features/window/notifier/window_notifier.dart'; -import 'package:hiddify/services/deep_link_service.dart'; import 'package:hiddify/singbox/service/singbox_service_provider.dart'; import 'package:hiddify/utils/utils.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; @@ -144,7 +144,7 @@ Future lazyBootstrap( ); await _safeInit( "deep link service", - () => container.read(deepLinkServiceProvider.future), + () => container.read(deepLinkNotifierProvider.future), timeout: 1000, ); diff --git a/lib/core/router/app_router.dart b/lib/core/router/app_router.dart index 8db2baae..b9dbee2f 100644 --- a/lib/core/router/app_router.dart +++ b/lib/core/router/app_router.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:hiddify/core/preferences/general_preferences.dart'; import 'package:hiddify/core/router/routes.dart'; -import 'package:hiddify/services/deep_link_service.dart'; +import 'package:hiddify/features/deep_link/notifier/deep_link_notifier.dart'; import 'package:hiddify/utils/utils.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; import 'package:sentry_flutter/sentry_flutter.dart'; @@ -21,7 +21,7 @@ final GlobalKey rootNavigatorKey = GlobalKey(); GoRouter router(RouterRef ref) { final notifier = ref.watch(routerListenableProvider.notifier); final deepLink = ref.listen( - deepLinkServiceProvider, + deepLinkNotifierProvider, (_, next) async { if (next case AsyncData(value: final link?)) { await ref.state.push(AddProfileRoute(url: link.url).location); diff --git a/lib/features/app/widget/app.dart b/lib/features/app/widget/app.dart index 2773fee8..9b3b5f30 100644 --- a/lib/features/app/widget/app.dart +++ b/lib/features/app/widget/app.dart @@ -12,9 +12,9 @@ import 'package:hiddify/core/theme/theme_preferences.dart'; import 'package:hiddify/features/app_update/notifier/app_update_notifier.dart'; import 'package:hiddify/features/connection/widget/connection_wrapper.dart'; import 'package:hiddify/features/profile/notifier/profiles_update_notifier.dart'; +import 'package:hiddify/features/shortcut/shortcut_wrapper.dart'; import 'package:hiddify/features/system_tray/widget/system_tray_wrapper.dart'; import 'package:hiddify/features/window/widget/window_wrapper.dart'; -import 'package:hiddify/features/wrapper/shortcut/shortcut_wrapper.dart'; import 'package:hiddify/utils/utils.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:upgrader/upgrader.dart'; diff --git a/lib/services/deep_link_service.dart b/lib/features/deep_link/notifier/deep_link_notifier.dart similarity index 91% rename from lib/services/deep_link_service.dart rename to lib/features/deep_link/notifier/deep_link_notifier.dart index 12ad782f..2321f472 100644 --- a/lib/services/deep_link_service.dart +++ b/lib/features/deep_link/notifier/deep_link_notifier.dart @@ -4,17 +4,16 @@ import 'package:hiddify/utils/utils.dart'; import 'package:protocol_handler/protocol_handler.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; -part 'deep_link_service.g.dart'; +part 'deep_link_notifier.g.dart'; typedef NewProfileLink = ({String? url, String? name}); @Riverpod(keepAlive: true) -class DeepLinkService extends _$DeepLinkService +class DeepLinkNotifier extends _$DeepLinkNotifier with ProtocolListener, InfraLogger { @override Future build() async { if (Platform.isLinux) return null; - loggy.debug("initializing"); for (final protocol in LinkParser.protocols) { await protocolHandler.register(protocol); } diff --git a/lib/features/wrapper/shortcut/shortcut_wrapper.dart b/lib/features/shortcut/shortcut_wrapper.dart similarity index 100% rename from lib/features/wrapper/shortcut/shortcut_wrapper.dart rename to lib/features/shortcut/shortcut_wrapper.dart