Compare commits

..
Author SHA1 Message Date
Dexter 0a92f62a66 ci: publish esm and cjs 2023-04-25 10:11:55 +01:00
daro-maj f589f4a9fa test(trading): tests for ac - 7005-FILL-fills (#3529) 2023-04-25 09:19:37 +01:00
dexturr b9869da492 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-25 06:07:52 +00:00
dexturr 653fec7025 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-25 00:15:25 +00:00
dexturr 8bf948578c chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-24 18:09:08 +00:00
Dexter 11b08d16e4 ci: bump version 2023-04-24 15:56:05 +01:00
daro-maj 5081b11c93 test(trading): separated artifacts for logs and html report (#3519) 2023-04-24 15:28:42 +02:00
Dexter Edwards a1366e59ec fix(ui-toolkit): box size being wrong for multiline check boxes (#3527) 2023-04-24 12:10:52 +00:00
dexturr 0b035d5064 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-24 12:07:43 +00:00
dexturr e1a38f2197 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-24 06:07:22 +00:00
dexturr 8201e87050 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-24 00:16:56 +00:00
dexturr 3aaf4e724d chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-23 18:07:11 +00:00
dexturr 6fe06e9f62 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-23 12:07:53 +00:00
dexturr cd8b0e7caf chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-23 06:06:56 +00:00
dexturr 4282faa9d9 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-23 00:16:16 +00:00
dexturr a24846fd06 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-22 18:07:13 +00:00
dexturr 72de53cf10 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-22 12:09:27 +00:00
dexturr f3c0313a59 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-22 06:07:33 +00:00
dexturr 4c0de8f22b chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-22 00:16:38 +00:00
dexturr 254fb57af0 chore: update tranches
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-21 18:09:06 +00:00
Bartłomiej Głownia 6371199537 feat(trading): add negative oracle status banner (#3486) 2023-04-21 18:31:52 +02:00
Dexter Edwards 75cb48a4b9 chore(react-helpers): make log level customisable (#3474) 2023-04-21 16:29:30 +01:00
ArtandJoe 933878acf5 chore(ui-toolkit): leftover dependencies (#3485)
Co-authored-by: Joe <joe@vega.xyz>
2023-04-21 16:16:04 +01:00
Dexter Edwards 5995df8e68 chore(ui-toolkit,react-helpers,utils,tailwindcss-config): add more build targets (#3518) 2023-04-21 14:28:18 +00:00
Bartłomiej Głownia 4d5b7cf5e7 fix(trading): amend market list settlement asset column getter (#3487) 2023-04-21 16:08:41 +02:00
40 changed files with 740 additions and 143 deletions
+8 -4
View File
@@ -91,7 +91,11 @@ jobs:
- uses: actions/upload-artifact@v3
if: ${{ failure() }}
with:
name: test-report-and-logs-${{ matrix.project }}
path: |
/home/runner/.vegacapsule/testnet/logs
frontend-monorepo/apps/trading-e2e/cypress/reports
name: logs-${{ matrix.project }}
path: /home/runner/.vegacapsule/testnet/logs
- uses: actions/upload-artifact@v3
if: ${{ failure() }}
with:
name: test-report-${{ matrix.project }}
path: frontend-monorepo/apps/trading-e2e/cypress/reports
@@ -334,11 +334,8 @@ context(
.parent()
.siblings()
.invoke('text')
.should('have.length.above', 3)
.then((el) => {
const value = parseFloat(el);
cy.wrap(value).should('be.gte', parseFloat(expectedAmount));
});
.then(parseFloat)
.should('be.gte', parseFloat(expectedAmount));
cy.get(vegaWalletCurrencyTitle)
.contains(id)
@@ -12,6 +12,7 @@ context(
{ tags: '@smoke' },
function () {
before('navigate to withdrawals page', function () {
cy.clearAllLocalStorage();
cy.visit('/');
navigateTo(navigation.withdraw);
});
+301 -52
View File
@@ -36,10 +36,25 @@
"tranche_id": 56,
"tranche_start": "2023-04-20T00:00:00.000Z",
"tranche_end": "2023-05-20T00:00:00.000Z",
"total_added": "15761.125",
"total_removed": "0",
"locked_amount": "14969.1223880690592062625",
"total_added": "17206.625",
"total_removed": "202.093666077975",
"locked_amount": "14192.3522349054765257",
"deposits": [
{
"amount": "188",
"user": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"tx": "0xefa5cb034a994bd2cf2b100b1ecca1877038e7b1188fab4ebf2065cb165027e4"
},
{
"amount": "50",
"user": "0xAc1c2783d64c29CDB79608f5B66a37Fd1ea35dD6",
"tx": "0xc1ede6de1653f205e0a743f609835648a67287a271a994cd141911ce13d5cac7"
},
{
"amount": "1207.5",
"user": "0x1447Efc62d5077d7AbB20492dF831Dd6c9Eb1756",
"tx": "0x9092eaf46d5cdba3b2219aa7187da4e1623004434c33a915956aa45d04d561f2"
},
{
"amount": "241.5",
"user": "0xBf1AaB792D729fA125e6D7122D4b916a1E1C44B1",
@@ -181,8 +196,66 @@
"tx": "0x679fcc1c3a29bdc259b6a4c044579a89c5357f42ed1963221669ebf43cc545b0"
}
],
"withdrawals": [],
"withdrawals": [
{
"amount": "202.093666077975",
"user": "0x1447Efc62d5077d7AbB20492dF831Dd6c9Eb1756",
"tx": "0x300c18b4220d3bc357f054792cb65f05d4005912bf8e5d9580b5b830cc3c0845"
}
],
"users": [
{
"address": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"deposits": [
{
"amount": "188",
"user": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"tranche_id": 56,
"tx": "0xefa5cb034a994bd2cf2b100b1ecca1877038e7b1188fab4ebf2065cb165027e4"
}
],
"withdrawals": [],
"total_tokens": "188",
"withdrawn_tokens": "0",
"remaining_tokens": "188"
},
{
"address": "0xAc1c2783d64c29CDB79608f5B66a37Fd1ea35dD6",
"deposits": [
{
"amount": "50",
"user": "0xAc1c2783d64c29CDB79608f5B66a37Fd1ea35dD6",
"tranche_id": 56,
"tx": "0xc1ede6de1653f205e0a743f609835648a67287a271a994cd141911ce13d5cac7"
}
],
"withdrawals": [],
"total_tokens": "50",
"withdrawn_tokens": "0",
"remaining_tokens": "50"
},
{
"address": "0x1447Efc62d5077d7AbB20492dF831Dd6c9Eb1756",
"deposits": [
{
"amount": "1207.5",
"user": "0x1447Efc62d5077d7AbB20492dF831Dd6c9Eb1756",
"tranche_id": 56,
"tx": "0x9092eaf46d5cdba3b2219aa7187da4e1623004434c33a915956aa45d04d561f2"
}
],
"withdrawals": [
{
"amount": "202.093666077975",
"user": "0x1447Efc62d5077d7AbB20492dF831Dd6c9Eb1756",
"tranche_id": 56,
"tx": "0x300c18b4220d3bc357f054792cb65f05d4005912bf8e5d9580b5b830cc3c0845"
}
],
"total_tokens": "1207.5",
"withdrawn_tokens": "202.093666077975",
"remaining_tokens": "1005.406333922025"
},
{
"address": "0xBf1AaB792D729fA125e6D7122D4b916a1E1C44B1",
"deposits": [
@@ -664,10 +737,15 @@
"tranche_id": 54,
"tranche_start": "2023-04-06T00:00:00.000Z",
"tranche_end": "2023-05-06T00:00:00.000Z",
"total_added": "8865",
"total_removed": "490.11243517665",
"locked_amount": "4282.530329861111133",
"total_added": "8976",
"total_removed": "596.64743517951",
"locked_amount": "3214.7758703703708912",
"deposits": [
{
"amount": "111",
"user": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"tx": "0x1229e077f48b796678436bfa8143cea3ae71df58b589ac922be205c4482be235"
},
{
"amount": "33",
"user": "0xBf1AaB792D729fA125e6D7122D4b916a1E1C44B1",
@@ -805,6 +883,11 @@
}
],
"withdrawals": [
{
"amount": "106.53500000286",
"user": "0x6F32AA5A6198329c16e438512F992a0548C856f9",
"tx": "0x4027743264e01043ddb16676c6f7914c110df9e7212bd3f21cb6842614ce238f"
},
{
"amount": "5.46866782407",
"user": "0x92A1e98C6f09970e45645Cbe57c6DcaF4547c8FE",
@@ -837,6 +920,21 @@
}
],
"users": [
{
"address": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"deposits": [
{
"amount": "111",
"user": "0x90Cf7B9958C3BbBCddAb52Ecc408535D4f3C4241",
"tranche_id": 54,
"tx": "0x1229e077f48b796678436bfa8143cea3ae71df58b589ac922be205c4482be235"
}
],
"withdrawals": [],
"total_tokens": "111",
"withdrawn_tokens": "0",
"remaining_tokens": "111"
},
{
"address": "0xBf1AaB792D729fA125e6D7122D4b916a1E1C44B1",
"deposits": [
@@ -1043,6 +1141,12 @@
}
],
"withdrawals": [
{
"amount": "106.53500000286",
"user": "0x6F32AA5A6198329c16e438512F992a0548C856f9",
"tranche_id": 54,
"tx": "0x4027743264e01043ddb16676c6f7914c110df9e7212bd3f21cb6842614ce238f"
},
{
"amount": "155.03186111556",
"user": "0x6F32AA5A6198329c16e438512F992a0548C856f9",
@@ -1069,8 +1173,8 @@
}
],
"total_tokens": "858",
"withdrawn_tokens": "424.47530786232",
"remaining_tokens": "433.52469213768"
"withdrawn_tokens": "531.01030786518",
"remaining_tokens": "326.98969213482"
},
{
"address": "0x0bBf7580e036eA5D69ABe679CC90117EeC2e3dc1",
@@ -4418,7 +4522,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "86666.297",
"total_removed": "0",
"locked_amount": "54016.2508690146860439521",
"locked_amount": "53126.3383787007632981199",
"deposits": [
{
"amount": "86666.297",
@@ -4484,7 +4588,7 @@
"tranche_end": "2023-06-01T00:00:00.000Z",
"total_added": "2500",
"total_removed": "0",
"locked_amount": "556.215500356125325",
"locked_amount": "504.733128561253575",
"deposits": [
{
"amount": "2500",
@@ -4605,7 +4709,7 @@
"tranche_end": "2023-09-01T00:00:00.000Z",
"total_added": "17500",
"total_removed": "0",
"locked_amount": "12601.1877579005635",
"locked_amount": "12244.72829232085475",
"deposits": [
{
"amount": "12500",
@@ -4871,8 +4975,8 @@
"tranche_start": "2023-02-01T00:00:00.000Z",
"tranche_end": "2023-08-01T00:00:00.000Z",
"total_added": "37500",
"total_removed": "12294.731717775",
"locked_amount": "21027.44925951504",
"total_removed": "12539.2989369",
"locked_amount": "20250.94718769183375",
"deposits": [
{
"amount": "7500",
@@ -4901,6 +5005,11 @@
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x2c8a0681fe27258861489cd7a891cf213c7ab930d86b1bf08cd54f2f3739a8b5"
},
{
"amount": "244.567219125",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x4bc7559edf36b6ecda7656f8066479395ea441daf0ad37ad4324814348e41643"
},
{
"amount": "158.943370125",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -5057,6 +5166,12 @@
"tranche_id": 34,
"tx": "0x2c8a0681fe27258861489cd7a891cf213c7ab930d86b1bf08cd54f2f3739a8b5"
},
{
"amount": "244.567219125",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tranche_id": 34,
"tx": "0x4bc7559edf36b6ecda7656f8066479395ea441daf0ad37ad4324814348e41643"
},
{
"amount": "158.943370125",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -5197,8 +5312,8 @@
}
],
"total_tokens": "7500",
"withdrawn_tokens": "3059.282439375",
"remaining_tokens": "4440.717560625"
"withdrawn_tokens": "3303.8496585",
"remaining_tokens": "4196.1503415"
},
{
"address": "0x0B4e6fcE839B01ef43DA6F890FAC7B1Afb004600",
@@ -5236,7 +5351,7 @@
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "129999.45",
"total_removed": "0",
"locked_amount": "53966.96783668199177511",
"locked_amount": "53077.8672795424049222625",
"deposits": [
{
"amount": "129999.45",
@@ -5269,7 +5384,7 @@
"tranche_end": "2024-04-01T00:00:00.000Z",
"total_added": "54144.7663",
"total_removed": "0",
"locked_amount": "51110.95640499238994528285",
"locked_amount": "50556.50265628052469670738",
"deposits": [
{
"amount": "54144.7663",
@@ -5302,7 +5417,7 @@
"tranche_end": "2023-09-03T00:00:00.000Z",
"total_added": "62600",
"total_removed": "0",
"locked_amount": "23066.3829464738684",
"locked_amount": "22423.58956747843764",
"deposits": [
{
"amount": "10000",
@@ -5495,7 +5610,7 @@
"tranche_end": "2023-09-17T00:00:00.000Z",
"total_added": "5000",
"total_removed": "0",
"locked_amount": "2034.14367706747865",
"locked_amount": "1982.802352866565",
"deposits": [
{
"amount": "5000",
@@ -6035,8 +6150,8 @@
"tranche_start": "2022-11-01T00:00:00.000Z",
"tranche_end": "2023-05-01T00:00:00.000Z",
"total_added": "22500",
"total_removed": "6871.43713545",
"locked_amount": "1180.005467311232775",
"total_removed": "7115.9985996",
"locked_amount": "714.104224217310375",
"deposits": [
{
"amount": "7500",
@@ -6065,6 +6180,11 @@
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x15840e283faffb39a5d0e3389137ec92cec3deee7df535a534908ccd7d6b0873"
},
{
"amount": "244.56146415",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x00275dfbd06b609e69b430eef7fe04c7bb64314904a0478a0e55b643f7f0bc09"
},
{
"amount": "158.9433702",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -6276,6 +6396,12 @@
"tranche_id": 33,
"tx": "0x15840e283faffb39a5d0e3389137ec92cec3deee7df535a534908ccd7d6b0873"
},
{
"amount": "244.56146415",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tranche_id": 33,
"tx": "0x00275dfbd06b609e69b430eef7fe04c7bb64314904a0478a0e55b643f7f0bc09"
},
{
"amount": "158.9433702",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -6494,8 +6620,8 @@
}
],
"total_tokens": "7500",
"withdrawn_tokens": "6871.43713545",
"remaining_tokens": "628.56286455"
"withdrawn_tokens": "7115.9985996",
"remaining_tokens": "384.0014004"
},
{
"address": "0x2539b51EbDE65a75672aBcfE9439a706a99D18D1",
@@ -6520,7 +6646,7 @@
"tranche_end": "2023-06-02T00:00:00.000Z",
"total_added": "1939928.38",
"total_removed": "928642.9598472029154",
"locked_amount": "220527.2763130828877571306",
"locked_amount": "200607.5779362562454442532",
"deposits": [
{
"amount": "1852091.69",
@@ -40336,7 +40462,7 @@
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "3732368.4671",
"total_removed": "715655.108029600523393",
"locked_amount": "363374.968979732192792259132",
"locked_amount": "332765.327876919897996287797",
"deposits": [
{
"amount": "1998.95815",
@@ -41728,8 +41854,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-12-05T00:00:00.000Z",
"total_added": "15870102.715470999700000001",
"total_removed": "848861.26613772708802852",
"locked_amount": "6588191.8947400391303406883760823381494998",
"total_removed": "860379.54790441442685852",
"locked_amount": "6479652.07271627106022165330027333915923225",
"deposits": [
{
"amount": "16249.93",
@@ -42233,6 +42359,16 @@
}
],
"withdrawals": [
{
"amount": "10150.87581603206683",
"user": "0xe3eB4CF43C072658401996b71D43eE26E573562D",
"tx": "0x2ee57ee8a712525955ad807f4d45eeaa5f6388bf0b4fceabc7de6871899f736e"
},
{
"amount": "913.910324501590625",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0x455d2e8214a5071fd4de1642939780068d4694cc2a774e7a3ab9283c4d52e847"
},
{
"amount": "981.387731774910625",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -42298,6 +42434,11 @@
"user": "0xF4c75FdbAe821C6B5DBB9f001bB23cBA58D1bA37",
"tx": "0x57c9c9396f67fb377f2d7cca30a1a6e6b73267408efde1239cbfdfd99c333345"
},
{
"amount": "453.495626153681375",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tx": "0xdad160466fa0b4805f3a12ff558d429bf48f81f9b99653dbce172d261861f1d0"
},
{
"amount": "998.454771147362375",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -44336,6 +44477,12 @@
}
],
"withdrawals": [
{
"amount": "913.910324501590625",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tranche_id": 2,
"tx": "0x455d2e8214a5071fd4de1642939780068d4694cc2a774e7a3ab9283c4d52e847"
},
{
"amount": "981.387731774910625",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -44402,6 +44549,12 @@
"tranche_id": 2,
"tx": "0xbf3e00aef8ae756fb2f5de5d3eec6f925e9005c7acca1a6c2f88a84ad1e44fba"
},
{
"amount": "453.495626153681375",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
"tranche_id": 2,
"tx": "0xdad160466fa0b4805f3a12ff558d429bf48f81f9b99653dbce172d261861f1d0"
},
{
"amount": "998.454771147362375",
"user": "0x20CD77B9FC2f1fEDfb6F184E25f7127BFE991C8b",
@@ -45838,8 +45991,8 @@
}
],
"total_tokens": "259998.8875",
"withdrawn_tokens": "151718.26766889616725",
"remaining_tokens": "108280.61983110383275"
"withdrawn_tokens": "153085.67361955143925",
"remaining_tokens": "106913.21388044856075"
},
{
"address": "0x89051CAb67Bc7F8CC44F7e270c6EDaf1EC57676c",
@@ -46066,6 +46219,12 @@
}
],
"withdrawals": [
{
"amount": "10150.87581603206683",
"user": "0xe3eB4CF43C072658401996b71D43eE26E573562D",
"tranche_id": 2,
"tx": "0x2ee57ee8a712525955ad807f4d45eeaa5f6388bf0b4fceabc7de6871899f736e"
},
{
"amount": "2873.74755113623213",
"user": "0xe3eB4CF43C072658401996b71D43eE26E573562D",
@@ -46338,8 +46497,8 @@
}
],
"total_tokens": "150551.801",
"withdrawn_tokens": "78415.36940998198906",
"remaining_tokens": "72136.43159001801094"
"withdrawn_tokens": "88566.24522601405589",
"remaining_tokens": "61985.55577398594411"
},
{
"address": "0x4d982Ab0823fD2f48e934a7be2bb0a5374a26148",
@@ -48196,8 +48355,8 @@
"tranche_start": "2021-11-05T00:00:00.000Z",
"tranche_end": "2023-05-05T00:00:00.000Z",
"total_added": "14597706.0446472999",
"total_removed": "5846105.097444116645943876",
"locked_amount": "360731.4649312677941994769310657454",
"total_removed": "5847991.884210280507681376",
"locked_amount": "260528.1942722316783230342092766613",
"deposits": [
{
"amount": "129284.449",
@@ -48406,6 +48565,11 @@
}
],
"withdrawals": [
{
"amount": "1257.7360413991436375",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tx": "0x42fa522871101c2d402faba52603df54599654f29ef5fe1211a9ea058b7eaad9"
},
{
"amount": "1360.32447632896938825",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
@@ -48486,6 +48650,11 @@
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tx": "0x6b1bd1880e5539566cb7110e80ef3e877e3c46a2fcd88798e82211a962dd2b7b"
},
{
"amount": "629.0507247647181",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tx": "0x537a8c34bee648cc1e658c0e55d30202694887899bfcbe529f9cf8284a4e90eb"
},
{
"amount": "37462.74710421168752574",
"user": "0x66827bCD635f2bB1779d68c46aEB16541bCA6ba8",
@@ -51701,6 +51870,12 @@
}
],
"withdrawals": [
{
"amount": "1257.7360413991436375",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tranche_id": 3,
"tx": "0x42fa522871101c2d402faba52603df54599654f29ef5fe1211a9ea058b7eaad9"
},
{
"amount": "1360.32447632896938825",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
@@ -51779,6 +51954,12 @@
"tranche_id": 3,
"tx": "0x6b1bd1880e5539566cb7110e80ef3e877e3c46a2fcd88798e82211a962dd2b7b"
},
{
"amount": "629.0507247647181",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
"tranche_id": 3,
"tx": "0x537a8c34bee648cc1e658c0e55d30202694887899bfcbe529f9cf8284a4e90eb"
},
{
"amount": "1383.345213676043696",
"user": "0x4Aa3c35F6CC2d507E5C18205ee57099A4C80B19b",
@@ -54517,8 +54698,8 @@
}
],
"total_tokens": "359123.469575",
"withdrawn_tokens": "349768.27365466587745625",
"remaining_tokens": "9355.19592033412254375"
"withdrawn_tokens": "351655.06042082973919375",
"remaining_tokens": "7468.40915417026080625"
},
{
"address": "0xBdd412797c1B78535Afc5F71503b91fAbD0160fB",
@@ -55969,7 +56150,7 @@
"tranche_start": "2021-10-05T00:00:00.000Z",
"tranche_end": "2023-04-05T00:00:00.000Z",
"total_added": "5778205.3912159303",
"total_removed": "3421810.610823310514313769",
"total_removed": "3480709.486904665102263769",
"locked_amount": "0",
"deposits": [
{
@@ -56114,6 +56295,11 @@
}
],
"withdrawals": [
{
"amount": "58898.87608135458795",
"user": "0x83b1a48376E045D26420200345414e6b93066396",
"tx": "0xeb193da202cd833a574a524eff7f1dd13a0ee8669e51a7db36984ef4d6735fd6"
},
{
"amount": "219.945520329711288",
"user": "0xafa64cCa337eFEE0AD827F6C2684e69275226e90",
@@ -57631,6 +57817,12 @@
}
],
"withdrawals": [
{
"amount": "58898.87608135458795",
"user": "0x83b1a48376E045D26420200345414e6b93066396",
"tranche_id": 4,
"tx": "0xeb193da202cd833a574a524eff7f1dd13a0ee8669e51a7db36984ef4d6735fd6"
},
{
"amount": "66753.39849271259062",
"user": "0x83b1a48376E045D26420200345414e6b93066396",
@@ -57699,8 +57891,8 @@
}
],
"total_tokens": "1104995.291",
"withdrawn_tokens": "1046096.41491864541205",
"remaining_tokens": "58898.87608135458795"
"withdrawn_tokens": "1104995.291",
"remaining_tokens": "0"
},
{
"address": "0x5565d64f29Ea17355106DF3bA5903Eb793B3e139",
@@ -58152,8 +58344,8 @@
"tranche_start": "2022-06-05T00:00:00.000Z",
"tranche_end": "2023-06-05T00:00:00.000Z",
"total_added": "472355.6199999996",
"total_removed": "43120.0853616251849",
"locked_amount": "57578.840974715197793192974327752",
"total_removed": "43365.4083448891849",
"locked_amount": "52728.553391508069839034794317608",
"deposits": [
{
"amount": "3000",
@@ -64772,6 +64964,16 @@
}
],
"withdrawals": [
{
"amount": "182.662252664",
"user": "0xb1169C6daAc76bAcaf0D8f87641Fc38fbabe569F",
"tx": "0xc182a183d124ab4faa413e71faa8c764fc265b4c568a5025ead367fbb86da331"
},
{
"amount": "62.6607306",
"user": "0x7345AaA0D0e4C4A46d921fA9323973956F2b7392",
"tx": "0xb13444d5ef684a442be6c285a6c38dcbc9959ff2eacc31474531826efe28c20a"
},
{
"amount": "168.502276762",
"user": "0x38A292CB98Dc602ECAFF94E8E5fADD9800e4bA13",
@@ -83322,6 +83524,12 @@
}
],
"withdrawals": [
{
"amount": "62.6607306",
"user": "0x7345AaA0D0e4C4A46d921fA9323973956F2b7392",
"tranche_id": 5,
"tx": "0xb13444d5ef684a442be6c285a6c38dcbc9959ff2eacc31474531826efe28c20a"
},
{
"amount": "152.077625568",
"user": "0x7345AaA0D0e4C4A46d921fA9323973956F2b7392",
@@ -83378,8 +83586,8 @@
}
],
"total_tokens": "1200",
"withdrawn_tokens": "1002.094025868",
"remaining_tokens": "197.905974132"
"withdrawn_tokens": "1064.754756468",
"remaining_tokens": "135.245243532"
},
{
"address": "0x47181cf36aDFb0b5dB7EfDB123f403D890607841",
@@ -86347,6 +86555,12 @@
}
],
"withdrawals": [
{
"amount": "182.662252664",
"user": "0xb1169C6daAc76bAcaf0D8f87641Fc38fbabe569F",
"tranche_id": 5,
"tx": "0xc182a183d124ab4faa413e71faa8c764fc265b4c568a5025ead367fbb86da331"
},
{
"amount": "78.04403856",
"user": "0xb1169C6daAc76bAcaf0D8f87641Fc38fbabe569F",
@@ -86361,8 +86575,8 @@
}
],
"total_tokens": "400",
"withdrawn_tokens": "171.538952308",
"remaining_tokens": "228.461047692"
"withdrawn_tokens": "354.201204972",
"remaining_tokens": "45.798795028"
},
{
"address": "0xF53D81D9f3A1465df9AD1b12ddDB5cC585D96877",
@@ -87839,7 +88053,7 @@
"tranche_start": "2021-12-05T00:00:00.000Z",
"tranche_end": "2022-06-05T00:00:00.000Z",
"total_added": "171288.42",
"total_removed": "69390.5995794947989",
"total_removed": "69890.5995794947989",
"locked_amount": "0",
"deposits": [
{
@@ -92079,6 +92293,16 @@
"user": "0x0715B8bA27dB75F7601A9D8E22c15dcA1487FB70",
"tx": "0x11c685c41ff0c2d5f1d7fe3b08dc84a7ddb9160764a45bc61b8f39df94729634"
},
{
"amount": "250",
"user": "0xf8Ec254406f878dA2BEd160730d238524Af3D5F6",
"tx": "0xb79fdf2dddc0ac091d7cdc737800683482d24367f18daaf5ab98c703b30bfee5"
},
{
"amount": "250",
"user": "0xBD1da3A721510B6d76f5b2C553d31753cc148bEC",
"tx": "0x17504994220684f4ba61ec374fdd5b0e4c0e0a9cfb15aa6794338b5a4de9eb68"
},
{
"amount": "1250",
"user": "0x9405F540EcC1204801De5C4444D06386BD6693F0",
@@ -99229,10 +99453,17 @@
"tx": "0x75de6ca47e0da361181d14aceb5d08e572754861465caa67a12b528886d55307"
}
],
"withdrawals": [],
"withdrawals": [
{
"amount": "250",
"user": "0xBD1da3A721510B6d76f5b2C553d31753cc148bEC",
"tranche_id": 6,
"tx": "0x17504994220684f4ba61ec374fdd5b0e4c0e0a9cfb15aa6794338b5a4de9eb68"
}
],
"total_tokens": "250",
"withdrawn_tokens": "0",
"remaining_tokens": "250"
"withdrawn_tokens": "250",
"remaining_tokens": "0"
},
{
"address": "0x4e8bA6747F20009163e51Ff1b5D3edd3Ef7c6C90",
@@ -99266,10 +99497,17 @@
"tx": "0x75de6ca47e0da361181d14aceb5d08e572754861465caa67a12b528886d55307"
}
],
"withdrawals": [],
"withdrawals": [
{
"amount": "250",
"user": "0xf8Ec254406f878dA2BEd160730d238524Af3D5F6",
"tranche_id": 6,
"tx": "0xb79fdf2dddc0ac091d7cdc737800683482d24367f18daaf5ab98c703b30bfee5"
}
],
"total_tokens": "250",
"withdrawn_tokens": "0",
"remaining_tokens": "250"
"withdrawn_tokens": "250",
"remaining_tokens": "0"
},
{
"address": "0xd995e89D6cCB2252388b9BaE0173981b5EfA0817",
@@ -143360,6 +143598,11 @@
"user": "0x759C9ABABA492500c4c730bEB568B5b851Dec2c7",
"tx": "0x11aafa8a2fb510a50d52e5d1e149c5c2027ad2c3dc2d9ef67c18d391c0331c49"
},
{
"amount": "0",
"user": "0x759C9ABABA492500c4c730bEB568B5b851Dec2c7",
"tx": "0x2e48ba2e6ca4994286e85e57d26b578fb0fd625f44a6fd27202476bb18575a40"
},
{
"amount": "0",
"user": "0x759C9ABABA492500c4c730bEB568B5b851Dec2c7",
@@ -143648,6 +143891,12 @@
"tranche_id": 9,
"tx": "0x11aafa8a2fb510a50d52e5d1e149c5c2027ad2c3dc2d9ef67c18d391c0331c49"
},
{
"amount": "0",
"user": "0x759C9ABABA492500c4c730bEB568B5b851Dec2c7",
"tranche_id": 9,
"tx": "0x2e48ba2e6ca4994286e85e57d26b578fb0fd625f44a6fd27202476bb18575a40"
},
{
"amount": "0",
"user": "0x759C9ABABA492500c4c730bEB568B5b851Dec2c7",
@@ -1,7 +1,18 @@
import { aliasGQLQuery } from '@vegaprotocol/cypress';
import { fillsQuery } from '@vegaprotocol/mock';
const tabFills = 'tab-fills';
describe('fills', { tags: '@regression' }, () => {
// 7005-FILL-001
// 7005-FILL-002
// 7005-FILL-003
// 7005-FILL-004
// 7005-FILL-005
// 7005-FILL-006
// 7005-FILL-007
// 7005-FILL-008
beforeEach(() => {
// Ensure page loads with correct key
cy.window().then((window) => {
@@ -38,31 +49,37 @@ describe('fills', { tags: '@regression' }, () => {
});
function validateFillsDisplayed() {
cy.getByTestId('tab-fills').should('be.visible');
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).should('be.visible');
cy.getByTestId(tabFills).contains('Market');
cy.getByTestId(tabFills)
.get(
'[role="gridcell"][col-id="market.tradableInstrument.instrument.name"]'
)
.each(($marketSymbol) => {
cy.wrap($marketSymbol).invoke('text').should('not.be.empty');
});
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).contains('Size');
cy.get(`[col-id='size']`).eq(1).should('contain.text', '+');
cy.get(`[col-id='size']`).eq(2).should('contain.text', '-');
cy.getByTestId(tabFills)
.get('[role="gridcell"][col-id="size"]')
.each(($amount) => {
cy.wrap($amount).invoke('text').should('not.be.empty');
});
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).contains('Price');
cy.getByTestId(tabFills)
.get('[role="gridcell"][col-id="price"]')
.each(($prices) => {
cy.wrap($prices).invoke('text').should('not.be.empty');
});
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).contains('Notional');
cy.getByTestId(tabFills)
.get('[role="gridcell"][col-id="price_1"]')
.each(($total) => {
cy.wrap($total).invoke('text').should('not.be.empty');
});
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).contains('Role');
cy.getByTestId(tabFills)
.get('[role="gridcell"][col-id="aggressor"]')
.each(($role) => {
cy.wrap($role)
@@ -72,13 +89,15 @@ describe('fills', { tags: '@regression' }, () => {
expect(roles.indexOf(text.trim())).to.be.greaterThan(-1);
});
});
cy.getByTestId('tab-fills')
cy.getByTestId(tabFills).contains('Fee');
cy.getByTestId(tabFills)
.get(
'[role="gridcell"][col-id="market.tradableInstrument.instrument.product"]'
)
.each(($fees) => {
cy.wrap($fees).invoke('text').should('not.be.empty');
});
cy.getByTestId(tabFills).contains('Date');
const dateTimeRegex =
/(\d{1,2})\/(\d{1,2})\/(\d{4}), (\d{1,2}):(\d{1,2}):(\d{1,2})/gm;
cy.get('[col-id="createdAt"]').each(($tradeDateTime, index) => {
@@ -7,7 +7,6 @@ import {
useThrottledDataProvider,
} from '@vegaprotocol/react-helpers';
import { AsyncRenderer, ExternalLink, Splash } from '@vegaprotocol/ui-toolkit';
import { marketProvider, marketDataProvider } from '@vegaprotocol/market-list';
import { useGlobalStore, usePageTitleStore } from '../../stores';
import { TradeGrid, TradePanels } from './trade-grid';
@@ -12,11 +12,10 @@ import { memo, useState } from 'react';
import type { ReactNode, ComponentProps } from 'react';
import { DepthChartContainer } from '@vegaprotocol/market-depth';
import { CandlesChartContainer } from '@vegaprotocol/candles-chart';
import { OracleBanner } from '../../components/banner';
import {
Tab,
LocalStoragePersistTabs as Tabs,
ResizableGrid,
ResizableGridPanel,
Splash,
} from '@vegaprotocol/ui-toolkit';
import { t } from '@vegaprotocol/i18n';
@@ -33,6 +32,10 @@ import {
useMarketClickHandler,
useMarketLiquidityClickHandler,
} from '../../lib/hooks/use-market-click-handler';
import {
ResizableGrid,
ResizableGridPanel,
} from '../../components/resizable-grid';
type MarketDependantView =
| typeof CandlesChartContainer
@@ -271,7 +274,10 @@ export const TradeGrid = ({
}: TradeGridProps) => {
return (
<div className="h-full grid grid-rows-[min-content_1fr]">
<TradeMarketHeader market={market} onSelect={onSelect} />
<div>
<TradeMarketHeader market={market} onSelect={onSelect} />
<OracleBanner marketId={market?.id || ''} />
</div>
<MainGrid
marketId={market?.id || ''}
onSelect={onSelect}
@@ -2,18 +2,13 @@ import { titlefy } from '@vegaprotocol/utils';
import { t } from '@vegaprotocol/i18n';
import { PositionsContainer } from '@vegaprotocol/positions';
import { OrderListContainer } from '@vegaprotocol/orders';
import {
ResizableGridPanel,
Tab,
LocalStoragePersistTabs as Tabs,
} from '@vegaprotocol/ui-toolkit';
import { Tab, LocalStoragePersistTabs as Tabs } from '@vegaprotocol/ui-toolkit';
import { WithdrawalsContainer } from './withdrawals-container';
import { FillsContainer } from '@vegaprotocol/fills';
import type { ReactNode } from 'react';
import { useEffect } from 'react';
import { VegaWalletContainer } from '../../components/vega-wallet-container';
import { DepositsContainer } from './deposits-container';
import { ResizableGrid } from '@vegaprotocol/ui-toolkit';
import { LayoutPriority } from 'allotment';
import { usePageTitleStore } from '../../stores';
import { LedgerContainer } from '@vegaprotocol/ledger';
@@ -23,6 +18,10 @@ import {
useMarketClickHandler,
useMarketLiquidityClickHandler,
} from '../../lib/hooks/use-market-click-handler';
import {
ResizableGrid,
ResizableGridPanel,
} from '../../components/resizable-grid';
export const Portfolio = () => {
const { updateTitle } = usePageTitleStore((store) => ({
@@ -1,16 +1,13 @@
import { AnnouncementBanner } from '@vegaprotocol/announcements';
import { AnnouncementBanner as Banner } from '@vegaprotocol/announcements';
import { useEnvironment } from '@vegaprotocol/environment';
export const Banner = () => {
export const AnnouncementBanner = () => {
const { ANNOUNCEMENTS_CONFIG_URL } = useEnvironment();
// Return an empty div so that the grid layout in _app.page.ts
// renders correctly
if (!ANNOUNCEMENTS_CONFIG_URL) {
return <div />;
}
return (
<AnnouncementBanner app="console" configUrl={ANNOUNCEMENTS_CONFIG_URL} />
);
return <Banner app="console" configUrl={ANNOUNCEMENTS_CONFIG_URL} />;
};
+2 -1
View File
@@ -1 +1,2 @@
export * from './banner';
export * from './announcement-banner';
export * from './oracle-banner';
@@ -0,0 +1,44 @@
import { t } from '@vegaprotocol/i18n';
import { useMarketOracle } from '@vegaprotocol/market-info';
import ReactMarkdown from 'react-markdown';
import { Intent, NotificationBanner } from '@vegaprotocol/ui-toolkit';
const oracleStatuses = {
UNKNOWN: t(
"This public key's proofs have not been verified yet, or no proofs have been provided yet."
),
GOOD: t("This public key's proofs have been verified."),
SUSPICIOUS: t(
'This public key is suspected to be acting in bad faith, pending investigation.'
),
MALICIOUS: t('This public key has been observed acting in bad faith.'),
RETIRED: t('This public key is no longer in use.'),
COMPROMISED: t(
'This public key is no longer in the control of its original owners.'
),
};
export const OracleBanner = ({ marketId }: { marketId: string }) => {
const oracle = useMarketOracle(marketId);
if (!oracle || oracle.status === 'GOOD') {
return null;
}
return (
<NotificationBanner intent={Intent.Danger}>
<div>
Oracle status for this market is {oracle.status}.{' '}
{oracleStatuses[oracle.status]}
</div>
{oracle.status_reason ? (
<ReactMarkdown
className="react-markdown-container"
skipHtml={true}
disallowedElements={['img']}
linkTarget="_blank"
>
{oracle.status_reason}
</ReactMarkdown>
) : null}
</NotificationBanner>
);
};
+2 -2
View File
@@ -30,7 +30,7 @@ import ToastsManager from './toasts-manager';
import { HashRouter, useLocation, useSearchParams } from 'react-router-dom';
import { Connectors } from '../lib/vega-connectors';
import { ViewingBanner } from '../components/viewing-banner';
import { Banner } from '../components/banner';
import { AnnouncementBanner } from '../components/banner';
import { AppLoader, DynamicLoader } from '../components/app-loader';
import { Navbar } from '../components/navbar';
import { ENV } from '../lib/config';
@@ -86,7 +86,7 @@ function AppBody({ Component }: AppProps) {
</Head>
<Title />
<div className={gridClasses}>
<Banner />
<AnnouncementBanner />
<Navbar theme={VEGA_ENV === Networks.TESTNET ? 'yellow' : 'system'} />
<ViewingBanner />
<main data-testid={location.pathname}>
+6 -6
View File
@@ -1,16 +1,16 @@
import { forwardRef } from 'react';
import { addDecimalsFormatNumber } from '@vegaprotocol/utils';
import { t } from '@vegaprotocol/i18n';
import {
Intent,
progressBarCellRendererSelector,
} from '@vegaprotocol/ui-toolkit';
import { Intent } from '@vegaprotocol/ui-toolkit';
import { AgGridColumn } from 'ag-grid-react';
import type { AgGridReact, AgGridReactProps } from 'ag-grid-react';
import type { AccountFields } from './accounts-data-provider';
import { AccountTypeMapping } from '@vegaprotocol/types';
import type { ValueProps } from '@vegaprotocol/ui-toolkit';
import type { VegaValueFormatterParams } from '@vegaprotocol/datagrid';
import type {
ValueProps,
VegaValueFormatterParams,
} from '@vegaprotocol/datagrid';
import { progressBarCellRendererSelector } from '@vegaprotocol/datagrid';
import { AgGridDynamic as AgGrid, PriceCell } from '@vegaprotocol/datagrid';
import type { ValueFormatterParams } from 'ag-grid-community';
import { accountValuesComparator } from './accounts-table';
+2
View File
@@ -17,3 +17,5 @@ export * from './lib/filters/set-filter';
export * from './lib/cell-class-rules';
export * from './lib/type-helpers';
export * from './lib/cells/grid-progress-bar';
@@ -1,9 +1,9 @@
import type { Intent } from '@vegaprotocol/ui-toolkit';
import { ProgressBar } from '@vegaprotocol/ui-toolkit';
import type {
CellRendererSelectorResult,
ICellRendererParams,
} from 'ag-grid-community';
import type { Intent } from '../../utils/intent';
import { ProgressBar } from './progress-bar';
export interface ValueProps {
valueFormatted?: {
+1 -1
View File
@@ -1,5 +1,5 @@
{
"name": "@vegaprotocol/i18n",
"version": "0.0.1",
"version": "0.0.2",
"type": "commonjs"
}
+1
View File
@@ -6,6 +6,7 @@
"build": {
"executor": "@nrwl/js:tsc",
"outputs": ["{options.outputPath}"],
"format": ["esm", "cjs"],
"options": {
"outputPath": "dist/libs/i18n",
"main": "libs/i18n/src/index.ts",
+1
View File
@@ -0,0 +1 @@
export * from './use-market-oracle';
@@ -0,0 +1,132 @@
import { renderHook } from '@testing-library/react';
import { useMarketOracle } from './use-market-oracle';
import type { MarketInfoQuery } from '../components/market-info/__generated__/MarketInfo';
import type { Provider } from '@vegaprotocol/oracles';
const ORACLE_PROOFS_URL = 'ORACLE_PROOFS_URL';
const address = 'address';
const key = 'key';
const mockEnvironment = jest.fn(() => ({ ORACLE_PROOFS_URL }));
const mockDataProvider = jest.fn<
{ data: MarketInfoQuery['market'] },
unknown[]
>(() => ({
data: {
tradableInstrument: {
instrument: {
product: {
dataSourceSpecForSettlementData: {
data: {
sourceType: {
__typename: 'DataSourceDefinitionExternal',
sourceType: {
signers: [
{
signer: {
__typename: 'ETHAddress',
address,
},
},
{
signer: {
__typename: 'PubKey',
key,
},
},
],
},
},
},
},
},
},
},
} as MarketInfoQuery['market'],
}));
const mockOracleProofs = jest.fn<{ data?: Provider[] }, unknown[]>(() => ({}));
jest.mock('@vegaprotocol/environment', () => ({
useEnvironment: jest.fn((args) => mockEnvironment()),
}));
jest.mock('@vegaprotocol/react-helpers', () => ({
useDataProvider: jest.fn((args) => mockDataProvider()),
}));
jest.mock('@vegaprotocol/oracles', () => ({
useOracleProofs: jest.fn((args) => mockOracleProofs()),
}));
const marketId = 'marketId';
describe('useMarketOracle', () => {
it('returns undefined if no market info present', () => {
mockDataProvider.mockReturnValueOnce({ data: null });
const { result } = renderHook(() => useMarketOracle(marketId));
expect(result.current).toBeUndefined();
});
it('returns undefined if no oracle proofs present', () => {
mockOracleProofs.mockReturnValueOnce({ data: undefined });
const { result } = renderHook(() => useMarketOracle(marketId));
expect(result.current).toBeUndefined();
});
it('returns oracle matched by eth_address', () => {
const data = [
{
proofs: [
{
eth_address: 'eth_address',
type: 'eth_address',
},
],
oracle: {},
} as Provider,
{
proofs: [
{
eth_address: address,
type: 'eth_address',
},
],
oracle: {},
} as Provider,
];
mockOracleProofs.mockReturnValueOnce({
data,
});
const { result } = renderHook(() => useMarketOracle(marketId));
expect(result.current).toBe(data[1].oracle);
});
it('returns oracle matching by public_key', () => {
const data = [
{
proofs: [
{
public_key: 'public_key',
type: 'public_key',
},
],
oracle: {},
} as Provider,
{
proofs: [
{
public_key: key,
type: 'public_key',
},
],
oracle: {},
} as Provider,
];
mockOracleProofs.mockReturnValueOnce({
data,
});
const { result } = renderHook(() => useMarketOracle(marketId));
expect(result.current).toBe(data[1].oracle);
});
});
@@ -0,0 +1,43 @@
import { useEnvironment } from '@vegaprotocol/environment';
import { useOracleProofs } from '@vegaprotocol/oracles';
import { useDataProvider } from '@vegaprotocol/react-helpers';
import { marketInfoProvider } from '../components/market-info/market-info-data-provider';
import { useMemo } from 'react';
export const useMarketOracle = (marketId: string) => {
const { ORACLE_PROOFS_URL } = useEnvironment();
const { data: marketInfo } = useDataProvider({
dataProvider: marketInfoProvider,
variables: { marketId },
});
const { data } = useOracleProofs(ORACLE_PROOFS_URL);
return useMemo(() => {
if (!data || !marketInfo) {
return undefined;
}
const dataSource =
marketInfo.tradableInstrument.instrument.product
.dataSourceSpecForSettlementData.data;
return data.find((provider) =>
provider.proofs.some(
(proof) =>
(proof.type === 'eth_address' &&
dataSource.sourceType.__typename ===
'DataSourceDefinitionExternal' &&
dataSource.sourceType.sourceType.signers?.some(
(signer) =>
signer.signer.__typename === 'ETHAddress' &&
signer.signer.address === proof.eth_address
)) ||
(proof.type === 'public_key' &&
dataSource.sourceType.__typename ===
'DataSourceDefinitionExternal' &&
dataSource.sourceType.sourceType.signers?.some(
(signer) =>
signer.signer.__typename === 'PubKey' &&
signer.signer.key === proof.public_key
))
)
)?.oracle;
}, [data, marketInfo]);
};
+1
View File
@@ -1 +1,2 @@
export * from './components';
export * from './hooks';
@@ -176,14 +176,16 @@ export const MarketListTable = forwardRef<
/>
<AgGridColumn
headerName={t('Settlement asset')}
field="tradableInstrument.instrument.product.settlementAsset"
field="tradableInstrument.instrument.product.settlementAsset.symbol"
cellRenderer={({
value,
data,
}: VegaICellRendererParams<
MarketMaybeWithData,
'tradableInstrument.instrument.product.settlementAsset'
>) =>
value ? (
'tradableInstrument.instrument.product.settlementAsset.symbol'
>) => {
const value =
data?.tradableInstrument.instrument.product.settlementAsset;
return value ? (
<ButtonLink
onClick={(e) => {
openAssetDetailsDialog(value.id, e.target as HTMLElement);
@@ -193,8 +195,8 @@ export const MarketListTable = forwardRef<
</ButtonLink>
) : (
''
)
}
);
}}
/>
<AgGridColumn headerName={t('Market ID')} field="id" />
</AgGrid>
+1 -1
View File
@@ -8,6 +8,7 @@ import type {
TypedDataAgGrid,
VegaICellRendererParams,
} from '@vegaprotocol/datagrid';
import { ProgressBarCell } from '@vegaprotocol/datagrid';
import {
AgGridDynamic as AgGrid,
DateRangeFilter,
@@ -22,7 +23,6 @@ import {
TooltipCellComponent,
ExternalLink,
Icon,
ProgressBarCell,
} from '@vegaprotocol/ui-toolkit';
import {
volumePrefix,
+1 -1
View File
@@ -1,4 +1,4 @@
{
"name": "@vegaprotocol/react-helpers",
"version": "0.2.1"
"version": "0.2.2"
}
+2 -4
View File
@@ -1,13 +1,11 @@
import { useRef } from 'react';
import { BrowserTracing } from '@sentry/tracing';
import * as Sentry from '@sentry/browser';
import type { LocalLogger } from '@vegaprotocol/utils';
import type { LocalLogger, LoggerConf } from '@vegaprotocol/utils';
import { localLoggerFactory } from '@vegaprotocol/utils';
interface Props {
interface Props extends LoggerConf {
dsn?: string;
application?: string;
tags?: string[];
}
export const useLogger = ({ dsn, ...props }: Props) => {
+1 -1
View File
@@ -1,4 +1,4 @@
{
"name": "@vegaprotocol/types",
"version": "0.0.1"
"version": "0.0.2"
}
+1
View File
@@ -15,6 +15,7 @@
"external": ["react/jsx-runtime"],
"rollupConfig": "@nrwl/react/plugins/bundle-rollup",
"compiler": "babel",
"format": ["esm", "cjs"],
"assets": [
{
"glob": "libs/types/README.md",
+1 -1
View File
@@ -1,4 +1,4 @@
{
"name": "@vegaprotocol/ui-toolkit",
"version": "0.11.1"
"version": "0.12.1"
}
@@ -57,7 +57,7 @@ export const Checkbox = ({
</CheckboxPrimitive.Root>
<label
htmlFor={name}
className={classNames('text-sm', {
className={classNames('text-sm flex-1', {
'dark:text-neutral-400 text-neutral-600': disabled,
})}
>
@@ -16,7 +16,6 @@ export const Icon = ({ size = 4, name, className, ariaLabel }: IconProps) => {
'inline-block',
'fill-current',
'align-text-bottom',
'fill-current',
'shrink-0',
// Cant just concatenate as TW wont pick up that the class is being used
// so below syntax is required
+2 -2
View File
@@ -12,6 +12,7 @@ export * from './dialog';
export * from './drawer';
export * from './dropdown-menu';
export * from './form-group';
export * from './healthbar';
export * from './icon';
export * from './indicator';
export * from './input-error';
@@ -25,11 +26,11 @@ export * from './nav-dropdown';
export * from './nav';
export * from './navigation';
export * from './notification';
export * from './notification-banner';
export * from './pagination';
export * from './popover';
export * from './progress-bar';
export * from './radio-group';
export * from './resizable-grid';
export * from './rounded-wrapper';
export * from './select';
export * from './simple-grid';
@@ -49,4 +50,3 @@ export * from './traffic-light';
export * from './vega-icons';
export * from './vega-logo';
export * from './viewing-as-user';
export * from './healthbar';
@@ -0,0 +1 @@
export * from './notification-banner';
@@ -0,0 +1,45 @@
/* eslint-disable jsx-a11y/accessible-emoji */
import type { ComponentStory, ComponentMeta } from '@storybook/react';
import { Intent } from '../../utils/intent';
import { NotificationBanner } from './notification-banner';
import { Button } from '../button';
export default {
title: 'NotificationBanner',
component: NotificationBanner,
} as ComponentMeta<typeof NotificationBanner>;
const Template: ComponentStory<typeof NotificationBanner> = (args) => {
return (
<div className="flex flex-col gap-4">
<NotificationBanner
intent={Intent.Warning}
onClose={() => {
return;
}}
>
<div className="uppercase ">
The network will upgrade to v0.68.5 in{' '}
<span className="text-vega-orange-500">9234</span> blocks
</div>
<div>
Trading activity will be interrupted, manage your risk appropriately.
<a href="/">View details</a>
</div>
</NotificationBanner>
<NotificationBanner intent={Intent.Danger}>
The oracle for this market has been flagged as malicious by the
community.
</NotificationBanner>
<NotificationBanner>
Viewing as Vega user 0592X...20CKZ
<Button size="sm" className="ml-2">
Exit view as
</Button>
</NotificationBanner>
</div>
);
};
export const Default = Template.bind({});
Default.args = {};
@@ -0,0 +1,80 @@
import classNames from 'classnames';
import { toastIconMapping } from '../toast';
import { Intent } from '../../utils/intent';
import { Icon } from '../icon';
interface NotificationBannerProps {
intent?: Intent;
children?: React.ReactNode;
onClose?: () => void;
}
export const NotificationBanner = ({
intent = Intent.None,
children,
onClose,
}: NotificationBannerProps) => {
return (
<div
className={classNames(
'flex items-center p-3 border-b min-h-[56px]',
'text-[12px] leading-[16px] font-normal',
{
'bg-vega-light-100 dark:bg-vega-dark-100 ': intent === Intent.None,
'bg-vega-blue-300 dark:bg-vega-blue-700': intent === Intent.Primary,
'bg-vega-green-300 dark:bg-vega-green-700': intent === Intent.Success,
'bg-vega-orange-300 dark:bg-vega-orange-700':
intent === Intent.Warning,
'bg-vega-pink-300 dark:bg-vega-pink-700': intent === Intent.Danger,
},
{
'border-b-vega-light-200 dark:border-b-vega-dark-200 ':
intent === Intent.None,
'border-b-vega-blue-500 dark:border-b-vega-blue-500':
intent === Intent.Primary,
'border-b-vega-green-600 dark:border-b-vega-green-500':
intent === Intent.Success,
'border-b-vega-orange-500 dark:border-b-vega-orange-500':
intent === Intent.Warning,
'border-b-vega-pink-500 dark:border-b-vega-pink-500':
intent === Intent.Danger,
}
)}
>
{intent === Intent.None ? null : (
<Icon
name={toastIconMapping[intent]}
size={4}
className={classNames('mr-2', {
'text-vega-blue-500 dark:text-vega-blue-500':
intent === Intent.Primary,
'text-vega-green-600 dark:text-vega-green-500':
intent === Intent.Success,
'text-vega-orange-500 dark:text-vega-orange-500':
intent === Intent.Warning,
'text-vega-pink-500 dark:text-vega-pink-500':
intent === Intent.Danger,
})}
/>
)}
<div className="grow">{children}</div>
{onClose ? (
<button
type="button"
data-testid="notification-banner-close"
onClick={onClose}
className="ml-2"
>
<Icon name="cross" size={4} className="dark:text-white" />
</button>
) : null}
</div>
);
};
@@ -1,2 +1 @@
export * from './grid-progress-bar';
export * from './progress-bar';
@@ -1,24 +0,0 @@
import type { Story, Meta } from '@storybook/react';
import { ResizableGrid } from './resizable-grid';
import { Allotment } from 'allotment';
import 'allotment/dist/style.css';
export default {
component: ResizableGrid,
title: 'ResizablePanel',
} as Meta;
const Template: Story = (args) => (
<div className="h-48">
<ResizableGrid vertical={true}>
<Allotment.Pane minSize={20}>
<div>Panel 1</div>
</Allotment.Pane>
<Allotment.Pane minSize={20}>
<div>Panel 2</div>
</Allotment.Pane>
</ResizableGrid>
</div>
);
export const Default = Template.bind({});
@@ -30,7 +30,7 @@ type ToastProps = Toast & {
state?: ToastState;
};
const toastIconMapping: { [i in Intent]: IconName } = {
export const toastIconMapping: { [i in Intent]: IconName } = {
[Intent.None]: IconNames.HELP,
[Intent.Primary]: IconNames.INFO_SIGN,
[Intent.Success]: IconNames.TICK_CIRCLE,
+1 -1
View File
@@ -21,7 +21,7 @@ type ConsoleMethod = {
}[keyof Console] &
string;
interface LoggerConf {
export interface LoggerConf {
application?: string;
tags?: string[];
logLevel?: LogLevelsType;