diff --git a/public/configs/markets.json b/public/configs/markets.json
index f887f2b..e81e812 100644
--- a/public/configs/markets.json
+++ b/public/configs/markets.json
@@ -1,454 +1,360 @@
{
- "1INCH-USD":{
- "name":"1inch",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://1inch.io/",
- "whitepaperLink":"https://github.com/1inch",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/1inch/"
- },
- "AAVE-USD":{
- "name":"Aave",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://aave.com/",
- "whitepaperLink":"https://github.com/aave/protocol-v2/blob/master/aave-v2-whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/aave/"
- },
- "ADA-USD":{
- "name":"Cardano",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://cardano.org/",
- "whitepaperLink":"https://why.cardano.org/en/introduction/motivation/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/cardano/"
- },
- "ALGO-USD":{
- "name":"Algorand",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://algorand.com/",
- "whitepaperLink":"https://algorand.com/technology/white-papers",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/algorand/"
- },
- "APE-USD":{
- "name":"ApeCoin",
- "tags":[
-
- ],
- "websiteLink":"https://apecoin.com/",
- "whitepaperLink":"https://apecoin.com/about",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/apecoin-ape/"
- },
- "APT-USD":{
- "name":"Aptos",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://aptoslabs.com/",
- "whitepaperLink":"https://aptos.dev/aptos-white-paper/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/aptos/"
- },
- "ARB-USD":{
- "name":"Arbitrum",
- "tags":[
-
- ],
- "websiteLink":"https://arbitrum.io/",
- "whitepaperLink":"https://github.com/OffchainLabs/nitro",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/arbitrum/"
- },
- "ATOM-USD":{
- "name":"Cosmos",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://cosmos.network/",
- "whitepaperLink":"https://v1.cosmos.network/resources/whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/cosmos/"
- },
- "AVAX-USD":{
- "name":"Avalanche",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://www.avalabs.org/",
- "whitepaperLink":"https://assets.website-files.com/5d80307810123f5ffbb34d6e/6008d7bbf8b10d1eb01e7e16_Avalanche%20Platform%20Whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/avalanche/"
- },
- "BCH-USD":{
- "name":"Bitcoin Cash",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://bitcoincash.org/",
- "whitepaperLink":"https://bitcoincash.org/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/bitcoin-cash/"
- },
- "BLUR-USD":{
- "name":"Blur",
- "tags":[
-
- ],
- "websiteLink":"https://blur.io/",
- "whitepaperLink":"https://docs.blur.foundation/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/blur-token/"
- },
- "CELO-USD":{
- "name":"Celo",
- "tags":[
-
- ],
- "websiteLink":"https://celo.org",
- "whitepaperLink":"https://docs.celo.org",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/celo/"
- },
- "BTC-USD":{
- "name":"Bitcoin",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://bitcoin.org/",
- "whitepaperLink":"https://bitcoin.org/bitcoin.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/bitcoin/"
- },
- "COMP-USD":{
- "name":"Compound",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://compound.finance/",
- "whitepaperLink":"https://compound.finance/documents/Compound.Whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/compound/"
- },
- "CRV-USD":{
- "name":"Curve",
- "tags":[
- "Governance"
- ],
- "websiteLink":"https://curve.fi/",
- "whitepaperLink":"https://curve.fi/whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/curve-dao-token/"
- },
- "DOGE-USD":{
- "name":"Dogecoin",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://dogecoin.com/",
- "whitepaperLink":"https://github.com/dogecoin/dogecoin",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/dogecoin/"
- },
- "DOT-USD":{
- "name":"Polkadot",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://polkadot.network/",
- "whitepaperLink":"https://polkadot.network/PolkaDotPaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/polkadot-new/"
- },
- "ENJ-USD":{
- "name":"Enjin",
- "tags":[
-
- ],
- "websiteLink":"https://enjin.io/",
- "whitepaperLink":"https://cdn.enjin.io/downloads/whitepapers/enjin-coin/en.pdf/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/enjin-coin/"
- },
- "EOS-USD":{
- "name":"EOS",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://eos.io/",
- "whitepaperLink":"https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/eos/"
- },
- "ETC-USD":{
- "name":"Ethereum Classic",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://ethereumclassic.org/",
- "whitepaperLink":"https://ethereumclassic.org/why-classic",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/ethereum-classic/"
- },
- "ETH-USD":{
- "name":"Ethereum",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://ethereum.org/",
- "whitepaperLink":"https://ethereum.org/whitepaper/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/ethereum/",
- "displayStepSize":"0.001",
- "displayTickSize":"0.1"
- },
- "FIL-USD":{
- "name":"Filecoin",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://filecoin.io/",
- "whitepaperLink":"https://filecoin.io/filecoin.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/filecoin/"
- },
- "HNT-USD":{
- "name":"Helium",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://www.helium.com",
- "whitepaperLink":"http://whitepaper.helium.com",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/helium/"
- },
- "ICP-USD":{
- "name":"Internet Computer",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://dfinity.org",
- "whitepaperLink":"https://dfinity.org/whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/internet-computer/"
- },
- "LDO-USD":{
- "name":"Lido DAO",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://lido.fi/",
- "whitepaperLink":"https://lido.fi/static/Lido:Ethereum-Liquid-Staking.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/lido-dao/"
- },
- "LINK-USD":{
- "name":"Chainlink",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://chain.link/",
- "whitepaperLink":"https://link.smartcontract.com/whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/chainlink/"
- },
- "LTC-USD":{
- "name":"Litecoin",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://litecoin.org/",
- "whitepaperLink":"https://litecoin.info/index.php/Main_Page",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/litecoin/"
- },
- "MATIC-USD":{
- "name":"Polygon",
- "tags":[
- "Layer 2"
- ],
- "websiteLink":"https://polygon.technology/",
- "whitepaperLink":"https://polygon.technology/lightpaper-polygon.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/polygon/"
- },
- "MKR-USD":{
- "name":"Maker",
- "tags":[
- "Governance"
- ],
- "websiteLink":"https://makerdao.com",
- "whitepaperLink":"https://makerdao.com/whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/maker/"
- },
- "NEAR-USD":{
- "name":"NEAR Protocol",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://near.org",
- "whitepaperLink":"https://near.org/papers/the-official-near-white-paper/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/near-protocol/"
- },
- "OP-USD":{
- "name":"Optimism",
- "tags":[
-
- ],
- "websiteLink":"https://www.optimism.io/",
- "whitepaperLink":"https://github.com/ethereum-optimism",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/optimism-ethereum/"
- },
- "PEPE-USD":{
- "name":"Pepe",
- "tags":[
-
- ],
- "websiteLink":"https://www.pepe.vip/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/pepe/"
- },
- "RUNE-USD":{
- "name":"THORChain",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://thorchain.org",
- "whitepaperLink":"https://whitepaper.io/document/709/thorchain-whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/thorchain/"
- },
- "SEI-USD":{
- "name":"Sei",
- "tags":[
- "Layer 1",
- "Defi"
- ],
- "websiteLink":"https://www.sei.io/",
- "whitepaperLink":"https://github.com/sei-protocol/sei-chain/blob/3c9576fee3494ce039df684624f918dd8066ba3f/whitepaper/Sei_Whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/sei/"
- },
- "SHIB-USD":{
- "name":"Shiba Inu",
- "tags":[
-
- ],
- "websiteLink":"https://shibatoken.com/",
- "whitepaperLink":"https://docs.shibatoken.com/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/shiba-inu/"
- },
- "SNX-USD":{
- "name":"Synthetix",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://synthetix.io/",
- "whitepaperLink":"https://docs.synthetix.io/litepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/synthetix-network-token/"
- },
- "SOL-USD":{
- "name":"Solana",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://solana.com/",
- "whitepaperLink":"https://solana.com/solana-whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/solana/"
- },
- "SUI-USD":{
- "name":"Sui",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://sui.io/",
- "whitepaperLink":"https://github.com/MystenLabs",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/sui/"
- },
- "SUSHI-USD":{
- "name":"Sushi",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://sushi.com/",
- "whitepaperLink":"https://docs.sushi.com/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/sushiswap/"
- },
- "TRX-USD":{
- "name":"TRON",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://tron.network/",
- "whitepaperLink":"https://tron.network/static/doc/white_paper_v_2_0.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/tron/"
- },
- "UMA-USD":{
- "name":"UMA",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://umaproject.org/",
- "whitepaperLink":"https://github.com/UMAprotocol/whitepaper",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/uma/"
- },
- "UNI-USD":{
- "name":"Uniswap",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://uniswap.org/",
- "whitepaperLink":"https://uniswap.org/whitepaper-v3.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/uniswap/"
- },
- "WLD-USD":{
- "name":"Worldcoin",
- "tags":[
-
- ],
- "websiteLink":"https://worldcoin.org/",
- "whitepaperLink":"https://whitepaper.worldcoin.org/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/worldcoin-org/"
- },
- "XLM-USD":{
- "name":"Stellar",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://www.stellar.org/",
- "whitepaperLink":"https://www.stellar.org/papers/stellar-consensus-protocol",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/stellar/"
- },
- "XMR-USD":{
- "name":"Monero",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://www.getmonero.org/",
- "whitepaperLink":"https://www.getmonero.org/resources/research-lab/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/monero/"
- },
- "XRP-USD":{
- "name":"Ripple",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://ripple.com/currency/",
- "whitepaperLink":"https://github.com/ripple",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/xrp/"
- },
- "XTZ-USD":{
- "name":"Tezos",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://tezos.com",
- "whitepaperLink":"https://tezos.com/whitepaper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/tezos/"
- },
- "YFI-USD":{
- "name":"Yearn",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://yearn.finance/",
- "whitepaperLink":"https://docs.yearn.finance/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/yearn-finance/"
- },
- "ZEC-USD":{
- "name":"Zcash",
- "tags":[
- "Layer 1"
- ],
- "websiteLink":"https://z.cash/",
- "whitepaperLink":"https://z.cash/technology/",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/zcash/"
- },
- "ZRX-USD":{
- "name":"0x",
- "tags":[
- "Defi"
- ],
- "websiteLink":"https://0x.org/",
- "whitepaperLink":"https://0x.org/pdfs/0x_white_paper.pdf",
- "coinMarketCapsLink":"https://coinmarketcap.com/currencies/0x/"
- }
- }
\ No newline at end of file
+ "1INCH-USD": {
+ "name": "1inch",
+ "tags": ["Defi"],
+ "websiteLink": "https://1inch.io/",
+ "whitepaperLink": "https://github.com/1inch",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/1inch/"
+ },
+ "AAVE-USD": {
+ "name": "Aave",
+ "tags": ["Defi"],
+ "websiteLink": "https://aave.com/",
+ "whitepaperLink": "https://github.com/aave/protocol-v2/blob/master/aave-v2-whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/aave/"
+ },
+ "ADA-USD": {
+ "name": "Cardano",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://cardano.org/",
+ "whitepaperLink": "https://why.cardano.org/en/introduction/motivation/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/cardano/"
+ },
+ "ALGO-USD": {
+ "name": "Algorand",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://algorand.com/",
+ "whitepaperLink": "https://algorand.com/technology/white-papers",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/algorand/"
+ },
+ "APE-USD": {
+ "name": "ApeCoin",
+ "tags": [],
+ "websiteLink": "https://apecoin.com/",
+ "whitepaperLink": "https://apecoin.com/about",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/apecoin-ape/"
+ },
+ "APT-USD": {
+ "name": "Aptos",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://aptoslabs.com/",
+ "whitepaperLink": "https://aptos.dev/aptos-white-paper/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/aptos/"
+ },
+ "ARB-USD": {
+ "name": "Arbitrum",
+ "tags": [],
+ "websiteLink": "https://arbitrum.io/",
+ "whitepaperLink": "https://github.com/OffchainLabs/nitro",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/arbitrum/"
+ },
+ "ATOM-USD": {
+ "name": "Cosmos",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://cosmos.network/",
+ "whitepaperLink": "https://v1.cosmos.network/resources/whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/cosmos/"
+ },
+ "AVAX-USD": {
+ "name": "Avalanche",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://www.avalabs.org/",
+ "whitepaperLink": "https://assets.website-files.com/5d80307810123f5ffbb34d6e/6008d7bbf8b10d1eb01e7e16_Avalanche%20Platform%20Whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/avalanche/"
+ },
+ "BCH-USD": {
+ "name": "Bitcoin Cash",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://bitcoincash.org/",
+ "whitepaperLink": "https://bitcoincash.org/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/bitcoin-cash/"
+ },
+ "BLUR-USD": {
+ "name": "Blur",
+ "tags": [],
+ "websiteLink": "https://blur.io/",
+ "whitepaperLink": "https://docs.blur.foundation/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/blur-token/"
+ },
+ "CELO-USD": {
+ "name": "Celo",
+ "tags": [],
+ "websiteLink": "https://celo.org",
+ "whitepaperLink": "https://docs.celo.org",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/celo/"
+ },
+ "BTC-USD": {
+ "name": "Bitcoin",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://bitcoin.org/",
+ "whitepaperLink": "https://bitcoin.org/bitcoin.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/bitcoin/"
+ },
+ "COMP-USD": {
+ "name": "Compound",
+ "tags": ["Defi"],
+ "websiteLink": "https://compound.finance/",
+ "whitepaperLink": "https://compound.finance/documents/Compound.Whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/compound/"
+ },
+ "CRV-USD": {
+ "name": "Curve",
+ "tags": ["Governance"],
+ "websiteLink": "https://curve.fi/",
+ "whitepaperLink": "https://curve.fi/whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/curve-dao-token/"
+ },
+ "DOGE-USD": {
+ "name": "Dogecoin",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://dogecoin.com/",
+ "whitepaperLink": "https://github.com/dogecoin/dogecoin",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/dogecoin/"
+ },
+ "DOT-USD": {
+ "name": "Polkadot",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://polkadot.network/",
+ "whitepaperLink": "https://polkadot.network/PolkaDotPaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/polkadot-new/"
+ },
+ "ENJ-USD": {
+ "name": "Enjin",
+ "tags": [],
+ "websiteLink": "https://enjin.io/",
+ "whitepaperLink": "https://cdn.enjin.io/downloads/whitepapers/enjin-coin/en.pdf/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/enjin-coin/"
+ },
+ "EOS-USD": {
+ "name": "EOS",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://eos.io/",
+ "whitepaperLink": "https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/eos/"
+ },
+ "ETC-USD": {
+ "name": "Ethereum Classic",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://ethereumclassic.org/",
+ "whitepaperLink": "https://ethereumclassic.org/why-classic",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/ethereum-classic/"
+ },
+ "ETH-USD": {
+ "name": "Ethereum",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://ethereum.org/",
+ "whitepaperLink": "https://ethereum.org/whitepaper/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/ethereum/",
+ "displayStepSize": "0.001",
+ "displayTickSize": "0.1"
+ },
+ "FIL-USD": {
+ "name": "Filecoin",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://filecoin.io/",
+ "whitepaperLink": "https://filecoin.io/filecoin.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/filecoin/"
+ },
+ "HNT-USD": {
+ "name": "Helium",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://www.helium.com",
+ "whitepaperLink": "http://whitepaper.helium.com",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/helium/"
+ },
+ "ICP-USD": {
+ "name": "Internet Computer",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://dfinity.org",
+ "whitepaperLink": "https://dfinity.org/whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/internet-computer/"
+ },
+ "LDO-USD": {
+ "name": "Lido DAO",
+ "tags": ["Defi"],
+ "websiteLink": "https://lido.fi/",
+ "whitepaperLink": "https://lido.fi/static/Lido:Ethereum-Liquid-Staking.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/lido-dao/"
+ },
+ "LINK-USD": {
+ "name": "Chainlink",
+ "tags": ["Defi"],
+ "websiteLink": "https://chain.link/",
+ "whitepaperLink": "https://link.smartcontract.com/whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/chainlink/"
+ },
+ "LTC-USD": {
+ "name": "Litecoin",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://litecoin.org/",
+ "whitepaperLink": "https://litecoin.info/index.php/Main_Page",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/litecoin/"
+ },
+ "MATIC-USD": {
+ "name": "Polygon",
+ "tags": ["Layer 2"],
+ "websiteLink": "https://polygon.technology/",
+ "whitepaperLink": "https://polygon.technology/lightpaper-polygon.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/polygon/"
+ },
+ "MKR-USD": {
+ "name": "Maker",
+ "tags": ["Governance"],
+ "websiteLink": "https://makerdao.com",
+ "whitepaperLink": "https://makerdao.com/whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/maker/"
+ },
+ "NEAR-USD": {
+ "name": "NEAR Protocol",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://near.org",
+ "whitepaperLink": "https://near.org/papers/the-official-near-white-paper/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/near-protocol/"
+ },
+ "OP-USD": {
+ "name": "Optimism",
+ "tags": [],
+ "websiteLink": "https://www.optimism.io/",
+ "whitepaperLink": "https://github.com/ethereum-optimism",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/optimism-ethereum/"
+ },
+ "PEPE-USD": {
+ "name": "Pepe",
+ "tags": [],
+ "websiteLink": "https://www.pepe.vip/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/pepe/"
+ },
+ "RUNE-USD": {
+ "name": "THORChain",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://thorchain.org",
+ "whitepaperLink": "https://whitepaper.io/document/709/thorchain-whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/thorchain/"
+ },
+ "SEI-USD": {
+ "name": "Sei",
+ "tags": ["Layer 1", "Defi"],
+ "websiteLink": "https://www.sei.io/",
+ "whitepaperLink": "https://github.com/sei-protocol/sei-chain/blob/3c9576fee3494ce039df684624f918dd8066ba3f/whitepaper/Sei_Whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/sei/"
+ },
+ "SHIB-USD": {
+ "name": "Shiba Inu",
+ "tags": [],
+ "websiteLink": "https://shibatoken.com/",
+ "whitepaperLink": "https://docs.shibatoken.com/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/shiba-inu/"
+ },
+ "SNX-USD": {
+ "name": "Synthetix",
+ "tags": ["Defi"],
+ "websiteLink": "https://synthetix.io/",
+ "whitepaperLink": "https://docs.synthetix.io/litepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/synthetix-network-token/"
+ },
+ "SOL-USD": {
+ "name": "Solana",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://solana.com/",
+ "whitepaperLink": "https://solana.com/solana-whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/solana/"
+ },
+ "SUI-USD": {
+ "name": "Sui",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://sui.io/",
+ "whitepaperLink": "https://github.com/MystenLabs",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/sui/"
+ },
+ "SUSHI-USD": {
+ "name": "Sushi",
+ "tags": ["Defi"],
+ "websiteLink": "https://sushi.com/",
+ "whitepaperLink": "https://docs.sushi.com/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/sushiswap/"
+ },
+ "TIA-USD": {
+ "name": "Celestia",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://celestia.org/",
+ "whitepaperLink": "https://arxiv.org/pdf/1905.09274.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/celestia/"
+ },
+ "TRX-USD": {
+ "name": "TRON",
+ "tags": ["Defi"],
+ "websiteLink": "https://tron.network/",
+ "whitepaperLink": "https://tron.network/static/doc/white_paper_v_2_0.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/tron/"
+ },
+ "UMA-USD": {
+ "name": "UMA",
+ "tags": ["Defi"],
+ "websiteLink": "https://umaproject.org/",
+ "whitepaperLink": "https://github.com/UMAprotocol/whitepaper",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/uma/"
+ },
+ "UNI-USD": {
+ "name": "Uniswap",
+ "tags": ["Defi"],
+ "websiteLink": "https://uniswap.org/",
+ "whitepaperLink": "https://uniswap.org/whitepaper-v3.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/uniswap/"
+ },
+ "WLD-USD": {
+ "name": "Worldcoin",
+ "tags": [],
+ "websiteLink": "https://worldcoin.org/",
+ "whitepaperLink": "https://whitepaper.worldcoin.org/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/worldcoin-org/"
+ },
+ "XLM-USD": {
+ "name": "Stellar",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://www.stellar.org/",
+ "whitepaperLink": "https://www.stellar.org/papers/stellar-consensus-protocol",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/stellar/"
+ },
+ "XMR-USD": {
+ "name": "Monero",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://www.getmonero.org/",
+ "whitepaperLink": "https://www.getmonero.org/resources/research-lab/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/monero/"
+ },
+ "XRP-USD": {
+ "name": "Ripple",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://ripple.com/currency/",
+ "whitepaperLink": "https://github.com/ripple",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/xrp/"
+ },
+ "XTZ-USD": {
+ "name": "Tezos",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://tezos.com",
+ "whitepaperLink": "https://tezos.com/whitepaper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/tezos/"
+ },
+ "YFI-USD": {
+ "name": "Yearn",
+ "tags": ["Defi"],
+ "websiteLink": "https://yearn.finance/",
+ "whitepaperLink": "https://docs.yearn.finance/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/yearn-finance/"
+ },
+ "ZEC-USD": {
+ "name": "Zcash",
+ "tags": ["Layer 1"],
+ "websiteLink": "https://z.cash/",
+ "whitepaperLink": "https://z.cash/technology/",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/zcash/"
+ },
+ "ZRX-USD": {
+ "name": "0x",
+ "tags": ["Defi"],
+ "websiteLink": "https://0x.org/",
+ "whitepaperLink": "https://0x.org/pdfs/0x_white_paper.pdf",
+ "coinMarketCapsLink": "https://coinmarketcap.com/currencies/0x/"
+ }
+}
diff --git a/public/currencies/tia.png b/public/currencies/tia.png
new file mode 100644
index 0000000..7dc9a4f
Binary files /dev/null and b/public/currencies/tia.png differ
diff --git a/public/currencies/unavailable.png b/public/currencies/unavailable.png
new file mode 100644
index 0000000..922585a
Binary files /dev/null and b/public/currencies/unavailable.png differ
diff --git a/src/App.tsx b/src/App.tsx
index 57d1970..ae59c05 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -1,4 +1,4 @@
-import { Suspense } from 'react';
+import { lazy, Suspense } from 'react';
import { Navigate, Route, Routes } from 'react-router-dom';
import styled, { AnyStyledComponent, css } from 'styled-components';
import { WagmiConfig } from 'wagmi';
@@ -25,16 +25,6 @@ import { SubaccountProvider } from '@/hooks/useSubaccount';
import { GuardedMobileRoute } from '@/components/GuardedMobileRoute';
-import MarketsPage from '@/pages/markets/Markets';
-import PortfolioPage from '@/pages/portfolio/Portfolio';
-import { AlertsPage } from '@/pages/AlertsPage';
-import ProfilePage from '@/pages/Profile';
-import { SettingsPage } from '@/pages/settings/Settings';
-import TradePage from '@/pages/trade/Trade';
-import { RewardsPage } from '@/pages/rewards/RewardsPage';
-import { TermsOfUsePage } from '@/pages/TermsOfUsePage';
-import { PrivacyPolicyPage } from '@/pages/PrivacyPolicyPage';
-
import { HeaderDesktop } from '@/layout/Header/HeaderDesktop';
import { FooterDesktop } from '@/layout/Footer/FooterDesktop';
import { FooterMobile } from '@/layout/Footer/FooterMobile';
@@ -46,11 +36,22 @@ import { config } from '@/lib/wagmi';
import { breakpoints } from '@/styles';
import { layoutMixins } from '@/styles/layoutMixins';
+import { LoadingSpace } from './components/Loading/LoadingSpinner';
import '@/styles/constants.css';
import '@/styles/fonts.css';
import '@/styles/web3modal.css';
+const MarketsPage = lazy(() => import('@/pages/markets/Markets'));
+const PortfolioPage = lazy(() => import('@/pages/portfolio/Portfolio'));
+const AlertsPage = lazy(() => import('@/pages/AlertsPage'));
+const ProfilePage = lazy(() => import('@/pages/Profile'));
+const SettingsPage = lazy(() => import('@/pages/settings/Settings'));
+const TradePage = lazy(() => import('@/pages/trade/Trade'));
+const RewardsPage = lazy(() => import('@/pages/rewards/RewardsPage'));
+const TermsOfUsePage = lazy(() => import('@/pages/TermsOfUsePage'));
+const PrivacyPolicyPage = lazy(() => import('@/pages/PrivacyPolicyPage'));
+
const queryClient = new QueryClient();
const Content = () => {
@@ -69,7 +70,7 @@ const Content = () => {
{isNotTablet && }
-
+ }>
} />
diff --git a/src/components/AssetIcon.tsx b/src/components/AssetIcon.tsx
index 5ecc426..1ea994b 100644
--- a/src/components/AssetIcon.tsx
+++ b/src/components/AssetIcon.tsx
@@ -45,6 +45,7 @@ const assetIcons = {
SOL: '/currencies/sol.png',
SUI: '/currencies/sui.png',
SUSHI: '/currencies/sushi.png',
+ TIA: '/currencies/tia.png',
TRX: '/currencies/trx.png',
UMA: '/currencies/uma.png',
UNI: '/currencies/uni.png',
@@ -71,8 +72,13 @@ export const AssetIcon = ({
}: {
symbol?: Nullable;
className?: string;
-}) =>
- isAssetSymbol(symbol) ? : null;
+}) => (
+
+);
const Styled: Record = {};
diff --git a/src/constants/markets.ts b/src/constants/markets.ts
index 9d92c9c..edb44f9 100644
--- a/src/constants/markets.ts
+++ b/src/constants/markets.ts
@@ -26,39 +26,3 @@ export enum FundingDirection {
ToShort = 'ToShort',
ToLong = 'ToLong',
}
-
-export const MARKETS_TO_DISPLAY = [
- 'BTC-USD',
- 'ETH-USD',
- 'LINK-USD',
- 'SOL-USD',
- 'MATIC-USD',
- 'ATOM-USD',
- 'AVAX-USD',
- 'APE-USD',
- 'XRP-USD',
- 'UNI-USD',
- 'ADA-USD',
- 'TRX-USD',
- 'OP-USD',
- 'MKR-USD',
- 'DOGE-USD',
- 'SHIB-USD',
- 'COMP-USD',
- 'LDO-USD',
- 'NEAR-USD',
- 'APT-USD',
- 'SUI-USD',
- 'DOT-USD',
- 'ETC-USD',
- 'ARB-USD',
- 'CRV-USD',
- 'BLUR-USD',
- 'FIL-USD',
- 'XLM-USD',
- 'PEPE-USD',
- 'WLD-USD',
- 'SEI-USD',
- 'LTC-USD',
- 'BCH-USD',
-];
diff --git a/src/hooks/useCurrentMarketId.ts b/src/hooks/useCurrentMarketId.ts
index 7530a2c..c9a9166 100644
--- a/src/hooks/useCurrentMarketId.ts
+++ b/src/hooks/useCurrentMarketId.ts
@@ -5,16 +5,15 @@ import { useMatch, useNavigate } from 'react-router-dom';
import { LocalStorageKey } from '@/constants/localStorage';
import { DEFAULT_MARKETID } from '@/constants/markets';
import { AppRoute } from '@/constants/routes';
+import { useLocalStorage } from '@/hooks/useLocalStorage';
import { getSelectedNetwork } from '@/state/appSelectors';
import { closeDialogInTradeBox } from '@/state/dialogs';
import { setCurrentMarketId } from '@/state/perpetuals';
+import { getMarketIds } from '@/state/perpetualsSelectors';
import abacusStateManager from '@/lib/abacus';
-import { useLocalStorage } from './useLocalStorage';
-import { getMarketIds } from '@/state/perpetualsSelectors';
-
export const useCurrentMarketId = () => {
const navigate = useNavigate();
const match = useMatch(`/${AppRoute.Trade}/:marketId`);
@@ -33,17 +32,35 @@ export const useCurrentMarketId = () => {
if (marketIds.length === 0) return marketId ?? lastViewedMarket;
if (!marketIds.includes(marketId ?? lastViewedMarket)) return DEFAULT_MARKETID;
return marketId ?? lastViewedMarket;
- }, [marketIds, marketId]);
+ }, [hasMarketIds, marketId]);
useEffect(() => {
- setLastViewedMarket(validId);
- dispatch(setCurrentMarketId(validId));
- dispatch(closeDialogInTradeBox());
+ // If v4_markets has not been subscribed to yet or marketId is not specified, default to validId
+ if (!hasMarketIds || !marketId) {
+ setLastViewedMarket(validId);
+ dispatch(setCurrentMarketId(validId));
+ dispatch(closeDialogInTradeBox());
- navigate(`${AppRoute.Trade}/${validId}`, {
- replace: true,
- });
- }, [validId]);
+ if (validId !== marketId) {
+ navigate(`${AppRoute.Trade}/${validId}`, {
+ replace: true,
+ });
+ }
+ } else {
+ // If v4_markets has been subscribed to, check if marketId is valid
+ if (!marketIds.includes(marketId)) {
+ // If marketId is not valid (i.e. final settlement), navigate to markets page
+ navigate(AppRoute.Markets, {
+ replace: true,
+ });
+ } else {
+ // If marketId is valid, set currentMarketId
+ setLastViewedMarket(marketId);
+ dispatch(setCurrentMarketId(marketId));
+ dispatch(closeDialogInTradeBox());
+ }
+ }
+ }, [hasMarketIds, marketId]);
useEffect(() => {
// Check for marketIds otherwise Abacus will silently fail its isMarketValid check
diff --git a/src/hooks/useMarketsData.ts b/src/hooks/useMarketsData.ts
index e9ec038..020db64 100644
--- a/src/hooks/useMarketsData.ts
+++ b/src/hooks/useMarketsData.ts
@@ -1,14 +1,7 @@
import { useMemo } from 'react';
import { useSelector, shallowEqual } from 'react-redux';
-import {
- MarketFilters,
- MARKET_FILTER_LABELS,
- type MarketData,
- MARKETS_TO_DISPLAY,
-} from '@/constants/markets';
-
-import { testFlags } from '@/lib/testFlags';
+import { MarketFilters, MARKET_FILTER_LABELS, type MarketData } from '@/constants/markets';
import { getAssets } from '@/state/assetsSelectors';
import { getPerpetualMarkets } from '@/state/perpetualsSelectors';
@@ -49,9 +42,7 @@ export const useMarketsData = (
}, [allPerpetualMarkets, allAssets]);
const filteredMarkets = useMemo(() => {
- const filtered = markets
- .filter(filterFunctions[filter])
- .filter(({ id }) => (testFlags.displayAllMarkets ? true : MARKETS_TO_DISPLAY.includes(id)));
+ const filtered = markets.filter(filterFunctions[filter]);
if (searchFilter) {
return filtered.filter(
diff --git a/src/lib/testFlags.ts b/src/lib/testFlags.ts
index bbb5aed..b4a0364 100644
--- a/src/lib/testFlags.ts
+++ b/src/lib/testFlags.ts
@@ -5,13 +5,13 @@ class TestFlags {
this.queryParams = {};
const hash = window.location.hash;
const queryIndex = hash.indexOf('?');
- if (queryIndex === -1) return
+ if (queryIndex === -1) return;
const queryParamsString = hash.substring(queryIndex + 1);
const params = new URLSearchParams(queryParamsString);
for (const [key, value] of params) {
- this.queryParams[key] = value;
+ this.queryParams[key] = value;
}
}
@@ -19,10 +19,6 @@ class TestFlags {
return !!this.queryParams.displayInitializingMarkets;
}
- get displayAllMarkets() {
- return !!this.queryParams.displayAllMarkets;
- }
-
get withCCTP() {
return !!this.queryParams.withCCTP;
}
diff --git a/src/pages/AlertsPage.tsx b/src/pages/AlertsPage.tsx
index 87b6a6a..96bf932 100644
--- a/src/pages/AlertsPage.tsx
+++ b/src/pages/AlertsPage.tsx
@@ -1,4 +1,6 @@
import { DialogPlacement } from '@/components/Dialog';
import { NotificationsMenu } from '@/views/menus/NotificationsMenu';
-export const AlertsPage = () => ;
+const AlertsPage = () => ;
+
+export default AlertsPage;
diff --git a/src/pages/PrivacyPolicyPage.tsx b/src/pages/PrivacyPolicyPage.tsx
index ac854ce..226ddb5 100644
--- a/src/pages/PrivacyPolicyPage.tsx
+++ b/src/pages/PrivacyPolicyPage.tsx
@@ -2,7 +2,7 @@ import styled, { AnyStyledComponent } from 'styled-components';
import { articleMixins } from '@/styles/articleMixins';
-export const PrivacyPolicyPage = () => (
+const PrivacyPolicyPage = () => (
Privacy Policy
@@ -10,6 +10,8 @@ export const PrivacyPolicyPage = () => (
);
+export default PrivacyPolicyPage;
+
const Styled: Record = {};
Styled.Article = styled.article`
diff --git a/src/pages/TermsOfUsePage.tsx b/src/pages/TermsOfUsePage.tsx
index cc4ea51..63f431c 100644
--- a/src/pages/TermsOfUsePage.tsx
+++ b/src/pages/TermsOfUsePage.tsx
@@ -2,7 +2,7 @@ import styled, { AnyStyledComponent } from 'styled-components';
import { articleMixins } from '@/styles/articleMixins';
-export const TermsOfUsePage = () => (
+const TermsOfUsePage = () => (
Sample Terms of Use
@@ -1076,6 +1076,8 @@ export const TermsOfUsePage = () => (
);
+export default TermsOfUsePage;
+
const Styled: Record = {};
Styled.Article = styled.article`
diff --git a/src/pages/portfolio/Portfolio.tsx b/src/pages/portfolio/Portfolio.tsx
index dc64379..9b46b43 100644
--- a/src/pages/portfolio/Portfolio.tsx
+++ b/src/pages/portfolio/Portfolio.tsx
@@ -1,17 +1,20 @@
+import { lazy, Suspense } from 'react';
import { shallowEqual, useDispatch, useSelector } from 'react-redux';
import styled, { type AnyStyledComponent } from 'styled-components';
import { Navigate, Route, Routes } from 'react-router-dom';
import { OnboardingState } from '@/constants/account';
+import { ButtonAction } from '@/constants/buttons';
import { DialogTypes } from '@/constants/dialogs';
import { STRING_KEYS } from '@/constants/localization';
import { HistoryRoute, PortfolioRoute } from '@/constants/routes';
-
import { useAccountBalance, useBreakpoints, useDocumentTitle, useStringGetter } from '@/hooks';
+import { layoutMixins } from '@/styles/layoutMixins';
import { FillsTable, FillsTableColumnKey } from '@/views/tables/FillsTable';
import { FundingPaymentsTable } from '@/views/tables/FundingPaymentsTable';
import { TransferHistoryTable } from '@/views/tables/TransferHistoryTable';
+import { Button } from '@/components/Button';
import { Icon, IconName } from '@/components/Icon';
import { NavigationMenu } from '@/components/NavigationMenu';
import { WithSidebar } from '@/components/WithSidebar';
@@ -20,15 +23,15 @@ import { getOnboardingState, getSubaccount } from '@/state/accountSelectors';
import { openDialog } from '@/state/dialogs';
import { PortfolioNavMobile } from './PortfolioNavMobile';
-import { Overview } from './Overview';
-import { Positions } from './Positions';
-import { Orders } from './Orders';
-import { Fees } from './Fees';
-import { History } from './History';
+import { LoadingSpace } from '@/components/Loading/LoadingSpinner';
-import { layoutMixins } from '@/styles/layoutMixins';
-import { Button } from '@/components/Button';
-import { ButtonAction } from '@/constants/buttons';
+const Overview = lazy(() => import('./Overview').then((module) => ({ default: module.Overview })));
+const Positions = lazy(() =>
+ import('./Positions').then((module) => ({ default: module.Positions }))
+);
+const Orders = lazy(() => import('./Orders').then((module) => ({ default: module.Orders })));
+const Fees = lazy(() => import('./Fees').then((module) => ({ default: module.Fees })));
+const History = lazy(() => import('./History').then((module) => ({ default: module.History })));
export default () => {
const dispatch = useDispatch();
@@ -44,49 +47,51 @@ export default () => {
useDocumentTitle(stringGetter({ key: STRING_KEYS.PORTFOLIO }));
const routesComponent = (
-
- } />
- } />
- } />
- } />
- }>
- } />
-
- }
- />
- }
- />
- }
- />
-
- } />
-
+ }>
+
+ } />
+ } />
+ } />
+ } />
+ }>
+ } />
+
+ }
+ />
+ }
+ />
+ }
+ />
+
+ } />
+
+
);
return isTablet ? (
@@ -191,7 +196,7 @@ Styled.SideBar = styled.div`
Styled.Footer = styled.div`
${layoutMixins.row}
flex-wrap: wrap;
-
+
padding: 1rem;
gap: 0.5rem;
diff --git a/src/pages/rewards/RewardsPage.tsx b/src/pages/rewards/RewardsPage.tsx
index 745d746..2476c0f 100644
--- a/src/pages/rewards/RewardsPage.tsx
+++ b/src/pages/rewards/RewardsPage.tsx
@@ -21,7 +21,7 @@ import { DYDXBalancePanel } from './DYDXBalancePanel';
import { MigratePanel } from './MigratePanel';
import { LaunchIncentivesPanel } from './LaunchIncentivesPanel';
-export const RewardsPage = () => {
+const RewardsPage = () => {
const dispatch = useDispatch();
const stringGetter = useStringGetter();
const { governanceLearnMore, stakingLearnMore } = useURLConfigs();
@@ -84,6 +84,8 @@ export const RewardsPage = () => {
);
};
+export default RewardsPage;
+
const Styled: Record = {};
Styled.Page = styled.div`
diff --git a/src/pages/settings/Settings.tsx b/src/pages/settings/Settings.tsx
index 15de0d3..e8dde6d 100644
--- a/src/pages/settings/Settings.tsx
+++ b/src/pages/settings/Settings.tsx
@@ -25,7 +25,7 @@ import { useNetworks } from '@/views/menus/useNetworks';
import { SettingsHeader } from './SettingsHeader';
import { ComingSoonSpace } from '@/components/ComingSoon';
-export const SettingsPage = () => {
+const SettingsPage = () => {
const stringGetter = useStringGetter();
const { pathname } = useLocation();
const dispatch = useDispatch();
@@ -105,3 +105,5 @@ export const SettingsPage = () => {
>
);
};
+
+export default SettingsPage;
diff --git a/src/views/ExchangeBillboards.tsx b/src/views/ExchangeBillboards.tsx
index bdb90e4..d6ce345 100644
--- a/src/views/ExchangeBillboards.tsx
+++ b/src/views/ExchangeBillboards.tsx
@@ -2,9 +2,7 @@ import styled, { type AnyStyledComponent } from 'styled-components';
import { shallowEqual, useSelector } from 'react-redux';
import { STRING_KEYS } from '@/constants/localization';
-import { MARKETS_TO_DISPLAY } from '@/constants/markets';
import { useBreakpoints, useStringGetter } from '@/hooks';
-import { testFlags } from '@/lib/testFlags';
import { breakpoints } from '@/styles';
import { layoutMixins } from '@/styles/layoutMixins';
@@ -34,7 +32,6 @@ export const ExchangeBillboards: React.FC = ({
Object.values(perpetualMarkets)
.filter(Boolean)
- .filter(({ id }) => (testFlags.displayAllMarkets ? true : MARKETS_TO_DISPLAY.includes(id)))
.forEach(({ oraclePrice, perpetual }) => {
const { volume24H, trades24H, openInterest = 0 } = perpetual || {};
volume24HUSDC += volume24H ?? 0;
diff --git a/src/views/dialogs/DetailsDialog/FillDetailsDialog.tsx b/src/views/dialogs/DetailsDialog/FillDetailsDialog.tsx
index ffdbe72..0ba26c9 100644
--- a/src/views/dialogs/DetailsDialog/FillDetailsDialog.tsx
+++ b/src/views/dialogs/DetailsDialog/FillDetailsDialog.tsx
@@ -94,7 +94,7 @@ export const FillDetailsDialog = ({ fillId, setIsOpen }: ElementProps) => {
return (
}
+ slotIcon={}
title={resources.typeStringKey && stringGetter({ key: resources.typeStringKey })}
items={detailItems}
setIsOpen={setIsOpen}
diff --git a/src/views/dialogs/DetailsDialog/OrderDetailsDialog.tsx b/src/views/dialogs/DetailsDialog/OrderDetailsDialog.tsx
index e0c0737..904d15d 100644
--- a/src/views/dialogs/DetailsDialog/OrderDetailsDialog.tsx
+++ b/src/views/dialogs/DetailsDialog/OrderDetailsDialog.tsx
@@ -194,7 +194,7 @@ export const OrderDetailsDialog = ({ orderId, setIsOpen }: ElementProps) => {
return (
}
+ slotIcon={}
title={!resources.typeStringKey ? '' : stringGetter({ key: resources.typeStringKey })}
slotFooter={
isAccountViewOnly ? null : isOrderStatusClearable(status) ? (