From 8d41a110b4059401db1587a8371f7ed5355b1c9d Mon Sep 17 00:00:00 2001 From: Konstantin Ullrich Date: Mon, 8 Dec 2025 14:07:15 +0100 Subject: [PATCH] feat: add built_in_tor metadata to support chats (#2712) --- lib/di.dart | 3 +-- lib/src/screens/support_chat/support_chat_page.dart | 1 + .../screens/support_chat/widgets/chatwoot_widget.dart | 3 +++ lib/view_model/support_view_model.dart | 10 +++++----- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/lib/di.dart b/lib/di.dart index 2d793144e..800399b61 100644 --- a/lib/di.dart +++ b/lib/di.dart @@ -1426,8 +1426,7 @@ Future setup({ getIt.registerFactoryParam( (Order order, _) => OrderDetailsPage(getIt.get(param1: order))); - getIt.registerFactory(() => - SupportViewModel(getIt.get(), getIt.get())); + getIt.registerFactory(() => SupportViewModel(getIt.get())); getIt.registerFactory(() => SupportPage(getIt.get())); diff --git a/lib/src/screens/support_chat/support_chat_page.dart b/lib/src/screens/support_chat/support_chat_page.dart index 5598e542a..2efbf84ee 100644 --- a/lib/src/screens/support_chat/support_chat_page.dart +++ b/lib/src/screens/support_chat/support_chat_page.dart @@ -29,6 +29,7 @@ class SupportChatPage extends BasePage { fiatApiMode: supportViewModel.fiatApiMode, walletType: supportViewModel.walletType, walletSyncState: supportViewModel.walletSyncState, + builtInTorState: supportViewModel.builtInTorState, ); return Container(); }, diff --git a/lib/src/screens/support_chat/widgets/chatwoot_widget.dart b/lib/src/screens/support_chat/widgets/chatwoot_widget.dart index b42cb8d02..217d0a1c6 100644 --- a/lib/src/screens/support_chat/widgets/chatwoot_widget.dart +++ b/lib/src/screens/support_chat/widgets/chatwoot_widget.dart @@ -14,6 +14,7 @@ class ChatwootWidget extends StatefulWidget { required this.fiatApiMode, required this.walletType, required this.walletSyncState, + required this.builtInTorState, }); final SecureStorage secureStorage; @@ -22,6 +23,7 @@ class ChatwootWidget extends StatefulWidget { final String fiatApiMode; final String walletType; final String walletSyncState; + final String builtInTorState; @override ChatwootWidgetState createState() => ChatwootWidgetState(); @@ -54,6 +56,7 @@ class ChatwootWidgetState extends State { "fiat_api_mode": widget.fiatApiMode, "wallet_type": widget.walletType, "wallet_sync_state": widget.walletSyncState, + "built_in_tor": widget.builtInTorState, }); } } diff --git a/lib/view_model/support_view_model.dart b/lib/view_model/support_view_model.dart index 055f24444..5459e523b 100644 --- a/lib/view_model/support_view_model.dart +++ b/lib/view_model/support_view_model.dart @@ -1,7 +1,6 @@ import 'package:cake_wallet/.secrets.g.dart' as secrets; import 'package:cake_wallet/generated/i18n.dart'; import 'package:cake_wallet/store/app_store.dart'; -import 'package:cake_wallet/store/settings_store.dart'; import 'package:cake_wallet/view_model/settings/link_list_item.dart'; import 'package:cake_wallet/view_model/settings/settings_list_item.dart'; import 'package:cake_wallet/wallet_type_utils.dart'; @@ -12,10 +11,9 @@ part 'support_view_model.g.dart'; class SupportViewModel = SupportViewModelBase with _$SupportViewModel; abstract class SupportViewModelBase with Store { - final SettingsStore _settingsStore; final AppStore _appStore; - SupportViewModelBase(this._settingsStore, this._appStore) + SupportViewModelBase(this._appStore) : items = [ LinkListItem( title: 'Email', @@ -128,13 +126,15 @@ abstract class SupportViewModelBase with Store { } String get appVersion => - "${isMoneroOnly ? "Monero.com" : "Cake Wallet"} - ${_settingsStore.appVersion}"; + "${isMoneroOnly ? "Monero.com" : "Cake Wallet"} - ${_appStore.settingsStore.appVersion}"; - String get fiatApiMode => _settingsStore.fiatApiMode.title; + String get fiatApiMode => _appStore.settingsStore.fiatApiMode.title; String get walletType => _appStore.wallet?.type.name ?? 'Unknown'; String get walletSyncState => _appStore.wallet?.syncStatus.toString() ?? 'Unknown'; + String get builtInTorState => _appStore.settingsStore.currentBuiltinTor ? 'Enabled' : 'Disabled'; + List items; }