mirror of
https://github.com/cypherstack/stack_wallet.git
synced 2025-01-11 05:04:35 +00:00
WIP: Add particle
This commit is contained in:
parent
9f94789229
commit
7e92be4b67
12 changed files with 3932 additions and 0 deletions
|
@ -56,10 +56,12 @@ class _SendFromViewState extends ConsumerState<SendFromView> {
|
||||||
case Coin.epicCash:
|
case Coin.epicCash:
|
||||||
case Coin.firo:
|
case Coin.firo:
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
case Coin.particl:
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
case Coin.firoTestNet:
|
case Coin.firoTestNet:
|
||||||
|
case Coin.particlTestNet:
|
||||||
return amount.toStringAsFixed(Constants.decimalPlaces);
|
return amount.toStringAsFixed(Constants.decimalPlaces);
|
||||||
case Coin.monero:
|
case Coin.monero:
|
||||||
return amount.toStringAsFixed(Constants.decimalPlacesMonero);
|
return amount.toStringAsFixed(Constants.decimalPlacesMonero);
|
||||||
|
|
|
@ -118,10 +118,12 @@ class _AddEditNodeViewState extends ConsumerState<AddEditNodeView> {
|
||||||
case Coin.dogecoin:
|
case Coin.dogecoin:
|
||||||
case Coin.firo:
|
case Coin.firo:
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
case Coin.particl:
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
case Coin.firoTestNet:
|
case Coin.firoTestNet:
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
|
case Coin.particlTestNet:
|
||||||
final client = ElectrumX(
|
final client = ElectrumX(
|
||||||
host: formData.host!,
|
host: formData.host!,
|
||||||
port: formData.port!,
|
port: formData.port!,
|
||||||
|
@ -533,10 +535,12 @@ class _NodeFormState extends ConsumerState<NodeForm> {
|
||||||
case Coin.firo:
|
case Coin.firo:
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
case Coin.bitcoincash:
|
case Coin.bitcoincash:
|
||||||
|
case Coin.particl:
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
case Coin.firoTestNet:
|
case Coin.firoTestNet:
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
|
case Coin.particlTestNet:
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
case Coin.epicCash:
|
case Coin.epicCash:
|
||||||
|
|
|
@ -9,6 +9,7 @@ import 'package:stackwallet/services/coins/dogecoin/dogecoin_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/epiccash/epiccash_wallet.dart';
|
import 'package:stackwallet/services/coins/epiccash/epiccash_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
|
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/monero/monero_wallet.dart';
|
import 'package:stackwallet/services/coins/monero/monero_wallet.dart';
|
||||||
|
import 'package:stackwallet/services/coins/particl/particl_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/wownero/wownero_wallet.dart';
|
import 'package:stackwallet/services/coins/wownero/wownero_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart';
|
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart';
|
||||||
import 'package:stackwallet/services/transaction_notification_tracker.dart';
|
import 'package:stackwallet/services/transaction_notification_tracker.dart';
|
||||||
|
@ -146,6 +147,24 @@ abstract class CoinServiceAPI {
|
||||||
// tracker: tracker,
|
// tracker: tracker,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
case Coin.particl:
|
||||||
|
return ParticlWallet(
|
||||||
|
walletId: walletId,
|
||||||
|
walletName: walletName,
|
||||||
|
coin: coin,
|
||||||
|
client: client,
|
||||||
|
cachedClient: cachedClient,
|
||||||
|
tracker: tracker);
|
||||||
|
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return ParticlWallet(
|
||||||
|
walletId: walletId,
|
||||||
|
walletName: walletName,
|
||||||
|
coin: coin,
|
||||||
|
client: client,
|
||||||
|
cachedClient: cachedClient,
|
||||||
|
tracker: tracker);
|
||||||
|
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return WowneroWallet(
|
return WowneroWallet(
|
||||||
walletId: walletId,
|
walletId: walletId,
|
||||||
|
|
3813
lib/services/coins/particl/particl_wallet.dart
Normal file
3813
lib/services/coins/particl/particl_wallet.dart
Normal file
File diff suppressed because it is too large
Load diff
|
@ -7,6 +7,7 @@ import 'package:stackwallet/services/coins/bitcoincash/bitcoincash_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/dogecoin/dogecoin_wallet.dart';
|
import 'package:stackwallet/services/coins/dogecoin/dogecoin_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
|
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
|
||||||
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart';
|
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart';
|
||||||
|
import 'package:stackwallet/services/coins/particl/particl_wallet.dart';
|
||||||
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
||||||
import 'package:stackwallet/utilities/logger.dart';
|
import 'package:stackwallet/utilities/logger.dart';
|
||||||
|
|
||||||
|
@ -58,6 +59,8 @@ class AddressUtils {
|
||||||
RegExp("[a-zA-Z0-9]{106}").hasMatch(address);
|
RegExp("[a-zA-Z0-9]{106}").hasMatch(address);
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return Address.validateAddress(address, namecoin, namecoin.bech32!);
|
return Address.validateAddress(address, namecoin, namecoin.bech32!);
|
||||||
|
case Coin.particl:
|
||||||
|
return Address.validateAddress(address, particl);
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
return Address.validateAddress(address, testnet);
|
return Address.validateAddress(address, testnet);
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
|
@ -66,6 +69,8 @@ class AddressUtils {
|
||||||
return Address.validateAddress(address, firoTestNetwork);
|
return Address.validateAddress(address, firoTestNetwork);
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return Address.validateAddress(address, dogecointestnet);
|
return Address.validateAddress(address, dogecointestnet);
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return Address.validateAddress(address, particltestnet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -142,6 +142,8 @@ class _SVG {
|
||||||
String get monero => "assets/svg/coin_icons/Monero.svg";
|
String get monero => "assets/svg/coin_icons/Monero.svg";
|
||||||
String get wownero => "assets/svg/coin_icons/Wownero.svg";
|
String get wownero => "assets/svg/coin_icons/Wownero.svg";
|
||||||
String get namecoin => "assets/svg/coin_icons/Namecoin.svg";
|
String get namecoin => "assets/svg/coin_icons/Namecoin.svg";
|
||||||
|
String get particl =>
|
||||||
|
"assets/svg/coin_icons/Namecoin.svg"; //TODO - Update icon to particl
|
||||||
|
|
||||||
String get chevronRight => "assets/svg/chevron-right.svg";
|
String get chevronRight => "assets/svg/chevron-right.svg";
|
||||||
String get minimize => "assets/svg/minimize.svg";
|
String get minimize => "assets/svg/minimize.svg";
|
||||||
|
@ -154,6 +156,8 @@ class _SVG {
|
||||||
String get bitcoincashTestnet => "assets/svg/coin_icons/Bitcoincash.svg";
|
String get bitcoincashTestnet => "assets/svg/coin_icons/Bitcoincash.svg";
|
||||||
String get firoTestnet => "assets/svg/coin_icons/Firo.svg";
|
String get firoTestnet => "assets/svg/coin_icons/Firo.svg";
|
||||||
String get dogecoinTestnet => "assets/svg/coin_icons/Dogecoin.svg";
|
String get dogecoinTestnet => "assets/svg/coin_icons/Dogecoin.svg";
|
||||||
|
String get particlTestnet =>
|
||||||
|
"assets/svg/coin_icons/Dogecoin.svg"; //TODO - Update icon to particl
|
||||||
|
|
||||||
String iconFor({required Coin coin}) {
|
String iconFor({required Coin coin}) {
|
||||||
switch (coin) {
|
switch (coin) {
|
||||||
|
@ -173,6 +177,8 @@ class _SVG {
|
||||||
return wownero;
|
return wownero;
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return namecoin;
|
return namecoin;
|
||||||
|
case Coin.particl:
|
||||||
|
return particl;
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
return bitcoinTestnet;
|
return bitcoinTestnet;
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
|
@ -181,6 +187,8 @@ class _SVG {
|
||||||
return firoTestnet;
|
return firoTestnet;
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return dogecoinTestnet;
|
return dogecoinTestnet;
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return particlTestnet;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -199,6 +207,7 @@ class _PNG {
|
||||||
String get epicCash => "assets/images/epic-cash.png";
|
String get epicCash => "assets/images/epic-cash.png";
|
||||||
String get bitcoincash => "assets/images/bitcoincash.png";
|
String get bitcoincash => "assets/images/bitcoincash.png";
|
||||||
String get namecoin => "assets/images/namecoin.png";
|
String get namecoin => "assets/images/namecoin.png";
|
||||||
|
String get particl => "assets/images/namecoin.png"; //TODO - use particl png
|
||||||
|
|
||||||
String imageFor({required Coin coin}) {
|
String imageFor({required Coin coin}) {
|
||||||
switch (coin) {
|
switch (coin) {
|
||||||
|
@ -223,6 +232,9 @@ class _PNG {
|
||||||
return wownero;
|
return wownero;
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return namecoin;
|
return namecoin;
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return particl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,5 +31,9 @@ Uri getBlockExplorerTransactionUrlFor({
|
||||||
"https://blockexplorer.one/bitcoin-cash/testnet/tx/$txid");
|
"https://blockexplorer.one/bitcoin-cash/testnet/tx/$txid");
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return Uri.parse("https://chainz.cryptoid.info/nmc/tx.dws?$txid.htm");
|
return Uri.parse("https://chainz.cryptoid.info/nmc/tx.dws?$txid.htm");
|
||||||
|
case Coin.particl:
|
||||||
|
return Uri.parse("https://chainz.cryptoid.info/part/tx.dws?$txid.htm");
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return Uri.parse("");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,6 +51,8 @@ abstract class Constants {
|
||||||
case Coin.firoTestNet:
|
case Coin.firoTestNet:
|
||||||
case Coin.epicCash:
|
case Coin.epicCash:
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
values.addAll([24, 21, 18, 15, 12]);
|
values.addAll([24, 21, 18, 15, 12]);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -94,6 +96,10 @@ abstract class Constants {
|
||||||
|
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return 600;
|
return 600;
|
||||||
|
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return 600;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -118,6 +118,17 @@ abstract class DefaultNodes {
|
||||||
isDown: false,
|
isDown: false,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
static NodeModel get particl => NodeModel(
|
||||||
|
host: "host",
|
||||||
|
port: 123,
|
||||||
|
name: defaultName,
|
||||||
|
id: _nodeId(Coin.particl),
|
||||||
|
useSSL: true,
|
||||||
|
enabled: true,
|
||||||
|
coinName: Coin.particl.name,
|
||||||
|
isFailover: true,
|
||||||
|
isDown: false); //TODO - UPDATE WITH CORRECT DETAILS
|
||||||
|
|
||||||
static NodeModel get bitcoinTestnet => NodeModel(
|
static NodeModel get bitcoinTestnet => NodeModel(
|
||||||
host: "electrumx-testnet.cypherstack.com",
|
host: "electrumx-testnet.cypherstack.com",
|
||||||
port: 51002,
|
port: 51002,
|
||||||
|
@ -166,6 +177,18 @@ abstract class DefaultNodes {
|
||||||
isDown: false,
|
isDown: false,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
static NodeModel get particlTestnet => NodeModel(
|
||||||
|
host: "host",
|
||||||
|
port: 60002,
|
||||||
|
name: defaultName,
|
||||||
|
id: _nodeId(Coin.particlTestNet),
|
||||||
|
useSSL: true,
|
||||||
|
enabled: true,
|
||||||
|
coinName: Coin.particlTestNet.name,
|
||||||
|
isFailover: true,
|
||||||
|
isDown: false,
|
||||||
|
);
|
||||||
|
|
||||||
static NodeModel getNodeFor(Coin coin) {
|
static NodeModel getNodeFor(Coin coin) {
|
||||||
switch (coin) {
|
switch (coin) {
|
||||||
case Coin.bitcoin:
|
case Coin.bitcoin:
|
||||||
|
@ -192,6 +215,9 @@ abstract class DefaultNodes {
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
return namecoin;
|
return namecoin;
|
||||||
|
|
||||||
|
case Coin.particl:
|
||||||
|
return namecoin;
|
||||||
|
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
return bitcoinTestnet;
|
return bitcoinTestnet;
|
||||||
|
|
||||||
|
@ -203,6 +229,9 @@ abstract class DefaultNodes {
|
||||||
|
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return dogecoinTestnet;
|
return dogecoinTestnet;
|
||||||
|
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return particlTestnet;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,8 @@ import 'package:stackwallet/services/coins/monero/monero_wallet.dart' as xmr;
|
||||||
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart'
|
import 'package:stackwallet/services/coins/namecoin/namecoin_wallet.dart'
|
||||||
as nmc;
|
as nmc;
|
||||||
import 'package:stackwallet/services/coins/wownero/wownero_wallet.dart' as wow;
|
import 'package:stackwallet/services/coins/wownero/wownero_wallet.dart' as wow;
|
||||||
|
import 'package:stackwallet/services/coins/particl/particl_wallet.dart'
|
||||||
|
as particl;
|
||||||
|
|
||||||
enum Coin {
|
enum Coin {
|
||||||
bitcoin,
|
bitcoin,
|
||||||
|
@ -18,6 +20,7 @@ enum Coin {
|
||||||
epicCash,
|
epicCash,
|
||||||
firo,
|
firo,
|
||||||
monero,
|
monero,
|
||||||
|
particl,
|
||||||
wownero,
|
wownero,
|
||||||
namecoin,
|
namecoin,
|
||||||
|
|
||||||
|
@ -29,6 +32,7 @@ enum Coin {
|
||||||
bitcoincashTestnet,
|
bitcoincashTestnet,
|
||||||
dogecoinTestNet,
|
dogecoinTestNet,
|
||||||
firoTestNet,
|
firoTestNet,
|
||||||
|
particlTestNet
|
||||||
}
|
}
|
||||||
|
|
||||||
// remove firotestnet for now
|
// remove firotestnet for now
|
||||||
|
@ -49,6 +53,8 @@ extension CoinExt on Coin {
|
||||||
return "Firo";
|
return "Firo";
|
||||||
case Coin.monero:
|
case Coin.monero:
|
||||||
return "Monero";
|
return "Monero";
|
||||||
|
case Coin.particl:
|
||||||
|
return "Particl";
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return "Wownero";
|
return "Wownero";
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
@ -61,6 +67,8 @@ extension CoinExt on Coin {
|
||||||
return "tFiro";
|
return "tFiro";
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return "tDogecoin";
|
return "tDogecoin";
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return "tParticl";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,6 +86,8 @@ extension CoinExt on Coin {
|
||||||
return "FIRO";
|
return "FIRO";
|
||||||
case Coin.monero:
|
case Coin.monero:
|
||||||
return "XMR";
|
return "XMR";
|
||||||
|
case Coin.particl:
|
||||||
|
return "PART";
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return "WOW";
|
return "WOW";
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
@ -90,6 +100,8 @@ extension CoinExt on Coin {
|
||||||
return "tFIRO";
|
return "tFIRO";
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return "tDOGE";
|
return "tDOGE";
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return "tPART";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -108,6 +120,8 @@ extension CoinExt on Coin {
|
||||||
return "firo";
|
return "firo";
|
||||||
case Coin.monero:
|
case Coin.monero:
|
||||||
return "monero";
|
return "monero";
|
||||||
|
case Coin.particl:
|
||||||
|
return "particl";
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return "wownero";
|
return "wownero";
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
@ -120,6 +134,8 @@ extension CoinExt on Coin {
|
||||||
return "firo";
|
return "firo";
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
return "dogecoin";
|
return "dogecoin";
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return "particl";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -130,10 +146,12 @@ extension CoinExt on Coin {
|
||||||
case Coin.dogecoin:
|
case Coin.dogecoin:
|
||||||
case Coin.firo:
|
case Coin.firo:
|
||||||
case Coin.namecoin:
|
case Coin.namecoin:
|
||||||
|
case Coin.particl:
|
||||||
case Coin.bitcoinTestNet:
|
case Coin.bitcoinTestNet:
|
||||||
case Coin.bitcoincashTestnet:
|
case Coin.bitcoincashTestnet:
|
||||||
case Coin.firoTestNet:
|
case Coin.firoTestNet:
|
||||||
case Coin.dogecoinTestNet:
|
case Coin.dogecoinTestNet:
|
||||||
|
case Coin.particlTestNet:
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case Coin.epicCash:
|
case Coin.epicCash:
|
||||||
|
@ -167,6 +185,10 @@ extension CoinExt on Coin {
|
||||||
case Coin.monero:
|
case Coin.monero:
|
||||||
return xmr.MINIMUM_CONFIRMATIONS;
|
return xmr.MINIMUM_CONFIRMATIONS;
|
||||||
|
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return particl.MINIMUM_CONFIRMATIONS;
|
||||||
|
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return wow.MINIMUM_CONFIRMATIONS;
|
return wow.MINIMUM_CONFIRMATIONS;
|
||||||
|
|
||||||
|
@ -203,6 +225,11 @@ Coin coinFromPrettyName(String name) {
|
||||||
case "monero":
|
case "monero":
|
||||||
return Coin.monero;
|
return Coin.monero;
|
||||||
|
|
||||||
|
case "Particl":
|
||||||
|
case "particl":
|
||||||
|
case "particlTestNet":
|
||||||
|
return Coin.particl;
|
||||||
|
|
||||||
case "Namecoin":
|
case "Namecoin":
|
||||||
case "namecoin":
|
case "namecoin":
|
||||||
return Coin.namecoin;
|
return Coin.namecoin;
|
||||||
|
@ -255,6 +282,8 @@ Coin coinFromTickerCaseInsensitive(String ticker) {
|
||||||
return Coin.monero;
|
return Coin.monero;
|
||||||
case "nmc":
|
case "nmc":
|
||||||
return Coin.namecoin;
|
return Coin.namecoin;
|
||||||
|
case "part":
|
||||||
|
return Coin.particl;
|
||||||
case "tbtc":
|
case "tbtc":
|
||||||
return Coin.bitcoinTestNet;
|
return Coin.bitcoinTestNet;
|
||||||
case "tbch":
|
case "tbch":
|
||||||
|
@ -263,6 +292,8 @@ Coin coinFromTickerCaseInsensitive(String ticker) {
|
||||||
return Coin.firoTestNet;
|
return Coin.firoTestNet;
|
||||||
case "tdoge":
|
case "tdoge":
|
||||||
return Coin.dogecoinTestNet;
|
return Coin.dogecoinTestNet;
|
||||||
|
case "tparticl":
|
||||||
|
return Coin.particlTestNet;
|
||||||
case "wow":
|
case "wow":
|
||||||
return Coin.wownero;
|
return Coin.wownero;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -188,6 +188,7 @@ class CoinThemeColor {
|
||||||
Color get monero => const Color(0xFFFF9E6B);
|
Color get monero => const Color(0xFFFF9E6B);
|
||||||
Color get namecoin => const Color(0xFF91B1E1);
|
Color get namecoin => const Color(0xFF91B1E1);
|
||||||
Color get wownero => const Color(0xFFED80C1);
|
Color get wownero => const Color(0xFFED80C1);
|
||||||
|
Color get particl => const Color(0xFFED80C1); //TODO - Use part colors
|
||||||
|
|
||||||
Color forCoin(Coin coin) {
|
Color forCoin(Coin coin) {
|
||||||
switch (coin) {
|
switch (coin) {
|
||||||
|
@ -211,6 +212,9 @@ class CoinThemeColor {
|
||||||
return namecoin;
|
return namecoin;
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return wownero;
|
return wownero;
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return particl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1423,6 +1423,9 @@ class StackColors extends ThemeExtension<StackColors> {
|
||||||
return _coin.namecoin;
|
return _coin.namecoin;
|
||||||
case Coin.wownero:
|
case Coin.wownero:
|
||||||
return _coin.wownero;
|
return _coin.wownero;
|
||||||
|
case Coin.particl:
|
||||||
|
case Coin.particlTestNet:
|
||||||
|
return _coin.particl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue