From a24afac3c247ccc7b41d411521edaf388618d4e4 Mon Sep 17 00:00:00 2001 From: Sam Holmes Date: Tue, 25 Nov 2025 16:12:05 -0800 Subject: [PATCH 1/5] Implement mapctl for automatic provider mappings --- .gitignore | 2 + package.json | 1 + scripts/mapctl.ts | 334 ++++ scripts/mapctlConfig.ts | 19 + scripts/mappings/changeheroMappings.ts | 210 +++ scripts/mappings/changenowMappings.ts | 754 +++++++++ scripts/mappings/exolixMappings.ts | 742 +++++++++ scripts/mappings/godexMappings.ts | 302 ++++ scripts/mappings/letsexchangeMappings.ts | 1385 +++++++++++++++++ scripts/mappings/lifiMappings.ts | 179 +++ scripts/mappings/mayaprotocolMappings.ts | 26 + scripts/mappings/rangoMappings.ts | 278 ++++ scripts/mappings/sideshiftMappings.ts | 128 ++ scripts/mappings/swapkitMappings.ts | 83 + scripts/mappings/swapuzMappings.ts | 710 +++++++++ scripts/mappings/thorchainMappings.ts | 38 + .../changehero/changeheroSynchronizer.ts | 99 ++ .../changehero/changeheroTypes.ts | 11 + .../changenow/changenowSynchronizer.ts | 91 ++ .../synchronizers/changenow/changenowTypes.ts | 9 + .../exolix/exolixSynchronizer.ts | 120 ++ scripts/synchronizers/exolix/exolixTypes.ts | 31 + .../synchronizers/godex/godexSynchronizer.ts | 89 ++ scripts/synchronizers/godex/godexTypes.ts | 33 + .../letsexchange/letsexchangeSynchronizer.ts | 80 + .../letsexchange/letsexchangeTypes.ts | 13 + .../synchronizers/lifi/lifiSynchronizer.ts | 48 + scripts/synchronizers/lifi/lifiTypes.ts | 10 + .../mayaprotocol/mayaprotocolSynchronizer.ts | 74 + .../mayaprotocol/mayaprotocolTypes.ts | 7 + .../synchronizers/rango/rangoSynchronizer.ts | 60 + scripts/synchronizers/rango/rangoTypes.ts | 10 + .../sideshift/sideshiftSynchronizer.ts | 74 + .../synchronizers/sideshift/sideshiftTypes.ts | 30 + .../swapkit/swapkitSynchronizer.ts | 124 ++ scripts/synchronizers/swapkit/swapkitTypes.ts | 34 + .../swapuz/swapuzSynchronizer.ts | 99 ++ scripts/synchronizers/swapuz/swapuzTypes.ts | 18 + .../thorchain/thorchainSynchronizer.ts | 105 ++ .../synchronizers/thorchain/thorchainTypes.ts | 7 + scripts/types.ts | 16 + src/mappings/changehero.ts | 97 ++ src/mappings/changenow.ts | 97 ++ src/mappings/exolix.ts | 97 ++ src/mappings/godex.ts | 97 ++ src/mappings/letsexchange.ts | 97 ++ src/mappings/lifi.ts | 97 ++ src/mappings/mayaprotocol.ts | 97 ++ src/mappings/rango.ts | 97 ++ src/mappings/sideshift.ts | 97 ++ src/mappings/swapkit.ts | 97 ++ src/mappings/swapuz.ts | 97 ++ src/mappings/thorchain.ts | 97 ++ src/swap/central/changehero.ts | 17 + src/swap/central/changenow.ts | 19 +- src/swap/central/exolix.ts | 17 + src/swap/central/godex.ts | 17 + src/swap/central/letsexchange.ts | 17 + src/swap/central/sideshift.ts | 17 + src/swap/central/swapuz.ts | 17 + src/util/edgeCurrencyPluginIds.ts | 85 + src/util/swapHelpers.ts | 96 +- 62 files changed, 7882 insertions(+), 67 deletions(-) create mode 100644 scripts/mapctl.ts create mode 100644 scripts/mapctlConfig.ts create mode 100644 scripts/mappings/changeheroMappings.ts create mode 100644 scripts/mappings/changenowMappings.ts create mode 100644 scripts/mappings/exolixMappings.ts create mode 100644 scripts/mappings/godexMappings.ts create mode 100644 scripts/mappings/letsexchangeMappings.ts create mode 100644 scripts/mappings/lifiMappings.ts create mode 100644 scripts/mappings/mayaprotocolMappings.ts create mode 100644 scripts/mappings/rangoMappings.ts create mode 100644 scripts/mappings/sideshiftMappings.ts create mode 100644 scripts/mappings/swapkitMappings.ts create mode 100644 scripts/mappings/swapuzMappings.ts create mode 100644 scripts/mappings/thorchainMappings.ts create mode 100644 scripts/synchronizers/changehero/changeheroSynchronizer.ts create mode 100644 scripts/synchronizers/changehero/changeheroTypes.ts create mode 100644 scripts/synchronizers/changenow/changenowSynchronizer.ts create mode 100644 scripts/synchronizers/changenow/changenowTypes.ts create mode 100644 scripts/synchronizers/exolix/exolixSynchronizer.ts create mode 100644 scripts/synchronizers/exolix/exolixTypes.ts create mode 100644 scripts/synchronizers/godex/godexSynchronizer.ts create mode 100644 scripts/synchronizers/godex/godexTypes.ts create mode 100644 scripts/synchronizers/letsexchange/letsexchangeSynchronizer.ts create mode 100644 scripts/synchronizers/letsexchange/letsexchangeTypes.ts create mode 100644 scripts/synchronizers/lifi/lifiSynchronizer.ts create mode 100644 scripts/synchronizers/lifi/lifiTypes.ts create mode 100644 scripts/synchronizers/mayaprotocol/mayaprotocolSynchronizer.ts create mode 100644 scripts/synchronizers/mayaprotocol/mayaprotocolTypes.ts create mode 100644 scripts/synchronizers/rango/rangoSynchronizer.ts create mode 100644 scripts/synchronizers/rango/rangoTypes.ts create mode 100644 scripts/synchronizers/sideshift/sideshiftSynchronizer.ts create mode 100644 scripts/synchronizers/sideshift/sideshiftTypes.ts create mode 100644 scripts/synchronizers/swapkit/swapkitSynchronizer.ts create mode 100644 scripts/synchronizers/swapkit/swapkitTypes.ts create mode 100644 scripts/synchronizers/swapuz/swapuzSynchronizer.ts create mode 100644 scripts/synchronizers/swapuz/swapuzTypes.ts create mode 100644 scripts/synchronizers/thorchain/thorchainSynchronizer.ts create mode 100644 scripts/synchronizers/thorchain/thorchainTypes.ts create mode 100644 scripts/types.ts create mode 100644 src/mappings/changehero.ts create mode 100644 src/mappings/changenow.ts create mode 100644 src/mappings/exolix.ts create mode 100644 src/mappings/godex.ts create mode 100644 src/mappings/letsexchange.ts create mode 100644 src/mappings/lifi.ts create mode 100644 src/mappings/mayaprotocol.ts create mode 100644 src/mappings/rango.ts create mode 100644 src/mappings/sideshift.ts create mode 100644 src/mappings/swapkit.ts create mode 100644 src/mappings/swapuz.ts create mode 100644 src/mappings/thorchain.ts create mode 100644 src/util/edgeCurrencyPluginIds.ts diff --git a/.gitignore b/.gitignore index 673182f0..57a010e4 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,5 @@ yarn-error.log # Config testconfig.json +mapctlConfig.json +.env diff --git a/package.json b/package.json index e792c107..822dd2c9 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "start": "webpack serve", "test": "nyc mocha 'test/**/*.test.ts'", "types": "tsc", + "mapctl": "node -r sucrase/register scripts/mapctl.ts", "webpack": "webpack && cp -r android/src/main/assets/edge-exchange-plugins dist", "verify": "npm-run-all prepare lint types test" }, diff --git a/scripts/mapctl.ts b/scripts/mapctl.ts new file mode 100644 index 00000000..f3717f50 --- /dev/null +++ b/scripts/mapctl.ts @@ -0,0 +1,334 @@ +import fs from 'fs' +import path from 'path' + +import { + EdgeCurrencyPluginId, + edgeCurrencyPluginIds +} from '../src/util/edgeCurrencyPluginIds' +import { config } from './mapctlConfig' +import { makeChangeHeroSynchronizer } from './synchronizers/changehero/changeheroSynchronizer' +import { makeChangeNowSynchronizer } from './synchronizers/changenow/changenowSynchronizer' +import { makeExolixSynchronizer } from './synchronizers/exolix/exolixSynchronizer' +import { makeGodexSynchronizer } from './synchronizers/godex/godexSynchronizer' +import { makeLetsExchangeSynchronizer } from './synchronizers/letsexchange/letsexchangeSynchronizer' +import { makeLifiSynchronizer } from './synchronizers/lifi/lifiSynchronizer' +import { makeMayaProtocolSynchronizer } from './synchronizers/mayaprotocol/mayaprotocolSynchronizer' +import { makeRangoSynchronizer } from './synchronizers/rango/rangoSynchronizer' +import { makeSideShiftSynchronizer } from './synchronizers/sideshift/sideshiftSynchronizer' +import { makeSwapKitSynchronizer } from './synchronizers/swapkit/swapkitSynchronizer' +import { makeSwapuzSynchronizer } from './synchronizers/swapuz/swapuzSynchronizer' +import { makeThorchainSynchronizer } from './synchronizers/thorchain/thorchainSynchronizer' +import { SwapSynchronizerFactory } from './types' + +const OUTPUT_MAPPINGS_DIR = path.join(__dirname, '../src/mappings') + +const synchronizerFactories: SwapSynchronizerFactory[] = [ + makeChangeHeroSynchronizer, + makeChangeNowSynchronizer, + makeExolixSynchronizer, + makeGodexSynchronizer, + makeLetsExchangeSynchronizer, + makeLifiSynchronizer, + makeMayaProtocolSynchronizer, + makeRangoSynchronizer, + makeSideShiftSynchronizer, + makeSwapKitSynchronizer, + makeSwapuzSynchronizer, + makeThorchainSynchronizer +] + +const SCRIPTS_MAPPINGS_DIR = path.join(__dirname, 'mappings') + +async function main(): Promise { + const args = process.argv.slice(2) + const command = args[0] + + if (command == null || command === '') { + showUsage() + return + } + + if (command === 'sync-providers') { + const filter = args[1] != null && args[1] !== '' ? args[1] : undefined + await syncSynchronizers(filter) + } else if (command === 'update-mappings') { + await updateMappings() + } else if (command === 'add-plugin') { + await addPluginId(args[1]) + } else { + console.error(`Unknown command: ${command}`) + showUsage() + process.exit(1) + } +} + +// --------------------------------------------------------------------- +// Commands +// --------------------------------------------------------------------- + +async function syncSynchronizers(filter?: string): Promise { + const synchronizers = synchronizerFactories.map(f => f(config)) + const filteredSynchronizers = + filter != null + ? synchronizers.filter(s => s.name === filter) + : synchronizers + + if (filter != null && filteredSynchronizers.length === 0) { + console.error(`\nSynchronizer "${filter}" not found.`) + console.log('\nAvailable synchronizers:') + synchronizers.forEach(s => { + console.log(` - ${s.name}`) + }) + return + } + + console.log('Syncing synchronizers...') + + // Ensure scripts/mappings directory exists + if (!fs.existsSync(SCRIPTS_MAPPINGS_DIR)) { + fs.mkdirSync(SCRIPTS_MAPPINGS_DIR, { recursive: true }) + } + + for (const synchronizer of filteredSynchronizers) { + console.log(`\nProcessing ${synchronizer.name}...`) + const results = await synchronizer.fetchChainCodes() + const resultChainCodes = new Set(results.map(r => r.chainCode)) + + // Build combined map: results + existing non-null mappings + const combinedMap = new Map() + const networkMetadata = new Map>() + + // Add all results (these are the source of truth) + let newEntriesCount = 0 + for (const { chainCode, metadata } of results) { + const existingMapping = synchronizer.map.get(chainCode) + combinedMap.set(chainCode, existingMapping ?? null) + if (!synchronizer.map.has(chainCode)) { + newEntriesCount++ + } + if (metadata != null && Object.keys(metadata).length > 0) { + networkMetadata.set(chainCode, metadata) + } + } + + // Add existing non-null mappings that aren't in results (preserve them) + let removedEntriesCount = 0 + for (const [key, value] of synchronizer.map.entries()) { + if (!resultChainCodes.has(key)) { + if (value == null) { + removedEntriesCount++ + } else { + // Preserve non-null mappings even if not in results + combinedMap.set(key, value) + } + } + } + + const sortedKeys = Array.from(combinedMap.keys()).sort((a, b) => + a.localeCompare(b) + ) + + const setCalls = sortedKeys + .map((key, index) => { + const val = combinedMap.get(key) + const valStr = val == null ? 'null' : `'${val}'` + + const comments: string[] = [] + if (synchronizer.map.has(key) && !resultChainCodes.has(key)) { + comments.push( + '// WARNING: Not included by the synchronizer synchronization' + ) + } + + const meta = networkMetadata.get(key) + if (meta != null) { + Object.entries(meta) + .sort(([a], [b]) => a.localeCompare(b)) + .forEach(([k, v]) => { + comments.push(`// ${k}: ${String(v)}`) + }) + } + + const prefix = index > 0 ? '\n' : '' + const commentStr = comments.length > 0 ? comments.join('\n') + '\n' : '' + return `${prefix}${commentStr}${synchronizer.name}.set('${key}', ${valStr})` + }) + .join('\n') + + const fileContent = `import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const ${synchronizer.name} = new Map() +${setCalls} +` + + fs.writeFileSync(synchronizer.mappingFilePath, fileContent) + + const logMessage = `Saved ${synchronizer.name}Mappings.ts with ${newEntriesCount} new entries` + if (removedEntriesCount > 0) { + console.log(`${logMessage} and ${removedEntriesCount} removed entries.`) + } else { + console.log(`${logMessage}.`) + } + } +} + +async function addPluginId(id: string): Promise { + if (id == null || id === '') { + console.error('Please provide a plugin ID to add.') + return + } + if (edgeCurrencyPluginIds.includes(id as any)) { + console.log(`Plugin ID '${id}' already exists.`) + return + } + + const filePath = path.join(__dirname, '../src/util/edgeCurrencyPluginIds.ts') + const content = fs.readFileSync(filePath, 'utf8') + + // Extract the array content and add the new ID + const pluginIdsArray = [...edgeCurrencyPluginIds, id] + // Sort alphabetically + pluginIdsArray.sort((a, b) => { + if (a < b) return -1 + if (a > b) return 1 + return 0 + }) + + // Find the array start and end + const arrayStartMatch = content.match( + /export const edgeCurrencyPluginIds = \[/ + ) + // Look for '] as const' - find where it ends + const arrayEndMatch = content.match(/\]\s*as const/) + + if (arrayStartMatch == null || arrayEndMatch == null) { + console.error('Could not parse edgeCurrencyPluginIds.ts') + return + } + + const arrayStartIndex = + (arrayStartMatch.index ?? 0) + arrayStartMatch[0].length + const arrayEndIndex = (arrayEndMatch.index ?? 0) + arrayEndMatch[0].length + + const beforeArray = content.slice(0, arrayStartIndex) + // Preserve everything after '] as const' (including the type export) + const afterArray = content.slice(arrayEndIndex) + + // Generate the sorted array content with 'as const' + const arrayContent = + pluginIdsArray.map(pid => ` '${pid}'`).join(',\n') + '\n] as const' + + const newContent = beforeArray + '\n' + arrayContent + afterArray + + fs.writeFileSync(filePath, newContent) + console.log( + `Added '${id}' to edgeCurrencyPluginIds.ts (sorted alphabetically)` + ) +} + +async function updateMappings(): Promise { + console.log('Updating inverted mappings...') + + // Ensure output directory exists + if (!fs.existsSync(OUTPUT_MAPPINGS_DIR)) { + fs.mkdirSync(OUTPUT_MAPPINGS_DIR, { recursive: true }) + } + + // Process each synchronizer + for (const factory of synchronizerFactories) { + const synchronizer = factory(config) + + try { + // Build inverted mapping: pluginId -> synchronizer network ID + const invertedMap = new Map() + + synchronizer.map.forEach((pluginId, synchronizerNetworkId) => { + if (pluginId != null) { + // If this pluginId already exists, we might have a conflict + // For now, we'll use the first one we encounter + if (!invertedMap.has(pluginId)) { + invertedMap.set(pluginId, synchronizerNetworkId) + } + } + }) + + // Include ALL plugin IDs, setting unmapped ones to null + const sortedPluginIds = [...edgeCurrencyPluginIds].sort((a, b) => { + if (a < b) return -1 + if (a > b) return 1 + return 0 + }) + + // Generate the output file content + const setCalls = sortedPluginIds + .map(pluginId => { + const synchronizerNetworkId = invertedMap.get(pluginId) + const valStr = + synchronizerNetworkId == null || synchronizerNetworkId === '' + ? 'null' + : `'${synchronizerNetworkId}'` + return `${synchronizer.name}.set('${pluginId}', ${valStr})` + }) + .join('\n') + + const fileContent = `/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/${synchronizer.name}Mappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/${synchronizer.name}Mappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const ${synchronizer.name} = new Map() +${setCalls} +` + + const outputPath = path.join( + OUTPUT_MAPPINGS_DIR, + `${synchronizer.name}.ts` + ) + fs.writeFileSync(outputPath, fileContent) + const mappedCount = Array.from(invertedMap.values()).filter( + v => v != null && v !== '' + ).length + console.log( + `Saved ${synchronizer.name}.ts with ${ + sortedPluginIds.length + } entries (${mappedCount} mapped, ${ + sortedPluginIds.length - mappedCount + } null).` + ) + } catch (e: any) { + console.error(`Error processing ${synchronizer.name}:`, e.message) + } + } +} + +function showUsage(): void { + console.log(` +Usage: yarn mapctl [options] + +Commands: + sync-providers [synchronizer] Sync network mappings from all synchronizers (or specific synchronizer) + update-mappings Generate inverted mappings (pluginId -> synchronizer network ID) + add-plugin Add a new plugin ID to edgeCurrencyPluginIds.ts (sorted alphabetically) + +Examples: + yarn mapctl sync-providers + yarn mapctl sync-providers godex + yarn mapctl update-mappings + yarn mapctl add-plugin mynewplugin +`) +} + +main().catch(e => { + console.error(e) + process.exit(1) +}) diff --git a/scripts/mapctlConfig.ts b/scripts/mapctlConfig.ts new file mode 100644 index 00000000..679b7022 --- /dev/null +++ b/scripts/mapctlConfig.ts @@ -0,0 +1,19 @@ +import { makeConfig } from 'cleaner-config' +import { asObject, asOptional, asString } from 'cleaners' +import path from 'path' + +const asMapctlConfig = asObject({ + CHANGEHERO_API_KEY: asOptional(asString, ''), + CHANGENOW_API_KEY: asOptional(asString, ''), + EXOLIX_API_KEY: asOptional(asString, ''), + LETSEXCHANGE_API_KEY: asOptional(asString, ''), + RANGO_API_KEY: asOptional(asString, ''), + SWAPUZ_API_KEY: asOptional(asString, ''), + SWAPKIT_API_KEY: asOptional(asString, '') +}) + +export type MapctlConfig = ReturnType + +// Path to mapctlConfig.json at the project root +const configPath = path.join(__dirname, '..', 'mapctlConfig.json') +export const config = makeConfig(asMapctlConfig, configPath) diff --git a/scripts/mappings/changeheroMappings.ts b/scripts/mappings/changeheroMappings.ts new file mode 100644 index 00000000..719769a8 --- /dev/null +++ b/scripts/mappings/changeheroMappings.ts @@ -0,0 +1,210 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const changehero = new Map() +// Currency Count: 2 +// Display Name: algorand +changehero.set('algorand', null) + +// Currency Count: 5 +// Display Name: arbitrum +changehero.set('arbitrum', null) + +// Currency Count: 1 +// Display Name: ardor +changehero.set('ardor', null) + +// Currency Count: 3 +// Display Name: avalanche_(c-chain) +changehero.set('avalanche_(c-chain)', null) + +// Currency Count: 7 +// Display Name: base +changehero.set('base', null) + +// Currency Count: 31 +// Display Name: binance_smart_chain +changehero.set('binance_smart_chain', null) + +// Currency Count: 1 +// Display Name: bitcoin +changehero.set('bitcoin', null) + +// Currency Count: 1 +// Display Name: bitcoin_cash +changehero.set('bitcoin_cash', null) + +// Currency Count: 1 +// Display Name: bitcoin_sv +changehero.set('bitcoin_sv', null) + +// Currency Count: 1 +// Display Name: cardano +changehero.set('cardano', null) + +// Currency Count: 1 +// Display Name: cosmos +changehero.set('cosmos', null) + +// Currency Count: 3 +// Display Name: cro +changehero.set('cro', null) + +// Currency Count: 1 +// Display Name: dash +changehero.set('dash', null) + +// Currency Count: 1 +// Display Name: digibyte +changehero.set('digibyte', null) + +// Currency Count: 1 +// Display Name: doge +changehero.set('doge', null) + +// Currency Count: 1 +// Display Name: elrond +changehero.set('elrond', null) + +// Currency Count: 100 +// Display Name: ethereum +changehero.set('ethereum', null) + +// Currency Count: 1 +// Display Name: ethereum_classic +changehero.set('ethereum_classic', null) + +// Currency Count: 1 +// Display Name: flare +changehero.set('flare', null) + +// Currency Count: 1 +// Display Name: flux +changehero.set('flux', null) + +// Currency Count: 1 +// Display Name: hedera +changehero.set('hedera', null) + +// Currency Count: 1 +// Display Name: hypeevm +changehero.set('hypeevm', null) + +// Currency Count: 1 +// Display Name: icp +changehero.set('icp', null) + +// Currency Count: 1 +// Display Name: kaspa +changehero.set('kaspa', null) + +// Currency Count: 4 +// Display Name: linea +changehero.set('linea', null) + +// Currency Count: 1 +// Display Name: litecoin +changehero.set('litecoin', null) + +// Currency Count: 1 +// Display Name: lumia +changehero.set('lumia', null) + +// Currency Count: 2 +// Display Name: monad +changehero.set('monad', null) + +// Currency Count: 1 +// Display Name: monero +changehero.set('monero', null) + +// Currency Count: 1 +// Display Name: nano +changehero.set('nano', null) + +// Currency Count: 1 +// Display Name: near +changehero.set('near', null) + +// Currency Count: 1 +// Display Name: nevm +changehero.set('nevm', null) + +// Currency Count: 1 +// Display Name: nimiq +changehero.set('nimiq', null) + +// Currency Count: 5 +// Display Name: optimism +changehero.set('optimism', null) + +// Currency Count: 1 +// Display Name: polkadot +changehero.set('polkadot', null) + +// Currency Count: 7 +// Display Name: polygon +changehero.set('polygon', null) + +// Currency Count: 1 +// Display Name: qtum +changehero.set('qtum', null) + +// Currency Count: 1 +// Display Name: ripple +changehero.set('ripple', null) + +// Currency Count: 1 +// Display Name: rollux +changehero.set('rollux', null) + +// Currency Count: 40 +// Display Name: solana +changehero.set('solana', null) + +// Currency Count: 1 +// Display Name: songbird +changehero.set('songbird', null) + +// Currency Count: 1 +// Display Name: stellar +changehero.set('stellar', null) + +// Currency Count: 1 +// Display Name: sui +changehero.set('sui', null) + +// Currency Count: 1 +// Display Name: supra +changehero.set('supra', null) + +// Currency Count: 1 +// Display Name: syscoin utxo +changehero.set('syscoin utxo', null) + +// Currency Count: 1 +// Display Name: tezos +changehero.set('tezos', null) + +// Currency Count: 4 +// Display Name: ton +changehero.set('ton', null) + +// Currency Count: 6 +// Display Name: tron +changehero.set('tron', null) + +// Currency Count: 1 +// Display Name: vechainthor +changehero.set('vechainthor', null) + +// Currency Count: 1 +// Display Name: vtho +changehero.set('vtho', null) + +// Currency Count: 1 +// Display Name: xdc +changehero.set('xdc', null) + +// Currency Count: 1 +// Display Name: zcash +changehero.set('zcash', null) diff --git a/scripts/mappings/changenowMappings.ts b/scripts/mappings/changenowMappings.ts new file mode 100644 index 00000000..c4a2bdaa --- /dev/null +++ b/scripts/mappings/changenowMappings.ts @@ -0,0 +1,754 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const changenow = new Map() +// Currency Count: 4 +// Display Name: ada +changenow.set('ada', null) + +// Currency Count: 1 +// Display Name: aed +changenow.set('aed', null) + +// Currency Count: 1 +// Display Name: akt +changenow.set('akt', null) + +// Currency Count: 3 +// Display Name: algo +changenow.set('algo', null) + +// Currency Count: 1 +// Display Name: all +changenow.set('all', null) + +// Currency Count: 1 +// Display Name: amb +changenow.set('amb', null) + +// Currency Count: 1 +// Display Name: amd +changenow.set('amd', null) + +// Currency Count: 1 +// Display Name: ang +changenow.set('ang', null) + +// Currency Count: 1 +// Display Name: apt +changenow.set('apt', null) + +// Currency Count: 24 +// Display Name: arbitrum +changenow.set('arbitrum', null) + +// Currency Count: 1 +// Display Name: assethub +changenow.set('assethub', null) + +// Currency Count: 1 +// Display Name: atom +changenow.set('atom', null) + +// Currency Count: 1 +// Display Name: aud +changenow.set('aud', null) + +// Currency Count: 10 +// Display Name: avaxc +changenow.set('avaxc', null) + +// Currency Count: 1 +// Display Name: azn +changenow.set('azn', null) + +// Currency Count: 1 +// Display Name: baby +changenow.set('baby', null) + +// Currency Count: 1 +// Display Name: bam +changenow.set('bam', null) + +// Currency Count: 1 +// Display Name: band +changenow.set('band', null) + +// Currency Count: 46 +// Display Name: base +changenow.set('base', null) + +// Currency Count: 1 +// Display Name: bbd +changenow.set('bbd', null) + +// Currency Count: 1 +// Display Name: bch +changenow.set('bch', null) + +// Currency Count: 1 +// Display Name: bdt +changenow.set('bdt', null) + +// Currency Count: 1 +// Display Name: bera +changenow.set('bera', null) + +// Currency Count: 1 +// Display Name: bgn +changenow.set('bgn', null) + +// Currency Count: 1 +// Display Name: bhd +changenow.set('bhd', null) + +// Currency Count: 1 +// Display Name: bmd +changenow.set('bmd', null) + +// Currency Count: 1 +// Display Name: bnd +changenow.set('bnd', null) + +// Currency Count: 1 +// Display Name: bob +changenow.set('bob', null) + +// Currency Count: 1 +// Display Name: brl +changenow.set('brl', null) + +// Currency Count: 327 +// Display Name: bsc +changenow.set('bsc', null) + +// Currency Count: 1 +// Display Name: bsv +changenow.set('bsv', null) + +// Currency Count: 1 +// Display Name: btc +changenow.set('btc', null) + +// Currency Count: 1 +// Display Name: bwp +changenow.set('bwp', null) + +// Currency Count: 1 +// Display Name: byn +changenow.set('byn', null) + +// Currency Count: 1 +// Display Name: cad +changenow.set('cad', null) + +// Currency Count: 1 +// Display Name: cchain +changenow.set('cchain', null) + +// Currency Count: 4 +// Display Name: celo +changenow.set('celo', null) + +// Currency Count: 1 +// Display Name: chf +changenow.set('chf', null) + +// Currency Count: 1 +// Display Name: chz +changenow.set('chz', null) + +// Currency Count: 1 +// Display Name: clp +changenow.set('clp', null) + +// Currency Count: 1 +// Display Name: cny +changenow.set('cny', null) + +// Currency Count: 1 +// Display Name: cop +changenow.set('cop', null) + +// Currency Count: 1 +// Display Name: core +changenow.set('core', null) + +// Currency Count: 1 +// Display Name: coreum +changenow.set('coreum', null) + +// Currency Count: 1 +// Display Name: crc +changenow.set('crc', null) + +// Currency Count: 1 +// Display Name: cro +changenow.set('cro', null) + +// Currency Count: 1 +// Display Name: croevm +changenow.set('croevm', null) + +// Currency Count: 1 +// Display Name: cspr +changenow.set('cspr', null) + +// Currency Count: 1 +// Display Name: czk +changenow.set('czk', null) + +// Currency Count: 1 +// Display Name: dash +changenow.set('dash', null) + +// Currency Count: 1 +// Display Name: dcr +changenow.set('dcr', null) + +// Currency Count: 1 +// Display Name: dgb +changenow.set('dgb', null) + +// Currency Count: 1 +// Display Name: divi +changenow.set('divi', null) + +// Currency Count: 1 +// Display Name: djf +changenow.set('djf', null) + +// Currency Count: 1 +// Display Name: dkk +changenow.set('dkk', null) + +// Currency Count: 1 +// Display Name: doge +changenow.set('doge', null) + +// Currency Count: 1 +// Display Name: dop +changenow.set('dop', null) + +// Currency Count: 1 +// Display Name: egld +changenow.set('egld', null) + +// Currency Count: 1 +// Display Name: egp +changenow.set('egp', null) + +// Currency Count: 1 +// Display Name: epic +changenow.set('epic', null) + +// Currency Count: 1 +// Display Name: etc +changenow.set('etc', null) + +// Currency Count: 517 +// Display Name: eth +changenow.set('eth', null) + +// Currency Count: 1 +// Display Name: ethw +changenow.set('ethw', null) + +// Currency Count: 1 +// Display Name: eur +changenow.set('eur', null) + +// Currency Count: 1 +// Display Name: fet +changenow.set('fet', null) + +// Currency Count: 1 +// Display Name: fil +changenow.set('fil', null) + +// Currency Count: 1 +// Display Name: flr +changenow.set('flr', null) + +// Currency Count: 1 +// Display Name: ftn +changenow.set('ftn', null) + +// Currency Count: 1 +// Display Name: gbp +changenow.set('gbp', null) + +// Currency Count: 1 +// Display Name: gel +changenow.set('gel', null) + +// Currency Count: 1 +// Display Name: ghs +changenow.set('ghs', null) + +// Currency Count: 1 +// Display Name: gtq +changenow.set('gtq', null) + +// Currency Count: 1 +// Display Name: hbar +changenow.set('hbar', null) + +// Currency Count: 1 +// Display Name: hkd +changenow.set('hkd', null) + +// Currency Count: 1 +// Display Name: hnl +changenow.set('hnl', null) + +// Currency Count: 1 +// Display Name: hrk +changenow.set('hrk', null) + +// Currency Count: 1 +// Display Name: huf +changenow.set('huf', null) + +// Currency Count: 1 +// Display Name: icx +changenow.set('icx', null) + +// Currency Count: 1 +// Display Name: idr +changenow.set('idr', null) + +// Currency Count: 1 +// Display Name: ils +changenow.set('ils', null) + +// Currency Count: 1 +// Display Name: inj +changenow.set('inj', null) + +// Currency Count: 1 +// Display Name: inr +changenow.set('inr', null) + +// Currency Count: 1 +// Display Name: iotx +changenow.set('iotx', null) + +// Currency Count: 1 +// Display Name: iqd +changenow.set('iqd', null) + +// Currency Count: 1 +// Display Name: isk +changenow.set('isk', null) + +// Currency Count: 1 +// Display Name: jmd +changenow.set('jmd', null) + +// Currency Count: 1 +// Display Name: jod +changenow.set('jod', null) + +// Currency Count: 1 +// Display Name: joy +changenow.set('joy', null) + +// Currency Count: 1 +// Display Name: jpy +changenow.set('jpy', null) + +// Currency Count: 1 +// Display Name: kaia +changenow.set('kaia', null) + +// Currency Count: 2 +// Display Name: kas +changenow.set('kas', null) + +// Currency Count: 1 +// Display Name: kava +changenow.set('kava', null) + +// Currency Count: 1 +// Display Name: kes +changenow.set('kes', null) + +// Currency Count: 1 +// Display Name: kgs +changenow.set('kgs', null) + +// Currency Count: 1 +// Display Name: khr +changenow.set('khr', null) + +// Currency Count: 1 +// Display Name: klv +changenow.set('klv', null) + +// Currency Count: 1 +// Display Name: kmd +changenow.set('kmd', null) + +// Currency Count: 1 +// Display Name: krw +changenow.set('krw', null) + +// Currency Count: 1 +// Display Name: kwd +changenow.set('kwd', null) + +// Currency Count: 1 +// Display Name: kyd +changenow.set('kyd', null) + +// Currency Count: 1 +// Display Name: kzt +changenow.set('kzt', null) + +// Currency Count: 1 +// Display Name: lbp +changenow.set('lbp', null) + +// Currency Count: 1 +// Display Name: lkr +changenow.set('lkr', null) + +// Currency Count: 2 +// Display Name: lna +changenow.set('lna', null) + +// Currency Count: 1 +// Display Name: ltc +changenow.set('ltc', null) + +// Currency Count: 1 +// Display Name: luna +changenow.set('luna', null) + +// Currency Count: 1 +// Display Name: lunc +changenow.set('lunc', null) + +// Currency Count: 1 +// Display Name: mad +changenow.set('mad', null) + +// Currency Count: 2 +// Display Name: manta +changenow.set('manta', null) + +// Currency Count: 26 +// Display Name: matic +changenow.set('matic', null) + +// Currency Count: 1 +// Display Name: mdl +changenow.set('mdl', null) + +// Currency Count: 1 +// Display Name: mkd +changenow.set('mkd', null) + +// Currency Count: 2 +// Display Name: mnt +changenow.set('mnt', null) + +// Currency Count: 1 +// Display Name: mop +changenow.set('mop', null) + +// Currency Count: 1 +// Display Name: mur +changenow.set('mur', null) + +// Currency Count: 1 +// Display Name: mxn +changenow.set('mxn', null) + +// Currency Count: 1 +// Display Name: myr +changenow.set('myr', null) + +// Currency Count: 1 +// Display Name: mzn +changenow.set('mzn', null) + +// Currency Count: 1 +// Display Name: nad +changenow.set('nad', null) + +// Currency Count: 1 +// Display Name: nano +changenow.set('nano', null) + +// Currency Count: 1 +// Display Name: near +changenow.set('near', null) + +// Currency Count: 1 +// Display Name: ngn +changenow.set('ngn', null) + +// Currency Count: 1 +// Display Name: nok +changenow.set('nok', null) + +// Currency Count: 1 +// Display Name: nzd +changenow.set('nzd', null) + +// Currency Count: 1 +// Display Name: omr +changenow.set('omr', null) + +// Currency Count: 1 +// Display Name: one +changenow.set('one', null) + +// Currency Count: 2 +// Display Name: ont +changenow.set('ont', null) + +// Currency Count: 13 +// Display Name: op +changenow.set('op', null) + +// Currency Count: 2 +// Display Name: opbnb +changenow.set('opbnb', null) + +// Currency Count: 1 +// Display Name: osmo +changenow.set('osmo', null) + +// Currency Count: 1 +// Display Name: pab +changenow.set('pab', null) + +// Currency Count: 1 +// Display Name: pen +changenow.set('pen', null) + +// Currency Count: 1 +// Display Name: pgk +changenow.set('pgk', null) + +// Currency Count: 1 +// Display Name: php +changenow.set('php', null) + +// Currency Count: 1 +// Display Name: pivx +changenow.set('pivx', null) + +// Currency Count: 1 +// Display Name: pkr +changenow.set('pkr', null) + +// Currency Count: 1 +// Display Name: pln +changenow.set('pln', null) + +// Currency Count: 1 +// Display Name: pulse +changenow.set('pulse', null) + +// Currency Count: 1 +// Display Name: pyg +changenow.set('pyg', null) + +// Currency Count: 1 +// Display Name: qar +changenow.set('qar', null) + +// Currency Count: 1 +// Display Name: qtum +changenow.set('qtum', null) + +// Currency Count: 1 +// Display Name: rsd +changenow.set('rsd', null) + +// Currency Count: 1 +// Display Name: rub +changenow.set('rub', null) + +// Currency Count: 1 +// Display Name: rvn +changenow.set('rvn', null) + +// Currency Count: 1 +// Display Name: sar +changenow.set('sar', null) + +// Currency Count: 1 +// Display Name: sei +changenow.set('sei', null) + +// Currency Count: 1 +// Display Name: seievm +changenow.set('seievm', null) + +// Currency Count: 1 +// Display Name: sek +changenow.set('sek', null) + +// Currency Count: 1 +// Display Name: sgd +changenow.set('sgd', null) + +// Currency Count: 140 +// Display Name: sol +changenow.set('sol', null) + +// Currency Count: 1 +// Display Name: sonic +changenow.set('sonic', null) + +// Currency Count: 2 +// Display Name: strk +changenow.set('strk', null) + +// Currency Count: 1 +// Display Name: stx +changenow.set('stx', null) + +// Currency Count: 1 +// Display Name: sui +changenow.set('sui', null) + +// Currency Count: 1 +// Display Name: sxp +changenow.set('sxp', null) + +// Currency Count: 1 +// Display Name: sysevm +changenow.set('sysevm', null) + +// Currency Count: 1 +// Display Name: thb +changenow.set('thb', null) + +// Currency Count: 3 +// Display Name: theta +changenow.set('theta', null) + +// Currency Count: 1 +// Display Name: tia +changenow.set('tia', null) + +// Currency Count: 22 +// Display Name: ton +changenow.set('ton', null) + +// Currency Count: 14 +// Display Name: trx +changenow.set('trx', null) + +// Currency Count: 1 +// Display Name: try +changenow.set('try', null) + +// Currency Count: 1 +// Display Name: ttd +changenow.set('ttd', null) + +// Currency Count: 1 +// Display Name: twd +changenow.set('twd', null) + +// Currency Count: 1 +// Display Name: tzs +changenow.set('tzs', null) + +// Currency Count: 1 +// Display Name: uah +changenow.set('uah', null) + +// Currency Count: 1 +// Display Name: ugx +changenow.set('ugx', null) + +// Currency Count: 1 +// Display Name: uyu +changenow.set('uyu', null) + +// Currency Count: 2 +// Display Name: vet +changenow.set('vet', null) + +// Currency Count: 1 +// Display Name: vnd +changenow.set('vnd', null) + +// Currency Count: 1 +// Display Name: waves +changenow.set('waves', null) + +// Currency Count: 1 +// Display Name: wemix +changenow.set('wemix', null) + +// Currency Count: 1 +// Display Name: xaf +changenow.set('xaf', null) + +// Currency Count: 1 +// Display Name: xch +changenow.set('xch', null) + +// Currency Count: 1 +// Display Name: xchain +changenow.set('xchain', null) + +// Currency Count: 1 +// Display Name: xdc +changenow.set('xdc', null) + +// Currency Count: 1 +// Display Name: xec +changenow.set('xec', null) + +// Currency Count: 1 +// Display Name: xlm +changenow.set('xlm', null) + +// Currency Count: 1 +// Display Name: xmr +changenow.set('xmr', null) + +// Currency Count: 1 +// Display Name: xof +changenow.set('xof', null) + +// Currency Count: 1 +// Display Name: xrp +changenow.set('xrp', null) + +// Currency Count: 1 +// Display Name: xtz +changenow.set('xtz', null) + +// Currency Count: 1 +// Display Name: xvg +changenow.set('xvg', null) + +// Currency Count: 1 +// Display Name: zar +changenow.set('zar', null) + +// Currency Count: 1 +// Display Name: zec +changenow.set('zec', null) + +// Currency Count: 1 +// Display Name: zil +changenow.set('zil', null) + +// Currency Count: 2 +// Display Name: zksync +changenow.set('zksync', null) + +// Currency Count: 1 +// Display Name: zmw +changenow.set('zmw', null) diff --git a/scripts/mappings/exolixMappings.ts b/scripts/mappings/exolixMappings.ts new file mode 100644 index 00000000..8d15836e --- /dev/null +++ b/scripts/mappings/exolixMappings.ts @@ -0,0 +1,742 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const exolix = new Map() +// Display Name: 3ULL +exolix.set('3ULL', null) + +// Display Name: Acala +exolix.set('ACA', null) + +// Display Name: Cardano +exolix.set('ADA', null) + +// Display Name: AKASH +exolix.set('AKASH', null) + +// Display Name: Algorand +// Short Name: ALGO +exolix.set('ALGO', null) + +// Display Name: ALPH +exolix.set('ALPH', null) + +// Display Name: Ambrosus +// Short Name: AMB +exolix.set('AMB', null) + +// Display Name: ANDR +exolix.set('ANDR', null) + +// Display Name: Aptos +// Short Name: APT +exolix.set('APT', null) + +// Display Name: Arweave +exolix.set('AR', null) + +// Display Name: Arbitrum One +// Short Name: ARB +exolix.set('ARBITRUM', null) + +// Display Name: ARCH +exolix.set('ARCH', null) + +// Display Name: Ardor +exolix.set('ARDR', null) + +// Display Name: Pirate Chain +// Short Name: ARRR +exolix.set('ARRR', null) + +// Display Name: Astar Network +exolix.set('ASTR', null) + +// Display Name: Cosmos +// Short Name: ATOM +exolix.set('ATOM', null) + +// Display Name: AURA +exolix.set('AURA', null) + +// Display Name: AURORA +exolix.set('AURORA', null) + +// Display Name: Avalanche C-CHAIN +// Short Name: AVAX_CCHAIN +exolix.set('AVAXC', null) + +// Display Name: AZERO +exolix.set('AZERO', null) + +// Display Name: Babylon +exolix.set('BABYLON', null) + +// Display Name: Banano +exolix.set('BAN', null) + +// Display Name: BAND +// Short Name: BAND +exolix.set('BAND', null) + +// Display Name: BASE MAINNET +exolix.set('BASE', null) + +// Display Name: Bitcoin Cash +exolix.set('BCH', null) + +// Display Name: BELDEX +// Short Name: BDX +exolix.set('BDX', null) + +// Display Name: Beam +// Short Name: BEAM +exolix.set('BEAM', null) + +// Display Name: BELLS +exolix.set('BELLS', null) + +// Display Name: BERACHAIN +exolix.set('BERA', null) + +// Display Name: Bitcicoin +// Short Name: BITCI +exolix.set('BITCI', null) + +// Display Name: BLAST +exolix.set('BLAST', null) + +// Display Name: BLD +exolix.set('BLD', null) + +// Display Name: Bifrost +// Short Name: BNC +exolix.set('BNC', null) + +// Display Name: BRC20 +exolix.set('BRC20', null) + +// Display Name: BRISE +exolix.set('BRISE', null) + +// Display Name: BNB Smart Chain (BEP20) +// Short Name: BEP20 +exolix.set('BSC', null) + +// Display Name: Bitcoin SV +// Short Name: BSV +exolix.set('BSV', null) + +// Display Name: Bitcoin +exolix.set('BTC', null) + +// Display Name: BTCRUNES +exolix.set('BTCRUNES', null) + +// Display Name: BitShares +exolix.set('BTS', null) + +// Display Name: BitTorrent Chain +// Short Name: BTT +exolix.set('BTT', null) + +// Display Name: BXN +exolix.set('BXN', null) + +// Display Name: CONCORDIUM +exolix.set('CCD', null) + +// Display Name: CELO +// Short Name: CELO +exolix.set('CELO', null) + +// Display Name: CHEQ +exolix.set('CHEQ', null) + +// Display Name: Chiliz Chain +// Short Name: CHZ +exolix.set('CHZ', null) + +// Display Name: Nervos Network +exolix.set('CKB', null) + +// Display Name: CLORE +exolix.set('CLORE', null) + +// Display Name: CORE +exolix.set('CORE', null) + +// Display Name: Trust Chain +// Short Name: COTI +exolix.set('COTI', null) + +// Display Name: Cronos Chain +// Short Name: CRO +exolix.set('CRO', null) + +// Display Name: CertiK +// Short Name: CTK +exolix.set('CTK', null) + +// Display Name: Cortex +// Short Name: CTXC +exolix.set('CTXC', null) + +// Display Name: Constellation +// Short Name: DAG +exolix.set('DAG', null) + +// Display Name: Dash +// Short Name: DASH +exolix.set('DASH', null) + +// Display Name: Decred +// Short Name: DCR +exolix.set('DCR', null) + +// Display Name: DigiByte +exolix.set('DGB', null) + +// Display Name: DIONE +exolix.set('DIONE', null) + +// Display Name: DNX +exolix.set('DNX', null) + +// Display Name: dogecoin +// Short Name: DOGE +exolix.set('DOGE', null) + +// Display Name: DYM +exolix.set('DYM', null) + +// Display Name: Elrond eGold +// Short Name: EGLD +exolix.set('EGLD', null) + +// Display Name: ELA mainchain +exolix.set('ELA', null) + +// Display Name: Aelf +// Short Name: ELF +exolix.set('ELF', null) + +// Display Name: EOS +exolix.set('EOS', null) + +// Display Name: Ergo Network +exolix.set('ERG', null) + +// Display Name: Ethereum Classic +// Short Name: ETC +exolix.set('ETC', null) + +// Display Name: Ethereum +// Short Name: ERC20 +exolix.set('ETH', null) + +// Display Name: EthereumPoW +// Short Name: ETHW +exolix.set('EthereumPoW', null) + +// Display Name: Electroneum +// Short Name: ETN +exolix.set('ETN', null) + +// Display Name: Fractal Bitcoin +// Short Name: FB +exolix.set('FB', null) + +// Display Name: Fetch.AI +// Short Name: FET +exolix.set('FET', null) + +// Display Name: Filecoin +// Short Name: FIL +exolix.set('FIL', null) + +// Display Name: FIO +// Short Name: FIO +exolix.set('FIO', null) + +// Display Name: FITFI +exolix.set('FITFI', null) + +// Display Name: FLARE +exolix.set('FLARE', null) + +// Display Name: Flow +exolix.set('FLOW', null) + +// Display Name: FLR +exolix.set('FLR', null) + +// Display Name: FLUX +exolix.set('FLUX', null) + +// Display Name: Bahamut (BHRC20) +// Short Name: BHRC20 +exolix.set('FTN', null) + +// Display Name: Moonbeam +// Short Name: GLMR +exolix.set('GLMR', null) + +// Display Name: GLQ +exolix.set('GLQ', null) + +// Display Name: GMMT +exolix.set('GMMT', null) + +// Display Name: GT +exolix.set('GT', null) + +// Display Name: GUNZ +exolix.set('GUNZ', null) + +// Display Name: HAQQ +exolix.set('HAQQ', null) + +// Display Name: Hedera Hashgraph +// Short Name: HBAR +exolix.set('HBAR', null) + +// Display Name: HIVE +// Short Name: HIVE +exolix.set('HIVE', null) + +// Display Name: HTR +exolix.set('HTR', null) + +// Display Name: Hyperliquid +exolix.set('HYPE', null) + +// Display Name: Internet Computer +// Short Name: ICP +exolix.set('ICP', null) + +// Display Name: ICON +// Short Name: ICX +exolix.set('ICX', null) + +// Display Name: INIT +exolix.set('INITIA', null) + +// Display Name: Injective Protocol +// Short Name: INJ +exolix.set('INJ', null) + +// Display Name: IOST +// Short Name: IOST +exolix.set('IOST', null) + +// Display Name: IoTeX +// Short Name: IOTX +exolix.set('IOTX', null) + +// Display Name: IRISnet +exolix.set('IRIS', null) + +// Display Name: IRON +exolix.set('IRON', null) + +// Display Name: KAIA +exolix.set('KAIA', null) + +// Display Name: Karura +exolix.set('KAR', null) + +// Display Name: Kaspa +// Short Name: KASPA +exolix.set('KAS', null) + +// Display Name: KAVA +exolix.set('KAVA', null) + +// Display Name: KCALP +exolix.set('KCALP', null) + +// Display Name: KLS +exolix.set('KLS', null) + +// Display Name: KLV +exolix.set('KLV', null) + +// Display Name: Komodo +// Short Name: KMD +exolix.set('KMD', null) + +// Display Name: KYVE +exolix.set('KYVE', null) + +// Display Name: LAVA +exolix.set('LAVA', null) + +// Display Name: LINEA +exolix.set('LINEA', null) + +// Display Name: LKY +exolix.set('LKY', null) + +// Display Name: Litecoin +// Short Name: LTC +exolix.set('LTC', null) + +// Display Name: LUMIA +exolix.set('LUMIA', null) + +// Display Name: Terra +exolix.set('LUNA', null) + +// Display Name: Terra Classic +exolix.set('LUNC', null) + +// Display Name: LYX +exolix.set('LYX', null) + +// Display Name: Manta Network +exolix.set('MANTA', null) + +// Display Name: MAPO +exolix.set('MAPO', null) + +// Display Name: Polygon +// Short Name: POLYGON +exolix.set('MATIC', null) + +// Display Name: Merlin +// Short Name: MERL +exolix.set('MERLIN', null) + +// Display Name: METIS +exolix.set('METIS', null) + +// Display Name: MILKYWAY +exolix.set('MILKYWAY', null) + +// Display Name: Mina +exolix.set('MINA', null) + +// Display Name: MobileCoin +exolix.set('MOB', null) + +// Display Name: MODEETH +exolix.set('MODEETH', null) + +// Display Name: MOVE +exolix.set('MOVE', null) + +// Display Name: MPC +exolix.set('MPC', null) + +// Display Name: NANO +exolix.set('NANO', null) + +// Display Name: Navcoin +exolix.set('NAV', null) + +// Display Name: New BitShares +exolix.set('NBS', null) + +// Display Name: NEAR Protocol +exolix.set('NEAR', null) + +// Display Name: Neo Legacy +exolix.set('NEO', null) + +// Display Name: NEO3 +exolix.set('NEO3', null) + +// Display Name: NIBI +exolix.set('NIBI', null) + +// Display Name: Nimiq +// Short Name: NIM +exolix.set('NIMIQ', null) + +// Display Name: NTRN +exolix.set('NTRN', null) + +// Display Name: OAS +exolix.set('OAS', null) + +// Display Name: OASYS +exolix.set('OASYS', null) + +// Display Name: Harmony +// Short Name: ONE +exolix.set('ONE', null) + +// Display Name: Ontology +exolix.set('ONT', null) + +// Display Name: OORT +exolix.set('OORT', null) + +// Display Name: Optimism +// Short Name: OP +exolix.set('OPTIMISM', null) + +// Display Name: Osmosis +// Short Name: OSMO +exolix.set('OSMO', null) + +// Display Name: PEPECOIN +exolix.set('PEPECOIN', null) + +// Display Name: PI +// Short Name: PI +exolix.set('PINETWORK', null) + +// Display Name: PIVX +exolix.set('PIVX', null) + +// Display Name: POKT +exolix.set('POKT', null) + +// Display Name: POLYX +exolix.set('POLYX', null) + +// Display Name: QTC +exolix.set('QTC', null) + +// Display Name: Qtum +// Short Name: QTUM +exolix.set('QTUM', null) + +// Display Name: QUBIC +exolix.set('QUBIC', null) + +// Display Name: RADIX +// Short Name: XRD +exolix.set('RADIX', null) + +// Display Name: Rootstock +// Short Name: RBTC +exolix.set('RBTC', null) + +// Display Name: Reef +// Short Name: REEF +exolix.set('REEF', null) + +// Display Name: REI Network +exolix.set('REI', null) + +// Display Name: Ronin Network +exolix.set('RON', null) + +// Display Name: ROOT +exolix.set('ROOT', null) + +// Display Name: Oasis Network +// Short Name: ROSE +exolix.set('ROSE', null) + +// Display Name: RSK +exolix.set('RSK', null) + +// Display Name: THORChain +exolix.set('RUNE', null) + +// Display Name: Ravencoin +// Short Name: RVN +exolix.set('RVN', null) + +// Display Name: SAGA +exolix.set('SAGA', null) + +// Display Name: Siacoin +// Short Name: SC +exolix.set('SC', null) + +// Display Name: SCROLL +exolix.set('SCROLL', null) + +// Display Name: Secret +exolix.set('SCRT', null) + +// Display Name: Sei Network +exolix.set('SEI', null) + +// Display Name: Songbird +exolix.set('SGB', null) + +// Display Name: SHARDEUM +exolix.set('SHARDEUM', null) + +// Display Name: Solana +exolix.set('SOL', null) + +// Display Name: Sonic +exolix.set('SONIC', null) + +// Display Name: SPACE +exolix.set('SPACE', null) + +// Display Name: Starknet +exolix.set('STARKNET', null) + +// Display Name: Steem +exolix.set('STEEM', null) + +// Display Name: STORY +exolix.set('STORY', null) + +// Display Name: Stratis +// Short Name: STRAX +exolix.set('STRAX', null) + +// Display Name: STRKETH +exolix.set('STRKETH', null) + +// Display Name: STT +exolix.set('STT', null) + +// Display Name: Stacks +// Short Name: STX +exolix.set('STX', null) + +// Display Name: Sui +// Short Name: SUI +exolix.set('SUI', null) + +// Display Name: SUPRA +exolix.set('SUPRA', null) + +// Display Name: Sxp +// Short Name: SXP +exolix.set('SXP', null) + +// Display Name: Syscoin +// Short Name: SYS +exolix.set('SYS', null) + +// Display Name: TAIKO +exolix.set('TAIKO', null) + +// Display Name: TAO +exolix.set('TAO', null) + +// Display Name: TAP Protocol +exolix.set('TAP', null) + +// Display Name: TARA +exolix.set('TARA', null) + +// Display Name: Tari +exolix.set('TARI', null) + +// Display Name: Telos +exolix.set('TELOS', null) + +// Display Name: Theta Token +exolix.set('THETA', null) + +// Display Name: TIA +exolix.set('TIA', null) + +// Display Name: TLOS +exolix.set('TLOS', null) + +// Display Name: TomoChain +// Short Name: TOMO +exolix.set('TOMO', null) + +// Display Name: The Open Network +// Short Name: TONCOIN +exolix.set('TON', null) + +// Display Name: Tron +// Short Name: TRC20 +exolix.set('TRX', null) + +// Display Name: VANRY +exolix.set('VANRY', null) + +// Display Name: VARA +exolix.set('VARA', null) + +// Display Name: Venom Blockchain +exolix.set('VENOM', null) + +// Display Name: VeChain +exolix.set('VET', null) + +// Display Name: VSC +exolix.set('VSC', null) + +// Display Name: Wanchain +// Short Name: WAN +exolix.set('WAN', null) + +// Display Name: Waves +exolix.set('WAVES', null) + +// Display Name: WAX +exolix.set('WAX', null) + +// Display Name: Chia +// Short Name: XCH +exolix.set('XCH', null) + +// Display Name: eCash +// Short Name: XEC +exolix.set('XEC', null) + +// Display Name: XELIS +exolix.set('XELIS', null) + +// Display Name: NEM +// Short Name: XEM +exolix.set('XEM', null) + +// Display Name: CrossFi XFI +// Short Name: XFI +exolix.set('XFI', null) + +// Display Name: XION +exolix.set('XION', null) + +// Display Name: Stellar +// Short Name: STELLAR +exolix.set('XLM', null) + +// Display Name: Monero +// Short Name: XMR +exolix.set('XMR', null) + +// Display Name: XNA +exolix.set('XNA', null) + +// Display Name: XPLA +exolix.set('XPLA', null) + +// Display Name: Proton +// Short Name: XPR +exolix.set('XPR', null) + +// Display Name: Ripple +exolix.set('XRP', null) + +// Display Name: Tezos +exolix.set('XTZ', null) + +// Display Name: Verge +exolix.set('XVG', null) + +// Display Name: Symbol +// Short Name: XYM +exolix.set('XYM', null) + +// Display Name: Zano +exolix.set('ZANO', null) + +// Display Name: ZETA +exolix.set('ZETACHAIN', null) + +// Display Name: Zilliqa +// Short Name: ZIL +exolix.set('ZIL', null) + +// Display Name: ZKSYNC +// Short Name: ZKV2 +exolix.set('ZKSYNCERA', null) diff --git a/scripts/mappings/godexMappings.ts b/scripts/mappings/godexMappings.ts new file mode 100644 index 00000000..a34a709f --- /dev/null +++ b/scripts/mappings/godexMappings.ts @@ -0,0 +1,302 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const godex = new Map() +// Display Name: ACA +godex.set('ACA', null) + +// Display Name: Algorand +godex.set('ALGO', null) + +// Display Name: Aptos +godex.set('APT', null) + +// Display Name: Arweave +godex.set('AR', null) + +// Display Name: Arbitrum One +godex.set('ARBITRUM', null) + +// Display Name: Ardor +godex.set('ARDR', null) + +// Display Name: Ark +godex.set('ARK', null) + +// Display Name: Astar +godex.set('ASTR', null) + +// Display Name: Cosmos +godex.set('ATOM', null) + +// Display Name: Avalanche +godex.set('AVAX', null) + +// Display Name: AVAX C-Chain +godex.set('AVAXC', null) + +// Display Name: BAND +godex.set('BAND', null) + +// Display Name: Base +godex.set('BASE', null) + +// Display Name: Bitcoin Cash +godex.set('BCH', null) + +// Display Name: BNC +godex.set('BNC', null) + +// Display Name: Binance Smart Chain (BEP20) +godex.set('BSC', null) + +// Display Name: Bitcoin +godex.set('BTC', null) + +// Display Name: CELO +godex.set('CELO', null) + +// Display Name: Conflux +godex.set('CFX', null) + +// Display Name: Chiliz +godex.set('Chiliz', null) + +// Display Name: CHZ +godex.set('CHZ', null) + +// Display Name: CKB +godex.set('CKB', null) + +// Display Name: CertiK +godex.set('CTK', null) + +// Display Name: Dash +godex.set('DASH', null) + +// Display Name: Decred +godex.set('DCR', null) + +// Display Name: DigiByte +godex.set('DGB', null) + +// Display Name: dogecoin +godex.set('DOGE', null) + +// Display Name: Elrond eGold +godex.set('EGLD', null) + +// Display Name: Enjin Blockchain +godex.set('ENJ', null) + +// Display Name: EOS +godex.set('EOS', null) + +// Display Name: Ethereum Classic +godex.set('ETC', null) + +// Display Name: Ethereum Express Chain +godex.set('ETE', null) + +// Display Name: Ethereum +godex.set('ETH', null) + +// Display Name: Fetch.AI +godex.set('FET', null) + +// Display Name: Filecoin +godex.set('FIL', null) + +// Display Name: FIO Protocol +godex.set('FIO', null) + +// Display Name: Flow +godex.set('FLOW', null) + +// Display Name: Fantom +godex.set('FTM', null) + +// Display Name: Moonbeam +godex.set('GLMR', null) + +// Display Name: Hedera Hashgraph +godex.set('HBAR', null) + +// Display Name: HIVE +godex.set('HIVE', null) + +// Display Name: Internet Computer +godex.set('ICP', null) + +// Display Name: ICON +godex.set('ICX', null) + +// Display Name: Injective Protocol +godex.set('INJ', null) + +// Display Name: IOST +godex.set('IOST', null) + +// Display Name: MIOTA +godex.set('IOTA', null) + +// Display Name: IoTeX +godex.set('IOTX', null) + +// Display Name: Kaspa +godex.set('KAS', null) + +// Display Name: KAVA +godex.set('KAVA', null) + +// Display Name: Linea +godex.set('LINEA', null) + +// Display Name: Litecoin +godex.set('LTC', null) + +// Display Name: Terra +godex.set('LUNA', null) + +// Display Name: LUNC +godex.set('LUNC', null) + +// Display Name: Manta Network +godex.set('MANTA', null) + +// Display Name: Polygon +godex.set('MATIC', null) + +// Display Name: METIS +godex.set('METIS', null) + +// Display Name: Mina +godex.set('MINA', null) + +// Display Name: Moonriver +godex.set('MOVR', null) + +// Display Name: NEAR Protocol +godex.set('NEAR', null) + +// Display Name: Neotube +godex.set('NEO3', null) + +// Display Name: Harmony +godex.set('ONE', null) + +// Display Name: Ontology +godex.set('ONT', null) + +// Display Name: OPTIMISM +godex.set('OPTIMISM', null) + +// Display Name: OSMO +godex.set('OSMO', null) + +// Display Name: PIVX +godex.set('PIVX', null) + +// Display Name: PLC Ultima +godex.set('PLCU', null) + +// Display Name: POLYX +godex.set('POLYX', null) + +// Display Name: Qtum +godex.set('QTUM', null) + +// Display Name: REI +godex.set('REI', null) + +// Display Name: Ronin +godex.set('RON', null) + +// Display Name: Oasis Network +godex.set('ROSE', null) + +// Display Name: RSK +godex.set('RSK', null) + +// Display Name: RUNE +godex.set('RUNE', null) + +// Display Name: Ravencoin +godex.set('RVN', null) + +// Display Name: SCRT +godex.set('SCRT', null) + +// Display Name: SEI +godex.set('SEI', null) + +// Display Name: Solana Network +godex.set('SOL', null) + +// Display Name: StarkNet +godex.set('STARKNET', null) + +// Display Name: Steem +godex.set('STEEM', null) + +// Display Name: Stratis +godex.set('STRAX', null) + +// Display Name: SUI +godex.set('SUI', null) + +// Display Name: SXP +godex.set('SXP', null) + +// Display Name: Syscoin +godex.set('SYS', null) + +// Display Name: FUSOTAO +godex.set('TAO', null) + +// Display Name: Theta Token +godex.set('THETA', null) + +// Display Name: Celestia +godex.set('TIA', null) + +// Display Name: The Open network +godex.set('TON', null) + +// Display Name: Tron +godex.set('TRX', null) + +// Display Name: VeChain +godex.set('VET', null) + +// Display Name: Viacoin +godex.set('VIA', null) + +// Display Name: Wanchain +godex.set('WAN', null) + +// Display Name: WAX +godex.set('WAX', null) + +// Display Name: eCash +godex.set('XEC', null) + +// Display Name: Stellar Lumens +godex.set('XLM', null) + +// Display Name: Monero +godex.set('XMR', null) + +// Display Name: Ripple +godex.set('XRP', null) + +// Display Name: Tezos +godex.set('XTZ', null) + +// Display Name: Verge +godex.set('XVG', null) + +// Display Name: Zilliqa +godex.set('ZIL', null) + +// Display Name: ZKSYNC +godex.set('ZKSYNC', null) diff --git a/scripts/mappings/letsexchangeMappings.ts b/scripts/mappings/letsexchangeMappings.ts new file mode 100644 index 00000000..677d250f --- /dev/null +++ b/scripts/mappings/letsexchangeMappings.ts @@ -0,0 +1,1385 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const letsexchange = new Map() +// Display Name: 0G +letsexchange.set('0G', null) + +// Display Name: 3ULL +letsexchange.set('3ULL', null) + +// Display Name: AAC +letsexchange.set('AAC', null) + +// Display Name: AB +letsexchange.set('AB', null) + +// Display Name: ABEL +letsexchange.set('ABEL', null) + +// Display Name: ABEY +letsexchange.set('ABEY', null) + +// Display Name: ACA +letsexchange.set('ACA', null) + +// Display Name: ADA +letsexchange.set('ADA', null) + +// Display Name: ADK +letsexchange.set('ADK', null) + +// Display Name: AE +letsexchange.set('AE', null) + +// Display Name: AGC +letsexchange.set('AGC', null) + +// Display Name: AIR +letsexchange.set('AIR', null) + +// Display Name: AJUN +letsexchange.set('AJUN', null) + +// Display Name: AKT +letsexchange.set('AKT', null) + +// Display Name: ALEO +letsexchange.set('ALEO', null) + +// Display Name: ALGO +letsexchange.set('ALGO', null) + +// Display Name: ALPH +letsexchange.set('ALPH', null) + +// Display Name: AMB +letsexchange.set('AMB', null) + +// Display Name: AME +letsexchange.set('AME', null) + +// Display Name: AOA +letsexchange.set('AOA', null) + +// Display Name: APL +letsexchange.set('APL', null) + +// Display Name: APT +letsexchange.set('APT', null) + +// Display Name: AR +letsexchange.set('AR', null) + +// Display Name: ARBITRUM +letsexchange.set('ARBITRUM', null) + +// Display Name: ARBITRUM BRIDGED +letsexchange.set('ARBITRUM BRIDGED', null) + +// Display Name: ARBNOVA +letsexchange.set('ARBNOVA', null) + +// Display Name: ARCH +letsexchange.set('ARCH', null) + +// Display Name: ARDR +letsexchange.set('ARDR', null) + +// Display Name: AREA +letsexchange.set('AREA', null) + +// Display Name: ARK +letsexchange.set('ARK', null) + +// Display Name: ARRR +letsexchange.set('ARRR', null) + +// Display Name: ASTR +letsexchange.set('ASTR', null) + +// Display Name: ASTR EVM +letsexchange.set('ASTR EVM', null) + +// Display Name: ATOM +letsexchange.set('ATOM', null) + +// Display Name: AURORA +letsexchange.set('AURORA', null) + +// Display Name: AVAIL +letsexchange.set('AVAIL', null) + +// Display Name: AVAX +letsexchange.set('AVAX', null) + +// Display Name: AVAXC +letsexchange.set('AVAXC', null) + +// Display Name: AXEL +letsexchange.set('AXEL', null) + +// Display Name: AXM +letsexchange.set('AXM', null) + +// Display Name: AZERO +letsexchange.set('AZERO', null) + +// Display Name: BAJU +letsexchange.set('BAJU', null) + +// Display Name: BAN +letsexchange.set('BAN', null) + +// Display Name: BAND +letsexchange.set('BAND', null) + +// Display Name: BASE +letsexchange.set('BASE', null) + +// Display Name: BCH +letsexchange.set('BCH', null) + +// Display Name: BCHSV +letsexchange.set('BCHSV', null) + +// Display Name: BDX +letsexchange.set('BDX', null) + +// Display Name: BELLS +letsexchange.set('BELLS', null) + +// Display Name: BEP20 +letsexchange.set('BEP20', null) + +// Display Name: BERA +letsexchange.set('BERA', null) + +// Display Name: BFIC +letsexchange.set('BFIC', null) + +// Display Name: BITCI +letsexchange.set('BITCI', null) + +// Display Name: BLAST +letsexchange.set('BLAST', null) + +// Display Name: BLD +letsexchange.set('BLD', null) + +// Display Name: BLOCX +letsexchange.set('BLOCX', null) + +// Display Name: BNB +letsexchange.set('BNB', null) + +// Display Name: BNC +letsexchange.set('BNC', null) + +// Display Name: BOBA +letsexchange.set('BOBA', null) + +// Display Name: BOUNCEBIT +letsexchange.set('BOUNCEBIT', null) + +// Display Name: BRC20 +letsexchange.set('BRC20', null) + +// Display Name: BRISE +letsexchange.set('BRISE', null) + +// Display Name: BSV +letsexchange.set('BSV', null) + +// Display Name: BTC +letsexchange.set('BTC', null) + +// Display Name: BTCRUNES +letsexchange.set('BTCRUNES', null) + +// Display Name: BTCV +letsexchange.set('BTCV', null) + +// Display Name: BTCZ +letsexchange.set('BTCZ', null) + +// Display Name: BTF +letsexchange.set('BTF', null) + +// Display Name: BTG +letsexchange.set('BTG', null) + +// Display Name: BTM +letsexchange.set('BTM', null) + +// Display Name: BTS +letsexchange.set('BTS', null) + +// Display Name: BTTC +letsexchange.set('BTTC', null) + +// Display Name: BTY +letsexchange.set('BTY', null) + +// Display Name: BXN +letsexchange.set('BXN', null) + +// Display Name: CANTO +letsexchange.set('CANTO', null) + +// Display Name: CAPS +letsexchange.set('CAPS', null) + +// Display Name: CAU +letsexchange.set('CAU', null) + +// Display Name: CC +letsexchange.set('CC', null) + +// Display Name: CCD +letsexchange.set('CCD', null) + +// Display Name: CELO +letsexchange.set('CELO', null) + +// Display Name: CFG +letsexchange.set('CFG', null) + +// Display Name: CFX +letsexchange.set('CFX', null) + +// Display Name: CFX EVM +letsexchange.set('CFX EVM', null) + +// Display Name: CHEQ +letsexchange.set('CHEQ', null) + +// Display Name: CHZ +letsexchange.set('CHZ', null) + +// Display Name: CKB +letsexchange.set('CKB', null) + +// Display Name: CLO +letsexchange.set('CLO', null) + +// Display Name: CLORE +letsexchange.set('CLORE', null) + +// Display Name: CMP +letsexchange.set('CMP', null) + +// Display Name: CORE +letsexchange.set('CORE', null) + +// Display Name: COREUM +letsexchange.set('COREUM', null) + +// Display Name: COTI +letsexchange.set('COTI', null) + +// Display Name: CPC +letsexchange.set('CPC', null) + +// Display Name: CRO +letsexchange.set('CRO', null) + +// Display Name: CROEVM +letsexchange.set('CROEVM', null) + +// Display Name: CRU +letsexchange.set('CRU', null) + +// Display Name: CS +letsexchange.set('CS', null) + +// Display Name: CSPR +letsexchange.set('CSPR', null) + +// Display Name: CTK +letsexchange.set('CTK', null) + +// Display Name: CTXC +letsexchange.set('CTXC', null) + +// Display Name: CUBE +letsexchange.set('CUBE', null) + +// Display Name: DAG +letsexchange.set('DAG', null) + +// Display Name: DARC +letsexchange.set('DARC', null) + +// Display Name: DASH +letsexchange.set('DASH', null) + +// Display Name: DBC +letsexchange.set('DBC', null) + +// Display Name: DCR +letsexchange.set('DCR', null) + +// Display Name: DCRN +letsexchange.set('DCRN', null) + +// Display Name: DEROHE +letsexchange.set('DEROHE', null) + +// Display Name: DESO +letsexchange.set('DESO', null) + +// Display Name: DFI +letsexchange.set('DFI', null) + +// Display Name: DGB +letsexchange.set('DGB', null) + +// Display Name: DINGO +letsexchange.set('DINGO', null) + +// Display Name: DIONE +letsexchange.set('DIONE', null) + +// Display Name: DIVI +letsexchange.set('DIVI', null) + +// Display Name: DNX +letsexchange.set('DNX', null) + +// Display Name: DOCK +letsexchange.set('DOCK', null) + +// Display Name: DOGE +letsexchange.set('DOGE', null) + +// Display Name: DOGECHAIN +letsexchange.set('DOGECHAIN', null) + +// Display Name: DOT +letsexchange.set('DOT', null) + +// Display Name: DVPN +letsexchange.set('DVPN', null) + +// Display Name: DYDX +letsexchange.set('DYDX', null) + +// Display Name: DYM +letsexchange.set('DYM', null) + +// Display Name: DYMEVM +letsexchange.set('DYMEVM', null) + +// Display Name: EDG +letsexchange.set('EDG', null) + +// Display Name: EFI +letsexchange.set('EFI', null) + +// Display Name: EGAX +letsexchange.set('EGAX', null) + +// Display Name: EGLD +letsexchange.set('EGLD', null) + +// Display Name: EGON +letsexchange.set('EGON', null) + +// Display Name: ELA +letsexchange.set('ELA', null) + +// Display Name: ELF +letsexchange.set('ELF', null) + +// Display Name: ELYS +letsexchange.set('ELYS', null) + +// Display Name: EM +letsexchange.set('EM', null) + +// Display Name: ENJ +letsexchange.set('ENJ', null) + +// Display Name: ENQ +letsexchange.set('ENQ', null) + +// Display Name: EOS +letsexchange.set('EOS', null) + +// Display Name: EOSC +letsexchange.set('EOSC', null) + +// Display Name: EQ +letsexchange.set('EQ', null) + +// Display Name: ERC20 +letsexchange.set('ERC20', null) + +// Display Name: ERG +letsexchange.set('ERG', null) + +// Display Name: ESC +letsexchange.set('ESC', null) + +// Display Name: ETC +letsexchange.set('ETC', null) + +// Display Name: ETH +letsexchange.set('ETH', null) + +// Display Name: ETHF +letsexchange.set('ETHF', null) + +// Display Name: ETHW +letsexchange.set('ETHW', null) + +// Display Name: ETN +letsexchange.set('ETN', null) + +// Display Name: ETP +letsexchange.set('ETP', null) + +// Display Name: EVER +letsexchange.set('EVER', null) + +// Display Name: EVMOS +letsexchange.set('EVMOS', null) + +// Display Name: EWT +letsexchange.set('EWT', null) + +// Display Name: FACT +letsexchange.set('FACT', null) + +// Display Name: FB +letsexchange.set('FB', null) + +// Display Name: FET +letsexchange.set('FET', null) + +// Display Name: FIL +letsexchange.set('FIL', null) + +// Display Name: FIO +letsexchange.set('FIO', null) + +// Display Name: FIRO +letsexchange.set('FIRO', null) + +// Display Name: FIS +letsexchange.set('FIS', null) + +// Display Name: FITFI +letsexchange.set('FITFI', null) + +// Display Name: FLOW +letsexchange.set('FLOW', null) + +// Display Name: FLR +letsexchange.set('FLR', null) + +// Display Name: FLUX +letsexchange.set('FLUX', null) + +// Display Name: FNCY +letsexchange.set('FNCY', null) + +// Display Name: FRAEVM +letsexchange.set('FRAEVM', null) + +// Display Name: FSN +letsexchange.set('FSN', null) + +// Display Name: FTM +letsexchange.set('FTM', null) + +// Display Name: FTN +letsexchange.set('FTN', null) + +// Display Name: FUEL +letsexchange.set('FUEL', null) + +// Display Name: FUSE +letsexchange.set('FUSE', null) + +// Display Name: GALA2 +letsexchange.set('GALA2', null) + +// Display Name: GLMR +letsexchange.set('GLMR', null) + +// Display Name: GLQ +letsexchange.set('GLQ', null) + +// Display Name: GMMT +letsexchange.set('GMMT', null) + +// Display Name: GO +letsexchange.set('GO', null) + +// Display Name: GRC20 +letsexchange.set('GRC20', null) + +// Display Name: GRIN +letsexchange.set('GRIN', null) + +// Display Name: GSYS +letsexchange.set('GSYS', null) + +// Display Name: GTH +letsexchange.set('GTH', null) + +// Display Name: GXS +letsexchange.set('GXS', null) + +// Display Name: HAQQ +letsexchange.set('HAQQ', null) + +// Display Name: HBAR +letsexchange.set('HBAR', null) + +// Display Name: HC +letsexchange.set('HC', null) + +// Display Name: HECO +letsexchange.set('HECO', null) + +// Display Name: HIVE +letsexchange.set('HIVE', null) + +// Display Name: HMND +letsexchange.set('HMND', null) + +// Display Name: HNS +letsexchange.set('HNS', null) + +// Display Name: HNT +letsexchange.set('HNT', null) + +// Display Name: HPB +letsexchange.set('HPB', null) + +// Display Name: HTR +letsexchange.set('HTR', null) + +// Display Name: HUAHUA +letsexchange.set('HUAHUA', null) + +// Display Name: HYDRA +letsexchange.set('HYDRA', null) + +// Display Name: HYPE +letsexchange.set('HYPE', null) + +// Display Name: HYPEEVM +letsexchange.set('HYPEEVM', null) + +// Display Name: ICP +letsexchange.set('ICP', null) + +// Display Name: ICX +letsexchange.set('ICX', null) + +// Display Name: INJ +letsexchange.set('INJ', null) + +// Display Name: INT +letsexchange.set('INT', null) + +// Display Name: INTR +letsexchange.set('INTR', null) + +// Display Name: IOST +letsexchange.set('IOST', null) + +// Display Name: IOTAMAINNET +letsexchange.set('IOTAMAINNET', null) + +// Display Name: IOTX +letsexchange.set('IOTX', null) + +// Display Name: IP +letsexchange.set('IP', null) + +// Display Name: IRIS +letsexchange.set('IRIS', null) + +// Display Name: IRON +letsexchange.set('IRON', null) + +// Display Name: JOC +letsexchange.set('JOC', null) + +// Display Name: JUNO +letsexchange.set('JUNO', null) + +// Display Name: KAI +letsexchange.set('KAI', null) + +// Display Name: KAIA +letsexchange.set('KAIA', null) + +// Display Name: KAR +letsexchange.set('KAR', null) + +// Display Name: KAS +letsexchange.set('KAS', null) + +// Display Name: KAVA +letsexchange.set('KAVA', null) + +// Display Name: KAVAEVM +letsexchange.set('KAVAEVM', null) + +// Display Name: KCC +letsexchange.set('KCC', null) + +// Display Name: KDA +letsexchange.set('KDA', null) + +// Display Name: KILT +letsexchange.set('KILT', null) + +// Display Name: KINIC +letsexchange.set('KINIC', null) + +// Display Name: KLC +letsexchange.set('KLC', null) + +// Display Name: KLV +letsexchange.set('KLV', null) + +// Display Name: KMD +letsexchange.set('KMD', null) + +// Display Name: KOIN +letsexchange.set('KOIN', null) + +// Display Name: KON +letsexchange.set('KON', null) + +// Display Name: KRO +letsexchange.set('KRO', null) + +// Display Name: KRU +letsexchange.set('KRU', null) + +// Display Name: KSM +letsexchange.set('KSM', null) + +// Display Name: KUB +letsexchange.set('KUB', null) + +// Display Name: KUJI +letsexchange.set('KUJI', null) + +// Display Name: L1 +letsexchange.set('L1', null) + +// Display Name: LAMB +letsexchange.set('LAMB', null) + +// Display Name: LAT +letsexchange.set('LAT', null) + +// Display Name: LINEA +letsexchange.set('LINEA', null) + +// Display Name: LOKI +letsexchange.set('LOKI', null) + +// Display Name: LSK +letsexchange.set('LSK', null) + +// Display Name: LTC +letsexchange.set('LTC', null) + +// Display Name: LTO +letsexchange.set('LTO', null) + +// Display Name: LUK +letsexchange.set('LUK', null) + +// Display Name: LUMIA +letsexchange.set('LUMIA', null) + +// Display Name: LUNA +letsexchange.set('LUNA', null) + +// Display Name: LUNC +letsexchange.set('LUNC', null) + +// Display Name: LYX +letsexchange.set('LYX', null) + +// Display Name: MAN +letsexchange.set('MAN', null) + +// Display Name: MANTA +letsexchange.set('MANTA', null) + +// Display Name: MANTLE +letsexchange.set('MANTLE', null) + +// Display Name: MAPO +letsexchange.set('MAPO', null) + +// Display Name: MAS +letsexchange.set('MAS', null) + +// Display Name: MCOIN +letsexchange.set('MCOIN', null) + +// Display Name: MED +letsexchange.set('MED', null) + +// Display Name: MERLIN +letsexchange.set('MERLIN', null) + +// Display Name: METER +letsexchange.set('METER', null) + +// Display Name: METIS +letsexchange.set('METIS', null) + +// Display Name: MHC +letsexchange.set('MHC', null) + +// Display Name: MINA +letsexchange.set('MINA', null) + +// Display Name: MINIMA +letsexchange.set('MINIMA', null) + +// Display Name: ML +letsexchange.set('ML', null) + +// Display Name: MNTL +letsexchange.set('MNTL', null) + +// Display Name: MOB +letsexchange.set('MOB', null) + +// Display Name: MODE +letsexchange.set('MODE', null) + +// Display Name: MOVR +letsexchange.set('MOVR', null) + +// Display Name: MXW +letsexchange.set('MXW', null) + +// Display Name: NANO +letsexchange.set('NANO', null) + +// Display Name: NAS +letsexchange.set('NAS', null) + +// Display Name: NAV +letsexchange.set('NAV', null) + +// Display Name: NBS +letsexchange.set('NBS', null) + +// Display Name: NCN +letsexchange.set('NCN', null) + +// Display Name: NDAU +letsexchange.set('NDAU', null) + +// Display Name: NEAR +letsexchange.set('NEAR', null) + +// Display Name: NEBL +letsexchange.set('NEBL', null) + +// Display Name: NEO +letsexchange.set('NEO', null) + +// Display Name: NEO3 +letsexchange.set('NEO3', null) + +// Display Name: NEON +letsexchange.set('NEON', null) + +// Display Name: NEOX +letsexchange.set('NEOX', null) + +// Display Name: NEWTON +letsexchange.set('NEWTON', null) + +// Display Name: NEXA +letsexchange.set('NEXA', null) + +// Display Name: NGM +letsexchange.set('NGM', null) + +// Display Name: NIBI +letsexchange.set('NIBI', null) + +// Display Name: NIGELLA +letsexchange.set('NIGELLA', null) + +// Display Name: NIM +letsexchange.set('NIM', null) + +// Display Name: NMT +letsexchange.set('NMT', null) + +// Display Name: NODL +letsexchange.set('NODL', null) + +// Display Name: NOM +letsexchange.set('NOM', null) + +// Display Name: NRG +letsexchange.set('NRG', null) + +// Display Name: NTRN +letsexchange.set('NTRN', null) + +// Display Name: NULS +letsexchange.set('NULS', null) + +// Display Name: NULS EVM +letsexchange.set('NULS EVM', null) + +// Display Name: OAS +letsexchange.set('OAS', null) + +// Display Name: OCTA +letsexchange.set('OCTA', null) + +// Display Name: OKTC +letsexchange.set('OKTC', null) + +// Display Name: OLT +letsexchange.set('OLT', null) + +// Display Name: OMAX +letsexchange.set('OMAX', null) + +// Display Name: OMN +letsexchange.set('OMN', null) + +// Display Name: OMNI +letsexchange.set('OMNI', null) + +// Display Name: ONE +letsexchange.set('ONE', null) + +// Display Name: ONT +letsexchange.set('ONT', null) + +// Display Name: OORT +letsexchange.set('OORT', null) + +// Display Name: OPTIMISM +letsexchange.set('OPTIMISM', null) + +// Display Name: ORAI +letsexchange.set('ORAI', null) + +// Display Name: OSMO +letsexchange.set('OSMO', null) + +// Display Name: OVER +letsexchange.set('OVER', null) + +// Display Name: OZO +letsexchange.set('OZO', null) + +// Display Name: PAI +letsexchange.set('PAI', null) + +// Display Name: PAYCOIN +letsexchange.set('PAYCOIN', null) + +// Display Name: PCX +letsexchange.set('PCX', null) + +// Display Name: PDEX +letsexchange.set('PDEX', null) + +// Display Name: PEAQEVM +letsexchange.set('PEAQEVM', null) + +// Display Name: PEPECOIN +letsexchange.set('PEPECOIN', null) + +// Display Name: PHA +letsexchange.set('PHA', null) + +// Display Name: PHANTASMA +letsexchange.set('PHANTASMA', null) + +// Display Name: PI +letsexchange.set('PI', null) + +// Display Name: PIONEER +letsexchange.set('PIONEER', null) + +// Display Name: PIVX +letsexchange.set('PIVX', null) + +// Display Name: PIX +letsexchange.set('PIX', null) + +// Display Name: PKT +letsexchange.set('PKT', null) + +// Display Name: PLB +letsexchange.set('PLB', null) + +// Display Name: PLCU +letsexchange.set('PLCU', null) + +// Display Name: PLEX +letsexchange.set('PLEX', null) + +// Display Name: PLMC +letsexchange.set('PLMC', null) + +// Display Name: PLS +letsexchange.set('PLS', null) + +// Display Name: POKT +letsexchange.set('POKT', null) + +// Display Name: POL +letsexchange.set('POL', null) + +// Display Name: POLYX +letsexchange.set('POLYX', null) + +// Display Name: PSL +letsexchange.set('PSL', null) + +// Display Name: QKC +letsexchange.set('QKC', null) + +// Display Name: QRL +letsexchange.set('QRL', null) + +// Display Name: QTUM +letsexchange.set('QTUM', null) + +// Display Name: QUAI +letsexchange.set('QUAI', null) + +// Display Name: QUBIC +letsexchange.set('QUBIC', null) + +// Display Name: RBNT +letsexchange.set('RBNT', null) + +// Display Name: RBT +letsexchange.set('RBT', null) + +// Display Name: RBTC +letsexchange.set('RBTC', null) + +// Display Name: REEF +letsexchange.set('REEF', null) + +// Display Name: REI +letsexchange.set('REI', null) + +// Display Name: ROCK +letsexchange.set('ROCK', null) + +// Display Name: RON +letsexchange.set('RON', null) + +// Display Name: ROOT +letsexchange.set('ROOT', null) + +// Display Name: ROSE +letsexchange.set('ROSE', null) + +// Display Name: RSK +letsexchange.set('RSK', null) + +// Display Name: RUNE +letsexchange.set('RUNE', null) + +// Display Name: RVC +letsexchange.set('RVC', null) + +// Display Name: RVN +letsexchange.set('RVN', null) + +// Display Name: RWN +letsexchange.set('RWN', null) + +// Display Name: RXD +letsexchange.set('RXD', null) + +// Display Name: SAGA +letsexchange.set('SAGA', null) + +// Display Name: SC +letsexchange.set('SC', null) + +// Display Name: SCR +letsexchange.set('SCR', null) + +// Display Name: SCRT +letsexchange.set('SCRT', null) + +// Display Name: SDN +letsexchange.set('SDN', null) + +// Display Name: SDNEVM +letsexchange.set('SDNEVM', null) + +// Display Name: SDR +letsexchange.set('SDR', null) + +// Display Name: SEELE +letsexchange.set('SEELE', null) + +// Display Name: SEI +letsexchange.set('SEI', null) + +// Display Name: SEIEVM +letsexchange.set('SEIEVM', null) + +// Display Name: SERO +letsexchange.set('SERO', null) + +// Display Name: SGB +letsexchange.set('SGB', null) + +// Display Name: SLF +letsexchange.set('SLF', null) + +// Display Name: SMART +letsexchange.set('SMART', null) + +// Display Name: SMH +letsexchange.set('SMH', null) + +// Display Name: SMT +letsexchange.set('SMT', null) + +// Display Name: SOL +letsexchange.set('SOL', null) + +// Display Name: SONIC +letsexchange.set('SONIC', null) + +// Display Name: SPACE +letsexchange.set('SPACE', null) + +// Display Name: STAR +letsexchange.set('STAR', null) + +// Display Name: STARKNET +letsexchange.set('STARKNET', null) + +// Display Name: STC +letsexchange.set('STC', null) + +// Display Name: STEEM +letsexchange.set('STEEM', null) + +// Display Name: STEP +letsexchange.set('STEP', null) + +// Display Name: STOS +letsexchange.set('STOS', null) + +// Display Name: STRAX +letsexchange.set('STRAX', null) + +// Display Name: STT +letsexchange.set('STT', null) + +// Display Name: STX +letsexchange.set('STX', null) + +// Display Name: SUI +letsexchange.set('SUI', null) + +// Display Name: SUPR +letsexchange.set('SUPR', null) + +// Display Name: SUPRA +letsexchange.set('SUPRA', null) + +// Display Name: SWAN +letsexchange.set('SWAN', null) + +// Display Name: SXP +letsexchange.set('SXP', null) + +// Display Name: SYS +letsexchange.set('SYS', null) + +// Display Name: TAIKO +letsexchange.set('TAIKO', null) + +// Display Name: TAO +letsexchange.set('TAO', null) + +// Display Name: TARA +letsexchange.set('TARA', null) + +// Display Name: TEER +letsexchange.set('TEER', null) + +// Display Name: TENET +letsexchange.set('TENET', null) + +// Display Name: THETA +letsexchange.set('THETA', null) + +// Display Name: TIA +letsexchange.set('TIA', null) + +// Display Name: TLOS +letsexchange.set('TLOS', null) + +// Display Name: TLOSEVM +letsexchange.set('TLOSEVM', null) + +// Display Name: TOMO +letsexchange.set('TOMO', null) + +// Display Name: TON +letsexchange.set('TON', null) + +// Display Name: TOP +letsexchange.set('TOP', null) + +// Display Name: TRC20 +letsexchange.set('TRC20', null) + +// Display Name: TRUE +letsexchange.set('TRUE', null) + +// Display Name: TRX +letsexchange.set('TRX', null) + +// Display Name: TT +letsexchange.set('TT', null) + +// Display Name: U2U +letsexchange.set('U2U', null) + +// Display Name: UGAS +letsexchange.set('UGAS', null) + +// Display Name: UMEE +letsexchange.set('UMEE', null) + +// Display Name: UOS +letsexchange.set('UOS', null) + +// Display Name: VANA +letsexchange.set('VANA', null) + +// Display Name: VANRY +letsexchange.set('VANRY', null) + +// Display Name: VARA +letsexchange.set('VARA', null) + +// Display Name: VC +letsexchange.set('VC', null) + +// Display Name: VENOM +letsexchange.set('VENOM', null) + +// Display Name: VET +letsexchange.set('VET', null) + +// Display Name: VITE +letsexchange.set('VITE', null) + +// Display Name: VLX +letsexchange.set('VLX', null) + +// Display Name: VLXEVM +letsexchange.set('VLXEVM', null) + +// Display Name: VSC +letsexchange.set('VSC', null) + +// Display Name: VSYS +letsexchange.set('VSYS', null) + +// Display Name: VTS +letsexchange.set('VTS', null) + +// Display Name: WAN +letsexchange.set('WAN', null) + +// Display Name: WATER +letsexchange.set('WATER', null) + +// Display Name: WAVES +letsexchange.set('WAVES', null) + +// Display Name: WAX +letsexchange.set('WAX', null) + +// Display Name: WAXL +letsexchange.set('WAXL', null) + +// Display Name: WBT +letsexchange.set('WBT', null) + +// Display Name: WEMIX +letsexchange.set('WEMIX', null) + +// Display Name: WEST +letsexchange.set('WEST', null) + +// Display Name: WGRT +letsexchange.set('WGRT', null) + +// Display Name: WICC +letsexchange.set('WICC', null) + +// Display Name: WIT +letsexchange.set('WIT', null) + +// Display Name: WLD +letsexchange.set('WLD', null) + +// Display Name: WTC +letsexchange.set('WTC', null) + +// Display Name: XANA +letsexchange.set('XANA', null) + +// Display Name: XCH +letsexchange.set('XCH', null) + +// Display Name: XDAG +letsexchange.set('XDAG', null) + +// Display Name: XDB +letsexchange.set('XDB', null) + +// Display Name: XDC +letsexchange.set('XDC', null) + +// Display Name: XDEN +letsexchange.set('XDEN', null) + +// Display Name: XEC +letsexchange.set('XEC', null) + +// Display Name: XEL +letsexchange.set('XEL', null) + +// Display Name: XEM +letsexchange.set('XEM', null) + +// Display Name: XEP +letsexchange.set('XEP', null) + +// Display Name: XFC +letsexchange.set('XFC', null) + +// Display Name: XFI +letsexchange.set('XFI', null) + +// Display Name: XHV +letsexchange.set('XHV', null) + +// Display Name: XION +letsexchange.set('XION', null) + +// Display Name: XLM +letsexchange.set('XLM', null) + +// Display Name: XMC +letsexchange.set('XMC', null) + +// Display Name: XMR +letsexchange.set('XMR', null) + +// Display Name: XNA +letsexchange.set('XNA', null) + +// Display Name: XOR +letsexchange.set('XOR', null) + +// Display Name: XPL +letsexchange.set('XPL', null) + +// Display Name: XPLA +letsexchange.set('XPLA', null) + +// Display Name: XPLL +letsexchange.set('XPLL', null) + +// Display Name: XPR +letsexchange.set('XPR', null) + +// Display Name: XPRT +letsexchange.set('XPRT', null) + +// Display Name: XPX +letsexchange.set('XPX', null) + +// Display Name: XRD +letsexchange.set('XRD', null) + +// Display Name: XRP +letsexchange.set('XRP', null) + +// Display Name: XTZ +letsexchange.set('XTZ', null) + +// Display Name: XVG +letsexchange.set('XVG', null) + +// Display Name: XYM +letsexchange.set('XYM', null) + +// Display Name: YOU +letsexchange.set('YOU', null) + +// Display Name: YOYOW +letsexchange.set('YOYOW', null) + +// Display Name: ZANO +letsexchange.set('ZANO', null) + +// Display Name: ZCD +letsexchange.set('ZCD', null) + +// Display Name: ZEC +letsexchange.set('ZEC', null) + +// Display Name: ZEN +letsexchange.set('ZEN', null) + +// Display Name: ZETA +letsexchange.set('ZETA', null) + +// Display Name: ZETRIX +letsexchange.set('ZETRIX', null) + +// Display Name: ZIL +letsexchange.set('ZIL', null) + +// Display Name: ZKF +letsexchange.set('ZKF', null) + +// Display Name: ZKL +letsexchange.set('ZKL', null) + +// Display Name: ZKSYNC +letsexchange.set('ZKSYNC', null) + +// Display Name: ZRC +letsexchange.set('ZRC', null) + +// Display Name: ZTG +letsexchange.set('ZTG', null) diff --git a/scripts/mappings/lifiMappings.ts b/scripts/mappings/lifiMappings.ts new file mode 100644 index 00000000..e870f92b --- /dev/null +++ b/scripts/mappings/lifiMappings.ts @@ -0,0 +1,179 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const lifi = new Map() +// Display Name: Abstract +lifi.set('abs', null) + +// Display Name: Apechain +lifi.set('ape', null) + +// Display Name: Arbitrum +lifi.set('arb', null) + +// Display Name: Aurora +lifi.set('aur', null) + +// Display Name: Avalanche +lifi.set('ava', null) + +// Display Name: Base +lifi.set('bas', null) + +// Display Name: Berachain +lifi.set('ber', null) + +// Display Name: Blast +lifi.set('bls', null) + +// Display Name: Boba +lifi.set('bob', null) + +// Display Name: BOB +lifi.set('boc', null) + +// Display Name: BSC +lifi.set('bsc', null) + +// Display Name: Celo +lifi.set('cel', null) + +// Display Name: Corn +lifi.set('crn', null) + +// Display Name: Cronos +lifi.set('cro', null) + +// Display Name: Gnosis +lifi.set('dai', null) + +// Display Name: zkSync +lifi.set('era', null) + +// Display Name: Ethereum +lifi.set('eth', null) + +// Display Name: Etherlink +lifi.set('etl', null) + +// Display Name: Flare +lifi.set('flr', null) + +// Display Name: Flow +lifi.set('flw', null) + +// Display Name: Fraxtal +lifi.set('fra', null) + +// Display Name: FUSE +lifi.set('fus', null) + +// Display Name: Gravity +lifi.set('gra', null) + +// Display Name: Hemi +lifi.set('hmi', null) + +// Display Name: Hyperliquid +lifi.set('hpl', null) + +// Display Name: HyperEVM +lifi.set('hyp', null) + +// Display Name: Immutable zkEVM +lifi.set('imx', null) + +// Display Name: Ink +lifi.set('ink', null) + +// Display Name: Kaia +lifi.set('kai', null) + +// Display Name: Katana +lifi.set('kat', null) + +// Display Name: Linea +lifi.set('lna', null) + +// Display Name: Lens +lifi.set('lns', null) + +// Display Name: Lisk +lifi.set('lsk', null) + +// Display Name: Metis +lifi.set('mam', null) + +// Display Name: Mantle +lifi.set('mnt', null) + +// Display Name: Mode +lifi.set('mod', null) + +// Display Name: Monad +lifi.set('mon', null) + +// Display Name: Moonbeam +lifi.set('moo', null) + +// Display Name: Moonriver +lifi.set('mor', null) + +// Display Name: opBNB +lifi.set('opb', null) + +// Display Name: Optimism +lifi.set('opt', null) + +// Display Name: Plasma +lifi.set('pla', null) + +// Display Name: Plume +lifi.set('plu', null) + +// Display Name: Polygon +lifi.set('pol', null) + +// Display Name: Polygon zkEVM +lifi.set('pze', null) + +// Display Name: Ronin +lifi.set('ron', null) + +// Display Name: Rootstock +lifi.set('rsk', null) + +// Display Name: Scroll +lifi.set('scl', null) + +// Display Name: Sei +lifi.set('sei', null) + +// Display Name: Soneium +lifi.set('soe', null) + +// Display Name: Sonic +lifi.set('son', null) + +// Display Name: Sophon +lifi.set('sop', null) + +// Display Name: Superposition +lifi.set('sup', null) + +// Display Name: Swellchain +lifi.set('swl', null) + +// Display Name: Taiko +lifi.set('tai', null) + +// Display Name: Unichain +lifi.set('uni', null) + +// Display Name: Vana +lifi.set('van', null) + +// Display Name: World Chain +lifi.set('wcc', null) + +// Display Name: XDC +lifi.set('xdc', null) diff --git a/scripts/mappings/mayaprotocolMappings.ts b/scripts/mappings/mayaprotocolMappings.ts new file mode 100644 index 00000000..966084d9 --- /dev/null +++ b/scripts/mappings/mayaprotocolMappings.ts @@ -0,0 +1,26 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const mayaprotocol = new Map() +// Display Name: ARB +mayaprotocol.set('ARB', null) + +// Display Name: BTC +mayaprotocol.set('BTC', null) + +// Display Name: DASH +mayaprotocol.set('DASH', null) + +// Display Name: ETH +mayaprotocol.set('ETH', null) + +// Display Name: KUJI +mayaprotocol.set('KUJI', null) + +// Display Name: THOR +mayaprotocol.set('THOR', null) + +// Display Name: XRD +mayaprotocol.set('XRD', null) + +// Display Name: ZEC +mayaprotocol.set('ZEC', null) diff --git a/scripts/mappings/rangoMappings.ts b/scripts/mappings/rangoMappings.ts new file mode 100644 index 00000000..3438fefc --- /dev/null +++ b/scripts/mappings/rangoMappings.ts @@ -0,0 +1,278 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const rango = new Map() +// Display Name: Akash +rango.set('AKASH', null) + +// Display Name: Arbitrum +rango.set('ARBITRUM', null) + +// Display Name: Aurora +rango.set('AURORA', null) + +// Display Name: Avalanche +rango.set('AVAX_CCHAIN', null) + +// Display Name: Axelar +rango.set('AXELAR', null) + +// Display Name: BandChain +rango.set('BANDCHAIN', null) + +// Display Name: Base +rango.set('BASE', null) + +// Display Name: Bitcoin Cash +rango.set('BCH', null) + +// Display Name: Berachain +rango.set('BERACHAIN', null) + +// Display Name: BitCanna +rango.set('BITCANNA', null) + +// Display Name: BitSong +rango.set('BITSONG', null) + +// Display Name: Blast +rango.set('BLAST', null) + +// Display Name: Binance Chain +rango.set('BNB', null) + +// Display Name: Boba +rango.set('BOBA', null) + +// Display Name: Boba Avalanche +rango.set('BOBA_AVALANCHE', null) + +// Display Name: Boba Bnb +rango.set('BOBA_BNB', null) + +// Display Name: Brise +rango.set('BRISE', null) + +// Display Name: BNB Smart Chain +rango.set('BSC', null) + +// Display Name: Bitcoin +rango.set('BTC', null) + +// Display Name: Celo +rango.set('CELO', null) + +// Display Name: Chihuahua +rango.set('CHIHUAHUA', null) + +// Display Name: Comdex +rango.set('COMDEX', null) + +// Display Name: Cosmos +rango.set('COSMOS', null) + +// Display Name: Cronos +rango.set('CRONOS', null) + +// Display Name: Crypto.org +rango.set('CRYPTO_ORG', null) + +// Display Name: Dash +rango.set('DASH', null) + +// Display Name: Desmos +rango.set('DESMOS', null) + +// Display Name: Doge +rango.set('DOGE', null) + +// Display Name: Dydx +rango.set('DYDX', null) + +// Display Name: e-Money +rango.set('EMONEY', null) + +// Display Name: Ethereum +rango.set('ETH', null) + +// Display Name: Evmos +rango.set('EVMOS', null) + +// Display Name: Fantom +rango.set('FANTOM', null) + +// Display Name: Fuse +rango.set('FUSE', null) + +// Display Name: Gnosis +rango.set('GNOSIS', null) + +// Display Name: Harmony +rango.set('HARMONY', null) + +// Display Name: Heco +rango.set('HECO', null) + +// Display Name: Injective +rango.set('INJECTIVE', null) + +// Display Name: IOTA +rango.set('IOTA', null) + +// Display Name: IRISnet +rango.set('IRIS', null) + +// Display Name: Juno +rango.set('JUNO', null) + +// Display Name: Kcc +rango.set('KCC', null) + +// Display Name: Ki +rango.set('KI', null) + +// Display Name: Konstellation +rango.set('KONSTELLATION', null) + +// Display Name: Kujira +rango.set('KUJIRA', null) + +// Display Name: Linea +rango.set('LINEA', null) + +// Display Name: LiteCoin +rango.set('LTC', null) + +// Display Name: Lum Network +rango.set('LUMNETWORK', null) + +// Display Name: Mars +rango.set('MARS', null) + +// Display Name: MayaChain +rango.set('MAYA', null) + +// Display Name: MediBloc +rango.set('MEDIBLOC', null) + +// Display Name: Metis +rango.set('METIS', null) + +// Display Name: Mode +rango.set('MODE', null) + +// Display Name: Monad +rango.set('MONAD', null) + +// Display Name: MoonBeam +rango.set('MOONBEAM', null) + +// Display Name: MoonRiver +rango.set('MOONRIVER', null) + +// Display Name: Neutron +rango.set('NEUTRON', null) + +// Display Name: Noble +rango.set('NOBLE', null) + +// Display Name: OKX Chain (OKC) +rango.set('OKC', null) + +// Display Name: Optimism +rango.set('OPTIMISM', null) + +// Display Name: Osmosis +rango.set('OSMOSIS', null) + +// Display Name: Persistence +rango.set('PERSISTENCE', null) + +// Display Name: Polygon +rango.set('POLYGON', null) + +// Display Name: polygon zkEVM +rango.set('POLYGONZK', null) + +// Display Name: Regen Network +rango.set('REGEN', null) + +// Display Name: Scroll +rango.set('SCROLL', null) + +// Display Name: Secret +rango.set('SECRET', null) + +// Display Name: Sentinel +rango.set('SENTINEL', null) + +// Display Name: Shimmer +rango.set('SHIMMER', null) + +// Display Name: Sifchain +rango.set('SIF', null) + +// Display Name: Solana +rango.set('SOLANA', null) + +// Display Name: Soneium +rango.set('SONEIUM', null) + +// Display Name: Sonic +rango.set('SONIC', null) + +// Display Name: Stargaze +rango.set('STARGAZE', null) + +// Display Name: StarkNet +rango.set('STARKNET', null) + +// Display Name: Starname +rango.set('STARNAME', null) + +// Display Name: Stride +rango.set('STRIDE', null) + +// Display Name: Sui +rango.set('SUI', null) + +// Display Name: Taiko +rango.set('TAIKO', null) + +// Display Name: Telos +rango.set('TELOS', null) + +// Display Name: Terra 2.0 +rango.set('TERRA', null) + +// Display Name: Terra +rango.set('TERRA_CLASSIC', null) + +// Display Name: Thorchain +rango.set('THOR', null) + +// Display Name: Ton +rango.set('TON', null) + +// Display Name: Tron +rango.set('TRON', null) + +// Display Name: Umee +rango.set('UMEE', null) + +// Display Name: Unichain +rango.set('UNICHAIN', null) + +// Display Name: XLayer +rango.set('XLAYER', null) + +// Display Name: XRPL +rango.set('XRPL', null) + +// Display Name: ZetaChain +rango.set('ZETA_CHAIN', null) + +// Display Name: zkSync era +rango.set('ZKSYNC', null) + +// Display Name: Zora +rango.set('ZORA', null) diff --git a/scripts/mappings/sideshiftMappings.ts b/scripts/mappings/sideshiftMappings.ts new file mode 100644 index 00000000..1b100f18 --- /dev/null +++ b/scripts/mappings/sideshiftMappings.ts @@ -0,0 +1,128 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const sideshift = new Map() +// Display Name: algorand +sideshift.set('algorand', null) + +// Display Name: aptos +sideshift.set('aptos', null) + +// Display Name: arbitrum +sideshift.set('arbitrum', null) + +// Display Name: avax +sideshift.set('avax', null) + +// Display Name: base +sideshift.set('base', null) + +// Display Name: berachain +sideshift.set('berachain', null) + +// Display Name: bitcoin +sideshift.set('bitcoin', null) + +// Display Name: bitcoincash +sideshift.set('bitcoincash', null) + +// Display Name: blast +sideshift.set('blast', null) + +// Display Name: bsc +sideshift.set('bsc', null) + +// Display Name: cardano +sideshift.set('cardano', null) + +// Display Name: celestia +sideshift.set('celestia', null) + +// Display Name: core +sideshift.set('core', null) + +// Display Name: cosmos +sideshift.set('cosmos', null) + +// Display Name: cronos +sideshift.set('cronos', null) + +// Display Name: dash +sideshift.set('dash', null) + +// Display Name: doge +sideshift.set('doge', null) + +// Display Name: ethereum +sideshift.set('ethereum', null) + +// Display Name: hyperevm +sideshift.set('hyperevm', null) + +// Display Name: icp +sideshift.set('icp', null) + +// Display Name: internal +sideshift.set('internal', null) + +// Display Name: liquid +sideshift.set('liquid', null) + +// Display Name: litecoin +sideshift.set('litecoin', null) + +// Display Name: monad +sideshift.set('monad', null) + +// Display Name: near +sideshift.set('near', null) + +// Display Name: optimism +sideshift.set('optimism', null) + +// Display Name: plasma +sideshift.set('plasma', null) + +// Display Name: polkadot +sideshift.set('polkadot', null) + +// Display Name: polygon +sideshift.set('polygon', null) + +// Display Name: ripple +sideshift.set('ripple', null) + +// Display Name: ronin +sideshift.set('ronin', null) + +// Display Name: rootstock +sideshift.set('rootstock', null) + +// Display Name: scroll +sideshift.set('scroll', null) + +// Display Name: solana +sideshift.set('solana', null) + +// Display Name: sonic +sideshift.set('sonic', null) + +// Display Name: stacks +sideshift.set('stacks', null) + +// Display Name: stellar +sideshift.set('stellar', null) + +// Display Name: sui +sideshift.set('sui', null) + +// Display Name: ton +sideshift.set('ton', null) + +// Display Name: tron +sideshift.set('tron', null) + +// Display Name: xec +sideshift.set('xec', null) + +// Display Name: zksyncera +sideshift.set('zksyncera', null) diff --git a/scripts/mappings/swapkitMappings.ts b/scripts/mappings/swapkitMappings.ts new file mode 100644 index 00000000..da89d166 --- /dev/null +++ b/scripts/mappings/swapkitMappings.ts @@ -0,0 +1,83 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const swapkit = new Map() +// Display Name: ARB +swapkit.set('ARB', null) + +// Display Name: AVAX +swapkit.set('AVAX', null) + +// Display Name: BASE +swapkit.set('BASE', null) + +// Display Name: BCH +swapkit.set('BCH', null) + +// Display Name: BERA +swapkit.set('BERA', null) + +// Display Name: BSC +swapkit.set('BSC', null) + +// Display Name: BTC +swapkit.set('BTC', null) + +// Display Name: DASH +swapkit.set('DASH', null) + +// Display Name: DOGE +swapkit.set('DOGE', null) + +// Display Name: DOT +swapkit.set('DOT', null) + +// Display Name: ETH +swapkit.set('ETH', null) + +// Display Name: GAIA +swapkit.set('GAIA', null) + +// Display Name: GNO +swapkit.set('GNO', null) + +// Display Name: KUJI +swapkit.set('KUJI', null) + +// Display Name: LTC +swapkit.set('LTC', null) + +// Display Name: MAYA +swapkit.set('MAYA', null) + +// Display Name: MONAD +swapkit.set('MONAD', null) + +// Display Name: NEAR +swapkit.set('NEAR', null) + +// Display Name: OP +swapkit.set('OP', null) + +// Display Name: POL +swapkit.set('POL', null) + +// Display Name: SOL +swapkit.set('SOL', null) + +// Display Name: SUI +swapkit.set('SUI', null) + +// Display Name: THOR +swapkit.set('THOR', null) + +// Display Name: TRON +swapkit.set('TRON', null) + +// Display Name: XRD +swapkit.set('XRD', null) + +// Display Name: XRP +swapkit.set('XRP', null) + +// Display Name: ZEC +swapkit.set('ZEC', null) diff --git a/scripts/mappings/swapuzMappings.ts b/scripts/mappings/swapuzMappings.ts new file mode 100644 index 00000000..f5e433f6 --- /dev/null +++ b/scripts/mappings/swapuzMappings.ts @@ -0,0 +1,710 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const swapuz = new Map() +// Display Name: 0G +swapuz.set('0G', null) + +// Display Name: ACALA +swapuz.set('ACA', null) + +// Display Name: CARDANO (ADA) +swapuz.set('ADA', null) + +// Display Name: AUTONOMYS +swapuz.set('AI3', null) + +// Display Name: AKT +swapuz.set('AKT', null) + +// Display Name: ALGORAND +swapuz.set('ALGO', null) + +// Display Name: ALGORAND +swapuz.set('ALGORAND', null) + +// Display Name: ALLORA +swapuz.set('ALLORA', null) + +// Display Name: AMBROSUS +swapuz.set('AMB', null) + +// Display Name: ANALOG +swapuz.set('ANALOG', null) + +// Display Name: APT +swapuz.set('APT', null) + +// Display Name: ARWEAVE +swapuz.set('AR', null) + +// Display Name: ARBITRUM ONE (ARBITRUM) +swapuz.set('ARB', null) + +// Display Name: ASH +swapuz.set('ASH', null) + +// Display Name: ASTAR NETWORK +swapuz.set('ASTR', null) + +// Display Name: COSMOS +swapuz.set('ATOM', null) + +// Display Name: AURORA +swapuz.set('AURORA', null) + +// Display Name: AVAIL +swapuz.set('AVAIL', null) + +// Display Name: AVALANCHE +swapuz.set('AVAX', null) + +// Display Name: AXEL +swapuz.set('AXEL', null) + +// Display Name: BABYLON +swapuz.set('BABYLON', null) + +// Display Name: BAND +swapuz.set('BAND', null) + +// Display Name: BASE +swapuz.set('BASE', null) + +// Display Name: BB +swapuz.set('BB', null) + +// Display Name: BITCOIN CASH +swapuz.set('BCH', null) + +// Display Name: BCHN +swapuz.set('BCHN', null) + +// Display Name: BDX +swapuz.set('BDX', null) + +// Display Name: BTC-SEGWIT +swapuz.set('BECH32', null) + +// Display Name: BERA +swapuz.set('BERA', null) + +// Display Name: BITLAYER +swapuz.set('BITLAYER', null) + +// Display Name: BLAST +swapuz.set('BLAST', null) + +// Display Name: BNC +swapuz.set('BNC', null) + +// Display Name: BIFROST +swapuz.set('BNCDOT', null) + +// Display Name: BOUNCEBIT +swapuz.set('BOUNCEBIT', null) + +// Display Name: BRISE +swapuz.set('BRISE', null) + +// Display Name: BINANCE SMART CHAIN (BEP20) +swapuz.set('BSC', null) + +// Display Name: BITCOIN (BTC) +swapuz.set('BTC', null) + +// Display Name: LIGHTNING NETWORK +swapuz.set('BTCLN', null) + +// Display Name: AVALANCHE +swapuz.set('BTF', null) + +// Display Name: CAMP +swapuz.set('CAMP', null) + +// Display Name: CANTON NETWORK +swapuz.set('CANTON', null) + +// Display Name: CCD +swapuz.set('CCD', null) + +// Display Name: AVALANCHE C-CHAIN (AVAX) +swapuz.set('CCHAIN', null) + +// Display Name: CELO +swapuz.set('CELO', null) + +// Display Name: CFX CORE SPACE +swapuz.set('CFX', null) + +// Display Name: CFXCORE +swapuz.set('CFXCORE', null) + +// Display Name: CHEQD +swapuz.set('CHEQD', null) + +// Display Name: COTI +swapuz.set('COTI', null) + +// Display Name: COTI +swapuz.set('COTIEVM', null) + +// Display Name: CASPER +swapuz.set('CSPR', null) + +// Display Name: DAG +swapuz.set('DAG', null) + +// Display Name: DASH +swapuz.set('DASH', null) + +// Display Name: DECRED +swapuz.set('DCR', null) + +// Display Name: DFI +swapuz.set('DFI', null) + +// Display Name: DIGIBYTE +swapuz.set('DGB', null) + +// Display Name: DOCK +swapuz.set('DOCK', null) + +// Display Name: DOGECOIN +swapuz.set('DOGE', null) + +// Display Name: DOG20 +swapuz.set('DOGECHAIN', null) + +// Display Name: DOTASSETHUB +swapuz.set('DOTASSETHUB', null) + +// Display Name: DVPN +swapuz.set('DVPN', null) + +// Display Name: DYDX +swapuz.set('DYDX', null) + +// Display Name: DYMENSION +swapuz.set('DYM', null) + +// Display Name: ECLIPSE +swapuz.set('ECLIPSE', null) + +// Display Name: ELROND EGOLD +swapuz.set('EGLD', null) + +// Display Name: ELA +swapuz.set('ELA', null) + +// Display Name: BINANCE-SMART-CHAIN +swapuz.set('EMYC', null) + +// Display Name: EOS (EOS) +swapuz.set('EOS', null) + +// Display Name: ERGO +swapuz.set('ERGO', null) + +// Display Name: ETHEREUM CLASSIC +swapuz.set('ETC', null) + +// Display Name: ETHEREUM (ERC20) +swapuz.set('ETH', null) + +// Display Name: ETN +swapuz.set('ETN', null) + +// Display Name: ETNEVM +swapuz.set('ETNEVM', null) + +// Display Name: EVER +swapuz.set('EVER', null) + +// Display Name: FILECOIN +swapuz.set('FIL', null) + +// Display Name: FLARE +swapuz.set('FLARE', null) + +// Display Name: FLOW +swapuz.set('FLOW', null) + +// Display Name: FLUX +swapuz.set('FLUX', null) + +// Display Name: FRA(EVM) +swapuz.set('FRA', null) + +// Display Name: FTN +swapuz.set('FTN', null) + +// Display Name: MOONBEAM +swapuz.set('GLMR', null) + +// Display Name: GLQ +swapuz.set('GLQ', null) + +// Display Name: GRAVITY +swapuz.set('GRAVITY', null) + +// Display Name: GUNZ +swapuz.set('GUNZ', null) + +// Display Name: HAQQ +swapuz.set('HAQQ', null) + +// Display Name: HEDERA HASHGRAPH +swapuz.set('HBAR', null) + +// Display Name: HRC20 +swapuz.set('HECO', null) + +// Display Name: HMND +swapuz.set('HMND', null) + +// Display Name: ETHEREUM +swapuz.set('HSK', null) + +// Display Name: HTR +swapuz.set('HTR', null) + +// Display Name: HYDRA +swapuz.set('HYDRA', null) + +// Display Name: HYDRAGON +swapuz.set('HYDRAGON', null) + +// Display Name: HYPE +swapuz.set('HYPE', null) + +// Display Name: INTERNET COMPUTER +swapuz.set('ICP', null) + +// Display Name: ICON +swapuz.set('ICX', null) + +// Display Name: IMMUTABLE +swapuz.set('IMMUTABLE', null) + +// Display Name: INIT +swapuz.set('INIT', null) + +// Display Name: INJECTIVE PROTOCOL +swapuz.set('INJ', null) + +// Display Name: INJECTIVE +swapuz.set('INJECTIVE', null) + +// Display Name: IOST +swapuz.set('IOST', null) + +// Display Name: IOTEX +swapuz.set('IOTX', null) + +// Display Name: KAIA +swapuz.set('KAIA', null) + +// Display Name: KAR +swapuz.set('KAR', null) + +// Display Name: KAS +swapuz.set('KAS', null) + +// Display Name: KAVA +swapuz.set('KAVA', null) + +// Display Name: KAVA EVM CO-CHAIN +swapuz.set('KAVAEVM', null) + +// Display Name: KCC +swapuz.set('KCC', null) + +// Display Name: KLAYTN +swapuz.set('KLAY', null) + +// Display Name: KLV +swapuz.set('KLV', null) + +// Display Name: KMA +swapuz.set('KMA', null) + +// Display Name: LAVA +swapuz.set('LAVA', null) + +// Display Name: LITECOIN +swapuz.set('LTC', null) + +// Display Name: LUKSO +swapuz.set('LUKSO', null) + +// Display Name: LUMIA +swapuz.set('LUMIA', null) + +// Display Name: TERRA +swapuz.set('LUNA', null) + +// Display Name: LUNC +swapuz.set('LUNC', null) + +// Display Name: MAN +swapuz.set('MAN', null) + +// Display Name: MGO +swapuz.set('MANGO', null) + +// Display Name: MANTA +swapuz.set('MANTA', null) + +// Display Name: MAP-PROTOCOL +swapuz.set('MAPO', null) + +// Display Name: BINANCE-SMART-CHAIN +swapuz.set('MAT', null) + +// Display Name: MERLIN +swapuz.set('MERLIN', null) + +// Display Name: METALL2 +swapuz.set('METALL2', null) + +// Display Name: METIS +swapuz.set('METIS', null) + +// Display Name: MILKYWAY +swapuz.set('MILKYWAY', null) + +// Display Name: MINA +swapuz.set('MINA', null) + +// Display Name: ETHEREUM +swapuz.set('MNT', null) + +// Display Name: APTOS +swapuz.set('MOVE', null) + +// Display Name: MOONRIVER +swapuz.set('MOVR', null) + +// Display Name: METER +swapuz.set('MTR', null) + +// Display Name: MXC +swapuz.set('MXC', null) + +// Display Name: NAMADA +swapuz.set('NAMADA', null) + +// Display Name: NANO +swapuz.set('NANO', null) + +// Display Name: NEAR PROTOCOL (NEAR) +swapuz.set('NEAR', null) + +// Display Name: PIONEER +swapuz.set('NEER', null) + +// Display Name: NEM +swapuz.set('NEM', null) + +// Display Name: NEO LEGACY +swapuz.set('NEO', null) + +// Display Name: NEON3 +swapuz.set('NEON3', null) + +// Display Name: NIBIRU +swapuz.set('NIBIRU', null) + +// Display Name: NIL +swapuz.set('NIL', null) + +// Display Name: NIM +swapuz.set('NIM', null) + +// Display Name: NIM +swapuz.set('NIMPOS', null) + +// Display Name: NOBLE +swapuz.set('NOBLE', null) + +// Display Name: NOM +swapuz.set('NOM', null) + +// Display Name: NTRN +swapuz.set('NTRN', null) + +// Display Name: OAS +swapuz.set('OAS', null) + +// Display Name: OLT +swapuz.set('OLT', null) + +// Display Name: OMN +swapuz.set('OMN', null) + +// Display Name: OMNI +swapuz.set('OMNI', null) + +// Display Name: HARMONY +swapuz.set('ONE', null) + +// Display Name: ONTOLOGY +swapuz.set('ONT', null) + +// Display Name: ETHEREUM +swapuz.set('OORT', null) + +// Display Name: OPTIMISM (OPTIMISM) +swapuz.set('OPTIMISM', null) + +// Display Name: OSMOSIS +swapuz.set('OSMO', null) + +// Display Name: PARTISIA +swapuz.set('PARTISIA', null) + +// Display Name: PEAQ +swapuz.set('PEAQ', null) + +// Display Name: PHANTASMA +swapuz.set('PHANTASMA', null) + +// Display Name: PIX +swapuz.set('PIX', null) + +// Display Name: PLASMA +swapuz.set('PLASMA', null) + +// Display Name: PLATON +swapuz.set('PLATON', null) + +// Display Name: POKT +swapuz.set('POKT', null) + +// Display Name: POKT SHANNON +swapuz.set('POKTSHANNON', null) + +// Display Name: POLYGON (POLYGON) +swapuz.set('POL', null) + +// Display Name: POLYMESH +swapuz.set('POLYMESH', null) + +// Display Name: QKC +swapuz.set('QKC', null) + +// Display Name: QTUM +swapuz.set('QTUM', null) + +// Display Name: RADIX +swapuz.set('RADIX', null) + +// Display Name: RAVENCOIN +swapuz.set('RAVENCOIN', null) + +// Display Name: REDBELLY +swapuz.set('REDBELLY', null) + +// Display Name: REEF +swapuz.set('REEF', null) + +// Display Name: RONIN +swapuz.set('RON', null) + +// Display Name: OASIS NETWORK +swapuz.set('ROSE', null) + +// Display Name: THORCHAIN +swapuz.set('RUNE', null) + +// Display Name: RAVENCOIN +swapuz.set('RVN', null) + +// Display Name: SAGA +swapuz.set('SAGA', null) + +// Display Name: SECRET +swapuz.set('SCRT', null) + +// Display Name: SEI +swapuz.set('SEI', null) + +// Display Name: SEIEVM +swapuz.set('SEIEVM', null) + +// Display Name: SHARDEUM +swapuz.set('SHARDEUM', null) + +// Display Name: SOLANA (SOL) +swapuz.set('SOL', null) + +// Display Name: SOMNIA +swapuz.set('SOMI', null) + +// Display Name: SONIC +swapuz.set('SONIC', null) + +// Display Name: SOPHON +swapuz.set('SOPHON', null) + +// Display Name: STARKNET +swapuz.set('STARKNET', null) + +// Display Name: ASSET HUB(POLKADOT) +swapuz.set('STATEMINT', null) + +// Display Name: STEEM +swapuz.set('STEEM', null) + +// Display Name: STORY +swapuz.set('STORY', null) + +// Display Name: STRATIS +swapuz.set('STRAX', null) + +// Display Name: STRAX +swapuz.set('STRAXEVM', null) + +// Display Name: STACKS +swapuz.set('STX', null) + +// Display Name: SUI (SUI) +swapuz.set('SUI', null) + +// Display Name: SUPRA +swapuz.set('SUPRA', null) + +// Display Name: SWIPE +swapuz.set('SXP', null) + +// Display Name: TAIKO +swapuz.set('TAIKO', null) + +// Display Name: BITTENSOR +swapuz.set('TAO', null) + +// Display Name: TARA +swapuz.set('TARA', null) + +// Display Name: TENET +swapuz.set('TENET', null) + +// Display Name: THETA TOKEN +swapuz.set('THETA', null) + +// Display Name: THORCHAIN +swapuz.set('THORCHAIN', null) + +// Display Name: TELOS +swapuz.set('TLOS', null) + +// Display Name: TELOS(EVM) +swapuz.set('TLOSEVM', null) + +// Display Name: TONCOIN (TON) +swapuz.set('TON', null) + +// Display Name: TON +swapuz.set('TON2', null) + +// Display Name: TRON (TRC20) +swapuz.set('TRX', null) + +// Display Name: TRY +swapuz.set('TRY', null) + +// Display Name: TT +swapuz.set('TT', null) + +// Display Name: ETHEREUM +swapuz.set('U2U', null) + +// Display Name: UOS +swapuz.set('UOS', null) + +// Display Name: USD +swapuz.set('USD', null) + +// Display Name: ETHEREUM +swapuz.set('VANA', null) + +// Display Name: VAULTA +swapuz.set('VAULTA', null) + +// Display Name: VENOM +swapuz.set('VENOM', null) + +// Display Name: VECHAIN +swapuz.set('VET', null) + +// Display Name: WANCHAIN +swapuz.set('WAN', null) + +// Display Name: WAVES +swapuz.set('WAVES', null) + +// Display Name: WAXP +swapuz.set('WAXP', null) + +// Display Name: WEMIX +swapuz.set('WEMIX', null) + +// Display Name: XCH +swapuz.set('XCH', null) + +// Display Name: XCHAIN +swapuz.set('XCHAIN', null) + +// Display Name: XDB CHAIN +swapuz.set('XDBCHAIN', null) + +// Display Name: XEC +swapuz.set('XEC', null) + +// Display Name: BASE +swapuz.set('XION', null) + +// Display Name: STELLAR LUMENS +swapuz.set('XLM', null) + +// Display Name: MONERO +swapuz.set('XMR', null) + +// Display Name: XPR +swapuz.set('XPR', null) + +// Display Name: XPRT +swapuz.set('XPRT', null) + +// Display Name: RIPPLE +swapuz.set('XRP', null) + +// Display Name: XTZ EVM +swapuz.set('XTZ', null) + +// Display Name: XYM +swapuz.set('XYM', null) + +// Display Name: ZCASH +swapuz.set('ZEC', null) + +// Display Name: ZETA +swapuz.set('ZETA', null) + +// Display Name: ZETAEVM +swapuz.set('ZETAEVM', null) + +// Display Name: ZILLIQA +swapuz.set('ZIL', null) + +// Display Name: ETHEREUM +swapuz.set('ZKL', null) + +// Display Name: ZKS20 +swapuz.set('ZKSYNC2', null) + +// Display Name: ZKVERIFY +swapuz.set('ZKVERIFY', null) + +// Display Name: ETHEREUM +swapuz.set('ZRC', null) diff --git a/scripts/mappings/thorchainMappings.ts b/scripts/mappings/thorchainMappings.ts new file mode 100644 index 00000000..58e1b37f --- /dev/null +++ b/scripts/mappings/thorchainMappings.ts @@ -0,0 +1,38 @@ +import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' + +export const thorchain = new Map() +// Display Name: AVAX +thorchain.set('AVAX', null) + +// Display Name: BASE +thorchain.set('BASE', null) + +// Display Name: BCH +thorchain.set('BCH', null) + +// Display Name: BSC +thorchain.set('BSC', null) + +// Display Name: BTC +thorchain.set('BTC', null) + +// Display Name: DOGE +thorchain.set('DOGE', null) + +// Display Name: ETH +thorchain.set('ETH', null) + +// Display Name: GAIA +thorchain.set('GAIA', null) + +// Display Name: LTC +thorchain.set('LTC', null) + +// Display Name: THOR +thorchain.set('THOR', null) + +// Display Name: TRON +thorchain.set('TRON', null) + +// Display Name: XRP +thorchain.set('XRP', null) diff --git a/scripts/synchronizers/changehero/changeheroSynchronizer.ts b/scripts/synchronizers/changehero/changeheroSynchronizer.ts new file mode 100644 index 00000000..6a3640d1 --- /dev/null +++ b/scripts/synchronizers/changehero/changeheroSynchronizer.ts @@ -0,0 +1,99 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asChangeheroResponse } from './changeheroTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/changeheroMappings.ts' +) + +export const makeChangeHeroSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.CHANGEHERO_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing CHANGEHERO_API_KEY in environment variables') + } + + return { + name: 'changehero', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { changehero } = require('../../mappings/changeheroMappings') + return changehero + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://api.changehero.io/v2', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'api-key': apiKey + }, + body: JSON.stringify({ + jsonrpc: '2.0', + id: 'one', + method: 'getCurrenciesFull', + params: {} + }) + }) + + if (!response.ok) { + throw new Error( + `Failed to fetch ChangeHero networks: ${response.statusText}` + ) + } + + const data = await response.json() + const { result } = asChangeheroResponse(data) + + if (result.length === 0) { + throw new Error( + 'ChangeHero API returned 0 currencies. This likely indicates an API error.' + ) + } + + // Extract unique blockchain values with metadata + const blockchainMap = new Map() + result.forEach(currency => { + if (currency.blockchain != null && currency.blockchain !== '') { + const existing = blockchainMap.get(currency.blockchain) + if (existing != null) { + existing.count++ + } else { + blockchainMap.set(currency.blockchain, { + name: currency.blockchain, + count: 1 + }) + } + } + }) + + const results = Array.from(blockchainMap.entries()).map( + ([blockchain, info]) => ({ + chainCode: blockchain, + metadata: { + 'Display Name': info.name, + 'Currency Count': String(info.count) + } + }) + ) + + if (results.length === 0) { + throw new Error( + 'ChangeHero API returned currencies but no valid blockchains were extracted.' + ) + } + + return results + } + } +} diff --git a/scripts/synchronizers/changehero/changeheroTypes.ts b/scripts/synchronizers/changehero/changeheroTypes.ts new file mode 100644 index 00000000..e1621aed --- /dev/null +++ b/scripts/synchronizers/changehero/changeheroTypes.ts @@ -0,0 +1,11 @@ +import { asArray, asEither, asNull, asObject, asString } from 'cleaners' + +export const asChangeheroCurrency = asObject({ + name: asString, + blockchain: asString, + contractAddress: asEither(asString, asNull) +}) + +export const asChangeheroResponse = asObject({ + result: asArray(asChangeheroCurrency) +}) diff --git a/scripts/synchronizers/changenow/changenowSynchronizer.ts b/scripts/synchronizers/changenow/changenowSynchronizer.ts new file mode 100644 index 00000000..a96ca87a --- /dev/null +++ b/scripts/synchronizers/changenow/changenowSynchronizer.ts @@ -0,0 +1,91 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asChangeNowCurrenciesResponse } from './changenowTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/changenowMappings.ts' +) + +export const makeChangeNowSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.CHANGENOW_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing CHANGENOW_API_KEY in environment variables') + } + + return { + name: 'changenow', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { changenow } = require('../../mappings/changenowMappings') + return changenow + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch( + 'https://api.changenow.io/v2/exchange/currencies?isFiat=false', + { + headers: { + 'x-changenow-api-key': apiKey + } + } + ) + + if (!response.ok) { + throw new Error( + `Failed to fetch ChangeNow networks: ${response.statusText}` + ) + } + + const data = await response.json() + const currencies = asChangeNowCurrenciesResponse(data) + + if (currencies.length === 0) { + throw new Error( + 'ChangeNow API returned 0 currencies. This likely indicates an API error.' + ) + } + + // Extract unique network values with metadata + const networkMap = new Map() + currencies.forEach(currency => { + if (currency.network != null && currency.network !== '') { + const existing = networkMap.get(currency.network) + if (existing != null) { + existing.count++ + } else { + networkMap.set(currency.network, { count: 1 }) + } + } + }) + + const results = Array.from(networkMap.entries()).map( + ([network, info]) => ({ + chainCode: network, + metadata: { + 'Display Name': network, + 'Currency Count': String(info.count) + } + }) + ) + + if (results.length === 0) { + throw new Error( + 'ChangeNow API returned currencies but no valid networks were extracted.' + ) + } + + return results + } + } +} diff --git a/scripts/synchronizers/changenow/changenowTypes.ts b/scripts/synchronizers/changenow/changenowTypes.ts new file mode 100644 index 00000000..9eb80684 --- /dev/null +++ b/scripts/synchronizers/changenow/changenowTypes.ts @@ -0,0 +1,9 @@ +import { asArray, asEither, asNull, asObject, asString } from 'cleaners' + +export const asChangeNowCurrency = asObject({ + ticker: asString, + network: asString, + tokenContract: asEither(asString, asNull) +}) + +export const asChangeNowCurrenciesResponse = asArray(asChangeNowCurrency) diff --git a/scripts/synchronizers/exolix/exolixSynchronizer.ts b/scripts/synchronizers/exolix/exolixSynchronizer.ts new file mode 100644 index 00000000..859a218d --- /dev/null +++ b/scripts/synchronizers/exolix/exolixSynchronizer.ts @@ -0,0 +1,120 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asExolixNetworksResponse } from './exolixTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/exolixMappings.ts' +) + +export const makeExolixSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.EXOLIX_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing EXOLIX_API_KEY in environment variables') + } + + return { + name: 'exolix', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { exolix } = require('../../mappings/exolixMappings') + return exolix + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const networkMap = new Map< + string, + { name: string; shortName: string | null; notes: string | null } + >() + let page = 1 + const pageSize = 100 + let totalFetched = 0 + + // Paginate through all pages using the networks endpoint + while (true) { + const response = await fetch( + `https://exolix.com/api/v2/currencies/networks?size=${pageSize}&page=${page}`, + { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/json', + Authorization: apiKey + } + } + ) + + if (!response.ok) { + throw new Error( + `Failed to fetch Exolix networks: ${response.statusText}` + ) + } + + const data = await response.json() + const { data: networks, count: totalCount } = asExolixNetworksResponse( + data + ) + + // If we get an empty page before reaching expected count, API has an issue + if (networks.length === 0 && totalFetched < totalCount) { + throw new Error( + `Exolix API returned empty page ${page} but only fetched ${totalFetched}/${totalCount} networks` + ) + } + + networks.forEach(network => { + if (network.network != null && network.network !== '') { + if (!networkMap.has(network.network)) { + networkMap.set(network.network, { + name: network.name, + shortName: network.shortName, + notes: network.notes + }) + } + } + }) + + totalFetched += networks.length + + // Done when we've fetched all items according to the count + if (totalFetched >= totalCount) { + break + } + + page++ + } + + if (networkMap.size === 0) { + throw new Error( + 'Exolix API returned 0 networks after pagination. This likely indicates an API error.' + ) + } + + return Array.from(networkMap.entries()).map(([networkId, info]) => { + const metadata: Record = { + 'Display Name': info.name + } + if (info.shortName != null && info.shortName !== '') { + metadata['Short Name'] = info.shortName + } + if (info.notes != null && info.notes !== '') { + metadata.Notes = info.notes + } + + return { + chainCode: networkId, + metadata + } + }) + } + } +} diff --git a/scripts/synchronizers/exolix/exolixTypes.ts b/scripts/synchronizers/exolix/exolixTypes.ts new file mode 100644 index 00000000..f04b1e84 --- /dev/null +++ b/scripts/synchronizers/exolix/exolixTypes.ts @@ -0,0 +1,31 @@ +import { + asArray, + asBoolean, + asEither, + asNull, + asNumber, + asObject, + asString +} from 'cleaners' + +export const asExolixNetwork = asObject({ + network: asString, + name: asString, + shortName: asEither(asString, asNull), + notes: asEither(asString, asNull), + addressRegex: asEither(asString, asNull), + isDefault: asBoolean, + blockExplorer: asEither(asString, asNull), + memoNeeded: asBoolean, + memoName: asEither(asString, asNull), + memoRegex: asEither(asString, asNull), + precision: asNumber, + contract: asEither(asString, asNull), + decimal: asEither(asNumber, asNull), + icon: asEither(asString, asNull) +}) + +export const asExolixNetworksResponse = asObject({ + data: asArray(asExolixNetwork), + count: asNumber +}) diff --git a/scripts/synchronizers/godex/godexSynchronizer.ts b/scripts/synchronizers/godex/godexSynchronizer.ts new file mode 100644 index 00000000..bb10e91d --- /dev/null +++ b/scripts/synchronizers/godex/godexSynchronizer.ts @@ -0,0 +1,89 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asGodexCoinsResponse } from './godexTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/godexMappings.ts' +) + +export const makeGodexSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + return { + name: 'godex', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { godex } = require('../../mappings/godexMappings') + return godex + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const networkMap = new Map() + + // Get list of all coins - the response includes networks array for each coin + const coinsResponse = await fetch('https://api.godex.io/api/v1/coins', { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/json' + } + }) + + if (!coinsResponse.ok) { + throw new Error( + `Failed to fetch Godex coins: ${coinsResponse.statusText}` + ) + } + + const coinsData = await coinsResponse.json() + const coins = asGodexCoinsResponse(coinsData) + + if (coins.length === 0) { + throw new Error( + 'Godex API returned 0 coins. This likely indicates an API error.' + ) + } + + // Extract unique network codes from all coins + coins.forEach(coin => { + if (coin.networks != null && coin.networks.length > 0) { + coin.networks.forEach(network => { + // Only include active networks (is_active === 1) + if ( + network.is_active === 1 && + network.code != null && + network.code !== '' + ) { + if (!networkMap.has(network.code)) { + networkMap.set(network.code, { + name: network.name + }) + } + } + }) + } + }) + + if (networkMap.size === 0) { + throw new Error( + 'Godex API returned coins but no valid networks were extracted.' + ) + } + + return Array.from(networkMap.entries()).map(([networkId, info]) => ({ + chainCode: networkId, + metadata: { + 'Display Name': info.name + } + })) + } + } +} diff --git a/scripts/synchronizers/godex/godexTypes.ts b/scripts/synchronizers/godex/godexTypes.ts new file mode 100644 index 00000000..6d569af5 --- /dev/null +++ b/scripts/synchronizers/godex/godexTypes.ts @@ -0,0 +1,33 @@ +import { + asArray, + asEither, + asNull, + asNumber, + asObject, + asOptional, + asString +} from 'cleaners' + +export const asGodexNetwork = asObject({ + code: asString, + name: asString, + icon: asEither(asString, asNull), + is_active: asNumber, + has_extra: asNumber, + validation_address_regex: asEither(asString, asNull), + validation_address_extra_regex: asEither(asString, asNull), + extra_name: asEither(asString, asNull), + explorer: asEither(asString, asNull), + contract_address: asEither(asString, asNull), + chain_id: asEither(asString, asNull) +}) + +export const asGodexCoin = asObject({ + code: asString, + name: asString, + disabled: asEither(asNumber, asNull), + icon: asEither(asString, asNull), + networks: asOptional(asArray(asGodexNetwork)) +}) + +export const asGodexCoinsResponse = asArray(asGodexCoin) diff --git a/scripts/synchronizers/letsexchange/letsexchangeSynchronizer.ts b/scripts/synchronizers/letsexchange/letsexchangeSynchronizer.ts new file mode 100644 index 00000000..4a4daef1 --- /dev/null +++ b/scripts/synchronizers/letsexchange/letsexchangeSynchronizer.ts @@ -0,0 +1,80 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asLetsExchangeCurrenciesResponse } from './letsexchangeTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/letsexchangeMappings.ts' +) + +export const makeLetsExchangeSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.LETSEXCHANGE_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing LETSEXCHANGE_API_KEY in environment variables') + } + + return { + name: 'letsexchange', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { letsexchange } = require('../../mappings/letsexchangeMappings') + return letsexchange + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://api.letsexchange.io/api/v2/coins', { + headers: { + Authorization: `Bearer ${apiKey}` + } + }) + + if (!response.ok) { + throw new Error( + `Failed to fetch LetsExchange networks: ${response.statusText}` + ) + } + + const data = await response.json() + const currencies = asLetsExchangeCurrenciesResponse(data) + + if (currencies.length === 0) { + throw new Error( + 'LetsExchange API returned 0 currencies. This likely indicates an API error.' + ) + } + + // Extract unique network codes from all currencies + const networkSet = new Set() + currencies.forEach(currency => { + currency.networks.forEach(network => { + if (network.code != null && network.code !== '') { + networkSet.add(network.code) + } + }) + }) + + if (networkSet.size === 0) { + throw new Error( + 'LetsExchange API returned currencies but no valid networks were extracted.' + ) + } + + return Array.from(networkSet).map(network => ({ + chainCode: network, + metadata: { + 'Display Name': network + } + })) + } + } +} diff --git a/scripts/synchronizers/letsexchange/letsexchangeTypes.ts b/scripts/synchronizers/letsexchange/letsexchangeTypes.ts new file mode 100644 index 00000000..07171135 --- /dev/null +++ b/scripts/synchronizers/letsexchange/letsexchangeTypes.ts @@ -0,0 +1,13 @@ +import { asArray, asEither, asNull, asObject, asString } from 'cleaners' + +export const asLetsExchangeNetwork = asObject({ + code: asString, + contract_address: asEither(asString, asNull) +}) + +export const asLetsExchangeCurrency = asObject({ + code: asString, + networks: asArray(asLetsExchangeNetwork) +}) + +export const asLetsExchangeCurrenciesResponse = asArray(asLetsExchangeCurrency) diff --git a/scripts/synchronizers/lifi/lifiSynchronizer.ts b/scripts/synchronizers/lifi/lifiSynchronizer.ts new file mode 100644 index 00000000..5d7f1181 --- /dev/null +++ b/scripts/synchronizers/lifi/lifiSynchronizer.ts @@ -0,0 +1,48 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asLifiChainsResponse } from './lifiTypes' + +const MAPPING_FILE_PATH = path.join(__dirname, '../../mappings/lifiMappings.ts') + +export const makeLifiSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + return { + name: 'lifi', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { lifi } = require('../../mappings/lifiMappings') + return lifi + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://li.quest/v1/chains') + if (!response.ok) { + throw new Error(`Failed to fetch LiFi networks: ${response.statusText}`) + } + const data = await response.json() + const { chains } = asLifiChainsResponse(data) + + if (chains.length === 0) { + throw new Error( + 'LiFi API returned 0 chains. This likely indicates an API error.' + ) + } + + return chains.map(chain => ({ + chainCode: chain.key, + metadata: { + 'Display Name': chain.name + } + })) + } + } +} diff --git a/scripts/synchronizers/lifi/lifiTypes.ts b/scripts/synchronizers/lifi/lifiTypes.ts new file mode 100644 index 00000000..9e65705a --- /dev/null +++ b/scripts/synchronizers/lifi/lifiTypes.ts @@ -0,0 +1,10 @@ +import { asArray, asObject, asString } from 'cleaners' + +export const asLifiChain = asObject({ + key: asString, + name: asString +}) + +export const asLifiChainsResponse = asObject({ + chains: asArray(asLifiChain) +}) diff --git a/scripts/synchronizers/mayaprotocol/mayaprotocolSynchronizer.ts b/scripts/synchronizers/mayaprotocol/mayaprotocolSynchronizer.ts new file mode 100644 index 00000000..88e75f55 --- /dev/null +++ b/scripts/synchronizers/mayaprotocol/mayaprotocolSynchronizer.ts @@ -0,0 +1,74 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asMayaProtocolPoolsResponse } from './mayaprotocolTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/mayaprotocolMappings.ts' +) + +export const makeMayaProtocolSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + return { + name: 'mayaprotocol', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { mayaprotocol } = require('../../mappings/mayaprotocolMappings') + return mayaprotocol + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://midgard.mayachain.info/v2/pools') + + if (!response.ok) { + throw new Error( + `Failed to fetch MayaProtocol networks: ${response.statusText}` + ) + } + + const data = await response.json() + const pools = asMayaProtocolPoolsResponse(data) + + if (pools.length === 0) { + throw new Error( + 'MayaProtocol API returned 0 pools. This likely indicates an API error.' + ) + } + + // Extract unique chain identifiers from pool assets + // Format: "CHAIN.SYMBOL-CONTRACT" (e.g., "ETH.USDT-0x...") + const uniqueChains = new Set() + pools.forEach(pool => { + if (pool.asset != null && pool.asset !== '') { + // Extract chain from asset string (format: "CHAIN.SYMBOL-...") + const parts = pool.asset.split('.') + if (parts.length > 0 && parts[0] != null && parts[0] !== '') { + uniqueChains.add(parts[0]) + } + } + }) + + if (uniqueChains.size === 0) { + throw new Error( + 'MayaProtocol API returned pools but no valid chains were extracted.' + ) + } + + return Array.from(uniqueChains).map(chain => ({ + chainCode: chain, + metadata: { + 'Display Name': chain + } + })) + } + } +} diff --git a/scripts/synchronizers/mayaprotocol/mayaprotocolTypes.ts b/scripts/synchronizers/mayaprotocol/mayaprotocolTypes.ts new file mode 100644 index 00000000..02de8849 --- /dev/null +++ b/scripts/synchronizers/mayaprotocol/mayaprotocolTypes.ts @@ -0,0 +1,7 @@ +import { asArray, asObject, asString } from 'cleaners' + +export const asMayaProtocolPool = asObject({ + asset: asString +}) + +export const asMayaProtocolPoolsResponse = asArray(asMayaProtocolPool) diff --git a/scripts/synchronizers/rango/rangoSynchronizer.ts b/scripts/synchronizers/rango/rangoSynchronizer.ts new file mode 100644 index 00000000..3754dabb --- /dev/null +++ b/scripts/synchronizers/rango/rangoSynchronizer.ts @@ -0,0 +1,60 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asRangoMetaResponse } from './rangoTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/rangoMappings.ts' +) + +export const makeRangoSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.RANGO_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing RANGO_API_KEY in environment variables') + } + + return { + name: 'rango', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { rango } = require('../../mappings/rangoMappings') + return rango + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch( + `https://api.rango.exchange/basic/meta?apiKey=${apiKey}` + ) + if (!response.ok) { + throw new Error( + `Failed to fetch Rango networks: ${response.statusText}` + ) + } + const data = await response.json() + const { blockchains } = asRangoMetaResponse(data) + + if (blockchains.length === 0) { + throw new Error( + 'Rango API returned 0 blockchains. This likely indicates an API error.' + ) + } + + return blockchains.map(chain => ({ + chainCode: chain.name, + metadata: { + 'Display Name': chain.displayName ?? chain.name + } + })) + } + } +} diff --git a/scripts/synchronizers/rango/rangoTypes.ts b/scripts/synchronizers/rango/rangoTypes.ts new file mode 100644 index 00000000..3a2e6cc7 --- /dev/null +++ b/scripts/synchronizers/rango/rangoTypes.ts @@ -0,0 +1,10 @@ +import { asArray, asObject, asOptional, asString } from 'cleaners' + +export const asRangoBlockchain = asObject({ + name: asString, + displayName: asOptional(asString) +}) + +export const asRangoMetaResponse = asObject({ + blockchains: asArray(asRangoBlockchain) +}) diff --git a/scripts/synchronizers/sideshift/sideshiftSynchronizer.ts b/scripts/synchronizers/sideshift/sideshiftSynchronizer.ts new file mode 100644 index 00000000..973fa95a --- /dev/null +++ b/scripts/synchronizers/sideshift/sideshiftSynchronizer.ts @@ -0,0 +1,74 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asSideShiftAsset, asSideShiftAssetsResponse } from './sideshiftTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/sideshiftMappings.ts' +) + +export const makeSideShiftSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + return { + name: 'sideshift', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { sideshift } = require('../../mappings/sideshiftMappings') + return sideshift + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://sideshift.ai/api/v2/coins') + + if (!response.ok) { + throw new Error( + `Failed to fetch SideShift networks: ${response.statusText}` + ) + } + + const data = await response.json() + const assets = asSideShiftAssetsResponse(data) + + if (assets.length === 0) { + throw new Error( + 'SideShift API returned 0 assets. This likely indicates an API error.' + ) + } + + // Extract unique network values from all assets + const uniqueNetworks = new Set() + assets.forEach(asset => { + const parsedAsset = asSideShiftAsset(asset) + if (parsedAsset != null) { + parsedAsset.networks.forEach(network => { + if (network != null && network !== '') { + uniqueNetworks.add(network) + } + }) + } + }) + + if (uniqueNetworks.size === 0) { + throw new Error( + 'SideShift API returned assets but no valid networks were extracted.' + ) + } + + return Array.from(uniqueNetworks).map(network => ({ + chainCode: network, + metadata: { + 'Display Name': network + } + })) + } + } +} diff --git a/scripts/synchronizers/sideshift/sideshiftTypes.ts b/scripts/synchronizers/sideshift/sideshiftTypes.ts new file mode 100644 index 00000000..d13700aa --- /dev/null +++ b/scripts/synchronizers/sideshift/sideshiftTypes.ts @@ -0,0 +1,30 @@ +import { + asArray, + asEither, + asMaybe, + asObject, + asString, + asUnknown +} from 'cleaners' + +export const asSideShiftMainnetAsset = asObject({ + coin: asString, + networks: asArray(asString), + mainnet: asString +}) + +export const asSideShiftTokenAsset = asObject({ + coin: asString, + networks: asArray(asString), + tokenDetails: asObject( + asObject({ + contractAddress: asString + }) + ) +}) + +export const asSideShiftAsset = asMaybe( + asEither(asSideShiftMainnetAsset, asSideShiftTokenAsset) +) + +export const asSideShiftAssetsResponse = asArray(asUnknown) diff --git a/scripts/synchronizers/swapkit/swapkitSynchronizer.ts b/scripts/synchronizers/swapkit/swapkitSynchronizer.ts new file mode 100644 index 00000000..521d59ab --- /dev/null +++ b/scripts/synchronizers/swapkit/swapkitSynchronizer.ts @@ -0,0 +1,124 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asSwapKitResponse, asSwapKitTokensResponse } from './swapkitTypes' + +// Based on SwapKit API docs: https://docs.swapkit.dev/swapkit-api/tokens-request-supported-tokens-by-a-swap-provider + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/swapkitMappings.ts' +) + +export const makeSwapKitSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.SWAPKIT_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing SWAPKIT_API_KEY in environment variables') + } + + return { + name: 'swapkit', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { swapkit } = require('../../mappings/swapkitMappings') + return swapkit + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + // First, get list of providers to know which ones to query + const providersResponse = await fetch( + 'https://api.swapkit.dev/providers', + { + headers: { + 'x-api-key': apiKey + } + } + ) + + if (!providersResponse.ok) { + throw new Error( + `Failed to fetch SwapKit providers: ${providersResponse.statusText}` + ) + } + + const providersJson = await providersResponse.json() + const providers = asSwapKitResponse(providersJson) + + // Extract provider names from the providers response + const providerNames = new Set() + providers.forEach(provider => { + // Provider name might be in various fields due to withRest + const name = + (provider as any).name ?? + (provider as any).provider ?? + (provider as any).id + if (name != null && typeof name === 'string') { + providerNames.add(name.toUpperCase()) + } + }) + + const chainTickers = new Set() + + // Query tokens from each provider + for (const providerName of providerNames) { + try { + const tokensResponse = await fetch( + `https://api.swapkit.dev/tokens?provider=${providerName}`, + { + headers: { + accept: 'application/json', + 'x-api-key': apiKey + } + } + ) + + if (!tokensResponse.ok) { + console.warn( + `Failed to fetch tokens for provider ${providerName}: ${tokensResponse.statusText}` + ) + continue + } + + const tokensJson = await tokensResponse.json() + const tokensData = asSwapKitTokensResponse(tokensJson) + + // Extract unique chain ticker codes from tokens + // The `chain` field contains the ticker code (e.g., "BTC", "ETH", "SOL") + tokensData.tokens.forEach(token => { + if (token.chain != null && token.chain !== '') { + chainTickers.add(token.chain) + } + }) + } catch (error: any) { + console.warn( + `Error fetching tokens for provider ${providerName}:`, + error.message + ) + // Continue with other providers + } + } + + if (chainTickers.size === 0) { + throw new Error( + 'No chain tickers extracted from any provider. Check API key and provider availability.' + ) + } + + return Array.from(chainTickers).map(ticker => ({ + chainCode: ticker, + metadata: { + 'Display Name': ticker + } + })) + } + } +} diff --git a/scripts/synchronizers/swapkit/swapkitTypes.ts b/scripts/synchronizers/swapkit/swapkitTypes.ts new file mode 100644 index 00000000..6986b851 --- /dev/null +++ b/scripts/synchronizers/swapkit/swapkitTypes.ts @@ -0,0 +1,34 @@ +import { asArray, asNumber, asObject, asOptional, asString } from 'cleaners' + +const asSwapKitProvider = asObject({ + supportedChainIds: asOptional(asArray(asString), []), + enabledChainIds: asOptional(asArray(asString), []) +}).withRest + +export const asSwapKitResponse = asArray(asSwapKitProvider) + +// Token response format based on SwapKit API docs +// https://docs.swapkit.dev/swapkit-api/tokens-request-supported-tokens-by-a-swap-provider +const asSwapKitToken = asObject({ + chain: asString, // The blockchain ticker (e.g., "BTC", "ETH", "SOL") + chainId: asOptional(asString), // The chain ID (e.g., "bitcoin", "42161", "solana") + ticker: asOptional(asString), // The token ticker symbol + identifier: asOptional(asString), // Format: "CHAIN.TICKER" or "CHAIN.TICKER-CONTRACT" + symbol: asOptional(asString), + name: asOptional(asString), + decimals: asOptional(asNumber), // Number, not string (e.g., 18, 8, 6) + address: asOptional(asString), + logoURI: asOptional(asString), + coingeckoId: asOptional(asString), + shortCode: asOptional(asString) +}).withRest + +const asSwapKitTokensResponse = asObject({ + provider: asOptional(asString), + name: asOptional(asString), + timestamp: asOptional(asString), + count: asOptional(asNumber), + tokens: asArray(asSwapKitToken) +}) + +export { asSwapKitTokensResponse } diff --git a/scripts/synchronizers/swapuz/swapuzSynchronizer.ts b/scripts/synchronizers/swapuz/swapuzSynchronizer.ts new file mode 100644 index 00000000..98b1684b --- /dev/null +++ b/scripts/synchronizers/swapuz/swapuzSynchronizer.ts @@ -0,0 +1,99 @@ +import fs from 'fs' +import fetch from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asSwapuzResponse } from './swapuzTypes' + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/swapuzMappings.ts' +) + +export const makeSwapuzSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + const apiKey = config.SWAPUZ_API_KEY + if (apiKey == null || apiKey === '') { + throw new Error('Missing SWAPUZ_API_KEY in environment variables') + } + + return { + name: 'swapuz', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { swapuz } = require('../../mappings/swapuzMappings') + return swapuz + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetch('https://api.swapuz.com/api/home/v1/coins', { + headers: { + 'api-key': apiKey, + 'Content-Type': 'application/json' + } + }) + + if (!response.ok) { + throw new Error( + `Failed to fetch Swapuz networks: ${response.status} ${response.statusText}` + ) + } + + const json = await response.json() + const data = asSwapuzResponse(json) + + if (data.result.length === 0) { + throw new Error( + 'Swapuz API returned 0 coins. This likely indicates an API error.' + ) + } + + const networks = new Set() + const networkNames = new Map() + + // Extract networks from all coins + for (const coin of data.result) { + for (const network of coin.network) { + // Use shortName as the network ID (e.g., "BSC", "ETH", "SOL") + const networkId = network.shortName + if (networkId !== '' && networkId != null) { + networks.add(networkId) + // Use fullName if available, otherwise name, otherwise shortName + const displayName = network.fullName ?? network.name ?? networkId + const existingName = networkNames.get(networkId) + const existingLength = existingName?.length ?? 0 + if ( + !networkNames.has(networkId) || + displayName.length > existingLength + ) { + networkNames.set(networkId, displayName) + } + } + } + } + + if (networks.size === 0) { + throw new Error( + 'Swapuz API returned coins but no valid networks were extracted.' + ) + } + + return Array.from(networks).map(id => { + const name = networkNames.get(id) + const displayName = name != null && name !== '' ? name : id + return { + chainCode: id, + metadata: { + 'Display Name': displayName + } + } + }) + } + } +} diff --git a/scripts/synchronizers/swapuz/swapuzTypes.ts b/scripts/synchronizers/swapuz/swapuzTypes.ts new file mode 100644 index 00000000..8f43c4d8 --- /dev/null +++ b/scripts/synchronizers/swapuz/swapuzTypes.ts @@ -0,0 +1,18 @@ +import { asArray, asNumber, asObject, asOptional, asString } from 'cleaners' + +const asSwapuzNetwork = asObject({ + shortName: asString, + name: asString, + fullName: asOptional(asString) +}) + +const asSwapuzCoin = asObject({ + name: asString, + network: asArray(asSwapuzNetwork) +}) + +export const asSwapuzResponse = asObject({ + result: asArray(asSwapuzCoin), + status: asOptional(asNumber), + message: asOptional(asString) +}) diff --git a/scripts/synchronizers/thorchain/thorchainSynchronizer.ts b/scripts/synchronizers/thorchain/thorchainSynchronizer.ts new file mode 100644 index 00000000..5fe8b218 --- /dev/null +++ b/scripts/synchronizers/thorchain/thorchainSynchronizer.ts @@ -0,0 +1,105 @@ +import fs from 'fs' +import fetch, { Response } from 'node-fetch' +import path from 'path' + +import { EdgeCurrencyPluginId } from '../../../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from '../../mapctlConfig' +import { FetchChainCodeResult, SwapSynchronizer } from '../../types' +import { asThorchainPoolsResponse } from './thorchainTypes' + +// Fallback Midgard servers (try multiple endpoints) +const MIDGARD_SERVERS = [ + 'https://midgard.ninerealms.com', + 'https://midgard.thorchain.info' +] + +const MAPPING_FILE_PATH = path.join( + __dirname, + '../../mappings/thorchainMappings.ts' +) + +async function fetchWithFallback( + servers: string[], + urlPath: string +): Promise { + let lastError: Error | undefined + + for (const server of servers) { + try { + const url = `${server}/${urlPath}` + const response = await fetch(url) + + if (response.ok) { + return response + } + + lastError = new Error( + `Failed to fetch from ${url}: ${response.statusText}` + ) + } catch (error: any) { + lastError = error instanceof Error ? error : new Error(String(error)) + // Continue to next server + } + } + + throw new Error( + `Failed to fetch THORChain pools from all servers: ${ + lastError?.message ?? 'Unknown error' + }` + ) +} + +export const makeThorchainSynchronizer = ( + config: MapctlConfig +): SwapSynchronizer => { + return { + name: 'thorchain', + get map(): Map { + if (fs.existsSync(MAPPING_FILE_PATH)) { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { thorchain } = require('../../mappings/thorchainMappings') + return thorchain + } + return new Map() + }, + mappingFilePath: MAPPING_FILE_PATH, + fetchChainCodes: async (): Promise => { + const response = await fetchWithFallback(MIDGARD_SERVERS, 'v2/pools') + + const data = await response.json() + const pools = asThorchainPoolsResponse(data) + + if (pools.length === 0) { + throw new Error( + 'THORChain API returned 0 pools. This likely indicates an API error.' + ) + } + + // Extract unique chain identifiers from pool assets + // Format: "CHAIN.SYMBOL-CONTRACT" (e.g., "ETH.USDT-0x...") + const uniqueChains = new Set() + pools.forEach(pool => { + if (pool.asset != null && pool.asset !== '') { + // Extract chain from asset string (format: "CHAIN.SYMBOL-...") + const parts = pool.asset.split('.') + if (parts.length > 0 && parts[0] != null && parts[0] !== '') { + uniqueChains.add(parts[0]) + } + } + }) + + if (uniqueChains.size === 0) { + throw new Error( + 'THORChain API returned pools but no valid chains were extracted.' + ) + } + + return Array.from(uniqueChains).map(chain => ({ + chainCode: chain, + metadata: { + 'Display Name': chain + } + })) + } + } +} diff --git a/scripts/synchronizers/thorchain/thorchainTypes.ts b/scripts/synchronizers/thorchain/thorchainTypes.ts new file mode 100644 index 00000000..9401f455 --- /dev/null +++ b/scripts/synchronizers/thorchain/thorchainTypes.ts @@ -0,0 +1,7 @@ +import { asArray, asObject, asString } from 'cleaners' + +export const asThorchainPool = asObject({ + asset: asString +}) + +export const asThorchainPoolsResponse = asArray(asThorchainPool) diff --git a/scripts/types.ts b/scripts/types.ts new file mode 100644 index 00000000..092ae947 --- /dev/null +++ b/scripts/types.ts @@ -0,0 +1,16 @@ +import { EdgeCurrencyPluginId } from '../src/util/edgeCurrencyPluginIds' +import { MapctlConfig } from './mapctlConfig' + +export interface FetchChainCodeResult { + chainCode: string + metadata: Record +} + +export interface SwapSynchronizer { + readonly name: string + readonly map: Map + readonly mappingFilePath: string + fetchChainCodes: () => Promise +} + +export type SwapSynchronizerFactory = (config: MapctlConfig) => SwapSynchronizer diff --git a/src/mappings/changehero.ts b/src/mappings/changehero.ts new file mode 100644 index 00000000..f186852c --- /dev/null +++ b/src/mappings/changehero.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/changeheroMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/changeheroMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const changehero = new Map() +changehero.set('abstract', null) +changehero.set('algorand', null) +changehero.set('amoy', null) +changehero.set('arbitrum', null) +changehero.set('avalanche', null) +changehero.set('axelar', null) +changehero.set('badcoin', null) +changehero.set('base', null) +changehero.set('binance', null) +changehero.set('binancesmartchain', null) +changehero.set('bitcoin', null) +changehero.set('bitcoincash', null) +changehero.set('bitcoincashtestnet', null) +changehero.set('bitcoingold', null) +changehero.set('bitcoingoldtestnet', null) +changehero.set('bitcoinsv', null) +changehero.set('bitcointestnet', null) +changehero.set('bitcointestnet4', null) +changehero.set('bobevm', null) +changehero.set('botanix', null) +changehero.set('calibration', null) +changehero.set('cardano', null) +changehero.set('cardanotestnet', null) +changehero.set('celo', null) +changehero.set('coreum', null) +changehero.set('cosmoshub', null) +changehero.set('dash', null) +changehero.set('digibyte', null) +changehero.set('dogecoin', null) +changehero.set('eboost', null) +changehero.set('ecash', null) +changehero.set('eos', null) +changehero.set('ethDev', null) +changehero.set('ethereum', null) +changehero.set('ethereumclassic', null) +changehero.set('ethereumpow', null) +changehero.set('fantom', null) +changehero.set('feathercoin', null) +changehero.set('filecoin', null) +changehero.set('filecoinfevm', null) +changehero.set('filecoinfevmcalibration', null) +changehero.set('fio', null) +changehero.set('groestlcoin', null) +changehero.set('hedera', null) +changehero.set('holesky', null) +changehero.set('hyperevm', null) +changehero.set('liberland', null) +changehero.set('liberlandtestnet', null) +changehero.set('litecoin', null) +changehero.set('monero', null) +changehero.set('optimism', null) +changehero.set('osmosis', null) +changehero.set('piratechain', null) +changehero.set('pivx', null) +changehero.set('polkadot', null) +changehero.set('polygon', null) +changehero.set('pulsechain', null) +changehero.set('qtum', null) +changehero.set('ravencoin', null) +changehero.set('ripple', null) +changehero.set('rsk', null) +changehero.set('sepolia', null) +changehero.set('smartcash', null) +changehero.set('solana', null) +changehero.set('sonic', null) +changehero.set('stellar', null) +changehero.set('sui', null) +changehero.set('suitestnet', null) +changehero.set('telos', null) +changehero.set('tezos', null) +changehero.set('thorchainrune', null) +changehero.set('thorchainrunestagenet', null) +changehero.set('ton', null) +changehero.set('tron', null) +changehero.set('ufo', null) +changehero.set('vertcoin', null) +changehero.set('wax', null) +changehero.set('zano', null) +changehero.set('zcash', null) +changehero.set('zcoin', null) +changehero.set('zksync', null) diff --git a/src/mappings/changenow.ts b/src/mappings/changenow.ts new file mode 100644 index 00000000..017c09e5 --- /dev/null +++ b/src/mappings/changenow.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/changenowMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/changenowMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const changenow = new Map() +changenow.set('abstract', null) +changenow.set('algorand', null) +changenow.set('amoy', null) +changenow.set('arbitrum', null) +changenow.set('avalanche', null) +changenow.set('axelar', null) +changenow.set('badcoin', null) +changenow.set('base', null) +changenow.set('binance', null) +changenow.set('binancesmartchain', null) +changenow.set('bitcoin', null) +changenow.set('bitcoincash', null) +changenow.set('bitcoincashtestnet', null) +changenow.set('bitcoingold', null) +changenow.set('bitcoingoldtestnet', null) +changenow.set('bitcoinsv', null) +changenow.set('bitcointestnet', null) +changenow.set('bitcointestnet4', null) +changenow.set('bobevm', null) +changenow.set('botanix', null) +changenow.set('calibration', null) +changenow.set('cardano', null) +changenow.set('cardanotestnet', null) +changenow.set('celo', null) +changenow.set('coreum', null) +changenow.set('cosmoshub', null) +changenow.set('dash', null) +changenow.set('digibyte', null) +changenow.set('dogecoin', null) +changenow.set('eboost', null) +changenow.set('ecash', null) +changenow.set('eos', null) +changenow.set('ethDev', null) +changenow.set('ethereum', null) +changenow.set('ethereumclassic', null) +changenow.set('ethereumpow', null) +changenow.set('fantom', null) +changenow.set('feathercoin', null) +changenow.set('filecoin', null) +changenow.set('filecoinfevm', null) +changenow.set('filecoinfevmcalibration', null) +changenow.set('fio', null) +changenow.set('groestlcoin', null) +changenow.set('hedera', null) +changenow.set('holesky', null) +changenow.set('hyperevm', null) +changenow.set('liberland', null) +changenow.set('liberlandtestnet', null) +changenow.set('litecoin', null) +changenow.set('monero', null) +changenow.set('optimism', null) +changenow.set('osmosis', null) +changenow.set('piratechain', null) +changenow.set('pivx', null) +changenow.set('polkadot', null) +changenow.set('polygon', null) +changenow.set('pulsechain', null) +changenow.set('qtum', null) +changenow.set('ravencoin', null) +changenow.set('ripple', null) +changenow.set('rsk', null) +changenow.set('sepolia', null) +changenow.set('smartcash', null) +changenow.set('solana', null) +changenow.set('sonic', null) +changenow.set('stellar', null) +changenow.set('sui', null) +changenow.set('suitestnet', null) +changenow.set('telos', null) +changenow.set('tezos', null) +changenow.set('thorchainrune', null) +changenow.set('thorchainrunestagenet', null) +changenow.set('ton', null) +changenow.set('tron', null) +changenow.set('ufo', null) +changenow.set('vertcoin', null) +changenow.set('wax', null) +changenow.set('zano', null) +changenow.set('zcash', null) +changenow.set('zcoin', null) +changenow.set('zksync', null) diff --git a/src/mappings/exolix.ts b/src/mappings/exolix.ts new file mode 100644 index 00000000..48d15b1e --- /dev/null +++ b/src/mappings/exolix.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/exolixMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/exolixMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const exolix = new Map() +exolix.set('abstract', null) +exolix.set('algorand', null) +exolix.set('amoy', null) +exolix.set('arbitrum', null) +exolix.set('avalanche', null) +exolix.set('axelar', null) +exolix.set('badcoin', null) +exolix.set('base', null) +exolix.set('binance', null) +exolix.set('binancesmartchain', null) +exolix.set('bitcoin', null) +exolix.set('bitcoincash', null) +exolix.set('bitcoincashtestnet', null) +exolix.set('bitcoingold', null) +exolix.set('bitcoingoldtestnet', null) +exolix.set('bitcoinsv', null) +exolix.set('bitcointestnet', null) +exolix.set('bitcointestnet4', null) +exolix.set('bobevm', null) +exolix.set('botanix', null) +exolix.set('calibration', null) +exolix.set('cardano', null) +exolix.set('cardanotestnet', null) +exolix.set('celo', null) +exolix.set('coreum', null) +exolix.set('cosmoshub', null) +exolix.set('dash', null) +exolix.set('digibyte', null) +exolix.set('dogecoin', null) +exolix.set('eboost', null) +exolix.set('ecash', null) +exolix.set('eos', null) +exolix.set('ethDev', null) +exolix.set('ethereum', null) +exolix.set('ethereumclassic', null) +exolix.set('ethereumpow', null) +exolix.set('fantom', null) +exolix.set('feathercoin', null) +exolix.set('filecoin', null) +exolix.set('filecoinfevm', null) +exolix.set('filecoinfevmcalibration', null) +exolix.set('fio', null) +exolix.set('groestlcoin', null) +exolix.set('hedera', null) +exolix.set('holesky', null) +exolix.set('hyperevm', null) +exolix.set('liberland', null) +exolix.set('liberlandtestnet', null) +exolix.set('litecoin', null) +exolix.set('monero', null) +exolix.set('optimism', null) +exolix.set('osmosis', null) +exolix.set('piratechain', null) +exolix.set('pivx', null) +exolix.set('polkadot', null) +exolix.set('polygon', null) +exolix.set('pulsechain', null) +exolix.set('qtum', null) +exolix.set('ravencoin', null) +exolix.set('ripple', null) +exolix.set('rsk', null) +exolix.set('sepolia', null) +exolix.set('smartcash', null) +exolix.set('solana', null) +exolix.set('sonic', null) +exolix.set('stellar', null) +exolix.set('sui', null) +exolix.set('suitestnet', null) +exolix.set('telos', null) +exolix.set('tezos', null) +exolix.set('thorchainrune', null) +exolix.set('thorchainrunestagenet', null) +exolix.set('ton', null) +exolix.set('tron', null) +exolix.set('ufo', null) +exolix.set('vertcoin', null) +exolix.set('wax', null) +exolix.set('zano', null) +exolix.set('zcash', null) +exolix.set('zcoin', null) +exolix.set('zksync', null) diff --git a/src/mappings/godex.ts b/src/mappings/godex.ts new file mode 100644 index 00000000..4091d17f --- /dev/null +++ b/src/mappings/godex.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/godexMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/godexMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const godex = new Map() +godex.set('abstract', null) +godex.set('algorand', null) +godex.set('amoy', null) +godex.set('arbitrum', null) +godex.set('avalanche', null) +godex.set('axelar', null) +godex.set('badcoin', null) +godex.set('base', null) +godex.set('binance', null) +godex.set('binancesmartchain', null) +godex.set('bitcoin', null) +godex.set('bitcoincash', null) +godex.set('bitcoincashtestnet', null) +godex.set('bitcoingold', null) +godex.set('bitcoingoldtestnet', null) +godex.set('bitcoinsv', null) +godex.set('bitcointestnet', null) +godex.set('bitcointestnet4', null) +godex.set('bobevm', null) +godex.set('botanix', null) +godex.set('calibration', null) +godex.set('cardano', null) +godex.set('cardanotestnet', null) +godex.set('celo', null) +godex.set('coreum', null) +godex.set('cosmoshub', null) +godex.set('dash', null) +godex.set('digibyte', null) +godex.set('dogecoin', null) +godex.set('eboost', null) +godex.set('ecash', null) +godex.set('eos', null) +godex.set('ethDev', null) +godex.set('ethereum', null) +godex.set('ethereumclassic', null) +godex.set('ethereumpow', null) +godex.set('fantom', null) +godex.set('feathercoin', null) +godex.set('filecoin', null) +godex.set('filecoinfevm', null) +godex.set('filecoinfevmcalibration', null) +godex.set('fio', null) +godex.set('groestlcoin', null) +godex.set('hedera', null) +godex.set('holesky', null) +godex.set('hyperevm', null) +godex.set('liberland', null) +godex.set('liberlandtestnet', null) +godex.set('litecoin', null) +godex.set('monero', null) +godex.set('optimism', null) +godex.set('osmosis', null) +godex.set('piratechain', null) +godex.set('pivx', null) +godex.set('polkadot', null) +godex.set('polygon', null) +godex.set('pulsechain', null) +godex.set('qtum', null) +godex.set('ravencoin', null) +godex.set('ripple', null) +godex.set('rsk', null) +godex.set('sepolia', null) +godex.set('smartcash', null) +godex.set('solana', null) +godex.set('sonic', null) +godex.set('stellar', null) +godex.set('sui', null) +godex.set('suitestnet', null) +godex.set('telos', null) +godex.set('tezos', null) +godex.set('thorchainrune', null) +godex.set('thorchainrunestagenet', null) +godex.set('ton', null) +godex.set('tron', null) +godex.set('ufo', null) +godex.set('vertcoin', null) +godex.set('wax', null) +godex.set('zano', null) +godex.set('zcash', null) +godex.set('zcoin', null) +godex.set('zksync', null) diff --git a/src/mappings/letsexchange.ts b/src/mappings/letsexchange.ts new file mode 100644 index 00000000..02d67c10 --- /dev/null +++ b/src/mappings/letsexchange.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/letsexchangeMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/letsexchangeMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const letsexchange = new Map() +letsexchange.set('abstract', null) +letsexchange.set('algorand', null) +letsexchange.set('amoy', null) +letsexchange.set('arbitrum', null) +letsexchange.set('avalanche', null) +letsexchange.set('axelar', null) +letsexchange.set('badcoin', null) +letsexchange.set('base', null) +letsexchange.set('binance', null) +letsexchange.set('binancesmartchain', null) +letsexchange.set('bitcoin', null) +letsexchange.set('bitcoincash', null) +letsexchange.set('bitcoincashtestnet', null) +letsexchange.set('bitcoingold', null) +letsexchange.set('bitcoingoldtestnet', null) +letsexchange.set('bitcoinsv', null) +letsexchange.set('bitcointestnet', null) +letsexchange.set('bitcointestnet4', null) +letsexchange.set('bobevm', null) +letsexchange.set('botanix', null) +letsexchange.set('calibration', null) +letsexchange.set('cardano', null) +letsexchange.set('cardanotestnet', null) +letsexchange.set('celo', null) +letsexchange.set('coreum', null) +letsexchange.set('cosmoshub', null) +letsexchange.set('dash', null) +letsexchange.set('digibyte', null) +letsexchange.set('dogecoin', null) +letsexchange.set('eboost', null) +letsexchange.set('ecash', null) +letsexchange.set('eos', null) +letsexchange.set('ethDev', null) +letsexchange.set('ethereum', null) +letsexchange.set('ethereumclassic', null) +letsexchange.set('ethereumpow', null) +letsexchange.set('fantom', null) +letsexchange.set('feathercoin', null) +letsexchange.set('filecoin', null) +letsexchange.set('filecoinfevm', null) +letsexchange.set('filecoinfevmcalibration', null) +letsexchange.set('fio', null) +letsexchange.set('groestlcoin', null) +letsexchange.set('hedera', null) +letsexchange.set('holesky', null) +letsexchange.set('hyperevm', null) +letsexchange.set('liberland', null) +letsexchange.set('liberlandtestnet', null) +letsexchange.set('litecoin', null) +letsexchange.set('monero', null) +letsexchange.set('optimism', null) +letsexchange.set('osmosis', null) +letsexchange.set('piratechain', null) +letsexchange.set('pivx', null) +letsexchange.set('polkadot', null) +letsexchange.set('polygon', null) +letsexchange.set('pulsechain', null) +letsexchange.set('qtum', null) +letsexchange.set('ravencoin', null) +letsexchange.set('ripple', null) +letsexchange.set('rsk', null) +letsexchange.set('sepolia', null) +letsexchange.set('smartcash', null) +letsexchange.set('solana', null) +letsexchange.set('sonic', null) +letsexchange.set('stellar', null) +letsexchange.set('sui', null) +letsexchange.set('suitestnet', null) +letsexchange.set('telos', null) +letsexchange.set('tezos', null) +letsexchange.set('thorchainrune', null) +letsexchange.set('thorchainrunestagenet', null) +letsexchange.set('ton', null) +letsexchange.set('tron', null) +letsexchange.set('ufo', null) +letsexchange.set('vertcoin', null) +letsexchange.set('wax', null) +letsexchange.set('zano', null) +letsexchange.set('zcash', null) +letsexchange.set('zcoin', null) +letsexchange.set('zksync', null) diff --git a/src/mappings/lifi.ts b/src/mappings/lifi.ts new file mode 100644 index 00000000..b4675324 --- /dev/null +++ b/src/mappings/lifi.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/lifiMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/lifiMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const lifi = new Map() +lifi.set('abstract', null) +lifi.set('algorand', null) +lifi.set('amoy', null) +lifi.set('arbitrum', null) +lifi.set('avalanche', null) +lifi.set('axelar', null) +lifi.set('badcoin', null) +lifi.set('base', null) +lifi.set('binance', null) +lifi.set('binancesmartchain', null) +lifi.set('bitcoin', null) +lifi.set('bitcoincash', null) +lifi.set('bitcoincashtestnet', null) +lifi.set('bitcoingold', null) +lifi.set('bitcoingoldtestnet', null) +lifi.set('bitcoinsv', null) +lifi.set('bitcointestnet', null) +lifi.set('bitcointestnet4', null) +lifi.set('bobevm', null) +lifi.set('botanix', null) +lifi.set('calibration', null) +lifi.set('cardano', null) +lifi.set('cardanotestnet', null) +lifi.set('celo', null) +lifi.set('coreum', null) +lifi.set('cosmoshub', null) +lifi.set('dash', null) +lifi.set('digibyte', null) +lifi.set('dogecoin', null) +lifi.set('eboost', null) +lifi.set('ecash', null) +lifi.set('eos', null) +lifi.set('ethDev', null) +lifi.set('ethereum', null) +lifi.set('ethereumclassic', null) +lifi.set('ethereumpow', null) +lifi.set('fantom', null) +lifi.set('feathercoin', null) +lifi.set('filecoin', null) +lifi.set('filecoinfevm', null) +lifi.set('filecoinfevmcalibration', null) +lifi.set('fio', null) +lifi.set('groestlcoin', null) +lifi.set('hedera', null) +lifi.set('holesky', null) +lifi.set('hyperevm', null) +lifi.set('liberland', null) +lifi.set('liberlandtestnet', null) +lifi.set('litecoin', null) +lifi.set('monero', null) +lifi.set('optimism', null) +lifi.set('osmosis', null) +lifi.set('piratechain', null) +lifi.set('pivx', null) +lifi.set('polkadot', null) +lifi.set('polygon', null) +lifi.set('pulsechain', null) +lifi.set('qtum', null) +lifi.set('ravencoin', null) +lifi.set('ripple', null) +lifi.set('rsk', null) +lifi.set('sepolia', null) +lifi.set('smartcash', null) +lifi.set('solana', null) +lifi.set('sonic', null) +lifi.set('stellar', null) +lifi.set('sui', null) +lifi.set('suitestnet', null) +lifi.set('telos', null) +lifi.set('tezos', null) +lifi.set('thorchainrune', null) +lifi.set('thorchainrunestagenet', null) +lifi.set('ton', null) +lifi.set('tron', null) +lifi.set('ufo', null) +lifi.set('vertcoin', null) +lifi.set('wax', null) +lifi.set('zano', null) +lifi.set('zcash', null) +lifi.set('zcoin', null) +lifi.set('zksync', null) diff --git a/src/mappings/mayaprotocol.ts b/src/mappings/mayaprotocol.ts new file mode 100644 index 00000000..ea733762 --- /dev/null +++ b/src/mappings/mayaprotocol.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/mayaprotocolMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/mayaprotocolMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const mayaprotocol = new Map() +mayaprotocol.set('abstract', null) +mayaprotocol.set('algorand', null) +mayaprotocol.set('amoy', null) +mayaprotocol.set('arbitrum', null) +mayaprotocol.set('avalanche', null) +mayaprotocol.set('axelar', null) +mayaprotocol.set('badcoin', null) +mayaprotocol.set('base', null) +mayaprotocol.set('binance', null) +mayaprotocol.set('binancesmartchain', null) +mayaprotocol.set('bitcoin', null) +mayaprotocol.set('bitcoincash', null) +mayaprotocol.set('bitcoincashtestnet', null) +mayaprotocol.set('bitcoingold', null) +mayaprotocol.set('bitcoingoldtestnet', null) +mayaprotocol.set('bitcoinsv', null) +mayaprotocol.set('bitcointestnet', null) +mayaprotocol.set('bitcointestnet4', null) +mayaprotocol.set('bobevm', null) +mayaprotocol.set('botanix', null) +mayaprotocol.set('calibration', null) +mayaprotocol.set('cardano', null) +mayaprotocol.set('cardanotestnet', null) +mayaprotocol.set('celo', null) +mayaprotocol.set('coreum', null) +mayaprotocol.set('cosmoshub', null) +mayaprotocol.set('dash', null) +mayaprotocol.set('digibyte', null) +mayaprotocol.set('dogecoin', null) +mayaprotocol.set('eboost', null) +mayaprotocol.set('ecash', null) +mayaprotocol.set('eos', null) +mayaprotocol.set('ethDev', null) +mayaprotocol.set('ethereum', null) +mayaprotocol.set('ethereumclassic', null) +mayaprotocol.set('ethereumpow', null) +mayaprotocol.set('fantom', null) +mayaprotocol.set('feathercoin', null) +mayaprotocol.set('filecoin', null) +mayaprotocol.set('filecoinfevm', null) +mayaprotocol.set('filecoinfevmcalibration', null) +mayaprotocol.set('fio', null) +mayaprotocol.set('groestlcoin', null) +mayaprotocol.set('hedera', null) +mayaprotocol.set('holesky', null) +mayaprotocol.set('hyperevm', null) +mayaprotocol.set('liberland', null) +mayaprotocol.set('liberlandtestnet', null) +mayaprotocol.set('litecoin', null) +mayaprotocol.set('monero', null) +mayaprotocol.set('optimism', null) +mayaprotocol.set('osmosis', null) +mayaprotocol.set('piratechain', null) +mayaprotocol.set('pivx', null) +mayaprotocol.set('polkadot', null) +mayaprotocol.set('polygon', null) +mayaprotocol.set('pulsechain', null) +mayaprotocol.set('qtum', null) +mayaprotocol.set('ravencoin', null) +mayaprotocol.set('ripple', null) +mayaprotocol.set('rsk', null) +mayaprotocol.set('sepolia', null) +mayaprotocol.set('smartcash', null) +mayaprotocol.set('solana', null) +mayaprotocol.set('sonic', null) +mayaprotocol.set('stellar', null) +mayaprotocol.set('sui', null) +mayaprotocol.set('suitestnet', null) +mayaprotocol.set('telos', null) +mayaprotocol.set('tezos', null) +mayaprotocol.set('thorchainrune', null) +mayaprotocol.set('thorchainrunestagenet', null) +mayaprotocol.set('ton', null) +mayaprotocol.set('tron', null) +mayaprotocol.set('ufo', null) +mayaprotocol.set('vertcoin', null) +mayaprotocol.set('wax', null) +mayaprotocol.set('zano', null) +mayaprotocol.set('zcash', null) +mayaprotocol.set('zcoin', null) +mayaprotocol.set('zksync', null) diff --git a/src/mappings/rango.ts b/src/mappings/rango.ts new file mode 100644 index 00000000..839aed25 --- /dev/null +++ b/src/mappings/rango.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/rangoMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/rangoMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const rango = new Map() +rango.set('abstract', null) +rango.set('algorand', null) +rango.set('amoy', null) +rango.set('arbitrum', null) +rango.set('avalanche', null) +rango.set('axelar', null) +rango.set('badcoin', null) +rango.set('base', null) +rango.set('binance', null) +rango.set('binancesmartchain', null) +rango.set('bitcoin', null) +rango.set('bitcoincash', null) +rango.set('bitcoincashtestnet', null) +rango.set('bitcoingold', null) +rango.set('bitcoingoldtestnet', null) +rango.set('bitcoinsv', null) +rango.set('bitcointestnet', null) +rango.set('bitcointestnet4', null) +rango.set('bobevm', null) +rango.set('botanix', null) +rango.set('calibration', null) +rango.set('cardano', null) +rango.set('cardanotestnet', null) +rango.set('celo', null) +rango.set('coreum', null) +rango.set('cosmoshub', null) +rango.set('dash', null) +rango.set('digibyte', null) +rango.set('dogecoin', null) +rango.set('eboost', null) +rango.set('ecash', null) +rango.set('eos', null) +rango.set('ethDev', null) +rango.set('ethereum', null) +rango.set('ethereumclassic', null) +rango.set('ethereumpow', null) +rango.set('fantom', null) +rango.set('feathercoin', null) +rango.set('filecoin', null) +rango.set('filecoinfevm', null) +rango.set('filecoinfevmcalibration', null) +rango.set('fio', null) +rango.set('groestlcoin', null) +rango.set('hedera', null) +rango.set('holesky', null) +rango.set('hyperevm', null) +rango.set('liberland', null) +rango.set('liberlandtestnet', null) +rango.set('litecoin', null) +rango.set('monero', null) +rango.set('optimism', null) +rango.set('osmosis', null) +rango.set('piratechain', null) +rango.set('pivx', null) +rango.set('polkadot', null) +rango.set('polygon', null) +rango.set('pulsechain', null) +rango.set('qtum', null) +rango.set('ravencoin', null) +rango.set('ripple', null) +rango.set('rsk', null) +rango.set('sepolia', null) +rango.set('smartcash', null) +rango.set('solana', null) +rango.set('sonic', null) +rango.set('stellar', null) +rango.set('sui', null) +rango.set('suitestnet', null) +rango.set('telos', null) +rango.set('tezos', null) +rango.set('thorchainrune', null) +rango.set('thorchainrunestagenet', null) +rango.set('ton', null) +rango.set('tron', null) +rango.set('ufo', null) +rango.set('vertcoin', null) +rango.set('wax', null) +rango.set('zano', null) +rango.set('zcash', null) +rango.set('zcoin', null) +rango.set('zksync', null) diff --git a/src/mappings/sideshift.ts b/src/mappings/sideshift.ts new file mode 100644 index 00000000..f69d3e91 --- /dev/null +++ b/src/mappings/sideshift.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/sideshiftMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/sideshiftMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const sideshift = new Map() +sideshift.set('abstract', null) +sideshift.set('algorand', null) +sideshift.set('amoy', null) +sideshift.set('arbitrum', null) +sideshift.set('avalanche', null) +sideshift.set('axelar', null) +sideshift.set('badcoin', null) +sideshift.set('base', null) +sideshift.set('binance', null) +sideshift.set('binancesmartchain', null) +sideshift.set('bitcoin', null) +sideshift.set('bitcoincash', null) +sideshift.set('bitcoincashtestnet', null) +sideshift.set('bitcoingold', null) +sideshift.set('bitcoingoldtestnet', null) +sideshift.set('bitcoinsv', null) +sideshift.set('bitcointestnet', null) +sideshift.set('bitcointestnet4', null) +sideshift.set('bobevm', null) +sideshift.set('botanix', null) +sideshift.set('calibration', null) +sideshift.set('cardano', null) +sideshift.set('cardanotestnet', null) +sideshift.set('celo', null) +sideshift.set('coreum', null) +sideshift.set('cosmoshub', null) +sideshift.set('dash', null) +sideshift.set('digibyte', null) +sideshift.set('dogecoin', null) +sideshift.set('eboost', null) +sideshift.set('ecash', null) +sideshift.set('eos', null) +sideshift.set('ethDev', null) +sideshift.set('ethereum', null) +sideshift.set('ethereumclassic', null) +sideshift.set('ethereumpow', null) +sideshift.set('fantom', null) +sideshift.set('feathercoin', null) +sideshift.set('filecoin', null) +sideshift.set('filecoinfevm', null) +sideshift.set('filecoinfevmcalibration', null) +sideshift.set('fio', null) +sideshift.set('groestlcoin', null) +sideshift.set('hedera', null) +sideshift.set('holesky', null) +sideshift.set('hyperevm', null) +sideshift.set('liberland', null) +sideshift.set('liberlandtestnet', null) +sideshift.set('litecoin', null) +sideshift.set('monero', null) +sideshift.set('optimism', null) +sideshift.set('osmosis', null) +sideshift.set('piratechain', null) +sideshift.set('pivx', null) +sideshift.set('polkadot', null) +sideshift.set('polygon', null) +sideshift.set('pulsechain', null) +sideshift.set('qtum', null) +sideshift.set('ravencoin', null) +sideshift.set('ripple', null) +sideshift.set('rsk', null) +sideshift.set('sepolia', null) +sideshift.set('smartcash', null) +sideshift.set('solana', null) +sideshift.set('sonic', null) +sideshift.set('stellar', null) +sideshift.set('sui', null) +sideshift.set('suitestnet', null) +sideshift.set('telos', null) +sideshift.set('tezos', null) +sideshift.set('thorchainrune', null) +sideshift.set('thorchainrunestagenet', null) +sideshift.set('ton', null) +sideshift.set('tron', null) +sideshift.set('ufo', null) +sideshift.set('vertcoin', null) +sideshift.set('wax', null) +sideshift.set('zano', null) +sideshift.set('zcash', null) +sideshift.set('zcoin', null) +sideshift.set('zksync', null) diff --git a/src/mappings/swapkit.ts b/src/mappings/swapkit.ts new file mode 100644 index 00000000..cb36ed3c --- /dev/null +++ b/src/mappings/swapkit.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/swapkitMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/swapkitMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const swapkit = new Map() +swapkit.set('abstract', null) +swapkit.set('algorand', null) +swapkit.set('amoy', null) +swapkit.set('arbitrum', null) +swapkit.set('avalanche', null) +swapkit.set('axelar', null) +swapkit.set('badcoin', null) +swapkit.set('base', null) +swapkit.set('binance', null) +swapkit.set('binancesmartchain', null) +swapkit.set('bitcoin', null) +swapkit.set('bitcoincash', null) +swapkit.set('bitcoincashtestnet', null) +swapkit.set('bitcoingold', null) +swapkit.set('bitcoingoldtestnet', null) +swapkit.set('bitcoinsv', null) +swapkit.set('bitcointestnet', null) +swapkit.set('bitcointestnet4', null) +swapkit.set('bobevm', null) +swapkit.set('botanix', null) +swapkit.set('calibration', null) +swapkit.set('cardano', null) +swapkit.set('cardanotestnet', null) +swapkit.set('celo', null) +swapkit.set('coreum', null) +swapkit.set('cosmoshub', null) +swapkit.set('dash', null) +swapkit.set('digibyte', null) +swapkit.set('dogecoin', null) +swapkit.set('eboost', null) +swapkit.set('ecash', null) +swapkit.set('eos', null) +swapkit.set('ethDev', null) +swapkit.set('ethereum', null) +swapkit.set('ethereumclassic', null) +swapkit.set('ethereumpow', null) +swapkit.set('fantom', null) +swapkit.set('feathercoin', null) +swapkit.set('filecoin', null) +swapkit.set('filecoinfevm', null) +swapkit.set('filecoinfevmcalibration', null) +swapkit.set('fio', null) +swapkit.set('groestlcoin', null) +swapkit.set('hedera', null) +swapkit.set('holesky', null) +swapkit.set('hyperevm', null) +swapkit.set('liberland', null) +swapkit.set('liberlandtestnet', null) +swapkit.set('litecoin', null) +swapkit.set('monero', null) +swapkit.set('optimism', null) +swapkit.set('osmosis', null) +swapkit.set('piratechain', null) +swapkit.set('pivx', null) +swapkit.set('polkadot', null) +swapkit.set('polygon', null) +swapkit.set('pulsechain', null) +swapkit.set('qtum', null) +swapkit.set('ravencoin', null) +swapkit.set('ripple', null) +swapkit.set('rsk', null) +swapkit.set('sepolia', null) +swapkit.set('smartcash', null) +swapkit.set('solana', null) +swapkit.set('sonic', null) +swapkit.set('stellar', null) +swapkit.set('sui', null) +swapkit.set('suitestnet', null) +swapkit.set('telos', null) +swapkit.set('tezos', null) +swapkit.set('thorchainrune', null) +swapkit.set('thorchainrunestagenet', null) +swapkit.set('ton', null) +swapkit.set('tron', null) +swapkit.set('ufo', null) +swapkit.set('vertcoin', null) +swapkit.set('wax', null) +swapkit.set('zano', null) +swapkit.set('zcash', null) +swapkit.set('zcoin', null) +swapkit.set('zksync', null) diff --git a/src/mappings/swapuz.ts b/src/mappings/swapuz.ts new file mode 100644 index 00000000..f8eeca42 --- /dev/null +++ b/src/mappings/swapuz.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/swapuzMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/swapuzMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const swapuz = new Map() +swapuz.set('abstract', null) +swapuz.set('algorand', null) +swapuz.set('amoy', null) +swapuz.set('arbitrum', null) +swapuz.set('avalanche', null) +swapuz.set('axelar', null) +swapuz.set('badcoin', null) +swapuz.set('base', null) +swapuz.set('binance', null) +swapuz.set('binancesmartchain', null) +swapuz.set('bitcoin', null) +swapuz.set('bitcoincash', null) +swapuz.set('bitcoincashtestnet', null) +swapuz.set('bitcoingold', null) +swapuz.set('bitcoingoldtestnet', null) +swapuz.set('bitcoinsv', null) +swapuz.set('bitcointestnet', null) +swapuz.set('bitcointestnet4', null) +swapuz.set('bobevm', null) +swapuz.set('botanix', null) +swapuz.set('calibration', null) +swapuz.set('cardano', null) +swapuz.set('cardanotestnet', null) +swapuz.set('celo', null) +swapuz.set('coreum', null) +swapuz.set('cosmoshub', null) +swapuz.set('dash', null) +swapuz.set('digibyte', null) +swapuz.set('dogecoin', null) +swapuz.set('eboost', null) +swapuz.set('ecash', null) +swapuz.set('eos', null) +swapuz.set('ethDev', null) +swapuz.set('ethereum', null) +swapuz.set('ethereumclassic', null) +swapuz.set('ethereumpow', null) +swapuz.set('fantom', null) +swapuz.set('feathercoin', null) +swapuz.set('filecoin', null) +swapuz.set('filecoinfevm', null) +swapuz.set('filecoinfevmcalibration', null) +swapuz.set('fio', null) +swapuz.set('groestlcoin', null) +swapuz.set('hedera', null) +swapuz.set('holesky', null) +swapuz.set('hyperevm', null) +swapuz.set('liberland', null) +swapuz.set('liberlandtestnet', null) +swapuz.set('litecoin', null) +swapuz.set('monero', null) +swapuz.set('optimism', null) +swapuz.set('osmosis', null) +swapuz.set('piratechain', null) +swapuz.set('pivx', null) +swapuz.set('polkadot', null) +swapuz.set('polygon', null) +swapuz.set('pulsechain', null) +swapuz.set('qtum', null) +swapuz.set('ravencoin', null) +swapuz.set('ripple', null) +swapuz.set('rsk', null) +swapuz.set('sepolia', null) +swapuz.set('smartcash', null) +swapuz.set('solana', null) +swapuz.set('sonic', null) +swapuz.set('stellar', null) +swapuz.set('sui', null) +swapuz.set('suitestnet', null) +swapuz.set('telos', null) +swapuz.set('tezos', null) +swapuz.set('thorchainrune', null) +swapuz.set('thorchainrunestagenet', null) +swapuz.set('ton', null) +swapuz.set('tron', null) +swapuz.set('ufo', null) +swapuz.set('vertcoin', null) +swapuz.set('wax', null) +swapuz.set('zano', null) +swapuz.set('zcash', null) +swapuz.set('zcoin', null) +swapuz.set('zksync', null) diff --git a/src/mappings/thorchain.ts b/src/mappings/thorchain.ts new file mode 100644 index 00000000..01a5c2a1 --- /dev/null +++ b/src/mappings/thorchain.ts @@ -0,0 +1,97 @@ +/** + * ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY ⚠️ + * + * This file is automatically generated from scripts/mappings/thorchainMappings.ts + * To regenerate this file, run: yarn mapctl update-mappings + * + * To edit mappings: + * 1. Edit scripts/mappings/thorchainMappings.ts + * 2. Run: yarn mapctl update-mappings + * + * This file maps EdgeCurrencyPluginId -> synchronizer network identifier (or null) + */ + +import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' + +export const thorchain = new Map() +thorchain.set('abstract', null) +thorchain.set('algorand', null) +thorchain.set('amoy', null) +thorchain.set('arbitrum', null) +thorchain.set('avalanche', null) +thorchain.set('axelar', null) +thorchain.set('badcoin', null) +thorchain.set('base', null) +thorchain.set('binance', null) +thorchain.set('binancesmartchain', null) +thorchain.set('bitcoin', null) +thorchain.set('bitcoincash', null) +thorchain.set('bitcoincashtestnet', null) +thorchain.set('bitcoingold', null) +thorchain.set('bitcoingoldtestnet', null) +thorchain.set('bitcoinsv', null) +thorchain.set('bitcointestnet', null) +thorchain.set('bitcointestnet4', null) +thorchain.set('bobevm', null) +thorchain.set('botanix', null) +thorchain.set('calibration', null) +thorchain.set('cardano', null) +thorchain.set('cardanotestnet', null) +thorchain.set('celo', null) +thorchain.set('coreum', null) +thorchain.set('cosmoshub', null) +thorchain.set('dash', null) +thorchain.set('digibyte', null) +thorchain.set('dogecoin', null) +thorchain.set('eboost', null) +thorchain.set('ecash', null) +thorchain.set('eos', null) +thorchain.set('ethDev', null) +thorchain.set('ethereum', null) +thorchain.set('ethereumclassic', null) +thorchain.set('ethereumpow', null) +thorchain.set('fantom', null) +thorchain.set('feathercoin', null) +thorchain.set('filecoin', null) +thorchain.set('filecoinfevm', null) +thorchain.set('filecoinfevmcalibration', null) +thorchain.set('fio', null) +thorchain.set('groestlcoin', null) +thorchain.set('hedera', null) +thorchain.set('holesky', null) +thorchain.set('hyperevm', null) +thorchain.set('liberland', null) +thorchain.set('liberlandtestnet', null) +thorchain.set('litecoin', null) +thorchain.set('monero', null) +thorchain.set('optimism', null) +thorchain.set('osmosis', null) +thorchain.set('piratechain', null) +thorchain.set('pivx', null) +thorchain.set('polkadot', null) +thorchain.set('polygon', null) +thorchain.set('pulsechain', null) +thorchain.set('qtum', null) +thorchain.set('ravencoin', null) +thorchain.set('ripple', null) +thorchain.set('rsk', null) +thorchain.set('sepolia', null) +thorchain.set('smartcash', null) +thorchain.set('solana', null) +thorchain.set('sonic', null) +thorchain.set('stellar', null) +thorchain.set('sui', null) +thorchain.set('suitestnet', null) +thorchain.set('telos', null) +thorchain.set('tezos', null) +thorchain.set('thorchainrune', null) +thorchain.set('thorchainrunestagenet', null) +thorchain.set('ton', null) +thorchain.set('tron', null) +thorchain.set('ufo', null) +thorchain.set('vertcoin', null) +thorchain.set('wax', null) +thorchain.set('zano', null) +thorchain.set('zcash', null) +thorchain.set('zcoin', null) +thorchain.set('zksync', null) diff --git a/src/swap/central/changehero.ts b/src/swap/central/changehero.ts index 662e9ac2..7e9931a8 100644 --- a/src/swap/central/changehero.ts +++ b/src/swap/central/changehero.ts @@ -55,19 +55,29 @@ const asInitOptions = asObject({ }) export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'algorand', + amoy: null, arbitrum: 'arbitrum', avalanche: 'avalanche_(c-chain)', axelar: null, + badcoin: null, base: 'base', binance: null, binancesmartchain: 'binance_smart_chain', bitcoin: 'bitcoin', bitcoincash: 'bitcoin_cash', + bitcoincashtestnet: null, bitcoingold: null, + bitcoingoldtestnet: null, bitcoinsv: 'bitcoin_sv', + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'cardano', + cardanotestnet: null, celo: null, coreum: null, cosmoshub: 'cosmos', @@ -77,6 +87,7 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'xec', eos: null, + ethDev: null, ethereum: 'ethereum', ethereumclassic: 'ethereum_classic', ethereumpow: null, @@ -84,11 +95,14 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: null, filecoinfevm: null, + filecoinfevmcalibration: null, fio: null, groestlcoin: null, hedera: 'hedera', + holesky: null, hyperevm: 'hypeevm', liberland: null, + liberlandtestnet: null, litecoin: 'litecoin', monero: 'monero', optimism: 'optimism', @@ -103,13 +117,16 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'ripple', rsk: null, smartcash: null, + sepolia: null, solana: 'solana', sonic: null, stellar: 'stellar', sui: 'sui', + suitestnet: null, telos: null, tezos: 'tezos', thorchainrune: null, + thorchainrunestagenet: null, ton: 'ton', tron: 'tron', ufo: null, diff --git a/src/swap/central/changenow.ts b/src/swap/central/changenow.ts index 707285de..ec61735f 100644 --- a/src/swap/central/changenow.ts +++ b/src/swap/central/changenow.ts @@ -78,23 +78,33 @@ const addressTypeMap: StringMap = { * Use this command to list currencies supported: * * ```sh - * curl 'https://api.changenow.io/v2/exchange/currencies?active=true&isFiat=false' + * curl 'https://api.changenow.io/v2/exchange/currencies?isFiat=false' * ``` */ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'algo', + amoy: null, arbitrum: 'arbitrum', avalanche: 'avaxc', axelar: 'axl', + badcoin: null, base: 'base', binance: 'bnb', binancesmartchain: 'bsc', bitcoin: 'btc', bitcoincash: 'bch', + bitcoincashtestnet: null, bitcoingold: 'btg', + bitcoingoldtestnet: null, bitcoinsv: 'bsv', + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'ada', + cardanotestnet: null, celo: 'celo', coreum: 'coreum', cosmoshub: 'atom', @@ -104,6 +114,7 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'xec', eos: 'eos', + ethDev: null, ethereum: 'eth', ethereumclassic: 'etc', ethereumpow: 'ethw', @@ -111,11 +122,14 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: 'fil', filecoinfevm: null, + filecoinfevmcalibration: null, fio: 'fio', groestlcoin: null, hedera: 'hbar', + holesky: null, hyperevm: null, liberland: null, + liberlandtestnet: null, litecoin: 'ltc', monero: 'xmr', optimism: 'op', @@ -130,13 +144,16 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'xrp', rsk: null, smartcash: null, + sepolia: null, solana: 'sol', sonic: 'sonic', stellar: 'xlm', sui: 'sui', + suitestnet: null, telos: null, tezos: 'xtz', thorchainrune: null, + thorchainrunestagenet: null, ton: 'ton', tron: 'trx', ufo: null, diff --git a/src/swap/central/exolix.ts b/src/swap/central/exolix.ts index ff744a45..88939c5a 100644 --- a/src/swap/central/exolix.ts +++ b/src/swap/central/exolix.ts @@ -98,19 +98,29 @@ while true; do done */ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'ALGO', + amoy: null, arbitrum: 'ARBITRUM', avalanche: 'AVAXC', axelar: null, + badcoin: null, base: 'BASE', binance: null, binancesmartchain: 'BSC', bitcoin: 'BTC', bitcoincash: 'BCH', + bitcoincashtestnet: null, bitcoingold: null, + bitcoingoldtestnet: null, bitcoinsv: null, + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'ADA', + cardanotestnet: null, celo: 'CELO', coreum: null, cosmoshub: 'ATOM', @@ -120,6 +130,7 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'XEC', eos: 'EOS', + ethDev: null, ethereum: 'ETH', ethereumclassic: 'ETC', ethereumpow: null, @@ -127,11 +138,14 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: 'FIL', filecoinfevm: null, + filecoinfevmcalibration: null, fio: null, groestlcoin: null, hedera: 'HBAR', + holesky: null, hyperevm: null, liberland: null, + liberlandtestnet: null, litecoin: 'LTC', monero: 'XMR', optimism: 'OPTIMISM', @@ -146,13 +160,16 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'XRP', rsk: null, smartcash: null, + sepolia: null, solana: 'SOL', sonic: null, stellar: 'XLM', sui: 'SUI', + suitestnet: null, telos: 'TELOS', tezos: 'XTZ', thorchainrune: 'RUNE', + thorchainrunestagenet: null, ton: 'ton', tron: 'TRX', ufo: null, diff --git a/src/swap/central/godex.ts b/src/swap/central/godex.ts index ffef1402..90bc1fd5 100644 --- a/src/swap/central/godex.ts +++ b/src/swap/central/godex.ts @@ -108,19 +108,29 @@ const INVALID_TOKEN_IDS: InvalidTokenIds = { // Network names that don't match parent network currency code // See https://godex.io/exchange-rate for list of supported currencies const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'ALGO', + amoy: null, arbitrum: 'ARBITRUM', avalanche: 'AVAXC', axelar: 'WAXL', + badcoin: null, base: 'BASE', binance: 'BNB', binancesmartchain: 'BSC', bitcoin: 'BTC', bitcoincash: 'BCH', + bitcoincashtestnet: null, bitcoingold: 'BTG', + bitcoingoldtestnet: null, bitcoinsv: 'BSV', + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'ADA', + cardanotestnet: null, celo: 'CELO', coreum: null, cosmoshub: 'ATOM', @@ -130,6 +140,7 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'XEC', eos: 'EOS', + ethDev: null, ethereum: 'ETH', ethereumclassic: 'ETC', ethereumpow: 'ETHW', @@ -137,11 +148,14 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: 'FIL', filecoinfevm: null, + filecoinfevmcalibration: null, fio: 'FIO', groestlcoin: null, hedera: 'HBAR', + holesky: null, hyperevm: null, liberland: null, + liberlandtestnet: null, litecoin: 'LTC', monero: 'XMR', optimism: 'OPTIMISM', @@ -156,13 +170,16 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'XRP', rsk: 'RSK', smartcash: null, + sepolia: null, solana: 'SOL', sonic: null, stellar: 'XLM', sui: 'SUI', + suitestnet: null, telos: 'TLOS', tezos: 'XTZ', thorchainrune: 'RUNE', + thorchainrunestagenet: null, ton: 'TON', tron: 'TRX', ufo: null, diff --git a/src/swap/central/letsexchange.ts b/src/swap/central/letsexchange.ts index 8b1a7f3e..f7935a0c 100644 --- a/src/swap/central/letsexchange.ts +++ b/src/swap/central/letsexchange.ts @@ -87,19 +87,29 @@ const addressTypeMap: StringMap = { // See https://letsexchange.io/exchange-pairs for list of supported currencies // Or `curl -X GET 'https://api.letsexchange.io/api/v2/coins' -H 'Authorization: Bearer ' | jq .` export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'ALGO', + amoy: null, arbitrum: 'ARBITRUM', avalanche: 'AVAXC', axelar: 'WAXL', + badcoin: null, base: null, binance: 'BEP2', binancesmartchain: 'BEP20', bitcoin: 'BTC', bitcoincash: 'BCH', + bitcoincashtestnet: null, bitcoingold: 'BTG', + bitcoingoldtestnet: null, bitcoinsv: 'BSV', + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'ADA', + cardanotestnet: null, celo: 'CELO', coreum: 'COREUM', cosmoshub: 'ATOM', @@ -109,6 +119,7 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'XEC', eos: 'EOS', + ethDev: null, ethereum: 'ERC20', ethereumclassic: 'ETC', ethereumpow: 'ETHW', @@ -116,11 +127,14 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: 'FIL', filecoinfevm: null, + filecoinfevmcalibration: null, fio: 'FIO', groestlcoin: 'GRS', hedera: 'HBAR', + holesky: null, hyperevm: 'HYPE', liberland: null, + liberlandtestnet: null, litecoin: 'LTC', monero: 'XMR', optimism: 'OPTIMISM', @@ -135,13 +149,16 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'XRP', rsk: 'RSK', smartcash: null, + sepolia: null, solana: 'SOL', sonic: 'SONIC', stellar: 'XLM', sui: 'SUI', + suitestnet: null, telos: 'TLOS', tezos: 'XTZ', thorchainrune: 'RUNE', + thorchainrunestagenet: null, ton: 'TON', tron: 'TRC20', ufo: null, diff --git a/src/swap/central/sideshift.ts b/src/swap/central/sideshift.ts index 95f0ea68..2bfc9ecf 100644 --- a/src/swap/central/sideshift.ts +++ b/src/swap/central/sideshift.ts @@ -46,19 +46,29 @@ import { EdgeSwapRequestPlugin, StringMap } from '../types' // See https://help.sideshift.ai/en/articles/4559664-which-coins-and-tokens-are-listed for list of supported currencies export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'algorand', + amoy: null, arbitrum: 'arbitrum', avalanche: 'avax', axelar: null, + badcoin: null, base: 'base', binance: null, binancesmartchain: 'bsc', bitcoin: 'bitcoin', bitcoincash: 'bitcoincash', + bitcoincashtestnet: null, bitcoingold: null, + bitcoingoldtestnet: null, bitcoinsv: 'bsv', + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'cardano', + cardanotestnet: null, celo: null, coreum: null, cosmoshub: 'cosmos', @@ -68,6 +78,7 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'ecash', eos: null, + ethDev: null, ethereum: 'ethereum', ethereumclassic: 'etc', ethereumpow: null, @@ -75,11 +86,14 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: null, filecoinfevm: null, + filecoinfevmcalibration: null, fio: null, groestlcoin: 'grs', hedera: null, + holesky: null, hyperevm: null, liberland: null, + liberlandtestnet: null, litecoin: 'litecoin', monero: 'monero', optimism: 'optimism', @@ -94,13 +108,16 @@ export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'ripple', rsk: 'rootstock', smartcash: null, + sepolia: null, solana: 'solana', sonic: 'sonic', stellar: 'stellar', sui: 'sui', + suitestnet: null, telos: null, tezos: 'tezos', thorchainrune: null, + thorchainrunestagenet: null, ton: 'ton', tron: 'tron', ufo: null, diff --git a/src/swap/central/swapuz.ts b/src/swap/central/swapuz.ts index 163614df..b47c6156 100644 --- a/src/swap/central/swapuz.ts +++ b/src/swap/central/swapuz.ts @@ -81,19 +81,29 @@ const INVALID_TOKEN_IDS: InvalidTokenIds = { // Network names that don't match parent network currency code // See https://swapuz.com/ for list of supported currencies const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { + abstract: null, algorand: 'ALGO', + amoy: null, arbitrum: 'ARBITRUM', avalanche: 'CCHAIN', axelar: null, + badcoin: null, base: 'BASE', binance: null, binancesmartchain: 'BSC', bitcoin: 'BTC', bitcoincash: 'BCH', + bitcoincashtestnet: null, bitcoingold: null, + bitcoingoldtestnet: null, bitcoinsv: null, + bitcointestnet: null, + bitcointestnet4: null, bobevm: null, + botanix: null, + calibration: null, cardano: 'ADA', + cardanotestnet: null, celo: 'CELO', coreum: null, cosmoshub: 'ATOM', @@ -103,6 +113,7 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { eboost: null, ecash: 'XEC', eos: 'EOS', + ethDev: null, ethereum: 'ETH', ethereumclassic: 'ETC', ethereumpow: null, @@ -110,11 +121,14 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { feathercoin: null, filecoin: 'FIL', filecoinfevm: null, + filecoinfevmcalibration: null, fio: null, groestlcoin: null, hedera: 'HBAR', + holesky: null, hyperevm: null, liberland: null, + liberlandtestnet: null, litecoin: 'LTC', monero: 'XMR', optimism: 'OPTIMISM', @@ -129,13 +143,16 @@ const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { ripple: 'XRP', rsk: null, smartcash: null, + sepolia: null, solana: 'SOL', sonic: null, stellar: 'XLM', sui: 'SUI', + suitestnet: null, telos: null, tezos: 'XTZ', thorchainrune: 'THORCHAIN', + thorchainrunestagenet: null, ton: 'TON', tron: 'TRX', ufo: null, diff --git a/src/util/edgeCurrencyPluginIds.ts b/src/util/edgeCurrencyPluginIds.ts new file mode 100644 index 00000000..0403501b --- /dev/null +++ b/src/util/edgeCurrencyPluginIds.ts @@ -0,0 +1,85 @@ +export const edgeCurrencyPluginIds = [ + 'abstract', + 'algorand', + 'amoy', + 'arbitrum', + 'avalanche', + 'axelar', + 'badcoin', + 'base', + 'binance', + 'binancesmartchain', + 'bitcoin', + 'bitcoincash', + 'bitcoincashtestnet', + 'bitcoingold', + 'bitcoingoldtestnet', + 'bitcoinsv', + 'bitcointestnet', + 'bitcointestnet4', + 'bobevm', + 'botanix', + 'calibration', + 'cardano', + 'cardanotestnet', + 'celo', + 'coreum', + 'cosmoshub', + 'dash', + 'digibyte', + 'dogecoin', + 'eboost', + 'ecash', + 'eos', + 'ethDev', + 'ethereum', + 'ethereumclassic', + 'ethereumpow', + 'fantom', + 'feathercoin', + 'filecoin', + 'filecoinfevm', + 'filecoinfevmcalibration', + 'fio', + 'groestlcoin', + 'hedera', + 'holesky', + 'hyperevm', + 'liberland', + 'liberlandtestnet', + 'litecoin', + 'monero', + 'optimism', + 'osmosis', + 'piratechain', + 'pivx', + 'polkadot', + 'polygon', + 'pulsechain', + 'qtum', + 'ravencoin', + 'ripple', + 'rsk', + 'sepolia', + 'smartcash', + 'solana', + 'sonic', + 'stellar', + 'sui', + 'suitestnet', + 'telos', + 'tezos', + 'thorchainrune', + 'thorchainrunestagenet', + 'ton', + 'tron', + 'ufo', + 'vertcoin', + 'wax', + 'zano', + 'zcash', + 'zcoin', + 'zksync' +] as const + +export type EdgeCurrencyPluginId = typeof edgeCurrencyPluginIds[number] diff --git a/src/util/swapHelpers.ts b/src/util/swapHelpers.ts index 4c88ea18..a988aec4 100644 --- a/src/util/swapHelpers.ts +++ b/src/util/swapHelpers.ts @@ -16,6 +16,7 @@ import { } from 'edge-core-js/types' import { EdgeSwapRequestPlugin, MakeTxParams, StringMap } from '../swap/types' +import { EdgeCurrencyPluginId } from './edgeCurrencyPluginIds' const likeKindAssets = [ ['BTC', 'WBTC', 'SBTC', 'RBTC'], @@ -500,72 +501,6 @@ export const isLikeKind = ( export const consify = (val: any): void => console.log(JSON.stringify(val, null, 2)) -export type EdgeCurrencyPluginId = - | 'algorand' - | 'arbitrum' - | 'avalanche' - | 'axelar' - | 'base' - | 'binance' - | 'binancesmartchain' - | 'bitcoin' - | 'bitcoincash' - | 'bitcoingold' - | 'bitcoinsv' - | 'bobevm' - | 'cardano' - | 'celo' - | 'coreum' - | 'cosmoshub' - | 'dash' - | 'digibyte' - | 'dogecoin' - | 'eboost' - | 'ecash' - | 'eos' - | 'ethereum' - | 'ethereumclassic' - | 'ethereumpow' - | 'fantom' - | 'feathercoin' - | 'filecoin' - | 'filecoinfevm' - | 'fio' - | 'groestlcoin' - | 'hedera' - | 'hyperevm' - | 'liberland' - | 'litecoin' - | 'monero' - | 'optimism' - | 'osmosis' - | 'piratechain' - | 'pivx' - | 'polkadot' - | 'polygon' - | 'pulsechain' - | 'qtum' - | 'ravencoin' - | 'ripple' - | 'rsk' - | 'smartcash' - | 'solana' - | 'sonic' - | 'stellar' - | 'sui' - | 'telos' - | 'tezos' - | 'thorchainrune' - | 'ton' - | 'tron' - | 'ufo' - | 'vertcoin' - | 'wax' - | 'zcash' - | 'zcoin' - | 'zano' - | 'zksync' - export const toStringMap = ( map: CurrencyPluginIdSwapChainCodeMap ): StringMap => { @@ -577,6 +512,35 @@ export const toStringMap = ( return out } +/** + * Converts a Map to CurrencyPluginIdSwapChainCodeMap + */ +export const mapToRecord = ( + map: Map +): CurrencyPluginIdSwapChainCodeMap => { + const record: Partial> = {} + map.forEach((value, key) => { + record[key] = value + }) + return record as CurrencyPluginIdSwapChainCodeMap +} + +/** + * Converts a Map to StringMap + * Filters out null values since StringMap doesn't allow null + */ +export const mapToStringMap = ( + map: Map +): StringMap => { + const record: StringMap = {} + map.forEach((value, key) => { + if (value != null && value !== '') { + record[key] = value + } + }) + return record +} + export type CurrencyPluginIdSwapChainCodeMap = Record< EdgeCurrencyPluginId, string | null From d6ff08fdf30ba20683673572da085d77bbbccb4d Mon Sep 17 00:00:00 2001 From: Sam Holmes Date: Tue, 25 Nov 2025 15:06:54 -0800 Subject: [PATCH 2/5] Update swap plugins to use src/mappings --- scripts/mappings/changeheroMappings.ts | 68 +++++++------- scripts/mappings/changenowMappings.ts | 95 +++++++++++-------- scripts/mappings/exolixMappings.ts | 83 +++++++++-------- scripts/mappings/godexMappings.ts | 96 +++++++++++-------- scripts/mappings/letsexchangeMappings.ts | 113 ++++++++++++----------- scripts/mappings/lifiMappings.ts | 31 ++++--- scripts/mappings/mayaprotocolMappings.ts | 12 +-- scripts/mappings/rangoMappings.ts | 32 +++---- scripts/mappings/sideshiftMappings.ts | 73 +++++++++------ scripts/mappings/swapuzMappings.ts | 78 +++++++++------- scripts/mappings/thorchainMappings.ts | 22 ++--- src/mappings/changehero.ts | 66 ++++++------- src/mappings/changenow.ts | 90 +++++++++--------- src/mappings/exolix.ts | 78 ++++++++-------- src/mappings/godex.ts | 90 +++++++++--------- src/mappings/letsexchange.ts | 110 +++++++++++----------- src/mappings/lifi.ts | 28 +++--- src/mappings/mayaprotocol.ts | 12 +-- src/mappings/rango.ts | 32 +++---- src/mappings/sideshift.ts | 66 ++++++------- src/mappings/swapuz.ts | 74 +++++++-------- src/mappings/thorchain.ts | 22 ++--- src/swap/central/changehero.ts | 88 +----------------- src/swap/central/changenow.ts | 88 +----------------- src/swap/central/exolix.ts | 88 +----------------- src/swap/central/godex.ts | 88 +----------------- src/swap/central/letsexchange.ts | 88 +----------------- src/swap/central/sideshift.ts | 88 +----------------- src/swap/central/swapuz.ts | 88 +----------------- src/swap/defi/lifi.ts | 30 +----- src/swap/defi/rango.ts | 30 +----- src/swap/defi/thorchain/mayaprotocol.ts | 14 +-- src/swap/defi/thorchain/swapkit.ts | 8 +- src/swap/defi/thorchain/thorchain.ts | 19 +--- 34 files changed, 792 insertions(+), 1296 deletions(-) diff --git a/scripts/mappings/changeheroMappings.ts b/scripts/mappings/changeheroMappings.ts index 719769a8..a0f633f3 100644 --- a/scripts/mappings/changeheroMappings.ts +++ b/scripts/mappings/changeheroMappings.ts @@ -3,11 +3,11 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const changehero = new Map() // Currency Count: 2 // Display Name: algorand -changehero.set('algorand', null) +changehero.set('algorand', 'algorand') // Currency Count: 5 // Display Name: arbitrum -changehero.set('arbitrum', null) +changehero.set('arbitrum', 'arbitrum') // Currency Count: 1 // Display Name: ardor @@ -15,35 +15,35 @@ changehero.set('ardor', null) // Currency Count: 3 // Display Name: avalanche_(c-chain) -changehero.set('avalanche_(c-chain)', null) +changehero.set('avalanche_(c-chain)', 'avalanche') // Currency Count: 7 // Display Name: base -changehero.set('base', null) +changehero.set('base', 'base') // Currency Count: 31 // Display Name: binance_smart_chain -changehero.set('binance_smart_chain', null) +changehero.set('binance_smart_chain', 'binancesmartchain') // Currency Count: 1 // Display Name: bitcoin -changehero.set('bitcoin', null) +changehero.set('bitcoin', 'bitcoin') // Currency Count: 1 // Display Name: bitcoin_cash -changehero.set('bitcoin_cash', null) +changehero.set('bitcoin_cash', 'bitcoincash') // Currency Count: 1 // Display Name: bitcoin_sv -changehero.set('bitcoin_sv', null) +changehero.set('bitcoin_sv', 'bitcoinsv') // Currency Count: 1 // Display Name: cardano -changehero.set('cardano', null) +changehero.set('cardano', 'cardano') // Currency Count: 1 // Display Name: cosmos -changehero.set('cosmos', null) +changehero.set('cosmos', 'cosmoshub') // Currency Count: 3 // Display Name: cro @@ -51,15 +51,15 @@ changehero.set('cro', null) // Currency Count: 1 // Display Name: dash -changehero.set('dash', null) +changehero.set('dash', 'dash') // Currency Count: 1 // Display Name: digibyte -changehero.set('digibyte', null) +changehero.set('digibyte', 'digibyte') // Currency Count: 1 // Display Name: doge -changehero.set('doge', null) +changehero.set('doge', 'dogecoin') // Currency Count: 1 // Display Name: elrond @@ -67,11 +67,11 @@ changehero.set('elrond', null) // Currency Count: 100 // Display Name: ethereum -changehero.set('ethereum', null) +changehero.set('ethereum', 'ethereum') // Currency Count: 1 // Display Name: ethereum_classic -changehero.set('ethereum_classic', null) +changehero.set('ethereum_classic', 'ethereumclassic') // Currency Count: 1 // Display Name: flare @@ -81,13 +81,16 @@ changehero.set('flare', null) // Display Name: flux changehero.set('flux', null) +// WARNING: Not included by the synchronizer synchronization +changehero.set('ftm', 'fantom') + // Currency Count: 1 // Display Name: hedera -changehero.set('hedera', null) +changehero.set('hedera', 'hedera') // Currency Count: 1 // Display Name: hypeevm -changehero.set('hypeevm', null) +changehero.set('hypeevm', 'hyperevm') // Currency Count: 1 // Display Name: icp @@ -103,7 +106,7 @@ changehero.set('linea', null) // Currency Count: 1 // Display Name: litecoin -changehero.set('litecoin', null) +changehero.set('litecoin', 'litecoin') // Currency Count: 1 // Display Name: lumia @@ -115,7 +118,7 @@ changehero.set('monad', null) // Currency Count: 1 // Display Name: monero -changehero.set('monero', null) +changehero.set('monero', 'monero') // Currency Count: 1 // Display Name: nano @@ -135,23 +138,23 @@ changehero.set('nimiq', null) // Currency Count: 5 // Display Name: optimism -changehero.set('optimism', null) +changehero.set('optimism', 'optimism') // Currency Count: 1 // Display Name: polkadot -changehero.set('polkadot', null) +changehero.set('polkadot', 'polkadot') // Currency Count: 7 // Display Name: polygon -changehero.set('polygon', null) +changehero.set('polygon', 'polygon') // Currency Count: 1 // Display Name: qtum -changehero.set('qtum', null) +changehero.set('qtum', 'qtum') // Currency Count: 1 // Display Name: ripple -changehero.set('ripple', null) +changehero.set('ripple', 'ripple') // Currency Count: 1 // Display Name: rollux @@ -159,7 +162,7 @@ changehero.set('rollux', null) // Currency Count: 40 // Display Name: solana -changehero.set('solana', null) +changehero.set('solana', 'solana') // Currency Count: 1 // Display Name: songbird @@ -167,11 +170,11 @@ changehero.set('songbird', null) // Currency Count: 1 // Display Name: stellar -changehero.set('stellar', null) +changehero.set('stellar', 'stellar') // Currency Count: 1 // Display Name: sui -changehero.set('sui', null) +changehero.set('sui', 'sui') // Currency Count: 1 // Display Name: supra @@ -183,15 +186,15 @@ changehero.set('syscoin utxo', null) // Currency Count: 1 // Display Name: tezos -changehero.set('tezos', null) +changehero.set('tezos', 'tezos') // Currency Count: 4 // Display Name: ton -changehero.set('ton', null) +changehero.set('ton', 'ton') // Currency Count: 6 // Display Name: tron -changehero.set('tron', null) +changehero.set('tron', 'tron') // Currency Count: 1 // Display Name: vechainthor @@ -205,6 +208,9 @@ changehero.set('vtho', null) // Display Name: xdc changehero.set('xdc', null) +// WARNING: Not included by the synchronizer synchronization +changehero.set('xec', 'ecash') + // Currency Count: 1 // Display Name: zcash -changehero.set('zcash', null) +changehero.set('zcash', 'zcash') diff --git a/scripts/mappings/changenowMappings.ts b/scripts/mappings/changenowMappings.ts index c4a2bdaa..bbdc14fd 100644 --- a/scripts/mappings/changenowMappings.ts +++ b/scripts/mappings/changenowMappings.ts @@ -3,7 +3,7 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const changenow = new Map() // Currency Count: 4 // Display Name: ada -changenow.set('ada', null) +changenow.set('ada', 'cardano') // Currency Count: 1 // Display Name: aed @@ -15,7 +15,7 @@ changenow.set('akt', null) // Currency Count: 3 // Display Name: algo -changenow.set('algo', null) +changenow.set('algo', 'algorand') // Currency Count: 1 // Display Name: all @@ -39,7 +39,7 @@ changenow.set('apt', null) // Currency Count: 24 // Display Name: arbitrum -changenow.set('arbitrum', null) +changenow.set('arbitrum', 'arbitrum') // Currency Count: 1 // Display Name: assethub @@ -47,7 +47,7 @@ changenow.set('assethub', null) // Currency Count: 1 // Display Name: atom -changenow.set('atom', null) +changenow.set('atom', 'cosmoshub') // Currency Count: 1 // Display Name: aud @@ -55,7 +55,10 @@ changenow.set('aud', null) // Currency Count: 10 // Display Name: avaxc -changenow.set('avaxc', null) +changenow.set('avaxc', 'avalanche') + +// WARNING: Not included by the synchronizer synchronization +changenow.set('axl', 'axelar') // Currency Count: 1 // Display Name: azn @@ -75,7 +78,7 @@ changenow.set('band', null) // Currency Count: 46 // Display Name: base -changenow.set('base', null) +changenow.set('base', 'base') // Currency Count: 1 // Display Name: bbd @@ -83,7 +86,7 @@ changenow.set('bbd', null) // Currency Count: 1 // Display Name: bch -changenow.set('bch', null) +changenow.set('bch', 'bitcoincash') // Currency Count: 1 // Display Name: bdt @@ -105,6 +108,9 @@ changenow.set('bhd', null) // Display Name: bmd changenow.set('bmd', null) +// WARNING: Not included by the synchronizer synchronization +changenow.set('bnb', 'binance') + // Currency Count: 1 // Display Name: bnd changenow.set('bnd', null) @@ -119,15 +125,18 @@ changenow.set('brl', null) // Currency Count: 327 // Display Name: bsc -changenow.set('bsc', null) +changenow.set('bsc', 'binancesmartchain') // Currency Count: 1 // Display Name: bsv -changenow.set('bsv', null) +changenow.set('bsv', 'bitcoinsv') // Currency Count: 1 // Display Name: btc -changenow.set('btc', null) +changenow.set('btc', 'bitcoin') + +// WARNING: Not included by the synchronizer synchronization +changenow.set('btg', 'bitcoingold') // Currency Count: 1 // Display Name: bwp @@ -147,7 +156,7 @@ changenow.set('cchain', null) // Currency Count: 4 // Display Name: celo -changenow.set('celo', null) +changenow.set('celo', 'celo') // Currency Count: 1 // Display Name: chf @@ -175,7 +184,7 @@ changenow.set('core', null) // Currency Count: 1 // Display Name: coreum -changenow.set('coreum', null) +changenow.set('coreum', 'coreum') // Currency Count: 1 // Display Name: crc @@ -199,7 +208,7 @@ changenow.set('czk', null) // Currency Count: 1 // Display Name: dash -changenow.set('dash', null) +changenow.set('dash', 'dash') // Currency Count: 1 // Display Name: dcr @@ -207,7 +216,7 @@ changenow.set('dcr', null) // Currency Count: 1 // Display Name: dgb -changenow.set('dgb', null) +changenow.set('dgb', 'digibyte') // Currency Count: 1 // Display Name: divi @@ -223,7 +232,7 @@ changenow.set('dkk', null) // Currency Count: 1 // Display Name: doge -changenow.set('doge', null) +changenow.set('doge', 'dogecoin') // Currency Count: 1 // Display Name: dop @@ -243,15 +252,15 @@ changenow.set('epic', null) // Currency Count: 1 // Display Name: etc -changenow.set('etc', null) +changenow.set('etc', 'ethereumclassic') // Currency Count: 517 // Display Name: eth -changenow.set('eth', null) +changenow.set('eth', 'ethereum') // Currency Count: 1 // Display Name: ethw -changenow.set('ethw', null) +changenow.set('ethw', 'ethereumpow') // Currency Count: 1 // Display Name: eur @@ -263,12 +272,18 @@ changenow.set('fet', null) // Currency Count: 1 // Display Name: fil -changenow.set('fil', null) +changenow.set('fil', 'filecoin') + +// WARNING: Not included by the synchronizer synchronization +changenow.set('firo', 'zcoin') // Currency Count: 1 // Display Name: flr changenow.set('flr', null) +// WARNING: Not included by the synchronizer synchronization +changenow.set('ftm', 'fantom') + // Currency Count: 1 // Display Name: ftn changenow.set('ftn', null) @@ -291,7 +306,7 @@ changenow.set('gtq', null) // Currency Count: 1 // Display Name: hbar -changenow.set('hbar', null) +changenow.set('hbar', 'hedera') // Currency Count: 1 // Display Name: hkd @@ -419,7 +434,7 @@ changenow.set('lna', null) // Currency Count: 1 // Display Name: ltc -changenow.set('ltc', null) +changenow.set('ltc', 'litecoin') // Currency Count: 1 // Display Name: luna @@ -439,7 +454,7 @@ changenow.set('manta', null) // Currency Count: 26 // Display Name: matic -changenow.set('matic', null) +changenow.set('matic', 'polygon') // Currency Count: 1 // Display Name: mdl @@ -511,7 +526,7 @@ changenow.set('ont', null) // Currency Count: 13 // Display Name: op -changenow.set('op', null) +changenow.set('op', 'optimism') // Currency Count: 2 // Display Name: opbnb @@ -519,7 +534,7 @@ changenow.set('opbnb', null) // Currency Count: 1 // Display Name: osmo -changenow.set('osmo', null) +changenow.set('osmo', 'osmosis') // Currency Count: 1 // Display Name: pab @@ -539,7 +554,7 @@ changenow.set('php', null) // Currency Count: 1 // Display Name: pivx -changenow.set('pivx', null) +changenow.set('pivx', 'pivx') // Currency Count: 1 // Display Name: pkr @@ -551,7 +566,7 @@ changenow.set('pln', null) // Currency Count: 1 // Display Name: pulse -changenow.set('pulse', null) +changenow.set('pulse', 'pulsechain') // Currency Count: 1 // Display Name: pyg @@ -563,7 +578,7 @@ changenow.set('qar', null) // Currency Count: 1 // Display Name: qtum -changenow.set('qtum', null) +changenow.set('qtum', 'qtum') // Currency Count: 1 // Display Name: rsd @@ -575,7 +590,7 @@ changenow.set('rub', null) // Currency Count: 1 // Display Name: rvn -changenow.set('rvn', null) +changenow.set('rvn', 'ravencoin') // Currency Count: 1 // Display Name: sar @@ -599,11 +614,11 @@ changenow.set('sgd', null) // Currency Count: 140 // Display Name: sol -changenow.set('sol', null) +changenow.set('sol', 'solana') // Currency Count: 1 // Display Name: sonic -changenow.set('sonic', null) +changenow.set('sonic', 'sonic') // Currency Count: 2 // Display Name: strk @@ -615,7 +630,7 @@ changenow.set('stx', null) // Currency Count: 1 // Display Name: sui -changenow.set('sui', null) +changenow.set('sui', 'sui') // Currency Count: 1 // Display Name: sxp @@ -639,11 +654,11 @@ changenow.set('tia', null) // Currency Count: 22 // Display Name: ton -changenow.set('ton', null) +changenow.set('ton', 'ton') // Currency Count: 14 // Display Name: trx -changenow.set('trx', null) +changenow.set('trx', 'tron') // Currency Count: 1 // Display Name: try @@ -707,15 +722,15 @@ changenow.set('xdc', null) // Currency Count: 1 // Display Name: xec -changenow.set('xec', null) +changenow.set('xec', 'ecash') // Currency Count: 1 // Display Name: xlm -changenow.set('xlm', null) +changenow.set('xlm', 'stellar') // Currency Count: 1 // Display Name: xmr -changenow.set('xmr', null) +changenow.set('xmr', 'monero') // Currency Count: 1 // Display Name: xof @@ -723,11 +738,11 @@ changenow.set('xof', null) // Currency Count: 1 // Display Name: xrp -changenow.set('xrp', null) +changenow.set('xrp', 'ripple') // Currency Count: 1 // Display Name: xtz -changenow.set('xtz', null) +changenow.set('xtz', 'tezos') // Currency Count: 1 // Display Name: xvg @@ -739,7 +754,7 @@ changenow.set('zar', null) // Currency Count: 1 // Display Name: zec -changenow.set('zec', null) +changenow.set('zec', 'zcash') // Currency Count: 1 // Display Name: zil @@ -747,7 +762,7 @@ changenow.set('zil', null) // Currency Count: 2 // Display Name: zksync -changenow.set('zksync', null) +changenow.set('zksync', 'zksync') // Currency Count: 1 // Display Name: zmw diff --git a/scripts/mappings/exolixMappings.ts b/scripts/mappings/exolixMappings.ts index 8d15836e..c34a0efd 100644 --- a/scripts/mappings/exolixMappings.ts +++ b/scripts/mappings/exolixMappings.ts @@ -8,14 +8,14 @@ exolix.set('3ULL', null) exolix.set('ACA', null) // Display Name: Cardano -exolix.set('ADA', null) +exolix.set('ADA', 'cardano') // Display Name: AKASH exolix.set('AKASH', null) // Display Name: Algorand // Short Name: ALGO -exolix.set('ALGO', null) +exolix.set('ALGO', 'algorand') // Display Name: ALPH exolix.set('ALPH', null) @@ -36,7 +36,7 @@ exolix.set('AR', null) // Display Name: Arbitrum One // Short Name: ARB -exolix.set('ARBITRUM', null) +exolix.set('ARBITRUM', 'arbitrum') // Display Name: ARCH exolix.set('ARCH', null) @@ -46,14 +46,14 @@ exolix.set('ARDR', null) // Display Name: Pirate Chain // Short Name: ARRR -exolix.set('ARRR', null) +exolix.set('ARRR', 'piratechain') // Display Name: Astar Network exolix.set('ASTR', null) // Display Name: Cosmos // Short Name: ATOM -exolix.set('ATOM', null) +exolix.set('ATOM', 'cosmoshub') // Display Name: AURA exolix.set('AURA', null) @@ -61,9 +61,13 @@ exolix.set('AURA', null) // Display Name: AURORA exolix.set('AURORA', null) +// Display Name: Avalanche X-CHAIN +// Short Name: AVAX +exolix.set('AVAX', null) + // Display Name: Avalanche C-CHAIN // Short Name: AVAX_CCHAIN -exolix.set('AVAXC', null) +exolix.set('AVAXC', 'avalanche') // Display Name: AZERO exolix.set('AZERO', null) @@ -79,10 +83,10 @@ exolix.set('BAN', null) exolix.set('BAND', null) // Display Name: BASE MAINNET -exolix.set('BASE', null) +exolix.set('BASE', 'base') // Display Name: Bitcoin Cash -exolix.set('BCH', null) +exolix.set('BCH', 'bitcoincash') // Display Name: BELDEX // Short Name: BDX @@ -120,14 +124,14 @@ exolix.set('BRISE', null) // Display Name: BNB Smart Chain (BEP20) // Short Name: BEP20 -exolix.set('BSC', null) +exolix.set('BSC', 'binancesmartchain') // Display Name: Bitcoin SV // Short Name: BSV exolix.set('BSV', null) // Display Name: Bitcoin -exolix.set('BTC', null) +exolix.set('BTC', 'bitcoin') // Display Name: BTCRUNES exolix.set('BTCRUNES', null) @@ -147,7 +151,7 @@ exolix.set('CCD', null) // Display Name: CELO // Short Name: CELO -exolix.set('CELO', null) +exolix.set('CELO', 'celo') // Display Name: CHEQ exolix.set('CHEQ', null) @@ -187,14 +191,14 @@ exolix.set('DAG', null) // Display Name: Dash // Short Name: DASH -exolix.set('DASH', null) +exolix.set('DASH', 'dash') // Display Name: Decred // Short Name: DCR exolix.set('DCR', null) // Display Name: DigiByte -exolix.set('DGB', null) +exolix.set('DGB', 'digibyte') // Display Name: DIONE exolix.set('DIONE', null) @@ -204,7 +208,7 @@ exolix.set('DNX', null) // Display Name: dogecoin // Short Name: DOGE -exolix.set('DOGE', null) +exolix.set('DOGE', 'dogecoin') // Display Name: DYM exolix.set('DYM', null) @@ -221,18 +225,18 @@ exolix.set('ELA', null) exolix.set('ELF', null) // Display Name: EOS -exolix.set('EOS', null) +exolix.set('EOS', 'eos') // Display Name: Ergo Network exolix.set('ERG', null) // Display Name: Ethereum Classic // Short Name: ETC -exolix.set('ETC', null) +exolix.set('ETC', 'ethereumclassic') // Display Name: Ethereum // Short Name: ERC20 -exolix.set('ETH', null) +exolix.set('ETH', 'ethereum') // Display Name: EthereumPoW // Short Name: ETHW @@ -252,7 +256,7 @@ exolix.set('FET', null) // Display Name: Filecoin // Short Name: FIL -exolix.set('FIL', null) +exolix.set('FIL', 'filecoin') // Display Name: FIO // Short Name: FIO @@ -273,6 +277,9 @@ exolix.set('FLR', null) // Display Name: FLUX exolix.set('FLUX', null) +// WARNING: Not included by the synchronizer synchronization +exolix.set('FTM', 'fantom') + // Display Name: Bahamut (BHRC20) // Short Name: BHRC20 exolix.set('FTN', null) @@ -298,7 +305,7 @@ exolix.set('HAQQ', null) // Display Name: Hedera Hashgraph // Short Name: HBAR -exolix.set('HBAR', null) +exolix.set('HBAR', 'hedera') // Display Name: HIVE // Short Name: HIVE @@ -379,7 +386,7 @@ exolix.set('LKY', null) // Display Name: Litecoin // Short Name: LTC -exolix.set('LTC', null) +exolix.set('LTC', 'litecoin') // Display Name: LUMIA exolix.set('LUMIA', null) @@ -401,7 +408,7 @@ exolix.set('MAPO', null) // Display Name: Polygon // Short Name: POLYGON -exolix.set('MATIC', null) +exolix.set('MATIC', 'polygon') // Display Name: Merlin // Short Name: MERL @@ -474,11 +481,11 @@ exolix.set('OORT', null) // Display Name: Optimism // Short Name: OP -exolix.set('OPTIMISM', null) +exolix.set('OPTIMISM', 'optimism') // Display Name: Osmosis // Short Name: OSMO -exolix.set('OSMO', null) +exolix.set('OSMO', 'osmosis') // Display Name: PEPECOIN exolix.set('PEPECOIN', null) @@ -488,7 +495,7 @@ exolix.set('PEPECOIN', null) exolix.set('PINETWORK', null) // Display Name: PIVX -exolix.set('PIVX', null) +exolix.set('PIVX', 'pivx') // Display Name: POKT exolix.set('POKT', null) @@ -501,7 +508,7 @@ exolix.set('QTC', null) // Display Name: Qtum // Short Name: QTUM -exolix.set('QTUM', null) +exolix.set('QTUM', 'qtum') // Display Name: QUBIC exolix.set('QUBIC', null) @@ -535,11 +542,11 @@ exolix.set('ROSE', null) exolix.set('RSK', null) // Display Name: THORChain -exolix.set('RUNE', null) +exolix.set('RUNE', 'thorchainrune') // Display Name: Ravencoin // Short Name: RVN -exolix.set('RVN', null) +exolix.set('RVN', 'ravencoin') // Display Name: SAGA exolix.set('SAGA', null) @@ -564,7 +571,7 @@ exolix.set('SGB', null) exolix.set('SHARDEUM', null) // Display Name: Solana -exolix.set('SOL', null) +exolix.set('SOL', 'solana') // Display Name: Sonic exolix.set('SONIC', null) @@ -597,7 +604,7 @@ exolix.set('STX', null) // Display Name: Sui // Short Name: SUI -exolix.set('SUI', null) +exolix.set('SUI', 'sui') // Display Name: SUPRA exolix.set('SUPRA', null) @@ -626,7 +633,7 @@ exolix.set('TARA', null) exolix.set('TARI', null) // Display Name: Telos -exolix.set('TELOS', null) +exolix.set('TELOS', 'telos') // Display Name: Theta Token exolix.set('THETA', null) @@ -643,11 +650,11 @@ exolix.set('TOMO', null) // Display Name: The Open Network // Short Name: TONCOIN -exolix.set('TON', null) +exolix.set('TON', 'ton') // Display Name: Tron // Short Name: TRC20 -exolix.set('TRX', null) +exolix.set('TRX', 'tron') // Display Name: VANRY exolix.set('VANRY', null) @@ -680,7 +687,7 @@ exolix.set('XCH', null) // Display Name: eCash // Short Name: XEC -exolix.set('XEC', null) +exolix.set('XEC', 'ecash') // Display Name: XELIS exolix.set('XELIS', null) @@ -698,11 +705,11 @@ exolix.set('XION', null) // Display Name: Stellar // Short Name: STELLAR -exolix.set('XLM', null) +exolix.set('XLM', 'stellar') // Display Name: Monero // Short Name: XMR -exolix.set('XMR', null) +exolix.set('XMR', 'monero') // Display Name: XNA exolix.set('XNA', null) @@ -715,10 +722,10 @@ exolix.set('XPLA', null) exolix.set('XPR', null) // Display Name: Ripple -exolix.set('XRP', null) +exolix.set('XRP', 'ripple') // Display Name: Tezos -exolix.set('XTZ', null) +exolix.set('XTZ', 'tezos') // Display Name: Verge exolix.set('XVG', null) @@ -728,7 +735,7 @@ exolix.set('XVG', null) exolix.set('XYM', null) // Display Name: Zano -exolix.set('ZANO', null) +exolix.set('ZANO', 'zano') // Display Name: ZETA exolix.set('ZETACHAIN', null) diff --git a/scripts/mappings/godexMappings.ts b/scripts/mappings/godexMappings.ts index a34a709f..b650fab0 100644 --- a/scripts/mappings/godexMappings.ts +++ b/scripts/mappings/godexMappings.ts @@ -5,7 +5,7 @@ export const godex = new Map() godex.set('ACA', null) // Display Name: Algorand -godex.set('ALGO', null) +godex.set('ALGO', 'algorand') // Display Name: Aptos godex.set('APT', null) @@ -14,7 +14,7 @@ godex.set('APT', null) godex.set('AR', null) // Display Name: Arbitrum One -godex.set('ARBITRUM', null) +godex.set('ARBITRUM', 'arbitrum') // Display Name: Ardor godex.set('ARDR', null) @@ -26,34 +26,43 @@ godex.set('ARK', null) godex.set('ASTR', null) // Display Name: Cosmos -godex.set('ATOM', null) +godex.set('ATOM', 'cosmoshub') // Display Name: Avalanche godex.set('AVAX', null) // Display Name: AVAX C-Chain -godex.set('AVAXC', null) +godex.set('AVAXC', 'avalanche') // Display Name: BAND godex.set('BAND', null) // Display Name: Base -godex.set('BASE', null) +godex.set('BASE', 'base') // Display Name: Bitcoin Cash -godex.set('BCH', null) +godex.set('BCH', 'bitcoincash') + +// WARNING: Not included by the synchronizer synchronization +godex.set('BNB', 'binance') // Display Name: BNC godex.set('BNC', null) // Display Name: Binance Smart Chain (BEP20) -godex.set('BSC', null) +godex.set('BSC', 'binancesmartchain') + +// WARNING: Not included by the synchronizer synchronization +godex.set('BSV', 'bitcoinsv') // Display Name: Bitcoin -godex.set('BTC', null) +godex.set('BTC', 'bitcoin') + +// WARNING: Not included by the synchronizer synchronization +godex.set('BTG', 'bitcoingold') // Display Name: CELO -godex.set('CELO', null) +godex.set('CELO', 'celo') // Display Name: Conflux godex.set('CFX', null) @@ -71,16 +80,16 @@ godex.set('CKB', null) godex.set('CTK', null) // Display Name: Dash -godex.set('DASH', null) +godex.set('DASH', 'dash') // Display Name: Decred godex.set('DCR', null) // Display Name: DigiByte -godex.set('DGB', null) +godex.set('DGB', 'digibyte') // Display Name: dogecoin -godex.set('DOGE', null) +godex.set('DOGE', 'dogecoin') // Display Name: Elrond eGold godex.set('EGLD', null) @@ -89,37 +98,43 @@ godex.set('EGLD', null) godex.set('ENJ', null) // Display Name: EOS -godex.set('EOS', null) +godex.set('EOS', 'eos') // Display Name: Ethereum Classic -godex.set('ETC', null) +godex.set('ETC', 'ethereumclassic') // Display Name: Ethereum Express Chain godex.set('ETE', null) // Display Name: Ethereum -godex.set('ETH', null) +godex.set('ETH', 'ethereum') + +// WARNING: Not included by the synchronizer synchronization +godex.set('ETHW', 'ethereumpow') // Display Name: Fetch.AI godex.set('FET', null) // Display Name: Filecoin -godex.set('FIL', null) +godex.set('FIL', 'filecoin') // Display Name: FIO Protocol -godex.set('FIO', null) +godex.set('FIO', 'fio') + +// WARNING: Not included by the synchronizer synchronization +godex.set('FIRO', 'zcoin') // Display Name: Flow godex.set('FLOW', null) // Display Name: Fantom -godex.set('FTM', null) +godex.set('FTM', 'fantom') // Display Name: Moonbeam godex.set('GLMR', null) // Display Name: Hedera Hashgraph -godex.set('HBAR', null) +godex.set('HBAR', 'hedera') // Display Name: HIVE godex.set('HIVE', null) @@ -152,7 +167,7 @@ godex.set('KAVA', null) godex.set('LINEA', null) // Display Name: Litecoin -godex.set('LTC', null) +godex.set('LTC', 'litecoin') // Display Name: Terra godex.set('LUNA', null) @@ -164,7 +179,7 @@ godex.set('LUNC', null) godex.set('MANTA', null) // Display Name: Polygon -godex.set('MATIC', null) +godex.set('MATIC', 'polygon') // Display Name: METIS godex.set('METIS', null) @@ -188,13 +203,13 @@ godex.set('ONE', null) godex.set('ONT', null) // Display Name: OPTIMISM -godex.set('OPTIMISM', null) +godex.set('OPTIMISM', 'optimism') // Display Name: OSMO -godex.set('OSMO', null) +godex.set('OSMO', 'osmosis') // Display Name: PIVX -godex.set('PIVX', null) +godex.set('PIVX', 'pivx') // Display Name: PLC Ultima godex.set('PLCU', null) @@ -203,7 +218,7 @@ godex.set('PLCU', null) godex.set('POLYX', null) // Display Name: Qtum -godex.set('QTUM', null) +godex.set('QTUM', 'qtum') // Display Name: REI godex.set('REI', null) @@ -215,13 +230,13 @@ godex.set('RON', null) godex.set('ROSE', null) // Display Name: RSK -godex.set('RSK', null) +godex.set('RSK', 'rsk') // Display Name: RUNE -godex.set('RUNE', null) +godex.set('RUNE', 'thorchainrune') // Display Name: Ravencoin -godex.set('RVN', null) +godex.set('RVN', 'ravencoin') // Display Name: SCRT godex.set('SCRT', null) @@ -230,7 +245,7 @@ godex.set('SCRT', null) godex.set('SEI', null) // Display Name: Solana Network -godex.set('SOL', null) +godex.set('SOL', 'solana') // Display Name: StarkNet godex.set('STARKNET', null) @@ -242,7 +257,7 @@ godex.set('STEEM', null) godex.set('STRAX', null) // Display Name: SUI -godex.set('SUI', null) +godex.set('SUI', 'sui') // Display Name: SXP godex.set('SXP', null) @@ -260,10 +275,10 @@ godex.set('THETA', null) godex.set('TIA', null) // Display Name: The Open network -godex.set('TON', null) +godex.set('TON', 'ton') // Display Name: Tron -godex.set('TRX', null) +godex.set('TRX', 'tron') // Display Name: VeChain godex.set('VET', null) @@ -275,22 +290,25 @@ godex.set('VIA', null) godex.set('WAN', null) // Display Name: WAX -godex.set('WAX', null) +godex.set('WAX', 'wax') + +// WARNING: Not included by the synchronizer synchronization +godex.set('WAXL', 'axelar') // Display Name: eCash -godex.set('XEC', null) +godex.set('XEC', 'ecash') // Display Name: Stellar Lumens -godex.set('XLM', null) +godex.set('XLM', 'stellar') // Display Name: Monero -godex.set('XMR', null) +godex.set('XMR', 'monero') // Display Name: Ripple -godex.set('XRP', null) +godex.set('XRP', 'ripple') // Display Name: Tezos -godex.set('XTZ', null) +godex.set('XTZ', 'tezos') // Display Name: Verge godex.set('XVG', null) @@ -299,4 +317,4 @@ godex.set('XVG', null) godex.set('ZIL', null) // Display Name: ZKSYNC -godex.set('ZKSYNC', null) +godex.set('ZKSYNC', 'zksync') diff --git a/scripts/mappings/letsexchangeMappings.ts b/scripts/mappings/letsexchangeMappings.ts index 677d250f..b57ee465 100644 --- a/scripts/mappings/letsexchangeMappings.ts +++ b/scripts/mappings/letsexchangeMappings.ts @@ -23,7 +23,7 @@ letsexchange.set('ABEY', null) letsexchange.set('ACA', null) // Display Name: ADA -letsexchange.set('ADA', null) +letsexchange.set('ADA', 'cardano') // Display Name: ADK letsexchange.set('ADK', null) @@ -47,7 +47,7 @@ letsexchange.set('AKT', null) letsexchange.set('ALEO', null) // Display Name: ALGO -letsexchange.set('ALGO', null) +letsexchange.set('ALGO', 'algorand') // Display Name: ALPH letsexchange.set('ALPH', null) @@ -71,7 +71,7 @@ letsexchange.set('APT', null) letsexchange.set('AR', null) // Display Name: ARBITRUM -letsexchange.set('ARBITRUM', null) +letsexchange.set('ARBITRUM', 'arbitrum') // Display Name: ARBITRUM BRIDGED letsexchange.set('ARBITRUM BRIDGED', null) @@ -92,7 +92,7 @@ letsexchange.set('AREA', null) letsexchange.set('ARK', null) // Display Name: ARRR -letsexchange.set('ARRR', null) +letsexchange.set('ARRR', 'piratechain') // Display Name: ASTR letsexchange.set('ASTR', null) @@ -101,7 +101,7 @@ letsexchange.set('ASTR', null) letsexchange.set('ASTR EVM', null) // Display Name: ATOM -letsexchange.set('ATOM', null) +letsexchange.set('ATOM', 'cosmoshub') // Display Name: AURORA letsexchange.set('AURORA', null) @@ -113,7 +113,7 @@ letsexchange.set('AVAIL', null) letsexchange.set('AVAX', null) // Display Name: AVAXC -letsexchange.set('AVAXC', null) +letsexchange.set('AVAXC', 'avalanche') // Display Name: AXEL letsexchange.set('AXEL', null) @@ -137,7 +137,7 @@ letsexchange.set('BAND', null) letsexchange.set('BASE', null) // Display Name: BCH -letsexchange.set('BCH', null) +letsexchange.set('BCH', 'bitcoincash') // Display Name: BCHSV letsexchange.set('BCHSV', null) @@ -148,8 +148,11 @@ letsexchange.set('BDX', null) // Display Name: BELLS letsexchange.set('BELLS', null) +// WARNING: Not included by the synchronizer synchronization +letsexchange.set('BEP2', 'binance') + // Display Name: BEP20 -letsexchange.set('BEP20', null) +letsexchange.set('BEP20', 'binancesmartchain') // Display Name: BERA letsexchange.set('BERA', null) @@ -188,10 +191,10 @@ letsexchange.set('BRC20', null) letsexchange.set('BRISE', null) // Display Name: BSV -letsexchange.set('BSV', null) +letsexchange.set('BSV', 'bitcoinsv') // Display Name: BTC -letsexchange.set('BTC', null) +letsexchange.set('BTC', 'bitcoin') // Display Name: BTCRUNES letsexchange.set('BTCRUNES', null) @@ -206,7 +209,7 @@ letsexchange.set('BTCZ', null) letsexchange.set('BTF', null) // Display Name: BTG -letsexchange.set('BTG', null) +letsexchange.set('BTG', 'bitcoingold') // Display Name: BTM letsexchange.set('BTM', null) @@ -239,7 +242,7 @@ letsexchange.set('CC', null) letsexchange.set('CCD', null) // Display Name: CELO -letsexchange.set('CELO', null) +letsexchange.set('CELO', 'celo') // Display Name: CFG letsexchange.set('CFG', null) @@ -272,7 +275,7 @@ letsexchange.set('CMP', null) letsexchange.set('CORE', null) // Display Name: COREUM -letsexchange.set('COREUM', null) +letsexchange.set('COREUM', 'coreum') // Display Name: COTI letsexchange.set('COTI', null) @@ -311,7 +314,7 @@ letsexchange.set('DAG', null) letsexchange.set('DARC', null) // Display Name: DASH -letsexchange.set('DASH', null) +letsexchange.set('DASH', 'dash') // Display Name: DBC letsexchange.set('DBC', null) @@ -332,7 +335,7 @@ letsexchange.set('DESO', null) letsexchange.set('DFI', null) // Display Name: DGB -letsexchange.set('DGB', null) +letsexchange.set('DGB', 'digibyte') // Display Name: DINGO letsexchange.set('DINGO', null) @@ -350,13 +353,13 @@ letsexchange.set('DNX', null) letsexchange.set('DOCK', null) // Display Name: DOGE -letsexchange.set('DOGE', null) +letsexchange.set('DOGE', 'dogecoin') // Display Name: DOGECHAIN letsexchange.set('DOGECHAIN', null) // Display Name: DOT -letsexchange.set('DOT', null) +letsexchange.set('DOT', 'polkadot') // Display Name: DVPN letsexchange.set('DVPN', null) @@ -404,7 +407,7 @@ letsexchange.set('ENJ', null) letsexchange.set('ENQ', null) // Display Name: EOS -letsexchange.set('EOS', null) +letsexchange.set('EOS', 'eos') // Display Name: EOSC letsexchange.set('EOSC', null) @@ -413,7 +416,7 @@ letsexchange.set('EOSC', null) letsexchange.set('EQ', null) // Display Name: ERC20 -letsexchange.set('ERC20', null) +letsexchange.set('ERC20', 'ethereum') // Display Name: ERG letsexchange.set('ERG', null) @@ -422,7 +425,7 @@ letsexchange.set('ERG', null) letsexchange.set('ESC', null) // Display Name: ETC -letsexchange.set('ETC', null) +letsexchange.set('ETC', 'ethereumclassic') // Display Name: ETH letsexchange.set('ETH', null) @@ -431,7 +434,7 @@ letsexchange.set('ETH', null) letsexchange.set('ETHF', null) // Display Name: ETHW -letsexchange.set('ETHW', null) +letsexchange.set('ETHW', 'ethereumpow') // Display Name: ETN letsexchange.set('ETN', null) @@ -458,13 +461,13 @@ letsexchange.set('FB', null) letsexchange.set('FET', null) // Display Name: FIL -letsexchange.set('FIL', null) +letsexchange.set('FIL', 'filecoin') // Display Name: FIO -letsexchange.set('FIO', null) +letsexchange.set('FIO', 'fio') // Display Name: FIRO -letsexchange.set('FIRO', null) +letsexchange.set('FIRO', 'zcoin') // Display Name: FIS letsexchange.set('FIS', null) @@ -491,7 +494,7 @@ letsexchange.set('FRAEVM', null) letsexchange.set('FSN', null) // Display Name: FTM -letsexchange.set('FTM', null) +letsexchange.set('FTM', 'fantom') // Display Name: FTN letsexchange.set('FTN', null) @@ -523,6 +526,9 @@ letsexchange.set('GRC20', null) // Display Name: GRIN letsexchange.set('GRIN', null) +// WARNING: Not included by the synchronizer synchronization +letsexchange.set('GRS', 'groestlcoin') + // Display Name: GSYS letsexchange.set('GSYS', null) @@ -536,7 +542,7 @@ letsexchange.set('GXS', null) letsexchange.set('HAQQ', null) // Display Name: HBAR -letsexchange.set('HBAR', null) +letsexchange.set('HBAR', 'hedera') // Display Name: HC letsexchange.set('HC', null) @@ -569,7 +575,7 @@ letsexchange.set('HUAHUA', null) letsexchange.set('HYDRA', null) // Display Name: HYPE -letsexchange.set('HYPE', null) +letsexchange.set('HYPE', 'hyperevm') // Display Name: HYPEEVM letsexchange.set('HYPEEVM', null) @@ -692,7 +698,7 @@ letsexchange.set('LOKI', null) letsexchange.set('LSK', null) // Display Name: LTC -letsexchange.set('LTC', null) +letsexchange.set('LTC', 'litecoin') // Display Name: LTO letsexchange.set('LTO', null) @@ -875,13 +881,13 @@ letsexchange.set('ONT', null) letsexchange.set('OORT', null) // Display Name: OPTIMISM -letsexchange.set('OPTIMISM', null) +letsexchange.set('OPTIMISM', 'optimism') // Display Name: ORAI letsexchange.set('ORAI', null) // Display Name: OSMO -letsexchange.set('OSMO', null) +letsexchange.set('OSMO', 'osmosis') // Display Name: OVER letsexchange.set('OVER', null) @@ -920,7 +926,7 @@ letsexchange.set('PI', null) letsexchange.set('PIONEER', null) // Display Name: PIVX -letsexchange.set('PIVX', null) +letsexchange.set('PIVX', 'pivx') // Display Name: PIX letsexchange.set('PIX', null) @@ -941,13 +947,13 @@ letsexchange.set('PLEX', null) letsexchange.set('PLMC', null) // Display Name: PLS -letsexchange.set('PLS', null) +letsexchange.set('PLS', 'pulsechain') // Display Name: POKT letsexchange.set('POKT', null) // Display Name: POL -letsexchange.set('POL', null) +letsexchange.set('POL', 'polygon') // Display Name: POLYX letsexchange.set('POLYX', null) @@ -962,7 +968,7 @@ letsexchange.set('QKC', null) letsexchange.set('QRL', null) // Display Name: QTUM -letsexchange.set('QTUM', null) +letsexchange.set('QTUM', 'qtum') // Display Name: QUAI letsexchange.set('QUAI', null) @@ -998,16 +1004,16 @@ letsexchange.set('ROOT', null) letsexchange.set('ROSE', null) // Display Name: RSK -letsexchange.set('RSK', null) +letsexchange.set('RSK', 'rsk') // Display Name: RUNE -letsexchange.set('RUNE', null) +letsexchange.set('RUNE', 'thorchainrune') // Display Name: RVC letsexchange.set('RVC', null) // Display Name: RVN -letsexchange.set('RVN', null) +letsexchange.set('RVN', 'ravencoin') // Display Name: RWN letsexchange.set('RWN', null) @@ -1064,10 +1070,10 @@ letsexchange.set('SMH', null) letsexchange.set('SMT', null) // Display Name: SOL -letsexchange.set('SOL', null) +letsexchange.set('SOL', 'solana') // Display Name: SONIC -letsexchange.set('SONIC', null) +letsexchange.set('SONIC', 'sonic') // Display Name: SPACE letsexchange.set('SPACE', null) @@ -1100,7 +1106,7 @@ letsexchange.set('STT', null) letsexchange.set('STX', null) // Display Name: SUI -letsexchange.set('SUI', null) +letsexchange.set('SUI', 'sui') // Display Name: SUPR letsexchange.set('SUPR', null) @@ -1139,7 +1145,7 @@ letsexchange.set('THETA', null) letsexchange.set('TIA', null) // Display Name: TLOS -letsexchange.set('TLOS', null) +letsexchange.set('TLOS', 'telos') // Display Name: TLOSEVM letsexchange.set('TLOSEVM', null) @@ -1148,13 +1154,13 @@ letsexchange.set('TLOSEVM', null) letsexchange.set('TOMO', null) // Display Name: TON -letsexchange.set('TON', null) +letsexchange.set('TON', 'ton') // Display Name: TOP letsexchange.set('TOP', null) // Display Name: TRC20 -letsexchange.set('TRC20', null) +letsexchange.set('TRC20', 'tron') // Display Name: TRUE letsexchange.set('TRUE', null) @@ -1223,10 +1229,10 @@ letsexchange.set('WATER', null) letsexchange.set('WAVES', null) // Display Name: WAX -letsexchange.set('WAX', null) +letsexchange.set('WAX', 'wax') // Display Name: WAXL -letsexchange.set('WAXL', null) +letsexchange.set('WAXL', 'axelar') // Display Name: WBT letsexchange.set('WBT', null) @@ -1271,7 +1277,7 @@ letsexchange.set('XDC', null) letsexchange.set('XDEN', null) // Display Name: XEC -letsexchange.set('XEC', null) +letsexchange.set('XEC', 'ecash') // Display Name: XEL letsexchange.set('XEL', null) @@ -1295,13 +1301,13 @@ letsexchange.set('XHV', null) letsexchange.set('XION', null) // Display Name: XLM -letsexchange.set('XLM', null) +letsexchange.set('XLM', 'stellar') // Display Name: XMC letsexchange.set('XMC', null) // Display Name: XMR -letsexchange.set('XMR', null) +letsexchange.set('XMR', 'monero') // Display Name: XNA letsexchange.set('XNA', null) @@ -1331,10 +1337,10 @@ letsexchange.set('XPX', null) letsexchange.set('XRD', null) // Display Name: XRP -letsexchange.set('XRP', null) +letsexchange.set('XRP', 'ripple') // Display Name: XTZ -letsexchange.set('XTZ', null) +letsexchange.set('XTZ', 'tezos') // Display Name: XVG letsexchange.set('XVG', null) @@ -1349,13 +1355,13 @@ letsexchange.set('YOU', null) letsexchange.set('YOYOW', null) // Display Name: ZANO -letsexchange.set('ZANO', null) +letsexchange.set('ZANO', 'zano') // Display Name: ZCD letsexchange.set('ZCD', null) // Display Name: ZEC -letsexchange.set('ZEC', null) +letsexchange.set('ZEC', 'zcash') // Display Name: ZEN letsexchange.set('ZEN', null) @@ -1375,6 +1381,9 @@ letsexchange.set('ZKF', null) // Display Name: ZKL letsexchange.set('ZKL', null) +// WARNING: Not included by the synchronizer synchronization +letsexchange.set('ZKSERA', 'zksync') + // Display Name: ZKSYNC letsexchange.set('ZKSYNC', null) diff --git a/scripts/mappings/lifiMappings.ts b/scripts/mappings/lifiMappings.ts index e870f92b..630a4b5a 100644 --- a/scripts/mappings/lifiMappings.ts +++ b/scripts/mappings/lifiMappings.ts @@ -8,16 +8,16 @@ lifi.set('abs', null) lifi.set('ape', null) // Display Name: Arbitrum -lifi.set('arb', null) +lifi.set('arb', 'arbitrum') // Display Name: Aurora lifi.set('aur', null) // Display Name: Avalanche -lifi.set('ava', null) +lifi.set('ava', 'avalanche') // Display Name: Base -lifi.set('bas', null) +lifi.set('bas', 'base') // Display Name: Berachain lifi.set('ber', null) @@ -32,10 +32,10 @@ lifi.set('bob', null) lifi.set('boc', null) // Display Name: BSC -lifi.set('bsc', null) +lifi.set('bsc', 'binancesmartchain') // Display Name: Celo -lifi.set('cel', null) +lifi.set('cel', 'celo') // Display Name: Corn lifi.set('crn', null) @@ -47,10 +47,10 @@ lifi.set('cro', null) lifi.set('dai', null) // Display Name: zkSync -lifi.set('era', null) +lifi.set('era', 'zksync') // Display Name: Ethereum -lifi.set('eth', null) +lifi.set('eth', 'ethereum') // Display Name: Etherlink lifi.set('etl', null) @@ -64,6 +64,9 @@ lifi.set('flw', null) // Display Name: Fraxtal lifi.set('fra', null) +// WARNING: Not included by the synchronizer synchronization +lifi.set('ftm', 'fantom') + // Display Name: FUSE lifi.set('fus', null) @@ -77,7 +80,7 @@ lifi.set('hmi', null) lifi.set('hpl', null) // Display Name: HyperEVM -lifi.set('hyp', null) +lifi.set('hyp', 'hyperevm') // Display Name: Immutable zkEVM lifi.set('imx', null) @@ -122,7 +125,7 @@ lifi.set('mor', null) lifi.set('opb', null) // Display Name: Optimism -lifi.set('opt', null) +lifi.set('opt', 'optimism') // Display Name: Plasma lifi.set('pla', null) @@ -131,7 +134,7 @@ lifi.set('pla', null) lifi.set('plu', null) // Display Name: Polygon -lifi.set('pol', null) +lifi.set('pol', 'polygon') // Display Name: Polygon zkEVM lifi.set('pze', null) @@ -140,7 +143,7 @@ lifi.set('pze', null) lifi.set('ron', null) // Display Name: Rootstock -lifi.set('rsk', null) +lifi.set('rsk', 'rsk') // Display Name: Scroll lifi.set('scl', null) @@ -151,12 +154,18 @@ lifi.set('sei', null) // Display Name: Soneium lifi.set('soe', null) +// WARNING: Not included by the synchronizer synchronization +lifi.set('sol', 'solana') + // Display Name: Sonic lifi.set('son', null) // Display Name: Sophon lifi.set('sop', null) +// WARNING: Not included by the synchronizer synchronization +lifi.set('sui', 'sui') + // Display Name: Superposition lifi.set('sup', null) diff --git a/scripts/mappings/mayaprotocolMappings.ts b/scripts/mappings/mayaprotocolMappings.ts index 966084d9..fdfa06ca 100644 --- a/scripts/mappings/mayaprotocolMappings.ts +++ b/scripts/mappings/mayaprotocolMappings.ts @@ -2,25 +2,25 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const mayaprotocol = new Map() // Display Name: ARB -mayaprotocol.set('ARB', null) +mayaprotocol.set('ARB', 'arbitrum') // Display Name: BTC -mayaprotocol.set('BTC', null) +mayaprotocol.set('BTC', 'bitcoin') // Display Name: DASH -mayaprotocol.set('DASH', null) +mayaprotocol.set('DASH', 'dash') // Display Name: ETH -mayaprotocol.set('ETH', null) +mayaprotocol.set('ETH', 'ethereum') // Display Name: KUJI mayaprotocol.set('KUJI', null) // Display Name: THOR -mayaprotocol.set('THOR', null) +mayaprotocol.set('THOR', 'thorchainrune') // Display Name: XRD mayaprotocol.set('XRD', null) // Display Name: ZEC -mayaprotocol.set('ZEC', null) +mayaprotocol.set('ZEC', 'zcash') diff --git a/scripts/mappings/rangoMappings.ts b/scripts/mappings/rangoMappings.ts index 3438fefc..bba1ee39 100644 --- a/scripts/mappings/rangoMappings.ts +++ b/scripts/mappings/rangoMappings.ts @@ -5,22 +5,22 @@ export const rango = new Map() rango.set('AKASH', null) // Display Name: Arbitrum -rango.set('ARBITRUM', null) +rango.set('ARBITRUM', 'arbitrum') // Display Name: Aurora rango.set('AURORA', null) // Display Name: Avalanche -rango.set('AVAX_CCHAIN', null) +rango.set('AVAX_CCHAIN', 'avalanche') // Display Name: Axelar -rango.set('AXELAR', null) +rango.set('AXELAR', 'axelar') // Display Name: BandChain rango.set('BANDCHAIN', null) // Display Name: Base -rango.set('BASE', null) +rango.set('BASE', 'base') // Display Name: Bitcoin Cash rango.set('BCH', null) @@ -53,13 +53,13 @@ rango.set('BOBA_BNB', null) rango.set('BRISE', null) // Display Name: BNB Smart Chain -rango.set('BSC', null) +rango.set('BSC', 'binancesmartchain') // Display Name: Bitcoin -rango.set('BTC', null) +rango.set('BTC', 'bitcoin') // Display Name: Celo -rango.set('CELO', null) +rango.set('CELO', 'celo') // Display Name: Chihuahua rango.set('CHIHUAHUA', null) @@ -68,7 +68,7 @@ rango.set('CHIHUAHUA', null) rango.set('COMDEX', null) // Display Name: Cosmos -rango.set('COSMOS', null) +rango.set('COSMOS', 'cosmoshub') // Display Name: Cronos rango.set('CRONOS', null) @@ -92,13 +92,13 @@ rango.set('DYDX', null) rango.set('EMONEY', null) // Display Name: Ethereum -rango.set('ETH', null) +rango.set('ETH', 'ethereum') // Display Name: Evmos rango.set('EVMOS', null) // Display Name: Fantom -rango.set('FANTOM', null) +rango.set('FANTOM', 'fantom') // Display Name: Fuse rango.set('FUSE', null) @@ -179,16 +179,16 @@ rango.set('NOBLE', null) rango.set('OKC', null) // Display Name: Optimism -rango.set('OPTIMISM', null) +rango.set('OPTIMISM', 'optimism') // Display Name: Osmosis -rango.set('OSMOSIS', null) +rango.set('OSMOSIS', 'osmosis') // Display Name: Persistence rango.set('PERSISTENCE', null) // Display Name: Polygon -rango.set('POLYGON', null) +rango.set('POLYGON', 'polygon') // Display Name: polygon zkEVM rango.set('POLYGONZK', null) @@ -212,7 +212,7 @@ rango.set('SHIMMER', null) rango.set('SIF', null) // Display Name: Solana -rango.set('SOLANA', null) +rango.set('SOLANA', 'solana') // Display Name: Soneium rango.set('SONEIUM', null) @@ -248,7 +248,7 @@ rango.set('TERRA', null) rango.set('TERRA_CLASSIC', null) // Display Name: Thorchain -rango.set('THOR', null) +rango.set('THOR', 'thorchainrune') // Display Name: Ton rango.set('TON', null) @@ -272,7 +272,7 @@ rango.set('XRPL', null) rango.set('ZETA_CHAIN', null) // Display Name: zkSync era -rango.set('ZKSYNC', null) +rango.set('ZKSYNC', 'zksync') // Display Name: Zora rango.set('ZORA', null) diff --git a/scripts/mappings/sideshiftMappings.ts b/scripts/mappings/sideshiftMappings.ts index 1b100f18..8c98d9bf 100644 --- a/scripts/mappings/sideshiftMappings.ts +++ b/scripts/mappings/sideshiftMappings.ts @@ -2,37 +2,40 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const sideshift = new Map() // Display Name: algorand -sideshift.set('algorand', null) +sideshift.set('algorand', 'algorand') // Display Name: aptos sideshift.set('aptos', null) // Display Name: arbitrum -sideshift.set('arbitrum', null) +sideshift.set('arbitrum', 'arbitrum') // Display Name: avax -sideshift.set('avax', null) +sideshift.set('avax', 'avalanche') // Display Name: base -sideshift.set('base', null) +sideshift.set('base', 'base') // Display Name: berachain sideshift.set('berachain', null) // Display Name: bitcoin -sideshift.set('bitcoin', null) +sideshift.set('bitcoin', 'bitcoin') // Display Name: bitcoincash -sideshift.set('bitcoincash', null) +sideshift.set('bitcoincash', 'bitcoincash') // Display Name: blast sideshift.set('blast', null) // Display Name: bsc -sideshift.set('bsc', null) +sideshift.set('bsc', 'binancesmartchain') + +// WARNING: Not included by the synchronizer synchronization +sideshift.set('bsv', 'bitcoinsv') // Display Name: cardano -sideshift.set('cardano', null) +sideshift.set('cardano', 'cardano') // Display Name: celestia sideshift.set('celestia', null) @@ -41,19 +44,28 @@ sideshift.set('celestia', null) sideshift.set('core', null) // Display Name: cosmos -sideshift.set('cosmos', null) +sideshift.set('cosmos', 'cosmoshub') // Display Name: cronos sideshift.set('cronos', null) // Display Name: dash -sideshift.set('dash', null) +sideshift.set('dash', 'dash') // Display Name: doge -sideshift.set('doge', null) +sideshift.set('doge', 'dogecoin') + +// WARNING: Not included by the synchronizer synchronization +sideshift.set('etc', 'ethereumclassic') // Display Name: ethereum -sideshift.set('ethereum', null) +sideshift.set('ethereum', 'ethereum') + +// WARNING: Not included by the synchronizer synchronization +sideshift.set('fantom', 'fantom') + +// WARNING: Not included by the synchronizer synchronization +sideshift.set('grs', 'groestlcoin') // Display Name: hyperevm sideshift.set('hyperevm', null) @@ -68,61 +80,70 @@ sideshift.set('internal', null) sideshift.set('liquid', null) // Display Name: litecoin -sideshift.set('litecoin', null) +sideshift.set('litecoin', 'litecoin') // Display Name: monad sideshift.set('monad', null) +// WARNING: Not included by the synchronizer synchronization +sideshift.set('monero', 'monero') + // Display Name: near sideshift.set('near', null) // Display Name: optimism -sideshift.set('optimism', null) +sideshift.set('optimism', 'optimism') // Display Name: plasma sideshift.set('plasma', null) // Display Name: polkadot -sideshift.set('polkadot', null) +sideshift.set('polkadot', 'polkadot') // Display Name: polygon -sideshift.set('polygon', null) +sideshift.set('polygon', 'polygon') // Display Name: ripple -sideshift.set('ripple', null) +sideshift.set('ripple', 'ripple') // Display Name: ronin sideshift.set('ronin', null) // Display Name: rootstock -sideshift.set('rootstock', null) +sideshift.set('rootstock', 'rsk') // Display Name: scroll sideshift.set('scroll', null) +// WARNING: Not included by the synchronizer synchronization +sideshift.set('shielded', 'zcash') + // Display Name: solana -sideshift.set('solana', null) +sideshift.set('solana', 'solana') // Display Name: sonic -sideshift.set('sonic', null) +sideshift.set('sonic', 'sonic') // Display Name: stacks sideshift.set('stacks', null) // Display Name: stellar -sideshift.set('stellar', null) +sideshift.set('stellar', 'stellar') // Display Name: sui -sideshift.set('sui', null) +sideshift.set('sui', 'sui') + +// WARNING: Not included by the synchronizer synchronization +sideshift.set('tezos', 'tezos') // Display Name: ton -sideshift.set('ton', null) +sideshift.set('ton', 'ton') // Display Name: tron -sideshift.set('tron', null) +sideshift.set('tron', 'tron') // Display Name: xec -sideshift.set('xec', null) +sideshift.set('xec', 'ecash') // Display Name: zksyncera -sideshift.set('zksyncera', null) +sideshift.set('zksyncera', 'zksync') diff --git a/scripts/mappings/swapuzMappings.ts b/scripts/mappings/swapuzMappings.ts index f5e433f6..7a2bbaf3 100644 --- a/scripts/mappings/swapuzMappings.ts +++ b/scripts/mappings/swapuzMappings.ts @@ -8,7 +8,7 @@ swapuz.set('0G', null) swapuz.set('ACA', null) // Display Name: CARDANO (ADA) -swapuz.set('ADA', null) +swapuz.set('ADA', 'cardano') // Display Name: AUTONOMYS swapuz.set('AI3', null) @@ -17,7 +17,7 @@ swapuz.set('AI3', null) swapuz.set('AKT', null) // Display Name: ALGORAND -swapuz.set('ALGO', null) +swapuz.set('ALGO', 'algorand') // Display Name: ALGORAND swapuz.set('ALGORAND', null) @@ -40,6 +40,9 @@ swapuz.set('AR', null) // Display Name: ARBITRUM ONE (ARBITRUM) swapuz.set('ARB', null) +// WARNING: Not included by the synchronizer synchronization +swapuz.set('ARBITRUM', 'arbitrum') + // Display Name: ASH swapuz.set('ASH', null) @@ -47,7 +50,7 @@ swapuz.set('ASH', null) swapuz.set('ASTR', null) // Display Name: COSMOS -swapuz.set('ATOM', null) +swapuz.set('ATOM', 'cosmoshub') // Display Name: AURORA swapuz.set('AURORA', null) @@ -68,13 +71,13 @@ swapuz.set('BABYLON', null) swapuz.set('BAND', null) // Display Name: BASE -swapuz.set('BASE', null) +swapuz.set('BASE', 'base') // Display Name: BB swapuz.set('BB', null) // Display Name: BITCOIN CASH -swapuz.set('BCH', null) +swapuz.set('BCH', 'bitcoincash') // Display Name: BCHN swapuz.set('BCHN', null) @@ -107,10 +110,10 @@ swapuz.set('BOUNCEBIT', null) swapuz.set('BRISE', null) // Display Name: BINANCE SMART CHAIN (BEP20) -swapuz.set('BSC', null) +swapuz.set('BSC', 'binancesmartchain') // Display Name: BITCOIN (BTC) -swapuz.set('BTC', null) +swapuz.set('BTC', 'bitcoin') // Display Name: LIGHTNING NETWORK swapuz.set('BTCLN', null) @@ -128,10 +131,10 @@ swapuz.set('CANTON', null) swapuz.set('CCD', null) // Display Name: AVALANCHE C-CHAIN (AVAX) -swapuz.set('CCHAIN', null) +swapuz.set('CCHAIN', 'avalanche') // Display Name: CELO -swapuz.set('CELO', null) +swapuz.set('CELO', 'celo') // Display Name: CFX CORE SPACE swapuz.set('CFX', null) @@ -155,7 +158,7 @@ swapuz.set('CSPR', null) swapuz.set('DAG', null) // Display Name: DASH -swapuz.set('DASH', null) +swapuz.set('DASH', 'dash') // Display Name: DECRED swapuz.set('DCR', null) @@ -164,17 +167,20 @@ swapuz.set('DCR', null) swapuz.set('DFI', null) // Display Name: DIGIBYTE -swapuz.set('DGB', null) +swapuz.set('DGB', 'digibyte') // Display Name: DOCK swapuz.set('DOCK', null) // Display Name: DOGECOIN -swapuz.set('DOGE', null) +swapuz.set('DOGE', 'dogecoin') // Display Name: DOG20 swapuz.set('DOGECHAIN', null) +// WARNING: Not included by the synchronizer synchronization +swapuz.set('DOT', 'polkadot') + // Display Name: DOTASSETHUB swapuz.set('DOTASSETHUB', null) @@ -200,16 +206,16 @@ swapuz.set('ELA', null) swapuz.set('EMYC', null) // Display Name: EOS (EOS) -swapuz.set('EOS', null) +swapuz.set('EOS', 'eos') // Display Name: ERGO swapuz.set('ERGO', null) // Display Name: ETHEREUM CLASSIC -swapuz.set('ETC', null) +swapuz.set('ETC', 'ethereumclassic') // Display Name: ETHEREUM (ERC20) -swapuz.set('ETH', null) +swapuz.set('ETH', 'ethereum') // Display Name: ETN swapuz.set('ETN', null) @@ -221,7 +227,7 @@ swapuz.set('ETNEVM', null) swapuz.set('EVER', null) // Display Name: FILECOIN -swapuz.set('FIL', null) +swapuz.set('FIL', 'filecoin') // Display Name: FLARE swapuz.set('FLARE', null) @@ -235,6 +241,9 @@ swapuz.set('FLUX', null) // Display Name: FRA(EVM) swapuz.set('FRA', null) +// WARNING: Not included by the synchronizer synchronization +swapuz.set('FTM', 'fantom') + // Display Name: FTN swapuz.set('FTN', null) @@ -254,7 +263,7 @@ swapuz.set('GUNZ', null) swapuz.set('HAQQ', null) // Display Name: HEDERA HASHGRAPH -swapuz.set('HBAR', null) +swapuz.set('HBAR', 'hedera') // Display Name: HRC20 swapuz.set('HECO', null) @@ -332,7 +341,7 @@ swapuz.set('KMA', null) swapuz.set('LAVA', null) // Display Name: LITECOIN -swapuz.set('LTC', null) +swapuz.set('LTC', 'litecoin') // Display Name: LUKSO swapuz.set('LUKSO', null) @@ -361,6 +370,9 @@ swapuz.set('MAPO', null) // Display Name: BINANCE-SMART-CHAIN swapuz.set('MAT', null) +// WARNING: Not included by the synchronizer synchronization +swapuz.set('MATIC', 'polygon') + // Display Name: MERLIN swapuz.set('MERLIN', null) @@ -455,7 +467,7 @@ swapuz.set('ONT', null) swapuz.set('OORT', null) // Display Name: OPTIMISM (OPTIMISM) -swapuz.set('OPTIMISM', null) +swapuz.set('OPTIMISM', 'optimism') // Display Name: OSMOSIS swapuz.set('OSMO', null) @@ -494,7 +506,7 @@ swapuz.set('POLYMESH', null) swapuz.set('QKC', null) // Display Name: QTUM -swapuz.set('QTUM', null) +swapuz.set('QTUM', 'qtum') // Display Name: RADIX swapuz.set('RADIX', null) @@ -518,7 +530,7 @@ swapuz.set('ROSE', null) swapuz.set('RUNE', null) // Display Name: RAVENCOIN -swapuz.set('RVN', null) +swapuz.set('RVN', 'ravencoin') // Display Name: SAGA swapuz.set('SAGA', null) @@ -536,7 +548,7 @@ swapuz.set('SEIEVM', null) swapuz.set('SHARDEUM', null) // Display Name: SOLANA (SOL) -swapuz.set('SOL', null) +swapuz.set('SOL', 'solana') // Display Name: SOMNIA swapuz.set('SOMI', null) @@ -569,7 +581,7 @@ swapuz.set('STRAXEVM', null) swapuz.set('STX', null) // Display Name: SUI (SUI) -swapuz.set('SUI', null) +swapuz.set('SUI', 'sui') // Display Name: SUPRA swapuz.set('SUPRA', null) @@ -593,7 +605,7 @@ swapuz.set('TENET', null) swapuz.set('THETA', null) // Display Name: THORCHAIN -swapuz.set('THORCHAIN', null) +swapuz.set('THORCHAIN', 'thorchainrune') // Display Name: TELOS swapuz.set('TLOS', null) @@ -602,13 +614,13 @@ swapuz.set('TLOS', null) swapuz.set('TLOSEVM', null) // Display Name: TONCOIN (TON) -swapuz.set('TON', null) +swapuz.set('TON', 'ton') // Display Name: TON swapuz.set('TON2', null) // Display Name: TRON (TRC20) -swapuz.set('TRX', null) +swapuz.set('TRX', 'tron') // Display Name: TRY swapuz.set('TRY', null) @@ -644,7 +656,7 @@ swapuz.set('WAN', null) swapuz.set('WAVES', null) // Display Name: WAXP -swapuz.set('WAXP', null) +swapuz.set('WAXP', 'wax') // Display Name: WEMIX swapuz.set('WEMIX', null) @@ -659,16 +671,16 @@ swapuz.set('XCHAIN', null) swapuz.set('XDBCHAIN', null) // Display Name: XEC -swapuz.set('XEC', null) +swapuz.set('XEC', 'ecash') // Display Name: BASE swapuz.set('XION', null) // Display Name: STELLAR LUMENS -swapuz.set('XLM', null) +swapuz.set('XLM', 'stellar') // Display Name: MONERO -swapuz.set('XMR', null) +swapuz.set('XMR', 'monero') // Display Name: XPR swapuz.set('XPR', null) @@ -677,16 +689,16 @@ swapuz.set('XPR', null) swapuz.set('XPRT', null) // Display Name: RIPPLE -swapuz.set('XRP', null) +swapuz.set('XRP', 'ripple') // Display Name: XTZ EVM -swapuz.set('XTZ', null) +swapuz.set('XTZ', 'tezos') // Display Name: XYM swapuz.set('XYM', null) // Display Name: ZCASH -swapuz.set('ZEC', null) +swapuz.set('ZEC', 'zcash') // Display Name: ZETA swapuz.set('ZETA', null) diff --git a/scripts/mappings/thorchainMappings.ts b/scripts/mappings/thorchainMappings.ts index 58e1b37f..dd16d369 100644 --- a/scripts/mappings/thorchainMappings.ts +++ b/scripts/mappings/thorchainMappings.ts @@ -2,37 +2,37 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const thorchain = new Map() // Display Name: AVAX -thorchain.set('AVAX', null) +thorchain.set('AVAX', 'avalanche') // Display Name: BASE -thorchain.set('BASE', null) +thorchain.set('BASE', 'base') // Display Name: BCH -thorchain.set('BCH', null) +thorchain.set('BCH', 'bitcoincash') // Display Name: BSC -thorchain.set('BSC', null) +thorchain.set('BSC', 'binancesmartchain') // Display Name: BTC -thorchain.set('BTC', null) +thorchain.set('BTC', 'bitcoin') // Display Name: DOGE -thorchain.set('DOGE', null) +thorchain.set('DOGE', 'dogecoin') // Display Name: ETH -thorchain.set('ETH', null) +thorchain.set('ETH', 'ethereum') // Display Name: GAIA thorchain.set('GAIA', null) // Display Name: LTC -thorchain.set('LTC', null) +thorchain.set('LTC', 'litecoin') // Display Name: THOR -thorchain.set('THOR', null) +thorchain.set('THOR', 'thorchainrune') // Display Name: TRON -thorchain.set('TRON', null) +thorchain.set('TRON', 'tron') // Display Name: XRP -thorchain.set('XRP', null) +thorchain.set('XRP', 'ripple') diff --git a/src/mappings/changehero.ts b/src/mappings/changehero.ts index f186852c..96dae3e0 100644 --- a/src/mappings/changehero.ts +++ b/src/mappings/changehero.ts @@ -15,83 +15,83 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const changehero = new Map() changehero.set('abstract', null) -changehero.set('algorand', null) +changehero.set('algorand', 'algorand') changehero.set('amoy', null) -changehero.set('arbitrum', null) -changehero.set('avalanche', null) +changehero.set('arbitrum', 'arbitrum') +changehero.set('avalanche', 'avalanche_(c-chain)') changehero.set('axelar', null) changehero.set('badcoin', null) -changehero.set('base', null) +changehero.set('base', 'base') changehero.set('binance', null) -changehero.set('binancesmartchain', null) -changehero.set('bitcoin', null) -changehero.set('bitcoincash', null) +changehero.set('binancesmartchain', 'binance_smart_chain') +changehero.set('bitcoin', 'bitcoin') +changehero.set('bitcoincash', 'bitcoin_cash') changehero.set('bitcoincashtestnet', null) changehero.set('bitcoingold', null) changehero.set('bitcoingoldtestnet', null) -changehero.set('bitcoinsv', null) +changehero.set('bitcoinsv', 'bitcoin_sv') changehero.set('bitcointestnet', null) changehero.set('bitcointestnet4', null) changehero.set('bobevm', null) changehero.set('botanix', null) changehero.set('calibration', null) -changehero.set('cardano', null) +changehero.set('cardano', 'cardano') changehero.set('cardanotestnet', null) changehero.set('celo', null) changehero.set('coreum', null) -changehero.set('cosmoshub', null) -changehero.set('dash', null) -changehero.set('digibyte', null) -changehero.set('dogecoin', null) +changehero.set('cosmoshub', 'cosmos') +changehero.set('dash', 'dash') +changehero.set('digibyte', 'digibyte') +changehero.set('dogecoin', 'doge') changehero.set('eboost', null) -changehero.set('ecash', null) +changehero.set('ecash', 'xec') changehero.set('eos', null) changehero.set('ethDev', null) -changehero.set('ethereum', null) -changehero.set('ethereumclassic', null) +changehero.set('ethereum', 'ethereum') +changehero.set('ethereumclassic', 'ethereum_classic') changehero.set('ethereumpow', null) -changehero.set('fantom', null) +changehero.set('fantom', 'ftm') changehero.set('feathercoin', null) changehero.set('filecoin', null) changehero.set('filecoinfevm', null) changehero.set('filecoinfevmcalibration', null) changehero.set('fio', null) changehero.set('groestlcoin', null) -changehero.set('hedera', null) +changehero.set('hedera', 'hedera') changehero.set('holesky', null) -changehero.set('hyperevm', null) +changehero.set('hyperevm', 'hypeevm') changehero.set('liberland', null) changehero.set('liberlandtestnet', null) -changehero.set('litecoin', null) -changehero.set('monero', null) -changehero.set('optimism', null) +changehero.set('litecoin', 'litecoin') +changehero.set('monero', 'monero') +changehero.set('optimism', 'optimism') changehero.set('osmosis', null) changehero.set('piratechain', null) changehero.set('pivx', null) -changehero.set('polkadot', null) -changehero.set('polygon', null) +changehero.set('polkadot', 'polkadot') +changehero.set('polygon', 'polygon') changehero.set('pulsechain', null) -changehero.set('qtum', null) +changehero.set('qtum', 'qtum') changehero.set('ravencoin', null) -changehero.set('ripple', null) +changehero.set('ripple', 'ripple') changehero.set('rsk', null) changehero.set('sepolia', null) changehero.set('smartcash', null) -changehero.set('solana', null) +changehero.set('solana', 'solana') changehero.set('sonic', null) -changehero.set('stellar', null) -changehero.set('sui', null) +changehero.set('stellar', 'stellar') +changehero.set('sui', 'sui') changehero.set('suitestnet', null) changehero.set('telos', null) -changehero.set('tezos', null) +changehero.set('tezos', 'tezos') changehero.set('thorchainrune', null) changehero.set('thorchainrunestagenet', null) -changehero.set('ton', null) -changehero.set('tron', null) +changehero.set('ton', 'ton') +changehero.set('tron', 'tron') changehero.set('ufo', null) changehero.set('vertcoin', null) changehero.set('wax', null) changehero.set('zano', null) -changehero.set('zcash', null) +changehero.set('zcash', 'zcash') changehero.set('zcoin', null) changehero.set('zksync', null) diff --git a/src/mappings/changenow.ts b/src/mappings/changenow.ts index 017c09e5..041dad58 100644 --- a/src/mappings/changenow.ts +++ b/src/mappings/changenow.ts @@ -15,83 +15,83 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const changenow = new Map() changenow.set('abstract', null) -changenow.set('algorand', null) +changenow.set('algorand', 'algo') changenow.set('amoy', null) -changenow.set('arbitrum', null) -changenow.set('avalanche', null) -changenow.set('axelar', null) +changenow.set('arbitrum', 'arbitrum') +changenow.set('avalanche', 'avaxc') +changenow.set('axelar', 'axl') changenow.set('badcoin', null) -changenow.set('base', null) -changenow.set('binance', null) -changenow.set('binancesmartchain', null) -changenow.set('bitcoin', null) -changenow.set('bitcoincash', null) +changenow.set('base', 'base') +changenow.set('binance', 'bnb') +changenow.set('binancesmartchain', 'bsc') +changenow.set('bitcoin', 'btc') +changenow.set('bitcoincash', 'bch') changenow.set('bitcoincashtestnet', null) -changenow.set('bitcoingold', null) +changenow.set('bitcoingold', 'btg') changenow.set('bitcoingoldtestnet', null) -changenow.set('bitcoinsv', null) +changenow.set('bitcoinsv', 'bsv') changenow.set('bitcointestnet', null) changenow.set('bitcointestnet4', null) changenow.set('bobevm', null) changenow.set('botanix', null) changenow.set('calibration', null) -changenow.set('cardano', null) +changenow.set('cardano', 'ada') changenow.set('cardanotestnet', null) -changenow.set('celo', null) -changenow.set('coreum', null) -changenow.set('cosmoshub', null) -changenow.set('dash', null) -changenow.set('digibyte', null) -changenow.set('dogecoin', null) +changenow.set('celo', 'celo') +changenow.set('coreum', 'coreum') +changenow.set('cosmoshub', 'atom') +changenow.set('dash', 'dash') +changenow.set('digibyte', 'dgb') +changenow.set('dogecoin', 'doge') changenow.set('eboost', null) -changenow.set('ecash', null) +changenow.set('ecash', 'xec') changenow.set('eos', null) changenow.set('ethDev', null) -changenow.set('ethereum', null) -changenow.set('ethereumclassic', null) -changenow.set('ethereumpow', null) -changenow.set('fantom', null) +changenow.set('ethereum', 'eth') +changenow.set('ethereumclassic', 'etc') +changenow.set('ethereumpow', 'ethw') +changenow.set('fantom', 'ftm') changenow.set('feathercoin', null) -changenow.set('filecoin', null) +changenow.set('filecoin', 'fil') changenow.set('filecoinfevm', null) changenow.set('filecoinfevmcalibration', null) changenow.set('fio', null) changenow.set('groestlcoin', null) -changenow.set('hedera', null) +changenow.set('hedera', 'hbar') changenow.set('holesky', null) changenow.set('hyperevm', null) changenow.set('liberland', null) changenow.set('liberlandtestnet', null) -changenow.set('litecoin', null) -changenow.set('monero', null) -changenow.set('optimism', null) -changenow.set('osmosis', null) +changenow.set('litecoin', 'ltc') +changenow.set('monero', 'xmr') +changenow.set('optimism', 'op') +changenow.set('osmosis', 'osmo') changenow.set('piratechain', null) -changenow.set('pivx', null) +changenow.set('pivx', 'pivx') changenow.set('polkadot', null) -changenow.set('polygon', null) -changenow.set('pulsechain', null) -changenow.set('qtum', null) -changenow.set('ravencoin', null) -changenow.set('ripple', null) +changenow.set('polygon', 'matic') +changenow.set('pulsechain', 'pulse') +changenow.set('qtum', 'qtum') +changenow.set('ravencoin', 'rvn') +changenow.set('ripple', 'xrp') changenow.set('rsk', null) changenow.set('sepolia', null) changenow.set('smartcash', null) -changenow.set('solana', null) -changenow.set('sonic', null) -changenow.set('stellar', null) -changenow.set('sui', null) +changenow.set('solana', 'sol') +changenow.set('sonic', 'sonic') +changenow.set('stellar', 'xlm') +changenow.set('sui', 'sui') changenow.set('suitestnet', null) changenow.set('telos', null) -changenow.set('tezos', null) +changenow.set('tezos', 'xtz') changenow.set('thorchainrune', null) changenow.set('thorchainrunestagenet', null) -changenow.set('ton', null) -changenow.set('tron', null) +changenow.set('ton', 'ton') +changenow.set('tron', 'trx') changenow.set('ufo', null) changenow.set('vertcoin', null) changenow.set('wax', null) changenow.set('zano', null) -changenow.set('zcash', null) -changenow.set('zcoin', null) -changenow.set('zksync', null) +changenow.set('zcash', 'zec') +changenow.set('zcoin', 'firo') +changenow.set('zksync', 'zksync') diff --git a/src/mappings/exolix.ts b/src/mappings/exolix.ts index 48d15b1e..63e91fed 100644 --- a/src/mappings/exolix.ts +++ b/src/mappings/exolix.ts @@ -15,17 +15,17 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const exolix = new Map() exolix.set('abstract', null) -exolix.set('algorand', null) +exolix.set('algorand', 'ALGO') exolix.set('amoy', null) -exolix.set('arbitrum', null) -exolix.set('avalanche', null) +exolix.set('arbitrum', 'ARBITRUM') +exolix.set('avalanche', 'AVAXC') exolix.set('axelar', null) exolix.set('badcoin', null) -exolix.set('base', null) +exolix.set('base', 'BASE') exolix.set('binance', null) -exolix.set('binancesmartchain', null) -exolix.set('bitcoin', null) -exolix.set('bitcoincash', null) +exolix.set('binancesmartchain', 'BSC') +exolix.set('bitcoin', 'BTC') +exolix.set('bitcoincash', 'BCH') exolix.set('bitcoincashtestnet', null) exolix.set('bitcoingold', null) exolix.set('bitcoingoldtestnet', null) @@ -35,63 +35,63 @@ exolix.set('bitcointestnet4', null) exolix.set('bobevm', null) exolix.set('botanix', null) exolix.set('calibration', null) -exolix.set('cardano', null) +exolix.set('cardano', 'ADA') exolix.set('cardanotestnet', null) -exolix.set('celo', null) +exolix.set('celo', 'CELO') exolix.set('coreum', null) -exolix.set('cosmoshub', null) -exolix.set('dash', null) -exolix.set('digibyte', null) -exolix.set('dogecoin', null) +exolix.set('cosmoshub', 'ATOM') +exolix.set('dash', 'DASH') +exolix.set('digibyte', 'DGB') +exolix.set('dogecoin', 'DOGE') exolix.set('eboost', null) -exolix.set('ecash', null) -exolix.set('eos', null) +exolix.set('ecash', 'XEC') +exolix.set('eos', 'EOS') exolix.set('ethDev', null) -exolix.set('ethereum', null) -exolix.set('ethereumclassic', null) +exolix.set('ethereum', 'ETH') +exolix.set('ethereumclassic', 'ETC') exolix.set('ethereumpow', null) -exolix.set('fantom', null) +exolix.set('fantom', 'FTM') exolix.set('feathercoin', null) -exolix.set('filecoin', null) +exolix.set('filecoin', 'FIL') exolix.set('filecoinfevm', null) exolix.set('filecoinfevmcalibration', null) exolix.set('fio', null) exolix.set('groestlcoin', null) -exolix.set('hedera', null) +exolix.set('hedera', 'HBAR') exolix.set('holesky', null) exolix.set('hyperevm', null) exolix.set('liberland', null) exolix.set('liberlandtestnet', null) -exolix.set('litecoin', null) -exolix.set('monero', null) -exolix.set('optimism', null) -exolix.set('osmosis', null) -exolix.set('piratechain', null) -exolix.set('pivx', null) +exolix.set('litecoin', 'LTC') +exolix.set('monero', 'XMR') +exolix.set('optimism', 'OPTIMISM') +exolix.set('osmosis', 'OSMO') +exolix.set('piratechain', 'ARRR') +exolix.set('pivx', 'PIVX') exolix.set('polkadot', null) -exolix.set('polygon', null) +exolix.set('polygon', 'MATIC') exolix.set('pulsechain', null) -exolix.set('qtum', null) -exolix.set('ravencoin', null) -exolix.set('ripple', null) +exolix.set('qtum', 'QTUM') +exolix.set('ravencoin', 'RVN') +exolix.set('ripple', 'XRP') exolix.set('rsk', null) exolix.set('sepolia', null) exolix.set('smartcash', null) -exolix.set('solana', null) +exolix.set('solana', 'SOL') exolix.set('sonic', null) -exolix.set('stellar', null) -exolix.set('sui', null) +exolix.set('stellar', 'XLM') +exolix.set('sui', 'SUI') exolix.set('suitestnet', null) -exolix.set('telos', null) -exolix.set('tezos', null) -exolix.set('thorchainrune', null) +exolix.set('telos', 'TELOS') +exolix.set('tezos', 'XTZ') +exolix.set('thorchainrune', 'RUNE') exolix.set('thorchainrunestagenet', null) -exolix.set('ton', null) -exolix.set('tron', null) +exolix.set('ton', 'TON') +exolix.set('tron', 'TRX') exolix.set('ufo', null) exolix.set('vertcoin', null) exolix.set('wax', null) -exolix.set('zano', null) +exolix.set('zano', 'ZANO') exolix.set('zcash', null) exolix.set('zcoin', null) exolix.set('zksync', null) diff --git a/src/mappings/godex.ts b/src/mappings/godex.ts index 4091d17f..3c38af2c 100644 --- a/src/mappings/godex.ts +++ b/src/mappings/godex.ts @@ -15,21 +15,21 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const godex = new Map() godex.set('abstract', null) -godex.set('algorand', null) +godex.set('algorand', 'ALGO') godex.set('amoy', null) -godex.set('arbitrum', null) -godex.set('avalanche', null) -godex.set('axelar', null) +godex.set('arbitrum', 'ARBITRUM') +godex.set('avalanche', 'AVAXC') +godex.set('axelar', 'WAXL') godex.set('badcoin', null) -godex.set('base', null) -godex.set('binance', null) -godex.set('binancesmartchain', null) -godex.set('bitcoin', null) -godex.set('bitcoincash', null) +godex.set('base', 'BASE') +godex.set('binance', 'BNB') +godex.set('binancesmartchain', 'BSC') +godex.set('bitcoin', 'BTC') +godex.set('bitcoincash', 'BCH') godex.set('bitcoincashtestnet', null) -godex.set('bitcoingold', null) +godex.set('bitcoingold', 'BTG') godex.set('bitcoingoldtestnet', null) -godex.set('bitcoinsv', null) +godex.set('bitcoinsv', 'BSV') godex.set('bitcointestnet', null) godex.set('bitcointestnet4', null) godex.set('bobevm', null) @@ -37,61 +37,61 @@ godex.set('botanix', null) godex.set('calibration', null) godex.set('cardano', null) godex.set('cardanotestnet', null) -godex.set('celo', null) +godex.set('celo', 'CELO') godex.set('coreum', null) -godex.set('cosmoshub', null) -godex.set('dash', null) -godex.set('digibyte', null) -godex.set('dogecoin', null) +godex.set('cosmoshub', 'ATOM') +godex.set('dash', 'DASH') +godex.set('digibyte', 'DGB') +godex.set('dogecoin', 'DOGE') godex.set('eboost', null) -godex.set('ecash', null) -godex.set('eos', null) +godex.set('ecash', 'XEC') +godex.set('eos', 'EOS') godex.set('ethDev', null) -godex.set('ethereum', null) -godex.set('ethereumclassic', null) -godex.set('ethereumpow', null) -godex.set('fantom', null) +godex.set('ethereum', 'ETH') +godex.set('ethereumclassic', 'ETC') +godex.set('ethereumpow', 'ETHW') +godex.set('fantom', 'FTM') godex.set('feathercoin', null) -godex.set('filecoin', null) +godex.set('filecoin', 'FIL') godex.set('filecoinfevm', null) godex.set('filecoinfevmcalibration', null) -godex.set('fio', null) +godex.set('fio', 'FIO') godex.set('groestlcoin', null) -godex.set('hedera', null) +godex.set('hedera', 'HBAR') godex.set('holesky', null) godex.set('hyperevm', null) godex.set('liberland', null) godex.set('liberlandtestnet', null) -godex.set('litecoin', null) -godex.set('monero', null) -godex.set('optimism', null) -godex.set('osmosis', null) +godex.set('litecoin', 'LTC') +godex.set('monero', 'XMR') +godex.set('optimism', 'OPTIMISM') +godex.set('osmosis', 'OSMO') godex.set('piratechain', null) -godex.set('pivx', null) +godex.set('pivx', 'PIVX') godex.set('polkadot', null) -godex.set('polygon', null) +godex.set('polygon', 'MATIC') godex.set('pulsechain', null) -godex.set('qtum', null) -godex.set('ravencoin', null) -godex.set('ripple', null) -godex.set('rsk', null) +godex.set('qtum', 'QTUM') +godex.set('ravencoin', 'RVN') +godex.set('ripple', 'XRP') +godex.set('rsk', 'RSK') godex.set('sepolia', null) godex.set('smartcash', null) -godex.set('solana', null) +godex.set('solana', 'SOL') godex.set('sonic', null) -godex.set('stellar', null) -godex.set('sui', null) +godex.set('stellar', 'XLM') +godex.set('sui', 'SUI') godex.set('suitestnet', null) godex.set('telos', null) -godex.set('tezos', null) -godex.set('thorchainrune', null) +godex.set('tezos', 'XTZ') +godex.set('thorchainrune', 'RUNE') godex.set('thorchainrunestagenet', null) -godex.set('ton', null) -godex.set('tron', null) +godex.set('ton', 'TON') +godex.set('tron', 'TRX') godex.set('ufo', null) godex.set('vertcoin', null) -godex.set('wax', null) +godex.set('wax', 'WAX') godex.set('zano', null) godex.set('zcash', null) -godex.set('zcoin', null) -godex.set('zksync', null) +godex.set('zcoin', 'FIRO') +godex.set('zksync', 'ZKSYNC') diff --git a/src/mappings/letsexchange.ts b/src/mappings/letsexchange.ts index 02d67c10..e5895d5d 100644 --- a/src/mappings/letsexchange.ts +++ b/src/mappings/letsexchange.ts @@ -15,83 +15,83 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const letsexchange = new Map() letsexchange.set('abstract', null) -letsexchange.set('algorand', null) +letsexchange.set('algorand', 'ALGO') letsexchange.set('amoy', null) -letsexchange.set('arbitrum', null) -letsexchange.set('avalanche', null) -letsexchange.set('axelar', null) +letsexchange.set('arbitrum', 'ARBITRUM') +letsexchange.set('avalanche', 'AVAXC') +letsexchange.set('axelar', 'WAXL') letsexchange.set('badcoin', null) letsexchange.set('base', null) -letsexchange.set('binance', null) -letsexchange.set('binancesmartchain', null) -letsexchange.set('bitcoin', null) -letsexchange.set('bitcoincash', null) +letsexchange.set('binance', 'BEP2') +letsexchange.set('binancesmartchain', 'BEP20') +letsexchange.set('bitcoin', 'BTC') +letsexchange.set('bitcoincash', 'BCH') letsexchange.set('bitcoincashtestnet', null) -letsexchange.set('bitcoingold', null) +letsexchange.set('bitcoingold', 'BTG') letsexchange.set('bitcoingoldtestnet', null) -letsexchange.set('bitcoinsv', null) +letsexchange.set('bitcoinsv', 'BSV') letsexchange.set('bitcointestnet', null) letsexchange.set('bitcointestnet4', null) letsexchange.set('bobevm', null) letsexchange.set('botanix', null) letsexchange.set('calibration', null) -letsexchange.set('cardano', null) +letsexchange.set('cardano', 'ADA') letsexchange.set('cardanotestnet', null) -letsexchange.set('celo', null) -letsexchange.set('coreum', null) -letsexchange.set('cosmoshub', null) -letsexchange.set('dash', null) -letsexchange.set('digibyte', null) -letsexchange.set('dogecoin', null) +letsexchange.set('celo', 'CELO') +letsexchange.set('coreum', 'COREUM') +letsexchange.set('cosmoshub', 'ATOM') +letsexchange.set('dash', 'DASH') +letsexchange.set('digibyte', 'DGB') +letsexchange.set('dogecoin', 'DOGE') letsexchange.set('eboost', null) -letsexchange.set('ecash', null) -letsexchange.set('eos', null) +letsexchange.set('ecash', 'XEC') +letsexchange.set('eos', 'EOS') letsexchange.set('ethDev', null) -letsexchange.set('ethereum', null) -letsexchange.set('ethereumclassic', null) -letsexchange.set('ethereumpow', null) -letsexchange.set('fantom', null) +letsexchange.set('ethereum', 'ERC20') +letsexchange.set('ethereumclassic', 'ETC') +letsexchange.set('ethereumpow', 'ETHW') +letsexchange.set('fantom', 'FTM') letsexchange.set('feathercoin', null) -letsexchange.set('filecoin', null) +letsexchange.set('filecoin', 'FIL') letsexchange.set('filecoinfevm', null) letsexchange.set('filecoinfevmcalibration', null) -letsexchange.set('fio', null) -letsexchange.set('groestlcoin', null) -letsexchange.set('hedera', null) +letsexchange.set('fio', 'FIO') +letsexchange.set('groestlcoin', 'GRS') +letsexchange.set('hedera', 'HBAR') letsexchange.set('holesky', null) -letsexchange.set('hyperevm', null) +letsexchange.set('hyperevm', 'HYPE') letsexchange.set('liberland', null) letsexchange.set('liberlandtestnet', null) -letsexchange.set('litecoin', null) -letsexchange.set('monero', null) -letsexchange.set('optimism', null) -letsexchange.set('osmosis', null) -letsexchange.set('piratechain', null) -letsexchange.set('pivx', null) -letsexchange.set('polkadot', null) -letsexchange.set('polygon', null) -letsexchange.set('pulsechain', null) -letsexchange.set('qtum', null) -letsexchange.set('ravencoin', null) -letsexchange.set('ripple', null) -letsexchange.set('rsk', null) +letsexchange.set('litecoin', 'LTC') +letsexchange.set('monero', 'XMR') +letsexchange.set('optimism', 'OPTIMISM') +letsexchange.set('osmosis', 'OSMO') +letsexchange.set('piratechain', 'ARRR') +letsexchange.set('pivx', 'PIVX') +letsexchange.set('polkadot', 'DOT') +letsexchange.set('polygon', 'POL') +letsexchange.set('pulsechain', 'PLS') +letsexchange.set('qtum', 'QTUM') +letsexchange.set('ravencoin', 'RVN') +letsexchange.set('ripple', 'XRP') +letsexchange.set('rsk', 'RSK') letsexchange.set('sepolia', null) letsexchange.set('smartcash', null) -letsexchange.set('solana', null) -letsexchange.set('sonic', null) -letsexchange.set('stellar', null) -letsexchange.set('sui', null) +letsexchange.set('solana', 'SOL') +letsexchange.set('sonic', 'SONIC') +letsexchange.set('stellar', 'XLM') +letsexchange.set('sui', 'SUI') letsexchange.set('suitestnet', null) -letsexchange.set('telos', null) -letsexchange.set('tezos', null) -letsexchange.set('thorchainrune', null) +letsexchange.set('telos', 'TLOS') +letsexchange.set('tezos', 'XTZ') +letsexchange.set('thorchainrune', 'RUNE') letsexchange.set('thorchainrunestagenet', null) -letsexchange.set('ton', null) -letsexchange.set('tron', null) +letsexchange.set('ton', 'TON') +letsexchange.set('tron', 'TRC20') letsexchange.set('ufo', null) letsexchange.set('vertcoin', null) -letsexchange.set('wax', null) -letsexchange.set('zano', null) -letsexchange.set('zcash', null) -letsexchange.set('zcoin', null) -letsexchange.set('zksync', null) +letsexchange.set('wax', 'WAX') +letsexchange.set('zano', 'ZANO') +letsexchange.set('zcash', 'ZEC') +letsexchange.set('zcoin', 'FIRO') +letsexchange.set('zksync', 'ZKSERA') diff --git a/src/mappings/lifi.ts b/src/mappings/lifi.ts index b4675324..9a2fc16d 100644 --- a/src/mappings/lifi.ts +++ b/src/mappings/lifi.ts @@ -17,13 +17,13 @@ export const lifi = new Map() lifi.set('abstract', null) lifi.set('algorand', null) lifi.set('amoy', null) -lifi.set('arbitrum', null) -lifi.set('avalanche', null) +lifi.set('arbitrum', 'arb') +lifi.set('avalanche', 'ava') lifi.set('axelar', null) lifi.set('badcoin', null) -lifi.set('base', null) +lifi.set('base', 'bas') lifi.set('binance', null) -lifi.set('binancesmartchain', null) +lifi.set('binancesmartchain', 'bsc') lifi.set('bitcoin', null) lifi.set('bitcoincash', null) lifi.set('bitcoincashtestnet', null) @@ -37,7 +37,7 @@ lifi.set('botanix', null) lifi.set('calibration', null) lifi.set('cardano', null) lifi.set('cardanotestnet', null) -lifi.set('celo', null) +lifi.set('celo', 'cel') lifi.set('coreum', null) lifi.set('cosmoshub', null) lifi.set('dash', null) @@ -47,10 +47,10 @@ lifi.set('eboost', null) lifi.set('ecash', null) lifi.set('eos', null) lifi.set('ethDev', null) -lifi.set('ethereum', null) +lifi.set('ethereum', 'eth') lifi.set('ethereumclassic', null) lifi.set('ethereumpow', null) -lifi.set('fantom', null) +lifi.set('fantom', 'ftm') lifi.set('feathercoin', null) lifi.set('filecoin', null) lifi.set('filecoinfevm', null) @@ -59,28 +59,28 @@ lifi.set('fio', null) lifi.set('groestlcoin', null) lifi.set('hedera', null) lifi.set('holesky', null) -lifi.set('hyperevm', null) +lifi.set('hyperevm', 'hyp') lifi.set('liberland', null) lifi.set('liberlandtestnet', null) lifi.set('litecoin', null) lifi.set('monero', null) -lifi.set('optimism', null) +lifi.set('optimism', 'opt') lifi.set('osmosis', null) lifi.set('piratechain', null) lifi.set('pivx', null) lifi.set('polkadot', null) -lifi.set('polygon', null) +lifi.set('polygon', 'pol') lifi.set('pulsechain', null) lifi.set('qtum', null) lifi.set('ravencoin', null) lifi.set('ripple', null) -lifi.set('rsk', null) +lifi.set('rsk', 'rsk') lifi.set('sepolia', null) lifi.set('smartcash', null) -lifi.set('solana', null) +lifi.set('solana', 'sol') lifi.set('sonic', null) lifi.set('stellar', null) -lifi.set('sui', null) +lifi.set('sui', 'sui') lifi.set('suitestnet', null) lifi.set('telos', null) lifi.set('tezos', null) @@ -94,4 +94,4 @@ lifi.set('wax', null) lifi.set('zano', null) lifi.set('zcash', null) lifi.set('zcoin', null) -lifi.set('zksync', null) +lifi.set('zksync', 'era') diff --git a/src/mappings/mayaprotocol.ts b/src/mappings/mayaprotocol.ts index ea733762..e6ea048f 100644 --- a/src/mappings/mayaprotocol.ts +++ b/src/mappings/mayaprotocol.ts @@ -17,14 +17,14 @@ export const mayaprotocol = new Map() mayaprotocol.set('abstract', null) mayaprotocol.set('algorand', null) mayaprotocol.set('amoy', null) -mayaprotocol.set('arbitrum', null) +mayaprotocol.set('arbitrum', 'ARB') mayaprotocol.set('avalanche', null) mayaprotocol.set('axelar', null) mayaprotocol.set('badcoin', null) mayaprotocol.set('base', null) mayaprotocol.set('binance', null) mayaprotocol.set('binancesmartchain', null) -mayaprotocol.set('bitcoin', null) +mayaprotocol.set('bitcoin', 'BTC') mayaprotocol.set('bitcoincash', null) mayaprotocol.set('bitcoincashtestnet', null) mayaprotocol.set('bitcoingold', null) @@ -40,14 +40,14 @@ mayaprotocol.set('cardanotestnet', null) mayaprotocol.set('celo', null) mayaprotocol.set('coreum', null) mayaprotocol.set('cosmoshub', null) -mayaprotocol.set('dash', null) +mayaprotocol.set('dash', 'DASH') mayaprotocol.set('digibyte', null) mayaprotocol.set('dogecoin', null) mayaprotocol.set('eboost', null) mayaprotocol.set('ecash', null) mayaprotocol.set('eos', null) mayaprotocol.set('ethDev', null) -mayaprotocol.set('ethereum', null) +mayaprotocol.set('ethereum', 'ETH') mayaprotocol.set('ethereumclassic', null) mayaprotocol.set('ethereumpow', null) mayaprotocol.set('fantom', null) @@ -84,7 +84,7 @@ mayaprotocol.set('sui', null) mayaprotocol.set('suitestnet', null) mayaprotocol.set('telos', null) mayaprotocol.set('tezos', null) -mayaprotocol.set('thorchainrune', null) +mayaprotocol.set('thorchainrune', 'THOR') mayaprotocol.set('thorchainrunestagenet', null) mayaprotocol.set('ton', null) mayaprotocol.set('tron', null) @@ -92,6 +92,6 @@ mayaprotocol.set('ufo', null) mayaprotocol.set('vertcoin', null) mayaprotocol.set('wax', null) mayaprotocol.set('zano', null) -mayaprotocol.set('zcash', null) +mayaprotocol.set('zcash', 'ZEC') mayaprotocol.set('zcoin', null) mayaprotocol.set('zksync', null) diff --git a/src/mappings/rango.ts b/src/mappings/rango.ts index 839aed25..0158e962 100644 --- a/src/mappings/rango.ts +++ b/src/mappings/rango.ts @@ -17,14 +17,14 @@ export const rango = new Map() rango.set('abstract', null) rango.set('algorand', null) rango.set('amoy', null) -rango.set('arbitrum', null) -rango.set('avalanche', null) -rango.set('axelar', null) +rango.set('arbitrum', 'ARBITRUM') +rango.set('avalanche', 'AVAX_CCHAIN') +rango.set('axelar', 'AXELAR') rango.set('badcoin', null) -rango.set('base', null) +rango.set('base', 'BASE') rango.set('binance', null) -rango.set('binancesmartchain', null) -rango.set('bitcoin', null) +rango.set('binancesmartchain', 'BSC') +rango.set('bitcoin', 'BTC') rango.set('bitcoincash', null) rango.set('bitcoincashtestnet', null) rango.set('bitcoingold', null) @@ -37,9 +37,9 @@ rango.set('botanix', null) rango.set('calibration', null) rango.set('cardano', null) rango.set('cardanotestnet', null) -rango.set('celo', null) +rango.set('celo', 'CELO') rango.set('coreum', null) -rango.set('cosmoshub', null) +rango.set('cosmoshub', 'COSMOS') rango.set('dash', null) rango.set('digibyte', null) rango.set('dogecoin', null) @@ -47,10 +47,10 @@ rango.set('eboost', null) rango.set('ecash', null) rango.set('eos', null) rango.set('ethDev', null) -rango.set('ethereum', null) +rango.set('ethereum', 'ETH') rango.set('ethereumclassic', null) rango.set('ethereumpow', null) -rango.set('fantom', null) +rango.set('fantom', 'FANTOM') rango.set('feathercoin', null) rango.set('filecoin', null) rango.set('filecoinfevm', null) @@ -64,12 +64,12 @@ rango.set('liberland', null) rango.set('liberlandtestnet', null) rango.set('litecoin', null) rango.set('monero', null) -rango.set('optimism', null) -rango.set('osmosis', null) +rango.set('optimism', 'OPTIMISM') +rango.set('osmosis', 'OSMOSIS') rango.set('piratechain', null) rango.set('pivx', null) rango.set('polkadot', null) -rango.set('polygon', null) +rango.set('polygon', 'POLYGON') rango.set('pulsechain', null) rango.set('qtum', null) rango.set('ravencoin', null) @@ -77,14 +77,14 @@ rango.set('ripple', null) rango.set('rsk', null) rango.set('sepolia', null) rango.set('smartcash', null) -rango.set('solana', null) +rango.set('solana', 'SOLANA') rango.set('sonic', null) rango.set('stellar', null) rango.set('sui', null) rango.set('suitestnet', null) rango.set('telos', null) rango.set('tezos', null) -rango.set('thorchainrune', null) +rango.set('thorchainrune', 'THOR') rango.set('thorchainrunestagenet', null) rango.set('ton', null) rango.set('tron', null) @@ -94,4 +94,4 @@ rango.set('wax', null) rango.set('zano', null) rango.set('zcash', null) rango.set('zcoin', null) -rango.set('zksync', null) +rango.set('zksync', 'ZKSYNC') diff --git a/src/mappings/sideshift.ts b/src/mappings/sideshift.ts index f69d3e91..51291594 100644 --- a/src/mappings/sideshift.ts +++ b/src/mappings/sideshift.ts @@ -15,83 +15,83 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const sideshift = new Map() sideshift.set('abstract', null) -sideshift.set('algorand', null) +sideshift.set('algorand', 'algorand') sideshift.set('amoy', null) -sideshift.set('arbitrum', null) -sideshift.set('avalanche', null) +sideshift.set('arbitrum', 'arbitrum') +sideshift.set('avalanche', 'avax') sideshift.set('axelar', null) sideshift.set('badcoin', null) -sideshift.set('base', null) +sideshift.set('base', 'base') sideshift.set('binance', null) -sideshift.set('binancesmartchain', null) -sideshift.set('bitcoin', null) -sideshift.set('bitcoincash', null) +sideshift.set('binancesmartchain', 'bsc') +sideshift.set('bitcoin', 'bitcoin') +sideshift.set('bitcoincash', 'bitcoincash') sideshift.set('bitcoincashtestnet', null) sideshift.set('bitcoingold', null) sideshift.set('bitcoingoldtestnet', null) -sideshift.set('bitcoinsv', null) +sideshift.set('bitcoinsv', 'bsv') sideshift.set('bitcointestnet', null) sideshift.set('bitcointestnet4', null) sideshift.set('bobevm', null) sideshift.set('botanix', null) sideshift.set('calibration', null) -sideshift.set('cardano', null) +sideshift.set('cardano', 'cardano') sideshift.set('cardanotestnet', null) sideshift.set('celo', null) sideshift.set('coreum', null) -sideshift.set('cosmoshub', null) -sideshift.set('dash', null) +sideshift.set('cosmoshub', 'cosmos') +sideshift.set('dash', 'dash') sideshift.set('digibyte', null) -sideshift.set('dogecoin', null) +sideshift.set('dogecoin', 'doge') sideshift.set('eboost', null) -sideshift.set('ecash', null) +sideshift.set('ecash', 'xec') sideshift.set('eos', null) sideshift.set('ethDev', null) -sideshift.set('ethereum', null) -sideshift.set('ethereumclassic', null) +sideshift.set('ethereum', 'ethereum') +sideshift.set('ethereumclassic', 'etc') sideshift.set('ethereumpow', null) -sideshift.set('fantom', null) +sideshift.set('fantom', 'fantom') sideshift.set('feathercoin', null) sideshift.set('filecoin', null) sideshift.set('filecoinfevm', null) sideshift.set('filecoinfevmcalibration', null) sideshift.set('fio', null) -sideshift.set('groestlcoin', null) +sideshift.set('groestlcoin', 'grs') sideshift.set('hedera', null) sideshift.set('holesky', null) sideshift.set('hyperevm', null) sideshift.set('liberland', null) sideshift.set('liberlandtestnet', null) -sideshift.set('litecoin', null) -sideshift.set('monero', null) -sideshift.set('optimism', null) +sideshift.set('litecoin', 'litecoin') +sideshift.set('monero', 'monero') +sideshift.set('optimism', 'optimism') sideshift.set('osmosis', null) sideshift.set('piratechain', null) sideshift.set('pivx', null) -sideshift.set('polkadot', null) -sideshift.set('polygon', null) +sideshift.set('polkadot', 'polkadot') +sideshift.set('polygon', 'polygon') sideshift.set('pulsechain', null) sideshift.set('qtum', null) sideshift.set('ravencoin', null) -sideshift.set('ripple', null) -sideshift.set('rsk', null) +sideshift.set('ripple', 'ripple') +sideshift.set('rsk', 'rootstock') sideshift.set('sepolia', null) sideshift.set('smartcash', null) -sideshift.set('solana', null) -sideshift.set('sonic', null) -sideshift.set('stellar', null) -sideshift.set('sui', null) +sideshift.set('solana', 'solana') +sideshift.set('sonic', 'sonic') +sideshift.set('stellar', 'stellar') +sideshift.set('sui', 'sui') sideshift.set('suitestnet', null) sideshift.set('telos', null) -sideshift.set('tezos', null) +sideshift.set('tezos', 'tezos') sideshift.set('thorchainrune', null) sideshift.set('thorchainrunestagenet', null) -sideshift.set('ton', null) -sideshift.set('tron', null) +sideshift.set('ton', 'ton') +sideshift.set('tron', 'tron') sideshift.set('ufo', null) sideshift.set('vertcoin', null) sideshift.set('wax', null) sideshift.set('zano', null) -sideshift.set('zcash', null) +sideshift.set('zcash', 'shielded') sideshift.set('zcoin', null) -sideshift.set('zksync', null) +sideshift.set('zksync', 'zksyncera') diff --git a/src/mappings/swapuz.ts b/src/mappings/swapuz.ts index f8eeca42..593a31c1 100644 --- a/src/mappings/swapuz.ts +++ b/src/mappings/swapuz.ts @@ -15,17 +15,17 @@ import { EdgeCurrencyPluginId } from '../util/edgeCurrencyPluginIds' export const swapuz = new Map() swapuz.set('abstract', null) -swapuz.set('algorand', null) +swapuz.set('algorand', 'ALGO') swapuz.set('amoy', null) -swapuz.set('arbitrum', null) -swapuz.set('avalanche', null) +swapuz.set('arbitrum', 'ARBITRUM') +swapuz.set('avalanche', 'CCHAIN') swapuz.set('axelar', null) swapuz.set('badcoin', null) -swapuz.set('base', null) +swapuz.set('base', 'BASE') swapuz.set('binance', null) -swapuz.set('binancesmartchain', null) -swapuz.set('bitcoin', null) -swapuz.set('bitcoincash', null) +swapuz.set('binancesmartchain', 'BSC') +swapuz.set('bitcoin', 'BTC') +swapuz.set('bitcoincash', 'BCH') swapuz.set('bitcoincashtestnet', null) swapuz.set('bitcoingold', null) swapuz.set('bitcoingoldtestnet', null) @@ -35,63 +35,63 @@ swapuz.set('bitcointestnet4', null) swapuz.set('bobevm', null) swapuz.set('botanix', null) swapuz.set('calibration', null) -swapuz.set('cardano', null) +swapuz.set('cardano', 'ADA') swapuz.set('cardanotestnet', null) -swapuz.set('celo', null) +swapuz.set('celo', 'CELO') swapuz.set('coreum', null) -swapuz.set('cosmoshub', null) -swapuz.set('dash', null) -swapuz.set('digibyte', null) -swapuz.set('dogecoin', null) +swapuz.set('cosmoshub', 'ATOM') +swapuz.set('dash', 'DASH') +swapuz.set('digibyte', 'DGB') +swapuz.set('dogecoin', 'DOGE') swapuz.set('eboost', null) -swapuz.set('ecash', null) -swapuz.set('eos', null) +swapuz.set('ecash', 'XEC') +swapuz.set('eos', 'EOS') swapuz.set('ethDev', null) -swapuz.set('ethereum', null) -swapuz.set('ethereumclassic', null) +swapuz.set('ethereum', 'ETH') +swapuz.set('ethereumclassic', 'ETC') swapuz.set('ethereumpow', null) -swapuz.set('fantom', null) +swapuz.set('fantom', 'FTM') swapuz.set('feathercoin', null) -swapuz.set('filecoin', null) +swapuz.set('filecoin', 'FIL') swapuz.set('filecoinfevm', null) swapuz.set('filecoinfevmcalibration', null) swapuz.set('fio', null) swapuz.set('groestlcoin', null) -swapuz.set('hedera', null) +swapuz.set('hedera', 'HBAR') swapuz.set('holesky', null) swapuz.set('hyperevm', null) swapuz.set('liberland', null) swapuz.set('liberlandtestnet', null) -swapuz.set('litecoin', null) -swapuz.set('monero', null) -swapuz.set('optimism', null) +swapuz.set('litecoin', 'LTC') +swapuz.set('monero', 'XMR') +swapuz.set('optimism', 'OPTIMISM') swapuz.set('osmosis', null) swapuz.set('piratechain', null) swapuz.set('pivx', null) -swapuz.set('polkadot', null) -swapuz.set('polygon', null) +swapuz.set('polkadot', 'DOT') +swapuz.set('polygon', 'MATIC') swapuz.set('pulsechain', null) -swapuz.set('qtum', null) -swapuz.set('ravencoin', null) -swapuz.set('ripple', null) +swapuz.set('qtum', 'QTUM') +swapuz.set('ravencoin', 'RVN') +swapuz.set('ripple', 'XRP') swapuz.set('rsk', null) swapuz.set('sepolia', null) swapuz.set('smartcash', null) -swapuz.set('solana', null) +swapuz.set('solana', 'SOL') swapuz.set('sonic', null) -swapuz.set('stellar', null) -swapuz.set('sui', null) +swapuz.set('stellar', 'XLM') +swapuz.set('sui', 'SUI') swapuz.set('suitestnet', null) swapuz.set('telos', null) -swapuz.set('tezos', null) -swapuz.set('thorchainrune', null) +swapuz.set('tezos', 'XTZ') +swapuz.set('thorchainrune', 'THORCHAIN') swapuz.set('thorchainrunestagenet', null) -swapuz.set('ton', null) -swapuz.set('tron', null) +swapuz.set('ton', 'TON') +swapuz.set('tron', 'TRX') swapuz.set('ufo', null) swapuz.set('vertcoin', null) -swapuz.set('wax', null) +swapuz.set('wax', 'WAXP') swapuz.set('zano', null) -swapuz.set('zcash', null) +swapuz.set('zcash', 'ZEC') swapuz.set('zcoin', null) swapuz.set('zksync', null) diff --git a/src/mappings/thorchain.ts b/src/mappings/thorchain.ts index 01a5c2a1..396457d8 100644 --- a/src/mappings/thorchain.ts +++ b/src/mappings/thorchain.ts @@ -18,14 +18,14 @@ thorchain.set('abstract', null) thorchain.set('algorand', null) thorchain.set('amoy', null) thorchain.set('arbitrum', null) -thorchain.set('avalanche', null) +thorchain.set('avalanche', 'AVAX') thorchain.set('axelar', null) thorchain.set('badcoin', null) -thorchain.set('base', null) +thorchain.set('base', 'BASE') thorchain.set('binance', null) -thorchain.set('binancesmartchain', null) -thorchain.set('bitcoin', null) -thorchain.set('bitcoincash', null) +thorchain.set('binancesmartchain', 'BSC') +thorchain.set('bitcoin', 'BTC') +thorchain.set('bitcoincash', 'BCH') thorchain.set('bitcoincashtestnet', null) thorchain.set('bitcoingold', null) thorchain.set('bitcoingoldtestnet', null) @@ -42,12 +42,12 @@ thorchain.set('coreum', null) thorchain.set('cosmoshub', null) thorchain.set('dash', null) thorchain.set('digibyte', null) -thorchain.set('dogecoin', null) +thorchain.set('dogecoin', 'DOGE') thorchain.set('eboost', null) thorchain.set('ecash', null) thorchain.set('eos', null) thorchain.set('ethDev', null) -thorchain.set('ethereum', null) +thorchain.set('ethereum', 'ETH') thorchain.set('ethereumclassic', null) thorchain.set('ethereumpow', null) thorchain.set('fantom', null) @@ -62,7 +62,7 @@ thorchain.set('holesky', null) thorchain.set('hyperevm', null) thorchain.set('liberland', null) thorchain.set('liberlandtestnet', null) -thorchain.set('litecoin', null) +thorchain.set('litecoin', 'LTC') thorchain.set('monero', null) thorchain.set('optimism', null) thorchain.set('osmosis', null) @@ -73,7 +73,7 @@ thorchain.set('polygon', null) thorchain.set('pulsechain', null) thorchain.set('qtum', null) thorchain.set('ravencoin', null) -thorchain.set('ripple', null) +thorchain.set('ripple', 'XRP') thorchain.set('rsk', null) thorchain.set('sepolia', null) thorchain.set('smartcash', null) @@ -84,10 +84,10 @@ thorchain.set('sui', null) thorchain.set('suitestnet', null) thorchain.set('telos', null) thorchain.set('tezos', null) -thorchain.set('thorchainrune', null) +thorchain.set('thorchainrune', 'THOR') thorchain.set('thorchainrunestagenet', null) thorchain.set('ton', null) -thorchain.set('tron', null) +thorchain.set('tron', 'TRON') thorchain.set('ufo', null) thorchain.set('vertcoin', null) thorchain.set('wax', null) diff --git a/src/swap/central/changehero.ts b/src/swap/central/changehero.ts index 7e9931a8..c11f6c29 100644 --- a/src/swap/central/changehero.ts +++ b/src/swap/central/changehero.ts @@ -21,6 +21,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { changehero as changeheroMapping } from '../../mappings/changehero' import { ChainCodeTickerMap, checkInvalidTokenIds, @@ -30,6 +31,7 @@ import { getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -54,89 +56,9 @@ const asInitOptions = asObject({ apiKey: asString }) -export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'algorand', - amoy: null, - arbitrum: 'arbitrum', - avalanche: 'avalanche_(c-chain)', - axelar: null, - badcoin: null, - base: 'base', - binance: null, - binancesmartchain: 'binance_smart_chain', - bitcoin: 'bitcoin', - bitcoincash: 'bitcoin_cash', - bitcoincashtestnet: null, - bitcoingold: null, - bitcoingoldtestnet: null, - bitcoinsv: 'bitcoin_sv', - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'cardano', - cardanotestnet: null, - celo: null, - coreum: null, - cosmoshub: 'cosmos', - dash: 'dash', - digibyte: 'digibyte', - dogecoin: 'doge', - eboost: null, - ecash: 'xec', - eos: null, - ethDev: null, - ethereum: 'ethereum', - ethereumclassic: 'ethereum_classic', - ethereumpow: null, - fantom: 'ftm', - feathercoin: null, - filecoin: null, - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: null, - groestlcoin: null, - hedera: 'hedera', - holesky: null, - hyperevm: 'hypeevm', - liberland: null, - liberlandtestnet: null, - litecoin: 'litecoin', - monero: 'monero', - optimism: 'optimism', - osmosis: null, - piratechain: null, - pivx: null, - polkadot: 'polkadot', - polygon: 'polygon', - pulsechain: null, - qtum: 'qtum', - ravencoin: null, - ripple: 'ripple', - rsk: null, - smartcash: null, - sepolia: null, - solana: 'solana', - sonic: null, - stellar: 'stellar', - sui: 'sui', - suitestnet: null, - telos: null, - tezos: 'tezos', - thorchainrune: null, - thorchainrunestagenet: null, - ton: 'ton', - tron: 'tron', - ufo: null, - vertcoin: null, - wax: null, - zano: null, - zcash: 'zcash', - zcoin: null, - zksync: null -} +export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + changeheroMapping +) // See https://changehero.io/currencies for list of supported currencies // Or `curl -X POST 'https://api.changehero.io/v2' -H 'api-key: ' -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":"one","method":"getCurrenciesFull","params":{}}'` diff --git a/src/swap/central/changenow.ts b/src/swap/central/changenow.ts index ec61735f..2d570124 100644 --- a/src/swap/central/changenow.ts +++ b/src/swap/central/changenow.ts @@ -24,6 +24,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { changenow as changenowMapping } from '../../mappings/changenow' import { ChainCodeTickerMap, checkInvalidTokenIds, @@ -35,6 +36,7 @@ import { getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -81,89 +83,9 @@ const addressTypeMap: StringMap = { * curl 'https://api.changenow.io/v2/exchange/currencies?isFiat=false' * ``` */ -export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'algo', - amoy: null, - arbitrum: 'arbitrum', - avalanche: 'avaxc', - axelar: 'axl', - badcoin: null, - base: 'base', - binance: 'bnb', - binancesmartchain: 'bsc', - bitcoin: 'btc', - bitcoincash: 'bch', - bitcoincashtestnet: null, - bitcoingold: 'btg', - bitcoingoldtestnet: null, - bitcoinsv: 'bsv', - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'ada', - cardanotestnet: null, - celo: 'celo', - coreum: 'coreum', - cosmoshub: 'atom', - dash: 'dash', - digibyte: 'dgb', - dogecoin: 'doge', - eboost: null, - ecash: 'xec', - eos: 'eos', - ethDev: null, - ethereum: 'eth', - ethereumclassic: 'etc', - ethereumpow: 'ethw', - fantom: 'ftm', - feathercoin: null, - filecoin: 'fil', - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: 'fio', - groestlcoin: null, - hedera: 'hbar', - holesky: null, - hyperevm: null, - liberland: null, - liberlandtestnet: null, - litecoin: 'ltc', - monero: 'xmr', - optimism: 'op', - osmosis: 'osmo', - piratechain: null, - pivx: 'pivx', - polkadot: 'dot', - polygon: 'matic', - pulsechain: 'pulse', - qtum: 'qtum', - ravencoin: 'rvn', - ripple: 'xrp', - rsk: null, - smartcash: null, - sepolia: null, - solana: 'sol', - sonic: 'sonic', - stellar: 'xlm', - sui: 'sui', - suitestnet: null, - telos: null, - tezos: 'xtz', - thorchainrune: null, - thorchainrunestagenet: null, - ton: 'ton', - tron: 'trx', - ufo: null, - vertcoin: null, - wax: 'waxp', - zano: null, // 'zano' disabled until until it can be tested for integrated address/payment id - zcash: 'zec', - zcoin: 'firo', - zksync: 'zksync' -} +export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + changenowMapping +) export const SPECIAL_MAINNET_CASES: EdgeIdSwapIdMap = new Map([ ['avalanche', new Map([[null, { chainCode: 'cchain', tokenCode: 'avax' }]])] diff --git a/src/swap/central/exolix.ts b/src/swap/central/exolix.ts index 88939c5a..d3105de0 100644 --- a/src/swap/central/exolix.ts +++ b/src/swap/central/exolix.ts @@ -22,6 +22,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { exolix as exolixMapping } from '../../mappings/exolix' import { div18 } from '../../util/biggystringplus' import { checkInvalidTokenIds, @@ -31,6 +32,7 @@ import { getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -97,89 +99,9 @@ while true; do ((n++)); done */ -const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'ALGO', - amoy: null, - arbitrum: 'ARBITRUM', - avalanche: 'AVAXC', - axelar: null, - badcoin: null, - base: 'BASE', - binance: null, - binancesmartchain: 'BSC', - bitcoin: 'BTC', - bitcoincash: 'BCH', - bitcoincashtestnet: null, - bitcoingold: null, - bitcoingoldtestnet: null, - bitcoinsv: null, - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'ADA', - cardanotestnet: null, - celo: 'CELO', - coreum: null, - cosmoshub: 'ATOM', - dash: 'DASH', - digibyte: 'DGB', - dogecoin: 'DOGE', - eboost: null, - ecash: 'XEC', - eos: 'EOS', - ethDev: null, - ethereum: 'ETH', - ethereumclassic: 'ETC', - ethereumpow: null, - fantom: 'FTM', - feathercoin: null, - filecoin: 'FIL', - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: null, - groestlcoin: null, - hedera: 'HBAR', - holesky: null, - hyperevm: null, - liberland: null, - liberlandtestnet: null, - litecoin: 'LTC', - monero: 'XMR', - optimism: 'OPTIMISM', - osmosis: 'OSMO', - piratechain: 'ARRR', - pivx: 'PIVX', - polkadot: 'DOT', - polygon: 'POLYGON', - pulsechain: null, - qtum: 'QTUM', - ravencoin: 'RVN', - ripple: 'XRP', - rsk: null, - smartcash: null, - sepolia: null, - solana: 'SOL', - sonic: null, - stellar: 'XLM', - sui: 'SUI', - suitestnet: null, - telos: 'TELOS', - tezos: 'XTZ', - thorchainrune: 'RUNE', - thorchainrunestagenet: null, - ton: 'ton', - tron: 'TRX', - ufo: null, - vertcoin: null, - wax: null, - zano: 'ZANO', - zcash: 'ZEC', - zcoin: null, - zksync: null -} +const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + exolixMapping +) const orderUri = 'https://exolix.com/transaction/' const uri = 'https://exolix.com/api/v2/' diff --git a/src/swap/central/godex.ts b/src/swap/central/godex.ts index 90bc1fd5..9435962a 100644 --- a/src/swap/central/godex.ts +++ b/src/swap/central/godex.ts @@ -21,6 +21,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { godex as godexMapping } from '../../mappings/godex' import { checkInvalidTokenIds, checkWhitelistedMainnetCodes, @@ -29,6 +30,7 @@ import { getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -107,89 +109,9 @@ const INVALID_TOKEN_IDS: InvalidTokenIds = { // Network names that don't match parent network currency code // See https://godex.io/exchange-rate for list of supported currencies -const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'ALGO', - amoy: null, - arbitrum: 'ARBITRUM', - avalanche: 'AVAXC', - axelar: 'WAXL', - badcoin: null, - base: 'BASE', - binance: 'BNB', - binancesmartchain: 'BSC', - bitcoin: 'BTC', - bitcoincash: 'BCH', - bitcoincashtestnet: null, - bitcoingold: 'BTG', - bitcoingoldtestnet: null, - bitcoinsv: 'BSV', - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'ADA', - cardanotestnet: null, - celo: 'CELO', - coreum: null, - cosmoshub: 'ATOM', - dash: 'DASH', - digibyte: 'DGB', - dogecoin: 'DOGE', - eboost: null, - ecash: 'XEC', - eos: 'EOS', - ethDev: null, - ethereum: 'ETH', - ethereumclassic: 'ETC', - ethereumpow: 'ETHW', - fantom: 'FTM', - feathercoin: null, - filecoin: 'FIL', - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: 'FIO', - groestlcoin: null, - hedera: 'HBAR', - holesky: null, - hyperevm: null, - liberland: null, - liberlandtestnet: null, - litecoin: 'LTC', - monero: 'XMR', - optimism: 'OPTIMISM', - osmosis: 'OSMO', - piratechain: null, - pivx: 'PIVX', - polkadot: 'DOT', - polygon: 'MATIC', - pulsechain: null, - qtum: 'QTUM', - ravencoin: 'RVN', - ripple: 'XRP', - rsk: 'RSK', - smartcash: null, - sepolia: null, - solana: 'SOL', - sonic: null, - stellar: 'XLM', - sui: 'SUI', - suitestnet: null, - telos: 'TLOS', - tezos: 'XTZ', - thorchainrune: 'RUNE', - thorchainrunestagenet: null, - ton: 'TON', - tron: 'TRX', - ufo: null, - vertcoin: null, - wax: 'WAX', - zano: null, - zcash: 'ZEC', - zcoin: 'FIRO', - zksync: 'ZKSYNC' -} +const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + godexMapping +) export function makeGodexPlugin(opts: EdgeCorePluginOptions): EdgeSwapPlugin { const { io, log } = opts diff --git a/src/swap/central/letsexchange.ts b/src/swap/central/letsexchange.ts index f7935a0c..c12fe52c 100644 --- a/src/swap/central/letsexchange.ts +++ b/src/swap/central/letsexchange.ts @@ -20,6 +20,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { letsexchange as letsexchangeMapping } from '../../mappings/letsexchange' import { ChainCodeTickerMap, checkInvalidTokenIds, @@ -30,6 +31,7 @@ import { getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -86,89 +88,9 @@ const addressTypeMap: StringMap = { // See https://letsexchange.io/exchange-pairs for list of supported currencies // Or `curl -X GET 'https://api.letsexchange.io/api/v2/coins' -H 'Authorization: Bearer ' | jq .` -export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'ALGO', - amoy: null, - arbitrum: 'ARBITRUM', - avalanche: 'AVAXC', - axelar: 'WAXL', - badcoin: null, - base: null, - binance: 'BEP2', - binancesmartchain: 'BEP20', - bitcoin: 'BTC', - bitcoincash: 'BCH', - bitcoincashtestnet: null, - bitcoingold: 'BTG', - bitcoingoldtestnet: null, - bitcoinsv: 'BSV', - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'ADA', - cardanotestnet: null, - celo: 'CELO', - coreum: 'COREUM', - cosmoshub: 'ATOM', - dash: 'DASH', - digibyte: 'DGB', - dogecoin: 'DOGE', - eboost: null, - ecash: 'XEC', - eos: 'EOS', - ethDev: null, - ethereum: 'ERC20', - ethereumclassic: 'ETC', - ethereumpow: 'ETHW', - fantom: 'FTM', - feathercoin: null, - filecoin: 'FIL', - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: 'FIO', - groestlcoin: 'GRS', - hedera: 'HBAR', - holesky: null, - hyperevm: 'HYPE', - liberland: null, - liberlandtestnet: null, - litecoin: 'LTC', - monero: 'XMR', - optimism: 'OPTIMISM', - osmosis: 'OSMO', - piratechain: 'ARRR', - pivx: 'PIVX', - polkadot: 'DOT', - polygon: 'POL', - pulsechain: 'PLS', - qtum: 'QTUM', - ravencoin: 'RVN', - ripple: 'XRP', - rsk: 'RSK', - smartcash: null, - sepolia: null, - solana: 'SOL', - sonic: 'SONIC', - stellar: 'XLM', - sui: 'SUI', - suitestnet: null, - telos: 'TLOS', - tezos: 'XTZ', - thorchainrune: 'RUNE', - thorchainrunestagenet: null, - ton: 'TON', - tron: 'TRC20', - ufo: null, - vertcoin: null, - wax: 'WAX', - zano: 'ZANO', - zcash: 'ZEC', - zcoin: 'FIRO', - zksync: 'ZKSERA' -} +export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + letsexchangeMapping +) export const SPECIAL_MAINNET_CASES: EdgeIdSwapIdMap = new Map([ // axelar: new Map([[null, 'WAXL']]), // currentlyly disabled diff --git a/src/swap/central/sideshift.ts b/src/swap/central/sideshift.ts index 2bfc9ecf..811c9cbc 100644 --- a/src/swap/central/sideshift.ts +++ b/src/swap/central/sideshift.ts @@ -25,6 +25,7 @@ import { SwapPermissionError } from 'edge-core-js/types' +import { sideshift as sideshiftMapping } from '../../mappings/sideshift' import { ChainCodeTickerMap, checkWhitelistedMainnetCodes, @@ -33,6 +34,7 @@ import { getChainAndTokenCodes, getMaxSwappable, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -45,89 +47,9 @@ import { import { EdgeSwapRequestPlugin, StringMap } from '../types' // See https://help.sideshift.ai/en/articles/4559664-which-coins-and-tokens-are-listed for list of supported currencies -export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'algorand', - amoy: null, - arbitrum: 'arbitrum', - avalanche: 'avax', - axelar: null, - badcoin: null, - base: 'base', - binance: null, - binancesmartchain: 'bsc', - bitcoin: 'bitcoin', - bitcoincash: 'bitcoincash', - bitcoincashtestnet: null, - bitcoingold: null, - bitcoingoldtestnet: null, - bitcoinsv: 'bsv', - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'cardano', - cardanotestnet: null, - celo: null, - coreum: null, - cosmoshub: 'cosmos', - dash: 'dash', - digibyte: null, - dogecoin: 'doge', - eboost: null, - ecash: 'ecash', - eos: null, - ethDev: null, - ethereum: 'ethereum', - ethereumclassic: 'etc', - ethereumpow: null, - fantom: 'fantom', - feathercoin: null, - filecoin: null, - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: null, - groestlcoin: 'grs', - hedera: null, - holesky: null, - hyperevm: null, - liberland: null, - liberlandtestnet: null, - litecoin: 'litecoin', - monero: 'monero', - optimism: 'optimism', - osmosis: null, - piratechain: null, - pivx: null, - polkadot: 'polkadot', - polygon: 'polygon', - pulsechain: null, - qtum: null, - ravencoin: null, - ripple: 'ripple', - rsk: 'rootstock', - smartcash: null, - sepolia: null, - solana: 'solana', - sonic: 'sonic', - stellar: 'stellar', - sui: 'sui', - suitestnet: null, - telos: null, - tezos: 'tezos', - thorchainrune: null, - thorchainrunestagenet: null, - ton: 'ton', - tron: 'tron', - ufo: null, - vertcoin: null, - wax: null, - zano: null, - zcash: 'shielded', - zcoin: null, - zksync: 'zksyncera' -} +export const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + sideshiftMapping +) const SIDESHIFT_BASE_URL = 'https://sideshift.ai/api/v2' const pluginId = 'sideshift' diff --git a/src/swap/central/swapuz.ts b/src/swap/central/swapuz.ts index b47c6156..34db89c8 100644 --- a/src/swap/central/swapuz.ts +++ b/src/swap/central/swapuz.ts @@ -20,6 +20,7 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { swapuz as swapuzMapping } from '../../mappings/swapuz' import { div18 } from '../../util/biggystringplus' import { checkInvalidTokenIds, @@ -31,6 +32,7 @@ import { InvalidTokenIds, isLikeKind, makeSwapPluginQuote, + mapToRecord, SwapOrder } from '../../util/swapHelpers' import { @@ -80,89 +82,9 @@ const INVALID_TOKEN_IDS: InvalidTokenIds = { // Network names that don't match parent network currency code // See https://swapuz.com/ for list of supported currencies -const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = { - abstract: null, - algorand: 'ALGO', - amoy: null, - arbitrum: 'ARBITRUM', - avalanche: 'CCHAIN', - axelar: null, - badcoin: null, - base: 'BASE', - binance: null, - binancesmartchain: 'BSC', - bitcoin: 'BTC', - bitcoincash: 'BCH', - bitcoincashtestnet: null, - bitcoingold: null, - bitcoingoldtestnet: null, - bitcoinsv: null, - bitcointestnet: null, - bitcointestnet4: null, - bobevm: null, - botanix: null, - calibration: null, - cardano: 'ADA', - cardanotestnet: null, - celo: 'CELO', - coreum: null, - cosmoshub: 'ATOM', - dash: 'DASH', - digibyte: 'DGB', - dogecoin: 'DOGE', - eboost: null, - ecash: 'XEC', - eos: 'EOS', - ethDev: null, - ethereum: 'ETH', - ethereumclassic: 'ETC', - ethereumpow: null, - fantom: 'FTM', - feathercoin: null, - filecoin: 'FIL', - filecoinfevm: null, - filecoinfevmcalibration: null, - fio: null, - groestlcoin: null, - hedera: 'HBAR', - holesky: null, - hyperevm: null, - liberland: null, - liberlandtestnet: null, - litecoin: 'LTC', - monero: 'XMR', - optimism: 'OPTIMISM', - osmosis: null, - piratechain: null, - pivx: null, - polkadot: 'DOT', - polygon: 'MATIC', - pulsechain: null, - qtum: 'QTUM', - ravencoin: 'RVN', - ripple: 'XRP', - rsk: null, - smartcash: null, - sepolia: null, - solana: 'SOL', - sonic: null, - stellar: 'XLM', - sui: 'SUI', - suitestnet: null, - telos: null, - tezos: 'XTZ', - thorchainrune: 'THORCHAIN', - thorchainrunestagenet: null, - ton: 'TON', - tron: 'TRX', - ufo: null, - vertcoin: null, - wax: 'WAXP', - zano: null, - zcash: 'ZEC', - zcoin: null, - zksync: null -} +const MAINNET_CODE_TRANSCRIPTION: CurrencyPluginIdSwapChainCodeMap = mapToRecord( + swapuzMapping +) export function makeSwapuzPlugin(opts: EdgeCorePluginOptions): EdgeSwapPlugin { const { io } = opts diff --git a/src/swap/defi/lifi.ts b/src/swap/defi/lifi.ts index 9204621e..7660fc22 100644 --- a/src/swap/defi/lifi.ts +++ b/src/swap/defi/lifi.ts @@ -20,12 +20,14 @@ import { } from 'edge-core-js/types' import { base64 } from 'rfc4648' +import { lifi as lifiMapping } from '../../mappings/lifi' import { div18 } from '../../util/biggystringplus' import { checkInvalidTokenIds, getMaxSwappable, InvalidTokenIds, makeSwapPluginQuote, + mapToStringMap, SwapOrder } from '../../util/swapHelpers' import { @@ -105,33 +107,7 @@ export const INVALID_TOKEN_IDS: InvalidTokenIds = { // Network names that don't match parent network currency code // See https://docs.li.fi/list-chains-bridges-dexs#chains -const MAINNET_CODE_TRANSCRIPTION: StringMap = { - arbitrum: 'ARB', - aurora: 'AUR', - avalanche: 'AVA', - base: 'BAS', - binancesmartchain: 'BSC', - celo: 'CEL', - cronos: 'CRO', - ethereum: 'ETH', - evmos: 'EVM', - fantom: 'FTM', - fuse: 'FUS', - gnosis: 'DAI', - harmony: 'ONE', - hyperevm: 'HYP', - metis: 'MAM', - moonbeam: 'MOO', - moonriver: 'MOR', - okexchain: 'OKT', - optimism: 'OPT', - polygon: 'POL', - rsk: 'RSK', - solana: 'SOL', - sui: 'SUI', - velas: 'VEL', - zksync: 'ERA' -} +const MAINNET_CODE_TRANSCRIPTION: StringMap = mapToStringMap(lifiMapping) const asExchangeInfo = asObject({ swap: asObject({ diff --git a/src/swap/defi/rango.ts b/src/swap/defi/rango.ts index c5045743..bf1f7ee9 100644 --- a/src/swap/defi/rango.ts +++ b/src/swap/defi/rango.ts @@ -23,10 +23,12 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { rango as rangoMapping } from '../../mappings/rango' import { div18 } from '../../util/biggystringplus' import { getMaxSwappable, makeSwapPluginQuote, + mapToStringMap, SwapOrder } from '../../util/swapHelpers' import { @@ -59,33 +61,7 @@ const orderUri = 'https://explorer.rango.exchange/search?query=' const EXPIRATION_MS = 1000 * 60 const EXCHANGE_INFO_UPDATE_FREQ_MS = 60000 -const MAINNET_CODE_TRANSCRIPTION: StringMap = { - arbitrum: 'ARBITRUM', - axelar: 'AXELAR', // "Supported," but unable to find actual routes at this time - avalanche: 'AVAX_CCHAIN', - base: 'BASE', - binancesmartchain: 'BSC', - bitcoin: 'BTC', // Pending "from" support. Enabled only to allow "to" swaps. - celo: 'CELO', // May not have any valid single step routes at this time - cosmoshub: 'COSMOS', - // dash: 'DASH', - // dogecoin: 'DOGE', - ethereum: 'ETH', - fantom: 'FANTOM', - // injective: 'INJECTIVE', - // litecoin: 'LTC', - // maya: 'MAYA', - // moonbeam: 'MOONBEAM', - // moonriver: 'MOONRIVER', - // okexchain: 'OKC', - optimism: 'OPTIMISM', - osmosis: 'OSMOSIS', - polygon: 'POLYGON', - solana: 'SOLANA', - thorchainrune: 'THOR', - // tron: 'TRON', // Currently only centralized bridges available, so won't return a quote. - zksync: 'ZKSYNC' -} +const MAINNET_CODE_TRANSCRIPTION: StringMap = mapToStringMap(rangoMapping) const RANGO_SERVERS_DEFAULT = ['https://api.rango.exchange'] diff --git a/src/swap/defi/thorchain/mayaprotocol.ts b/src/swap/defi/thorchain/mayaprotocol.ts index 438ad398..60e8b847 100644 --- a/src/swap/defi/thorchain/mayaprotocol.ts +++ b/src/swap/defi/thorchain/mayaprotocol.ts @@ -4,6 +4,8 @@ import { EdgeSwapPlugin } from 'edge-core-js/types' +import { mayaprotocol as mayaprotocolMapping } from '../../../mappings/mayaprotocol' +import { mapToStringMap } from '../../../util/swapHelpers' import { ExchangeInfo, makeThorchainBasedPlugin } from './thorchainCommon' const swapInfo: EdgeSwapInfo = { @@ -23,15 +25,9 @@ const infoServer: { } = { exchangeInfo: undefined, exchangeInfoLastUpdate: 0 } // Network names that don't match parent network currency code -export const MAINNET_CODE_TRANSCRIPTION: { [cc: string]: string } = { - arbitrum: 'ARB', - bitcoin: 'BTC', - dash: 'DASH', - ethereum: 'ETH', - litecoin: 'LTC', - thorchainrune: 'THOR', - zcash: 'ZEC' -} +export const MAINNET_CODE_TRANSCRIPTION: { + [cc: string]: string +} = mapToStringMap(mayaprotocolMapping) export const makeMayaProtocolPlugin = ( opts: EdgeCorePluginOptions diff --git a/src/swap/defi/thorchain/swapkit.ts b/src/swap/defi/thorchain/swapkit.ts index 17845bd2..ecf991e9 100644 --- a/src/swap/defi/thorchain/swapkit.ts +++ b/src/swap/defi/thorchain/swapkit.ts @@ -21,10 +21,12 @@ import { SwapCurrencyError } from 'edge-core-js/types' +import { swapkit as swapkitMapping } from '../../../mappings/swapkit' import { checkInvalidTokenIds, getMaxSwappable, makeSwapPluginQuote, + mapToStringMap, SwapOrder } from '../../../util/swapHelpers' import { @@ -38,7 +40,6 @@ import { } from '../../../util/utils' import { EdgeSwapRequestPlugin } from '../../types' import { createEvmApprovalEdgeTransactions } from '../defiUtils' -import { MAINNET_CODE_TRANSCRIPTION } from './thorchain' import { AFFILIATE_FEE_BASIS_DEFAULT, EVM_CURRENCY_CODES, @@ -56,6 +57,11 @@ const swapInfo: EdgeSwapInfo = { supportEmail: 'support@edge.app' } +// Network names that don't match parent network currency code +const MAINNET_CODE_TRANSCRIPTION: { + [cc: string]: string +} = mapToStringMap(swapkitMapping) + // This needs to be a type so adding the '& {}' prevents auto correction to an interface type ThorSwapQuoteParams = { sellAsset: string diff --git a/src/swap/defi/thorchain/thorchain.ts b/src/swap/defi/thorchain/thorchain.ts index 16dde60f..adc1b1fb 100644 --- a/src/swap/defi/thorchain/thorchain.ts +++ b/src/swap/defi/thorchain/thorchain.ts @@ -4,6 +4,8 @@ import { EdgeSwapPlugin } from 'edge-core-js/types' +import { thorchain as thorchainMapping } from '../../../mappings/thorchain' +import { mapToStringMap } from '../../../util/swapHelpers' import { asInitOptions, ExchangeInfo, @@ -29,20 +31,9 @@ const infoServer: { } = { exchangeInfo: undefined, exchangeInfoLastUpdate: 0 } // Network names that don't match parent network currency code -export const MAINNET_CODE_TRANSCRIPTION: { [cc: string]: string } = { - avalanche: 'AVAX', - base: 'BASE', - binancechain: 'BNB', - binancesmartchain: 'BSC', - bitcoin: 'BTC', - bitcoincash: 'BCH', - dogecoin: 'DOGE', - ethereum: 'ETH', - litecoin: 'LTC', - ripple: 'XRP', - tron: 'TRON', - thorchainrune: 'THOR' -} +const MAINNET_CODE_TRANSCRIPTION: { + [cc: string]: string +} = mapToStringMap(thorchainMapping) export const makeThorchainPlugin = ( opts: EdgeCorePluginOptions From 38b9780df67b866c2eec0adf41a7f683c47dcba4 Mon Sep 17 00:00:00 2001 From: Sam Holmes Date: Wed, 10 Dec 2025 12:56:58 -0800 Subject: [PATCH 3/5] Update plugin mappings - exolix: ZKSYNCERA -> zksync - lifi: son -> sonic - rango: DASH, DOGE, LTC, SUI, TELOS, TON, TRON, XRPL mappings - swapkit: ARB, DASH, DOT, OP, POL, SOL, SUI mappings - swapuz: ALGORAND, ARB, AVAX, OSMO, RAVENCOIN, SONIC, TLOS, TLOSEVM mappings --- CHANGELOG.md | 2 ++ scripts/mappings/exolixMappings.ts | 2 +- scripts/mappings/lifiMappings.ts | 2 +- scripts/mappings/rangoMappings.ts | 16 ++++++++-------- scripts/mappings/swapkitMappings.ts | 14 +++++++------- scripts/mappings/swapuzMappings.ts | 14 +++++++------- src/mappings/exolix.ts | 2 +- src/mappings/lifi.ts | 2 +- src/mappings/rango.ts | 16 ++++++++-------- src/mappings/swapkit.ts | 14 +++++++------- src/mappings/swapuz.ts | 12 ++++++------ 11 files changed, 49 insertions(+), 47 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c0bac80..b916a7d9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- added: Added new mappings to all swap providers. + ## 2.40.1 (2025-12-09) - changed: Replace wallet denomination methods with synchronous utils diff --git a/scripts/mappings/exolixMappings.ts b/scripts/mappings/exolixMappings.ts index c34a0efd..638aa128 100644 --- a/scripts/mappings/exolixMappings.ts +++ b/scripts/mappings/exolixMappings.ts @@ -746,4 +746,4 @@ exolix.set('ZIL', null) // Display Name: ZKSYNC // Short Name: ZKV2 -exolix.set('ZKSYNCERA', null) +exolix.set('ZKSYNCERA', 'zksync') diff --git a/scripts/mappings/lifiMappings.ts b/scripts/mappings/lifiMappings.ts index 630a4b5a..6722b16e 100644 --- a/scripts/mappings/lifiMappings.ts +++ b/scripts/mappings/lifiMappings.ts @@ -158,7 +158,7 @@ lifi.set('soe', null) lifi.set('sol', 'solana') // Display Name: Sonic -lifi.set('son', null) +lifi.set('son', 'sonic') // Display Name: Sophon lifi.set('sop', null) diff --git a/scripts/mappings/rangoMappings.ts b/scripts/mappings/rangoMappings.ts index bba1ee39..8d43c84a 100644 --- a/scripts/mappings/rangoMappings.ts +++ b/scripts/mappings/rangoMappings.ts @@ -77,13 +77,13 @@ rango.set('CRONOS', null) rango.set('CRYPTO_ORG', null) // Display Name: Dash -rango.set('DASH', null) +rango.set('DASH', 'dash') // Display Name: Desmos rango.set('DESMOS', null) // Display Name: Doge -rango.set('DOGE', null) +rango.set('DOGE', 'dogecoin') // Display Name: Dydx rango.set('DYDX', null) @@ -140,7 +140,7 @@ rango.set('KUJIRA', null) rango.set('LINEA', null) // Display Name: LiteCoin -rango.set('LTC', null) +rango.set('LTC', 'litecoin') // Display Name: Lum Network rango.set('LUMNETWORK', null) @@ -233,13 +233,13 @@ rango.set('STARNAME', null) rango.set('STRIDE', null) // Display Name: Sui -rango.set('SUI', null) +rango.set('SUI', 'sui') // Display Name: Taiko rango.set('TAIKO', null) // Display Name: Telos -rango.set('TELOS', null) +rango.set('TELOS', 'telos') // Display Name: Terra 2.0 rango.set('TERRA', null) @@ -251,10 +251,10 @@ rango.set('TERRA_CLASSIC', null) rango.set('THOR', 'thorchainrune') // Display Name: Ton -rango.set('TON', null) +rango.set('TON', 'ton') // Display Name: Tron -rango.set('TRON', null) +rango.set('TRON', 'tron') // Display Name: Umee rango.set('UMEE', null) @@ -266,7 +266,7 @@ rango.set('UNICHAIN', null) rango.set('XLAYER', null) // Display Name: XRPL -rango.set('XRPL', null) +rango.set('XRPL', 'ripple') // Display Name: ZetaChain rango.set('ZETA_CHAIN', null) diff --git a/scripts/mappings/swapkitMappings.ts b/scripts/mappings/swapkitMappings.ts index da89d166..87a89f1f 100644 --- a/scripts/mappings/swapkitMappings.ts +++ b/scripts/mappings/swapkitMappings.ts @@ -2,7 +2,7 @@ import { EdgeCurrencyPluginId } from '../../src/util/edgeCurrencyPluginIds' export const swapkit = new Map() // Display Name: ARB -swapkit.set('ARB', null) +swapkit.set('ARB', 'arbitrum') // Display Name: AVAX swapkit.set('AVAX', null) @@ -23,13 +23,13 @@ swapkit.set('BSC', null) swapkit.set('BTC', null) // Display Name: DASH -swapkit.set('DASH', null) +swapkit.set('DASH', 'dash') // Display Name: DOGE swapkit.set('DOGE', null) // Display Name: DOT -swapkit.set('DOT', null) +swapkit.set('DOT', 'polkadot') // Display Name: ETH swapkit.set('ETH', null) @@ -56,16 +56,16 @@ swapkit.set('MONAD', null) swapkit.set('NEAR', null) // Display Name: OP -swapkit.set('OP', null) +swapkit.set('OP', 'optimism') // Display Name: POL -swapkit.set('POL', null) +swapkit.set('POL', 'polygon') // Display Name: SOL -swapkit.set('SOL', null) +swapkit.set('SOL', 'solana') // Display Name: SUI -swapkit.set('SUI', null) +swapkit.set('SUI', 'sui') // Display Name: THOR swapkit.set('THOR', null) diff --git a/scripts/mappings/swapuzMappings.ts b/scripts/mappings/swapuzMappings.ts index 7a2bbaf3..a34fa675 100644 --- a/scripts/mappings/swapuzMappings.ts +++ b/scripts/mappings/swapuzMappings.ts @@ -20,7 +20,7 @@ swapuz.set('AKT', null) swapuz.set('ALGO', 'algorand') // Display Name: ALGORAND -swapuz.set('ALGORAND', null) +swapuz.set('ALGORAND', 'algorand') // Display Name: ALLORA swapuz.set('ALLORA', null) @@ -38,7 +38,7 @@ swapuz.set('APT', null) swapuz.set('AR', null) // Display Name: ARBITRUM ONE (ARBITRUM) -swapuz.set('ARB', null) +swapuz.set('ARB', 'arbitrum') // WARNING: Not included by the synchronizer synchronization swapuz.set('ARBITRUM', 'arbitrum') @@ -59,7 +59,7 @@ swapuz.set('AURORA', null) swapuz.set('AVAIL', null) // Display Name: AVALANCHE -swapuz.set('AVAX', null) +swapuz.set('AVAX', 'avalanche') // Display Name: AXEL swapuz.set('AXEL', null) @@ -470,7 +470,7 @@ swapuz.set('OORT', null) swapuz.set('OPTIMISM', 'optimism') // Display Name: OSMOSIS -swapuz.set('OSMO', null) +swapuz.set('OSMO', 'osmosis') // Display Name: PARTISIA swapuz.set('PARTISIA', null) @@ -512,7 +512,7 @@ swapuz.set('QTUM', 'qtum') swapuz.set('RADIX', null) // Display Name: RAVENCOIN -swapuz.set('RAVENCOIN', null) +swapuz.set('RAVENCOIN', 'ravencoin') // Display Name: REDBELLY swapuz.set('REDBELLY', null) @@ -554,7 +554,7 @@ swapuz.set('SOL', 'solana') swapuz.set('SOMI', null) // Display Name: SONIC -swapuz.set('SONIC', null) +swapuz.set('SONIC', 'sonic') // Display Name: SOPHON swapuz.set('SOPHON', null) @@ -608,7 +608,7 @@ swapuz.set('THETA', null) swapuz.set('THORCHAIN', 'thorchainrune') // Display Name: TELOS -swapuz.set('TLOS', null) +swapuz.set('TLOS', 'telos') // Display Name: TELOS(EVM) swapuz.set('TLOSEVM', null) diff --git a/src/mappings/exolix.ts b/src/mappings/exolix.ts index 63e91fed..d091bfe0 100644 --- a/src/mappings/exolix.ts +++ b/src/mappings/exolix.ts @@ -94,4 +94,4 @@ exolix.set('wax', null) exolix.set('zano', 'ZANO') exolix.set('zcash', null) exolix.set('zcoin', null) -exolix.set('zksync', null) +exolix.set('zksync', 'ZKSYNCERA') diff --git a/src/mappings/lifi.ts b/src/mappings/lifi.ts index 9a2fc16d..82500b01 100644 --- a/src/mappings/lifi.ts +++ b/src/mappings/lifi.ts @@ -78,7 +78,7 @@ lifi.set('rsk', 'rsk') lifi.set('sepolia', null) lifi.set('smartcash', null) lifi.set('solana', 'sol') -lifi.set('sonic', null) +lifi.set('sonic', 'son') lifi.set('stellar', null) lifi.set('sui', 'sui') lifi.set('suitestnet', null) diff --git a/src/mappings/rango.ts b/src/mappings/rango.ts index 0158e962..9caad8c1 100644 --- a/src/mappings/rango.ts +++ b/src/mappings/rango.ts @@ -40,9 +40,9 @@ rango.set('cardanotestnet', null) rango.set('celo', 'CELO') rango.set('coreum', null) rango.set('cosmoshub', 'COSMOS') -rango.set('dash', null) +rango.set('dash', 'DASH') rango.set('digibyte', null) -rango.set('dogecoin', null) +rango.set('dogecoin', 'DOGE') rango.set('eboost', null) rango.set('ecash', null) rango.set('eos', null) @@ -62,7 +62,7 @@ rango.set('holesky', null) rango.set('hyperevm', null) rango.set('liberland', null) rango.set('liberlandtestnet', null) -rango.set('litecoin', null) +rango.set('litecoin', 'LTC') rango.set('monero', null) rango.set('optimism', 'OPTIMISM') rango.set('osmosis', 'OSMOSIS') @@ -73,21 +73,21 @@ rango.set('polygon', 'POLYGON') rango.set('pulsechain', null) rango.set('qtum', null) rango.set('ravencoin', null) -rango.set('ripple', null) +rango.set('ripple', 'XRPL') rango.set('rsk', null) rango.set('sepolia', null) rango.set('smartcash', null) rango.set('solana', 'SOLANA') rango.set('sonic', null) rango.set('stellar', null) -rango.set('sui', null) +rango.set('sui', 'SUI') rango.set('suitestnet', null) -rango.set('telos', null) +rango.set('telos', 'TELOS') rango.set('tezos', null) rango.set('thorchainrune', 'THOR') rango.set('thorchainrunestagenet', null) -rango.set('ton', null) -rango.set('tron', null) +rango.set('ton', 'TON') +rango.set('tron', 'TRON') rango.set('ufo', null) rango.set('vertcoin', null) rango.set('wax', null) diff --git a/src/mappings/swapkit.ts b/src/mappings/swapkit.ts index cb36ed3c..76ea3cdf 100644 --- a/src/mappings/swapkit.ts +++ b/src/mappings/swapkit.ts @@ -17,7 +17,7 @@ export const swapkit = new Map() swapkit.set('abstract', null) swapkit.set('algorand', null) swapkit.set('amoy', null) -swapkit.set('arbitrum', null) +swapkit.set('arbitrum', 'ARB') swapkit.set('avalanche', null) swapkit.set('axelar', null) swapkit.set('badcoin', null) @@ -40,7 +40,7 @@ swapkit.set('cardanotestnet', null) swapkit.set('celo', null) swapkit.set('coreum', null) swapkit.set('cosmoshub', null) -swapkit.set('dash', null) +swapkit.set('dash', 'DASH') swapkit.set('digibyte', null) swapkit.set('dogecoin', null) swapkit.set('eboost', null) @@ -64,12 +64,12 @@ swapkit.set('liberland', null) swapkit.set('liberlandtestnet', null) swapkit.set('litecoin', null) swapkit.set('monero', null) -swapkit.set('optimism', null) +swapkit.set('optimism', 'OP') swapkit.set('osmosis', null) swapkit.set('piratechain', null) swapkit.set('pivx', null) -swapkit.set('polkadot', null) -swapkit.set('polygon', null) +swapkit.set('polkadot', 'DOT') +swapkit.set('polygon', 'POL') swapkit.set('pulsechain', null) swapkit.set('qtum', null) swapkit.set('ravencoin', null) @@ -77,10 +77,10 @@ swapkit.set('ripple', null) swapkit.set('rsk', null) swapkit.set('sepolia', null) swapkit.set('smartcash', null) -swapkit.set('solana', null) +swapkit.set('solana', 'SOL') swapkit.set('sonic', null) swapkit.set('stellar', null) -swapkit.set('sui', null) +swapkit.set('sui', 'SUI') swapkit.set('suitestnet', null) swapkit.set('telos', null) swapkit.set('tezos', null) diff --git a/src/mappings/swapuz.ts b/src/mappings/swapuz.ts index 593a31c1..76085a7e 100644 --- a/src/mappings/swapuz.ts +++ b/src/mappings/swapuz.ts @@ -17,8 +17,8 @@ export const swapuz = new Map() swapuz.set('abstract', null) swapuz.set('algorand', 'ALGO') swapuz.set('amoy', null) -swapuz.set('arbitrum', 'ARBITRUM') -swapuz.set('avalanche', 'CCHAIN') +swapuz.set('arbitrum', 'ARB') +swapuz.set('avalanche', 'AVAX') swapuz.set('axelar', null) swapuz.set('badcoin', null) swapuz.set('base', 'BASE') @@ -65,24 +65,24 @@ swapuz.set('liberlandtestnet', null) swapuz.set('litecoin', 'LTC') swapuz.set('monero', 'XMR') swapuz.set('optimism', 'OPTIMISM') -swapuz.set('osmosis', null) +swapuz.set('osmosis', 'OSMO') swapuz.set('piratechain', null) swapuz.set('pivx', null) swapuz.set('polkadot', 'DOT') swapuz.set('polygon', 'MATIC') swapuz.set('pulsechain', null) swapuz.set('qtum', 'QTUM') -swapuz.set('ravencoin', 'RVN') +swapuz.set('ravencoin', 'RAVENCOIN') swapuz.set('ripple', 'XRP') swapuz.set('rsk', null) swapuz.set('sepolia', null) swapuz.set('smartcash', null) swapuz.set('solana', 'SOL') -swapuz.set('sonic', null) +swapuz.set('sonic', 'SONIC') swapuz.set('stellar', 'XLM') swapuz.set('sui', 'SUI') swapuz.set('suitestnet', null) -swapuz.set('telos', null) +swapuz.set('telos', 'TLOS') swapuz.set('tezos', 'XTZ') swapuz.set('thorchainrune', 'THORCHAIN') swapuz.set('thorchainrunestagenet', null) From 7c4e1a4c1bf784efc1ead506c9bc59bdaffa122a Mon Sep 17 00:00:00 2001 From: Sam Holmes Date: Mon, 1 Dec 2025 14:12:01 -0800 Subject: [PATCH 4/5] Produce helpful Levenshtein distance matching for add-plugin --- scripts/mapctl.ts | 84 +++++++++++++++++++++++++++++++- scripts/util/stringSimilarity.ts | 70 ++++++++++++++++++++++++++ 2 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 scripts/util/stringSimilarity.ts diff --git a/scripts/mapctl.ts b/scripts/mapctl.ts index f3717f50..7e1c4861 100644 --- a/scripts/mapctl.ts +++ b/scripts/mapctl.ts @@ -19,6 +19,7 @@ import { makeSwapKitSynchronizer } from './synchronizers/swapkit/swapkitSynchron import { makeSwapuzSynchronizer } from './synchronizers/swapuz/swapuzSynchronizer' import { makeThorchainSynchronizer } from './synchronizers/thorchain/thorchainSynchronizer' import { SwapSynchronizerFactory } from './types' +import { findSimilar } from './util/stringSimilarity' const OUTPUT_MAPPINGS_DIR = path.join(__dirname, '../src/mappings') @@ -224,9 +225,85 @@ async function addPluginId(id: string): Promise { console.log( `Added '${id}' to edgeCurrencyPluginIds.ts (sorted alphabetically)` ) + + // Use the array we already created (it's already sorted and includes the new ID) + const updatedPluginIds = pluginIdsArray as EdgeCurrencyPluginId[] + + // Update all generated mapping files to include the new plugin ID + console.log( + '\nUpdating all provider mappings to include the new plugin ID...' + ) + await updateMappings(updatedPluginIds) + + // Find similar keys per provider + // Use a very high threshold (1.0 = 100% different) to always show top matches + const providerSuggestions = new Map< + string, + Array<{ value: string; similarity: number }> + >() + for (const factory of synchronizerFactories) { + const synchronizer = factory(config) + const providerKeys = Array.from(synchronizer.map.keys()) + // Always show top 5 most similar matches, regardless of similarity score + const suggestions = findSimilar(id, providerKeys, 5, 1.0) + providerSuggestions.set(synchronizer.name, suggestions) + } + + console.log('\n' + '='.repeat(70)) + console.log(`⚠️ IMPORTANT: New plugin ID '${id}' has been added`) + console.log('='.repeat(70)) + console.log( + '\nThe new plugin ID has been added to all generated mapping files' + ) + console.log( + 'with a value of `null`. You must now update the source mapping files' + ) + console.log('for each provider that supports this network.\n') + + // Check if any provider has suggestions + const hasAnySuggestions = Array.from(providerSuggestions.values()).some( + suggestions => suggestions.length > 0 + ) + + if (hasAnySuggestions) { + console.log('💡 Similar provider chain codes found (potential mappings):') + console.log('') + } else { + console.log('💡 Checking for similar provider chain codes...') + console.log('') + } + + // Always show all providers with their most similar matches + for (const factory of synchronizerFactories) { + const synchronizer = factory(config) + const suggestions = providerSuggestions.get(synchronizer.name) ?? [] + console.log(` ${synchronizer.name}:`) + if (suggestions.length > 0) { + suggestions.forEach((match, index) => { + const similarityPercent = Math.round((1 - match.similarity) * 100) + console.log( + ` ${index + 1}. "${match.value}" (${similarityPercent}% similar)` + ) + }) + } else { + // This should rarely happen, but handle empty provider keys case + console.log(' (no chain codes found in mapping file)') + } + console.log('') + } + + console.log('\nTo update mappings:') + console.log(' 1. Edit scripts/mappings/Mappings.ts') + console.log( + ' 2. Add mappings for provider chain codes that correspond to this plugin ID' + ) + console.log(' 3. Run: yarn mapctl update-mappings') + console.log('\n' + '='.repeat(70)) } -async function updateMappings(): Promise { +async function updateMappings( + pluginIdsOverride?: EdgeCurrencyPluginId[] +): Promise { console.log('Updating inverted mappings...') // Ensure output directory exists @@ -234,6 +311,9 @@ async function updateMappings(): Promise { fs.mkdirSync(OUTPUT_MAPPINGS_DIR, { recursive: true }) } + // Use override if provided (e.g., after adding a new plugin ID), otherwise use imported list + const pluginIdsToUse = pluginIdsOverride ?? edgeCurrencyPluginIds + // Process each synchronizer for (const factory of synchronizerFactories) { const synchronizer = factory(config) @@ -253,7 +333,7 @@ async function updateMappings(): Promise { }) // Include ALL plugin IDs, setting unmapped ones to null - const sortedPluginIds = [...edgeCurrencyPluginIds].sort((a, b) => { + const sortedPluginIds = [...pluginIdsToUse].sort((a, b) => { if (a < b) return -1 if (a > b) return 1 return 0 diff --git a/scripts/util/stringSimilarity.ts b/scripts/util/stringSimilarity.ts new file mode 100644 index 00000000..113bc688 --- /dev/null +++ b/scripts/util/stringSimilarity.ts @@ -0,0 +1,70 @@ +/** + * Calculate Levenshtein distance between two strings + * Returns a number between 0 (identical) and max(str1.length, str2.length) (completely different) + */ +function levenshteinDistance(str1: string, str2: string): number { + const len1 = str1.length + const len2 = str2.length + const matrix: number[][] = [] + + // Initialize matrix + for (let i = 0; i <= len1; i++) { + matrix[i] = [i] + } + for (let j = 0; j <= len2; j++) { + matrix[0][j] = j + } + + // Fill matrix + for (let i = 1; i <= len1; i++) { + for (let j = 1; j <= len2; j++) { + if (str1[i - 1] === str2[j - 1]) { + matrix[i][j] = matrix[i - 1][j - 1] + } else { + matrix[i][j] = Math.min( + matrix[i - 1][j] + 1, // deletion + matrix[i][j - 1] + 1, // insertion + matrix[i - 1][j - 1] + 1 // substitution + ) + } + } + } + + return matrix[len1][len2] +} + +/** + * Calculate similarity score between two strings (0 = identical, 1 = completely different) + * Uses Levenshtein distance normalized by the maximum length + */ +export function similarity(str1: string, str2: string): number { + const maxLen = Math.max(str1.length, str2.length) + if (maxLen === 0) return 0 + return levenshteinDistance(str1.toLowerCase(), str2.toLowerCase()) / maxLen +} + +/** + * Find similar strings in a list, sorted by similarity (most similar first) + */ +export interface SimilarityMatch { + value: string + similarity: number +} + +export function findSimilar( + target: string, + candidates: string[], + maxResults: number = 10, + maxSimilarity: number = 0.5 +): SimilarityMatch[] { + const matches: SimilarityMatch[] = candidates + .map(candidate => ({ + value: candidate, + similarity: similarity(target, candidate) + })) + .filter(match => match.similarity <= maxSimilarity) + .sort((a, b) => a.similarity - b.similarity) + .slice(0, maxResults) + + return matches +} From 54ee0e8c703e705049933ad4ead9f96eeea68123 Mon Sep 17 00:00:00 2001 From: Sam Holmes Date: Wed, 10 Dec 2025 12:02:44 -0800 Subject: [PATCH 5/5] refactor(mapctl): move all synchronizer instances to main --- scripts/mapctl.ts | 64 ++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 31 deletions(-) diff --git a/scripts/mapctl.ts b/scripts/mapctl.ts index 7e1c4861..86e87906 100644 --- a/scripts/mapctl.ts +++ b/scripts/mapctl.ts @@ -18,26 +18,11 @@ import { makeSideShiftSynchronizer } from './synchronizers/sideshift/sideshiftSy import { makeSwapKitSynchronizer } from './synchronizers/swapkit/swapkitSynchronizer' import { makeSwapuzSynchronizer } from './synchronizers/swapuz/swapuzSynchronizer' import { makeThorchainSynchronizer } from './synchronizers/thorchain/thorchainSynchronizer' -import { SwapSynchronizerFactory } from './types' +import { SwapSynchronizer } from './types' import { findSimilar } from './util/stringSimilarity' const OUTPUT_MAPPINGS_DIR = path.join(__dirname, '../src/mappings') -const synchronizerFactories: SwapSynchronizerFactory[] = [ - makeChangeHeroSynchronizer, - makeChangeNowSynchronizer, - makeExolixSynchronizer, - makeGodexSynchronizer, - makeLetsExchangeSynchronizer, - makeLifiSynchronizer, - makeMayaProtocolSynchronizer, - makeRangoSynchronizer, - makeSideShiftSynchronizer, - makeSwapKitSynchronizer, - makeSwapuzSynchronizer, - makeThorchainSynchronizer -] - const SCRIPTS_MAPPINGS_DIR = path.join(__dirname, 'mappings') async function main(): Promise { @@ -49,13 +34,29 @@ async function main(): Promise { return } + // Initialize all synchronizers upfront, logging errors for any that fail + const synchronizers: SwapSynchronizer[] = [ + makeChangeHeroSynchronizer(config), + makeChangeNowSynchronizer(config), + makeExolixSynchronizer(config), + makeGodexSynchronizer(config), + makeLetsExchangeSynchronizer(config), + makeLifiSynchronizer(config), + makeMayaProtocolSynchronizer(config), + makeRangoSynchronizer(config), + makeSideShiftSynchronizer(config), + makeSwapKitSynchronizer(config), + makeSwapuzSynchronizer(config), + makeThorchainSynchronizer(config) + ] + if (command === 'sync-providers') { const filter = args[1] != null && args[1] !== '' ? args[1] : undefined - await syncSynchronizers(filter) + await syncSynchronizers(synchronizers, filter) } else if (command === 'update-mappings') { - await updateMappings() + await updateMappings(synchronizers) } else if (command === 'add-plugin') { - await addPluginId(args[1]) + await addPluginId(synchronizers, args[1]) } else { console.error(`Unknown command: ${command}`) showUsage() @@ -67,8 +68,10 @@ async function main(): Promise { // Commands // --------------------------------------------------------------------- -async function syncSynchronizers(filter?: string): Promise { - const synchronizers = synchronizerFactories.map(f => f(config)) +async function syncSynchronizers( + synchronizers: SwapSynchronizer[], + filter?: string +): Promise { const filteredSynchronizers = filter != null ? synchronizers.filter(s => s.name === filter) @@ -173,7 +176,10 @@ ${setCalls} } } -async function addPluginId(id: string): Promise { +async function addPluginId( + synchronizers: SwapSynchronizer[], + id: string +): Promise { if (id == null || id === '') { console.error('Please provide a plugin ID to add.') return @@ -233,7 +239,7 @@ async function addPluginId(id: string): Promise { console.log( '\nUpdating all provider mappings to include the new plugin ID...' ) - await updateMappings(updatedPluginIds) + await updateMappings(synchronizers, updatedPluginIds) // Find similar keys per provider // Use a very high threshold (1.0 = 100% different) to always show top matches @@ -241,8 +247,7 @@ async function addPluginId(id: string): Promise { string, Array<{ value: string; similarity: number }> >() - for (const factory of synchronizerFactories) { - const synchronizer = factory(config) + for (const synchronizer of synchronizers) { const providerKeys = Array.from(synchronizer.map.keys()) // Always show top 5 most similar matches, regardless of similarity score const suggestions = findSimilar(id, providerKeys, 5, 1.0) @@ -274,8 +279,7 @@ async function addPluginId(id: string): Promise { } // Always show all providers with their most similar matches - for (const factory of synchronizerFactories) { - const synchronizer = factory(config) + for (const synchronizer of synchronizers) { const suggestions = providerSuggestions.get(synchronizer.name) ?? [] console.log(` ${synchronizer.name}:`) if (suggestions.length > 0) { @@ -286,7 +290,6 @@ async function addPluginId(id: string): Promise { ) }) } else { - // This should rarely happen, but handle empty provider keys case console.log(' (no chain codes found in mapping file)') } console.log('') @@ -302,6 +305,7 @@ async function addPluginId(id: string): Promise { } async function updateMappings( + synchronizers: SwapSynchronizer[], pluginIdsOverride?: EdgeCurrencyPluginId[] ): Promise { console.log('Updating inverted mappings...') @@ -315,9 +319,7 @@ async function updateMappings( const pluginIdsToUse = pluginIdsOverride ?? edgeCurrencyPluginIds // Process each synchronizer - for (const factory of synchronizerFactories) { - const synchronizer = factory(config) - + for (const synchronizer of synchronizers) { try { // Build inverted mapping: pluginId -> synchronizer network ID const invertedMap = new Map()