From 12529a4fd2cd4129df98faeceb8767eab2b2ceb1 Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Wed, 27 Jul 2022 00:09:55 +0000
Subject: [PATCH 01/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 28 +++++++++----------
apps/static/src/assets/stagnet1-tranches.json | 4 +--
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index 63f612fb5..e2054fe87 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117722.18818369513317219",
+ "locked_amount": "117662.104842666510138705",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58696.701913247477199432",
+ "locked_amount": "58637.765752714800207624",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "80228.25795257262490728767616",
+ "locked_amount": "80147.70239602807648265760492",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24692.688857079010352968",
+ "locked_amount": "24667.895432115962171694",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "8037.23061079827060276",
+ "locked_amount": "8029.1605915625",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11891.54353487318775",
+ "locked_amount": "11860.57235054347875",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1648919.99192040261888734",
+ "locked_amount": "1647573.865184623231865074",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "10191.2646876420868592017845866885",
+ "locked_amount": "10151.7039262265070101442307730765",
"deposits": [
{
"amount": "2833.333333",
@@ -5514,7 +5514,7 @@
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "24994.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2618.98776211313942074031435397640791463",
+ "locked_amount": "2601.64429109589130458031227226027397271",
"deposits": [
{
"amount": "2",
@@ -16382,7 +16382,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "144843.5352821052414",
- "locked_amount": "2558317.1648180147802561215",
+ "locked_amount": "2556248.73122338896563520861",
"deposits": [
{
"amount": "1998.95815",
@@ -17128,7 +17128,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
"total_removed": "67542.001079865509505",
- "locked_amount": "14297739.632184757022370311873006803811841",
+ "locked_amount": "14290442.6498335591993551557757998734306569",
"deposits": [
{
"amount": "16249.93",
@@ -19570,7 +19570,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2421946.596295493754033047",
- "locked_amount": "7546061.93619634790916496991038218",
+ "locked_amount": "7539290.74242029588729622654692751",
"deposits": [
{
"amount": "129284.449",
@@ -24158,7 +24158,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2664591.30565361576883153539717868",
+ "locked_amount": "2661915.96604085886879872818605393",
"deposits": [
{
"amount": "552496.6455",
@@ -25402,7 +25402,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "580.0445766491",
- "locked_amount": "405379.97872978654505782214916288",
+ "locked_amount": "405052.2236030475504343156164384",
"deposits": [
{
"amount": "3000",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index e30651e0b..c71c4b434 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.64974949264333",
+ "locked_amount": "33.580352612886855",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "232.909199010654485",
+ "locked_amount": "232.145833333333348",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index c540ff2e6..ace2722b2 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "213.85302384576360370021173566717402337",
+ "locked_amount": "213.1521153602232870002110416983764587",
"deposits": [
{
"amount": "1000",
From bb5067146c75371d55ae11b28fa5c1850d8e112c Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Wed, 27 Jul 2022 06:05:08 +0000
Subject: [PATCH 02/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 110 +++++++++++++++---
apps/static/src/assets/stagnet1-tranches.json | 4 +-
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 94 insertions(+), 22 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index e2054fe87..e91e26671 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117662.104842666510138705",
+ "locked_amount": "117603.58652948537742957",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58637.765752714800207624",
+ "locked_amount": "58580.3647387115488332",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "80147.70239602807648265760492",
+ "locked_amount": "80069.24511975730205463012744",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24667.895432115962171694",
+ "locked_amount": "24643.747816787289562354",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "8029.1605915625",
+ "locked_amount": "8021.300777095928290488",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11860.57235054347875",
+ "locked_amount": "11830.40789175724725",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1647573.865184623231865074",
+ "locked_amount": "1646262.801842317880776074",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "10151.7039262265070101442307730765",
+ "locked_amount": "10113.1736283674289138887899580508",
"deposits": [
{
"amount": "2833.333333",
@@ -5512,9 +5512,9 @@
"tranche_id": 11,
"tranche_start": "2021-09-03T00:00:00.000Z",
"tranche_end": "2022-09-03T00:00:00.000Z",
- "total_added": "24994.000000000000000003",
+ "total_added": "25010.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2601.64429109589130458031227226027397271",
+ "locked_amount": "2586.40721492897082590031024476788432277",
"deposits": [
{
"amount": "2",
@@ -5556,6 +5556,21 @@
"user": "0xfeDf4b4406B3126744047be05A013570b09DC0cC",
"tx": "0xd8fb387a63f4c66e0745787c5468f08bb8321b284ee8275ab961a52b51726381"
},
+ {
+ "amount": "12",
+ "user": "0x54e6627177165Aa7b6F31752c744c306FaC993dB",
+ "tx": "0x846ec1e97e805281e019842be187b58f63237c0ea04cc2abd002899e86762b39"
+ },
+ {
+ "amount": "2",
+ "user": "0xcd6f7FBa16933469bd99F714CC802849216C532A",
+ "tx": "0x05bbc77056939645ce69b9dba25d17697f4aa348ffbdb88e55abe467bd7d2839"
+ },
+ {
+ "amount": "2",
+ "user": "0x7cad86eC6007Ad16B0D50366Ffc5C5182636EB1d",
+ "tx": "0x432102400ff0ac55b2028d5cac2e5d50155c469d03318f50beca8f704494b37a"
+ },
{
"amount": "25",
"user": "0x2c51Dc5A225a9d8542FBf28BA9dC501f026CD5e8",
@@ -9719,6 +9734,51 @@
"withdrawn_tokens": "0",
"remaining_tokens": "157"
},
+ {
+ "address": "0x54e6627177165Aa7b6F31752c744c306FaC993dB",
+ "deposits": [
+ {
+ "amount": "12",
+ "user": "0x54e6627177165Aa7b6F31752c744c306FaC993dB",
+ "tranche_id": 11,
+ "tx": "0x846ec1e97e805281e019842be187b58f63237c0ea04cc2abd002899e86762b39"
+ }
+ ],
+ "withdrawals": [],
+ "total_tokens": "12",
+ "withdrawn_tokens": "0",
+ "remaining_tokens": "12"
+ },
+ {
+ "address": "0xcd6f7FBa16933469bd99F714CC802849216C532A",
+ "deposits": [
+ {
+ "amount": "2",
+ "user": "0xcd6f7FBa16933469bd99F714CC802849216C532A",
+ "tranche_id": 11,
+ "tx": "0x05bbc77056939645ce69b9dba25d17697f4aa348ffbdb88e55abe467bd7d2839"
+ }
+ ],
+ "withdrawals": [],
+ "total_tokens": "2",
+ "withdrawn_tokens": "0",
+ "remaining_tokens": "2"
+ },
+ {
+ "address": "0x7cad86eC6007Ad16B0D50366Ffc5C5182636EB1d",
+ "deposits": [
+ {
+ "amount": "2",
+ "user": "0x7cad86eC6007Ad16B0D50366Ffc5C5182636EB1d",
+ "tranche_id": 11,
+ "tx": "0x432102400ff0ac55b2028d5cac2e5d50155c469d03318f50beca8f704494b37a"
+ }
+ ],
+ "withdrawals": [],
+ "total_tokens": "2",
+ "withdrawn_tokens": "0",
+ "remaining_tokens": "2"
+ },
{
"address": "0x2c51Dc5A225a9d8542FBf28BA9dC501f026CD5e8",
"deposits": [
@@ -16382,7 +16442,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "144843.5352821052414",
- "locked_amount": "2556248.73122338896563520861",
+ "locked_amount": "2554234.08333003981993526604",
"deposits": [
{
"amount": "1998.95815",
@@ -17128,7 +17188,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
"total_removed": "67542.001079865509505",
- "locked_amount": "14290442.6498335591993551557757998734306569",
+ "locked_amount": "14283335.4116994277150854091125720206555826",
"deposits": [
{
"amount": "16249.93",
@@ -19570,7 +19630,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2421946.596295493754033047",
- "locked_amount": "7539290.74242029588729622654692751",
+ "locked_amount": "7532695.62072442640108897986457835",
"deposits": [
{
"amount": "129284.449",
@@ -24158,7 +24218,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2661915.96604085886879872818605393",
+ "locked_amount": "2659310.19357185744888163578522694",
"deposits": [
{
"amount": "552496.6455",
@@ -25401,8 +25461,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
- "total_removed": "580.0445766491",
- "locked_amount": "405052.2236030475504343156164384",
+ "total_removed": "622.9814487941",
+ "locked_amount": "404732.99112812817606477193505832",
"deposits": [
{
"amount": "3000",
@@ -32031,6 +32091,11 @@
"user": "0x7708B79e2bc3b7ab816E66aF33A8c9385f0FcA4b",
"tx": "0x3ce37e2dab3f254ec65285b01ded923f8acc03d4e0ed0fdae383bcc46c94800e"
},
+ {
+ "amount": "42.936872145",
+ "user": "0xdc040917f80aC350460e55467e4B6c52Fc5e220E",
+ "tx": "0x1177079901d6f5b6a6b2e8597f7c7b774e5fefa0f820ffe47a0fcf1dd274172e"
+ },
{
"amount": "18.521226534",
"user": "0xfeF4b56A370135A17Eef5ba8f5c308451a64Cf86",
@@ -50004,10 +50069,17 @@
"tx": "0xb59405747c8088945a412703637a7b422f3639439ec2ee15e180c0a2a0d71ee4"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "42.936872145",
+ "user": "0xdc040917f80aC350460e55467e4B6c52Fc5e220E",
+ "tranche_id": 5,
+ "tx": "0x1177079901d6f5b6a6b2e8597f7c7b774e5fefa0f820ffe47a0fcf1dd274172e"
+ }
+ ],
"total_tokens": "300",
- "withdrawn_tokens": "0",
- "remaining_tokens": "300"
+ "withdrawn_tokens": "42.936872145",
+ "remaining_tokens": "257.063127855"
},
{
"address": "0x8D01053B4f4857Ff453CAeDBf8387Cd57a5a2A2b",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index c71c4b434..c5009ef71 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.580352612886855",
+ "locked_amount": "33.51278221714865",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "232.145833333333348",
+ "locked_amount": "231.402558980213115",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index ace2722b2..70c4a5653 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "213.1521153602232870002110416983764587",
+ "locked_amount": "212.46962233637749650021036596270928465",
"deposits": [
{
"amount": "1000",
From 54cf70fa42448ca50ad1a5a02949f4062842d986 Mon Sep 17 00:00:00 2001
From: "m.ray" <16125548+MadalinaRaicu@users.noreply.github.com>
Date: Wed, 27 Jul 2022 10:26:32 +0200
Subject: [PATCH 03/61] fix: scrolling trades grid prevRowNode data becomes
undefined (#874)
---
libs/trades/src/lib/trades-table.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/trades/src/lib/trades-table.tsx b/libs/trades/src/lib/trades-table.tsx
index af9dbda1f..94e165572 100644
--- a/libs/trades/src/lib/trades-table.tsx
+++ b/libs/trades/src/lib/trades-table.tsx
@@ -24,7 +24,7 @@ const changeCellClass =
if (typeof rowIndex === 'number') {
const prevRowNode = api.getModel().getRow(rowIndex + 1);
- const prevValue = prevRowNode?.data[dataKey];
+ const prevValue = prevRowNode?.data && prevRowNode.data[dataKey];
const valueNum = new BigNumber(value);
if (valueNum.isGreaterThan(prevValue)) {
From e275460c769f4d6d8a47cc9b733f5bb62dfa9100 Mon Sep 17 00:00:00 2001
From: Dexter Edwards
Date: Wed, 27 Jul 2022 11:28:29 +0100
Subject: [PATCH 04/61] feat: allow default wallet url to be configured (#875)
* feat: allow default wallet url to be configured
* docs: add docs to environement package
---
apps/token-e2e/.env | 3 ++-
apps/token/.env | 1 +
apps/trading-e2e/.env | 1 +
apps/trading/.env | 1 +
libs/environment/README.md | 2 ++
.../src/utils/compile-environment.ts | 2 ++
.../src/utils/validate-environment.ts | 1 +
.../connect-dialog/connect-dialog.spec.tsx | 23 +++++++++++++++----
libs/wallet/src/rest-connector-form.tsx | 7 +++---
9 files changed, 31 insertions(+), 10 deletions(-)
diff --git a/apps/token-e2e/.env b/apps/token-e2e/.env
index 6d3d52c1f..253cd8dda 100644
--- a/apps/token-e2e/.env
+++ b/apps/token-e2e/.env
@@ -12,7 +12,8 @@ NX_ETHEREUM_CHAIN_ID=1440
NX_ETH_URL_CONNECT=1
NX_ETH_WALLET_MNEMONIC=ozone access unlock valid olympic save include omit supply green clown session
NX_LOCAL_PROVIDER_URL=http://localhost:8545/
+NX_VEGA_WALLET_URL=http://localhost:1789/api/v1
#Test configuration variables
CYPRESS_FAIRGROUND=false
-CYPRESS_INCLUDE_FLOWS=true
\ No newline at end of file
+CYPRESS_INCLUDE_FLOWS=true
diff --git a/apps/token/.env b/apps/token/.env
index c5982dfb4..b254c7be6 100644
--- a/apps/token/.env
+++ b/apps/token/.env
@@ -8,6 +8,7 @@ NX_FAIRGROUND=false
NX_IS_NEW_BRIDGE_CONTRACT=true
NX_VEGA_NETWORKS='{"DEVNET":"https://dev.token.vega.xyz","STAGNET":"https://dev.token.vega.xyz","STAGNET2":"staging2.token.vega.xyz","TESTNET":"token.fairground.wtf","MAINNET":"token.vega.xyz"}'
NX_GITHUB_FEEDBACK_URL=https://github.com/vegaprotocol/feedback/discussions
+NX_VEGA_WALLET_URL=http://localhost:1789/api/v1
#Test configuration variables
CYPRESS_FAIRGROUND=false
diff --git a/apps/trading-e2e/.env b/apps/trading-e2e/.env
index 92559423b..fab1c558d 100644
--- a/apps/trading-e2e/.env
+++ b/apps/trading-e2e/.env
@@ -1 +1,2 @@
NX_USE_ENV_OVERRIDES=0
+NX_VEGA_WALLET_URL=http://localhost:1789/api/v1
diff --git a/apps/trading/.env b/apps/trading/.env
index 1e7125719..cf3e5ef66 100644
--- a/apps/trading/.env
+++ b/apps/trading/.env
@@ -6,3 +6,4 @@ NX_ETHERSCAN_URL=https://ropsten.etherscan.io
NX_VEGA_NETWORKS={\"MAINNET\":\"https://alpha.console.vega.xyz\"}
NX_USE_ENV_OVERRIDES=1
NX_VEGA_EXPLORER_URL=https://explorer.fairground.wtf
+NX_VEGA_WALLET_URL=http://localhost:1789/api/v1
diff --git a/libs/environment/README.md b/libs/environment/README.md
index 32ad9c42f..0666759b5 100644
--- a/libs/environment/README.md
+++ b/libs/environment/README.md
@@ -12,6 +12,8 @@ The environment variables needed to be present for any app consuming this librar
`NX_VEGA_URL` OR `NX_VEGA_CONFIG_URL` - either the network configuration url or a url to a node to directly connect to
+`NX_VEGA_WALLET_URL` the default vega wallet URL
+
For examples, see Block Explorer's .env files [here](../../apps/explorer)
## Running unit tests
diff --git a/libs/environment/src/utils/compile-environment.ts b/libs/environment/src/utils/compile-environment.ts
index 445c4f786..c733e6434 100644
--- a/libs/environment/src/utils/compile-environment.ts
+++ b/libs/environment/src/utils/compile-environment.ts
@@ -68,6 +68,8 @@ const getBundledEnvironmentValue = (key: EnvKey) => {
return process.env['NX_GITHUB_FEEDBACK_URL'];
case 'VEGA_EXPLORER_URL':
return process.env['NX_VEGA_EXPLORER_URL'];
+ case 'VEGA_WALLET_URL':
+ return process.env['NX_VEGA_WALLET_URL'];
}
};
diff --git a/libs/environment/src/utils/validate-environment.ts b/libs/environment/src/utils/validate-environment.ts
index 2289ab6a2..d3a659c6d 100644
--- a/libs/environment/src/utils/validate-environment.ts
+++ b/libs/environment/src/utils/validate-environment.ts
@@ -14,6 +14,7 @@ export enum Networks {
const schemaObject = {
VEGA_URL: z.optional(z.string()),
+ VEGA_WALLET_URL: z.optional(z.string()),
VEGA_CONFIG_URL: z.optional(z.string()),
GIT_BRANCH: z.optional(z.string()),
GIT_COMMIT_HASH: z.optional(z.string()),
diff --git a/libs/wallet/src/connect-dialog/connect-dialog.spec.tsx b/libs/wallet/src/connect-dialog/connect-dialog.spec.tsx
index 10bcc271d..77c85e000 100644
--- a/libs/wallet/src/connect-dialog/connect-dialog.spec.tsx
+++ b/libs/wallet/src/connect-dialog/connect-dialog.spec.tsx
@@ -10,6 +10,7 @@ import { VegaWalletContext } from '../context';
import { VegaConnectDialog } from './connect-dialog';
import type { VegaConnectDialogProps } from '..';
import { RestConnector } from '../connectors';
+import { EnvironmentProvider } from '@vegaprotocol/environment';
let defaultProps: VegaConnectDialogProps;
let defaultContextValue: VegaWalletContextShape;
@@ -35,16 +36,28 @@ beforeEach(() => {
const DEFAULT_URL = 'http://localhost:1789/api/v1';
+const mockEnvironment = {
+ VEGA_ENV: 'TESTNET',
+ VEGA_URL: 'https://vega-node.url',
+ VEGA_NETWORKS: JSON.stringify({}),
+ GIT_BRANCH: 'test',
+ GIT_COMMIT_HASH: 'abcdef',
+ GIT_ORIGIN_URL: 'https://github.com/test/repo',
+ VEGA_WALLET_URL: DEFAULT_URL,
+};
+
function generateJSX(
props?: Partial,
contextValue?: Partial
) {
return (
-
-
-
+
+
+
+
+
);
}
diff --git a/libs/wallet/src/rest-connector-form.tsx b/libs/wallet/src/rest-connector-form.tsx
index 84666c582..8cbbb6be7 100644
--- a/libs/wallet/src/rest-connector-form.tsx
+++ b/libs/wallet/src/rest-connector-form.tsx
@@ -1,3 +1,4 @@
+import { useEnvironment } from '@vegaprotocol/environment';
import { t } from '@vegaprotocol/react-helpers';
import { Button, FormGroup, Input, InputError } from '@vegaprotocol/ui-toolkit';
import { useState } from 'react';
@@ -15,21 +16,19 @@ interface RestConnectorFormProps {
onAuthenticate: () => void;
}
-const VEGA_DEFAULT_URL = 'http://localhost:1789/api/v1';
-
export function RestConnectorForm({
connector,
onAuthenticate,
}: RestConnectorFormProps) {
const [error, setError] = useState('');
-
+ const { VEGA_WALLET_URL } = useEnvironment();
const {
register,
handleSubmit,
formState: { errors },
} = useForm({
defaultValues: {
- url: VEGA_DEFAULT_URL,
+ url: VEGA_WALLET_URL,
},
});
From b9db97c276b8b73065e9272200f73e072343ec3e Mon Sep 17 00:00:00 2001
From: "m.ray" <16125548+MadalinaRaicu@users.noreply.github.com>
Date: Wed, 27 Jul 2022 12:28:43 +0200
Subject: [PATCH 05/61] feat: #876 add explicit time in force labels (#877)
* feat: #876 add explicit time in force labels
* fix: update GTC and GTT
* fix: update GTC and GTT
* fix: deal ticket test update
---
.../src/components/deal-ticket.spec.tsx | 194 +++++++++---------
.../src/components/time-in-force-selector.tsx | 22 +-
2 files changed, 119 insertions(+), 97 deletions(-)
diff --git a/libs/deal-ticket/src/components/deal-ticket.spec.tsx b/libs/deal-ticket/src/components/deal-ticket.spec.tsx
index 2b06c0c6e..59431d73c 100644
--- a/libs/deal-ticket/src/components/deal-ticket.spec.tsx
+++ b/libs/deal-ticket/src/components/deal-ticket.spec.tsx
@@ -7,8 +7,8 @@ import { addDecimal } from '@vegaprotocol/react-helpers';
import { fireEvent, render, screen, act } from '@testing-library/react';
import { DealTicket } from './deal-ticket';
import type { DealTicketQuery_market } from './__generated__/DealTicketQuery';
-import type { Order } from '../utils/get-default-order';
import { MarketState, MarketTradingMode } from '@vegaprotocol/types';
+import type { Order } from '@vegaprotocol/orders';
const market: DealTicketQuery_market = {
__typename: 'Market',
@@ -59,109 +59,111 @@ function generateJsx(order?: Order) {
);
}
-it('Displays ticket defaults', () => {
- render(generateJsx());
+describe('DealTicket', () => {
+ it('Displays ticket defaults', () => {
+ render(generateJsx());
- // Assert defaults are used
- expect(
- screen.getByTestId(`order-type-${VegaWalletOrderType.Market}-selected`)
- ).toBeInTheDocument();
- expect(
- screen.queryByTestId('order-side-SIDE_BUY-selected')
- ).toBeInTheDocument();
- expect(
- screen.queryByTestId('order-side-SIDE_SELL-selected')
- ).not.toBeInTheDocument();
- expect(screen.getByTestId('order-size')).toHaveDisplayValue(
- String(1 / Math.pow(10, market.positionDecimalPlaces))
- );
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.IOC
- );
+ // Assert defaults are used
+ expect(
+ screen.getByTestId(`order-type-${VegaWalletOrderType.Market}-selected`)
+ ).toBeInTheDocument();
+ expect(
+ screen.queryByTestId('order-side-SIDE_BUY-selected')
+ ).toBeInTheDocument();
+ expect(
+ screen.queryByTestId('order-side-SIDE_SELL-selected')
+ ).not.toBeInTheDocument();
+ expect(screen.getByTestId('order-size')).toHaveDisplayValue(
+ String(1 / Math.pow(10, market.positionDecimalPlaces))
+ );
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.IOC
+ );
- // Assert last price is shown
- expect(screen.getByTestId('last-price')).toHaveTextContent(
- // eslint-disable-next-line
- `~${addDecimal(market.depth.lastTrade!.price, market.decimalPlaces)} ${
- market.tradableInstrument.instrument.product.quoteName
- }`
- );
-});
+ // Assert last price is shown
+ expect(screen.getByTestId('last-price')).toHaveTextContent(
+ // eslint-disable-next-line
+ `~${addDecimal(market.depth.lastTrade!.price, market.decimalPlaces)} ${
+ market.tradableInstrument.instrument.product.quoteName
+ }`
+ );
+ });
-it('Can edit deal ticket', async () => {
- render(generateJsx());
+ it('Can edit deal ticket', async () => {
+ render(generateJsx());
- // BUY is selected by default
- screen.getByTestId('order-side-SIDE_BUY-selected');
+ // BUY is selected by default
+ screen.getByTestId('order-side-SIDE_BUY-selected');
- await act(async () => {
- fireEvent.change(screen.getByTestId('order-size'), {
- target: { value: '200' },
+ await act(async () => {
+ fireEvent.change(screen.getByTestId('order-size'), {
+ target: { value: '200' },
+ });
});
+
+ expect(screen.getByTestId('order-size')).toHaveDisplayValue('200');
+
+ fireEvent.change(screen.getByTestId('order-tif'), {
+ target: { value: VegaWalletOrderTimeInForce.IOC },
+ });
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.IOC
+ );
+
+ // Switch to limit order
+ fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
+
+ // Assert price input shown with default value
+ expect(screen.getByTestId('order-price')).toHaveDisplayValue('0');
+
+ // Check all TIF options shown
+ expect(screen.getByTestId('order-tif').children).toHaveLength(
+ Object.keys(VegaWalletOrderTimeInForce).length
+ );
});
- expect(screen.getByTestId('order-size')).toHaveDisplayValue('200');
+ it('Handles TIF select box dependent on order type', () => {
+ render(generateJsx());
- fireEvent.change(screen.getByTestId('order-tif'), {
- target: { value: VegaWalletOrderTimeInForce.IOC },
+ // Check only IOC and
+ expect(
+ Array.from(screen.getByTestId('order-tif').children).map(
+ (o) => o.textContent
+ )
+ ).toEqual(['Immediate or Cancel (IOC)', 'Fill or Kill (FOK)']);
+
+ // Switch to limit order and check all TIF options shown
+ fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
+ expect(screen.getByTestId('order-tif').children).toHaveLength(
+ Object.keys(VegaWalletOrderTimeInForce).length
+ );
+
+ // Change to GTC
+ fireEvent.change(screen.getByTestId('order-tif'), {
+ target: { value: VegaWalletOrderTimeInForce.GTC },
+ });
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.GTC
+ );
+
+ // Switch back to market order and TIF should now be IOC
+ fireEvent.click(screen.getByTestId('order-type-TYPE_MARKET'));
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.IOC
+ );
+
+ // Switch tif to FOK
+ fireEvent.change(screen.getByTestId('order-tif'), {
+ target: { value: VegaWalletOrderTimeInForce.FOK },
+ });
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.FOK
+ );
+
+ // Change back to limit and check we are still on FOK
+ fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
+ expect(screen.getByTestId('order-tif')).toHaveValue(
+ VegaWalletOrderTimeInForce.FOK
+ );
});
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.IOC
- );
-
- // Switch to limit order
- fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
-
- // Assert price input shown with default value
- expect(screen.getByTestId('order-price')).toHaveDisplayValue('0');
-
- // Check all TIF options shown
- expect(screen.getByTestId('order-tif').children).toHaveLength(
- Object.keys(VegaWalletOrderTimeInForce).length
- );
-});
-
-it('Handles TIF select box dependent on order type', () => {
- render(generateJsx());
-
- // Check only IOC and
- expect(
- Array.from(screen.getByTestId('order-tif').children).map(
- (o) => o.textContent
- )
- ).toEqual(['IOC', 'FOK']);
-
- // Switch to limit order and check all TIF options shown
- fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
- expect(screen.getByTestId('order-tif').children).toHaveLength(
- Object.keys(VegaWalletOrderTimeInForce).length
- );
-
- // Change to GTC
- fireEvent.change(screen.getByTestId('order-tif'), {
- target: { value: VegaWalletOrderTimeInForce.GTC },
- });
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.GTC
- );
-
- // Switch back to market order and TIF should now be IOC
- fireEvent.click(screen.getByTestId('order-type-TYPE_MARKET'));
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.IOC
- );
-
- // Switch tif to FOK
- fireEvent.change(screen.getByTestId('order-tif'), {
- target: { value: VegaWalletOrderTimeInForce.FOK },
- });
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.FOK
- );
-
- // Change back to limit and check we are still on FOK
- fireEvent.click(screen.getByTestId('order-type-TYPE_LIMIT'));
- expect(screen.getByTestId('order-tif')).toHaveValue(
- VegaWalletOrderTimeInForce.FOK
- );
});
diff --git a/libs/deal-ticket/src/components/time-in-force-selector.tsx b/libs/deal-ticket/src/components/time-in-force-selector.tsx
index 6f7dd17b7..5852aca45 100644
--- a/libs/deal-ticket/src/components/time-in-force-selector.tsx
+++ b/libs/deal-ticket/src/components/time-in-force-selector.tsx
@@ -11,6 +11,26 @@ interface TimeInForceSelectorProps {
onSelect: (tif: VegaWalletOrderTimeInForce) => void;
}
+// More detail in https://docs.vega.xyz/docs/mainnet/graphql/enums/order-time-in-force
+export const timeInForceLabel = (tif: string) => {
+ switch (tif) {
+ case VegaWalletOrderTimeInForce.GTC:
+ return t(`Good 'til Cancelled`);
+ case VegaWalletOrderTimeInForce.IOC:
+ return t('Immediate or Cancel');
+ case VegaWalletOrderTimeInForce.FOK:
+ return t('Fill or Kill');
+ case VegaWalletOrderTimeInForce.GTT:
+ return t(`Good 'til Time`);
+ case VegaWalletOrderTimeInForce.GFN:
+ return t('Good for Normal');
+ case VegaWalletOrderTimeInForce.GFA:
+ return t('Good for Auction');
+ default:
+ return t(tif);
+ }
+};
+
export const TimeInForceSelector = ({
value,
orderType,
@@ -37,7 +57,7 @@ export const TimeInForceSelector = ({
{options.map(([key, value]) => {
return (
);
})}
From 714f5fc8e8db4d16d9432f23fbea399f5c7ba9f0 Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Wed, 27 Jul 2022 11:40:39 +0100
Subject: [PATCH 06/61] frontend-monorepo-863 Block explorer menu: "Proposals"
should say Governance proposals (#878)
---
apps/explorer/src/app/routes/governance/index.tsx | 4 +++-
apps/explorer/src/app/routes/router-config.tsx | 4 ++--
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/apps/explorer/src/app/routes/governance/index.tsx b/apps/explorer/src/app/routes/governance/index.tsx
index 659cdcd82..b64bed16f 100644
--- a/apps/explorer/src/app/routes/governance/index.tsx
+++ b/apps/explorer/src/app/routes/governance/index.tsx
@@ -108,7 +108,9 @@ const Governance = () => {
if (!data) return null;
return (
- {t('Governance')}
+
+ {t('Governance Proposals')}
+
{data.proposals?.map((p) => (
{getProposalName(p.terms.change)}
diff --git a/apps/explorer/src/app/routes/router-config.tsx b/apps/explorer/src/app/routes/router-config.tsx
index 7117c326f..5dd0d3ac3 100644
--- a/apps/explorer/src/app/routes/router-config.tsx
+++ b/apps/explorer/src/app/routes/router-config.tsx
@@ -66,8 +66,8 @@ const governanceRoutes = flags.governance
? [
{
path: Routes.GOVERNANCE,
- name: 'Governance',
- text: t('Proposals'),
+ name: 'Governance proposals',
+ text: t('Governance Proposals'),
element: ,
},
]
From 228cda40546fb836bd32e642b6758b3be2b812e5 Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Wed, 27 Jul 2022 12:12:05 +0100
Subject: [PATCH 07/61] frontend-monorepo-836: Theme switcher - light toggle
had wrong font colour (#879)
---
.../ui-toolkit/src/components/theme-switcher/theme-switcher.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/ui-toolkit/src/components/theme-switcher/theme-switcher.tsx b/libs/ui-toolkit/src/components/theme-switcher/theme-switcher.tsx
index 3edbd9fbf..e64076eaa 100644
--- a/libs/ui-toolkit/src/components/theme-switcher/theme-switcher.tsx
+++ b/libs/ui-toolkit/src/components/theme-switcher/theme-switcher.tsx
@@ -13,7 +13,7 @@ export const ThemeSwitcher = ({
sunClassName?: string;
moonClassName?: string;
}) => {
- const sunClasses = classNames('dark:hidden text-white', sunClassName);
+ const sunClasses = classNames('dark:hidden text-black', sunClassName);
const moonClasses = classNames(
'hidden dark:inline text-white',
moonClassName
From 6382d3fb220abacefd271f400ab128c07daee52d Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Wed, 27 Jul 2022 12:45:38 +0100
Subject: [PATCH 08/61] Fix/881: Removed testing message in proposals list
voteStatus (#882)
---
.../proposals-list-item/proposals-list-item-details.tsx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/token/src/routes/governance/components/proposals-list-item/proposals-list-item-details.tsx b/apps/token/src/routes/governance/components/proposals-list-item/proposals-list-item-details.tsx
index 0a607e3b3..cb12ae611 100644
--- a/apps/token/src/routes/governance/components/proposals-list-item/proposals-list-item-details.tsx
+++ b/apps/token/src/routes/governance/components/proposals-list-item/proposals-list-item-details.tsx
@@ -189,7 +189,6 @@ export const ProposalsListItemDetails = ({
className="col-start-2 row-start-1 justify-self-end"
data-testid="vote-status"
>
- testing testing 123
{voteStatus}
)}
From be8bfc81de2e25687d431dcfb5e1b4625c814f4e Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Wed, 27 Jul 2022 12:46:00 +0100
Subject: [PATCH 09/61] Fix/829: Git info word length broke responsiveness
(#880)
---
libs/network-info/src/network-info.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/network-info/src/network-info.tsx b/libs/network-info/src/network-info.tsx
index 35967de16..3db53eb69 100644
--- a/libs/network-info/src/network-info.tsx
+++ b/libs/network-info/src/network-info.tsx
@@ -31,7 +31,7 @@ export const NetworkInfo = () => {
. setNodeSwitcherOpen()}>{t('Edit')}
-
+
{t('Reading Ethereum data from')}{' '}
{ETHEREUM_PROVIDER_URL}
From 20720c6ddc109a1373b7d847485dbbdff62dd5ee Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Wed, 27 Jul 2022 12:05:01 +0000
Subject: [PATCH 10/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 85 +++++++++++++------
apps/static/src/assets/stagnet1-tranches.json | 4 +-
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 63 insertions(+), 28 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index e91e26671..2fdab46ca 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117603.58652948537742957",
+ "locked_amount": "117544.29943069494598218",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58580.3647387115488332",
+ "locked_amount": "58522.209617641210164276",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "80069.24511975730205463012744",
+ "locked_amount": "79989.75710931694850663014992",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24643.747816787289562354",
+ "locked_amount": "24619.282961638217373838",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "8021.300777095928290488",
+ "locked_amount": "8013.337704146241582245",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11830.40789175724725",
+ "locked_amount": "11799.847146739131",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1646262.801842317880776074",
+ "locked_amount": "1644934.51437690273220166",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "10113.1736283674289138887899580508",
+ "locked_amount": "10074.1371378841014463592117794488",
"deposits": [
{
"amount": "2833.333333",
@@ -5514,7 +5514,7 @@
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "25010.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2586.40721492897082590031024476788432277",
+ "locked_amount": "2569.28262937595102120030819063926940636",
"deposits": [
{
"amount": "2",
@@ -16441,8 +16441,8 @@
"tranche_start": "2022-03-05T00:00:00.000Z",
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
- "total_removed": "144843.5352821052414",
- "locked_amount": "2554234.08333003981993526604",
+ "total_removed": "148381.2401909658774",
+ "locked_amount": "2552192.96795627356824965788",
"deposits": [
{
"amount": "1998.95815",
@@ -16611,6 +16611,11 @@
}
],
"withdrawals": [
+ {
+ "amount": "3537.704908860636",
+ "user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
+ "tx": "0x94e1cf9e13f0d65808fb9a27364952be89155eab13f6b4259acced06c18694fc"
+ },
{
"amount": "20676.42232",
"user": "0x93b478148FF792B00076B7EdC89Db1FdE7772079",
@@ -16710,6 +16715,12 @@
}
],
"withdrawals": [
+ {
+ "amount": "3537.704908860636",
+ "user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
+ "tranche_id": 1,
+ "tx": "0x94e1cf9e13f0d65808fb9a27364952be89155eab13f6b4259acced06c18694fc"
+ },
{
"amount": "38390.8952661194945",
"user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
@@ -16724,8 +16735,8 @@
}
],
"total_tokens": "187637.95",
- "withdrawn_tokens": "55736.5564673891205",
- "remaining_tokens": "131901.3935326108795"
+ "withdrawn_tokens": "59274.2613762497565",
+ "remaining_tokens": "128363.6886237502435"
},
{
"address": "0x1A71e3ED1996CAbB91bB043f880CE963D601707e",
@@ -17187,8 +17198,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
- "total_removed": "67542.001079865509505",
- "locked_amount": "14283335.4116994277150854091125720206555826",
+ "total_removed": "68723.265724167975505",
+ "locked_amount": "14276134.8020700778558626189285810241200324",
"deposits": [
{
"amount": "16249.93",
@@ -17692,6 +17703,11 @@
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x4303f2bca5e794329a9dd8b34e0bf4f29234f1fa5a920c48a8203b62529aba13"
},
+ {
+ "amount": "1181.264644302466",
+ "user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
+ "tx": "0xa67914a8bbc426c6faa561af9417fafae696f08823d534b37a93adc0801e66a7"
+ },
{
"amount": "325.1056930428465",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -19002,10 +19018,17 @@
"tx": "0x2fbd183386974d45954eb28b4def917a8c9dfb1cf6538d754378ba4ce9756126"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "1181.264644302466",
+ "user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
+ "tranche_id": 2,
+ "tx": "0xa67914a8bbc426c6faa561af9417fafae696f08823d534b37a93adc0801e66a7"
+ }
+ ],
"total_tokens": "12362.05",
- "withdrawn_tokens": "0",
- "remaining_tokens": "12362.05"
+ "withdrawn_tokens": "1181.264644302466",
+ "remaining_tokens": "11180.785355697534"
},
{
"address": "0xb091D456d0dFCB94dcba6f355379056C5bb995fC",
@@ -19630,7 +19653,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2421946.596295493754033047",
- "locked_amount": "7532695.62072442640108897986457835",
+ "locked_amount": "7526013.85547416362304739291461938",
"deposits": [
{
"amount": "129284.449",
@@ -24218,7 +24241,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2659310.19357185744888163578522694",
+ "locked_amount": "2656670.18771049829400989350494552",
"deposits": [
{
"amount": "552496.6455",
@@ -25462,7 +25485,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "622.9814487941",
- "locked_amount": "404732.99112812817606477193505832",
+ "locked_amount": "404409.56472964196813674575038052",
"deposits": [
{
"amount": "3000",
@@ -51354,7 +51377,7 @@
"tranche_start": "2021-12-05T00:00:00.000Z",
"tranche_end": "2022-06-05T00:00:00.000Z",
"total_added": "171288.42",
- "total_removed": "40866.0912801057989",
+ "total_removed": "41016.0912801057989",
"locked_amount": "0",
"deposits": [
{
@@ -55599,6 +55622,11 @@
"user": "0x72bB3eB15F285F8e2893a29287186d5210590C22",
"tx": "0xc47354b308b7512768605c9e908e87620df22c197d7d2c769728f1d64dc164d3"
},
+ {
+ "amount": "150",
+ "user": "0x6EE016F4512C910b401B18087BBAC15412dD97cA",
+ "tx": "0xbc09d1b5e70ce11912142519f7372859423f6475ce3c0f38c098b6bdf8be4480"
+ },
{
"amount": "250",
"user": "0x1f7C20Bd98B2f346A58d2c5faaFc940E0C36450E",
@@ -59577,10 +59605,17 @@
"tx": "0x1c2c084e3efafb2ffa09c0b259bd229cce0d6da04dd092d911c7e6136a7ac8a9"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "150",
+ "user": "0x6EE016F4512C910b401B18087BBAC15412dD97cA",
+ "tranche_id": 6,
+ "tx": "0xbc09d1b5e70ce11912142519f7372859423f6475ce3c0f38c098b6bdf8be4480"
+ }
+ ],
"total_tokens": "150",
- "withdrawn_tokens": "0",
- "remaining_tokens": "150"
+ "withdrawn_tokens": "150",
+ "remaining_tokens": "0"
},
{
"address": "0xaA6522d3c033Adf9C149408526C539aaa91d5b67",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index c5009ef71..28a440e1c 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.51278221714865",
+ "locked_amount": "33.44429857940132",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "231.402558980213115",
+ "locked_amount": "230.649238964992364",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index 70c4a5653..28c4d7bcb 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "212.46962233637749650021036596270928465",
+ "locked_amount": "211.77793759512935240020968112633181124",
"deposits": [
{
"amount": "1000",
From 363562e3305cd18b3d960c7d2a41c2e173561823 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rados=C5=82aw=20Szpiech?=
Date: Wed, 27 Jul 2022 14:46:02 +0200
Subject: [PATCH 11/61] test: fix staking functions and association tests
(#883)
Co-authored-by: Rado
---
apps/token-e2e/src/integration/flow/staking-flow.cy.js | 3 ++-
.../src/integration/flow/token-association-flow.cy.js | 4 ++--
apps/token-e2e/src/support/wallet-teardown.functions.js | 8 ++++----
3 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/apps/token-e2e/src/integration/flow/staking-flow.cy.js b/apps/token-e2e/src/integration/flow/staking-flow.cy.js
index 3621305d4..0d7d826bd 100644
--- a/apps/token-e2e/src/integration/flow/staking-flow.cy.js
+++ b/apps/token-e2e/src/integration/flow/staking-flow.cy.js
@@ -25,7 +25,8 @@ const ethWalletContainer = '[data-testid="ethereum-wallet"]';
const txTimeout = { timeout: 40000 };
const epochTimeout = { timeout: 10000 };
-context('Staking Tab - with eth and vega wallets connected', function () {
+// Tests skipped because of change of the UI of data nodes
+context.skip('Staking Tab - with eth and vega wallets connected', function () {
before('visit staking tab and connect vega wallet', function () {
cy.vega_wallet_import();
cy.visit('/');
diff --git a/apps/token-e2e/src/integration/flow/token-association-flow.cy.js b/apps/token-e2e/src/integration/flow/token-association-flow.cy.js
index 12074d615..394023492 100644
--- a/apps/token-e2e/src/integration/flow/token-association-flow.cy.js
+++ b/apps/token-e2e/src/integration/flow/token-association-flow.cy.js
@@ -1,4 +1,4 @@
-const validatorList = '[data-testid="node-list-item-name"]';
+const validatorsGrid = '[data-testid="validators-grid"]';
const ethWalletContainer = '[data-testid="ethereum-wallet"]';
const ethWalletAssociatedBalances =
'[data-testid="eth-wallet-associated-balances"]';
@@ -23,7 +23,7 @@ context(
cy.ethereum_wallet_connect();
cy.navigate_to('staking');
cy.wait_for_spinner();
- cy.get(validatorList).first().invoke('text').as('validatorName');
+ cy.get(validatorsGrid).should('be.visible');
});
describe('Eth wallet - contains VEGA tokens', function () {
diff --git a/apps/token-e2e/src/support/wallet-teardown.functions.js b/apps/token-e2e/src/support/wallet-teardown.functions.js
index 46eabf2f6..b34700bfe 100644
--- a/apps/token-e2e/src/support/wallet-teardown.functions.js
+++ b/apps/token-e2e/src/support/wallet-teardown.functions.js
@@ -75,7 +75,7 @@ Cypress.Commands.add(
(stakingBridgeContract) => {
cy.highlight('Tearing down staking tokens from vega wallet if present');
cy.wrap(
- stakingBridgeContract.stakeBalance(ethWalletPubKey, vegaWalletPubKey),
+ stakingBridgeContract.stake_balance(ethWalletPubKey, vegaWalletPubKey),
{
timeout: transactionTimeout,
log: false,
@@ -83,7 +83,7 @@ Cypress.Commands.add(
).then((stake_amount) => {
if (String(stake_amount) != '0') {
cy.wrap(
- stakingBridgeContract.removeStake(stake_amount, vegaWalletPubKey),
+ stakingBridgeContract.remove_stake(stake_amount, vegaWalletPubKey),
{ timeout: transactionTimeout, log: false }
).then((tx) => {
cy.wait_for_transaction(tx);
@@ -95,12 +95,12 @@ Cypress.Commands.add(
Cypress.Commands.add('vega_wallet_teardown_vesting', (vestingContract) => {
cy.highlight('Tearing down vesting tokens from vega wallet if present');
- cy.wrap(vestingContract.stakeBalance(ethWalletPubKey, vegaWalletPubKey), {
+ cy.wrap(vestingContract.stake_balance(ethWalletPubKey, vegaWalletPubKey), {
timeout: transactionTimeout,
log: false,
}).then((vesting_amount) => {
if (String(vesting_amount) != '0') {
- cy.wrap(vestingContract.removeStake(vesting_amount, vegaWalletPubKey), {
+ cy.wrap(vestingContract.remove_stake(vesting_amount, vegaWalletPubKey), {
timeout: transactionTimeout,
log: false,
}).then((tx) => {
From e3dd73531cd8d31c76ccb53ca12eb0a27450ba39 Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Wed, 27 Jul 2022 15:30:29 +0100
Subject: [PATCH 12/61] Fix/872: Remove useThemeSwitcher from Token as it's
redundant and was stripping dark class (#886)
---
apps/token/src/app.tsx | 2 +-
apps/token/src/hooks/use-animate-value.ts | 8 ++------
2 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/apps/token/src/app.tsx b/apps/token/src/app.tsx
index 4c9e2edcf..15c1f6e73 100644
--- a/apps/token/src/app.tsx
+++ b/apps/token/src/app.tsx
@@ -49,7 +49,7 @@ const AppContainer = () => {
<>
-
+
diff --git a/apps/token/src/hooks/use-animate-value.ts b/apps/token/src/hooks/use-animate-value.ts
index fd376663c..174b32892 100644
--- a/apps/token/src/hooks/use-animate-value.ts
+++ b/apps/token/src/hooks/use-animate-value.ts
@@ -2,7 +2,6 @@ import React from 'react';
import { usePrevious } from './use-previous';
import type { BigNumber } from '../lib/bignumber';
import { theme as tailwindcss } from '@vegaprotocol/tailwindcss-config';
-import { useThemeSwitcher } from '@vegaprotocol/react-helpers';
const Colors = tailwindcss.colors;
const FLASH_DURATION = 1200; // Duration of flash animation in milliseconds
@@ -13,7 +12,6 @@ export function useAnimateValue(
) {
const shouldAnimate = React.useRef(false);
const previous = usePrevious(value);
- const [theme] = useThemeSwitcher();
React.useEffect(() => {
const timeout = setTimeout(() => {
@@ -38,8 +36,7 @@ export function useAnimateValue(
offset: 0.8,
},
{
- backgroundColor:
- theme === 'dark' ? Colors.white[60] : Colors.black[60],
+ backgroundColor: Colors.white[60],
color: Colors.white.DEFAULT,
},
],
@@ -64,8 +61,7 @@ export function useAnimateValue(
offset: 0.8,
},
{
- backgroundColor:
- theme === 'dark' ? Colors.white[60] : Colors.black[60],
+ backgroundColor: Colors.white[60],
color: Colors.white.DEFAULT,
},
],
From f1c3eab914696855908af335a9b1347e6556e1d2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rados=C5=82aw=20Szpiech?=
Date: Wed, 27 Jul 2022 16:46:30 +0200
Subject: [PATCH 13/61] test(token): validations added for vega wallet widget
(#885)
* test(token): validations added for vega wallet widget
* test: add missing vega wallet import
* test: add validation for url value
Co-authored-by: Rado
---
.../src/integration/view/wallet-vega.cy.js | 287 ++++++++++++++++++
.../components/vega-wallet/vega-wallet.tsx | 11 +-
.../src/manage-dialog/manage-dialog.tsx | 17 +-
3 files changed, 310 insertions(+), 5 deletions(-)
create mode 100644 apps/token-e2e/src/integration/view/wallet-vega.cy.js
diff --git a/apps/token-e2e/src/integration/view/wallet-vega.cy.js b/apps/token-e2e/src/integration/view/wallet-vega.cy.js
new file mode 100644
index 000000000..1ab4d69db
--- /dev/null
+++ b/apps/token-e2e/src/integration/view/wallet-vega.cy.js
@@ -0,0 +1,287 @@
+const walletContainer = '[data-testid="vega-wallet"]';
+const walletHeader = '[data-testid="wallet-header"] h1';
+const connectButton = '[data-testid="connect-vega"]';
+const getVegaLink = '[data-testid="link"]';
+const dialog = '[role="dialog"]';
+const dialogHeader = '[data-testid="dialog-title"]';
+const connectorsList = '[data-testid="connectors-list"]';
+const dialogCloseBtn = '[data-testid="dialog-close"]';
+const restConnectorForm = '[data-testid="rest-connector-form"]';
+const restUrl = '#url';
+const restWallet = '#wallet';
+const restPassphrase = '#passphrase';
+const restConnectBtn = '[type="submit"]';
+const accountNo = '[data-testid="vega-account-truncated"]';
+const walletName = '[data-testid="wallet-name"]';
+const currencyTitle = '[data-testid="currency-title"]';
+const currencyValue = '[data-testid="currency-value"]';
+const vegaUnstaked = '[data-testid="vega-wallet-balance-unstaked"] .text-right';
+const governanceBtn = '[href="/governance"]';
+const stakingBtn = '[href="/staking"]';
+const manageLink = '[data-testid="manage-vega-wallet"]';
+const dialogWalletName = `[data-testid="key-${Cypress.env(
+ 'vegaWalletPublicKey'
+)}"] h2`;
+const dialogVegaKey = '[data-testid="vega-public-key-full"]';
+const dialogDisconnectBtn = '[data-testid="disconnect"]';
+const copyPublicKeyBtn = '[data-testid="copy-vega-public-key"]';
+
+context('Vega Wallet - verify elements on widget', function () {
+ before('visit token home page', function () {
+ cy.visit('/');
+ });
+
+ describe('with wallets disconnected', function () {
+ before('wait for widget to load', function () {
+ cy.get(walletContainer, { timeout: 10000 }).should('be.visible');
+ });
+
+ it('should have VEGA WALLET header visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(walletHeader)
+ .should('be.visible')
+ .and('have.text', 'Vega Wallet');
+ });
+ });
+
+ it('should have Connect Vega button visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(connectButton)
+ .should('be.visible')
+ .and('have.text', 'Connect Vega wallet to use associated $VEGA');
+ });
+ });
+
+ it('should have Get a Vega wallet link visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(getVegaLink)
+ .should('be.visible')
+ .and('have.text', 'Get a Vega wallet')
+ .and('have.attr', 'href', 'https://vega.xyz/wallet');
+ });
+ });
+ });
+
+ describe('when connect button clicked', function () {
+ before('click connect vega wallet button', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(connectButton).click();
+ });
+ });
+
+ it('should have Connect Vega header visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogHeader)
+ .should('be.visible')
+ .and('have.text', 'Connect to your Vega Wallet');
+ });
+ });
+
+ it('should have REST connector visible on list', function () {
+ cy.get(connectorsList).within(() => {
+ cy.get('button').should('be.visible').and('have.text', 'rest provider');
+ });
+ });
+
+ it('should have close button visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogCloseBtn).should('be.visible');
+ });
+ });
+ });
+
+ describe('when rest connector form opened', function () {
+ before('click rest provider link', function () {
+ cy.get(connectorsList).within(() => {
+ cy.get('button').click();
+ });
+ });
+
+ it('should have url field visible', function () {
+ cy.get(restConnectorForm).within(() => {
+ cy.get(restUrl)
+ .should('be.visible')
+ .and('have.value', 'http://localhost:1789/api/v1');
+ });
+ });
+
+ it('should have wallet field visible', function () {
+ cy.get(restConnectorForm).within(() => {
+ cy.get(restWallet).should('be.visible');
+ });
+ });
+
+ it('should have password field visible', function () {
+ cy.get(restConnectorForm).within(() => {
+ cy.get(restPassphrase).should('be.visible');
+ });
+ });
+
+ it('should have connect button visible', function () {
+ cy.get(restConnectorForm).within(() => {
+ cy.get(restConnectBtn).should('be.visible').and('have.text', 'Connect');
+ });
+ });
+
+ it('should have Connect Vega header visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogHeader)
+ .should('be.visible')
+ .and('have.text', 'Connect to your Vega Wallet');
+ });
+ });
+
+ it('should have close button visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogCloseBtn).should('be.visible');
+ });
+ });
+
+ // after('close dialog', function () {
+ // cy.get(dialogCloseBtn).click().should('not.exist');
+ // }); - to be changed when dialog state is fixed - https://github.com/vegaprotocol/frontend-monorepo/issues/838
+ });
+
+ describe('when vega wallet connected', function () {
+ before('connect vega wallet', function () {
+ cy.vega_wallet_import();
+
+ // cy.vega_wallet_connect(); - to be changed when dialog state is fixed - https://github.com/vegaprotocol/frontend-monorepo/issues/838
+ // then code below can be removed
+ cy.get(restConnectorForm).within(() => {
+ cy.get('#wallet').click().type(Cypress.env('vegaWalletName'));
+ cy.get('#passphrase').click().type(Cypress.env('vegaWalletPassphrase'));
+ cy.get('button').contains('Connect').click();
+ });
+ });
+
+ it('should have VEGA WALLET header visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(walletHeader)
+ .should('be.visible')
+ .and('have.text', 'Vega Wallet');
+ });
+ });
+
+ it('should have truncated account number visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(accountNo)
+ .should('be.visible')
+ .and('have.text', Cypress.env('vegaWalletPublicKeyShort'));
+ });
+ });
+
+ it('should have wallet name visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(walletName)
+ .should('be.visible')
+ .and('have.text', `${Cypress.env('vegaWalletName')} key 1`);
+ });
+ });
+
+ it('should have Vega Associated currency title visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(currencyTitle)
+ .should('be.visible')
+ .and('have.text', `VEGAAssociated`);
+ });
+ });
+
+ it('should have Vega Associated currency value visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(currencyValue)
+ .should('be.visible')
+ .and('have.text', `0.000000000000000000`);
+ });
+ });
+
+ it('should have Unstaked value visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(vegaUnstaked)
+ .should('be.visible')
+ .and('have.text', `0.000000000000000000`);
+ });
+ });
+
+ it('should have Governance button visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(governanceBtn)
+ .should('be.visible')
+ .and('have.text', 'Governance');
+ });
+ });
+
+ it('should have Staking button visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(stakingBtn).should('be.visible').and('have.text', 'Staking');
+ });
+ });
+
+ it('should have Manage link visible', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(manageLink).should('be.visible').and('have.text', 'Manage');
+ });
+ });
+ });
+
+ describe('when Manage dialog opened', function () {
+ before('click Manage link', function () {
+ cy.get(walletContainer).within(() => {
+ cy.get(manageLink).click();
+ });
+ });
+
+ it('should have SELECT A VEGA KEY dialog title visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogHeader)
+ .should('be.visible')
+ .and('have.text', 'SELECT A VEGA KEY');
+ });
+ });
+
+ it('should have wallet name visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogWalletName)
+ .should('be.visible')
+ .and('have.text', `${Cypress.env('vegaWalletName')} key 1`);
+ });
+ });
+
+ it('should have vega wallet public key visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogVegaKey)
+ .should('be.visible')
+ .and('have.text', `${Cypress.env('vegaWalletPublicKey')}`);
+ });
+ });
+
+ it('should have copy public key button visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(copyPublicKeyBtn).should('be.visible').and('have.text', 'Copy');
+ });
+ });
+
+ it('should have close button visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogCloseBtn).should('be.visible');
+ });
+ });
+
+ it('should have vega Disconnect all keys button visible', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogDisconnectBtn)
+ .should('be.visible')
+ .and('have.text', 'Disconnect all keys');
+ });
+ });
+
+ it('should be able to disconnect all keys', function () {
+ cy.get(dialog).within(() => {
+ cy.get(dialogDisconnectBtn).click();
+ });
+ cy.get(walletContainer).within(() => {
+ cy.get(connectButton).should('be.visible');
+ });
+ });
+ });
+});
diff --git a/apps/token/src/components/vega-wallet/vega-wallet.tsx b/apps/token/src/components/vega-wallet/vega-wallet.tsx
index ff81d2a17..a73e6f5a6 100644
--- a/apps/token/src/components/vega-wallet/vega-wallet.tsx
+++ b/apps/token/src/components/vega-wallet/vega-wallet.tsx
@@ -43,10 +43,16 @@ export const VegaWallet = () => {
{t('vegaWallet')}
{keypair && (
<>
-
+
{keypair.name}
-
+
{truncateMiddle(keypair.pub)}
>
@@ -129,6 +135,7 @@ const VegaWalletConnected = ({ vegaKeys }: VegaWalletConnectedProps) => {
const footer = (
)}
-
+
{truncateByChars(kp.pub, 23, 23)}
-
{kp.pub}
+
+ {kp.pub}
+
-
+
+
),
disabled: true,
diff --git a/apps/simple-trading-app/src/app/components/deal-ticket/review-trade.tsx b/apps/simple-trading-app/src/app/components/deal-ticket/review-trade.tsx
new file mode 100644
index 000000000..81527e229
--- /dev/null
+++ b/apps/simple-trading-app/src/app/components/deal-ticket/review-trade.tsx
@@ -0,0 +1,146 @@
+import { addDecimal, formatNumber, t } from '@vegaprotocol/react-helpers';
+import {
+ Button,
+ Icon,
+ KeyValueTable,
+ KeyValueTableRow,
+} from '@vegaprotocol/ui-toolkit';
+import * as React from 'react';
+import classNames from 'classnames';
+import type { DealTicketQuery_market } from '@vegaprotocol/deal-ticket';
+import type { Order } from '@vegaprotocol/orders';
+import { SIDE_NAMES } from './side-selector';
+import { useVegaWallet, VegaWalletOrderSide } from '@vegaprotocol/wallet';
+import SimpleMarketExpires from '../simple-market-list/simple-market-expires';
+import { gql, useQuery } from '@apollo/client';
+import type {
+ MarketTags,
+ MarketTagsVariables,
+} from './__generated__/MarketTags';
+import useOrderMargin from '../../hooks/use-order-margin';
+import useOrderCloseOut from '../../hooks/use-order-closeout';
+import { IconNames } from '@blueprintjs/icons';
+import type { PartyBalanceQuery } from './__generated__/PartyBalanceQuery';
+
+export const MARKET_TAGS_QUERY = gql`
+ query MarketTags($marketId: ID!) {
+ market(id: $marketId) {
+ tradableInstrument {
+ instrument {
+ metadata {
+ tags
+ }
+ }
+ }
+ }
+ }
+`;
+
+interface Props {
+ market: DealTicketQuery_market;
+ isDisabled: boolean;
+ transactionStatus?: string;
+ order: Order;
+ partyData?: PartyBalanceQuery;
+}
+
+export default ({
+ isDisabled,
+ market,
+ order,
+ transactionStatus,
+ partyData,
+}: Props) => {
+ const { keypair } = useVegaWallet();
+ const { data: tagsData } = useQuery(
+ MARKET_TAGS_QUERY,
+ {
+ variables: { marketId: market.id },
+ }
+ );
+ const estMargin = useOrderMargin({
+ order,
+ market,
+ partyId: keypair?.pub || '',
+ });
+ const estCloseOut = useOrderCloseOut({ order, market, partyData });
+ return (
+
+
+
+
+
+ {SIDE_NAMES[order.side]}
+
+
{market.tradableInstrument.instrument.product.quoteName}
+
+ {tagsData?.market?.tradableInstrument.instrument.metadata
+ .tags && (
+
+ )}
+
+
+
+ @{' '}
+ {market.depth.lastTrade
+ ? addDecimal(market.depth.lastTrade.price, market.decimalPlaces)
+ : ' - '}{' '}
+ (EST)
+
+
+
+ <>{t('Est. margin')}>
+
+ {estMargin}
+
+
+
+
+ <>
+ {t('Size')}{' '}
+
+ ({market.tradableInstrument.instrument.product.quoteName})
+
+ >
+
+ {formatNumber(order.size, market.decimalPlaces)}
+
+
+
+
+ <>{t('Est. close out')}>
+
+ {estCloseOut}
+
+
+
+
+
+
+ {transactionStatus === 'pending' ? t('Pending...') : t('Submit')}
+
+
+ );
+};
diff --git a/apps/simple-trading-app/src/app/components/deal-ticket/side-selector.tsx b/apps/simple-trading-app/src/app/components/deal-ticket/side-selector.tsx
index 1c03d045d..292975695 100644
--- a/apps/simple-trading-app/src/app/components/deal-ticket/side-selector.tsx
+++ b/apps/simple-trading-app/src/app/components/deal-ticket/side-selector.tsx
@@ -29,6 +29,7 @@ export default ({ value, onSelect }: SideSelectorProps) => {
variant="inline-link"
aria-label={t('Open long position')}
className={classNames(
+ 'py-8',
'buyButton hover:buyButton dark:buyButtonDark dark:hover:buyButtonDark',
{ selected: value === VegaWalletOrderSide.Buy }
)}
@@ -40,6 +41,7 @@ export default ({ value, onSelect }: SideSelectorProps) => {
variant="inline-link"
aria-label={t('Open short position')}
className={classNames(
+ 'py-8',
'sellButton hover:sellButton dark:sellButtonDark dark:hover:sellButtonDark',
{ selected: value === VegaWalletOrderSide.Sell }
)}
diff --git a/apps/simple-trading-app/src/app/components/simple-market-list/simple-market-expires.spec.tsx b/apps/simple-trading-app/src/app/components/simple-market-list/simple-market-expires.spec.tsx
index a3da535f6..ed08fcbda 100644
--- a/apps/simple-trading-app/src/app/components/simple-market-list/simple-market-expires.spec.tsx
+++ b/apps/simple-trading-app/src/app/components/simple-market-list/simple-market-expires.spec.tsx
@@ -23,7 +23,7 @@ describe('SimpleMarketExpires', () => {
'settlement-date:2022-04-25T1200',
];
render();
- expect(screen.getByText('April 25')).toBeInTheDocument();
+ expect(screen.getByText('Apr 25')).toBeInTheDocument();
});
it('last one proper tag should matter', () => {
@@ -33,7 +33,7 @@ describe('SimpleMarketExpires', () => {
'settlement-expiry-date:2022-03-25T12:00:00',
];
render();
- expect(screen.getByText('March 25')).toBeInTheDocument();
+ expect(screen.getByText('Mar 25')).toBeInTheDocument();
});
it('when no proper tag nor date should be null', () => {
diff --git a/apps/simple-trading-app/src/app/constants/index.ts b/apps/simple-trading-app/src/app/constants/index.ts
index 7de82e7f5..30885f110 100644
--- a/apps/simple-trading-app/src/app/constants/index.ts
+++ b/apps/simple-trading-app/src/app/constants/index.ts
@@ -1,7 +1,7 @@
import type { SimpleMarkets_markets } from '../components/simple-market-list/__generated__/SimpleMarkets';
export const DATE_FORMAT = 'dd MMMM yyyy HH:mm';
-export const EXPIRE_DATE_FORMAT = 'MMMM dd';
+export const EXPIRE_DATE_FORMAT = 'MMM dd';
export const TRADABLE_STATES = {
Active: true,
diff --git a/apps/simple-trading-app/src/app/hooks/__generated__/estimateOrder.ts b/apps/simple-trading-app/src/app/hooks/__generated__/estimateOrder.ts
new file mode 100644
index 000000000..108368d2e
--- /dev/null
+++ b/apps/simple-trading-app/src/app/hooks/__generated__/estimateOrder.ts
@@ -0,0 +1,48 @@
+/* tslint:disable */
+/* eslint-disable */
+// @generated
+// This file was automatically generated and should not be edited.
+
+import { Side, OrderTimeInForce, OrderType } from "@vegaprotocol/types";
+
+// ====================================================
+// GraphQL query operation: EstimateOrder
+// ====================================================
+
+export interface EstimateOrder_estimateOrder_marginLevels {
+ __typename: "MarginLevels";
+ /**
+ * this is the minimal margin required for a party to place a new order on the network (unsigned int actually)
+ */
+ initialLevel: string;
+}
+
+export interface EstimateOrder_estimateOrder {
+ __typename: "OrderEstimate";
+ /**
+ * The total estimated amount of fee if the order was to trade
+ */
+ totalFeeAmount: string;
+ /**
+ * The margin requirement for this order
+ */
+ marginLevels: EstimateOrder_estimateOrder_marginLevels;
+}
+
+export interface EstimateOrder {
+ /**
+ * return an estimation of the potential cost for a new order
+ */
+ estimateOrder: EstimateOrder_estimateOrder;
+}
+
+export interface EstimateOrderVariables {
+ marketId: string;
+ partyId: string;
+ price?: string | null;
+ size: string;
+ side: Side;
+ timeInForce: OrderTimeInForce;
+ expiration?: string | null;
+ type: OrderType;
+}
diff --git a/apps/simple-trading-app/src/app/hooks/__generated__/marketPositions.ts b/apps/simple-trading-app/src/app/hooks/__generated__/marketPositions.ts
new file mode 100644
index 000000000..4f2426fec
--- /dev/null
+++ b/apps/simple-trading-app/src/app/hooks/__generated__/marketPositions.ts
@@ -0,0 +1,76 @@
+/* tslint:disable */
+/* eslint-disable */
+// @generated
+// This file was automatically generated and should not be edited.
+
+// ====================================================
+// GraphQL query operation: MarketPositions
+// ====================================================
+
+export interface MarketPositions_party_positionsConnection_edges_node_market_accounts {
+ __typename: "Account";
+ /**
+ * Balance as string - current account balance (approx. as balances can be updated several times per second)
+ */
+ balance: string;
+}
+
+export interface MarketPositions_party_positionsConnection_edges_node_market {
+ __typename: "Market";
+ /**
+ * Market ID
+ */
+ id: string;
+ /**
+ * Get account for a party or market
+ */
+ accounts: MarketPositions_party_positionsConnection_edges_node_market_accounts[] | null;
+}
+
+export interface MarketPositions_party_positionsConnection_edges_node {
+ __typename: "Position";
+ /**
+ * Open volume (uint64)
+ */
+ openVolume: string;
+ /**
+ * Market relating to this position
+ */
+ market: MarketPositions_party_positionsConnection_edges_node_market;
+}
+
+export interface MarketPositions_party_positionsConnection_edges {
+ __typename: "PositionEdge";
+ node: MarketPositions_party_positionsConnection_edges_node;
+}
+
+export interface MarketPositions_party_positionsConnection {
+ __typename: "PositionConnection";
+ /**
+ * The positions in this connection
+ */
+ edges: MarketPositions_party_positionsConnection_edges[] | null;
+}
+
+export interface MarketPositions_party {
+ __typename: "Party";
+ /**
+ * Party identifier
+ */
+ id: string;
+ /**
+ * Trading positions relating to a party
+ */
+ positionsConnection: MarketPositions_party_positionsConnection;
+}
+
+export interface MarketPositions {
+ /**
+ * An entity that is trading on the VEGA network
+ */
+ party: MarketPositions_party | null;
+}
+
+export interface MarketPositionsVariables {
+ partyId: string;
+}
diff --git a/apps/simple-trading-app/src/app/hooks/use-market-positions.ts b/apps/simple-trading-app/src/app/hooks/use-market-positions.ts
new file mode 100644
index 000000000..f80c1cc83
--- /dev/null
+++ b/apps/simple-trading-app/src/app/hooks/use-market-positions.ts
@@ -0,0 +1,70 @@
+import { gql, useQuery } from '@apollo/client';
+import { BigNumber } from 'bignumber.js';
+import type {
+ MarketPositions,
+ MarketPositionsVariables,
+} from './__generated__/marketPositions';
+
+const MARKET_POSITIONS_QUERY = gql`
+ query MarketPositions($partyId: ID!) {
+ party(id: $partyId) {
+ id
+ positionsConnection {
+ edges {
+ node {
+ openVolume
+ market {
+ id
+ accounts {
+ balance
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+`;
+
+interface Props {
+ marketId: string;
+ partyId: string;
+}
+
+type PositionMargin = {
+ openVolume: BigNumber;
+ balanceSum: BigNumber;
+} | null;
+
+export default ({ marketId, partyId }: Props): PositionMargin => {
+ const { data } = useQuery(
+ MARKET_POSITIONS_QUERY,
+ {
+ pollInterval: 15000,
+ variables: { partyId },
+ skip: !partyId,
+ }
+ );
+
+ const markets =
+ data?.party?.positionsConnection?.edges
+ ?.filter((nodes) => nodes.node.market.id === marketId)
+ .map((nodes) => nodes.node) || [];
+
+ return markets.length
+ ? markets.reduce(
+ (agg, item) => {
+ const balance = item.market.accounts?.reduce(
+ (acagg, account) => acagg.plus(account.balance || 0),
+ new BigNumber(0)
+ );
+ if (balance) {
+ agg.balanceSum = agg.balanceSum.plus(balance);
+ agg.openVolume = agg.openVolume.plus(item.openVolume);
+ }
+ return agg;
+ },
+ { openVolume: new BigNumber(0), balanceSum: new BigNumber(0) }
+ )
+ : null;
+};
diff --git a/apps/simple-trading-app/src/app/hooks/use-order-closeout.ts b/apps/simple-trading-app/src/app/hooks/use-order-closeout.ts
new file mode 100644
index 000000000..aade7e728
--- /dev/null
+++ b/apps/simple-trading-app/src/app/hooks/use-order-closeout.ts
@@ -0,0 +1,39 @@
+import { BigNumber } from 'bignumber.js';
+import type { Order } from '@vegaprotocol/orders';
+import type { DealTicketQuery_market } from '@vegaprotocol/deal-ticket';
+import type { PartyBalanceQuery } from '../components/deal-ticket/__generated__/PartyBalanceQuery';
+import { useSettlementAccount } from './use-settlement-account';
+import { VegaWalletOrderSide } from '@vegaprotocol/wallet';
+import { addDecimal, formatNumber } from '@vegaprotocol/react-helpers';
+
+interface Props {
+ order: Order;
+ market: DealTicketQuery_market;
+ partyData?: PartyBalanceQuery;
+}
+
+const useOrderCloseOut = ({ order, market, partyData }: Props): string => {
+ const account = useSettlementAccount(
+ market.tradableInstrument.instrument.product.settlementAsset.id,
+ partyData?.party?.accounts || []
+ );
+ if (account?.balance && market.depth.lastTrade) {
+ const price = new BigNumber(
+ addDecimal(market.depth.lastTrade.price, market.decimalPlaces)
+ );
+ const balance = new BigNumber(
+ addDecimal(account.balance, account.asset.decimals)
+ );
+ const { size, side } = order;
+ const bigOne = new BigNumber(1);
+ return formatNumber(
+ side === VegaWalletOrderSide.Buy
+ ? bigOne.minus(balance.div(price.times(size))).times(price)
+ : bigOne.plus(balance.div(price.times(size))).times(price),
+ market.decimalPlaces
+ );
+ }
+ return ' - ';
+};
+
+export default useOrderCloseOut;
diff --git a/apps/simple-trading-app/src/app/hooks/use-order-margin.ts b/apps/simple-trading-app/src/app/hooks/use-order-margin.ts
new file mode 100644
index 000000000..81f5073f9
--- /dev/null
+++ b/apps/simple-trading-app/src/app/hooks/use-order-margin.ts
@@ -0,0 +1,112 @@
+import type { Order } from '@vegaprotocol/orders';
+import { gql, useQuery } from '@apollo/client';
+import type {
+ EstimateOrder,
+ EstimateOrderVariables,
+} from './__generated__/estimateOrder';
+import type { DealTicketQuery_market } from '@vegaprotocol/deal-ticket';
+import { OrderTimeInForce, OrderType, Side } from '@vegaprotocol/types';
+import {
+ VegaWalletOrderSide,
+ VegaWalletOrderTimeInForce,
+ VegaWalletOrderType,
+} from '@vegaprotocol/wallet';
+import { addDecimal, formatNumber } from '@vegaprotocol/react-helpers';
+import useMarketPositions from './use-market-positions';
+import { BigNumber } from 'bignumber.js';
+
+export const ESTIMATE_ORDER_QUERY = gql`
+ query EstimateOrder(
+ $marketId: ID!
+ $partyId: ID!
+ $price: String
+ $size: String!
+ $side: Side!
+ $timeInForce: OrderTimeInForce!
+ $expiration: String
+ $type: OrderType!
+ ) {
+ estimateOrder(
+ marketId: $marketId
+ partyId: $partyId
+ price: $price
+ size: $size
+ side: $side
+ timeInForce: $timeInForce
+ expiration: $expiration
+ type: $type
+ ) {
+ totalFeeAmount
+ marginLevels {
+ initialLevel
+ }
+ }
+ }
+`;
+
+interface Props {
+ order: Order;
+ market: DealTicketQuery_market;
+ partyId: string;
+}
+
+const times: Record = {
+ [VegaWalletOrderTimeInForce.GTC]: OrderTimeInForce.GTC,
+ [VegaWalletOrderTimeInForce.GTT]: OrderTimeInForce.GTT,
+ [VegaWalletOrderTimeInForce.IOC]: OrderTimeInForce.IOC,
+ [VegaWalletOrderTimeInForce.FOK]: OrderTimeInForce.FOK,
+ [VegaWalletOrderTimeInForce.GFN]: OrderTimeInForce.GFN,
+ [VegaWalletOrderTimeInForce.GFA]: OrderTimeInForce.GFA,
+};
+
+const types: Record = {
+ [VegaWalletOrderType.Market]: OrderType.Market,
+ [VegaWalletOrderType.Limit]: OrderType.Limit,
+};
+
+const useOrderMargin = ({ order, market, partyId }: Props) => {
+ const marketPositions = useMarketPositions({ marketId: market.id, partyId });
+ console.log('marketPositions', marketPositions);
+ console.log(
+ 'marketPositions.openVolume',
+ marketPositions?.openVolume.toNumber()
+ );
+ console.log(
+ 'marketPositions.balanceSum',
+ marketPositions?.balanceSum.toNumber()
+ );
+ const { data } = useQuery(
+ ESTIMATE_ORDER_QUERY,
+ {
+ variables: {
+ marketId: market.id,
+ partyId,
+ price: market.depth.lastTrade?.price,
+ size: order.size + (marketPositions?.openVolume.toNumber() || 0),
+ side: order.side === VegaWalletOrderSide.Buy ? Side.Buy : Side.Sell,
+ timeInForce: times[order.timeInForce],
+ type: types[order.type],
+ },
+ skip: !partyId || !market.id || !order.size,
+ }
+ );
+ if (data?.estimateOrder.marginLevels.initialLevel) {
+ return formatNumber(
+ Math.max(
+ 0,
+ new BigNumber(
+ addDecimal(
+ data.estimateOrder.marginLevels.initialLevel,
+ market.decimalPlaces
+ )
+ )
+ .minus(marketPositions?.balanceSum.toNumber() || 0)
+ .toNumber()
+ ),
+ market.decimalPlaces
+ );
+ }
+ return ' - ';
+};
+
+export default useOrderMargin;
diff --git a/libs/deal-ticket/src/components/deal-ticket-manager.tsx b/libs/deal-ticket/src/components/deal-ticket-manager.tsx
index 76dbd130d..01d0d2e86 100644
--- a/libs/deal-ticket/src/components/deal-ticket-manager.tsx
+++ b/libs/deal-ticket/src/components/deal-ticket-manager.tsx
@@ -44,7 +44,7 @@ export const DealTicketManager = ({
);
};
-const getDialogTitle = (status?: OrderStatus): string | undefined => {
+export const getDialogTitle = (status?: OrderStatus): string | undefined => {
if (!status) {
return;
}
@@ -63,7 +63,7 @@ const getDialogTitle = (status?: OrderStatus): string | undefined => {
}
};
-const getDialogIntent = (status?: OrderStatus): Intent | undefined => {
+export const getDialogIntent = (status?: OrderStatus): Intent | undefined => {
if (!status) {
return;
}
@@ -81,7 +81,7 @@ const getDialogIntent = (status?: OrderStatus): Intent | undefined => {
}
};
-const getDialogIcon = (status?: OrderStatus): ReactNode | undefined => {
+export const getDialogIcon = (status?: OrderStatus): ReactNode | undefined => {
if (!status) {
return;
}
diff --git a/libs/tailwindcss-config/src/vega-custom-classes-lite.js b/libs/tailwindcss-config/src/vega-custom-classes-lite.js
index 470774b1b..0e8a38a82 100644
--- a/libs/tailwindcss-config/src/vega-custom-classes-lite.js
+++ b/libs/tailwindcss-config/src/vega-custom-classes-lite.js
@@ -45,8 +45,6 @@ const vegaCustomClassesLite = plugin(function ({ addUtilities }) {
backgroundColor: 'rgba(0, 143, 74, 0.1)',
border: `1px solid ${theme.colors.darkerGreen}`,
color: theme.colors.darkerGreen,
- paddingTop: '0.5rem',
- paddingBottom: '0.5rem',
'&:hover': {
backgroundColor: theme.colors.darkerGreen,
color: theme.colors.white.DEFAULT,
@@ -68,8 +66,6 @@ const vegaCustomClassesLite = plugin(function ({ addUtilities }) {
'.sellButton': {
textTransform: 'uppercase',
textDecoration: 'none',
- paddingTop: '0.5rem',
- paddingBottom: '0.5rem',
backgroundColor: 'rgba(255, 8, 126, 0.1)',
border: `1px solid ${theme.colors.pink}`,
color: theme.colors.pink,
From bc27e436cacafb28537dcfd534f7ac4cdcc8bd14 Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Wed, 27 Jul 2022 18:05:11 +0000
Subject: [PATCH 15/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 62 +++++++++++++------
apps/static/src/assets/stagnet1-tranches.json | 4 +-
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 45 insertions(+), 23 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index 2fdab46ca..688b29c1c 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117544.29943069494598218",
+ "locked_amount": "117484.962909972489208755",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58522.209617641210164276",
+ "locked_amount": "58464.006018259413794286",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "79989.75710931694850663014992",
+ "locked_amount": "79910.2028373942568584932346",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24619.282961638217373838",
+ "locked_amount": "24594.797712500696590922",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "8013.337704146241582245",
+ "locked_amount": "8005.367993151211078253",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11799.847146739131",
+ "locked_amount": "11769.26092617753675",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1644934.51437690273220166",
+ "locked_amount": "1643605.119646430133074804",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "10074.1371378841014463592117794488",
+ "locked_amount": "10035.068106446361128539391419595",
"deposits": [
{
"amount": "2833.333333",
@@ -5514,7 +5514,7 @@
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "25010.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2569.28262937595102120030819063926940636",
+ "locked_amount": "2552.14376870877640960030613479832572288",
"deposits": [
{
"amount": "2",
@@ -16442,7 +16442,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "148381.2401909658774",
- "locked_amount": "2552192.96795627356824965788",
+ "locked_amount": "2550150.15110162314913846486",
"deposits": [
{
"amount": "1998.95815",
@@ -17198,8 +17198,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
- "total_removed": "68723.265724167975505",
- "locked_amount": "14276134.8020700778558626189285810241200324",
+ "total_removed": "69123.834585739765555",
+ "locked_amount": "14268928.1899874640823052643183845374141659",
"deposits": [
{
"amount": "16249.93",
@@ -17708,6 +17708,11 @@
"user": "0xE6CacAE56Cca8dFdB7910b5A13578719D4E57DA0",
"tx": "0xa67914a8bbc426c6faa561af9417fafae696f08823d534b37a93adc0801e66a7"
},
+ {
+ "amount": "400.56886157179005",
+ "user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
+ "tx": "0x36922428802b59ffa5372882e41946441a94a2adeeb9d85a8b701880d50e7a5e"
+ },
{
"amount": "325.1056930428465",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -17981,6 +17986,12 @@
"tranche_id": 2,
"tx": "0x4303f2bca5e794329a9dd8b34e0bf4f29234f1fa5a920c48a8203b62529aba13"
},
+ {
+ "amount": "400.56886157179005",
+ "user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
+ "tranche_id": 2,
+ "tx": "0x36922428802b59ffa5372882e41946441a94a2adeeb9d85a8b701880d50e7a5e"
+ },
{
"amount": "325.1056930428465",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -18205,8 +18216,8 @@
}
],
"total_tokens": "194999.1675",
- "withdrawn_tokens": "18304.412614954827825",
- "remaining_tokens": "176694.754885045172175"
+ "withdrawn_tokens": "18704.981476526617875",
+ "remaining_tokens": "176294.186023473382125"
},
{
"address": "0x89051CAb67Bc7F8CC44F7e270c6EDaf1EC57676c",
@@ -19652,8 +19663,8 @@
"tranche_start": "2021-11-05T00:00:00.000Z",
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
- "total_removed": "2421946.596295493754033047",
- "locked_amount": "7526013.85547416362304739291461938",
+ "total_removed": "2422756.585128064230582297",
+ "locked_amount": "7519326.52028111623987319599653858",
"deposits": [
{
"amount": "129284.449",
@@ -19872,6 +19883,11 @@
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tx": "0x20171309054732628e1b86149642280cde77c3318a2ef37ec6f4a40ff8126228"
},
+ {
+ "amount": "809.98883257047654925",
+ "user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
+ "tx": "0x9531a4b8f6db038e5a1889be447cd1573c12c0c9e203038984dcc45de810ea6b"
+ },
{
"amount": "600.79246609513746875",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
@@ -21710,6 +21726,12 @@
"tranche_id": 3,
"tx": "0x20171309054732628e1b86149642280cde77c3318a2ef37ec6f4a40ff8126228"
},
+ {
+ "amount": "809.98883257047654925",
+ "user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
+ "tranche_id": 3,
+ "tx": "0x9531a4b8f6db038e5a1889be447cd1573c12c0c9e203038984dcc45de810ea6b"
+ },
{
"amount": "600.79246609513746875",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
@@ -23176,8 +23198,8 @@
}
],
"total_tokens": "359123.469575",
- "withdrawn_tokens": "173203.61934691521133675",
- "remaining_tokens": "185919.85022808478866325"
+ "withdrawn_tokens": "174013.608179485687886",
+ "remaining_tokens": "185109.861395514312114"
},
{
"address": "0xBdd412797c1B78535Afc5F71503b91fAbD0160fB",
@@ -24241,7 +24263,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2656670.18771049829400989350494552",
+ "locked_amount": "2654027.98113105854090478200029327",
"deposits": [
{
"amount": "552496.6455",
@@ -25485,7 +25507,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "622.9814487941",
- "locked_amount": "404409.56472964196813674575038052",
+ "locked_amount": "404085.868721783617756913876205",
"deposits": [
{
"amount": "3000",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index 28a440e1c..63a092fe3 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.44429857940132",
+ "locked_amount": "33.375773718924406",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "230.649238964992364",
+ "locked_amount": "229.89546549974631",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index 28c4d7bcb..fe491546f 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "211.77793759512935240020968112633181124",
+ "locked_amount": "211.0858685312024410002089959094368341",
"deposits": [
{
"amount": "1000",
From 3697f935e5a14327a775dc626f4c1b68d1004cd6 Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Thu, 28 Jul 2022 00:10:06 +0000
Subject: [PATCH 16/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 48 ++++++++++++-------
apps/static/src/assets/stagnet1-tranches.json | 4 +-
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 33 insertions(+), 21 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index 688b29c1c..d84afee6c 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117484.962909972489208755",
+ "locked_amount": "117424.84662098919995784",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58464.006018259413794286",
+ "locked_amount": "58405.037538852421918476",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "79910.2028373942568584932346",
+ "locked_amount": "79829.60310652818574668492504",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24594.797712500696590922",
+ "locked_amount": "24569.990691545351513372",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "8005.367993151211078253",
+ "locked_amount": "7997.293548551878667213",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11769.26092617753675",
+ "locked_amount": "11738.272758152175",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1643605.119646430133074804",
+ "locked_amount": "1642258.254733946037674694",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "10035.068106446361128539391419595",
+ "locked_amount": "9995.485651061172306510565042926",
"deposits": [
{
"amount": "2833.333333",
@@ -5514,7 +5514,7 @@
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "25010.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2552.14376870877640960030613479832572288",
+ "locked_amount": "2534.77967846270956480030405194063926944",
"deposits": [
{
"amount": "2",
@@ -16442,7 +16442,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "148381.2401909658774",
- "locked_amount": "2550150.15110162314913846486",
+ "locked_amount": "2548080.48865969214395872365",
"deposits": [
{
"amount": "1998.95815",
@@ -17199,7 +17199,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
"total_removed": "69123.834585739765555",
- "locked_amount": "14268928.1899874640823052643183845374141659",
+ "locked_amount": "14261626.8725311321749228323588125124655312",
"deposits": [
{
"amount": "16249.93",
@@ -19664,7 +19664,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2422756.585128064230582297",
- "locked_amount": "7519326.52028111623987319599653858",
+ "locked_amount": "7512551.30376861069731229607934313",
"deposits": [
{
"amount": "129284.449",
@@ -24263,7 +24263,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2654027.98113105854090478200029327",
+ "locked_amount": "2651351.05211079946810943517289489",
"deposits": [
{
"amount": "552496.6455",
@@ -25507,7 +25507,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "622.9814487941",
- "locked_amount": "404085.868721783617756913876205",
+ "locked_amount": "403757.91887716482907230023439876",
"deposits": [
{
"amount": "3000",
@@ -51399,7 +51399,7 @@
"tranche_start": "2021-12-05T00:00:00.000Z",
"tranche_end": "2022-06-05T00:00:00.000Z",
"total_added": "171288.42",
- "total_removed": "41016.0912801057989",
+ "total_removed": "41266.0912801057989",
"locked_amount": "0",
"deposits": [
{
@@ -55649,6 +55649,11 @@
"user": "0x6EE016F4512C910b401B18087BBAC15412dD97cA",
"tx": "0xbc09d1b5e70ce11912142519f7372859423f6475ce3c0f38c098b6bdf8be4480"
},
+ {
+ "amount": "250",
+ "user": "0xb21715Fe20319202d7AcC12320A8121760EF83dD",
+ "tx": "0x409e2ea40dba97134578e1b0fd560c7652aac5939bb830f0fad1180cb3321ae1"
+ },
{
"amount": "250",
"user": "0x1f7C20Bd98B2f346A58d2c5faaFc940E0C36450E",
@@ -66973,10 +66978,17 @@
"tx": "0x9f916cf09e8a3c4ade0ffce5190db464d0a2b1dadba78e1ee7ba5d6e751d6148"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "250",
+ "user": "0xb21715Fe20319202d7AcC12320A8121760EF83dD",
+ "tranche_id": 6,
+ "tx": "0x409e2ea40dba97134578e1b0fd560c7652aac5939bb830f0fad1180cb3321ae1"
+ }
+ ],
"total_tokens": "250",
- "withdrawn_tokens": "0",
- "remaining_tokens": "250"
+ "withdrawn_tokens": "250",
+ "remaining_tokens": "0"
},
{
"address": "0x8433BF349d4f71FB37c8CacF5D6D4863D43EaE23",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index 63a092fe3..7aff7d71d 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.375773718924406",
+ "locked_amount": "33.306335616438354",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "229.89546549974631",
+ "locked_amount": "229.131646372399848",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index fe491546f..7ca0f060e 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "211.0858685312024410002089959094368341",
+ "locked_amount": "210.38451166920349680020830149670218168",
"deposits": [
{
"amount": "1000",
From 4f341b20469458b5429f6d30ef6105bbe46cf8e4 Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Thu, 28 Jul 2022 06:04:58 +0000
Subject: [PATCH 17/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 28 +++++++++----------
apps/static/src/assets/stagnet1-tranches.json | 4 +--
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index d84afee6c..19961b179 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117424.84662098919995784",
+ "locked_amount": "117366.38596672876562907",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58405.037538852421918476",
+ "locked_amount": "58347.693082879219153566",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "79829.60310652818574668492504",
+ "locked_amount": "79751.22313532009629723295724",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24569.990691545351513372",
+ "locked_amount": "24545.866869203200097508",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "7997.293548551878667213",
+ "locked_amount": "7989.44147847154120552",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11738.272758152175",
+ "locked_amount": "11708.138020833333",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1642258.254733946037674694",
+ "locked_amount": "1640948.48320087402324334",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "9995.485651061172306510565042926",
+ "locked_amount": "9956.993317648905953371517901581",
"deposits": [
{
"amount": "2833.333333",
@@ -5514,7 +5514,7 @@
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "25010.000000000000000003",
"total_removed": "8288.51201225622",
- "locked_amount": "2534.77967846270956480030405194063926944",
+ "locked_amount": "2517.89380454084163130030202644596651439",
"deposits": [
{
"amount": "2",
@@ -16442,7 +16442,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "148381.2401909658774",
- "locked_amount": "2548080.48865969214395872365",
+ "locked_amount": "2546067.82582737477574652789",
"deposits": [
{
"amount": "1998.95815",
@@ -17199,7 +17199,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
"total_removed": "69123.834585739765555",
- "locked_amount": "14261626.8725311321749228323588125124655312",
+ "locked_amount": "14254526.6372591421871909619506743932224926",
"deposits": [
{
"amount": "16249.93",
@@ -19664,7 +19664,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2422756.585128064230582297",
- "locked_amount": "7512551.30376861069731229607934313",
+ "locked_amount": "7505962.68033932300713132694901444",
"deposits": [
{
"amount": "129284.449",
@@ -24263,7 +24263,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2651351.05211079946810943517289489",
+ "locked_amount": "2648747.847146224892759454991066808",
"deposits": [
{
"amount": "552496.6455",
@@ -25507,7 +25507,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "622.9814487941",
- "locked_amount": "403757.91887716482907230023439876",
+ "locked_amount": "403439.00094651283614095819076612",
"deposits": [
{
"amount": "3000",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index 7aff7d71d..a4da69027 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.306335616438354",
+ "locked_amount": "33.238828640284124",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "229.131646372399848",
+ "locked_amount": "228.389069634703186",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index 7ca0f060e..b3e471263 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "210.38451166920349680020830149670218168",
+ "locked_amount": "209.70272323693559280020762645865043128",
"deposits": [
{
"amount": "1000",
From b8100423189c1c59a4b104ca35661dfff3038f54 Mon Sep 17 00:00:00 2001
From: Sam Keen
Date: Thu, 28 Jul 2022 10:40:31 +0100
Subject: [PATCH 18/61] Fix/748-correct-order-of-shadows-on-input-fields (#887)
---
libs/tailwindcss-config/src/theme.js | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libs/tailwindcss-config/src/theme.js b/libs/tailwindcss-config/src/theme.js
index 6001a1b68..95c321fff 100644
--- a/libs/tailwindcss-config/src/theme.js
+++ b/libs/tailwindcss-config/src/theme.js
@@ -204,10 +204,10 @@ module.exports = {
'inset-danger': `${boxShadowPosition.insetUnderline} ${colours.danger}`,
input: `${boxShadowPosition.insetShading} ${colours.white['80']}`,
'input-dark': `${boxShadowPosition.insetShading} ${colours.black['80']}`,
- 'input-focus': `${boxShadowPosition.insetShading} ${colours.white['80']}, ${boxShadowPosition.insetUnderline} ${colours.vega.pink}`,
- 'input-focus-dark': `${boxShadowPosition.insetShading} ${colours.black['80']}, ${boxShadowPosition.insetUnderline} ${colours.vega.yellow}`,
- 'input-focus-error': `${boxShadowPosition.insetShading} ${colours.white['80']}, ${boxShadowPosition.insetUnderline} ${colours.danger}`,
- 'input-focus-error-dark': `${boxShadowPosition.insetShading} ${colours.black['80']}, ${boxShadowPosition.insetUnderline} ${colours.danger}`,
+ 'input-focus': `${boxShadowPosition.insetUnderline} ${colours.vega.pink}, ${boxShadowPosition.insetShading} ${colours.white['80']}`,
+ 'input-focus-dark': `${boxShadowPosition.insetUnderline} ${colours.vega.yellow}, ${boxShadowPosition.insetShading} ${colours.black['80']}`,
+ 'input-focus-error': `${boxShadowPosition.insetUnderline} ${colours.danger}, ${boxShadowPosition.insetShading} ${colours.white['80']}`,
+ 'input-focus-error-dark': `${boxShadowPosition.insetUnderline} ${colours.danger}, ${boxShadowPosition.insetShading} ${colours.black['80']}`,
'checkbox-focus': `${boxShadowPosition.insetShading} ${colours.white['80']}, ${boxShadowPosition.outer} ${colours.vega.pink}`,
'checkbox-focus-dark': `${boxShadowPosition.insetShading} ${colours.black['80']}, ${boxShadowPosition.outer} ${colours.vega.yellow}`,
},
From aa6c7fd37665a90aeb85ec1cdeb1e0b8e8096cf0 Mon Sep 17 00:00:00 2001
From: Dexter Edwards
Date: Thu, 28 Jul 2022 12:04:53 +0100
Subject: [PATCH 19/61] Fix/environement checking (#892)
* fix: chain id check logic
* ci: froce build
---
libs/environment/src/utils/validate-node.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/environment/src/utils/validate-node.tsx b/libs/environment/src/utils/validate-node.tsx
index 95b1c110f..d931187bc 100644
--- a/libs/environment/src/utils/validate-node.tsx
+++ b/libs/environment/src/utils/validate-node.tsx
@@ -17,7 +17,7 @@ export const getIsNodeLoading = ({
};
export const getHasInvalidChain = (env: Networks, chain = '') => {
- return !(chain.split('-')[0] === env.toLowerCase() ?? false);
+ return !chain.split('-').includes(env.toLowerCase());
};
export const getIsInvalidUrl = (url: string) => {
From 3498b9d54b814f147dfe9b810aef8b369940e3a2 Mon Sep 17 00:00:00 2001
From: mattrussell36
Date: Thu, 28 Jul 2022 12:06:07 +0000
Subject: [PATCH 20/61] chore: update tranches
Signed-off-by: github-actions[bot]
---
apps/static/src/assets/mainnet-tranches.json | 117 +++++++++++++-----
apps/static/src/assets/stagnet1-tranches.json | 4 +-
apps/static/src/assets/testnet-tranches.json | 2 +-
3 files changed, 90 insertions(+), 33 deletions(-)
diff --git a/apps/static/src/assets/mainnet-tranches.json b/apps/static/src/assets/mainnet-tranches.json
index 19961b179..7794f2bd5 100644
--- a/apps/static/src/assets/mainnet-tranches.json
+++ b/apps/static/src/assets/mainnet-tranches.json
@@ -71,7 +71,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
- "locked_amount": "117366.38596672876562907",
+ "locked_amount": "117306.890197558673138415",
"deposits": [
{
"amount": "129999.45",
@@ -521,7 +521,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "97499.58",
"total_removed": "0",
- "locked_amount": "58347.693082879219153566",
+ "locked_amount": "58289.333275604951219016",
"deposits": [
{
"amount": "97499.58",
@@ -554,7 +554,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "135173.4239508",
"total_removed": "0",
- "locked_amount": "79751.22313532009629723295724",
+ "locked_amount": "79671.45535417659000498633432",
"deposits": [
{
"amount": "135173.4239508",
@@ -587,7 +587,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "32499.86",
"total_removed": "0",
- "locked_amount": "24545.866869203200097508",
+ "locked_amount": "24521.315906102882816046",
"deposits": [
{
"amount": "32499.86",
@@ -620,7 +620,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "10833.29",
"total_removed": "0",
- "locked_amount": "7989.44147847154120552",
+ "locked_amount": "7981.450378219294572622",
"deposits": [
{
"amount": "10833.29",
@@ -728,7 +728,7 @@
"tranche_end": "2022-11-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "0",
- "locked_amount": "11708.138020833333",
+ "locked_amount": "11677.46971240941975",
"deposits": [
{
"amount": "15000",
@@ -814,7 +814,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "179856.049568108351",
- "locked_amount": "1640948.48320087402324334",
+ "locked_amount": "1639615.520616328731621184",
"deposits": [
{
"amount": "1852091.69",
@@ -1889,7 +1889,7 @@
"tranche_end": "2022-09-30T00:00:00.000Z",
"total_added": "60916.66666633337",
"total_removed": "19238.601152747179372649",
- "locked_amount": "9956.993317648905953371517901581",
+ "locked_amount": "9917.8194320247151592461024147252",
"deposits": [
{
"amount": "2833.333333",
@@ -3373,7 +3373,7 @@
"tranche_id": 10,
"tranche_start": "2021-07-15T23:37:11.000Z",
"tranche_end": "2021-07-15T23:37:11.000Z",
- "total_added": "4620969.150000000000000001",
+ "total_added": "4630969.150000000000000001",
"total_removed": "4618402.640000000000000001",
"locked_amount": "0",
"deposits": [
@@ -3387,6 +3387,11 @@
"user": "0xb2d6DEC77558Cf8EdB7c428d23E70Eab0688544f",
"tx": "0x0cd7dab19227ea994201ea2c7e5456e83568c5985b86376bf7e1223df351491f"
},
+ {
+ "amount": "10000",
+ "user": "0xb2d6DEC77558Cf8EdB7c428d23E70Eab0688544f",
+ "tx": "0x2b30ce4ea28386740738bf02913088eca12adc5138fd81f3390e7589136b7d11"
+ },
{
"amount": "114000",
"user": "0xb2d6DEC77558Cf8EdB7c428d23E70Eab0688544f",
@@ -4265,6 +4270,12 @@
"tranche_id": 10,
"tx": "0x0cd7dab19227ea994201ea2c7e5456e83568c5985b86376bf7e1223df351491f"
},
+ {
+ "amount": "10000",
+ "user": "0xb2d6DEC77558Cf8EdB7c428d23E70Eab0688544f",
+ "tranche_id": 10,
+ "tx": "0x2b30ce4ea28386740738bf02913088eca12adc5138fd81f3390e7589136b7d11"
+ },
{
"amount": "114000",
"user": "0xb2d6DEC77558Cf8EdB7c428d23E70Eab0688544f",
@@ -4484,9 +4495,9 @@
"tx": "0xac16a4ce688d40a482a59914d68c3a676592f8804ee8f0781b66a4ba5ccfbdfc"
}
],
- "total_tokens": "1461651",
+ "total_tokens": "1471651",
"withdrawn_tokens": "1461651",
- "remaining_tokens": "0"
+ "remaining_tokens": "10000"
},
{
"address": "0x3e3B3C3027cbBDa4D5F2bE6c8eBc8D856FBaD044",
@@ -5513,8 +5524,8 @@
"tranche_start": "2021-09-03T00:00:00.000Z",
"tranche_end": "2022-09-03T00:00:00.000Z",
"total_added": "25010.000000000000000003",
- "total_removed": "8288.51201225622",
- "locked_amount": "2517.89380454084163130030202644596651439",
+ "total_removed": "8291.95420530622",
+ "locked_amount": "2500.70894628361116910029996508751902573",
"deposits": [
{
"amount": "2",
@@ -9288,6 +9299,11 @@
"user": "0x57AF825ff979Bd64B841ab525A5C743912abBC59",
"tx": "0x623596de3b43952854ab08fcbac3044c500bbe8dcd54f4ffb8f1b2c898fbe71d"
},
+ {
+ "amount": "3.44219305",
+ "user": "0xc5467213593778E528f0eB8117cc7AFBC5b7491b",
+ "tx": "0xf1be3a0908eb819cafd136a09720acbde12b65cdd5d2034ba0da7eb13908ab66"
+ },
{
"amount": "842.29689345648",
"user": "0xab6dE081Af6C78433AFDaC5B756804bcE17e9eC1",
@@ -16336,6 +16352,12 @@
}
],
"withdrawals": [
+ {
+ "amount": "3.44219305",
+ "user": "0xc5467213593778E528f0eB8117cc7AFBC5b7491b",
+ "tranche_id": 11,
+ "tx": "0xf1be3a0908eb819cafd136a09720acbde12b65cdd5d2034ba0da7eb13908ab66"
+ },
{
"amount": "5.695719178",
"user": "0xc5467213593778E528f0eB8117cc7AFBC5b7491b",
@@ -16416,8 +16438,8 @@
}
],
"total_tokens": "200",
- "withdrawn_tokens": "176.472355402",
- "remaining_tokens": "23.527644598"
+ "withdrawn_tokens": "179.914548452",
+ "remaining_tokens": "20.085451548"
},
{
"address": "0x1775cc97E5c05Fde8b571ef75CA52d0A9ff19025",
@@ -16442,7 +16464,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "148381.2401909658774",
- "locked_amount": "2546067.82582737477574652789",
+ "locked_amount": "2544019.52642320912074939111",
"deposits": [
{
"amount": "1998.95815",
@@ -17199,7 +17221,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15788853.065470999700000001",
"total_removed": "69123.834585739765555",
- "locked_amount": "14254526.6372591421871909619506743932224926",
+ "locked_amount": "14247300.6839382337539872671390491015233847",
"deposits": [
{
"amount": "16249.93",
@@ -19664,7 +19686,7 @@
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "2422756.585128064230582297",
- "locked_amount": "7505962.68033932300713132694901444",
+ "locked_amount": "7499257.39755286423985995971871326",
"deposits": [
{
"amount": "129284.449",
@@ -24263,7 +24285,7 @@
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "1580907.252363731354286516",
- "locked_amount": "2648747.847146224892759454991066808",
+ "locked_amount": "2646098.54936408314698794426183364",
"deposits": [
{
"amount": "552496.6455",
@@ -25506,8 +25528,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
- "total_removed": "622.9814487941",
- "locked_amount": "403439.00094651283614095819076612",
+ "total_removed": "739.13362915466",
+ "locked_amount": "403114.4361973442647171619837646",
"deposits": [
{
"amount": "3000",
@@ -32141,6 +32163,16 @@
"user": "0xdc040917f80aC350460e55467e4B6c52Fc5e220E",
"tx": "0x1177079901d6f5b6a6b2e8597f7c7b774e5fefa0f820ffe47a0fcf1dd274172e"
},
+ {
+ "amount": "57.78402967656",
+ "user": "0xE0961E5C38D733bE59369BB62D6b3c3B5FADf3d2",
+ "tx": "0x247b8b961532a75d6863a4c613e57a85122c0e2bfa988e24ef00bb44b270d329"
+ },
+ {
+ "amount": "58.368150684",
+ "user": "0xD1549131c3f33B69f31f3Fc6D581d49d6c8dc6f0",
+ "tx": "0x4d37aa485a412a9dd32f724de7e6c65ba69a95be216593918ef63419b3e4f6c7"
+ },
{
"amount": "18.521226534",
"user": "0xfeF4b56A370135A17Eef5ba8f5c308451a64Cf86",
@@ -45913,10 +45945,17 @@
"tx": "0xb1425d9b0d5f10c5b06236d6f9d61ebddd21c4027e0f41deb5ec227a1753c715"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "57.78402967656",
+ "user": "0xE0961E5C38D733bE59369BB62D6b3c3B5FADf3d2",
+ "tranche_id": 5,
+ "tx": "0x247b8b961532a75d6863a4c613e57a85122c0e2bfa988e24ef00bb44b270d329"
+ }
+ ],
"total_tokens": "396",
- "withdrawn_tokens": "0",
- "remaining_tokens": "396"
+ "withdrawn_tokens": "57.78402967656",
+ "remaining_tokens": "338.21597032344"
},
{
"address": "0xbd6aeC2cd1Cc9fE80b4154E1cCD29bBe15854E8d",
@@ -49822,10 +49861,17 @@
"tx": "0xb59405747c8088945a412703637a7b422f3639439ec2ee15e180c0a2a0d71ee4"
}
],
- "withdrawals": [],
+ "withdrawals": [
+ {
+ "amount": "58.368150684",
+ "user": "0xD1549131c3f33B69f31f3Fc6D581d49d6c8dc6f0",
+ "tranche_id": 5,
+ "tx": "0x4d37aa485a412a9dd32f724de7e6c65ba69a95be216593918ef63419b3e4f6c7"
+ }
+ ],
"total_tokens": "400",
- "withdrawn_tokens": "0",
- "remaining_tokens": "400"
+ "withdrawn_tokens": "58.368150684",
+ "remaining_tokens": "341.631849316"
},
{
"address": "0xaCc993013812e5524102474Ba78f3a278c6d2eFc",
@@ -51399,7 +51445,7 @@
"tranche_start": "2021-12-05T00:00:00.000Z",
"tranche_end": "2022-06-05T00:00:00.000Z",
"total_added": "171288.42",
- "total_removed": "41266.0912801057989",
+ "total_removed": "41374.2240385532989",
"locked_amount": "0",
"deposits": [
{
@@ -55654,6 +55700,11 @@
"user": "0xb21715Fe20319202d7AcC12320A8121760EF83dD",
"tx": "0x409e2ea40dba97134578e1b0fd560c7652aac5939bb830f0fad1180cb3321ae1"
},
+ {
+ "amount": "108.1327584475",
+ "user": "0x207EeAb5F72e3F9e831428eF54dCaDc8B8727c85",
+ "tx": "0x73eb6423003425d47a97876737e6c1fe31f492c7cd196b472f5565c8f2f2ce22"
+ },
{
"amount": "250",
"user": "0x1f7C20Bd98B2f346A58d2c5faaFc940E0C36450E",
@@ -67100,6 +67151,12 @@
}
],
"withdrawals": [
+ {
+ "amount": "108.1327584475",
+ "user": "0x207EeAb5F72e3F9e831428eF54dCaDc8B8727c85",
+ "tranche_id": 6,
+ "tx": "0x73eb6423003425d47a97876737e6c1fe31f492c7cd196b472f5565c8f2f2ce22"
+ },
{
"amount": "98.96596459",
"user": "0x207EeAb5F72e3F9e831428eF54dCaDc8B8727c85",
@@ -67114,8 +67171,8 @@
}
],
"total_tokens": "250",
- "withdrawn_tokens": "141.8672415525",
- "remaining_tokens": "108.1327584475"
+ "withdrawn_tokens": "250",
+ "remaining_tokens": "0"
},
{
"address": "0xc9f98A16690fa9D19c5A475Cd818d030fb035b27",
diff --git a/apps/static/src/assets/stagnet1-tranches.json b/apps/static/src/assets/stagnet1-tranches.json
index a4da69027..56cb2d058 100644
--- a/apps/static/src/assets/stagnet1-tranches.json
+++ b/apps/static/src/assets/stagnet1-tranches.json
@@ -38,7 +38,7 @@
"tranche_end": "2022-11-26T13:48:10.000Z",
"total_added": "100",
"total_removed": "0",
- "locked_amount": "33.238828640284124",
+ "locked_amount": "33.170119863013703",
"deposits": [
{
"amount": "100",
@@ -242,7 +242,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1100",
"total_removed": "673.04388635",
- "locked_amount": "228.389069634703186",
+ "locked_amount": "227.633273084728555",
"deposits": [
{
"amount": "1000",
diff --git a/apps/static/src/assets/testnet-tranches.json b/apps/static/src/assets/testnet-tranches.json
index b3e471263..ecc4c6093 100644
--- a/apps/static/src/assets/testnet-tranches.json
+++ b/apps/static/src/assets/testnet-tranches.json
@@ -69,7 +69,7 @@
"tranche_end": "2022-10-12T00:53:20.000Z",
"total_added": "1010.000000000000000001",
"total_removed": "668.4622323651",
- "locked_amount": "209.70272323693559280020762645865043128",
+ "locked_amount": "209.00876458650434070020693937087772707",
"deposits": [
{
"amount": "1000",
From 11be7aaa8a70846f65d25d36ca1e3c907193de57 Mon Sep 17 00:00:00 2001
From: Matthew Russell
Date: Thu, 28 Jul 2022 13:23:59 +0100
Subject: [PATCH 21/61] refacotr: deposit manager (#867)
* refactor: deposit manager with a zustand store and refetching balances after contracts complete
* refactor: remove assetId query string functionality
* chore: remove unused import
* chore: add a comment with a link to code explanation
* refactor: capture errors from deposit value get functions
* refactor: add error handling for async perform funcs
* feat: add assets to react helpers for types and erc20 check
---
.../token/src/components/vega-wallet/hooks.ts | 10 +-
.../portfolio/deposit/deposit-container.tsx | 7 +-
.../pages/portfolio/deposit/index.page.tsx | 19 +--
libs/deposits/src/lib/deposit-form.spec.tsx | 27 ++---
libs/deposits/src/lib/deposit-form.tsx | 76 ++++++------
libs/deposits/src/lib/deposit-limits.tsx | 24 ++--
libs/deposits/src/lib/deposit-manager.tsx | 111 ++++--------------
libs/deposits/src/lib/deposit-store.ts | 24 ++++
libs/deposits/src/lib/use-deposit-balances.ts | 59 ++++++++++
libs/deposits/src/lib/use-get-allowance.ts | 37 +++---
.../src/lib/use-get-balance-of-erc20-token.ts | 29 +++--
.../src/lib/use-get-deposit-limits.ts | 69 -----------
.../src/lib/use-get-deposit-maximum.ts | 32 +++++
.../src/lib/use-get-deposited-amount.ts | 50 ++++++++
libs/deposits/src/lib/use-submit-approval.ts | 37 +++++-
libs/deposits/src/lib/use-submit-deposit.tsx | 41 +++++--
libs/deposits/src/lib/use-submit-faucet.ts | 29 ++++-
libs/react-helpers/src/index.ts | 1 +
libs/react-helpers/src/lib/assets.ts | 30 +++++
.../src/lib/use-ethereum-read-contract.ts | 2 +
.../web3/src/lib/use-ethereum-transaction.tsx | 1 +
libs/web3/src/lib/use-token-contract.ts | 15 ++-
libs/withdraws/src/lib/test-helpers.ts | 4 +-
libs/withdraws/src/lib/types.ts | 19 ---
.../src/lib/use-get-withdraw-limits.tsx | 2 +-
libs/withdraws/src/lib/withdraw-form.spec.tsx | 2 +-
libs/withdraws/src/lib/withdraw-form.tsx | 15 ++-
libs/withdraws/src/lib/withdraw-manager.tsx | 3 +-
28 files changed, 444 insertions(+), 331 deletions(-)
create mode 100644 libs/deposits/src/lib/deposit-store.ts
create mode 100644 libs/deposits/src/lib/use-deposit-balances.ts
delete mode 100644 libs/deposits/src/lib/use-get-deposit-limits.ts
create mode 100644 libs/deposits/src/lib/use-get-deposit-maximum.ts
create mode 100644 libs/deposits/src/lib/use-get-deposited-amount.ts
create mode 100644 libs/react-helpers/src/lib/assets.ts
diff --git a/apps/token/src/components/vega-wallet/hooks.ts b/apps/token/src/components/vega-wallet/hooks.ts
index da7df7337..54a3b3a59 100644
--- a/apps/token/src/components/vega-wallet/hooks.ts
+++ b/apps/token/src/components/vega-wallet/hooks.ts
@@ -18,6 +18,7 @@ import type {
} from './__generated__/Delegations';
import { useVegaWallet } from '@vegaprotocol/wallet';
import { useContracts } from '../../contexts/contracts/contracts-context';
+import { isAssetTypeERC20 } from '@vegaprotocol/react-helpers';
const DELEGATIONS_QUERY = gql`
query Delegations($partyId: ID!) {
@@ -117,7 +118,7 @@ export const usePollForDelegations = () => {
.filter((a) => a.type === AccountType.General)
.map((a) => {
const isVega =
- a.asset.source.__typename === 'ERC20' &&
+ isAssetTypeERC20(a.asset) &&
a.asset.source.contractAddress === vegaToken.address;
return {
@@ -131,10 +132,9 @@ export const usePollForDelegations = () => {
),
image: isVega ? vegaBlack : noIcon,
border: isVega,
- address:
- a.asset.source.__typename === 'ERC20'
- ? a.asset.source.contractAddress
- : undefined,
+ address: isAssetTypeERC20(a.asset)
+ ? a.asset.source.contractAddress
+ : undefined,
};
})
.sort((a, b) => {
diff --git a/apps/trading/pages/portfolio/deposit/deposit-container.tsx b/apps/trading/pages/portfolio/deposit/deposit-container.tsx
index 98f34c2e9..8cd07878e 100644
--- a/apps/trading/pages/portfolio/deposit/deposit-container.tsx
+++ b/apps/trading/pages/portfolio/deposit/deposit-container.tsx
@@ -16,14 +16,10 @@ const DEPOSIT_PAGE_QUERY = gql`
}
`;
-interface DepositContainerProps {
- assetId?: string;
-}
-
/**
* Fetches data required for the Deposit page
*/
-export const DepositContainer = ({ assetId }: DepositContainerProps) => {
+export const DepositContainer = () => {
const { VEGA_ENV } = useEnvironment();
return (
@@ -41,7 +37,6 @@ export const DepositContainer = ({ assetId }: DepositContainerProps) => {
return (
);
diff --git a/apps/trading/pages/portfolio/deposit/index.page.tsx b/apps/trading/pages/portfolio/deposit/index.page.tsx
index d9d7b2ea7..a7c6feb87 100644
--- a/apps/trading/pages/portfolio/deposit/index.page.tsx
+++ b/apps/trading/pages/portfolio/deposit/index.page.tsx
@@ -1,29 +1,12 @@
-import { useRouter } from 'next/router';
-import { useMemo } from 'react';
import { Web3Container } from '../../../components/web3-container';
import { DepositContainer } from './deposit-container';
const Deposit = () => {
- const { query } = useRouter();
-
- // AssetId can be specified in the query string to allow link to deposit a particular asset
- const assetId = useMemo(() => {
- if (query.assetId && Array.isArray(query.assetId)) {
- return undefined;
- }
-
- if (Array.isArray(query.assetId)) {
- return undefined;
- }
-
- return query.assetId;
- }, [query]);
-
return (
Deposit
-
+
);
diff --git a/libs/deposits/src/lib/deposit-form.spec.tsx b/libs/deposits/src/lib/deposit-form.spec.tsx
index 0fae80b5b..4adeda9b4 100644
--- a/libs/deposits/src/lib/deposit-form.spec.tsx
+++ b/libs/deposits/src/lib/deposit-form.spec.tsx
@@ -37,10 +37,8 @@ beforeEach(() => {
submitApprove: jest.fn(),
submitDeposit: jest.fn(),
requestFaucet: jest.fn(),
- limits: {
- max: new BigNumber(20),
- deposited: new BigNumber(10),
- },
+ max: new BigNumber(20),
+ deposited: new BigNumber(10),
allowance: new BigNumber(30),
isFaucetable: true,
};
@@ -134,7 +132,8 @@ describe('Deposit form', () => {
);
@@ -213,18 +212,16 @@ describe('Deposit form', () => {
const mockUseWeb3React = useWeb3React as jest.Mock;
mockUseWeb3React.mockReturnValue({ account });
- const limits = {
- max: new BigNumber(20),
- deposited: new BigNumber(10),
- };
const balance = new BigNumber(50);
-
+ const max = new BigNumber(20);
+ const deposited = new BigNumber(10);
render(
);
@@ -237,13 +234,13 @@ describe('Deposit form', () => {
expect(
screen.getByText('Maximum total deposit amount', { selector: 'th' })
.nextElementSibling
- ).toHaveTextContent(limits.max.toString());
+ ).toHaveTextContent(max.toString());
expect(
screen.getByText('Deposited', { selector: 'th' }).nextElementSibling
- ).toHaveTextContent(limits.deposited.toString());
+ ).toHaveTextContent(deposited.toString());
expect(
screen.getByText('Remaining', { selector: 'th' }).nextElementSibling
- ).toHaveTextContent(limits.max.minus(limits.deposited).toString());
+ ).toHaveTextContent(max.minus(deposited).toString());
fireEvent.change(screen.getByLabelText('Amount'), {
target: { value: '8' },
@@ -257,7 +254,7 @@ describe('Deposit form', () => {
expect(props.submitDeposit).toHaveBeenCalledWith({
// @ts-ignore contract address definitely defined
assetSource: asset.source.contractAddress,
- amount: '800',
+ amount: '8',
vegaPublicKey: vegaKey,
});
});
diff --git a/libs/deposits/src/lib/deposit-form.tsx b/libs/deposits/src/lib/deposit-form.tsx
index fb2fbf9b9..acff042da 100644
--- a/libs/deposits/src/lib/deposit-form.tsx
+++ b/libs/deposits/src/lib/deposit-form.tsx
@@ -1,5 +1,5 @@
+import type { Asset } from '@vegaprotocol/react-helpers';
import {
- removeDecimal,
ethereumAddress,
t,
required,
@@ -7,6 +7,7 @@ import {
minSafe,
maxSafe,
addDecimal,
+ isAssetTypeERC20,
} from '@vegaprotocol/react-helpers';
import {
Button,
@@ -21,10 +22,9 @@ import { useWeb3React } from '@web3-react/core';
import { Web3WalletInput } from '@vegaprotocol/web3';
import BigNumber from 'bignumber.js';
import type { ReactNode } from 'react';
-import { useMemo, useEffect } from 'react';
-import { useForm, useWatch } from 'react-hook-form';
+import { useMemo } from 'react';
+import { Controller, useForm, useWatch } from 'react-hook-form';
import { DepositLimits } from './deposit-limits';
-import type { Asset } from './deposit-manager';
interface FormFields {
asset: string;
@@ -45,10 +45,8 @@ export interface DepositFormProps {
vegaPublicKey: string;
}) => void;
requestFaucet: () => void;
- limits: {
- max: BigNumber;
- deposited: BigNumber;
- } | null;
+ max: BigNumber | undefined;
+ deposited: BigNumber | undefined;
allowance: BigNumber | undefined;
isFaucetable?: boolean;
}
@@ -58,10 +56,11 @@ export const DepositForm = ({
selectedAsset,
onSelectAsset,
balance,
+ max,
+ deposited,
submitApprove,
submitDeposit,
requestFaucet,
- limits,
allowance,
isFaucetable,
}: DepositFormProps) => {
@@ -89,15 +88,14 @@ export const DepositForm = ({
submitDeposit({
assetSource: selectedAsset.source.contractAddress,
- amount: removeDecimal(fields.amount, selectedAsset.decimals),
+ amount: fields.amount,
vegaPublicKey: fields.to,
});
};
- const assetId = useWatch({ name: 'asset', control });
const amount = useWatch({ name: 'amount', control });
- const max = useMemo(() => {
+ const maxAmount = useMemo(() => {
const maxApproved = allowance ? allowance : new BigNumber(0);
const maxAvailable = balance ? balance : new BigNumber(0);
@@ -106,8 +104,8 @@ export const DepositForm = ({
let maxLimit = new BigNumber(Infinity);
// A max limit of zero indicates that there is no limit
- if (limits && limits.max.isGreaterThan(0)) {
- maxLimit = limits.max.minus(limits.deposited);
+ if (max && deposited && max.isGreaterThan(0)) {
+ maxLimit = max.minus(deposited);
}
return {
@@ -116,7 +114,7 @@ export const DepositForm = ({
limit: maxLimit,
amount: BigNumber.minimum(maxLimit, maxApproved, maxAvailable),
};
- }, [limits, allowance, balance]);
+ }, [max, deposited, allowance, balance]);
const min = useMemo(() => {
// Min viable amount given asset decimals EG for WEI 0.000000000000000001
@@ -127,10 +125,6 @@ export const DepositForm = ({
return minViableAmount;
}, [selectedAsset]);
- useEffect(() => {
- onSelectAsset(assetId);
- }, [assetId, onSelectAsset]);
-
return (