diff --git a/.github/workflows/validate_coins.yml b/.github/workflows/validate_coins.yml index 2f6021cd3..36a2ef972 100644 --- a/.github/workflows/validate_coins.yml +++ b/.github/workflows/validate_coins.yml @@ -46,36 +46,8 @@ jobs: run: json-diff assets/coins_config.json coins_config.json - name: Check wallet-only coins - run: | - python3 -c " - import json, re - with open('assets/coins_config.json', 'r') as f: - coins_json = json.load(f) - wallet_only_coins = [coin['coin'] for coin in coins_json.values() if coin['wallet_only']] - with open('lib/app_config/app_config.dart', 'r') as f: - dart_file = f.read() - coins_dart = re.findall(r'walletOnlyCoins => \[\s*([^]]+?)\s*\]', dart_file) - coins_dart = [coin.strip().strip('\'') for coin in coins_dart[0].split(',') if coin] - missing_coins = set(wallet_only_coins) - set(coins_dart) - assert len(missing_coins) == 0, f'Missing coins: {missing_coins}' - " + run: python3 utils/check_wallet_only.py - name: Check URLs in app_config.dart - run: | - python3 -c " - import re, requests - with open('lib/app_config/app_config.dart', 'r') as f: - dart_file = f.read() - urls = re.findall(r'http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|/|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', dart_file) - for url in urls: - try: - if 'discord' in url or 'github.com' in url or url.endswith('?') or '/api/' in url: - continue - cleaned_url = url.rstrip('.,;\'"') - response = requests.head(cleaned_url, allow_redirects = True) - if response.status_code >= 400 and response.status_code != 405: - raise AssertionError(f'{cleaned_url} is unreachable (HTTP {response.status_code})') - except requests.ConnectionError: - raise AssertionError(f'{cleaned_url} is unreachable (Connection Error)') - " + run: python3 utils/check_urls.py diff --git a/android/app/build.gradle b/android/app/build.gradle index a20536fed..4081ddd00 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -37,7 +37,7 @@ android { defaultConfig { applicationId "com.gleec.gleecdex" - minSdkVersion 27 + minSdkVersion 28 targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/android/app/src/main/launcher_icon-playstore.png b/android/app/src/main/launcher_icon-playstore.png new file mode 100644 index 000000000..fb5fb346d Binary files /dev/null and b/android/app/src/main/launcher_icon-playstore.png differ diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index b951012cf..fd53f0f2a 100644 --- a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -3,5 +3,4 @@ - \ No newline at end of file diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png index 66ba7c718..0c1e34eeb 100644 Binary files a/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-hdpi/launcher_icon_foreground.png b/android/app/src/main/res/mipmap-hdpi/launcher_icon_foreground.png index 2cb62a2d3..e43a2c926 100644 Binary files a/android/app/src/main/res/mipmap-hdpi/launcher_icon_foreground.png and b/android/app/src/main/res/mipmap-hdpi/launcher_icon_foreground.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png index 1ba747340..ee635e022 100644 Binary files a/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and b/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-mdpi/launcher_icon_foreground.png b/android/app/src/main/res/mipmap-mdpi/launcher_icon_foreground.png index 58acfc54a..5922bbd35 100644 Binary files a/android/app/src/main/res/mipmap-mdpi/launcher_icon_foreground.png and b/android/app/src/main/res/mipmap-mdpi/launcher_icon_foreground.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png index 00baaaf39..f6f1a14b8 100644 Binary files a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xhdpi/launcher_icon_foreground.png b/android/app/src/main/res/mipmap-xhdpi/launcher_icon_foreground.png index 2cd8ec747..dba8cf29f 100644 Binary files a/android/app/src/main/res/mipmap-xhdpi/launcher_icon_foreground.png and b/android/app/src/main/res/mipmap-xhdpi/launcher_icon_foreground.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png index 38ab3355f..a55309db0 100644 Binary files a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/launcher_icon_foreground.png b/android/app/src/main/res/mipmap-xxhdpi/launcher_icon_foreground.png index 48a445a2d..458ff55d9 100644 Binary files a/android/app/src/main/res/mipmap-xxhdpi/launcher_icon_foreground.png and b/android/app/src/main/res/mipmap-xxhdpi/launcher_icon_foreground.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png index 9ccb009c8..c59cba42f 100644 Binary files a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon_foreground.png b/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon_foreground.png index 03522cd18..ba31e77a6 100644 Binary files a/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon_foreground.png and b/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon_foreground.png differ diff --git a/android/app/src/main/res/values/launcher_icon_background.xml b/android/app/src/main/res/values/launcher_icon_background.xml new file mode 100644 index 000000000..a0821228e --- /dev/null +++ b/android/app/src/main/res/values/launcher_icon_background.xml @@ -0,0 +1,4 @@ + + + #001E22 + \ No newline at end of file diff --git a/android/build.gradle b/android/build.gradle index 41a1da82c..61b87689b 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -21,7 +21,7 @@ allprojects { rootProject.buildDir = '../build' subprojects { - project.buildDir = "${rootProject.buildDir}/${project.name}" +project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') diff --git a/assets/branding/android-icon.png b/assets/branding/android-icon.png index 2264c3422..d50f1a99e 100644 Binary files a/assets/branding/android-icon.png and b/assets/branding/android-icon.png differ diff --git a/assets/branding/hd/app_logo_hd_1024.png b/assets/branding/hd/app_logo_hd_1024.png index 432611cf1..975bf5274 100644 Binary files a/assets/branding/hd/app_logo_hd_1024.png and b/assets/branding/hd/app_logo_hd_1024.png differ diff --git a/assets/branding/hd/app_logo_hd_512.png b/assets/branding/hd/app_logo_hd_512.png index 5541012e4..a2b6d3b1e 100644 Binary files a/assets/branding/hd/app_logo_hd_512.png and b/assets/branding/hd/app_logo_hd_512.png differ diff --git a/assets/branding/ic_launcher.png b/assets/branding/ic_launcher.png index b76796fe5..d774f5cc2 100644 Binary files a/assets/branding/ic_launcher.png and b/assets/branding/ic_launcher.png differ diff --git a/assets/branding/ios-icon.png b/assets/branding/ios-icon.png index 2264c3422..d50f1a99e 100644 Binary files a/assets/branding/ios-icon.png and b/assets/branding/ios-icon.png differ diff --git a/assets/branding/ios_app_icon.png b/assets/branding/ios_app_icon.png index e2322a5c3..c1ce1fe5f 100644 Binary files a/assets/branding/ios_app_icon.png and b/assets/branding/ios_app_icon.png differ diff --git a/assets/branding/logo_app.png b/assets/branding/logo_app.png index 8605feaf1..3c1e0761e 100644 Binary files a/assets/branding/logo_app.png and b/assets/branding/logo_app.png differ diff --git a/assets/branding/logo_app_light.png b/assets/branding/logo_app_light.png index 8605feaf1..3c1e0761e 100644 Binary files a/assets/branding/logo_app_light.png and b/assets/branding/logo_app_light.png differ diff --git a/assets/branding/mark_and_text_vertical_dark.png b/assets/branding/mark_and_text_vertical_dark.png index d80971c5a..23be47c12 100644 Binary files a/assets/branding/mark_and_text_vertical_dark.png and b/assets/branding/mark_and_text_vertical_dark.png differ diff --git a/assets/branding/mark_and_text_vertical_light.png b/assets/branding/mark_and_text_vertical_light.png index 272e6876d..748eb7472 100644 Binary files a/assets/branding/mark_and_text_vertical_light.png and b/assets/branding/mark_and_text_vertical_light.png differ diff --git a/assets/branding/mark_and_text_vertical_white.png b/assets/branding/mark_and_text_vertical_white.png index 272e6876d..748eb7472 100644 Binary files a/assets/branding/mark_and_text_vertical_white.png and b/assets/branding/mark_and_text_vertical_white.png differ diff --git a/assets/branding/svg/mark_and_text_vertical_light.svg b/assets/branding/svg/mark_and_text_vertical_light.svg index 447c29b18..2727f7f9e 100644 --- a/assets/branding/svg/mark_and_text_vertical_light.svg +++ b/assets/branding/svg/mark_and_text_vertical_light.svg @@ -1,10 +1,50 @@ - - - - - - - - - - + + diff --git a/assets/branding/svg/mark_and_text_vertical_white.svg b/assets/branding/svg/mark_and_text_vertical_white.svg index dfff25d70..2727f7f9e 100644 --- a/assets/branding/svg/mark_and_text_vertical_white.svg +++ b/assets/branding/svg/mark_and_text_vertical_white.svg @@ -1,10 +1,50 @@ - - - - - - - - - - + + diff --git a/assets/coin-icons/blocx.png b/assets/coin-icons/blocx.png new file mode 100644 index 000000000..f7c9bf280 Binary files /dev/null and b/assets/coin-icons/blocx.png differ diff --git a/assets/coin-icons/borg.png b/assets/coin-icons/borg.png new file mode 100644 index 000000000..1e0381913 Binary files /dev/null and b/assets/coin-icons/borg.png differ diff --git a/assets/coin-icons/bsty.png b/assets/coin-icons/bsty.png index 9b6f676e5..1be6492c1 100644 Binary files a/assets/coin-icons/bsty.png and b/assets/coin-icons/bsty.png differ diff --git a/assets/coin-icons/cds.png b/assets/coin-icons/cds.png new file mode 100644 index 000000000..eae62eb3d Binary files /dev/null and b/assets/coin-icons/cds.png differ diff --git a/assets/coin-icons/clp.png b/assets/coin-icons/clp.png new file mode 100644 index 000000000..3bc4608a9 Binary files /dev/null and b/assets/coin-icons/clp.png differ diff --git a/assets/coin-icons/cst.png b/assets/coin-icons/cst.png new file mode 100644 index 000000000..07c297d45 Binary files /dev/null and b/assets/coin-icons/cst.png differ diff --git a/assets/coin-icons/diac.png b/assets/coin-icons/diac.png new file mode 100644 index 000000000..54bb370c9 Binary files /dev/null and b/assets/coin-icons/diac.png differ diff --git a/assets/coin-icons/eure.png b/assets/coin-icons/eure.png new file mode 100644 index 000000000..47be62aed Binary files /dev/null and b/assets/coin-icons/eure.png differ diff --git a/assets/coin-icons/glc.png b/assets/coin-icons/glc.png new file mode 100644 index 000000000..d3ab212c9 Binary files /dev/null and b/assets/coin-icons/glc.png differ diff --git a/assets/coin-icons/kiiro.png b/assets/coin-icons/kiiro.png new file mode 100644 index 000000000..19240a27c Binary files /dev/null and b/assets/coin-icons/kiiro.png differ diff --git a/assets/coin-icons/nyc.png b/assets/coin-icons/nyc.png new file mode 100644 index 000000000..a81a379f2 Binary files /dev/null and b/assets/coin-icons/nyc.png differ diff --git a/assets/coin-icons/sum.png b/assets/coin-icons/sum.png new file mode 100644 index 000000000..910a754bd Binary files /dev/null and b/assets/coin-icons/sum.png differ diff --git a/assets/coins.json b/assets/coins.json index 2778be9e4..6eb443864 100644 --- a/assets/coins.json +++ b/assets/coins.json @@ -1712,6 +1712,28 @@ "type": "UTXO" } }, + { + "coin": "BLOCX", + "name": "blocx", + "fname": "BLOCX.", + "rpcport": 12973, + "pubtype": 25, + "p2shtype": 26, + "wiftype": 153, + "segwit": false, + "txfee": 1000, + "mm2": 1, + "sign_message_prefix": "DarkCoin Signed Message:\n", + "required_confirmations": 3, + "avg_blocktime": 180, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/BLOCXTECH/BLOCX", + "homepage": "https://blocx.tech" + } + }, { "coin": "BNB", "name": "binancesmartchain", @@ -1868,6 +1890,29 @@ }, "derivation_path": "m/44'/966'" }, + { + "coin": "BORG-ERC20", + "name": "borg_erc20", + "fname": "SwissBorg", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x64d0f55Cd8C7133a9D7102b13987235F486F2224" + } + }, + "derivation_path": "m/44'/60'", + "trezor_coin": "SwissBorg", + "links": { + "homepage": "https://swissborg.com" + } + }, { "coin": "BRZ-BEP20", "name": "brz_bep20", @@ -2000,28 +2045,6 @@ "type": "UTXO" } }, - { - "coin": "BSTY-segwit", - "name": "globalboost", - "fname": "GlobalBoost-Y", - "rpcport": 8225, - "pubtype": 77, - "p2shtype": 139, - "wiftype": 208, - "txfee": 200000, - "segwit": true, - "bech32_hrp": "gb", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "BSTY", - "mm2": 1, - "required_confirmations": 1, - "avg_blocktime": 600, - "protocol": { - "type": "UTXO" - } - }, { "coin": "BTC", "name": "bitcoin", @@ -2035,6 +2058,7 @@ "txfee": 0, "estimate_fee_mode": "ECONOMICAL", "mm2": 1, + "wallet_only": false, "sign_message_prefix": "Bitcoin Signed Message:\n", "required_confirmations": 1, "avg_blocktime": 600, @@ -2148,6 +2172,7 @@ "bech32_hrp": "web", "txfee": 20000, "mm2": 1, + "wallet_only": false, "required_confirmations": 3, "avg_blocktime": 60, "protocol": { @@ -2268,6 +2293,7 @@ "bech32_hrp": "btx", "txfee": 20000, "mm2": 1, + "wallet_only": false, "required_confirmations": 3, "avg_blocktime": 150, "protocol": { @@ -2551,6 +2577,7 @@ "segwit": true, "bech32_hrp": "cdn", "mm2": 1, + "wallet_only": false, "required_confirmations": 2, "avg_blocktime": 300, "protocol": { @@ -2583,6 +2610,62 @@ }, "derivation_path": "m/44'/34'" }, + { + "coin": "CDS-AVX20", + "name": "cds_avx20", + "fname": "Crypto Development Services", + "rpcport": 80, + "mm2": 1, + "chain_id": 43114, + "required_confirmations": 3, + "avg_blocktime": 2.4, + "decimals": 8, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "AVAX", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" + } + }, + "derivation_path": "m/44'/9000'" + }, + { + "coin": "CDS-BEP20", + "name": "cds_bep20", + "fname": "Crypto Development Services", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" + } + }, + "derivation_path": "m/44'/714'" + }, + { + "coin": "CDS-PLG20", + "name": "cds_plg20", + "fname": "Crypto Development Services", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 8, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "CEL-ERC20", "name": "cel_erc20", @@ -2719,6 +2802,25 @@ }, "derivation_path": "m/44'/682'" }, + { + "coin": "CHTA-BEP20", + "name": "chta_bep20", + "fname": "Cheetahcoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xb096DF47073A39041D9ffeD5d4E1d1b0D5D6b8E7" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "CHIPS", "name": "chips", @@ -2738,9 +2840,9 @@ } }, { - "coin": "CHSB-ERC20", - "name": "chsb_erc20", - "fname": "SwissBorg", + "coin": "CHSB-ERC20_OLD", + "name": "chsb_erc20_old", + "fname": "SwissBorg (OLD)", "rpcport": 80, "mm2": 1, "chain_id": 1, @@ -2854,6 +2956,24 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo" }, + { + "coin": "CLP-BEP20", + "name": "clp_bep20", + "fname": "Crypto Lover Productions", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x3039e86d39A5BCF38E96D78fF93FD0aBe753212c" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "COLX", "name": "ColossusXT", @@ -3120,6 +3240,24 @@ }, "derivation_path": "m/44'/966'" }, + { + "coin": "CST-BEP20", + "name": "cst_bep20", + "fname": "Crypto Swap Token", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xcC4b3EA1F25c8772D390dA1DB507832aBE4a9740" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "CUMMIES-BEP20", "name": "cummies_bep20", @@ -3170,6 +3308,7 @@ "segwit": true, "bech32_hrp": "cy", "mm2": 1, + "wallet_only": false, "required_confirmations": 2, "avg_blocktime": 60, "protocol": { @@ -3428,6 +3567,25 @@ }, "derivation_path": "m/44'/60'" }, + { + "coin": "DFX-PLG20_OLD", + "name": "dfx_plg20_old", + "fname": "DFX Finance (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "DFX-PLG20", "name": "dfx_plg20", @@ -3442,7 +3600,7 @@ "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395" + "contract_address": "0x27f485b62C4A7E635F561A87560Adf5090239E93" } }, "derivation_path": "m/44'/966'" @@ -3460,6 +3618,7 @@ "segwit": true, "bech32_hrp": "dgb", "mm2": 1, + "wallet_only": false, "required_confirmations": 7, "avg_blocktime": 15, "protocol": { @@ -3556,6 +3715,29 @@ } }, "derivation_path": "m/44'/714'" + }, + { + "coin": "DIAC", + "name": "diabasecore", + "fname": "Diabase", + "confpath": "USERHOME/.diabasecore/diabase.conf", + "rpcport": 7676, + "pubtype": 76, + "p2shtype": 16, + "wiftype": 204, + "txfee": 1000, + "force_min_relay_fee": true, + "mm2": 1, + "required_confirmations": 2, + "avg_blocktime": 90, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/5'", + "links": { + "github": "https://github.com/diabasecoin/diabase", + "homepage": "https://www.diabasecoin.com" + } }, { "coin": "DIMI", @@ -3683,9 +3865,9 @@ "pubtype": 30, "p2shtype": 22, "wiftype": 158, - "txfee": 1000000, + "txfee": 0, "force_min_relay_fee": true, - "dust": 1000000, + "dust": 100000000, "mm2": 1, "required_confirmations": 2, "avg_blocktime": 60, @@ -3876,7 +4058,7 @@ "pubtype": 33, "p2shtype": 40, "wiftype": 161, - "txfee": 0, + "txfee": 10000, "dust": 5460, "txversion": 7, "mm2": 1, @@ -4263,6 +4445,44 @@ }, "derivation_path": "m/44'/966'" }, + { + "coin": "EURE-ERC20", + "name": "eure_erc20", + "fname": "Monerium EUR", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x3231Cb76718CDeF2155FC47b5286d82e6eDA273f" + } + }, + "derivation_path": "m/44'/60'" + }, + { + "coin": "EURE-PLG20", + "name": "eure_plg20", + "fname": "Monerium EUR", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x18ec0A6E18E5bc3784fDd3a3634b31245ab704F6" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "EUROE-ERC20", "name": "euroe_erc20", @@ -4566,6 +4786,7 @@ "bech32_hrp": "fc", "txfee": 0, "mm2": 1, + "wallet_only": false, "required_confirmations": 3, "avg_blocktime": 60, "protocol": { @@ -4732,6 +4953,7 @@ "segwit": true, "bech32_hrp": "fc", "mm2": 1, + "wallet_only": false, "required_confirmations": 5, "avg_blocktime": 60, "protocol": { @@ -5099,6 +5321,28 @@ }, "derivation_path": "m/44'/714'" }, + { + "coin": "GLC", + "name": "goldcoin", + "fname": "Goldcoin", + "rpcport": 8122, + "pubtype": 32, + "p2shtype": 5, + "wiftype": 160, + "segwit": false, + "txfee": 100000, + "mm2": 1, + "sign_message_prefix": "Goldcoin (GLC) Signed Message:\n", + "required_confirmations": 3, + "avg_blocktime": 120, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/goldcoin/goldcoin", + "homepage": "https://www.goldcoinproject.org" + } + }, { "coin": "GLEEC", "sign_message_prefix": "Komodo Signed Message:\n", @@ -5192,6 +5436,25 @@ }, "derivation_path": "m/44'/714'" }, + { + "coin": "GMT-PLG20", + "name": "gmt_plg20", + "fname": "STEPN", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 8, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x714DB550b574b3E927af3D93E26127D15721D4C2" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "GMX-AVX20", "name": "gmx_avx20", @@ -5357,37 +5620,6 @@ "homepage": "https://www.groestlcoin.org" } }, - { - "coin": "GRS-segwit", - "name": "groestlcoin", - "fname": "Groestlcoin", - "sign_message_prefix": "GroestCoin Signed Message:\n", - "rpcport": 1441, - "pubtype": 36, - "p2shtype": 5, - "wiftype": 128, - "txfee": 10000, - "dust": 10000, - "segwit": true, - "bech32_hrp": "grs", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "GRS", - "mm2": 1, - "wallet_only": true, - "required_confirmations": 5, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/17'", - "trezor_coin": "Groestlcoin", - "links": { - "github": "https://github.com/Groestlcoin/groestlcoin", - "homepage": "https://www.groestlcoin.org" - } - }, { "coin": "GRT-AVX20", "name": "grt_avx20", @@ -5723,24 +5955,6 @@ }, "derivation_path": "m/44'/966'" }, - { - "coin": "IC", - "name": "ignition", - "fname": "Ignition", - "rpcport": 44155, - "pubtype": 103, - "p2shtype": 39, - "wiftype": 138, - "txfee": 1000, - "dust": 1000, - "isPoS": 1, - "mm2": 1, - "required_confirmations": 2, - "avg_blocktime": 240, - "protocol": { - "type": "UTXO" - } - }, { "coin": "IL8P", "name": "infiniloop", @@ -6819,6 +7033,7 @@ "segwit": true, "bech32_hrp": "lbc", "mm2": 1, + "wallet_only": false, "required_confirmations": 3, "avg_blocktime": 150, "protocol": { @@ -6866,6 +7081,7 @@ "segwit": true, "bech32_hrp": "lcc", "mm2": 1, + "wallet_only": false, "required_confirmations": 4, "avg_blocktime": 150, "protocol": { @@ -7224,6 +7440,7 @@ "segwit": true, "bech32_hrp": "wc", "mm2": 1, + "wallet_only": false, "required_confirmations": 2, "avg_blocktime": 30, "protocol": { @@ -7348,6 +7565,7 @@ "segwit": true, "bech32_hrp": "ltc", "mm2": 1, + "wallet_only": false, "required_confirmations": 2, "avg_blocktime": 150, "protocol": { @@ -7367,71 +7585,27 @@ "sign_message_prefix": "Litecoin Signed Message:\n", "rpcport": 9332, "pubtype": 48, - "p2shtype": 50, - "wiftype": 176, - "txfee": 0, - "dust": 5460, - "segwit": true, - "bech32_hrp": "ltc", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "LTC", - "mm2": 1, - "required_confirmations": 2, - "avg_blocktime": 150, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/2'", - "trezor_coin": "Litecoin", - "links": { - "github": "https://github.com/litecoin-project/litecoin", - "homepage": "https://litecoin.org" - } - }, - { - "coin": "LTFN", - "name": "litecoinfinance", - "fname": "Litecoin Finance", - "rpcport": 39327, - "txversion": 2, - "pubtype": 28, - "p2shtype": 53, - "wiftype": 176, - "fork_id": "0x2A40", - "txfee": 20000, - "segwit": true, - "bech32_hrp": "ltfn", - "mm2": 1, - "required_confirmations": 3, - "avg_blocktime": 150, - "protocol": { - "type": "UTXO" - } - }, - { - "coin": "LTFN-segwit", - "name": "litecoinfinance", - "fname": "Litecoin Finance", - "rpcport": 39327, - "txversion": 2, - "pubtype": 28, - "p2shtype": 53, + "p2shtype": 50, "wiftype": 176, - "fork_id": "0x2A40", - "txfee": 20000, + "txfee": 0, + "dust": 5460, "segwit": true, - "bech32_hrp": "ltfn", + "bech32_hrp": "ltc", "address_format": { "format": "segwit" }, - "orderbook_ticker": "LTFN", + "orderbook_ticker": "LTC", "mm2": 1, - "required_confirmations": 3, + "required_confirmations": 2, "avg_blocktime": 150, "protocol": { "type": "UTXO" + }, + "derivation_path": "m/44'/2'", + "trezor_coin": "Litecoin", + "links": { + "github": "https://github.com/litecoin-project/litecoin", + "homepage": "https://litecoin.org" } }, { @@ -7443,7 +7617,7 @@ "pubtype": 45, "p2shtype": 22, "wiftype": 173, - "txfee": 0, + "txfee": 100000, "dust": 54600, "segwit": false, "mm2": 1, @@ -8050,6 +8224,7 @@ "segwit": true, "bech32_hrp": "mona", "mm2": 1, + "wallet_only": false, "required_confirmations": 5, "avg_blocktime": 90, "protocol": { @@ -8203,6 +8378,25 @@ }, "derivation_path": "m/44'/681'" }, + { + "coin": "NENG-BEP20", + "name": "neng_bep20", + "fname": "Nengcoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xaD2c0B5ee5424C6b6f9C06E4fEF3FD7CD9FF0264" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "NEXO-ERC20", "name": "nexo_erc20", @@ -8294,6 +8488,7 @@ "segwit": true, "bech32_hrp": "nc", "mm2": 1, + "wallet_only": false, "required_confirmations": 2, "avg_blocktime": 600, "protocol": { @@ -8455,6 +8650,25 @@ "type": "UTXO" } }, + { + "coin": "NYC-BEP20", + "name": "nyc_bep20", + "fname": "NewYorkCoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x6c015277B0f9b8c24B20BD8BbbD29FDb25738A69" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "OCEAN-BEP20", "name": "ocean_bep20", @@ -8731,46 +8945,6 @@ }, "derivation_path": "m/44'/966'" }, - { - "coin": "PIC", - "name": "picacoin", - "fname": "Picacoin", - "rpcport": 4332, - "pubtype": 0, - "p2shtype": 5, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "bc", - "txfee": 0, - "mm2": 1, - "required_confirmations": 1, - "avg_blocktime": 600, - "protocol": { - "type": "UTXO" - } - }, - { - "coin": "PIC-segwit", - "name": "picacoin", - "fname": "Picacoin", - "rpcport": 4332, - "pubtype": 0, - "p2shtype": 5, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "bc", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "PIC", - "txfee": 0, - "mm2": 1, - "required_confirmations": 1, - "avg_blocktime": 600, - "protocol": { - "type": "UTXO" - } - }, { "coin": "PINK", "name": "pink", @@ -9413,38 +9587,6 @@ "homepage": "https://qtum.org" } }, - { - "coin": "QTUM-segwit", - "name": "qtum", - "fname": "Qtum", - "sign_message_prefix": "Qtum Signed Message:\n", - "rpcport": 3889, - "pubtype": 58, - "p2shtype": 50, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "qc", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "QTUM", - "txfee": 0, - "dust": 72800, - "mm2": 1, - "force_min_relay_fee": true, - "required_confirmations": 3, - "mature_confirmations": 2000, - "avg_blocktime": 32, - "protocol": { - "type": "QTUM" - }, - "derivation_path": "m/44'/2301'", - "trezor_coin": "Qtum", - "links": { - "github": "https://github.com/qtumproject/qtum", - "homepage": "https://qtum.org" - } - }, { "coin": "QTUM-ERC20", "name": "qtum_erc20", @@ -9488,30 +9630,6 @@ "type": "QTUM" } }, - { - "coin": "tQTUM-segwit", - "name": "qtumtest", - "fname": "QTUM Testnet", - "rpcport": 13889, - "pubtype": 120, - "p2shtype": 110, - "wiftype": 239, - "segwit": true, - "bech32_hrp": "tq", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "tQTUM", - "txfee": 400000, - "mm2": 1, - "is_testnet": true, - "required_confirmations": 1, - "mature_confirmations": 2000, - "avg_blocktime": 32, - "protocol": { - "type": "QTUM" - } - }, { "coin": "RDD", "name": "reddcoin", @@ -9655,6 +9773,7 @@ "bech32_hrp": "ric", "txfee": 0, "mm2": 1, + "wallet_only": false, "required_confirmations": 4, "avg_blocktime": 150, "protocol": { @@ -9685,24 +9804,6 @@ }, "derivation_path": "m/44'/143'" }, - { - "coin": "NFTX", - "asset": "NFTX", - "fname": "NFTX", - "rpcport": 53959, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "sign_message_prefix": "Komodo Signed Message:\n", - "required_confirmations": 4, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "DOC", "asset": "DOC", @@ -10251,6 +10352,34 @@ }, "derivation_path": "m/44'/966'" }, + { + "coin": "SUM", + "name": "sumcoin", + "fname": "Sumcoin", + "isPoS": 1, + "sign_message_prefix": "Sumcoin Signed Message:\n", + "rpcport": 3332, + "pubtype": 63, + "p2shtype": 125, + "wiftype": 187, + "decimals": 6, + "txfee": 0, + "dust": 1000, + "segwit": false, + "bech32_hrp": "sum", + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/552'", + "trezor_coin": "Sumcoin", + "links": { + "github": "https://github.com/sumcoinlabs/sumcoin", + "homepage": "https://www.sumcoin.org" + } + }, { "coin": "SUPERNET", "sign_message_prefix": "Komodo Signed Message:\n", @@ -10493,6 +10622,7 @@ "required_confirmations": 5, "avg_blocktime": 60, "mm2": 1, + "wallet_only": false, "protocol": { "type": "UTXO" }, @@ -10582,6 +10712,7 @@ "txfee": 0, "estimate_fee_mode": "ECONOMICAL", "mm2": 1, + "wallet_only": false, "is_testnet": true, "required_confirmations": 0, "protocol": { @@ -11504,6 +11635,25 @@ "decimals": 6, "avg_blocktime": 1.8, "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359" + } + }, + "derivation_path": "m/44'/966'" + }, + { + "coin": "USDC-PLG20_OLD", + "name": "usdc_plg20_old", + "fname": "USD Coin (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 6, + "avg_blocktime": 1.8, + "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { @@ -11883,37 +12033,6 @@ "homepage": "https://viacoin.org" } }, - { - "coin": "VIA-segwit", - "name": "viacoin", - "fname": "Viacoin", - "sign_message_prefix": "Viacoin Signed Message:\n", - "rpcport": 5222, - "pubtype": 71, - "p2shtype": 33, - "wiftype": 199, - "txfee": 100000, - "dust": 54600, - "required_confirmations": 7, - "mature_confirmations": 3600, - "avg_blocktime": 24, - "segwit": true, - "bech32_hrp": "via", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "VIA", - "mm2": 1, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/14'", - "trezor_coin": "Viacoin", - "links": { - "github": "https://github.com/viacoin", - "homepage": "https://viacoin.org" - } - }, { "coin": "VITE-BEP20", "name": "vite_bep20", @@ -11984,7 +12103,7 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo" }, - { + { "coin": "VPRM", "sign_message_prefix": "Komodo Signed Message:\n", "asset": "VPRM", @@ -12015,6 +12134,7 @@ "segwit": true, "bech32_hrp": "vtc", "mm2": 1, + "wallet_only": false, "required_confirmations": 4, "avg_blocktime": 150, "protocol": { @@ -12383,6 +12503,7 @@ "segwit": true, "bech32_hrp": "my", "mm2": 1, + "wallet_only": false, "required_confirmations": 3, "avg_blocktime": 240, "protocol": { @@ -13054,7 +13175,7 @@ "txfee": 10000, "mm2": 1, "required_confirmations": 2, - "avg_blocktime": 60, + "avg_blocktime": 120, "protocol": { "type": "UTXO" }, @@ -13833,34 +13954,6 @@ "homepage": "https://ufobject.com" } }, - { - "coin": "UFO-segwit", - "name": "ufo", - "fname": "Uniform Fiscal Object", - "sign_message_prefix": "UFO Signed Message:\n", - "rpcport": 8087, - "pubtype": 27, - "p2shtype": 68, - "wiftype": 155, - "txfee": 100000, - "segwit": true, - "bech32_hrp": "uf", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "UFO", - "mm2": 1, - "required_confirmations": 6, - "avg_blocktime": 1.5, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/202'", - "links": { - "github": "https://github.com/fiscalobject/ufo", - "homepage": "https://ufobject.com" - } - }, { "coin": "USBL", "name": "bitdollar", @@ -13907,6 +14000,7 @@ "segwit": true, "bech32_hrp": "wv", "mm2": 1, + "wallet_only": false, "required_confirmations": 1, "mature_confirmations": 100, "avg_blocktime": 600, @@ -14278,5 +14372,44 @@ "github": "https://github.com/bunkercoin/bunkercoin", "homepage": "https://bunkercoin.org" } + }, + { + "coin": "KIIRO", + "name": "kiiro", + "fname": "Kiiro", + "sign_message_prefix": "Zcoin Signed Message:\n", + "rpcport": 8999, + "pubtype": 45, + "p2shtype": 7, + "wiftype": 210, + "txfee": 1000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 150, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/kiirocoin/kiiro", + "homepage": "https://kiirocoin.org" + } + }, + { + "coin": "KIIRO-BEP20", + "name": "kiiro_bep20", + "fname": "Kiiro", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x347862372f7C8f83D69025234367Ac11c5241Db3" + } + }, + "derivation_path": "m/44'/714'" } ] diff --git a/assets/coins_config.json b/assets/coins_config.json index 77e514b2e..499385ea1 100644 --- a/assets/coins_config.json +++ b/assets/coins_config.json @@ -133,10 +133,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -184,10 +180,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -489,10 +481,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -611,10 +599,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -798,7 +786,6 @@ { "url": "elec-seeder-two.artbytecoin.org:50012", "protocol": "SSL", - "disable_cert_verification": true, "ws_url": "elec-seeder-two.artbytecoin.org:50013" } ], @@ -838,10 +825,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -889,10 +872,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -975,7 +954,7 @@ "type": "AVX-20", "name": "agEUR", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "ageur", "livecoinwatch_id": "EUR", "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", @@ -1083,7 +1062,7 @@ "type": "Matic", "name": "agEUR", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "ageur", "livecoinwatch_id": "EUR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -1274,10 +1253,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1496,10 +1471,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1553,10 +1524,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -1646,10 +1617,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1727,7 +1694,7 @@ "type": "Matic", "name": "ARPA Chain", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "arpa", "livecoinwatch_id": "ARPA", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -1950,10 +1917,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2001,10 +1964,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2016,7 +1975,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ATOM" }, "ATOM-PLG20": { "coin": "ATOM-PLG20", @@ -2067,7 +2027,8 @@ "url": "https://polygon.llamarpc.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ATOM" }, "AUR": { "coin": "AUR", @@ -2112,11 +2073,6 @@ "protocol": "SSL", "disable_cert_verification": true, "ws_url": "failover.aur.ewmcx.biz:50003" - }, - { - "url": "lenoir.ecoincore.com:12343", - "protocol": "SSL", - "disable_cert_verification": false } ], "explorer_block_url": "block.dws?" @@ -2155,10 +2111,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2308,7 +2260,8 @@ "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "AVAX" }, "AVAX-BEP20": { "coin": "AVAX-BEP20", @@ -2344,10 +2297,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2359,7 +2308,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "AVAX" }, "AVN": { "coin": "AVN", @@ -2705,10 +2655,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2829,7 +2775,7 @@ "type": "BEP-20", "name": "Aryacoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "aryacoin", "livecoinwatch_id": "AYA", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -2859,10 +2805,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2910,10 +2852,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2961,10 +2899,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3172,10 +3106,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3223,10 +3153,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3340,10 +3266,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -3544,10 +3470,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3781,7 +3703,8 @@ "ws_url": "electrum3.cipig.net:30055" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BCH" }, "USDT-SLP": { "coin": "USDT-SLP", @@ -4202,10 +4125,6 @@ { "url": "bbk-one.ewm-cx.net:50001", "protocol": "TCP" - }, - { - "url": "bbk-two.ewm-cx.net:50001", - "protocol": "TCP" } ], "explorer_block_url": "block/" @@ -4245,10 +4164,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4371,7 +4286,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BCH" }, "BCH-BEP20": { "coin": "BCH-BEP20", @@ -4408,10 +4324,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4423,7 +4335,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BCH" }, "BCH-HCO20": { "coin": "BCH-HCO20", @@ -4467,7 +4380,8 @@ "url": "https://http-mainnet-node.huobichain.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BCH" }, "BIDR-BEP20": { "coin": "BIDR-BEP20", @@ -4502,10 +4416,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4525,7 +4435,7 @@ "type": "UTXO", "name": "Bitnet", "coinpaprika_id": "bit-bitnet", - "coingecko_id": "", + "coingecko_id": "bitnet-io", "livecoinwatch_id": "________BIT", "explorer_url": "https://bitexplorer.io/", "explorer_tx_url": "tx/", @@ -4693,10 +4603,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4801,6 +4707,70 @@ ], "explorer_block_url": "block/" }, + "BLOCX": { + "coin": "BLOCX", + "type": "UTXO", + "name": "BLOCX.", + "coinpaprika_id": "blocx-blocx", + "coingecko_id": "blocx-2", + "livecoinwatch_id": "BLOCX", + "explorer_url": "https://explorer.blocx.space/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "DarkCoin Signed Message:\n", + "fname": "BLOCX.", + "rpcport": 12973, + "pubtype": 25, + "p2shtype": 26, + "wiftype": 153, + "segwit": false, + "txfee": 1000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 180, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/BLOCXTECH/BLOCX", + "homepage": "https://blocx.tech" + }, + "electrum": [ + { + "url": "electrum1.blocx.space:50001", + "protocol": "TCP" + }, + { + "url": "electrum2.blocx.space:50001", + "protocol": "TCP" + }, + { + "url": "electrum3.blocx.space:50001", + "protocol": "TCP" + }, + { + "url": "electrum1.blocx.space:50002", + "protocol": "SSL", + "ws_url": "electrum1.blocx.space:50004" + }, + { + "url": "electrum2.blocx.space:50002", + "protocol": "SSL", + "ws_url": "electrum2.blocx.space:50004" + }, + { + "url": "electrum3.blocx.space:50002", + "protocol": "SSL", + "ws_url": "electrum3.blocx.space:50004" + } + ], + "explorer_block_url": "block/" + }, "BNB": { "coin": "BNB", "type": "BEP-20", @@ -4833,10 +4803,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4848,50 +4814,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" - }, - "BOLI": { - "coin": "BOLI", - "type": "UTXO", - "name": "Bolivarcoin", - "coinpaprika_id": "boli-bolivarcoin", - "coingecko_id": "bolivarcoin", - "livecoinwatch_id": "BOLI", - "explorer_url": "https://chainz.cryptoid.info/boli/", - "explorer_tx_url": "tx.dws?", - "explorer_address_url": "address.dws?", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "DarkCoin Signed Message:\n", - "fname": "Bolivarcoin", - "confpath": "USERHOME/.bolivarcoincore/bolivarcoin.conf", - "rpcport": 3563, - "pubtype": 85, - "p2shtype": 5, - "wiftype": 213, - "segwit": false, - "txfee": 10000, - "mm2": 1, - "required_confirmations": 3, - "avg_blocktime": 180, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/278'", - "links": { - "github": "https://github.com/BOLI-Project/BolivarCoin", - "homepage": "https://bolis.info" - }, - "electrum": [ - { - "url": "electrum2.bolivarcoin.tech:23001", - "protocol": "TCP" - } - ], - "explorer_block_url": "block.dws?" + "explorer_block_url": "block/", + "binance_id": "BNB" }, "BONE-ERC20": { "coin": "BONE-ERC20", @@ -5061,10 +4985,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5194,6 +5114,70 @@ ], "explorer_block_url": "block/" }, + "BORG-ERC20": { + "coin": "BORG-ERC20", + "type": "ERC-20", + "name": "SwissBorg", + "coinpaprika_id": "chsb-swissborg", + "coingecko_id": "swissborg", + "livecoinwatch_id": "CHSB", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "SwissBorg", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x64d0f55Cd8C7133a9D7102b13987235F486F2224" + } + }, + "derivation_path": "m/44'/60'", + "trezor_coin": "SwissBorg", + "links": { + "homepage": "https://swissborg.com" + }, + "contract_address": "0x64d0f55Cd8C7133a9D7102b13987235F486F2224", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true + }, + { + "url": "https://eth1.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth2.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth3.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + } + ], + "explorer_block_url": "block/" + }, "BRZ-BEP20": { "coin": "BRZ-BEP20", "type": "BEP-20", @@ -5229,10 +5213,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5551,49 +5531,14 @@ }, "electrum": [ { - "url": "66.172.33.56:50001", - "protocol": "TCP" - } - ], - "explorer_block_url": "block/" - }, - "BSTY-segwit": { - "coin": "BSTY-segwit", - "type": "UTXO", - "name": "GlobalBoost-Y", - "coinpaprika_id": "bsty-globalboost-y", - "coingecko_id": "globalboost", - "livecoinwatch_id": "", - "explorer_url": "https://insight.globalboost.info/", - "explorer_tx_url": "tx/", - "explorer_address_url": "address/", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "GlobalBoost-Y", - "rpcport": 8225, - "pubtype": 77, - "p2shtype": 139, - "wiftype": 208, - "txfee": 200000, - "segwit": true, - "bech32_hrp": "gb", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "BSTY", - "mm2": 1, - "required_confirmations": 1, - "avg_blocktime": 600, - "protocol": { - "type": "UTXO" - }, - "electrum": [ + "url": "electrumserver01.globalboost.info:50014", + "protocol": "SSL", + "ws_url": "electrumserver01.globalboost.info:50013" + }, { - "url": "66.172.33.56:50001", - "protocol": "TCP" + "url": "electrumserver02.globalboost.info:50014", + "protocol": "SSL", + "ws_url": "electrumserver02.globalboost.info:50013" } ], "explorer_block_url": "block/" @@ -5709,7 +5654,8 @@ "ws_url": "electrum3.cipig.net:30000" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BTC" }, "BTC-segwit": { "coin": "BTC-segwit", @@ -5826,7 +5772,8 @@ "ws_url": "electrum3.cipig.net:30000" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BTC" }, "BTC-BEP20": { "coin": "BTC-BEP20", @@ -5862,10 +5809,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5877,7 +5820,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "BTC" }, "BTCZ": { "coin": "BTCZ", @@ -5959,10 +5903,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5976,6 +5916,172 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, + "BTE": { + "coin": "BTE", + "type": "UTXO", + "name": "Bitweb", + "coinpaprika_id": "bte-bitweb", + "coingecko_id": "bitweb", + "livecoinwatch_id": "_BTE", + "explorer_url": "https://explorer.bitwebcore.net/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Bitweb", + "rpcport": 1605, + "pubtype": 33, + "p2shtype": 30, + "wiftype": 128, + "segwit": true, + "bech32_hrp": "web", + "txfee": 20000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "electrum": [ + { + "url": "electrumx.bitwebcore.net:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx.bitwebcore.net:20003" + }, + { + "url": "electrumx6.scalaris.info:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx6.scalaris.info:20003" + }, + { + "url": "electrumx7.scalaris.info:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx7.scalaris.info:20003" + } + ], + "explorer_block_url": "block/" + }, + "BTE-segwit": { + "coin": "BTE-segwit", + "type": "UTXO", + "name": "Bitweb", + "coinpaprika_id": "bte-bitweb", + "coingecko_id": "bitweb", + "livecoinwatch_id": "_BTE", + "explorer_url": "https://explorer.bitwebcore.net/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Bitweb", + "rpcport": 1605, + "pubtype": 33, + "p2shtype": 30, + "wiftype": 128, + "segwit": true, + "bech32_hrp": "web", + "address_format": { + "format": "segwit" + }, + "orderbook_ticker": "BTE", + "txfee": 20000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "electrum": [ + { + "url": "electrumx.bitwebcore.net:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx.bitwebcore.net:20003" + }, + { + "url": "electrumx6.scalaris.info:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx6.scalaris.info:20003" + }, + { + "url": "electrumx7.scalaris.info:20002", + "protocol": "SSL", + "contact": [ + { + "email": "mraksoll@gmail.com" + }, + { + "discord": "mraksoll#0596" + }, + { + "github": "https://github.com/bitweb-project/electrumx/issues" + } + ], + "ws_url": "electrumx7.scalaris.info:20003" + } + ], + "explorer_block_url": "block/" + }, "BTT-BEP20": { "coin": "BTT-BEP20", "type": "BEP-20", @@ -6010,10 +6116,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6062,10 +6164,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6334,10 +6432,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6589,10 +6683,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6804,10 +6894,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6856,10 +6942,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6984,7 +7066,7 @@ "type": "UTXO", "name": "Canada eCoin", "coinpaprika_id": "cdn-canada-ecoin", - "coingecko_id": "", + "coingecko_id": "canada-ecoin", "livecoinwatch_id": "CDN", "explorer_url": "https://chainz.cryptoid.info/cdn/", "explorer_tx_url": "tx.dws?", @@ -7017,6 +7099,12 @@ "protocol": "SSL", "disable_cert_verification": true }, + { + "url": "holland.ecoincore.com:34333", + "protocol": "SSL", + "disable_cert_verification": true, + "ws_url": "holland.ecoincore.com:34335" + }, { "url": "lenoir.ecoincore.com:34333", "protocol": "SSL", @@ -7053,7 +7141,7 @@ "type": "UTXO", "name": "Canada eCoin", "coinpaprika_id": "cdn-canada-ecoin", - "coingecko_id": "", + "coingecko_id": "canada-ecoin", "livecoinwatch_id": "CDN", "explorer_url": "https://chainz.cryptoid.info/cdn/", "explorer_tx_url": "tx.dws?", @@ -7090,6 +7178,12 @@ "protocol": "SSL", "disable_cert_verification": true }, + { + "url": "holland.ecoincore.com:34333", + "protocol": "SSL", + "disable_cert_verification": true, + "ws_url": "holland.ecoincore.com:34335" + }, { "url": "lenoir.ecoincore.com:34333", "protocol": "SSL", @@ -7121,14 +7215,14 @@ ], "explorer_block_url": "block.dws?" }, - "CEL-ERC20": { - "coin": "CEL-ERC20", - "type": "ERC-20", - "name": "Celsius", - "coinpaprika_id": "cel-celsius", - "coingecko_id": "celsius-degree-token", - "livecoinwatch_id": "CEL", - "explorer_url": "https://etherscan.io/", + "CDS-AVX20": { + "coin": "CDS-AVX20", + "type": "AVX-20", + "name": "Crypto Development Services", + "coinpaprika_id": "cds-crypto-development-services", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", "supported": [], @@ -7136,58 +7230,93 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "Celsius", + "fname": "Crypto Development Services", "rpcport": 80, "mm2": 1, - "chain_id": 1, - "decimals": 4, - "avg_blocktime": 15, + "chain_id": 43114, "required_confirmations": 3, + "avg_blocktime": 2.4, + "decimals": 8, "protocol": { "type": "ERC20", "protocol_data": { - "platform": "ETH", - "contract_address": "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d" + "platform": "AVAX", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" } }, - "derivation_path": "m/44'/60'", - "contract_address": "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d", - "parent_coin": "ETH", - "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", - "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "derivation_path": "m/44'/9000'", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5", + "parent_coin": "AVAX", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://node.komodo.earth:8080/ethereum", + "url": "https://node.komodo.earth:8080/avalanche", "gui_auth": true }, { - "url": "https://eth1.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://api.avax.network/ext/bc/C/rpc" }, { - "url": "https://eth2.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://avalanche.blockpi.network/v1/rpc/public" + } + ], + "explorer_block_url": "block/" + }, + "CDS-BEP20": { + "coin": "CDS-BEP20", + "type": "BEP-20", + "name": "Crypto Development Services", + "coinpaprika_id": "cds-crypto-development-services", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Crypto Development Services", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" }, { - "url": "https://eth3.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" } ], + "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "CEL-PLG20": { - "coin": "CEL-PLG20", + "CDS-PLG20": { + "coin": "CDS-PLG20", "type": "Matic", - "name": "Celsius", - "coinpaprika_id": "cel-celsius", - "coingecko_id": "celsius-degree-token", - "livecoinwatch_id": "CEL", + "name": "Crypto Development Services", + "coinpaprika_id": "cds-crypto-development-services", + "coingecko_id": "", + "livecoinwatch_id": "", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -7196,22 +7325,22 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "Celsius", + "fname": "Crypto Development Services", "rpcport": 80, "mm2": 1, "chain_id": 137, - "decimals": 4, + "decimals": 8, "avg_blocktime": 1.8, "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0xD85d1e945766Fea5Eda9103F918Bd915FbCa63E6" + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5" } }, "derivation_path": "m/44'/966'", - "contract_address": "0xD85d1e945766Fea5Eda9103F918Bd915FbCa63E6", + "contract_address": "0x23f07a1C03e7C6D0C88e0E05E79B6E3511073fD5", "parent_coin": "MATIC", "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", @@ -7232,13 +7361,13 @@ ], "explorer_block_url": "block/" }, - "CELR-ERC20": { - "coin": "CELR-ERC20", + "CEL-ERC20": { + "coin": "CEL-ERC20", "type": "ERC-20", - "name": "Celer Network", - "coinpaprika_id": "celr-celer-network", - "coingecko_id": "celer-network", - "livecoinwatch_id": "CELR", + "name": "Celsius", + "coinpaprika_id": "cel-celsius", + "coingecko_id": "celsius-degree-token", + "livecoinwatch_id": "CEL", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -7247,27 +7376,138 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "Celer Network", + "fname": "Celsius", "rpcport": 80, "mm2": 1, "chain_id": 1, - "decimals": 18, + "decimals": 4, "avg_blocktime": 15, "required_confirmations": 3, "protocol": { "type": "ERC20", "protocol_data": { "platform": "ETH", - "contract_address": "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667" + "contract_address": "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d" } }, "derivation_path": "m/44'/60'", - "trezor_coin": "CelerToken", - "links": { - "github": "https://github.com/celer-network", - "homepage": "https://www.celer.network/" - }, - "contract_address": "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667", + "contract_address": "0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true + }, + { + "url": "https://eth1.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth2.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth3.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + } + ], + "explorer_block_url": "block/" + }, + "CEL-PLG20": { + "coin": "CEL-PLG20", + "type": "Matic", + "name": "Celsius", + "coinpaprika_id": "cel-celsius", + "coingecko_id": "celsius-degree-token", + "livecoinwatch_id": "CEL", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Celsius", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 4, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xD85d1e945766Fea5Eda9103F918Bd915FbCa63E6" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0xD85d1e945766Fea5Eda9103F918Bd915FbCa63E6", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, + "CELR-ERC20": { + "coin": "CELR-ERC20", + "type": "ERC-20", + "name": "Celer Network", + "coinpaprika_id": "celr-celer-network", + "coingecko_id": "celer-network", + "livecoinwatch_id": "CELR", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Celer Network", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667" + } + }, + "derivation_path": "m/44'/60'", + "trezor_coin": "CelerToken", + "links": { + "github": "https://github.com/celer-network", + "homepage": "https://www.celer.network/" + }, + "contract_address": "0x4F9254C83EB525f9FCf346490bbb3ed28a81C667", "parent_coin": "ETH", "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", @@ -7332,10 +7572,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7428,10 +7664,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7510,12 +7742,60 @@ ], "explorer_block_url": "block/" }, + "CHTA-BEP20": { + "coin": "CHTA-BEP20", + "type": "BEP-20", + "name": "Cheetahcoin", + "coinpaprika_id": "chta-cheetahcoin", + "coingecko_id": "", + "livecoinwatch_id": "CHTA", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Cheetahcoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xb096DF47073A39041D9ffeD5d4E1d1b0D5D6b8E7" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0xb096DF47073A39041D9ffeD5d4E1d1b0D5D6b8E7", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "CHIPS": { "coin": "CHIPS", "type": "UTXO", "name": "Chips", "coinpaprika_id": "chips-chips", - "coingecko_id": "", + "coingecko_id": "chips", "livecoinwatch_id": "__CHIPS", "explorer_url": "https://explorer.chips.cash/", "explorer_tx_url": "", @@ -7615,12 +7895,12 @@ ], "explorer_block_url": "block/" }, - "CHSB-ERC20": { - "coin": "CHSB-ERC20", + "CHSB-ERC20_OLD": { + "coin": "CHSB-ERC20_OLD", "type": "ERC-20", - "name": "SwissBorg", - "coinpaprika_id": "chsb-swissborg", - "coingecko_id": "swissborg", + "name": "SwissBorg (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", "livecoinwatch_id": "CHSB", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -7630,7 +7910,7 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "SwissBorg", + "fname": "SwissBorg (OLD)", "rpcport": 80, "mm2": 1, "chain_id": 1, @@ -7930,6 +8210,53 @@ ], "explorer_block_url": "block/" }, + "CLP-BEP20": { + "coin": "CLP-BEP20", + "type": "BEP-20", + "name": "Crypto Lover Productions", + "coinpaprika_id": "clp-crypto-lover-productions", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Crypto Lover Productions", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x3039e86d39A5BCF38E96D78fF93FD0aBe753212c" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x3039e86d39A5BCF38E96D78fF93FD0aBe753212c", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "COMP-AVX20": { "coin": "COMP-AVX20", "type": "AVX-20", @@ -8012,10 +8339,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -8492,10 +8815,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -8595,6 +8918,53 @@ ], "explorer_block_url": "block/" }, + "CST-BEP20": { + "coin": "CST-BEP20", + "type": "BEP-20", + "name": "Crypto Swap Token", + "coinpaprika_id": "cst-cryptoswaptoken", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Crypto Swap Token", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xcC4b3EA1F25c8772D390dA1DB507832aBE4a9740" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0xcC4b3EA1F25c8772D390dA1DB507832aBE4a9740", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "CUMMIES-BEP20": { "coin": "CUMMIES-BEP20", "type": "BEP-20", @@ -8629,10 +8999,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -8986,10 +9352,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -9043,10 +9405,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -9299,7 +9661,8 @@ "ws_url": "electrum3.cipig.net:30061" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "DASH" }, "DDD-ERC20": { "coin": "DDD-ERC20", @@ -9483,12 +9846,63 @@ ], "explorer_block_url": "block/" }, + "DFX-PLG20_OLD": { + "coin": "DFX-PLG20_OLD", + "type": "Matic", + "name": "DFX Finance (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "__DFX", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "DFX Finance (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "DFX-PLG20": { "coin": "DFX-PLG20", "type": "Matic", "name": "DFX Finance", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "dfx-finance", "livecoinwatch_id": "__DFX", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -9509,11 +9923,11 @@ "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395" + "contract_address": "0x27f485b62C4A7E635F561A87560Adf5090239E93" } }, "derivation_path": "m/44'/966'", - "contract_address": "0xE7804D91dfCDE7F776c90043E03eAa6Df87E6395", + "contract_address": "0x27f485b62C4A7E635F561A87560Adf5090239E93", "parent_coin": "MATIC", "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", @@ -9644,7 +10058,8 @@ "ws_url": "electrum3.cipig.net:30059" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "DGB" }, "DGB-segwit": { "coin": "DGB-segwit", @@ -9760,7 +10175,8 @@ "ws_url": "electrum3.cipig.net:30059" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "DGB" }, "DGC": { "coin": "DGC", @@ -9901,10 +10317,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -9918,6 +10330,60 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, + "DIAC": { + "coin": "DIAC", + "type": "UTXO", + "name": "Diabase", + "coinpaprika_id": "diac-diabase", + "coingecko_id": "diabase", + "livecoinwatch_id": "DIAC", + "explorer_url": "http://explorer.diabasecoin.com/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Diabase", + "confpath": "USERHOME/.diabasecore/diabase.conf", + "rpcport": 7676, + "pubtype": 76, + "p2shtype": 16, + "wiftype": 204, + "txfee": 1000, + "force_min_relay_fee": true, + "mm2": 1, + "required_confirmations": 2, + "avg_blocktime": 90, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/5'", + "links": { + "github": "https://github.com/diabasecoin/diabase", + "homepage": "https://www.diabasecoin.com" + }, + "electrum": [ + { + "url": "electrumx1.diabasecoin.com:10002", + "contact": [ + { + "github": "diabasecoin" + } + ] + }, + { + "url": "electrumx2.diabasecoin.com:10002", + "contact": [ + { + "github": "diabasecoin" + } + ] + } + ], + "explorer_block_url": "block/" + }, "DIMI": { "coin": "DIMI", "type": "UTXO", @@ -10020,10 +10486,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10186,10 +10648,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10328,9 +10786,9 @@ "pubtype": 30, "p2shtype": 22, "wiftype": 158, - "txfee": 1000000, + "txfee": 0, "force_min_relay_fee": true, - "dust": 1000000, + "dust": 100000000, "mm2": 1, "required_confirmations": 2, "avg_blocktime": 60, @@ -10417,7 +10875,8 @@ "ws_url": "electrum3.cipig.net:30060" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "DOGE" }, "DOGE-BEP20": { "coin": "DOGE-BEP20", @@ -10453,10 +10912,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10468,6 +10923,50 @@ } ], "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/", + "binance_id": "DOGE" + }, + "DOGEC": { + "coin": "DOGEC", + "type": "UTXO", + "name": "DogeCash", + "coinpaprika_id": "dogec-dogecash", + "coingecko_id": "dogecash", + "livecoinwatch_id": "DOGEC", + "explorer_url": "https://explorer.dogecash.org/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "DarkNet Signed Message:\n", + "fname": "DogeCash", + "rpcport": 56750, + "pubtype": 30, + "p2shtype": 19, + "wiftype": 122, + "txfee": 10000, + "dust": 5460, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/385'", + "links": { + "github": "https://github.com/dogecash/dogecash", + "homepage": "https://dogecash.net" + }, + "electrum": [ + { + "url": "dogec-one.ewm-cx.com:50006", + "protocol": "TCP", + "ws_url": "dogec-one.ewm-cx.com:50008" + } + ], "explorer_block_url": "block/" }, "DOGEDASH-BEP20": { @@ -10504,10 +11003,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10555,10 +11050,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10606,10 +11097,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10740,6 +11227,16 @@ "type": "UTXO" }, "electrum": [ + { + "url": "pink-deer-69.doi.works:50001", + "protocol": "TCP", + "contact": [ + { + "github": "https://github.com/namecoin/electrum-nmc/issues", + "twitter": "example_username" + } + ] + }, { "url": "big-parrot-60.doi.works:50002", "protocol": "SSL", @@ -10762,6 +11259,17 @@ ], "ws-url": "itchy-jellyfish-89.doi.works:50004" }, + { + "url": "pink-deer-69.doi.works:50002", + "protocol": "SSL", + "contact": [ + { + "github": "https://github.com/namecoin/electrum-nmc/issues", + "twitter": "example_username" + } + ], + "ws-url": "pink-deer-69.doi.works:50004" + }, { "url": "ugly-bird-70.doi.works:50002", "protocol": "SSL", @@ -10796,7 +11304,7 @@ "pubtype": 33, "p2shtype": 40, "wiftype": 161, - "txfee": 0, + "txfee": 10000, "dust": 5460, "txversion": 7, "mm2": 1, @@ -10914,6 +11422,12 @@ }, "derivation_path": "m/44'/78'", "electrum": [ + { + "url": "electrum1.egulden.org:50002", + "protocol": "SSL", + "disable_cert_verification": true, + "ws_url": "electrum1.egulden.org:50004" + }, { "url": "electrum3.egulden.org:50002", "protocol": "SSL", @@ -10969,10 +11483,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11080,10 +11590,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11463,10 +11969,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11525,7 +12027,8 @@ "url": "https://besu-at.etc-network.info" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETC" }, "ETC-BEP20": { "coin": "ETC-BEP20", @@ -11561,10 +12064,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11576,7 +12075,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETC" }, "ETH": { "coin": "ETH", @@ -11630,7 +12130,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-AVX20": { "coin": "ETH-AVX20", @@ -11678,7 +12179,8 @@ "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-ARB20": { "coin": "ETH-ARB20", @@ -11715,7 +12217,8 @@ "url": "https://arb1.arbitrum.io/rpc" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-BEP20": { "coin": "ETH-BEP20", @@ -11751,10 +12254,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11766,7 +12265,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-FTM20": { "coin": "ETH-FTM20", @@ -11808,13 +12308,14 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-HCO20": { "coin": "ETH-HCO20", @@ -11858,7 +12359,8 @@ "url": "https://http-mainnet-node.huobichain.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-KRC20": { "coin": "ETH-KRC20", @@ -11902,7 +12404,8 @@ "url": "https://kcc-rpc.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, "ETH-PLG20": { "coin": "ETH-PLG20", @@ -11953,15 +12456,16 @@ "url": "https://polygon.llamarpc.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ETH" }, - "EUROE-ERC20": { - "coin": "EUROE-ERC20", + "EURE-ERC20": { + "coin": "EURE-ERC20", "type": "ERC-20", - "name": "EUROe Stablecoin", - "coinpaprika_id": "euroe-euroe-stablecoin", - "coingecko_id": "euroe-stablecoin", - "livecoinwatch_id": "EUROE", + "name": "Monerium EUR", + "coinpaprika_id": "eure-monerium-eur-emoney", + "coingecko_id": "monerium-eur-money", + "livecoinwatch_id": "EUR", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -11970,22 +12474,22 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "EUROe Stablecoin", + "fname": "Monerium EUR", "rpcport": 80, "mm2": 1, "chain_id": 1, - "decimals": 6, + "decimals": 18, "avg_blocktime": 15, "required_confirmations": 3, "protocol": { "type": "ERC20", "protocol_data": { "platform": "ETH", - "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974" + "contract_address": "0x3231Cb76718CDeF2155FC47b5286d82e6eDA273f" } }, "derivation_path": "m/44'/60'", - "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974", + "contract_address": "0x3231Cb76718CDeF2155FC47b5286d82e6eDA273f", "parent_coin": "ETH", "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", @@ -12013,16 +12517,15 @@ } } ], - "explorer_block_url": "block/", - "forex_id": "EUR" + "explorer_block_url": "block/" }, - "EUROE-PLG20": { - "coin": "EUROE-PLG20", + "EURE-PLG20": { + "coin": "EURE-PLG20", "type": "Matic", - "name": "EUROe Stablecoin", + "name": "Monerium EUR", "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "EUROE", + "coingecko_id": "monerium-eur-money", + "livecoinwatch_id": "EUR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -12031,22 +12534,22 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "EUROe Stablecoin", + "fname": "Monerium EUR", "rpcport": 80, "mm2": 1, "chain_id": 137, - "decimals": 6, + "decimals": 18, "avg_blocktime": 1.8, "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974" + "contract_address": "0x18ec0A6E18E5bc3784fDd3a3634b31245ab704F6" } }, "derivation_path": "m/44'/966'", - "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974", + "contract_address": "0x18ec0A6E18E5bc3784fDd3a3634b31245ab704F6", "parent_coin": "MATIC", "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", @@ -12067,13 +12570,13 @@ ], "explorer_block_url": "block/" }, - "EURS-ERC20": { - "coin": "EURS-ERC20", + "EUROE-ERC20": { + "coin": "EUROE-ERC20", "type": "ERC-20", - "name": "STASIS EURO", - "coinpaprika_id": "eurs-stasis-eurs", - "coingecko_id": "stasis-eurs", - "livecoinwatch_id": "EURS", + "name": "EUROe Stablecoin", + "coinpaprika_id": "euroe-euroe-stablecoin", + "coingecko_id": "euroe-stablecoin", + "livecoinwatch_id": "EUROE", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -12082,27 +12585,139 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "STASIS EURO", + "fname": "EUROe Stablecoin", "rpcport": 80, "mm2": 1, "chain_id": 1, - "decimals": 2, + "decimals": 6, "avg_blocktime": 15, "required_confirmations": 3, "protocol": { "type": "ERC20", "protocol_data": { "platform": "ETH", - "contract_address": "0xdB25f211AB05b1c97D595516F45794528a807ad8" + "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974" } }, "derivation_path": "m/44'/60'", - "trezor_coin": "STASIS EURS", - "links": { - "github": "https://github.com/stasisnet", - "homepage": "https://stasis.net" - }, - "contract_address": "0xdB25f211AB05b1c97D595516F45794528a807ad8", + "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true + }, + { + "url": "https://eth1.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth2.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + }, + { + "url": "https://eth3.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } + } + ], + "explorer_block_url": "block/", + "forex_id": "EUR" + }, + "EUROE-PLG20": { + "coin": "EUROE-PLG20", + "type": "Matic", + "name": "EUROe Stablecoin", + "coinpaprika_id": "", + "coingecko_id": "euroe-stablecoin", + "livecoinwatch_id": "EUROE", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "EUROe Stablecoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 6, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x820802Fa8a99901F52e39acD21177b0BE6EE2974", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, + "EURS-ERC20": { + "coin": "EURS-ERC20", + "type": "ERC-20", + "name": "STASIS EURO", + "coinpaprika_id": "eurs-stasis-eurs", + "coingecko_id": "stasis-eurs", + "livecoinwatch_id": "EURS", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "STASIS EURO", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 2, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0xdB25f211AB05b1c97D595516F45794528a807ad8" + } + }, + "derivation_path": "m/44'/60'", + "trezor_coin": "STASIS EURS", + "links": { + "github": "https://github.com/stasisnet", + "homepage": "https://stasis.net" + }, + "contract_address": "0xdB25f211AB05b1c97D595516F45794528a807ad8", "parent_coin": "ETH", "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", @@ -12258,10 +12873,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12430,10 +13041,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12532,10 +13139,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12554,7 +13157,7 @@ "type": "ERC-20", "name": "Filecoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "filecoin", "livecoinwatch_id": "FIL", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -12733,7 +13336,8 @@ ] } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FIRO" }, "FIRO-BEP20": { "coin": "FIRO-BEP20", @@ -12769,10 +13373,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12784,7 +13384,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FIRO" }, "FJC": { "coin": "FJC", @@ -12980,10 +13581,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13031,10 +13628,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13082,10 +13675,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13194,10 +13783,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13509,13 +14094,14 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FTM" }, "FTM-BEP20": { "coin": "FTM-BEP20", @@ -13551,10 +14137,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13566,7 +14148,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FTM" }, "FTM-ERC20": { "coin": "FTM-ERC20", @@ -13630,7 +14213,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FTM" }, "FXS-BEP20": { "coin": "FXS-BEP20", @@ -13667,10 +14251,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13689,7 +14269,7 @@ "type": "ERC-20", "name": "Frax Share", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "frax-share", "livecoinwatch_id": "FXS", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -13749,7 +14329,7 @@ "type": "Matic", "name": "Frax Share", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "frax-share", "livecoinwatch_id": "FXS", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -13800,7 +14380,7 @@ "type": "AVX-20", "name": "Frax Share", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "frax-share", "livecoinwatch_id": "FXS", "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", @@ -13848,7 +14428,7 @@ "type": "Moonriver", "name": "Frax Share", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "frax-share", "livecoinwatch_id": "FXS", "explorer_url": "https://moonriver.moonscan.io/", "explorer_tx_url": "", @@ -13892,7 +14472,7 @@ "type": "FTM-20", "name": "Frax Share", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "frax-share", "livecoinwatch_id": "FXS", "explorer_url": "https://ftmscan.com/", "explorer_tx_url": "", @@ -13927,10 +14507,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -14030,10 +14610,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14112,7 +14688,7 @@ "type": "Matic", "name": "GameCredits", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "gamecredits", "livecoinwatch_id": "GAME", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -14205,7 +14781,7 @@ "type": "BEP-20", "name": "GoByte", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "gobyte", "livecoinwatch_id": "GBX", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -14235,10 +14811,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14287,10 +14859,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14304,6 +14872,61 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, + "GLC": { + "coin": "GLC", + "type": "UTXO", + "name": "Goldcoin", + "coinpaprika_id": "glc-goldcoin", + "coingecko_id": "goldcoin", + "livecoinwatch_id": "GLC", + "explorer_url": "https://chainz.cryptoid.info/glc/", + "explorer_tx_url": "tx.dws?", + "explorer_address_url": "address.dws?", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "Goldcoin (GLC) Signed Message:\n", + "fname": "Goldcoin", + "rpcport": 8122, + "pubtype": 32, + "p2shtype": 5, + "wiftype": 160, + "segwit": false, + "txfee": 100000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 120, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/goldcoin/goldcoin", + "homepage": "https://www.goldcoinproject.org" + }, + "electrum": [ + { + "url": "electrum1.netseed.net:50001", + "protocol": "TCP" + }, + { + "url": "electrum2.netseed.net:50001", + "protocol": "TCP" + }, + { + "url": "electrum1.netseed.net:50002", + "protocol": "SSL", + "ws_url": "electrum1.netseed.net:50003" + }, + { + "url": "electrum2.netseed.net:50002", + "protocol": "SSL", + "ws_url": "electrum2.netseed.net:50003" + } + ], + "explorer_block_url": "block.dws?" + }, "GLEEC": { "coin": "GLEEC", "type": "Smart Chain", @@ -14558,10 +15181,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14579,7 +15198,7 @@ "coin": "GMT-BEP20", "type": "BEP-20", "name": "STEPN", - "coinpaprika_id": "", + "coinpaprika_id": "gmt-stepn", "coingecko_id": "stepn", "livecoinwatch_id": "____GMT", "explorer_url": "https://bscscan.com/", @@ -14610,10 +15229,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14627,6 +15242,57 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, + "GMT-PLG20": { + "coin": "GMT-PLG20", + "type": "Matic", + "name": "STEPN", + "coinpaprika_id": "gmt-stepn", + "coingecko_id": "stepn", + "livecoinwatch_id": "____GMT", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "STEPN", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 8, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x714DB550b574b3E927af3D93E26127D15721D4C2" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x714DB550b574b3E927af3D93E26127D15721D4C2", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "GMX-AVX20": { "coin": "GMX-AVX20", "type": "AVX-20", @@ -14884,12 +15550,11 @@ ] }, { - "url": "au.garlium.crapules.org:50002", - "protocol": "SSL", - "disable_cert_verification": true, + "url": "electrum.niftybakes.com:50001", + "protocol": "TCP", "contact": [ { - "discord": "orpheas#1503" + "discord": "405566674448810005" } ] }, @@ -14913,16 +15578,6 @@ } ] }, - { - "url": "pl.garlium.crapules.org:50002", - "protocol": "SSL", - "disable_cert_verification": true, - "contact": [ - { - "discord": "orpheas#1503" - } - ] - }, { "url": "uk.garlium.crapules.org:50002", "protocol": "SSL", @@ -14941,7 +15596,7 @@ "type": "ERC-20", "name": "Garlicoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "garlicoin", "livecoinwatch_id": "GRLC", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -15001,7 +15656,7 @@ "type": "BEP-20", "name": "Garlicoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "garlicoin", "livecoinwatch_id": "GRLC", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -15031,10 +15686,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -15170,6 +15821,18 @@ } ] }, + { + "url": "electrum18.groestlcoin.org:50001", + "ws_url": "electrum18.groestlcoin.org:50004", + "contact": [ + { + "email": "jackielove4u@hotmail.com" + }, + { + "discord": "jackielove4u#0412" + } + ] + }, { "url": "electrum19.groestlcoin.org:50001", "ws_url": "electrum19.groestlcoin.org:50004", @@ -15314,18 +15977,6 @@ } ] }, - { - "url": "electrum3.groestlcoin.org:50001", - "ws_url": "electrum3.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum30.groestlcoin.org:50001", "ws_url": "electrum30.groestlcoin.org:50004", @@ -15339,199 +15990,8 @@ ] }, { - "url": "electrum34.groestlcoin.org:50001", - "ws_url": "electrum34.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum35.groestlcoin.org:50001", - "ws_url": "electrum35.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum36.groestlcoin.org:50001", - "ws_url": "electrum36.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum37.groestlcoin.org:50001", - "ws_url": "electrum37.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum38.groestlcoin.org:50001", - "ws_url": "electrum38.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum39.groestlcoin.org:50001", - "ws_url": "electrum39.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum40.groestlcoin.org:50001", - "ws_url": "electrum40.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum7.groestlcoin.org:50001", - "ws_url": "electrum7.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum8.groestlcoin.org:50001", - "ws_url": "electrum8.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum9.groestlcoin.org:50001", - "ws_url": "electrum9.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum11.groestlcoin.org:50002", - "protocol": "SSL", - "disable_cert_verification": false, - "ws_url": "electrum11.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - } - ], - "explorer_block_url": "block/" - }, - "GRS-segwit": { - "coin": "GRS-segwit", - "type": "UTXO", - "name": "Groestlcoin", - "coinpaprika_id": "grs-groestlcoin", - "coingecko_id": "groestlcoin", - "livecoinwatch_id": "GRS", - "explorer_url": "https://groestlsight.groestlcoin.org/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": true, - "sign_message_prefix": "GroestCoin Signed Message:\n", - "fname": "Groestlcoin", - "rpcport": 1441, - "pubtype": 36, - "p2shtype": 5, - "wiftype": 128, - "txfee": 10000, - "dust": 10000, - "segwit": true, - "bech32_hrp": "grs", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "GRS", - "mm2": 1, - "required_confirmations": 5, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/17'", - "trezor_coin": "Groestlcoin", - "links": { - "github": "https://github.com/Groestlcoin/groestlcoin", - "homepage": "https://www.groestlcoin.org" - }, - "electrum": [ - { - "url": "electrum1.groestlcoin.org:50001", - "ws_url": "electrum1.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum12.groestlcoin.org:50001", - "ws_url": "electrum12.groestlcoin.org:50004", + "url": "electrum31.groestlcoin.org:50001", + "ws_url": "electrum31.groestlcoin.org:50004", "contact": [ { "email": "jackielove4u@hotmail.com" @@ -15542,8 +16002,8 @@ ] }, { - "url": "electrum13.groestlcoin.org:50001", - "ws_url": "electrum13.groestlcoin.org:50004", + "url": "electrum32.groestlcoin.org:50001", + "ws_url": "electrum32.groestlcoin.org:50004", "contact": [ { "email": "jackielove4u@hotmail.com" @@ -15554,212 +16014,8 @@ ] }, { - "url": "electrum14.groestlcoin.org:50001", - "ws_url": "electrum14.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum15.groestlcoin.org:50001", - "ws_url": "electrum15.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum16.groestlcoin.org:50001", - "ws_url": "electrum16.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum17.groestlcoin.org:50001", - "ws_url": "electrum17.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum19.groestlcoin.org:50001", - "ws_url": "electrum19.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum2.groestlcoin.org:50001", - "ws_url": "electrum2.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum20.groestlcoin.org:50001", - "ws_url": "electrum20.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum21.groestlcoin.org:50001", - "ws_url": "electrum21.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum22.groestlcoin.org:50001", - "ws_url": "electrum22.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum23.groestlcoin.org:50001", - "ws_url": "electrum23.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum24.groestlcoin.org:50001", - "ws_url": "electrum24.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum25.groestlcoin.org:50001", - "ws_url": "electrum25.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum26.groestlcoin.org:50001", - "ws_url": "electrum26.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum27.groestlcoin.org:50001", - "ws_url": "electrum27.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum28.groestlcoin.org:50001", - "ws_url": "electrum28.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum29.groestlcoin.org:50001", - "ws_url": "electrum29.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum3.groestlcoin.org:50001", - "ws_url": "electrum3.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum30.groestlcoin.org:50001", - "ws_url": "electrum30.groestlcoin.org:50004", + "url": "electrum33.groestlcoin.org:50001", + "ws_url": "electrum33.groestlcoin.org:50004", "contact": [ { "email": "jackielove4u@hotmail.com" @@ -15853,42 +16109,6 @@ } ] }, - { - "url": "electrum7.groestlcoin.org:50001", - "ws_url": "electrum7.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum8.groestlcoin.org:50001", - "ws_url": "electrum8.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum9.groestlcoin.org:50001", - "ws_url": "electrum9.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum11.groestlcoin.org:50002", "protocol": "SSL", @@ -16149,10 +16369,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -16847,29 +17063,6 @@ "type": "UTXO" }, "electrum": [ - { - "url": "il8p.electrumx.transcenders.name:50002", - "protocol": "SSL", - "disable_cert_verification": true, - "contact": [ - { - "email": "coins@ewmci.com" - }, - { - "discord": "[CryptoStan]#9341" - }, - { - "twitter": "EwmciL" - }, - { - "reddit": "InfiniLooP" - }, - { - "github": "WikiMin3R" - } - ], - "ws_url": "il8p.electrumx.transcenders.name:50003" - }, { "url": "il9p.electrumx.transcenders.name:50002", "protocol": "SSL", @@ -16992,10 +17185,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17176,7 +17365,7 @@ "type": "BEP-20", "name": "Illuvium", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "illuvium", "livecoinwatch_id": "ILV", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -17206,10 +17395,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17317,10 +17502,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17427,10 +17608,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17478,10 +17655,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17580,10 +17753,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17654,7 +17823,7 @@ "type": "BEP-20", "name": "Jarvis Brazilian Real", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "jarvis-brazilian-real", "livecoinwatch_id": "BRL", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -17684,10 +17853,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17889,10 +18054,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18076,7 +18237,7 @@ "type": "AVX-20", "name": "Jarvis Euro", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "jarvis-synthetic-euro", "livecoinwatch_id": "JEUR", "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", @@ -18124,7 +18285,7 @@ "type": "BEP-20", "name": "Jarvis Euro", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "jarvis-synthetic-euro", "livecoinwatch_id": "JEUR", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -18154,10 +18315,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18289,7 +18446,7 @@ "type": "BEP-20", "name": "Jarvis British Pound", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "jarvis-synthetic-british-pound", "livecoinwatch_id": "GBP", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -18319,10 +18476,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19267,10 +19420,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19438,7 +19587,8 @@ ], "explorer_block_url": "block/", "is_claimable": true, - "minimal_claim_amount": "10" + "minimal_claim_amount": "10", + "binance_id": "KMD" }, "KMD-BEP20": { "coin": "KMD-BEP20", @@ -19474,10 +19624,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19489,7 +19635,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "KMD" }, "KNC-BEP20": { "coin": "KNC-BEP20", @@ -19525,10 +19672,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19846,10 +19989,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -20131,10 +20270,6 @@ }, "derivation_path": "m/44'/192'", "electrum": [ - { - "url": "188.166.117.139:50001", - "protocol": "TCP" - }, { "url": "88.99.26.209:5140", "protocol": "TCP" @@ -20181,10 +20316,6 @@ }, "derivation_path": "m/44'/192'", "electrum": [ - { - "url": "188.166.117.139:50001", - "protocol": "TCP" - }, { "url": "88.99.26.209:5140", "protocol": "TCP" @@ -20559,10 +20690,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -20616,10 +20743,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -20798,10 +20925,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -20915,10 +21038,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21230,10 +21349,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21282,10 +21397,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21410,7 +21521,8 @@ "ws_url": "electrum3.cipig.net:30063" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "LTC" }, "LTC-segwit": { "coin": "LTC-segwit", @@ -21527,7 +21639,8 @@ "ws_url": "electrum3.cipig.net:30063" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "LTC" }, "LYNX": { "coin": "LYNX", @@ -21550,7 +21663,7 @@ "pubtype": 45, "p2shtype": 22, "wiftype": 173, - "txfee": 0, + "txfee": 100000, "dust": 54600, "segwit": false, "mm2": 1, @@ -21689,10 +21802,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21806,7 +21915,7 @@ "type": "BEP-20", "name": "Mask Network", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "mask-network", "livecoinwatch_id": "_MASK", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -21836,10 +21945,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21918,7 +22023,7 @@ "type": "Matic", "name": "Mask Network", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "mask-network", "livecoinwatch_id": "_MASK", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -22048,7 +22153,8 @@ "url": "https://polygon.llamarpc.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MATIC" }, "MATIC-BEP20": { "coin": "MATIC-BEP20", @@ -22084,10 +22190,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22099,7 +22201,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MATIC" }, "MATIC-ERC20": { "coin": "MATIC-ERC20", @@ -22163,7 +22266,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MATIC" }, "MATIC-HCO20": { "coin": "MATIC-HCO20", @@ -22207,7 +22311,8 @@ "url": "https://http-mainnet-node.huobichain.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MATIC" }, "MATIC-KRC20": { "coin": "MATIC-KRC20", @@ -22251,7 +22356,8 @@ "url": "https://kcc-rpc.com" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MATIC" }, "MC-ERC20": { "coin": "MC-ERC20", @@ -22348,10 +22454,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22370,7 +22472,7 @@ "type": "Smart Chain", "name": "Marmara Credit Loops", "coinpaprika_id": "mcl-marmara-credit-loops", - "coingecko_id": "", + "coingecko_id": "marmara-credit-loops", "livecoinwatch_id": "_MCL", "explorer_url": "https://explorer.marmara.io/", "explorer_tx_url": "", @@ -22736,10 +22838,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22835,10 +22933,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22966,7 +23060,7 @@ "type": "Matic", "name": "Maker", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "maker", "livecoinwatch_id": "MKR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -23158,10 +23252,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23413,7 +23503,8 @@ "url": "https://rpc.api.moonriver.moonbeam.network" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "MOVR" }, "GLMR": { "coin": "GLMR", @@ -23454,7 +23545,8 @@ "url": "https://moonbeam.public.blastapi.io" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "GLMR" }, "NAV": { "coin": "NAV", @@ -23537,10 +23629,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23588,10 +23676,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23610,7 +23694,7 @@ "type": "UTXO", "name": "Nengcoin", "coinpaprika_id": "neng-nengcoin", - "coingecko_id": "", + "coingecko_id": "nengcoin", "livecoinwatch_id": "NENG", "explorer_url": "http://nengexplorer.mooo.com:3001/", "explorer_tx_url": "", @@ -23670,6 +23754,54 @@ ], "explorer_block_url": "block/" }, + "NENG-BEP20": { + "coin": "NENG-BEP20", + "type": "BEP-20", + "name": "Nengcoin", + "coinpaprika_id": "neng-nengcoin", + "coingecko_id": "nengcoin", + "livecoinwatch_id": "NENG", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Nengcoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0xaD2c0B5ee5424C6b6f9C06E4fEF3FD7CD9FF0264" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0xaD2c0B5ee5424C6b6f9C06E4fEF3FD7CD9FF0264", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "NEXO-ERC20": { "coin": "NEXO-ERC20", "type": "ERC-20", @@ -24145,10 +24277,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24390,6 +24518,54 @@ "explorer_block_url": "block/", "forex_id": "NZD" }, + "NYC-BEP20": { + "coin": "NYC-BEP20", + "type": "BEP-20", + "name": "NewYorkCoin", + "coinpaprika_id": "nyc-newyorkcoin", + "coingecko_id": "newyorkcoin", + "livecoinwatch_id": "NYC", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "NewYorkCoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x6c015277B0f9b8c24B20BD8BbbD29FDb25738A69" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x6c015277B0f9b8c24B20BD8BbbD29FDb25738A69", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "OCEAN-BEP20": { "coin": "OCEAN-BEP20", "type": "BEP-20", @@ -24424,10 +24600,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24711,7 +24883,8 @@ "url": "https://api.s0.t.hmny.io" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ONE" }, "ONT-BEP20": { "coin": "ONT-BEP20", @@ -24747,10 +24920,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24862,10 +25031,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -25008,10 +25173,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -25177,7 +25338,7 @@ }, "electrum": [ { - "url": "pink-two.ewm-cx.net:50001", + "url": "pink-one.ewm-cx.net:50001", "protocol": "TCP" } ], @@ -25220,18 +25381,10 @@ "discord": "312541186793406465" } ] - }, - { - "url": "electrum02.chainster.org:50001", - "ws_url": "electrum02.chainster.org:50003", - "contact": [ - { - "discord": "312541186793406465" - } - ] } ], - "explorer_block_url": "block.dws?" + "explorer_block_url": "block.dws?", + "binance_id": "PIVX" }, "PND": { "coin": "PND", @@ -25308,15 +25461,15 @@ }, "derivation_path": "m/44'/81'", "electrum": [ - { - "url": "62.171.189.243:50001", - "protocol": "TCP" - }, { "url": "pot-duo.ewmcx.net:50012", "protocol": "SSL", - "disable_cert_verification": false, "ws_url": "pot-duo.ewmcx.net:50013" + }, + { + "url": "pot-uno.ewmcx.net:50002", + "protocol": "SSL", + "ws_url": "pot-uno.ewmcx.net:50003" } ], "explorer_block_url": "block.dws?" @@ -25326,7 +25479,7 @@ "type": "ERC-20", "name": "PotCoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "potcoin", "livecoinwatch_id": "_POT", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -25386,7 +25539,7 @@ "type": "Matic", "name": "PotCoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "potcoin", "livecoinwatch_id": "_POT", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -25746,10 +25899,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -25879,7 +26028,7 @@ "type": "UTXO", "name": "PRUX", "coinpaprika_id": "prux-prux-coin", - "coingecko_id": "", + "coingecko_id": "prux-coin", "livecoinwatch_id": "", "explorer_url": "https://explorer.prux.info/", "explorer_tx_url": "", @@ -26010,7 +26159,7 @@ "type": "Matic", "name": "Vulcan Forged", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "vulcan-forged", "livecoinwatch_id": "PYR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -26090,10 +26239,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -26219,7 +26364,7 @@ "type": "Matic", "name": "Shiba Inu", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "shiba-inu", "livecoinwatch_id": "SHIB", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -26644,10 +26789,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -27060,126 +27201,8 @@ "ws_url": "electrum3.cipig.net:30050" } ], - "explorer_block_url": "block/" - }, - "QTUM-segwit": { - "coin": "QTUM-segwit", - "type": "QTUM", - "name": "Qtum", - "coinpaprika_id": "qtum-qtum", - "coingecko_id": "qtum", - "livecoinwatch_id": "QTUM", - "explorer_url": "https://explorer.qtum.org/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Qtum Signed Message:\n", - "fname": "Qtum", - "rpcport": 3889, - "pubtype": 58, - "p2shtype": 50, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "qc", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "QTUM", - "txfee": 0, - "dust": 72800, - "mm2": 1, - "force_min_relay_fee": true, - "required_confirmations": 3, - "mature_confirmations": 2000, - "avg_blocktime": 32, - "protocol": { - "type": "QTUM" - }, - "derivation_path": "m/44'/2301'", - "trezor_coin": "Qtum", - "links": { - "github": "https://github.com/qtumproject/qtum", - "homepage": "https://qtum.org" - }, - "electrum": [ - { - "url": "electrum1.cipig.net:10050", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:10050", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:10050", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum1.cipig.net:20050", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30050" - }, - { - "url": "electrum2.cipig.net:20050", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30050" - }, - { - "url": "electrum3.cipig.net:20050", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30050" - } - ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "QTUM" }, "QTUM-ERC20": { "coin": "QTUM-ERC20", @@ -27243,7 +27266,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "QTUM" }, "tQTUM": { "coin": "tQTUM", @@ -27353,116 +27377,6 @@ ], "explorer_block_url": "block/" }, - "tQTUM-segwit": { - "coin": "tQTUM-segwit", - "type": "QTUM", - "name": "QTUM Testnet", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://testnet.qtum.info/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": true, - "currently_enabled": false, - "wallet_only": false, - "fname": "QTUM Testnet", - "rpcport": 13889, - "pubtype": 120, - "p2shtype": 110, - "wiftype": 239, - "segwit": true, - "bech32_hrp": "tq", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "tQTUM", - "txfee": 400000, - "mm2": 1, - "required_confirmations": 1, - "mature_confirmations": 2000, - "avg_blocktime": 32, - "protocol": { - "type": "QTUM" - }, - "electrum": [ - { - "url": "electrum1.cipig.net:10071", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:10071", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:10071", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum1.cipig.net:20071", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30071" - }, - { - "url": "electrum2.cipig.net:20071", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30071" - }, - { - "url": "electrum3.cipig.net:20071", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30071" - } - ], - "explorer_block_url": "block/" - }, "RDD": { "coin": "RDD", "type": "UTXO", @@ -27502,6 +27416,11 @@ "homepage": "https://reddcoin.com" }, "electrum": [ + { + "url": "electrum01.reddcoin.com:50002", + "protocol": "SSL", + "ws_url": "electrum01.reddcoin.com:50004" + }, { "url": "electrum02.reddcoin.com:50002", "protocol": "SSL", @@ -27752,7 +27671,7 @@ "type": "Matic", "name": "Request", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "request-network", "livecoinwatch_id": "REQ", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -28437,10 +28356,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28564,7 +28479,8 @@ "ws_url": "electrum3.cipig.net:30051" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "RVN" }, "SAND-ERC20": { "coin": "SAND-ERC20", @@ -28661,10 +28577,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28764,10 +28676,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28816,10 +28724,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28915,10 +28819,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -29037,10 +28937,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -29175,10 +29075,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -29519,12 +29415,67 @@ ], "explorer_block_url": "block/" }, + "SUM": { + "coin": "SUM", + "type": "UTXO", + "name": "Sumcoin", + "coinpaprika_id": "sum-sumcoin", + "coingecko_id": "sumcoin", + "livecoinwatch_id": "SUM", + "explorer_url": "https://sumexplorer.com/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "Sumcoin Signed Message:\n", + "fname": "Sumcoin", + "isPoS": 1, + "rpcport": 3332, + "pubtype": 63, + "p2shtype": 125, + "wiftype": 187, + "decimals": 6, + "txfee": 0, + "dust": 1000, + "segwit": false, + "bech32_hrp": "sum", + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/552'", + "trezor_coin": "Sumcoin", + "links": { + "github": "https://github.com/sumcoinlabs/sumcoin", + "homepage": "https://www.sumcoin.org" + }, + "electrum": [ + { + "url": "sumpos.electrum-sum.org:50002", + "protocol": "SSL", + "disable_cert_verification": false, + "ws_url": "sumpos.electrum-sum.org:50004" + }, + { + "url": "sumpos2.electrum-sum.org:50002", + "protocol": "SSL", + "disable_cert_verification": false, + "ws_url": "sumpos2.electrum-sum.org:50004" + } + ], + "explorer_block_url": "block/" + }, "SUPERNET": { "coin": "SUPERNET", "type": "Smart Chain", "name": "Supernet", "coinpaprika_id": "unity-supernet", - "coingecko_id": "", + "coingecko_id": "supernet", "livecoinwatch_id": "", "explorer_url": "https://supernet.kmdexplorer.io/", "explorer_tx_url": "", @@ -29707,10 +29658,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -29829,10 +29776,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -30010,10 +29957,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -30061,10 +30004,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -30292,7 +30231,8 @@ "ws_url": "electrum3.cipig.net:30064" } ], - "explorer_block_url": "block.dws?" + "explorer_block_url": "block.dws?", + "binance_id": "SYS" }, "SYS-segwit": { "coin": "SYS-segwit", @@ -30409,14 +30349,15 @@ "ws_url": "electrum3.cipig.net:30064" } ], - "explorer_block_url": "block.dws?" + "explorer_block_url": "block.dws?", + "binance_id": "SYS" }, "TAMA-ERC20": { "coin": "TAMA-ERC20", "type": "ERC-20", "name": "Tamadoge", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "tamadoge", "livecoinwatch_id": "__TAMA", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -30883,10 +30824,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -30931,14 +30868,6 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo", "electrum": [ - { - "url": "1.eu.thc.electrum.dexstats.info:10020", - "contact": [ - { - "discord": "CHMEX#0686" - } - ] - }, { "url": "2.eu.thc.electrum.dexstats.info:10020", "contact": [ @@ -30985,10 +30914,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31044,17 +30969,6 @@ } ] }, - { - "url": "2.eu.tokel.electrum.dexstats.info:10077", - "contact": [ - { - "email": "chmex@dexstats.info" - }, - { - "discord": "chmex#0686" - } - ] - }, { "url": "1.eu.tokel.electrum.dexstats.info:11077", "protocol": "SSL", @@ -31067,19 +30981,6 @@ } ], "ws_url": "1.eu.tokel.electrum.dexstats.info:9077" - }, - { - "url": "2.eu.tokel.electrum.dexstats.info:11077", - "protocol": "SSL", - "contact": [ - { - "email": "chmex@dexstats.info" - }, - { - "discord": "chmex#0686" - } - ], - "ws_url": "2.eu.tokel.electrum.dexstats.info:9077" } ], "explorer_block_url": "block/" @@ -31179,10 +31080,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31270,10 +31167,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31322,10 +31215,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31422,10 +31311,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31586,10 +31471,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31638,10 +31519,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31724,7 +31601,7 @@ "type": "AVX-20", "name": "TrueUSD", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "true-usd", "livecoinwatch_id": "TUSD", "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", @@ -31772,7 +31649,7 @@ "type": "FTM-20", "name": "TrueUSD", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "true-usd", "livecoinwatch_id": "TUSD", "explorer_url": "https://ftmscan.com/", "explorer_tx_url": "", @@ -31807,10 +31684,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -31989,10 +31866,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -32155,6 +32028,12 @@ "protocol": "SSL", "disable_cert_verification": false, "ws_url": "failover.trc-uis.ewmcx.biz:50003" + }, + { + "url": "uis-uno.ewmcx.net:50002", + "protocol": "SSL", + "disable_cert_verification": false, + "ws_url": "uis-uno.ewmcx.net:50003" } ], "explorer_block_url": "block/" @@ -32464,10 +32343,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -32864,10 +32739,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -32920,10 +32791,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -33082,6 +32953,57 @@ "decimals": 6, "avg_blocktime": 1.8, "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, + "USDC-PLG20_OLD": { + "coin": "USDC-PLG20_OLD", + "type": "Matic", + "name": "USD Coin (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "USDC", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "USD Coin (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 6, + "avg_blocktime": 1.8, + "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { @@ -33116,7 +33038,7 @@ "type": "BEP-20", "name": "USDD", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "usdd", "livecoinwatch_id": "USDD", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -33146,10 +33068,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -33307,10 +33225,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -33628,10 +33546,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -33894,10 +33808,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34123,56 +34033,8 @@ "url": "88.99.26.209:5102" } ], - "explorer_block_url": "block/" - }, - "VIA-segwit": { - "coin": "VIA-segwit", - "type": "UTXO", - "name": "Viacoin", - "coinpaprika_id": "via-viacoin", - "coingecko_id": "viacoin", - "livecoinwatch_id": "VIA", - "explorer_url": "https://explorer.viacoin.org/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Viacoin Signed Message:\n", - "fname": "Viacoin", - "rpcport": 5222, - "pubtype": 71, - "p2shtype": 33, - "wiftype": 199, - "txfee": 100000, - "dust": 54600, - "required_confirmations": 7, - "mature_confirmations": 3600, - "avg_blocktime": 24, - "segwit": true, - "bech32_hrp": "via", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "VIA", - "mm2": 1, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/14'", - "trezor_coin": "Viacoin", - "links": { - "github": "https://github.com/viacoin", - "homepage": "https://viacoin.org" - }, - "electrum": [ - { - "url": "88.99.26.209:5102" - } - ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "VIA" }, "VITE-BEP20": { "coin": "VITE-BEP20", @@ -34208,10 +34070,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34225,53 +34083,6 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "VRM": { - "coin": "VRM", - "type": "UTXO", - "name": "Verium Reserve", - "coinpaprika_id": "vrm-veriumreserve", - "coingecko_id": "", - "livecoinwatch_id": "VRM", - "explorer_url": "https://explorer-vrm.vericonomy.com/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "Verium Reserve", - "rpcport": 33987, - "pubtype": 70, - "p2shtype": 132, - "wiftype": 198, - "txfee": 100000, - "force_min_relay_fee": true, - "isPoS": 1, - "mm2": 1, - "required_confirmations": 2, - "avg_blocktime": 240, - "protocol": { - "type": "UTXO" - }, - "electrum": [ - { - "url": "electrum01-vrm.vericonomy.com:50001", - "contact": [ - { - "email": "dev@vericoin.info" - }, - { - "twitter": "vericonomy" - }, - { - "github": "VeriConomy" - } - ] - } - ], - "explorer_block_url": "block/" - }, "VRSC": { "coin": "VRSC", "type": "Smart Chain", @@ -34428,6 +34239,20 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo", "electrum": [ + { + "url": "electrum.grms.pw:17485", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ] + }, { "url": "electrum1.grms.pw:17485", "contact": [ @@ -34442,6 +34267,50 @@ } ] }, + { + "url": "electrum2.grms.pw:17485", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ] + }, + { + "url": "electrum3.grms.pw:17485", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ] + }, + { + "url": "electrum.grms.pw:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ], + "ws_url": "electrum.grms.pw:50004" + }, { "url": "electrum1.grms.pw:50002", "protocol": "SSL", @@ -34457,6 +34326,87 @@ } ], "ws_url": "electrum1.grms.pw:50004" + }, + { + "url": "electrum2.grms.pw:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ], + "ws_url": "electrum2.grms.pw:50004" + }, + { + "url": "electrum3.grms.pw:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@grms.pw" + }, + { + "discord": "miner113#7864" + }, + { + "github": "Miner113" + } + ], + "ws_url": "electrum3.grms.pw:50004" + } + ], + "explorer_block_url": "block/" + }, + "VPRM": { + "coin": "VPRM", + "type": "Smart Chain", + "name": "Vaporum", + "coinpaprika_id": "vprm-vaporum-coin", + "coingecko_id": "vaporum-coin", + "livecoinwatch_id": "VPRM", + "explorer_url": "http://explorer.vaporumcoin.us/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "Komodo Signed Message:\n", + "asset": "VPRM", + "fname": "Vaporum", + "rpcport": 51609, + "txversion": 4, + "overwintered": 1, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 30, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/141'", + "trezor_coin": "Komodo", + "electrum": [ + { + "url": "electrumx1.vaporumcoin.us:50001", + "contact": [ + { + "github": "VaporumCoin" + } + ] + }, + { + "url": "electrumx2.vaporumcoin.us:50001", + "contact": [ + { + "github": "VaporumCoin" + } + ] } ], "explorer_block_url": "block/" @@ -34502,9 +34452,6 @@ { "url": "88.99.26.209:5028" }, - { - "url": "electrumx-brn.webhop.me:55001" - }, { "url": "electrumx.javerity.com:5885", "ws_url": "electrumx.javerity.com:5887", @@ -34562,9 +34509,6 @@ { "url": "88.99.26.209:5028" }, - { - "url": "electrumx-brn.webhop.me:55001" - }, { "url": "electrumx.javerity.com:5885", "ws_url": "electrumx.javerity.com:5887", @@ -34612,10 +34556,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34699,7 +34639,7 @@ "type": "Matic", "name": "Wrapped Bitcoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "wrapped-bitcoin", "livecoinwatch_id": "WBTC", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -34948,10 +34888,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35005,10 +34941,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -35129,7 +35065,7 @@ "type": "BEP-20", "name": "Onyxcoin", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "chain-2", "livecoinwatch_id": "XCN", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -35159,10 +35095,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35278,10 +35210,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35361,7 +35289,7 @@ "type": "Matic", "name": "StraitsX Indonesian Rupiah", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "straitsx-indonesia-rupiah", "livecoinwatch_id": "XIDR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -35441,10 +35369,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35707,12 +35631,25 @@ { "url": "fulcrum.ergon.network:52138", "protocol": "SSL", - "disable_cert_verification": true + "ws_url": "fulcrum.ergon.network:52140", + "contact": [ + { + "email": "licho@ergon.moe" + }, + { + "telegram": "licho92karol" + } + ] }, { "url": "la.ask.systems:52138", "protocol": "SSL", - "disable_cert_verification": true + "ws_url": "la.ask.systems:52140", + "contact": [ + { + "telegram": "@fsmv0" + } + ] }, { "url": "xrg_ful.googol.cash:52138", @@ -35756,10 +35693,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35778,7 +35711,7 @@ "type": "ERC-20", "name": "XRP", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "ripple", "livecoinwatch_id": "XRP", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -35985,10 +35918,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36035,6 +35964,10 @@ { "url": "electrumx1.vanillacash.info:50011", "ws_url": "electrumx1.vanillacash.info:50013" + }, + { + "url": "electrumx2.vanillacash.info:50011", + "ws_url": "electrumx2.vanillacash.info:50013" } ], "explorer_block_url": "block.dws?" @@ -36073,10 +36006,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36243,9 +36172,19 @@ "electrum": [ { "url": "88.99.26.209:5036" + }, + { + "url": "electrumx-verge.cloud:50001", + "protocol": "TCP" + }, + { + "url": "electrumx-verge.cloud:50002", + "protocol": "SSL", + "ws_url": "electrumx-verge.cloud:50004" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "XVG" }, "XVS-BEP20": { "coin": "XVS-BEP20", @@ -36281,10 +36220,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36380,10 +36315,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36502,10 +36433,10 @@ "gui_auth": true }, { - "url": "https://rpc.fantom.network" + "url": "https://fantom.drpc.org" }, { - "url": "https://rpc2.fantom.network" + "url": "https://fantom-pokt.nodies.app" } ], "explorer_block_url": "block/" @@ -36639,10 +36570,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36835,7 +36762,8 @@ "ws_url": "electrum3.cipig.net:30058" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ZEC" }, "ZER": { "coin": "ZER", @@ -36981,10 +36909,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -37033,11 +36957,6 @@ { "url": "207.180.252.200:50011", "protocol": "TCP" - }, - { - "url": "zeta-seed-c.zetacoin.tech:50012", - "protocol": "SSL", - "disable_cert_verification": false } ], "explorer_block_url": "block.dws?" @@ -37076,10 +36995,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -37401,7 +37316,7 @@ "txfee": 10000, "mm2": 1, "required_confirmations": 2, - "avg_blocktime": 60, + "avg_blocktime": 120, "protocol": { "type": "UTXO" }, @@ -37414,7 +37329,8 @@ "ws_url": "electrumx.runonflux.io:50004" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FLUX" }, "FLUX-ERC20": { "coin": "FLUX-ERC20", @@ -37474,7 +37390,8 @@ } } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FLUX" }, "FLUX-BEP20": { "coin": "FLUX-BEP20", @@ -37510,10 +37427,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -37525,7 +37438,8 @@ } ], "token_address_url": "tokentxns?a=", - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "FLUX" }, "HPY-QRC20": { "coin": "HPY-QRC20", @@ -39718,10 +39632,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39830,10 +39740,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40214,7 +40120,8 @@ ] } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "XEC" }, "SIBM-BEP20": { "coin": "SIBM-BEP20", @@ -40250,10 +40157,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40389,7 +40292,8 @@ "currently_enabled": false, "wallet_only": false, "light_wallet_d_servers": [ - "https://zombie.dragonhound.info:443" + "https://zombie.dragonhound.info:443", + "https://zombie.dragonhound.info:1443" ], "asset": "ZOMBIE", "fname": "Zombie", @@ -40508,10 +40412,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40557,18 +40457,6 @@ "type": "UTXO" }, "electrum": [ - { - "url": "electrum1.runebase.io:50001", - "protocol": "TCP", - "contact": [ - { - "email": "support@runebase.io" - }, - { - "discord": "Bago#7842" - } - ] - }, { "url": "electrum3.runebase.io:50001", "protocol": "TCP", @@ -40702,10 +40590,6 @@ "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "nodes": [ - { - "url": "https://node.komodo.earth:8080/binance", - "gui_auth": true - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40752,7 +40636,8 @@ "url": "https://cosmos.komodo.earth/" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ATOM" }, "IRIS": { "coin": "IRIS", @@ -40791,7 +40676,8 @@ "url": "https://rpc.irishub-1.irisnet.org" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "IRIS" }, "OSMO": { "coin": "OSMO", @@ -40829,7 +40715,8 @@ "url": "https://osmosis-mainnet-rpc.allthatnode.com:26657/" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "OSMO" }, "ATOM-IBC_IRIS": { "coin": "ATOM-IBC_IRIS", @@ -40868,7 +40755,8 @@ "url": "https://rpc.irishub-1.irisnet.org" } ], - "explorer_block_url": "block/" + "explorer_block_url": "block/", + "binance_id": "ATOM" }, "MAZA": { "coin": "MAZA", @@ -41146,14 +41034,14 @@ ], "explorer_block_url": "block/" }, - "BKC": { - "coin": "BKC", + "KIIRO": { + "coin": "KIIRO", "type": "UTXO", - "name": "Bunkercoin", - "coinpaprika_id": "bkc-bunkercoin", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://bkcexplorer.bunker.mt/", + "name": "Kiiro", + "coinpaprika_id": "kiiro-kiirocoin", + "coingecko_id": "kiirocoin", + "livecoinwatch_id": "KIIRO", + "explorer_url": "https://explorer.kiirocoin.org/", "explorer_tx_url": "", "explorer_address_url": "", "supported": [], @@ -41161,37 +41049,92 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "sign_message_prefix": "Bunkercoin Signed Message:\n", - "fname": "Bunkercoin", - "rpcport": 22555, - "pubtype": 25, - "p2shtype": 22, - "wiftype": 158, - "txfee": 1000000, - "force_min_relay_fee": true, - "dust": 1000000, + "sign_message_prefix": "Zcoin Signed Message:\n", + "fname": "Kiiro", + "rpcport": 8999, + "pubtype": 45, + "p2shtype": 7, + "wiftype": 210, + "txfee": 1000, "mm2": 1, - "required_confirmations": 10, - "avg_blocktime": 60, + "required_confirmations": 3, + "avg_blocktime": 150, "protocol": { "type": "UTXO" }, - "derivation_path": "m/44'/3'", "links": { - "github": "https://github.com/bunkercoin/bunkercoin", - "homepage": "https://bunkercoin.org" + "github": "https://github.com/kiirocoin/kiiro", + "homepage": "https://kiirocoin.org" }, "electrum": [ { - "url": "bunkerelectrum.bunker.mt:50001", - "protocol": "TCP", + "url": "electrum1.kiirocoin.org:50002", + "protocol": "SSL", "contact": [ { - "discord": "bunkermatty#5308" + "github": "https://github.com/kiirocoin/electrum-kiiro/issues" } - ] + ], + "ws_url": "electrum1.kiirocoin.org:50004" + }, + { + "url": "electrum3.kiirocoin.org:50002", + "protocol": "SSL", + "contact": [ + { + "github": "https://github.com/kiirocoin/electrum-kiiro/issues" + } + ], + "ws_url": "electrum3.kiirocoin.org:50004" } ], "explorer_block_url": "block/" + }, + "KIIRO-BEP20": { + "coin": "KIIRO-BEP20", + "type": "BEP-20", + "name": "Kiiro", + "coinpaprika_id": "kiiro-kiirocoin", + "coingecko_id": "kiirocoin", + "livecoinwatch_id": "KIIRO", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Kiiro", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x347862372f7C8f83D69025234367Ac11c5241Db3" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x347862372f7C8f83D69025234367Ac11c5241Db3", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" } } \ No newline at end of file diff --git a/assets/swap_share/swap_share_atomicdex_logo.png b/assets/swap_share/swap_share_atomicdex_logo.png index dcb4b02f6..748eb7472 100644 Binary files a/assets/swap_share/swap_share_atomicdex_logo.png and b/assets/swap_share/swap_share_atomicdex_logo.png differ diff --git a/assets/swap_share/swap_share_qrcode.png b/assets/swap_share/swap_share_qrcode.png index bba264014..07f03ed09 100644 Binary files a/assets/swap_share/swap_share_qrcode.png and b/assets/swap_share/swap_share_qrcode.png differ diff --git a/coins_ci.json b/coins_ci.json index 8868624db..44951ee53 100644 --- a/coins_ci.json +++ b/coins_ci.json @@ -1,3 +1,3 @@ { - "coins_repo_commit": "8cb5983ab858dde915e8de3175c15cd0f5572356" + "coins_repo_commit": "c360d9b2e0545fe601b62651728c638687bb0829" } \ No newline at end of file diff --git a/ios/Podfile.lock b/ios/Podfile.lock index f660c0d86..8361e1424 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -122,7 +122,7 @@ PODS: - SDWebImage (5.18.3): - SDWebImage/Core (= 5.18.3) - SDWebImage/Core (5.18.3) - - share (0.0.1): + - share_plus (0.0.1): - Flutter - shared_preferences_ios (0.0.1): - Flutter @@ -147,7 +147,7 @@ DEPENDENCIES: - mobile_scanner (from `.symlinks/plugins/mobile_scanner/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) - - share (from `.symlinks/plugins/share/ios`) + - share_plus (from `.symlinks/plugins/share_plus/ios`) - shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`) - sqflite (from `.symlinks/plugins/sqflite/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) @@ -201,8 +201,8 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/package_info_plus/ios" path_provider_ios: :path: ".symlinks/plugins/path_provider_ios/ios" - share: - :path: ".symlinks/plugins/share/ios" + share_plus: + :path: ".symlinks/plugins/share_plus/ios" shared_preferences_ios: :path: ".symlinks/plugins/shared_preferences_ios/ios" sqflite: @@ -242,7 +242,7 @@ SPEC CHECKSUMS: Protobuf: 351e9022fe13a6e2af00e9aefc22077cb88520f8 ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 SDWebImage: 96e0c18ef14010b7485210e92fac888587ebb958 - share: 0b2c3e82132f5888bccca3351c504d0003b3b410 + share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68 shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png index e2da2fc8c..975bf5274 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png index a8bb66bb1..b78fcaf52 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png index c5aec86f5..47aacac74 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png index 264da18d4..94922b070 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png index 1e0cbaeb8..81bd587c7 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png index bb4d4879e..5042c3f6e 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png index a4eb7468f..246efaae8 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png index c5aec86f5..47aacac74 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png index 2a0507afd..bb8f417b4 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png index 5404b1d53..ce032818b 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png index 5404b1d53..ce032818b 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png index 0a3707491..75522d28f 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png index 4448ea590..0f0fe2db9 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png index d4295456e..8d0e685c2 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png index 0de3cfb51..d4adcfec2 100644 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png and b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppLogo.imageset/Contents.json b/ios/Runner/Assets.xcassets/AppLogo.imageset/Contents.json index 05b64786a..30f3561f6 100644 --- a/ios/Runner/Assets.xcassets/AppLogo.imageset/Contents.json +++ b/ios/Runner/Assets.xcassets/AppLogo.imageset/Contents.json @@ -11,6 +11,7 @@ "scale" : "2x" }, { + "filename" : "app_logo-3x.png", "idiom" : "universal", "scale" : "3x" } diff --git a/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-1x.png b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-1x.png index 2264c3422..76170dea1 100644 Binary files a/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-1x.png and b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-1x.png differ diff --git a/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-2x.png b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-2x.png index 2264c3422..e47f8bdf1 100644 Binary files a/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-2x.png and b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-2x.png differ diff --git a/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-3x.png b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-3x.png new file mode 100644 index 000000000..0d548f4ae Binary files /dev/null and b/ios/Runner/Assets.xcassets/AppLogo.imageset/app_logo-3x.png differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@2x.png index 5404b1d53..ce032818b 100644 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@2x.png and b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@2x.png differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@3x.png index 0a3707491..75522d28f 100644 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@3x.png and b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-60x60@3x.png differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-72x72@1x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-72x72@1x.png index ea6670094..c3ef1cfe1 100644 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-72x72@1x.png and b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Icon-App-72x72@1x.png differ diff --git a/lib/app_config/app_config.dart b/lib/app_config/app_config.dart index e71d1e7e2..1dbb6a4bc 100644 --- a/lib/app_config/app_config.dart +++ b/lib/app_config/app_config.dart @@ -48,8 +48,8 @@ class AppConfig { String get appCompanyLong => 'Gleec'; String get appCompanyShort => 'Gleec'; - List get defaultCoins => ['GLEEC', 'BTC', 'KMD']; - List get coinsFiat => ['BTC', 'GLEEC']; + List get defaultCoins => ['GLEEC', 'BTC-segwit', 'KMD']; + List get coinsFiat => ['BTC-segwit', 'GLEEC']; List get walletOnlyCoins => [ 'ARRR-BEP20', 'ATOM', @@ -84,6 +84,14 @@ class AppConfig { 'UST-PLG20', 'XPM', 'XVC-OLD', + 'SXP-BEP20', + 'VOTE2023', + 'GALA-BEP20', + 'SXP-ERC20', + 'BBK', + 'RDD', + 'PINK', + 'POT' ]; List get protocolSuffixes => [ diff --git a/lib/app_config/coins_updater.dart b/lib/app_config/coins_updater.dart index ecf8fbb3a..7b2f4bccc 100644 --- a/lib/app_config/coins_updater.dart +++ b/lib/app_config/coins_updater.dart @@ -1,10 +1,11 @@ import 'dart:async'; +import 'dart:convert'; import 'dart:io'; -import 'dart:isolate'; +import 'package:flutter/foundation.dart'; import 'package:flutter/services.dart'; import 'package:http/http.dart' as http; import 'package:komodo_dex/utils/log.dart'; -import 'package:path_provider/path_provider.dart'; +import 'package:komodo_dex/utils/utils.dart'; /// Provides methods for fetching coin data either from local assets or a remote Git repository. /// @@ -49,109 +50,152 @@ class CoinUpdater { String _cachedConfig; String _cachedCoins; - Future _fetchAsset(String path) async { - return await rootBundle.loadString(path); - } + Future _fetchAsset(String path) => + rootBundle.loadString(path, cache: false); Future _getLocalFile(String filename) async { - final directory = await getApplicationDocumentsDirectory(); - return File('${directory.path}/$filename'); + final directory = await applicationDocumentsDirectory; + return File('${directory.path}/config_updates/$filename'); } - Future _fetchOrCache( - String localPath, - String remoteUrl, - String cacheName, - String cacheProperty, - ) async { - try { - if (cacheProperty != null) { - return cacheProperty; - } + Future _fetchCoinFileOrAsset(UpdateCacheParams params) async { + File cacheFile; + String property; - File cacheFile = await _getLocalFile(cacheName); + try { + try { + cacheFile = await _getLocalFile(params.cacheFileName); - final cacheFileExists = await cacheFile.exists(); + final maybeCacheValue = await compute( + _tryReadValidJsonFile, + cacheFile.path, + ); - if (isUpdateEnabled) { - scheduleMicrotask( - () => _updateCacheInBackground(remoteUrl, cacheFile), + property = maybeCacheValue ?? property; + } catch (e) { + Log( + 'CoinUpdater', + 'Error reading coin config cache file: ${e.toString()}', ); } - if (cacheFileExists) { - cacheProperty = await cacheFile.readAsString(); + property ??= await _fetchAsset(params.localPath); - return cacheProperty; - } else { - String localData = await _fetchAsset(localPath); - cacheProperty = localData; - return localData; - } + return property; } catch (e) { - // If there's an error, first try to return the cached value, - // if that's null too, then fall back to the local asset. - if (cacheProperty != null) { - return cacheProperty; - } else { - return await _fetchAsset(localPath); + Log('CoinUpdater', 'Error fetching or caching ${params.cacheKey}: $e'); + rethrow; + } finally { + if (isUpdateEnabled) { + _startUpdateCacheInBackground(params.remoteUrl, cacheFile); } } } - void _updateCacheInBackground(String remoteUrl, File cacheFile) async { - final ReceivePort receivePort = ReceivePort(); - + void _startUpdateCacheInBackground(String remoteUrl, File cacheFile) async { try { - await Isolate.spawn( - _isolateEntry, - [remoteUrl, cacheFile.path], - onExit: receivePort.sendPort, - errorsAreFatal: false, + Log('CoinUpdater', 'Updating coins in background...'); + await compute, void>( + _updateFileFromServer, + { + 'remoteUrl': remoteUrl, + 'filePath': cacheFile.path, + }, ); - receivePort.listen((data) { - // Close the receive port when the isolate is done - receivePort.close(); - Log( - 'CoinUpdater', - 'Coin updater updated coins to latest commit on branch ' - '$coinsRepoBranch from $coinsRepoUrl. \n $remoteUrl', - ); - }); + Log( + 'CoinUpdater', + 'Coin updater updated coins to latest commit on branch $coinsRepoBranch' + ' from $coinsRepoUrl. Changes will take effect on next app launch.', + ); } catch (e) { - Log('CoinUpdater', 'Error updating coins: $e'); - } - } - - static void _isolateEntry(List data) async { - final String remoteUrl = data[0]; - final String filePath = data[1]; - - final response = await http.get(Uri.parse(remoteUrl)); - if (response.statusCode == 200) { - final file = File(filePath); - file.writeAsString(response.body); + Log('CoinUpdater', 'Error updating coins in background: $e'); } } Future getConfig() async { - _cachedConfig = await _fetchOrCache( - localAssetPathConfig, - remotePathConfig, - 'coins_config_cache.json', - _cachedConfig, + return _cachedConfig ??= await _fetchCoinFileOrAsset( + UpdateCacheParams( + localPath: localAssetPathConfig, + remoteUrl: remotePathConfig, + cacheFileName: 'coins_config_cache.json', + cacheKey: 'config', + ), ); - return _cachedConfig; } Future getCoins() async { - _cachedCoins = await _fetchOrCache( - localAssetPathCoins, - remotePathCoins, - 'coins_cache.json', - _cachedCoins, + return _cachedCoins ??= await _fetchCoinFileOrAsset( + UpdateCacheParams( + localPath: localAssetPathCoins, + remoteUrl: remotePathCoins, + cacheFileName: 'coins_cache.json', + cacheKey: 'coins', + ), ); - return _cachedCoins; + } +} + +class UpdateCacheParams { + final String localPath; + final String remoteUrl; + final String cacheFileName; + final String cacheKey; + + UpdateCacheParams({ + @required this.localPath, + @required this.remoteUrl, + @required this.cacheFileName, + @required this.cacheKey, + }); +} + +/// Isolate-safe method for returning the contents of a JSON file if it is valid +Future _tryReadValidJsonFile(String path) async { + try { + final contents = await File(path).readAsString(); + + if (!_isJsonValid(contents)) return null; + + return contents; + } catch (e) { + return null; + } +} + +/// An isolate-safe method for checking if a string is valid JSON. +bool _isJsonValid(String json) { + try { + if (json?.isEmpty ?? true) return false; + + jsonDecode(json); + return true; + } catch (e) { + return false; + } +} + +/// Isolate-safe method for fetching and updating a JSON file from a +/// remote server. +Future _updateFileFromServer(Map params) async { + final String remoteUrl = params['remoteUrl']; + final String filePath = params['filePath']; + + try { + final response = await http.get(Uri.parse(remoteUrl)); + + if (response.statusCode != 200 || !_isJsonValid(response.body)) return; + + final file = File(filePath); + + if (!file.existsSync()) { + file.createSync(recursive: true); + } + + file.writeAsStringSync(response.body, flush: true); + } catch (e) { + print('Error in isolate: $e'); + + rethrow; } } diff --git a/lib/app_config/theme_data.dart b/lib/app_config/theme_data.dart index e166a5473..cfe001854 100644 --- a/lib/app_config/theme_data.dart +++ b/lib/app_config/theme_data.dart @@ -126,8 +126,8 @@ SliderThemeData get _sliderThemeDataLight => SliderThemeData( ColorScheme get _colorScheme => const ColorScheme( primary: Color.fromRGBO(42, 54, 71, 1), primaryVariant: Color.fromRGBO(28, 36, 48, 1), - secondary: Color.fromRGBO(57, 161, 238, 1), - secondaryVariant: Color.fromRGBO(57, 161, 238, 1), + secondary: Color.fromRGBO(38, 179, 255, 1), + secondaryVariant: Color.fromRGBO(38, 179, 255, 1), surface: Color.fromRGBO(42, 54, 71, 1), background: Color.fromRGBO(30, 42, 58, 1), error: Color.fromRGBO(202, 78, 61, 1), @@ -143,8 +143,8 @@ ColorScheme get _colorScheme => const ColorScheme( ColorScheme get _colorSchemeLight => const ColorScheme( primary: Color.fromRGBO(255, 255, 255, 1), primaryVariant: Color.fromRGBO(183, 187, 191, 1), - secondary: Color.fromRGBO(60, 201, 191, 1), - secondaryVariant: Color.fromRGBO(60, 201, 191, 1), + secondary: Color.fromRGBO(38, 179, 255, 1), + secondaryVariant: Color.fromRGBO(38, 179, 255, 1), surface: Color.fromRGBO(255, 255, 255, 1), background: Color.fromRGBO(245, 245, 245, 1), error: Color.fromRGBO(202, 78, 61, 1), diff --git a/lib/blocs/swap_history_bloc.dart b/lib/blocs/swap_history_bloc.dart index 83c082669..e3d0c364e 100644 --- a/lib/blocs/swap_history_bloc.dart +++ b/lib/blocs/swap_history_bloc.dart @@ -49,6 +49,9 @@ class SwapHistoryBloc implements BlocBase { case 'MakerPaymentSpent': status = Status.SWAP_SUCCESSFUL; break; + case 'MakerPaymentSpentByWatcher': + status = Status.SWAP_SUCCESSFUL; + break; case 'TakerPaymentSpent': status = Status.SWAP_SUCCESSFUL; break; diff --git a/lib/drawer/drawer.dart b/lib/drawer/drawer.dart index 15c09e6ec..0b398ac58 100644 --- a/lib/drawer/drawer.dart +++ b/lib/drawer/drawer.dart @@ -57,8 +57,8 @@ class _AppDrawerState extends State { begin: Alignment.centerRight, stops: [0.01, 1], colors: [ - Color.fromRGBO(98, 90, 229, 1), - Color.fromRGBO(45, 184, 240, 1), + Color.fromRGBO(0, 30, 34, 1), + Color.fromRGBO(38, 179, 255, 1), ], ), ), diff --git a/lib/model/order_book_provider.dart b/lib/model/order_book_provider.dart index 95ebab149..942574370 100644 --- a/lib/model/order_book_provider.dart +++ b/lib/model/order_book_provider.dart @@ -130,8 +130,8 @@ class SyncOrderbook { /// [ChangeNotifier] proxies linked to this singleton. final Set _providers = {}; - Map _orderBooks = {}; // {'BTC/KMD': Orderbook(),} - Map _orderBookErrors = {}; // {'BTC/KMD': 'error1',} + Map _orderBooks = {}; // {'BTC-segwit/KMD': Orderbook(),} + Map _orderBookErrors = {}; // {'BTC-segwit/KMD': 'error1',} Map _orderbooksDepth = {}; CoinsPair _activePair; bool _updatingDepth = false; diff --git a/lib/model/recent_swaps.dart b/lib/model/recent_swaps.dart index ae7cb70ef..432920bcc 100644 --- a/lib/model/recent_swaps.dart +++ b/lib/model/recent_swaps.dart @@ -225,7 +225,7 @@ class SwapEEL { }); factory SwapEEL.fromJson(Map json) => SwapEEL( - data: json['data'] == null ? null : SwapEF.fromJson(json['data']), + data: json['data'] is Map ? SwapEF.fromJson(json['data']) : null, type: json['type'] ?? '', ); diff --git a/lib/screens/authentification/authenticate_page.dart b/lib/screens/authentification/authenticate_page.dart index 8f77e0034..b85443b00 100644 --- a/lib/screens/authentification/authenticate_page.dart +++ b/lib/screens/authentification/authenticate_page.dart @@ -1,5 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; +import 'package:komodo_dex/utils/log.dart'; +import 'package:komodo_dex/widgets/repeated_tap_detector.dart'; import '../../blocs/authenticate_bloc.dart'; import '../../blocs/wallet_bloc.dart'; import '../../localizations.dart'; @@ -119,8 +121,9 @@ class BuildScreenAuthMultiWallets extends StatelessWidget { ), ), Align( - alignment: Alignment.centerRight, - child: const SelectLanguageButton()), + alignment: Alignment.centerRight, + child: const SelectLanguageButton(), + ), SizedBox(height: 16), IntrinsicHeight( child: Row( @@ -251,13 +254,7 @@ class _BuildScreenAuthState extends State { Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - SizedBox( - height: 240, - width: 240, - child: Image.asset(Theme.of(context).brightness == - Brightness.light - ? 'assets/branding/mark_and_text_vertical_dark.png' - : 'assets/branding/mark_and_text_vertical_light.png')), + _FullAppLogo(), ], ), Padding( @@ -295,6 +292,45 @@ class _BuildScreenAuthState extends State { } } +class _FullAppLogo extends StatelessWidget { + const _FullAppLogo({ + Key key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return RepeatedTapDetector( + onRepeatedTap: () => _downloadLogs(context), + tapTriggerCount: 7, + child: SizedBox( + height: 240, + width: 240, + child: Image.asset(Theme.of(context).brightness == Brightness.light + ? 'assets/branding/mark_and_text_vertical_dark.png' + : 'assets/branding/mark_and_text_vertical_light.png')), + ); + } + + /// If the user taps the branding logo 7 times in a row, the app will + /// download the logs and share them via the system share sheet. This is so + /// that users can download logs even if they can't access the settings page. + /// E.g. if the app crashes on login. + void _downloadLogs(BuildContext context) { + Log.downloadLogs().catchError((e) { + _showSnackbar(context, e.toString()); + }); + } + + void _showSnackbar(BuildContext context, String message) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + duration: const Duration(seconds: 3), + ), + ); + } +} + class CreateWalletButton extends StatelessWidget { const CreateWalletButton({Key key}) : super(key: key); diff --git a/lib/screens/dex/orders/swap/detailed_swap_steps.dart b/lib/screens/dex/orders/swap/detailed_swap_steps.dart index 463b8a9e1..b4ef1e040 100644 --- a/lib/screens/dex/orders/swap/detailed_swap_steps.dart +++ b/lib/screens/dex/orders/swap/detailed_swap_steps.dart @@ -69,8 +69,8 @@ class _DetailedSwapStepsState extends State { if (index + 1 > swap.result.successEvents.length) { return SwapStepStatus.failed; } - if (swap.result.events[index].event.type == - swap.result.successEvents[index]) { + if (swap.result.successEvents + .any((String e) => e == swap.result.events[index].event.type)) { return SwapStepStatus.success; } else { return SwapStepStatus.failed; diff --git a/lib/screens/dex/orders/swap/final_trade_success.dart b/lib/screens/dex/orders/swap/final_trade_success.dart index f7910d724..436c0daee 100644 --- a/lib/screens/dex/orders/swap/final_trade_success.dart +++ b/lib/screens/dex/orders/swap/final_trade_success.dart @@ -1,18 +1,20 @@ import 'dart:io'; import 'dart:ui' as ui; +import 'package:cross_file/cross_file.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:share_plus/share_plus.dart'; + import '../../../../app_config/app_config.dart'; import '../../../../blocs/dialog_bloc.dart'; import '../../../../localizations.dart'; import '../../../../model/swap.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import '../../../dex/orders/swap/detail_swap.dart'; -import '../../../dex/orders/swap/share_preview_overlay.dart'; import '../../../../utils/utils.dart'; import '../../../../widgets/swap_share_card.dart'; -import 'package:share/share.dart'; +import '../../../dex/orders/swap/detail_swap.dart'; +import '../../../dex/orders/swap/share_preview_overlay.dart'; class FinalTradeSuccess extends StatefulWidget { const FinalTradeSuccess({@required this.swap}); @@ -167,10 +169,9 @@ class _FinalTradeSuccessState extends State ' on my phone! You can try it too: https://gleec.com\n' '#blockchain #dex #gleecdex #gleec #atomicswap'; - await Share.shareFiles( - [imgFile.path], + await Share.shareXFiles( + [XFile(imgFile.path, mimeType: 'image/png')], text: shareText, - mimeTypes: ['image/png'], ); if (Platform.isIOS) { diff --git a/lib/screens/import-export/export_page.dart b/lib/screens/import-export/export_page.dart index fca8a60d6..ae1e90bcf 100644 --- a/lib/screens/import-export/export_page.dart +++ b/lib/screens/import-export/export_page.dart @@ -1,26 +1,28 @@ import 'dart:convert'; import 'dart:io'; -import 'package:intl/intl.dart'; +import 'package:cross_file/cross_file.dart'; import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:share_plus/share_plus.dart'; + +import '../../localizations.dart'; import '../../model/addressbook_provider.dart'; import '../../model/backup.dart'; +import '../../model/export_import_list_item.dart'; import '../../model/recent_swaps.dart'; import '../../model/swap.dart'; import '../../model/swap_provider.dart'; -import '../authentification/lock_screen.dart'; -import '../import-export/export_import_success.dart'; +import '../../services/db/database.dart'; import '../../utils/encryption_tool.dart'; import '../../utils/utils.dart'; import '../../widgets/password_visibility_control.dart'; import '../../widgets/primary_button.dart'; -import 'package:path_provider/path_provider.dart'; -import 'package:provider/provider.dart'; -import 'package:share/share.dart'; -import '../../model/export_import_list_item.dart'; -import '../../services/db/database.dart'; -import '../../localizations.dart'; +import '../authentification/lock_screen.dart'; import '../import-export/export_import_list.dart'; +import '../import-export/export_import_success.dart'; class ExportPage extends StatefulWidget { @override @@ -355,8 +357,10 @@ class _ExportPageState extends State { final encrypted = EncryptionTool().encryptData(_ctrlPass1.text, encoded); await tempFile.writeAsString(encrypted); - await Share.shareFiles([tempFile.path], - mimeTypes: ['application/octet-stream'], subject: 'atomicDEX_backup'); + await Share.shareXFiles( + [XFile(tempFile.path, mimeType: 'application/octet-stream')], + subject: 'atomicDEX_backup', + ); setState(() { _done = true; }); diff --git a/lib/screens/markets/order_book_chart.dart b/lib/screens/markets/order_book_chart.dart index 6030ece94..53aa08241 100644 --- a/lib/screens/markets/order_book_chart.dart +++ b/lib/screens/markets/order_book_chart.dart @@ -16,7 +16,6 @@ class OrderBookChart extends StatelessWidget { Widget build(BuildContext context) { final List _askTotals = []; final List _bidTotals = []; - double _maxAmount; for (int i = 0; i < sortedAsks.length; i++) { final double prevTotal = i > 0 ? _askTotals[_askTotals.length - 1] : 0; @@ -26,11 +25,10 @@ class OrderBookChart extends StatelessWidget { for (int i = 0; i < sortedBids.length; i++) { final double prevTotal = i > 0 ? _bidTotals[_bidTotals.length - 1] : 0; final Ask bid = sortedBids[i]; - _bidTotals.add( - prevTotal + (bid.maxvolume.toDouble() * double.parse(bid.price))); + _bidTotals.add(prevTotal + (bid.maxvolume.toDouble())); } - _maxAmount = max( + double _maxAmount = max( _askTotals.isNotEmpty ? _askTotals[_askTotals.length - 1] : 0, _bidTotals.isNotEmpty ? _bidTotals[_bidTotals.length - 1] : 0, ); diff --git a/lib/screens/markets/order_book_table.dart b/lib/screens/markets/order_book_table.dart index b947b2802..c2abbe09d 100644 --- a/lib/screens/markets/order_book_table.dart +++ b/lib/screens/markets/order_book_table.dart @@ -99,7 +99,7 @@ class _OrderBookTableState extends State { alignment: Alignment.centerRight, child: Text( AppLocalizations.of(context) - .ordersTableTotal(orderBookProvider.activePair.sell.abbr), + .ordersTableAmount(orderBookProvider.activePair.buy.abbr), maxLines: 1, style: const TextStyle(fontSize: 14), ), @@ -111,13 +111,13 @@ class _OrderBookTableState extends State { List _buildBidsList() { final List _sortedBids = List.from(widget.sortedBids); final List _bidsList = []; - double _bidTotal = 0; for (int i = 0; i < _sortedBids.length; i++) { final Ask bid = _sortedBids[i]; - final double _bidVolume = - bid.maxvolume.toDouble() * double.parse(bid.price); - _bidTotal += _bidVolume; + + final double _bidVolume = bid.maxvolume.toDouble(); + + final double convertedVolume = _bidVolume / bid.priceRat.toDouble(); _bidsList.add(TableRow( children: [ @@ -185,7 +185,7 @@ class _OrderBookTableState extends State { alignment: Alignment.centerRight, padding: const EdgeInsets.only(right: 4), child: Text( - formatPrice(_bidTotal.toString()), + formatPrice(convertedVolume.toString()), maxLines: 1, style: TextStyle( color: Theme.of(context) @@ -225,11 +225,11 @@ class _OrderBookTableState extends State { List _buildAsksList() { final List _sortedAsks = widget.sortedAsks; List _asksList = []; - double _askTotal = 0; for (int i = 0; i < _sortedAsks.length; i++) { final Ask ask = _sortedAsks[i]; - _askTotal += ask.maxvolume.toDouble(); + final convertedVolume = + ask.maxvolume.toDouble() * ask.priceRat.toDouble(); _asksList.add(TableRow( children: [ @@ -297,7 +297,7 @@ class _OrderBookTableState extends State { alignment: Alignment.centerRight, padding: const EdgeInsets.only(right: 4), child: Text( - formatPrice(_askTotal.toString()), + formatPrice(convertedVolume.toString()), maxLines: 1, style: TextStyle( color: Theme.of(context) diff --git a/lib/screens/portfolio/coin_detail/coin_detail.dart b/lib/screens/portfolio/coin_detail/coin_detail.dart index 8424134ee..e8622b49c 100644 --- a/lib/screens/portfolio/coin_detail/coin_detail.dart +++ b/lib/screens/portfolio/coin_detail/coin_detail.dart @@ -3,7 +3,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; -import 'package:share/share.dart'; +import 'package:share_plus/share_plus.dart'; import '../../../../app_config/app_config.dart'; import '../../../../blocs/coin_detail_bloc.dart'; diff --git a/lib/screens/portfolio/coins_page.dart b/lib/screens/portfolio/coins_page.dart index 13fc73c09..8251cc2b7 100644 --- a/lib/screens/portfolio/coins_page.dart +++ b/lib/screens/portfolio/coins_page.dart @@ -254,8 +254,8 @@ class _CoinsPageState extends State { .clamp(0.0, 1.0); final colors = [ - Color.fromRGBO(98, 90, 229, 1), - Color.fromRGBO(45, 184, 240, 1), + Color.fromRGBO(38, 179, 255, 1), + Color.fromRGBO(0, 30, 34, 1), ].map((color) => color.withOpacity((1 - progress).clamp(0.2, 1))).toList(); return LinearGradient( diff --git a/lib/screens/portfolio/transaction_detail.dart b/lib/screens/portfolio/transaction_detail.dart index ea3e42bab..cba184c41 100644 --- a/lib/screens/portfolio/transaction_detail.dart +++ b/lib/screens/portfolio/transaction_detail.dart @@ -2,7 +2,7 @@ import 'package:auto_size_text/auto_size_text.dart'; import 'package:flutter/material.dart'; import 'package:komodo_dex/model/coin_type.dart'; import 'package:provider/provider.dart'; -import 'package:share/share.dart'; +import 'package:share_plus/share_plus.dart'; import '../../blocs/coins_bloc.dart'; import '../../blocs/main_bloc.dart'; diff --git a/lib/screens/settings/setting_page.dart b/lib/screens/settings/setting_page.dart index eb0bafc9a..b9638a24b 100644 --- a/lib/screens/settings/setting_page.dart +++ b/lib/screens/settings/setting_page.dart @@ -7,7 +7,7 @@ import 'package:komodo_dex/packages/z_coin_activation/widgets/z_coin_status_list import 'package:komodo_dex/utils/log_storage.dart'; import 'package:package_info_plus/package_info_plus.dart'; import 'package:provider/provider.dart'; -import 'package:share/share.dart'; +import 'package:share_plus/share_plus.dart'; import '../../app_config/app_config.dart'; import '../../blocs/authenticate_bloc.dart'; @@ -556,44 +556,20 @@ class _SettingPageState extends State { Future _shareLogs() async { Navigator.of(context).pop(); - final PackageInfo packageInfo = await PackageInfo.fromPlatform(); - final String os = Platform.isAndroid ? 'Android' : 'iOS'; - - final now = DateTime.now(); - // final log = FileAndSink(_logStorage.getLogFilePath(now)); - if (swapMonitor.swaps.isEmpty) await swapMonitor.update(); - try { - await Log.appendRawLog('\n\n--- my recent swaps ---\n\n'); - for (Swap swap in swapMonitor.swaps) { - final started = swap.started; - if (started == null) continue; - final tim = DateTime.fromMillisecondsSinceEpoch(started.timestamp); - final delta = now.difference(tim); - if (delta.inDays > 7) continue; // Skip old swaps. - await Log.appendRawLog(json.encode(swap.toJson) + '\n\n'); - } - await Log.appendRawLog('\n\n--- / my recent swaps ---\n\n'); - // TBD: Replace these with a pretty-printed metrics JSON - await Log.appendRawLog('Gleec Wallet ${packageInfo.version} $os\n'); - await Log.appendRawLog( - 'mm_version ${mmSe.mmVersion} mm_date ${mmSe.mmDate}\n'); - await Log.appendRawLog('netid ${mmSe.netid}\n'); - } catch (ex) { - Log('setting_page:723', ex); - await Log.appendRawLog('Error saving swaps for log export: $ex'); - } - - // Discord attachment size limit is about 25 MiB - final exportedLogFiles = await LogStorage().exportLogs(); - - final paths = exportedLogFiles.map((f) => f.path).toList(); - - mainBloc.isUrlLaucherIsOpen = true; - - await Share.shareFiles( - paths, - // mimeTypes: ['application/octet-stream'], - subject: 'Gleec Wallet at ${DateTime.now().toIso8601String()}', + + Log.downloadLogs().catchError((dynamic e) { + _showSnackbar(e.toString()); + }); + } + + void _showSnackbar(String message) { + if (context == null) return; + + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + duration: const Duration(seconds: 3), + ), ); } diff --git a/lib/services/mm_service.dart b/lib/services/mm_service.dart index 26a518bc2..479d81a3a 100644 --- a/lib/services/mm_service.dart +++ b/lib/services/mm_service.dart @@ -64,9 +64,9 @@ class MMService { /// Our name and version String gui; - /// We're using the netid of 7777 currently - /// But it's possible in theory to connect the UI to MM running on a different netid - int netid = 7777; + /// We're using the netid of 8762 as part of the bracking changes in MM2 + /// warrenting a new netid. + int netid = 8762; /// Effective memory used by the application, MiB /// As of now it is specific to iOS @@ -318,19 +318,6 @@ class MMService { _directorySizeCache['$dirPath**$endsWith'] = size; } - List removeZhtlcCheckPointBlock(List coinsJson) { - return coinsJson.map((dynamic coinDynamic) { - Map coin = coinDynamic as Map; - if (coin.containsKey('protocol') && - coin['protocol'].containsKey('type') && - coin['protocol']['type'] == 'ZHTLC' && - coin['protocol']['protocol_data'].containsKey('check_point_block')) { - coin['protocol']['protocol_data'].remove('check_point_block'); - } - return coin; - }).toList(); - } - /// returns directory size in MB static double dirStatSync(String dirPath, {String endsWith = 'log'}) { int totalSize = 0; @@ -373,7 +360,7 @@ class MMService { userhome: filesPath, passphrase: passphrase, rpcPassword: rpcPass, - coins: removeZhtlcCheckPointBlock(await readJsonCoinInit()), + coins: await readJsonCoinInit(), dbdir: filesPath, allowWeakPassword: false, rpcPort: appConfig.rpcPort, @@ -456,18 +443,46 @@ class MMService { } Future> readJsonCoinInit() async { + List coinsJson; + try { - return jsonDecode(await CoinUpdater().getCoins()); + coinsJson = await jsonDecode(await CoinUpdater().getCoins()); + + coinsJson = coinsJson.map((dynamic coinDynamic) { + try { + if (coinDynamic is Map) { + coinDynamic = coinModifier(coinDynamic); + } + } catch (e) { + // Coin modification failed. This is not a critical error, so we can, + // but developers should be aware of it. + Log('mm_service', 'Coin modification failed. ${e.toString()}'); + } + return coinDynamic; + }).toList(); } catch (e) { - if (kDebugMode) { - Log('mm_service', 'readJsonCoinInit] $e'); - printError('$e'); - printError('Try to run `\$sh fetch_coins.sh`.' - ' See README.md for details.'); - SystemChannels.platform.invokeMethod('SystemNavigator.pop'); - } + Log('mm_service', 'Error loading coin config: ${e.toString()}'); + return []; } + + return coinsJson; + } + + /// A function to modify each loaded coin in the list of coins before it is + /// passed to MM. + Map coinModifier(Map coin) { + // Remove the check_point_block from ZHTLC coins because this is required + // if we want to activate ZHTLC coins and only sync from the current date. + // The check_point_block will be removed from the coin config repo in the + // future, so this is a temporary workaround. + if (coin.containsKey('protocol') && + coin['protocol'].containsKey('type') && + coin['protocol']['type'] == 'ZHTLC' && + coin['protocol']['protocol_data'].containsKey('check_point_block')) { + coin['protocol']['protocol_data'].remove('check_point_block'); + } + return coin; } Future initCoinsAndLoad() async { diff --git a/lib/utils/log.dart b/lib/utils/log.dart index 9be6d2e0a..2974dc396 100644 --- a/lib/utils/log.dart +++ b/lib/utils/log.dart @@ -2,10 +2,15 @@ import 'dart:async'; import 'dart:io'; import 'dart:math'; +import 'package:cross_file/cross_file.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:intl/intl.dart'; +import 'package:komodo_dex/blocs/main_bloc.dart'; +import 'package:komodo_dex/model/swap_provider.dart'; import 'package:komodo_dex/utils/log_storage.dart'; +import 'package:package_info_plus/package_info_plus.dart'; +import 'package:share_plus/share_plus.dart'; import '../services/mm_service.dart'; import '../utils/utils.dart'; @@ -110,6 +115,56 @@ class Log { await _updateLastClearedDate(); } + + static Future downloadLogs() async { + final PackageInfo packageInfo = await PackageInfo.fromPlatform(); + final String os = Platform.operatingSystem; + + final now = DateTime.now(); + + try { + if (swapMonitor.swaps.isEmpty) await swapMonitor.update(); + + await Log.appendRawLog('\n\n--- my recent swaps ---\n\n'); + + final recentSwaps = swapMonitor.swaps.where((swap) => + swap.started != null && + DateTime.fromMillisecondsSinceEpoch(swap.started.timestamp) + .difference(now) + .inDays + .abs() < + 7); + + for (final swap in recentSwaps) { + await Log.appendRawLog('${swap.toJson}\n'); + } + + await Log.appendRawLog('\n\n--- / my recent swaps ---\n\n'); + // TBD: Replace these with a pretty-printed metrics JSON + await Log.appendRawLog('Gleec Wallet ${packageInfo.version} $os\n'); + await Log.appendRawLog( + 'mm_version ${mmSe.mmVersion} mm_date ${mmSe.mmDate}\n'); + await Log.appendRawLog('netid ${mmSe.netid}\n'); + } catch (ex) { + Log('setting_page:723', ex); + await Log.appendRawLog('Error saving swaps for log export: $ex'); + } + + // Discord attachment size limit is about 25 MiB + final exportedLogFiles = + (await LogStorage().exportLogs()).map((f) => XFile(f.path)).toList(); + if (exportedLogFiles.isEmpty) { + throw Exception('No logs to download'); + } + + mainBloc.isUrlLaucherIsOpen = true; + + await Share.shareXFiles( + exportedLogFiles, + // mimeTypes: ['application/octet-stream'], + subject: 'Gleec Wallet Logs at ${DateTime.now().toIso8601String()}', + ); + } } Future _doMaintainInSeparateIsolate(Map params) async { diff --git a/lib/utils/log_storage.dart b/lib/utils/log_storage.dart index 3ae829b12..414909b5e 100644 --- a/lib/utils/log_storage.dart +++ b/lib/utils/log_storage.dart @@ -155,11 +155,7 @@ class LogStorage { Future> exportLogs() async { await deleteExportedArchives(); - final logFiles = Directory(logFolderPath()) - .listSync(followLinks: false, recursive: true) - .whereType() - .where((f) => f.path.endsWith('.log')) - .toList(); + final logFiles = await getLogFiles(); final compressedFiles = []; final compressedSizes = []; @@ -168,7 +164,7 @@ class LogStorage { const compressionLevel = Deflate.DEFAULT_COMPRESSION; const maxSizeBytes = 24 * 1000 * 1000; // 24MB. Discord limit is 25MB. - for (var logFile in logFiles) { + for (final logFile in logFiles.values) { List fileBytes = logFile.readAsBytesSync(); final fileName = p.basename(logFile.path); @@ -191,11 +187,11 @@ class LogStorage { compressedSizes.add(compressedBytes.length); - final isLastFile = logFile == logFiles.last; + final isLastFile = logFile == logFiles.values.last; if (wouldBeOverLimit || isLastFile) { final archiveFile = File( - '${logFolderPath()}/komodo_wallet_logs_archive_${compressedFiles.length}.g.zip', + '${logFolderPath()}/gleec_wallet_logs_archive_${compressedFiles.length}.gz', ); final archiveBytes = @@ -218,7 +214,7 @@ class LogStorage { final archives = Directory(logFolderPath()) .listSync(followLinks: false, recursive: true) .whereType() - .where((f) => f.path.endsWith('.g.zip')) + .where((f) => f.path.endsWith('.gz')) .toList(); for (var archive in archives) { diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index 7534a9a54..8103a013e 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -12,7 +12,7 @@ import 'package:local_auth/local_auth.dart'; import 'package:path_provider/path_provider.dart'; import 'package:provider/provider.dart'; import 'package:rational/rational.dart'; -import 'package:share/share.dart'; +import 'package:share_plus/share_plus.dart'; import 'package:url_launcher/url_launcher.dart'; import '../app_config/app_config.dart'; diff --git a/lib/widgets/repeated_tap_detector.dart b/lib/widgets/repeated_tap_detector.dart new file mode 100644 index 000000000..3a480d24f --- /dev/null +++ b/lib/widgets/repeated_tap_detector.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +/// A widget which detects if a user repeatedly taps on a widget. +/// +/// +/// [child] The widget to be wrapped by the repeated tap detector. +/// [tapTriggerCount] The number of taps required to trigger the [onRepeatedTap] callback. +/// [onRepeatedTap] The callback to be triggered when the user taps on the widget [tapTriggerCount] times. +/// [cooldown] The maximum time in milliseconds between taps to be considered a repeated tap. +class RepeatedTapDetector extends StatefulWidget { + const RepeatedTapDetector({ + Key key, + @required this.child, + @required this.tapTriggerCount, + @required this.onRepeatedTap, + this.cooldown = const Duration(seconds: 1), + }) : super(key: key); + + final Widget child; + final int tapTriggerCount; + final VoidCallback onRepeatedTap; + final Duration cooldown; + + @override + _RepeatedTapDetectorState createState() => _RepeatedTapDetectorState(); +} + +class _RepeatedTapDetectorState extends State { + int _tapCount = 0; + DateTime _lastTapTime; + + bool get _isCooldownExpired => + _lastTapTime != null && + DateTime.now().difference(_lastTapTime) > widget.cooldown; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () { + print( + 'RepeatedTapDetector: onTap. _tapCount: $_tapCount, _isCooldownExpired: $_isCooldownExpired'); + if (_tapCount == 0 || _isCooldownExpired) { + _resetLastTap(); + } + _tapCount++; + if (_tapCount == widget.tapTriggerCount) { + widget.onRepeatedTap?.call(); + _tapCount = 0; + } + + _lastTapTime = DateTime.now(); + }, + child: widget.child, + ); + } + + void _resetLastTap() { + _lastTapTime = DateTime.now(); + _tapCount = 0; + } +} diff --git a/pubspec.lock b/pubspec.lock index e5dea6c62..0fb987b6e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -35,7 +35,7 @@ packages: name: asn1lib url: "https://pub.dartlang.org" source: hosted - version: "1.4.0" + version: "1.4.1" async: dependency: transitive description: @@ -170,6 +170,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.1.0" + cross_file: + dependency: transitive + description: + name: cross_file + url: "https://pub.dartlang.org" + source: hosted + version: "0.3.3+2" crypto: dependency: "direct main" description: @@ -358,7 +365,7 @@ packages: name: flutter_secure_storage_linux url: "https://pub.dartlang.org" source: hosted - version: "1.1.3" + version: "1.2.0" flutter_secure_storage_macos: dependency: transitive description: @@ -372,14 +379,14 @@ packages: name: flutter_secure_storage_platform_interface url: "https://pub.dartlang.org" source: hosted - version: "1.0.1" + version: "1.0.2" flutter_secure_storage_web: dependency: transitive description: name: flutter_secure_storage_web url: "https://pub.dartlang.org" source: hosted - version: "1.1.1" + version: "1.1.2" flutter_secure_storage_windows: dependency: transitive description: @@ -705,7 +712,7 @@ packages: name: provider url: "https://pub.dartlang.org" source: hosted - version: "6.0.5" + version: "6.1.1" pub_semver: dependency: transitive description: @@ -736,13 +743,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.2.1" - share: + share_plus: dependency: "direct main" description: - name: share + name: share_plus url: "https://pub.dartlang.org" source: hosted - version: "2.0.4" + version: "4.5.3" + share_plus_linux: + dependency: transitive + description: + name: share_plus_linux + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_macos: + dependency: transitive + description: + name: share_plus_macos + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" + share_plus_platform_interface: + dependency: transitive + description: + name: share_plus_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.1" + share_plus_web: + dependency: transitive + description: + name: share_plus_web + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.0" + share_plus_windows: + dependency: transitive + description: + name: share_plus_windows + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" shared_preferences: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index cb8243851..cbfc2f819 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -7,7 +7,7 @@ description: Multicoin Wallet with DEX gateway # Both the version and the builder number may be overridden in flutter # build by specifying --build-name and --build-number, respectively. # Read more about versioning at semver.org. -version: 0.8.0+0 +version: 0.9.0+0 publish_to: none @@ -36,8 +36,6 @@ dependencies: url_launcher: 6.1.5 # flutter.dev (Note: Supports null safety) - share: 2.0.4 # flutter.dev (Note: Supports null safety) - local_auth: 1.1.11 # flutter.dev (Note: Supports null safety) http: 0.13.4 # dart.dev (Note: Supports null safety) @@ -61,6 +59,9 @@ dependencies: path: packages/package_info_plus/package_info_plus/ ref: 08a7a35502d2498ea3dd1473445b4511dea35518 #1.4.2 + share_plus: ^4.5.3 + + #------------3rd party------------- diff --git a/utils/check_urls.py b/utils/check_urls.py new file mode 100755 index 000000000..a9f131d66 --- /dev/null +++ b/utils/check_urls.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python3 +from os.path import dirname, abspath +import re +import requests + +PROJECT_PATH = dirname(dirname(abspath(__file__))) + +with open(f"{PROJECT_PATH}/lib/app_config/app_config.dart", "r") as f: + dart_file = f.read() +urls = re.findall( + r"http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|/|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+", + dart_file, +) +for url in urls: + try: + if ( + "discord" in url + or "github.com" in url + or url.endswith("?") + or "/api/" in url + ): + continue + cleaned_url = url.rstrip(".,;'\"") + response = requests.head(cleaned_url, allow_redirects=True) + if response.status_code >= 400 and response.status_code != 405: + raise AssertionError( + f"{cleaned_url} is unreachable (HTTP {response.status_code})" + ) + except requests.ConnectionError: + raise AssertionError(f"{cleaned_url} is unreachable (Connection Error)") diff --git a/utils/check_wallet_only.py b/utils/check_wallet_only.py new file mode 100755 index 000000000..a87405334 --- /dev/null +++ b/utils/check_wallet_only.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +from os.path import dirname, abspath +import re +import json + +PROJECT_PATH = dirname(dirname(abspath(__file__))) + +with open(f"{PROJECT_PATH}/assets/coins_config.json", "r") as f: + coins_json = json.load(f) +wallet_only_coins = [ + coin["coin"] for coin in coins_json.values() if coin["wallet_only"] +] +with open(f"{PROJECT_PATH}/lib/app_config/app_config.dart", "r") as f: + dart_file = f.read() +coins_dart = re.findall(r"walletOnlyCoins => \[\s*([^]]+?)\s*\]", dart_file) +coins_dart = [coin.strip().strip("'") for coin in coins_dart[0].split(",") if coin] +missing_coins = set(wallet_only_coins) - set(coins_dart) +assert len(missing_coins) == 0, f"Missing coins: {missing_coins}"