mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-26 06:08:40 +01:00
Add Robinhood Chain (#3398)
* fix android CI * feat: Add Robinhood Chain, all major flows done. minor issue now is our providers don't support it yet as its still pretty early, two weeks from launch * feat: Add Robinhood Chain, all major flows done. minor issue now is our providers don't support it yet as its still pretty early, two weeks from launch * Cleanup * auto-reformat * fix ui issue and contact listing for tokens * fix: missing icons and crash for fee priority in settings * chore: cleanup * fixes from feedbacks * fix: review issues and sync to latest dev feat: switch history api to etherscan, add history toggle to privacy settings, exclude robETH from exchange pickers, skip tokens discovery for chains that moralis hasn't indexed, add tests * fix: address Robinhood review comments * fix: show Solana token icons in history * fix: address review comments and default Robinhood to PublicNode * fix: revert filter and refuse unmapped networks in provider --------- Co-authored-by: Robert Malikowski <malikowskirobert@gmail.com>
This commit is contained in:
co-authored by
Robert Malikowski
parent
77e4b946eb
commit
046e57c598
+12
-2
@@ -35,8 +35,9 @@ Future<void> main(List<String> args) async {
|
||||
final hasBase = args.contains('${prefix}base');
|
||||
final hasArbitrum = args.contains('${prefix}arbitrum');
|
||||
final hasBsc = args.contains('${prefix}bsc');
|
||||
final hasRobinhood = args.contains("${prefix}robinhood");
|
||||
final hasZcash = args.contains('${prefix}zcash');
|
||||
final hasEVM = hasEthereum || hasPolygon || hasBase || hasArbitrum || hasBsc;
|
||||
final hasEVM = hasEthereum || hasPolygon || hasBase || hasArbitrum || hasBsc || hasRobinhood;
|
||||
final excludeFlutterSecureStorage = args.contains('${prefix}excludeFlutterSecureStorage');
|
||||
|
||||
await generateBitcoin(hasBitcoin);
|
||||
@@ -71,6 +72,7 @@ Future<void> main(List<String> args) async {
|
||||
hasBase: hasBase,
|
||||
hasArbitrum: hasArbitrum,
|
||||
hasBsc: hasBsc,
|
||||
hasRobinhood: hasRobinhood,
|
||||
hasZcash: hasZcash,
|
||||
);
|
||||
await generateWalletTypes(
|
||||
@@ -90,6 +92,7 @@ Future<void> main(List<String> args) async {
|
||||
hasBase: hasBase,
|
||||
hasArbitrum: hasArbitrum,
|
||||
hasBsc: hasBsc,
|
||||
hasRobinhood: hasRobinhood,
|
||||
hasZcash: hasZcash,
|
||||
);
|
||||
await injectSecureStorage(!excludeFlutterSecureStorage);
|
||||
@@ -1599,6 +1602,7 @@ abstract class EVM {
|
||||
WalletType? getWalletTypeByChainId(int chainId);
|
||||
String getChainNameByChainId(int chainId);
|
||||
String getTokenNameByChainId(int chainId);
|
||||
String? getMoralisChainName(WalletBase wallet);
|
||||
// Chain selection methods
|
||||
List<ChainInfo> getAllChains();
|
||||
ChainInfo? getCurrentChain(WalletBase wallet);
|
||||
@@ -1849,6 +1853,7 @@ Future<void> generatePubspec({
|
||||
required bool hasBase,
|
||||
required bool hasArbitrum,
|
||||
required bool hasBsc,
|
||||
required bool hasRobinhood,
|
||||
required bool hasZcash,
|
||||
}) async {
|
||||
const cwCore = """
|
||||
@@ -1960,7 +1965,7 @@ Future<void> generatePubspec({
|
||||
output += '\n$flutterSecureStorage\n';
|
||||
}
|
||||
|
||||
if (hasEthereum || hasPolygon || hasBase || hasArbitrum || hasBsc) {
|
||||
if (hasEthereum || hasPolygon || hasBase || hasArbitrum || hasBsc || hasRobinhood) {
|
||||
output += '\n$cwEVM';
|
||||
}
|
||||
|
||||
@@ -2009,6 +2014,7 @@ Future<void> generateWalletTypes({
|
||||
required bool hasBase,
|
||||
required bool hasArbitrum,
|
||||
required bool hasBsc,
|
||||
required bool hasRobinhood,
|
||||
required bool hasZcash,
|
||||
}) async {
|
||||
final walletTypesFile = File(walletTypesPath);
|
||||
@@ -2037,6 +2043,10 @@ Future<void> generateWalletTypes({
|
||||
outputContent += '\tWalletType.bsc,\n';
|
||||
}
|
||||
|
||||
if (hasRobinhood) {
|
||||
outputContent += "\tWalletType.robinhood,\n";
|
||||
}
|
||||
|
||||
if (hasSolana) {
|
||||
outputContent += '\tWalletType.solana,\n';
|
||||
}
|
||||
|
||||
@@ -112,6 +112,7 @@ class SecretKey {
|
||||
SecretKey('moralisApiKey', () => ''),
|
||||
SecretKey('nowNodesApiKey', () => ''),
|
||||
SecretKey('blinkApiKey', () => ''),
|
||||
SecretKey('alchemyApiKey', () => ''),
|
||||
];
|
||||
|
||||
static final solanaSecrets = [
|
||||
|
||||
Reference in New Issue
Block a user