112
required this.useEtherscan,
113
required this.useBaseScan,
114
required this.useArbiScan,
115
+ required this.useBscScan,
116
required this.usePolygonScan,
117
required this.useTronGrid,
118
required this.useMempoolFeeAPI,
147
TransactionPriority? initialEVMTransactionPriority,
148
TransactionPriority? initialPolygonTransactionPriority,
149
TransactionPriority? initialBaseTransactionPriority,
150
+ TransactionPriority? initialBscTransactionPriority,
151
TransactionPriority? initialBitcoinCashTransactionPriority,
152
TransactionPriority? initialZanoTransactionPriority,
153
TransactionPriority? initialDecredTransactionPriority,
240
priority[WalletType.base] = initialBaseTransactionPriority;
241
}
242
243
+ if (initialBscTransactionPriority != null) {
244
+ priority[WalletType.bsc] = initialBscTransactionPriority;
245
+ }
246
+
247
if (initialBitcoinCashTransactionPriority != null) {
248
priority[WalletType.bitcoinCash] = initialBitcoinCashTransactionPriority;
249
}
311
case WalletType.base:
312
key = PreferencesKey.baseTransactionPriority;
313
break;
314
+ case WalletType.bsc:
315
+ key = PreferencesKey.bscTransactionPriority;
316
+ break;
317
case WalletType.zano:
318
key = PreferencesKey.zanoTransactionPriority;
319
break;
486
reaction((_) => useArbiScan,
487
(bool useArbiScan) => _sharedPreferences.setBool(PreferencesKey.useArbiScan, useArbiScan));
488
489
+ reaction((_) => useBscScan,
490
+ (bool useBscScan) => _sharedPreferences.setBool(PreferencesKey.useBscScan, useBscScan));
491
+
492
reaction((_) => useTronGrid,
493
(bool useTronGrid) => _sharedPreferences.setBool(PreferencesKey.useTronGrid, useTronGrid));
494
865
@observable
866
bool useArbiScan;
867
868
+ @observable
869
+ bool useBscScan;
870
+
871
@observable
872
bool useTronGrid;
873
996
return PreferencesKey.currentBaseNodeIdKey;
997
case 42161:
998
return PreferencesKey.currentArbitrumNodeIdKey;
999
+ case 56:
1000
+ return PreferencesKey.currentBscNodeIdKey;
1001
default:
1002
// Default to Ethereum for unknown chainIds
1003
return PreferencesKey.currentEthereumNodeIdKey;
1060
TransactionPriority? evmTransactionPriority;
1061
TransactionPriority? polygonTransactionPriority;
1062
TransactionPriority? baseTransactionPriority;
1063
+ TransactionPriority? bscTransactionPriority;
1064
TransactionPriority? bitcoinCashTransactionPriority;
1065
TransactionPriority? wowneroTransactionPriority;
1066
TransactionPriority? zanoTransactionPriority;
1088
baseTransactionPriority = evm?.deserializeEVMTransactionPriority(
1089
sharedPreferences.getInt(PreferencesKey.baseTransactionPriority)!);
1090
}
1091
+ if (sharedPreferences.getInt(PreferencesKey.bscTransactionPriority) != null) {
1092
+ bscTransactionPriority = evm?.deserializeEVMTransactionPriority(
1093
+ sharedPreferences.getInt(PreferencesKey.bscTransactionPriority)!);
1094
+ }
1095
if (sharedPreferences.getInt(PreferencesKey.bitcoinCashTransactionPriority) != null) {
1096
bitcoinCashTransactionPriority = bitcoinCash?.deserializeBitcoinCashTransactionPriority(
1097
sharedPreferences.getInt(PreferencesKey.bitcoinCashTransactionPriority)!);
1120
decredTransactionPriority ??= decred?.getDecredTransactionPriorityMedium();
1121
polygonTransactionPriority ??= evm?.getDefaultTransactionPriority();
1122
baseTransactionPriority ??= evm?.getDefaultTransactionPriority();
1123
+ bscTransactionPriority ??= evm?.getDefaultTransactionPriority();
1124
zanoTransactionPriority ??= zano?.getDefaultTransactionPriority();
1125
1126
final currentBalanceDisplayMode = BalanceDisplayMode.deserialize(
1171
final usePolygonScan = sharedPreferences.getBool(PreferencesKey.usePolygonScan) ?? true;
1172
final useBaseScan = sharedPreferences.getBool(PreferencesKey.useBaseScan) ?? true;
1173
final useArbiScan = sharedPreferences.getBool(PreferencesKey.useArbiScan) ?? true;
1174
+ final useBscScan = sharedPreferences.getBool(PreferencesKey.useBscScan) ?? true;
1175
final useTronGrid = sharedPreferences.getBool(PreferencesKey.useTronGrid) ?? true;
1176
final useMempoolFeeAPI = sharedPreferences.getBool(PreferencesKey.useMempoolFeeAPI) ?? true;
1177
final useBlinkProtection = sharedPreferences.getBool(PreferencesKey.useBlinkProtection) ?? true;
1224
final polygonNodeId = sharedPreferences.getInt(PreferencesKey.currentPolygonNodeIdKey);
1225
final baseNodeId = sharedPreferences.getInt(PreferencesKey.currentBaseNodeIdKey);
1226
final arbitrumNodeId = sharedPreferences.getInt(PreferencesKey.currentArbitrumNodeIdKey);
1227
+ final bscNodeId = sharedPreferences.getInt(PreferencesKey.currentBscNodeIdKey);
1228
final nanoNodeId = sharedPreferences.getInt(PreferencesKey.currentNanoNodeIdKey);
1229
final nanoPowNodeId = sharedPreferences.getInt(PreferencesKey.currentNanoPowNodeIdKey);
1230
final solanaNodeId = sharedPreferences.getInt(PreferencesKey.currentSolanaNodeIdKey);
1250
nodeSource.values.firstWhereOrNull((e) => e.uriRaw == baseDefaultNodeUri);
1251
final arbitrumNode = nodeSource.get(arbitrumNodeId) ??
1252
nodeSource.values.firstWhereOrNull((e) => e.uriRaw == arbitrumDefaultNodeUri);
1253
+ final bscNode = nodeSource.get(bscNodeId) ??
1254
+ nodeSource.values.firstWhereOrNull((e) => e.uriRaw == bscDefaultNodeUri);
1255
final bitcoinCashElectrumServer = nodeSource.get(bitcoinCashElectrumServerId) ??
1256
nodeSource.values.firstWhereOrNull((e) => e.uriRaw == cakeWalletBitcoinCashDefaultNodeUri);
1257
final nanoNode = nodeSource.get(nanoNodeId) ??
1336
nodes[WalletType.arbitrum] = arbitrumNode;
1337
}
1338
1339
+ if (bscNode != null) {
1340
+ nodes[WalletType.bsc] = bscNode;
1341
+ }
1342
+
1343
if (bitcoinCashElectrumServer != null) {
1344
nodes[WalletType.bitcoinCash] = bitcoinCashElectrumServer;
1345
}
1533
usePolygonScan: usePolygonScan,
1534
useBaseScan: useBaseScan,
1535
useArbiScan: useArbiScan,
1536
+ useBscScan: useBscScan,
1537
useTronGrid: useTronGrid,
1538
useMempoolFeeAPI: useMempoolFeeAPI,
1539
useBlinkProtection: useBlinkProtection,
1584
initialEVMTransactionPriority: evmTransactionPriority,
1585
initialPolygonTransactionPriority: polygonTransactionPriority,
1586
initialBaseTransactionPriority: baseTransactionPriority,
1587
+ initialBscTransactionPriority: bscTransactionPriority,
1588
initialSyncMode: savedSyncMode,
1589
initialSyncAll: savedSyncAll,
1590
shouldShowYatPopup: shouldShowYatPopup,
1640
priority[WalletType.base] = evm!.deserializeEVMTransactionPriority(
1641
sharedPreferences.getInt(PreferencesKey.baseTransactionPriority)!);
1642
}
1643
+ if (evm != null && sharedPreferences.getInt(PreferencesKey.bscTransactionPriority) != null) {
1644
+ priority[WalletType.bsc] = evm!.deserializeEVMTransactionPriority(
1645
+ sharedPreferences.getInt(PreferencesKey.bscTransactionPriority)!);
1646
+ }
1647
if (bitcoinCash != null &&
1648
sharedPreferences.getInt(PreferencesKey.bitcoinCashTransactionPriority) != null) {
1649
priority[WalletType.bitcoinCash] = bitcoinCash!.deserializeBitcoinCashTransactionPriority(
1743
usePolygonScan = sharedPreferences.getBool(PreferencesKey.usePolygonScan) ?? true;
1744
useBaseScan = sharedPreferences.getBool(PreferencesKey.useBaseScan) ?? true;
1745
useArbiScan = sharedPreferences.getBool(PreferencesKey.useArbiScan) ?? true;
1746
+ useBscScan = sharedPreferences.getBool(PreferencesKey.useBscScan) ?? true;
1747
useTronGrid = sharedPreferences.getBool(PreferencesKey.useTronGrid) ?? true;
1748
useMempoolFeeAPI = sharedPreferences.getBool(PreferencesKey.useMempoolFeeAPI) ?? true;
1749
useBlinkProtection = sharedPreferences.getBool(PreferencesKey.useBlinkProtection) ?? true;
1782
final polygonNodeId = sharedPreferences.getInt(PreferencesKey.currentPolygonNodeIdKey);
1783
final baseNodeId = sharedPreferences.getInt(PreferencesKey.currentBaseNodeIdKey);
1784
final arbitrumNodeId = sharedPreferences.getInt(PreferencesKey.currentArbitrumNodeIdKey);
1785
+ final bscNodeId = sharedPreferences.getInt(PreferencesKey.currentBscNodeIdKey);
1786
final nanoNodeId = sharedPreferences.getInt(PreferencesKey.currentNanoNodeIdKey);
1787
final solanaNodeId = sharedPreferences.getInt(PreferencesKey.currentSolanaNodeIdKey);
1788
final tronNodeId = sharedPreferences.getInt(PreferencesKey.currentTronNodeIdKey);
1799
final polygonNode = nodeSource.get(polygonNodeId);
1800
final baseNode = nodeSource.get(baseNodeId);
1801
final arbitrumNode = nodeSource.get(arbitrumNodeId);
1802
+ final bscNode = nodeSource.get(bscNodeId);
1803
final bitcoinCashNode = nodeSource.get(bitcoinCashElectrumServerId);
1804
final nanoNode = nodeSource.get(nanoNodeId);
1805
final solanaNode = nodeSource.get(solanaNodeId);
1842
nodes[WalletType.arbitrum] = arbitrumNode;
1843
}
1844
1845
+ if (bscNode != null) {
1846
+ nodes[WalletType.bsc] = bscNode;
1847
+ }
1848
+
1849
if (bitcoinCashNode != null) {
1850
nodes[WalletType.bitcoinCash] = bitcoinCashNode;
1851
}
2000
case WalletType.polygon:
2001
case WalletType.base:
2002
case WalletType.arbitrum:
2003
+ case WalletType.bsc:
2004
final chainId = evm!.getChainIdByWalletType(node.type);
2005
final preferenceKey = _getEVMNodePreferenceKey(chainId);
2006
await _sharedPreferences.setInt(preferenceKey, node.key as int);