From 56a91160ee2461982bfca6f118d5cd05b92df2ec Mon Sep 17 00:00:00 2001 From: John Huang Date: Fri, 6 Oct 2023 11:51:59 -0400 Subject: [PATCH 1/8] TRCL-2892-configs-changes --- public/configs/env.json | 524 ++++++++++++++++++++++++++++++++---- public/configs/wallets.json | 474 ++++++++++++++++++++++++++++++++ 2 files changed, 943 insertions(+), 55 deletions(-) create mode 100644 public/configs/wallets.json diff --git a/public/configs/env.json b/public/configs/env.json index 5e051ac..6d1890f 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -14,7 +14,11 @@ "dydxprotocol-dev-4", "dydxprotocol-dev-5", "dydxprotocol-staging", - "dydxprotocol-testnet" + "dydxprotocol-testnet", + "dydxprotocol-testnet-dydx", + "dydxprotocol-testnet-dsrv", + "dydxprotocol-testnet-nodefleet", + "dydxprotocol-testnet-kingnodes" ], "default":"dydxprotocol-testnet" } @@ -26,15 +30,15 @@ "dydxChainId":"dydxprotocol-testnet", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -53,7 +57,32 @@ "links":{ "tos":"https://dydx.exchange/v4-terms", "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}" + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } }, "dydxprotocol-dev-2":{ @@ -62,15 +91,15 @@ "dydxChainId":"dydxprotocol-testnet", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -88,7 +117,32 @@ "links":{ "tos":"https://dydx.exchange/v4-terms", "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}" + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } }, "dydxprotocol-dev-4":{ @@ -97,15 +151,15 @@ "dydxChainId":"dydxprotocol-testnet", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -123,7 +177,32 @@ "links":{ "tos":"https://dydx.exchange/v4-terms", "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}" + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } }, "dydxprotocol-dev-5":{ @@ -132,15 +211,15 @@ "dydxChainId":"dydxprotocol-testnet", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -158,7 +237,32 @@ "links":{ "tos":"https://dydx.exchange/v4-terms", "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}" + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } }, "dydxprotocol-staging":{ @@ -167,15 +271,15 @@ "dydxChainId":"dydxprotocol-testnet", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -197,7 +301,32 @@ "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", "documentation":"https://v4-teacher.vercel.app/", "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform" + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } }, "dydxprotocol-testnet":{ @@ -206,15 +335,15 @@ "dydxChainId":"dydx-testnet-3", "isMainNet":false, "tokens":{ - "chain": { - "name": "DYDX", - "denom": "dv4tnt", - "image": "/currencies/dydx.png" + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" }, - "usdc": { - "name": "USDC", - "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image": "/currencies/usdc.png" + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" } }, "endpoints":{ @@ -237,7 +366,292 @@ "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", "documentation":"https://v4-teacher.vercel.app/", "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform" + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" + } + }, + "dydxprotocol-testnet-dydx":{ + "name":"v4 Public Testnet/dYdX", + "ethereumChainId":"5", + "dydxChainId":"dydx-testnet-3", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://indexer.v4testnet.dydx.exchange", + "socket":"wss://indexer.v4testnet.dydx.exchange" + } + ], + "validators":[ + "https://validator.v4testnet.dydx.exchange" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet":"https://faucet.v4testnet.dydx.exchange" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "statusPage":"https://status.v4testnet.dydx.exchange/", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" + } + }, + "dydxprotocol-testnet-dsrv":{ + "name":"v4 Public Testnet/DSRV", + "ethereumChainId":"5", + "dydxChainId":"dydx-testnet-3", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://dydx-testnet.imperator.co", + "socket":"wss://dydx-testnet.imperator.co" + } + ], + "validators":[ + "https://dydx-testnet-archive.allthatnode.com:26657/XZvMM41hESf8PJrEQiTzbCOMVyFca79R" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet":"https://faucet.v4testnet.dydx.exchange" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "statusPage":"https://status.v4testnet.dydx.exchange/", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" + } + }, + "dydxprotocol-testnet-nodefleet":{ + "name":"v4 Public Testnet/nodefleet", + "ethereumChainId":"5", + "dydxChainId":"dydx-testnet-3", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://dydx-testnet.imperator.co", + "socket":"wss://dydx-testnet.imperator.co" + } + ], + "validators":[ + "https://dydx-testnet.nodefleet.org" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet":"https://faucet.v4testnet.dydx.exchange" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "statusPage":"https://status.v4testnet.dydx.exchange/", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" + } + }, + "dydxprotocol-testnet-kingnodes":{ + "name":"v4 Public Testnet/KingNodes", + "ethereumChainId":"5", + "dydxChainId":"dydx-testnet-3", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://dydx-testnet.imperator.co", + "socket":"wss://dydx-testnet.imperator.co" + } + ], + "validators":[ + "https://test-dydx.kingnodes.com/" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet":"https://faucet.v4testnet.dydx.exchange" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "statusPage":"https://status.v4testnet.dydx.exchange/", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnectv1":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "walletconnectv2":{ + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "url":"https://trade.dydx.exchange/", + "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + }, + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + }, + "walletSegue":{ + "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + }, + "images":"https://v4.testnet.dydx.exchange/wallets/" } } } diff --git a/public/configs/wallets.json b/public/configs/wallets.json new file mode 100644 index 0000000..221733b --- /dev/null +++ b/public/configs/wallets.json @@ -0,0 +1,474 @@ +[ + { + "id":"c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96", + "name":"MetaMask", + "description":"", + "homepage":"https://metamask.io/", + "chains":[ + "eip155:1", + "eip155:42161", + "eip155:43114" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/metamask/id1438144202", + "android":"https://play.google.com/store/apps/details?id=io.metamask", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"metamask:", + "universal":"https://metamask.app.link" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"MetaMask", + "colors":{ + "primary":"rgb(255, 255, 255)", + "secondary":"" + } + }, + "config":{ + "comment":"MetaMask", + "iosMinVersion":"0", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/metamask.png", + "image":"metamask.png", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "connections":[ + { + "type":"walletConnectV2", + "native":"metamask:", + "universal":"https://metamask.app.link" + } + ] + }, + "userFields":{ + "analyticEvent":"METAMASK" + } + }, + { + "id":"coinbase-wallet", + "name":"Coinbase Wallet", + "description":"", + "homepage":"https://www.coinbase.com/wallet", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/coinbase-wallet-nfts-crypto/id1278383455", + "android":"https://play.google.com/store/apps/details?id=org.toshi", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"cbwallet:", + "universal":"" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"Coinbase", + "colors":{ + "primary":"rgb(255, 255, 255)", + "secondary":"" + } + }, + "config":{ + "comment":"Coinbase", + "iosMinVersion":"1.8.0", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/coinbase-wallet.png", + "image":"coinbase-wallet.png", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "connections":[ + { + "type":"walletSegue", + "native":"cbwallet:", + "universal":"" + } + ] + }, + "userFields":{ + "analyticEvent":"COINBASE_WALLET" + } + }, + { + "id":"9d373b43ad4d2cf190fb1a774ec964a1addf406d6fd24af94ab7596e58c291b2", + "name":"imToken", + "description":"", + "homepage":"https://token.im/", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://itunes.apple.com/us/app/imtoken2/id1384798940", + "android":"https://play.google.com/store/apps/details?id=im.token.app", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"imtokenv2:", + "universal":"" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"imToken", + "colors":{ + "primary":"rgb(255, 255, 255)", + "secondary":"" + } + }, + "config":{ + "comment":"imToken", + "iosMinVersion":"0", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/imtoken.png", + "image":"imtoken.png", + "connections":[ + { + "type":"walletConnect", + "native":"imtokenv2:", + "universal":"" + } + ] + }, + "userFields":{ + "analyticEvent":"IMTOKEN" + } + }, + { + "id":"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0", + "name":"Trust Wallet", + "description":"", + "homepage":"https://trustwallet.com/", + "chains":[ + "eip155:1", + "eip155:42161", + "eip155:43114" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/app/apple-store/id1288339409", + "android":"https://play.google.com/store/apps/details?id=com.wallet.crypto.trustapp", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"trust:", + "universal":"https://link.trustwallet.com" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"Trust", + "colors":{ + "primary":"rgb(51, 117, 187)", + "secondary":"" + } + }, + "config":{ + "comment":"Trust Wallet", + "iosMinVersion":"0", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/trust-wallet.png", + "image":"trust-wallet.png", + "connections":[ + { + "type":"walletConnectV2", + "native":"trust:", + "universal":"https://link.trustwallet.com" + } + ] + }, + "userFields":{ + "analyticEvent":"TRUST_WALLET" + } + }, + { + "id":"Zerion", + "name":"Zerion", + "description":"", + "homepage":"https://zerion.io/", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/app/apple-store/id1456732565", + "android":"https://play.google.com/store/apps/details?id=io.zerion.android", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"zerion:", + "universal":"" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"Zerion", + "colors":{ + "primary":"rgb(51, 117, 187)", + "secondary":"" + } + }, + "config":{ + "comment":"Zerion Wallet", + "iosMinVersion":"0", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/zerion.png", + "image":"zerion.png", + "connections":[ + { + "type":"walletConnectV2", + "native":"zerion:", + "universal":"" + } + ] + }, + "userFields":{ + "analyticEvent":"ZERION" + } + }, + { + "id":"20459438007b75f4f4acb98bf29aa3b800550309646d375da5fd4aac6c2a2c66", + "name":"TokenPocket", + "description":"", + "homepage":"https://tokenpocket.pro/", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/tokenpocket-trusted-wallet/id1436028697", + "android":"https://play.google.com/store/apps/details?id=vip.mytokenpocket", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"tpoutside:", + "universal":"" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"TokenPocket", + "colors":{ + "primary":"rgb(41, 128, 254)", + "secondary":"" + } + }, + "config":{ + "comment":"TokenPocket", + "iosMinVersion":"0", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/tokenpocket.png", + "image":"tokenpocket.png", + "connections":[ + { + "type":"walletConnect", + "native":"tpoutside:", + "universal":"" + } + ] + }, + "userFields":{ + "analyticEvent":"TOKEN_POCKET" + } + }, + { + "id":"1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369", + "name":"Rainbow", + "description":"", + "homepage":"https://rainbow.me/", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/rainbow-ethereum-wallet/id1457119021", + "android":"", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"rainbow:", + "universal":"https://rnbwapp.com" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"Rainbow", + "colors":{ + "primary":"rgb(0, 30, 89)", + "secondary":"" + } + }, + "config":{ + "comment":"Rainbow", + "iosMinVersion":"0", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "backlinked":true, + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/rainbow-wallet.png", + "image":"rainbow-wallet.png", + "connections":[ + { + "type":"walletConnectV2", + "native":"rainbow:", + "universal":"https://rnbwapp.com" + } + ] + }, + "userFields":{ + "analyticEvent":"RAINBOW_WALLET" + } + }, + { + "id":"09102e7bbbd3f92001eda104abe23803181629f695e8f1b95af96d88ff7d5890", + "name":"1inch Wallet", + "description":"", + "homepage":"https://1inch.io/wallet/", + "chains":[ + "eip155:1", + "eip155:56" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/1inch-defi-wallet/id1546049391", + "android":"", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"oneinch:", + "universal":"https://wallet.1inch.io" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"1inch", + "colors":{ + "primary":"rgb(31, 36, 46)", + "secondary":"" + } + }, + "config":{ + "comment":"1inch", + "iosMinVersion":"0", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/1inch.png", + "image":"1inch.png", + "connections":[ + { + "type":"walletConnect", + "native":"oneinch:", + "universal":"https://wallet.1inch.io" + } + ] + }, + "userFields":{ + "analyticEvent":"1INCH" + } + }, + { + "id":"bae74827272509a6d63ea25514d9c68ad235c14e45e183518c7ded4572a1b0c4", + "name":"Huobi Wallet", + "description":"", + "homepage":"https://huobiwallet.com/", + "chains":[ + "eip155:1" + ], + "versions":[ + "1" + ], + "app":{ + "browser":"", + "ios":"https://apps.apple.com/us/app/id1433883012", + "android":"https://play.google.com/store/apps/details?id=com.huobionchainwallet.gp", + "mac":"", + "windows":"", + "linux":"" + }, + "mobile":{ + "native":"huobiwallet:", + "universal":"" + }, + "desktop":{ + "native":"", + "universal":"" + }, + "metadata":{ + "shortName":"Huobi", + "colors":{ + "primary":"rgb(45,101,248)", + "secondary":"" + } + }, + "config":{ + "comment":"Huobi", + "iosMinVersion":"0", + "encoding":"=\"#%/<>?@\\^`{|}:&", + "imageUrl":"https://v4.testnet.dydx.exchange/wallets/huobi-wallet.png", + "image":"huobi-wallet.png", + "connections":[ + { + "type":"walletConnect", + "native":"huobiwallet:", + "universal":"" + } + ] + }, + "userFields":{ + "analyticEvent":"HUOBI_WALLET" + } + } +] \ No newline at end of file From d74ae7c78e96014313898b5e9ae9a0bbf1dff1fc Mon Sep 17 00:00:00 2001 From: John Huang Date: Fri, 6 Oct 2023 14:34:59 -0400 Subject: [PATCH 2/8] Additional changes for main net template, and WalletConnect payloads --- public/configs/env.json | 357 ++++++++++++++++++++++++---------------- 1 file changed, 216 insertions(+), 141 deletions(-) diff --git a/public/configs/env.json b/public/configs/env.json index 6d1890f..be90c61 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -1,6 +1,11 @@ { "deployments":{ - "MAINNET":null, + "MAINNET":{ + "environments":[ + "dydxprotocol-mainnet" + ], + "default":"dydxprotocol-mainnet" + }, "TESTNET":{ "environments":[ "dydxprotocol-testnet" @@ -14,6 +19,7 @@ "dydxprotocol-dev-4", "dydxprotocol-dev-5", "dydxprotocol-staging", + "dydxprotocol-staging-west", "dydxprotocol-testnet", "dydxprotocol-testnet-dydx", "dydxprotocol-testnet-dsrv", @@ -61,28 +67,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-dev-2":{ @@ -121,28 +122,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-dev-4":{ @@ -181,28 +177,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-dev-5":{ @@ -241,28 +232,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-staging":{ @@ -305,28 +291,82 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" + } + }, + "dydxprotocol-staging-west":{ + "name":"v4 Staging", + "ethereumChainId":"5", + "dydxChainId":"dydxprotocol-testnet", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://indexer.v4staging.dydx.exchange", + "socket":"wss://indexer.v4staging.dydx.exchange" + } + ], + "faucet":"https://faucet.v4staging.dydx.exchange", + "validators":[ + "https://validator-uswest1.v4staging.dydx.exchange" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnect": { + "client":{ + "name":"dYdX", + "description":"dYdX Trading App", + "iconUrl":"/logos/dydx-x.png" + }, + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } + }, + "walletSegue":{ + "callbackUrl":"/walletsegue" + }, + "images":"/wallets/" } }, "dydxprotocol-testnet":{ @@ -370,28 +410,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-testnet-dydx":{ @@ -435,28 +470,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-testnet-dsrv":{ @@ -500,28 +530,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-testnet-nodefleet":{ @@ -565,28 +590,23 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" } }, "dydxprotocol-testnet-kingnodes":{ @@ -630,28 +650,83 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnectv1":{ + "walletconnect": { "client":{ "name":"dYdX", "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "iconUrl":"/logos/dydx-x.png" }, - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" - }, - "walletconnectv2":{ - "client":{ - "name":"dYdX", - "description":"dYdX Trading App", - "url":"https://trade.dydx.exchange/", - "iconUrl":"https://media.dydx.exchange/logos/dydx-x.png" + "v1": { + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } }, "walletSegue":{ - "callbackUrl":"https://trade.stage.dydx.exchange/walletsegueCarteraExample" + "callbackUrl":"/walletsegue" }, - "images":"https://v4.testnet.dydx.exchange/wallets/" + "images":"/wallets/" + } + }, + "dydxprotocol-mainet":{ + "name":"v4", + "ethereumChainId":"1", + "dydxChainId":"[mainnet chain id]", + "isMainNet":true, + "tokens":{ + "comment": "Change according to mainnet release", + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"[REST endpoint]", + "socket":"[Websocket endpoint]" + } + ], + "validators":[ + "[Validator endpoint 1", + "[Validator endpoint n]" + ], + "0xsquid":"[0xSquid endpoint for mainnet]", + }, + "links":{ + "tos":"[HTTP link to TOS]", + "privacy":"[HTTP link to Privacy Policy]", + "mintscan":"[HTTP link to Mintscan, with {tx_hash} placeholder]", + "documentation":"[HTTP link to documentation, can be null]", + "community":"[HTTP link to community, can be null]", + "feedback":"[HTTP link to feedback form, can be null]", + "blogs":"[HTTP link to blogs, can be null]" + }, + "wallets":{ + "walletconnect": { + "client":{ + "name":"[Name of the app]", + "description":"[Description of the app]", + "iconUrl":"[Relative URL of the icon URL]" + }, + "v1": { + "bridgeUrl":"[Bridge URL]" + }, + "v2": { + "projectId":"[Project ID]" + } + }, + "walletSegue":{ + "callbackUrl":"[Relative callback URL for WalletSegue, should match apple-app-site-association]" + }, + "images":"[Relative URL for wallet images]" } } } From 9d3a7f1486f35500dbae4a56bf6cc98151ae9fa6 Mon Sep 17 00:00:00 2001 From: John Huang Date: Fri, 6 Oct 2023 14:47:25 -0400 Subject: [PATCH 3/8] Added logo file used for WalletConnect, and changed name and description in WC --- public/configs/env.json | 44 ++++++++++++++++++++-------------------- public/logos/dydx-x.png | Bin 0 -> 4936 bytes 2 files changed, 22 insertions(+), 22 deletions(-) create mode 100644 public/logos/dydx-x.png diff --git a/public/configs/env.json b/public/configs/env.json index be90c61..882a24e 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -69,8 +69,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -124,8 +124,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -179,8 +179,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -234,8 +234,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -293,8 +293,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -352,8 +352,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -412,8 +412,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -472,8 +472,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -532,8 +532,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -592,8 +592,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { @@ -652,8 +652,8 @@ "wallets":{ "walletconnect": { "client":{ - "name":"dYdX", - "description":"dYdX Trading App", + "name":"dYdX v4", + "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, "v1": { diff --git a/public/logos/dydx-x.png b/public/logos/dydx-x.png new file mode 100644 index 0000000000000000000000000000000000000000..3e96a35b00a6d0df709a842ecc2ac8ba5f7b52b9 GIT binary patch literal 4936 zcmZ`-XHXMdu%<Lg*kJV(3*mA%W0IL`0;9-bDgIstA!l5KuZwOF%+3GzB6}s)96w z6a^GSdX=Im`uJwv&-Z@pJ$q+%X6Kx{Gw05x+S!<0Vi9DaqN2KF4uc>rFz>%$Vz@Z< zsKb^ofcXyWRyY-vmdk%ZEpXrTBB7!VN0@=B8peb-E-rMw#@5DERE?Ree>~`^sJIu* zA;$Jm)H}s7bs|uaq3-6YD|VufjFOqY7WqL;q99p@oC;|VUI%4ixh8L)bp$5@j3@c0 z0I7J>k|}^(%L6dmaG#tYUj8SOF_O;wh(qJF25Z4=56ZC^&*)wn8{K`@Nsh6x-5WC) zi*;}E6 zJ`Lps>!kz0Ygyw&XVcsWm_<7@C-B!Y+ zT}4f;jQ20AH`LUhl}qPG?DTcWvP@Qc^x!?d>WJTM69F!r-_Ex-`bF;hG^Ne+zgy$c z?nxyPb#&7Mki9ghK~|eSUA#NLtybdQ{CM@gy-wqJxzBpYKmK>#EE(6!di{aw>&D|@ z%|-LYfOMBK^z~28n+m$#yOujT6t-fTAv=Q~wVb@yQ%U@1Nn%w4kD@iM(o_akHyC^j zQk(s>b6Rj(4C6bLpwLx6L^u#)+Zv+Tc;V*2mdQ@Mr?O+wRVSrrrK*0l4ah%QUi?T-pBg`XS(^g0saG! zo{B_wVs%(>jKsN><%2HNrRj0k+1!~ReP=r#iy$)D6%vdnHy(#MW(0|2XoD=xs$RQF zRrS}}aTC5Y@WFLGR8aVMYuxd=QpV9s#U~wC^>1FiDqUhlqb;VEZj)FGH^}YSf>IPO z2ru8++xMj`rv2Sec#-dz!~WiG;;LQqmA@E)D;hnnGP&f7I#r|!YU<~M@XQ)Huy-nv zI5%YUV*L4u^r&zH!d>A)+JLK|hy4RxfN`5)OMjz(sC)w%%lonaR)!j%`k~{b-&HwW zNYZMJ(M0veLvZNwSp-#@0`@3oYAAefKOEKj_klP+^n$XJ8HiO=z5SIoEN$eI%x~dt zj@GNNE6pmxiij^f6w2=W2PTgVfif*|H>rE@n&H!T(T03|rGtw2h2yXs+nwuWj8C4`m{$QFo=f`;a=-a2em!wXsEZrntMR$_UZ5Rj*A*X z^1uZ1q7`d=nwuf5x+MxKKV?(-c}(i-v#isYD0F9mX(gD}#l9pUmZR0g4%C2G=LZBO zxrPvMIwe1JwapVFB4==Z&i%-v^yKOFrLB=Phm#Y%^1^e&v9n)NHCta7j=_TRAk*>6 zWnwPirt72W@krQSLSp=2+(zluX%pX0@?whV^NSu{yCNarC)~~7`+a#2&ZDzGD?Vo> zOCSFj{IYPI=oi$FT>loDBxp3Is{11v13fO7i*$3cFS@b6duF8WtcTF47M9W!K{85lDb<; zQMs~T|GPAYd-8WAKUef<_%YXW0hpJUTD~;)$HV1EDz!R$7^g~W7mnNIN(bAwpe^#q z#x_wr{Zf+{e%4~RW}v}5p#(jXQZ*TA0*E%47NMM&HfDP3ZX1@d{&pYqwSGh1GMTKw z4y+3>Z>O&nmfh;?0m0izfCAIsH}19ATo70_clyIQ03}zy>MDxwUP&QXmt$HGjzxPW z?`wfgfS=?u*OsMgjtdFXZ;G8TprHEp3l-Nha&vcrqalR*R@ThZCbe+VWH#fHdWcNc2~sx==3;amfyf(sr7t$ z_Pb||a;5&eXVR?SV*E$9A<^a?;1mhKd1jJp0)45`h<_`o;?t*B&$lld;^uZhxpJB3P09In0p_hX*9TlJLjka&aFtpv@teFD=js3Ie>B|LQFp4<0L^bL$ zDO9$;c@n}Ej@yv<1?Qg7rB#ry%MOq+7j6Zo#%+94f>`=jlDsglLc>@pU=a)$ zA`BK*fw1iD?2`+ipX@?6cVhrkIv(ceSE1fxE=z=@T&V(fXmv&o+=~U~B~lI<9AP(8 z$UuT2zsH^$x{0ReO%7sLf%G;{$z8Fj-(V4Ucnal?%>lM$kbZdDOu1x%GMsG|{oY_^vL$yPaY?u70iuFvJJzU!2;Dt zFfC=44N+wvD3%VXjJf}Y;t=f;Y~p1|Y?&Q+UCFvS>8Blxbu_d>xaKRt!Aj_x z9LAc;Ev3^yn^CRCCp;q8CWJnqeH^ zKh|b4TxNLJP>Xe%5`vu+3FhUY7s+35>6s^(zsRK6^Y^RhBwvDN#vrpLc}uY?E-=13 zg%Cj>B4r$ul6$t?>l=K3Q?#7)@Xl;A0zT5vO8JTWHox`t%Hnu7?UIT7L9BYZDRXTA zTK`gIKi|f(p?f7n<4aJg91|+dgu61i@YucHQUMq*(j(~Rr3*%KO-H2Qjnx&9*US^i zhZA!VuW+SVa)14x(uqaAb&sk^vkSv8$?pMg zaiZ3u9VP$qD$rj{Zk3TXeJmSB$rdfkJ=31PwUPoMCCxS@X3g@+DtmAcZ9v9r*3V)NWX!Ufd;+#lpYTesMV32 zP968O=R*=|H=3Y#>7lh8LR;c51yPwwMJ08NRnRhwx2vRR83TnAo+4HNq6Z@N_Ga!S}6B>EdRaP9_9Vv3wF3*RA2_E7nudSk! za~%@0U3^ou=d103ku;^{t{d4z`PN5{^DbzW9zDXii`y&XKP8l-JH$?)0^91SWXZq9 zMA0ZsJn}1@jt*ubK2Km)bD8Z)(IeN`6;{5t=XTdOpRu@9_KYZhK;7Xp|4uLUkQlZw zUGM&}N3B9Ml!63HD0@B;6d$PO4*1yr^#y7((3qmii)blg)bdOmg11BqN|S;TV|9JL zve(q6lN-{0DGPL{z~2EsV_r&Az8Ri#7{a2nBn)JdC$?@*>`%oJ1zK^A8KrF3(})GF zXsqFfWgjVg8f&D-ZPv)dk|>vn-B^mQdTC;g(x88?!H-QpK;V0#C$O%VYyb)jX2eHRJ*C%883cub-xG65!i!z4x8tW9j2PB5 za(=izlBKd3;m(fu_) zo)9V5&+&X1OS6?IZfZYqoUO4fIUS>;gD>>Fk!DrG8n)WxeRzkGtOKokBxgu}s8zE_ zHB`57Ww-M3d0TK4!^it-Sq0_FTq9Pc<{28-!;%37q>R<$Yj8TKib7?*8+rybF?d{VI-S;be<%xZF&N?EN^NCqHkh+Vn zNng`RccLC*sK>azt;UY^(HUw9Tv89Ah}Ip`~-oBka zcND0ij^fL;0L_bb%Te_oXB$e$AoS+fW~u`)Oa&qUleYI@a1RIl{^yLsz-=jxw~1_?|_ZL$msAYzg%fO)Eht~ zukL^Kt17FsL+?2w-a2#wE39_%Kh)C`<+Uawi_Z=X-9%p9MS7?UxDOVFdE7(C`8amF zTEXjEAG)1FL@l*HI#7$$PdTaX?Qlsvf$`dz^$eF^SdExpXyh_*Zms47%!)C9n1eYHt td&dl-9Uj@UEdS5q=zo_=YM_6N^PVq}?#=q97mF_{bEplZ0qp+Ze*nwHXM_L% literal 0 HcmV?d00001 From 2c3dcf9bac630d9c8a5c749a9b7a0fa37a40cd07 Mon Sep 17 00:00:00 2001 From: John Huang Date: Fri, 6 Oct 2023 15:24:12 -0400 Subject: [PATCH 4/8] Removed a comma --- public/configs/env.json | 76 ++++++++++++++++++++--------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/public/configs/env.json b/public/configs/env.json index 882a24e..67fd6c0 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -67,16 +67,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -122,16 +122,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -177,16 +177,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -232,16 +232,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -291,16 +291,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -350,16 +350,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -410,16 +410,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -470,16 +470,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -530,16 +530,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -590,16 +590,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -650,16 +650,16 @@ "blogs":"https://www.dydx.foundation/blog" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"dYdX v4", "description":"dYdX v4 App", "iconUrl":"/logos/dydx-x.png" }, - "v1": { + "v1":{ "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" }, - "v2": { + "v2":{ "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" } }, @@ -675,7 +675,7 @@ "dydxChainId":"[mainnet chain id]", "isMainNet":true, "tokens":{ - "comment": "Change according to mainnet release", + "comment":"Change according to mainnet release", "chain":{ "name":"DYDX", "denom":"dv4tnt", @@ -698,7 +698,7 @@ "[Validator endpoint 1", "[Validator endpoint n]" ], - "0xsquid":"[0xSquid endpoint for mainnet]", + "0xsquid":"[0xSquid endpoint for mainnet]" }, "links":{ "tos":"[HTTP link to TOS]", @@ -710,16 +710,16 @@ "blogs":"[HTTP link to blogs, can be null]" }, "wallets":{ - "walletconnect": { + "walletconnect":{ "client":{ "name":"[Name of the app]", "description":"[Description of the app]", "iconUrl":"[Relative URL of the icon URL]" }, - "v1": { + "v1":{ "bridgeUrl":"[Bridge URL]" }, - "v2": { + "v2":{ "projectId":"[Project ID]" } }, From f09d8722bacc696515d33e513b6a8fcc48c2d777 Mon Sep 17 00:00:00 2001 From: John Huang Date: Fri, 6 Oct 2023 15:28:42 -0400 Subject: [PATCH 5/8] TRCL-2898 Additional node provider --- public/configs/env.json | 68 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 65 insertions(+), 3 deletions(-) diff --git a/public/configs/env.json b/public/configs/env.json index 67fd6c0..51b7a85 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -24,7 +24,8 @@ "dydxprotocol-testnet-dydx", "dydxprotocol-testnet-dsrv", "dydxprotocol-testnet-nodefleet", - "dydxprotocol-testnet-kingnodes" + "dydxprotocol-testnet-kingnodes", + "dydxprotocol-testnet-liquify" ], "default":"dydxprotocol-testnet" } @@ -395,7 +396,8 @@ ], "validators":[ "https://dydx-testnet.nodefleet.org", - "https://test-dydx.kingnodes.com/" + "https://test-dydx.kingnodes.com", + "https://dydx-rpc.liquify.com/api=8878132/dydx" ], "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", "faucet":"https://faucet.v4testnet.dydx.exchange" @@ -634,7 +636,67 @@ } ], "validators":[ - "https://test-dydx.kingnodes.com/" + "https://test-dydx.kingnodes.com" + ], + "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet":"https://faucet.v4testnet.dydx.exchange" + }, + "links":{ + "tos":"https://dydx.exchange/v4-terms", + "privacy":"https://dydx.exchange/privacy", + "statusPage":"https://status.v4testnet.dydx.exchange/", + "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation":"https://v4-teacher.vercel.app/", + "community":"https://discord.com/invite/dydx", + "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs":"https://www.dydx.foundation/blog" + }, + "wallets":{ + "walletconnect":{ + "client":{ + "name":"dYdX v4", + "description":"dYdX v4 App", + "iconUrl":"/logos/dydx-x.png" + }, + "v1":{ + "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + }, + "v2":{ + "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + } + }, + "walletSegue":{ + "callbackUrl":"/walletsegue" + }, + "images":"/wallets/" + } + }, + "dydxprotocol-testnet-liquify":{ + "name":"v4 Public Testnet/Liquify", + "ethereumChainId":"5", + "dydxChainId":"dydx-testnet-3", + "isMainNet":false, + "tokens":{ + "chain":{ + "name":"DYDX", + "denom":"dv4tnt", + "image":"/currencies/dydx.png" + }, + "usdc":{ + "name":"USDC", + "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image":"/currencies/usdc.png" + } + }, + "endpoints":{ + "indexers":[ + { + "api":"https://dydx-testnet.imperator.co", + "socket":"wss://dydx-testnet.imperator.co" + } + ], + "validators":[ + "https://dydx-rpc.liquify.com/api=8878132/dydx" ], "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", "faucet":"https://faucet.v4testnet.dydx.exchange" From 5d1d734c5941bb708f5263e0bd39cf5b34725732 Mon Sep 17 00:00:00 2001 From: aleka Date: Mon, 9 Oct 2023 10:51:47 -0400 Subject: [PATCH 6/8] add config for sign typed data domain name and action for networks (#62) --- public/configs/env.json | 1120 +++++++++-------- src/constants/wallets.ts | 29 +- .../dialogs/OnboardingDialog/GenerateKeys.tsx | 7 +- 3 files changed, 593 insertions(+), 563 deletions(-) diff --git a/public/configs/env.json b/public/configs/env.json index 51b7a85..5387d27 100644 --- a/public/configs/env.json +++ b/public/configs/env.json @@ -1,19 +1,19 @@ { - "deployments":{ - "MAINNET":{ - "environments":[ + "deployments": { + "MAINNET": { + "environments": [ "dydxprotocol-mainnet" ], - "default":"dydxprotocol-mainnet" + "default": "dydxprotocol-mainnet" }, - "TESTNET":{ - "environments":[ + "TESTNET": { + "environments": [ "dydxprotocol-testnet" ], - "default":"dydxprotocol-testnet" + "default": "dydxprotocol-testnet" }, - "DEV":{ - "environments":[ + "DEV": { + "environments": [ "dydxprotocol-dev", "dydxprotocol-dev-2", "dydxprotocol-dev-4", @@ -27,768 +27,794 @@ "dydxprotocol-testnet-kingnodes", "dydxprotocol-testnet-liquify" ], - "default":"dydxprotocol-testnet" + "default": "dydxprotocol-testnet" } }, - "environments":{ - "dydxprotocol-dev":{ - "name":"v4 Dev", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "environments": { + "dydxprotocol-dev": { + "name": "v4 Dev", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"http://indexer.v4dev.dydx.exchange", - "socket":"wss://indexer.v4dev.dydx.exchange" + "api": "http://indexer.v4dev.dydx.exchange", + "socket": "wss://indexer.v4dev.dydx.exchange" } ], - "validators":[ + "validators": [ "http://validator.v4dev.dydx.exchange" ], - "0xsquid":"https://testnet.api.0xsquid.com", - "faucet":"http://faucet.v4dev.dydx.exchange" + "0xsquid": "https://testnet.api.0xsquid.com", + "faucet": "http://faucet.v4dev.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-dev-2":{ - "name":"v4 Dev 2", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-dev-2": { + "name": "v4 Dev 2", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"http://dev2-indexer-apne1-lb-public-2076363889.ap-northeast-1.elb.amazonaws.com", - "socket":"ws://dev2-indexer-apne1-lb-public-2076363889.ap-northeast-1.elb.amazonaws.com" + "api": "http://dev2-indexer-apne1-lb-public-2076363889.ap-northeast-1.elb.amazonaws.com", + "socket": "ws://dev2-indexer-apne1-lb-public-2076363889.ap-northeast-1.elb.amazonaws.com" } ], - "validators":[ + "validators": [ "http://35.75.227.118" ], - "0xsquid":"https://testnet.api.0xsquid.com" + "0xsquid": "https://testnet.api.0xsquid.com" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-dev-4":{ - "name":"v4 Dev 4", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-dev-4": { + "name": "v4 Dev 4", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"http://indexer.v4dev4.dydx.exchange", - "socket":"ws://indexer.v4dev4.dydx.exchange" + "api": "http://indexer.v4dev4.dydx.exchange", + "socket": "ws://indexer.v4dev4.dydx.exchange" } ], - "validators":[ + "validators": [ "http://validator.v4dev4.dydx.exchange" ], - "0xsquid":"https://testnet.api.0xsquid.com" + "0xsquid": "https://testnet.api.0xsquid.com" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-dev-5":{ - "name":"v4 Dev 5", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-dev-5": { + "name": "v4 Dev 5", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"http://dev5-indexer-apne1-lb-public-1721328151.ap-northeast-1.elb.amazonaws.com", - "socket":"ws://dev5-indexer-apne1-lb-public-1721328151.ap-northeast-1.elb.amazonaws.com" + "api": "http://dev5-indexer-apne1-lb-public-1721328151.ap-northeast-1.elb.amazonaws.com", + "socket": "ws://dev5-indexer-apne1-lb-public-1721328151.ap-northeast-1.elb.amazonaws.com" } ], - "validators":[ + "validators": [ "http://18.223.78.50" ], - "0xsquid":"https://testnet.api.0xsquid.com" + "0xsquid": "https://testnet.api.0xsquid.com" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-staging":{ - "name":"v4 Staging", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-staging": { + "name": "v4 Staging", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://indexer.v4staging.dydx.exchange", - "socket":"wss://indexer.v4staging.dydx.exchange" + "api": "https://indexer.v4staging.dydx.exchange", + "socket": "wss://indexer.v4staging.dydx.exchange" } ], - "faucet":"https://faucet.v4staging.dydx.exchange", - "validators":[ + "faucet": "https://faucet.v4staging.dydx.exchange", + "validators": [ "https://validator.v4staging.dydx.exchange" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-staging-west":{ - "name":"v4 Staging", - "ethereumChainId":"5", - "dydxChainId":"dydxprotocol-testnet", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-staging-west": { + "name": "v4 Staging", + "ethereumChainId": "5", + "dydxChainId": "dydxprotocol-testnet", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://indexer.v4staging.dydx.exchange", - "socket":"wss://indexer.v4staging.dydx.exchange" + "api": "https://indexer.v4staging.dydx.exchange", + "socket": "wss://indexer.v4staging.dydx.exchange" } ], - "faucet":"https://faucet.v4staging.dydx.exchange", - "validators":[ + "faucet": "https://faucet.v4staging.dydx.exchange", + "validators": [ "https://validator-uswest1.v4staging.dydx.exchange" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } }, - "dydxprotocol-testnet":{ - "name":"v4 Public Testnet", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet": { + "name": "v4 Public Testnet", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://dydx-testnet.imperator.co", - "socket":"wss://dydx-testnet.imperator.co" + "api": "https://dydx-testnet.imperator.co", + "socket": "wss://dydx-testnet.imperator.co" } ], - "validators":[ + "validators": [ "https://dydx-testnet.nodefleet.org", "https://test-dydx.kingnodes.com", "https://dydx-rpc.liquify.com/api=8878132/dydx" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-testnet-dydx":{ - "name":"v4 Public Testnet/dYdX", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet-dydx": { + "name": "v4 Public Testnet/dYdX", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://indexer.v4testnet.dydx.exchange", - "socket":"wss://indexer.v4testnet.dydx.exchange" + "api": "https://indexer.v4testnet.dydx.exchange", + "socket": "wss://indexer.v4testnet.dydx.exchange" } ], - "validators":[ + "validators": [ "https://validator.v4testnet.dydx.exchange" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "statusPage":"https://status.v4testnet.dydx.exchange/", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "statusPage": "https://status.v4testnet.dydx.exchange/", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-testnet-dsrv":{ - "name":"v4 Public Testnet/DSRV", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet-dsrv": { + "name": "v4 Public Testnet/DSRV", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://dydx-testnet.imperator.co", - "socket":"wss://dydx-testnet.imperator.co" + "api": "https://dydx-testnet.imperator.co", + "socket": "wss://dydx-testnet.imperator.co" } ], - "validators":[ + "validators": [ "https://dydx-testnet-archive.allthatnode.com:26657/XZvMM41hESf8PJrEQiTzbCOMVyFca79R" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "statusPage":"https://status.v4testnet.dydx.exchange/", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "statusPage": "https://status.v4testnet.dydx.exchange/", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-testnet-nodefleet":{ - "name":"v4 Public Testnet/nodefleet", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet-nodefleet": { + "name": "v4 Public Testnet/nodefleet", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://dydx-testnet.imperator.co", - "socket":"wss://dydx-testnet.imperator.co" + "api": "https://dydx-testnet.imperator.co", + "socket": "wss://dydx-testnet.imperator.co" } ], - "validators":[ + "validators": [ "https://dydx-testnet.nodefleet.org" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "statusPage":"https://status.v4testnet.dydx.exchange/", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "statusPage": "https://status.v4testnet.dydx.exchange/", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-testnet-kingnodes":{ - "name":"v4 Public Testnet/KingNodes", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet-kingnodes": { + "name": "v4 Public Testnet/KingNodes", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://dydx-testnet.imperator.co", - "socket":"wss://dydx-testnet.imperator.co" + "api": "https://dydx-testnet.imperator.co", + "socket": "wss://dydx-testnet.imperator.co" } ], - "validators":[ + "validators": [ "https://test-dydx.kingnodes.com" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "statusPage":"https://status.v4testnet.dydx.exchange/", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "statusPage": "https://status.v4testnet.dydx.exchange/", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-testnet-liquify":{ - "name":"v4 Public Testnet/Liquify", - "ethereumChainId":"5", - "dydxChainId":"dydx-testnet-3", - "isMainNet":false, - "tokens":{ - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-testnet-liquify": { + "name": "v4 Public Testnet/Liquify", + "ethereumChainId": "5", + "dydxChainId": "dydx-testnet-3", + "isMainNet": false, + "tokens": { + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"https://dydx-testnet.imperator.co", - "socket":"wss://dydx-testnet.imperator.co" + "api": "https://dydx-testnet.imperator.co", + "socket": "wss://dydx-testnet.imperator.co" } ], - "validators":[ + "validators": [ "https://dydx-rpc.liquify.com/api=8878132/dydx" ], - "0xsquid":"https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", - "faucet":"https://faucet.v4testnet.dydx.exchange" + "0xsquid": "https://squid-api-git-main-cosmos-testnet-0xsquid.vercel.app", + "faucet": "https://faucet.v4testnet.dydx.exchange" }, - "links":{ - "tos":"https://dydx.exchange/v4-terms", - "privacy":"https://dydx.exchange/privacy", - "statusPage":"https://status.v4testnet.dydx.exchange/", - "mintscan":"https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", - "documentation":"https://v4-teacher.vercel.app/", - "community":"https://discord.com/invite/dydx", - "feedback":"https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", - "blogs":"https://www.dydx.foundation/blog" + "links": { + "tos": "https://dydx.exchange/v4-terms", + "privacy": "https://dydx.exchange/privacy", + "statusPage": "https://status.v4testnet.dydx.exchange/", + "mintscan": "https://testnet.mintscan.io/dydx-testnet/txs/{tx_hash}", + "documentation": "https://v4-teacher.vercel.app/", + "community": "https://discord.com/invite/dydx", + "feedback": "https://docs.google.com/forms/d/e/1FAIpQLSezLsWCKvAYDEb7L-2O4wOON1T56xxro9A2Azvl6IxXHP_15Q/viewform", + "blogs": "https://www.dydx.foundation/blog" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"dYdX v4", - "description":"dYdX v4 App", - "iconUrl":"/logos/dydx-x.png" + "wallets": { + "walletconnect": { + "client": { + "name": "dYdX v4", + "description": "dYdX v4 App", + "iconUrl": "/logos/dydx-x.png" }, - "v1":{ - "bridgeUrl":"wss://api.stage.dydx.exchange/wc/" + "v1": { + "bridgeUrl": "wss://api.stage.dydx.exchange/wc/" }, - "v2":{ - "projectId":"47559b2ec96c09aed9ff2cb54a31ab0e" + "v2": { + "projectId": "47559b2ec96c09aed9ff2cb54a31ab0e" } }, - "walletSegue":{ - "callbackUrl":"/walletsegue" + "walletSegue": { + "callbackUrl": "/walletsegue" }, - "images":"/wallets/" + "images": "/wallets/", + "signTypedDataAction": "dYdX V4 Onboarding", + "signTypedDataDomainName": "dYdX V4" } }, - "dydxprotocol-mainet":{ - "name":"v4", - "ethereumChainId":"1", - "dydxChainId":"[mainnet chain id]", - "isMainNet":true, - "tokens":{ - "comment":"Change according to mainnet release", - "chain":{ - "name":"DYDX", - "denom":"dv4tnt", - "image":"/currencies/dydx.png" + "dydxprotocol-mainet": { + "name": "v4", + "ethereumChainId": "1", + "dydxChainId": "[mainnet chain id]", + "isMainNet": true, + "tokens": { + "comment": "Change according to mainnet release", + "chain": { + "name": "DYDX", + "denom": "dv4tnt", + "image": "/currencies/dydx.png" }, - "usdc":{ - "name":"USDC", - "denom":"ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", - "image":"/currencies/usdc.png" + "usdc": { + "name": "USDC", + "denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5", + "image": "/currencies/usdc.png" } }, - "endpoints":{ - "indexers":[ + "endpoints": { + "indexers": [ { - "api":"[REST endpoint]", - "socket":"[Websocket endpoint]" + "api": "[REST endpoint]", + "socket": "[Websocket endpoint]" } ], - "validators":[ + "validators": [ "[Validator endpoint 1", "[Validator endpoint n]" ], - "0xsquid":"[0xSquid endpoint for mainnet]" + "0xsquid": "[0xSquid endpoint for mainnet]" }, - "links":{ - "tos":"[HTTP link to TOS]", - "privacy":"[HTTP link to Privacy Policy]", - "mintscan":"[HTTP link to Mintscan, with {tx_hash} placeholder]", - "documentation":"[HTTP link to documentation, can be null]", - "community":"[HTTP link to community, can be null]", - "feedback":"[HTTP link to feedback form, can be null]", - "blogs":"[HTTP link to blogs, can be null]" + "links": { + "tos": "[HTTP link to TOS]", + "privacy": "[HTTP link to Privacy Policy]", + "mintscan": "[HTTP link to Mintscan, with {tx_hash} placeholder]", + "documentation": "[HTTP link to documentation, can be null]", + "community": "[HTTP link to community, can be null]", + "feedback": "[HTTP link to feedback form, can be null]", + "blogs": "[HTTP link to blogs, can be null]" }, - "wallets":{ - "walletconnect":{ - "client":{ - "name":"[Name of the app]", - "description":"[Description of the app]", - "iconUrl":"[Relative URL of the icon URL]" + "wallets": { + "walletconnect": { + "client": { + "name": "[Name of the app]", + "description": "[Description of the app]", + "iconUrl": "[Relative URL of the icon URL]" }, - "v1":{ - "bridgeUrl":"[Bridge URL]" + "v1": { + "bridgeUrl": "[Bridge URL]" }, - "v2":{ - "projectId":"[Project ID]" + "v2": { + "projectId": "[Project ID]" } }, - "walletSegue":{ - "callbackUrl":"[Relative callback URL for WalletSegue, should match apple-app-site-association]" + "walletSegue": { + "callbackUrl": "[Relative callback URL for WalletSegue, should match apple-app-site-association]" }, - "images":"[Relative URL for wallet images]" + "images": "[Relative URL for wallet images]", + "signTypedDataAction": "dYdX Chain Onboarding", + "signTypedDataDomainName": "dYdX Chain" } } } diff --git a/src/constants/wallets.ts b/src/constants/wallets.ts index ebc7825..4eaccac 100644 --- a/src/constants/wallets.ts +++ b/src/constants/wallets.ts @@ -24,6 +24,8 @@ import { import { isMetaMask } from '@/lib/wallet/providers'; +import { DydxNetwork, ENVIRONMENT_CONFIG_MAP } from './networks'; + // Wallet connection types export enum WalletConnectionType { @@ -318,20 +320,21 @@ export type WalletConnection = { export const COSMOS_DERIVATION_PATH = "m/44'/118'/0'/0/0"; /** - * @description typed data to sign for v4 onboarding + * @description typed data to sign for dYdX Chain onboarding */ -export const SIGN_TYPED_DATA = { - primaryType: 'dYdX', - domain: { - name: 'dYdX V4', - }, - types: { - dYdX: [{ name: 'action', type: 'string' }], - }, - message: { - action: 'dYdX V4 Onboarding', - }, -} as const; +export const getSignTypedData = (selectedNetwork: DydxNetwork) => + ({ + primaryType: 'dYdX', + domain: { + name: ENVIRONMENT_CONFIG_MAP[selectedNetwork].wallets.signTypedDataDomainName, + }, + types: { + dYdX: [{ name: 'action', type: 'string' }], + }, + message: { + action: ENVIRONMENT_CONFIG_MAP[selectedNetwork].wallets.signTypedDataAction, + }, + } as const); export type PrivateInformation = ReturnType; diff --git a/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx b/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx index 6669a4a..78b6854 100644 --- a/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx +++ b/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx @@ -10,7 +10,7 @@ import { AnalyticsEvent } from '@/constants/analytics'; import { ButtonAction } from '@/constants/buttons'; import { STRING_KEYS } from '@/constants/localization'; import { ENVIRONMENT_CONFIG_MAP } from '@/constants/networks'; -import { DydxAddress, SIGN_TYPED_DATA } from '@/constants/wallets'; +import { DydxAddress, getSignTypedData } from '@/constants/wallets'; import { useAccounts, useBreakpoints, useDydxClient, useStringGetter } from '@/hooks'; import { useMatchingEvmNetwork } from '@/hooks/useMatchingEvmNetwork'; @@ -85,10 +85,11 @@ export const GenerateKeys = ({ EvmDerivedAccountStatus.Derived, ].includes(status); + const signTypedData = getSignTypedData(selectedNetwork); const { signTypedDataAsync } = useSignTypedData({ - ...SIGN_TYPED_DATA, + ...signTypedData, domain: { - ...SIGN_TYPED_DATA.domain, + ...signTypedData.domain, chainId, }, }); From f1ca86326d57b1afdc47bd6acfb7391d62219fbc Mon Sep 17 00:00:00 2001 From: Jared Vu Date: Mon, 9 Oct 2023 08:02:32 -0700 Subject: [PATCH 7/8] Fix GoodTil var changes (#64) --- src/views/forms/TradeForm/AdvancedTradeOptions.tsx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/views/forms/TradeForm/AdvancedTradeOptions.tsx b/src/views/forms/TradeForm/AdvancedTradeOptions.tsx index 5fa2ef3..a1e1842 100644 --- a/src/views/forms/TradeForm/AdvancedTradeOptions.tsx +++ b/src/views/forms/TradeForm/AdvancedTradeOptions.tsx @@ -6,7 +6,7 @@ import { layoutMixins } from '@/styles/layoutMixins'; import { formMixins } from '@/styles/formMixins'; import { TradeInputField } from '@/constants/abacus'; -import { STRING_KEYS } from '@/constants/localization'; +import { STRING_KEYS, StringKey } from '@/constants/localization'; import { INTEGER_DECIMALS } from '@/constants/numbers'; import { TimeUnitShort } from '@/constants/time'; import { GOOD_TIL_TIME_TIMESCALE_STRINGS } from '@/constants/trade'; @@ -29,12 +29,12 @@ export const AdvancedTradeOptions = () => { const currentTradeFormConfig = useSelector(getInputTradeOptions, shallowEqual); const inputTradeData = useSelector(getInputTradeData, shallowEqual); - const { execution, goodUntil, postOnly, reduceOnly, timeInForce } = inputTradeData || {}; + const { execution, goodTil, postOnly, reduceOnly, timeInForce } = inputTradeData || {}; const { executionOptions, needsGoodUntil, needsPostOnly, needsReduceOnly, timeInForceOptions } = currentTradeFormConfig || {}; - const { duration, unit } = goodUntil || {}; + const { duration, unit } = goodTil || {}; const needsExecution = executionOptions || needsPostOnly || needsReduceOnly; @@ -62,7 +62,7 @@ export const AdvancedTradeOptions = () => { ))} @@ -76,7 +76,7 @@ export const AdvancedTradeOptions = () => { onChange={({ value }: NumberFormatValues) => { abacusStateManager.setTradeValue({ value: Number(value), - field: TradeInputField.goodUntilDuration, + field: TradeInputField.goodTilDuration, }); }} value={duration ?? ''} @@ -86,7 +86,7 @@ export const AdvancedTradeOptions = () => { onValueChange={(goodTilTimeTimescale: string) => { abacusStateManager.setTradeValue({ value: goodTilTimeTimescale, - field: TradeInputField.goodUntilUnit, + field: TradeInputField.goodTilUnit, }); }} > @@ -121,7 +121,7 @@ export const AdvancedTradeOptions = () => { ))} From a05d88136da23b197f938c744cc1b836329e36d5 Mon Sep 17 00:00:00 2001 From: Bill Date: Mon, 9 Oct 2023 12:34:49 -0400 Subject: [PATCH 8/8] Polishes for Onboarding (#57) * Polishes for Onboarding * update string * bump packages * address nit --- package.json | 4 +- pnpm-lock.yaml | 16 ++-- src/views/TransferStatus.tsx | 11 ++- src/views/TransferStatusSteps.tsx | 2 +- .../dialogs/OnboardingDialog/GenerateKeys.tsx | 4 +- .../DepositForm/DepositButtonAndReceipt.tsx | 13 ++++ .../AccountManagementForms/WithdrawForm.tsx | 20 ++++- .../WithdrawForm/WithdrawButtonAndReceipt.tsx | 78 +++++++++++-------- 8 files changed, 97 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index cb5c058..a7f8f3d 100644 --- a/package.json +++ b/package.json @@ -37,9 +37,9 @@ "@cosmjs/proto-signing": "^0.31.0", "@cosmjs/stargate": "^0.31.0", "@cosmjs/tendermint-rpc": "^0.31.0", - "@dydxprotocol/v4-abacus": "^0.6.3", + "@dydxprotocol/v4-abacus": "^0.6.4", "@dydxprotocol/v4-client-js": "^0.36.1", - "@dydxprotocol/v4-localization": "^0.1.23", + "@dydxprotocol/v4-localization": "^0.1.24", "@ethersproject/providers": "^5.7.2", "@js-joda/core": "^5.5.3", "@radix-ui/react-collapsible": "^1.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5c03d6b..00ec3b5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,14 +27,14 @@ dependencies: specifier: ^0.31.0 version: 0.31.0 '@dydxprotocol/v4-abacus': - specifier: ^0.6.3 - version: 0.6.3 + specifier: ^0.6.4 + version: 0.6.4 '@dydxprotocol/v4-client-js': specifier: ^0.36.1 version: 0.36.1 '@dydxprotocol/v4-localization': - specifier: ^0.1.23 - version: 0.1.23 + specifier: ^0.1.24 + version: 0.1.24 '@ethersproject/providers': specifier: ^5.7.2 version: 5.7.2 @@ -979,8 +979,8 @@ packages: resolution: {integrity: sha512-RpfLEtTlyIxeNPGKcokS+p3BZII/Q3bYxryFRglh5H3A3T8q9fsLYm72VYAMEOOIBLEa8o93kFLiBDUWKrwXZA==} dev: true - /@dydxprotocol/v4-abacus@0.6.3: - resolution: {integrity: sha512-oYMbII7o7fXjNpl2PZpG6mwKQ49e8Qky5vA8Ua9boNs7nRUx3PC6azfoPtjHKMdYY33eHoXcZBpTynhneLXCVg==} + /@dydxprotocol/v4-abacus@0.6.4: + resolution: {integrity: sha512-eH+/9Q/OnQtwzBwM1BJyXybFPdivGmFQWrxM71MFWGs6uIQGbZX775mpoa8deweSTyQ/QrRLRQ1mP2BPDgBQYg==} dev: false /@dydxprotocol/v4-client-js@0.36.1: @@ -1010,8 +1010,8 @@ packages: - utf-8-validate dev: false - /@dydxprotocol/v4-localization@0.1.23: - resolution: {integrity: sha512-TaEey7dINwxELlEyA8XsQ4GQLfJ7e1b434bafpnlG9ccW1sIW7TYTsfaSkck2egR4R736hA7k5WvVy0aI/0TFw==} + /@dydxprotocol/v4-localization@0.1.24: + resolution: {integrity: sha512-zSiu8+/6BWNWZXxe73zUp/UjuLG1Cp5UuhXKtbATqqkeZyVCs01QxbBCTs1MLfgsLh02IrfhXCPHvXnzZyReEw==} dev: false /@dydxprotocol/v4-proto@0.2.1: diff --git a/src/views/TransferStatus.tsx b/src/views/TransferStatus.tsx index 6f3bb06..cecce4e 100644 --- a/src/views/TransferStatus.tsx +++ b/src/views/TransferStatus.tsx @@ -53,6 +53,15 @@ export const TransferStatusToast = ({ if (!status) return ; + const statusString = + type === 'deposit' + ? status?.squidTransactionStatus === 'success' + ? STRING_KEYS.DEPOSIT_COMPLETE + : STRING_KEYS.DEPOSIT_STATUS + : status?.squidTransactionStatus === 'success' + ? STRING_KEYS.WITHDRAW_COMPLETE + : STRING_KEYS.WITHDRAW_STATUS; + return ( {stringGetter({ - key: type === 'deposit' ? STRING_KEYS.DEPOSIT_STATUS : STRING_KEYS.WITHDRAW_STATUS, + key: statusString, params: { AMOUNT_USD: , ESTIMATED_DURATION: ( diff --git a/src/views/TransferStatusSteps.tsx b/src/views/TransferStatusSteps.tsx index cf3d551..409badf 100644 --- a/src/views/TransferStatusSteps.tsx +++ b/src/views/TransferStatusSteps.tsx @@ -51,7 +51,7 @@ export const TransferStatusSteps = ({ status }: ElementProps) => { label: stringGetter({ key: type === 'deposit' ? STRING_KEYS.DEPOSIT_TO_CHAIN : STRING_KEYS.WITHDRAW_TO_CHAIN, params: { - CHAIN: status?.toChain?.chainData?.chainName, + CHAIN: type === 'deposit' ? 'dYdX' : status?.toChain?.chainData?.chainName, }, }), step: TransferStatusStep.ToChain, diff --git a/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx b/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx index 78b6854..32c5d66 100644 --- a/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx +++ b/src/views/dialogs/OnboardingDialog/GenerateKeys.tsx @@ -166,8 +166,8 @@ export const GenerateKeys = ({ {[ { status: EvmDerivedAccountStatus.Deriving, - title: stringGetter({ key: STRING_KEYS.GENERATE_COSMOS_WALLET }), - description: stringGetter({ key: STRING_KEYS.GENERATE_COSMOS_WALLET }), + title: stringGetter({ key: STRING_KEYS.GENERATE_DYDX_WALLET }), + description: stringGetter({ key: STRING_KEYS.VERIFY_WALLET_OWNERSHIP }), }, status === EvmDerivedAccountStatus.EnsuringDeterminism && { status: EvmDerivedAccountStatus.EnsuringDeterminism, diff --git a/src/views/forms/AccountManagementForms/DepositForm/DepositButtonAndReceipt.tsx b/src/views/forms/AccountManagementForms/DepositForm/DepositButtonAndReceipt.tsx index f63e649..07d0cb1 100644 --- a/src/views/forms/AccountManagementForms/DepositForm/DepositButtonAndReceipt.tsx +++ b/src/views/forms/AccountManagementForms/DepositForm/DepositButtonAndReceipt.tsx @@ -168,6 +168,19 @@ export const DepositButtonAndReceipt = ({ /> ), }, + { + key: 'estimatedRouteDuration', + label: {stringGetter({ key: STRING_KEYS.ESTIMATED_TIME })}, + value: typeof summary?.estimatedRouteDuration === 'number' && ( + + ), + }, ]; const isFormValid = !isDisabled && !isEditingSlippage; diff --git a/src/views/forms/AccountManagementForms/WithdrawForm.tsx b/src/views/forms/AccountManagementForms/WithdrawForm.tsx index 02ce647..f24b628 100644 --- a/src/views/forms/AccountManagementForms/WithdrawForm.tsx +++ b/src/views/forms/AccountManagementForms/WithdrawForm.tsx @@ -4,6 +4,7 @@ import styled, { type AnyStyledComponent } from 'styled-components'; import type { NumberFormatValues } from 'react-number-format'; import { shallowEqual, useSelector } from 'react-redux'; import { TESTNET_CHAIN_ID } from '@dydxprotocol/v4-client-js'; +import { isAddress } from 'viem'; import { TransferInputField, TransferInputTokenResource, TransferType } from '@/constants/abacus'; import { AlertType } from '@/constants/alerts'; @@ -26,6 +27,7 @@ import { Link } from '@/components/Link'; import { OutputType } from '@/components/Output'; import { Tag } from '@/components/Tag'; import { WithDetailsReceipt } from '@/components/WithDetailsReceipt'; +import { Icon, IconName } from '@/components/Icon'; import { ChainSelectMenu } from '@/views/forms/AccountManagementForms/ChainSelectMenu'; @@ -59,6 +61,8 @@ export const WithdrawForm = () => { resources, } = useSelector(getTransferInputs, shallowEqual) || {}; + const isValidAddress = toAddress && isAddress(toAddress); + const toToken = useMemo( () => (token ? resources?.tokenResources?.get(token) : undefined), [token, resources] @@ -179,7 +183,6 @@ export const WithdrawForm = () => { const onSelectChain = useCallback((chain: string) => { if (chain) { - abacusStateManager.clearTransferInputValues(); abacusStateManager.setTransferValue({ field: TransferInputField.chain, value: chain, @@ -190,7 +193,6 @@ export const WithdrawForm = () => { const onSelectToken = useCallback((token: TransferInputTokenResource) => { if (token) { - abacusStateManager.clearTransferInputValues(); abacusStateManager.setTransferValue({ field: TransferInputField.token, value: token.address, @@ -265,7 +267,12 @@ export const WithdrawForm = () => { placeholder={stringGetter({ key: STRING_KEYS.ADDRESS })} onChange={onChangeAddress} value={toAddress || ''} - label={stringGetter({ key: STRING_KEYS.DESTINATION })} + label={ + + {stringGetter({ key: STRING_KEYS.DESTINATION })}{' '} + {isValidAddress ? : null} + + } /> + {stringGetter({ key: STRING_KEYS.AMOUNT_RECEIVED })}{' '} + {withdrawToken && {withdrawToken?.symbol}} + + ), + value: ( + + ), + }, { key: 'leverage', - label: {stringGetter({ key: STRING_KEYS.LEVERAGE })}, + label: {stringGetter({ key: STRING_KEYS.ACCOUNT_LEVERAGE })}, value: ( ), }, - // TODO: uncomment when we have a way to get token amount estimate from abacus - // { - // key: 'wallet', - // label: ( - // - // {stringGetter({ key: STRING_KEYS.WALLET })}{' '} - // {withdrawToken && {withdrawToken?.symbol}} - // - // ), - // value: ( - // - // ), - // }, + { + key: 'estimatedRouteDuration', + label: {stringGetter({ key: STRING_KEYS.ESTIMATED_TIME })}, + value: typeof summary?.estimatedRouteDuration === 'number' && ( + + ), + }, ]; const isFormValid = !isDisabled && !isEditingSlippage;