Skip to content

Commit

Permalink
feat(EWM-316): wallet types names
Browse files Browse the repository at this point in the history
  • Loading branch information
Egor Komarov committed Sep 29, 2024
1 parent 0ec3726 commit 2270bf3
Show file tree
Hide file tree
Showing 7 changed files with 53 additions and 75 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import 'package:app/app/service/nekoton_related/connection_service/transport_strategies/utils.dart';
import 'package:app/data/models/models.dart';
import 'package:nekoton_repository/nekoton_repository.dart';

Expand Down Expand Up @@ -33,8 +32,21 @@ class CustomTransportStrategy extends TransportStrategy {
String currencyUrl(String currencyAddress) => '';

@override
String defaultAccountName(WalletType walletType) =>
getDefaultAccountName(walletType);
String defaultAccountName(WalletType walletType) => walletType.when(
multisig: (type) => switch (type) {
MultisigType.safeMultisigWallet => 'SafeMultisig24h',
MultisigType.safeMultisigWallet24h => 'SafeMultisig24h',
MultisigType.setcodeMultisigWallet => 'SetcodeMultisig',
MultisigType.setcodeMultisigWallet24h => 'SetcodeMultisig24h',
MultisigType.bridgeMultisigWallet => 'BridgeMultisig',
MultisigType.surfWallet => 'Surf wallet',
MultisigType.multisig2 => 'Legacy Multisig',
MultisigType.multisig2_1 => 'Multisig',
},
walletV3: () => 'WalletV3',
highloadWalletV2: () => 'HighloadWalletV2',
everWallet: () => 'Default',
);

@override
final defaultWalletType = const WalletType.everWallet();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import 'package:app/app/service/nekoton_related/connection_service/transport_strategies/utils.dart';
import 'package:app/data/models/models.dart';
import 'package:app/generated/generated.dart';
import 'package:nekoton_repository/nekoton_repository.dart';
Expand Down Expand Up @@ -40,8 +39,21 @@ class EverTransportStrategy extends TransportStrategy {
'https://api.flatqube.io/v1/currencies/$currencyAddress';

@override
String defaultAccountName(WalletType walletType) =>
getDefaultAccountName(walletType);
String defaultAccountName(WalletType walletType) => walletType.when(
multisig: (type) => switch (type) {
MultisigType.safeMultisigWallet => 'SafeMultisig24h',
MultisigType.safeMultisigWallet24h => 'SafeMultisig24h',
MultisigType.setcodeMultisigWallet => 'SetcodeMultisig',
MultisigType.setcodeMultisigWallet24h => 'SetcodeMultisig24h',
MultisigType.bridgeMultisigWallet => 'BridgeMultisig',
MultisigType.surfWallet => 'Surf wallet',
MultisigType.multisig2 => 'Multisig',
MultisigType.multisig2_1 => 'Multisig 2.1',
},
walletV3: () => 'WalletV3',
highloadWalletV2: () => 'HighloadWalletV2',
everWallet: () => 'EVER Wallet',
);

@override
final defaultWalletType = const WalletType.everWallet();
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -32,29 +32,19 @@ class VenomTransportStrategy extends TransportStrategy {

@override
String defaultAccountName(WalletType walletType) => walletType.when(
multisig: (multisigType) {
switch (multisigType) {
case MultisigType.safeMultisigWallet:
return 'SafeMultisig';
case MultisigType.safeMultisigWallet24h:
return 'SafeMultisig24';
case MultisigType.setcodeMultisigWallet:
return 'SetcodeMultisig';
case MultisigType.setcodeMultisigWallet24h:
return 'SetcodeMultisig24';
case MultisigType.bridgeMultisigWallet:
return 'Legacy Multisignature';
case MultisigType.surfWallet:
return 'Surf';
case MultisigType.multisig2:
return 'Multisig2';
case MultisigType.multisig2_1:
return 'Multisignature';
}
multisig: (type) => switch (type) {
MultisigType.safeMultisigWallet => 'SafeMultisig24h',
MultisigType.safeMultisigWallet24h => 'SafeMultisig24h',
MultisigType.setcodeMultisigWallet => 'SetcodeMultisig',
MultisigType.setcodeMultisigWallet24h => 'SetcodeMultisig24h',
MultisigType.bridgeMultisigWallet => 'BridgeMultisig',
MultisigType.surfWallet => 'Surf wallet',
MultisigType.multisig2 => 'Legacy Multisig',
MultisigType.multisig2_1 => 'Multisig',
},
everWallet: () => 'Default',
walletV3: () => 'Legacy',
highloadWalletV2: () => 'HighloadWalletV2',
everWallet: () => 'Default',
);

@override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ class WalletAppBarModel extends ElementaryModel {
),
);

Stream<ConnectionData> get connection =>
Stream<ConnectionData> get connectionStream =>
_storageService.currentConnectionStream;

TransportStrategy get transport => _nekotonRepository.currentTransport;
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ class WalletAppBarWidget extends ElementaryWidget<WalletAppBarWidgetModel>
(value) => _AccountInfo(
account: value,
walletState: walletState,
walletTypeName: wm.getWalletTypeName(
account.account.tonWallet.contract,
),
),
) ??
const SizedBox.shrink(),
Expand Down Expand Up @@ -80,15 +83,16 @@ class _AccountInfo extends StatelessWidget {
const _AccountInfo({
required this.account,
required this.walletState,
required this.walletTypeName,
});

final KeyAccount account;
final TonWalletState? walletState;
final String walletTypeName;

@override
Widget build(BuildContext context) {
final theme = context.themeStyleV2;
final contract = account.account.tonWallet.contract;
final custodians = walletState?.wallet?.custodians?.length ?? 1;
final requiredConfirmations =
walletState?.wallet?.details.requiredConfirmations;
Expand Down Expand Up @@ -119,7 +123,7 @@ class _AccountInfo extends StatelessWidget {
const SizedBox(width: DimensSizeV2.d4),
Flexible(
child: Text(
contract.toReadableName(),
walletTypeName,
style: theme.textStyles.labelXSmall.copyWith(
color: theme.colors.content3,
),
Expand Down Expand Up @@ -155,21 +159,3 @@ class _AccountInfo extends StatelessWidget {
);
}
}

extension on WalletType {
String toReadableName() => when(
multisig: (type) => switch (type) {
MultisigType.safeMultisigWallet => 'SafeMultisig24h',
MultisigType.safeMultisigWallet24h => 'SafeMultisig24h',
MultisigType.setcodeMultisigWallet => 'SetcodeMultisig',
MultisigType.setcodeMultisigWallet24h => 'SetcodeMultisig24h',
MultisigType.bridgeMultisigWallet => 'BridgeMultisig',
MultisigType.surfWallet => 'Surf wallet',
MultisigType.multisig2 => 'Multisig',
MultisigType.multisig2_1 => 'Multisig 2.1',
},
walletV3: () => 'WalletV3',
highloadWalletV2: () => 'HighloadWalletV2',
everWallet: () => 'EVER Wallet',
);
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ class WalletAppBarWidgetModel

late final _currentAccount = createNotifierFromStream(model.currentAccount);
late final _walletState = createNotifierFromStream(model.walletState);
late final _connection = createNotifierFromStream(model.connection);
late final _connection = createNotifierFromStream(model.connectionStream);

ListenableState<KeyAccount?> get currentAccount => _currentAccount;

Expand All @@ -39,6 +39,9 @@ class WalletAppBarWidgetModel

ThemeStyleV2 get theme => context.themeStyleV2;

String getWalletTypeName(WalletType walletType) =>
model.transport.defaultAccountName(walletType);

void onNetwork() {
showSelectNetworkSheet(context: context);
}
Expand Down

0 comments on commit 2270bf3

Please sign in to comment.