Skip to content

Commit

Permalink
[release] Kintsugi 2.38.2 (#1573)
Browse files Browse the repository at this point in the history
* feat: redirect when access from forbidden country is detected (#1209)

* Feature/updated transfer UI (#876)

* refactor: use updated tab component

* refactor: duplicated form titles

* refactor: remove redundant hook calls

* refactor: prefer title case

* wip: XCM transfer form UI

* wip: updated form UI

* wip: account selector placeholder component

* wip: account selector modal

* wip: modal open and close actions

* wip: update modal type

* wip: get accounts

* wip: add identicon and rename component for consistency

* wip: account input component

* fix: remove redundant icons prop

* feat: implement with SelectTrigger

* wip: styling and account selection value

* wip: handle setting account data

* refactor: better naming

* wip: address list styling

* refactor: rename defaultAccount

* wip: chain selector placeholder component

* wip: duplicate account component and rename

* chore: delete redundant legacy component

* wip: logic for fetching and rendering chain ids

* wip: chain item styling

* wip: selected chain styling

* chore: add comment

* refactor: pass through native token to icon component

* feature: add chain icon component

* chore: add comment

* chore: correct file name casing

* refactor: improve folder structure

* wip: form layout styling

* chore: add arrow icon

* chore: add logos and correct svg titles

* chore: remove redundant svg prop

* chore: rename arrow icon

* chore: consistent use of styled components

* refactor: remove padding from modal body

* wip: formik integration work

* wip: extend useXCMBridge to return available chains and utility methods

* chore: move Chain and Chains types to types directory

* feat: layout and form implementation

* feat: add schema

* feat: final

* wip: refactor useXCMBridge hook

* refactor: add endpoints type

* refactor: wrap methods in useCallback

* refactor: fix bug in hook method

* chore: bump bridge version

* wip: set originating and destination chain values

* refactor: set from chain value on field change

* wip: set originating chain value

* refactor: mergeProps to set field value

* refactor: handle setting origin/destination chain values

* wip: get tokens method

* wip: first iteration of balances function

* wip: handle tokens array

* wip: set token value

* wip: get token balances

* wip: return token and balances in single method

* wip: mapped tokens

* refactor: handle default chain values

* refactor: better organised function order

* wip: handle change events

* wip: handle setting tokens

* wip: handle fetching tokens and balances

* wip: convert input configs

* wip: handle token change

* wip: get token USD price

* Trigger Build

* chore: remove unused import

* chore: correct eslintignore syntax

* wip: handle breaking changes

* wip: disable token input when select items value is 1

* chore: set first token item as variable

* wip: handle setting and changing values

* chire: add loading spinner

* refactor: add loading state

* refactor: filter destination chains

* chore: remove console log

* chore: bump XCM bridge version

* chore: update config

* refactor: configure validation

* chore: revert change to useForm hook

* wip: form validation

* wip: working form validation

* wip: undefined validation parameters

* refactor: return dest fee estimate from bridge hook

* feature: show fees and fee estimates

* chore: conditional operators

* refactor: handle ticker change correctly

* wip: sendTransaction method

* Revert "wip: sendTransaction method"

This reverts commit 3ade26dda26c7cc14f9db9e7c005b66863fa9139.

* fix: USD amounts

* wip: send transactions

* refactor: bump bridge and use getNativeToken method

* chore: bump bridge

* refactor: move submit logic to useMutation hook

* fix: type mismatches

* refactor: white space/comments

* refactor: add transaction fee validation

* chore: typo

* chore: remove console log

* refactor: remove duplicated monetary conversion

* refactor: remove duplicate code

* Revert "refactor: remove duplicate code"

This reverts commit bd29f8c5661e327c5285d1020c534dab2deae806.

* Revert "refactor: remove duplicated monetary conversion"

This reverts commit 5fd3d645eb7d8edc00cfe8ced186d4e2432af9fc.

* refactor: use monetaryAmount when constructing transaction

* refactor: remove duplicated code for fetching tokens

* refactor: default XCM origin

* Revert "refactor: remove duplicated code for fetching tokens"

This reverts commit 8f31ee8667adcd49f5aaebb7db2f205afb5e9725.

* chore: remove comment

* chore: fix errors

* fix: set default value to empty string to prevent React error

* refactor: removed unwanted force validation parameters

* refactor: remove redundant method

* refactor: add method return type

* refactor: add method return type

* refactor: correct type error

* refactor: fix destFee type error

* refactor: remove fees validation and revert destFee return value

* chore: remove console log

* refactor: remove redundant method

* refactor: disable validation on change

* chore: remove commented out code

* wip: use select component for chain selector

* fix: handle chain select functions

* refactor: type chain id as ChainName

* Revert "refactor: type chain id as ChainName"

This reverts commit d05e0128cb4b5ac1d00ac07808ebdf9858739165.

* chore: remove unused component files

* refactor: remove duplicated transaction logic

* fix: make to/from field types more specific

* fix: revert yup.custom changes and cast validation

* fix: set correct destination chain

* refator: handle token data

* refactor: add use callback

* fix: correct rendering logic

* fix: update dependencies

* chore: delete unused styles

* chore: fix merge issue with transfer form

* fix: change validation handling

* Revert "fix: change validation handling"

This reverts commit c0cb3062aad3540b2afad7d375024d872924a62c.

* refactor: only display transfer amount if amount has been entered

* chore: config changes

* chore: add missing icons

* chore: Hydra chain icon

* fix: add error text to CTA

* Tom/xcm fixes (#1213)

* refactor: specify endpoints and remove unnecessary logic

* fix: save file before committing

* fix: disable refetch

* chore: update endpoints

* chore: remove log

* chore: rename file

* chore: add additional acala/karura endpoints

---------

Co-authored-by: Rui Simão <[email protected]>

* chore: release v2.32.0

* Update API healthchecks (#778)

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* [earn strategies] placeholder page, nav and feature flag (#1216)

* chore: bump icons dependency

* feature: earn strategies placeholder page and feature flag

* feat: add useTransaction (#1189)

* chore: update monetary to latest 0.7.3 (#1214)

* chore: update monetary to latest 0.7.3

* chore: update lib

* chore: bump lib and bridge (#1219)

* chore: release v2.32.1

* fix: add missing icons and remove erroring RPC (#1222)

* fix: add missing icons and remove erroring RPC

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Acala.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Astar.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Parallel.tsx

Co-authored-by: Peter Slaný <[email protected]>

---------

Co-authored-by: Peter Slaný <[email protected]>

* chore: release v2.32.2

* fix: compare input configs with method not operator (#1225)

* refactor: reset selected account on account change (#1226)

* chore: release v2.32.3

* feature: add geoblock feature flag (#1230)

* chore: release v2.32.4

* chore: bump bridge (#1233)

* chore: release v2.32.5

* Peter/earn strategies feat deposit withdraw form (#1229)

* chore: update monetary to latest 0.7.3

* wip

* feat(earn-strategies): add deposit and withdrawal form components

* refactor: add padding under tabs in earn strategy forms

* chore(earn-strategies): change file structure

* feat: add Popover, Underlay and ProgressBar. Changes to Dialog, Modal and Overlay. (#1236)

* fix: Dialog, Modal and Popover (#1245)

* chore: rename strategies feature (#1247)

* chore: release v2.32.6

* Fix: back button behaviour from bridge page (#1246)

* fix: use history replace instead of push to fix looping of bridge page

* chore: clean up and bump version

---------

Co-authored-by: tomjeatt <[email protected]>

* feat: add transaction notifications (#1177)

* chore: remove console.log (#1262)

* fix(TokenInput): adorment ticker (#1257)

* fix: get vesting data (#1264)

* Peter/chore update lib 2.3.0 (#1267)

* chore: update monetary to latest 0.7.3

* chore: update lib version

* fix: sort notifications (#1270)

* fix: transaction none (#1271)

* fix(Loans): apy label (#1275)

* Peter/loans fix subsidy rewards (#1276)

* chore: update monetary to latest 0.7.3

* fix(loans): display correct subsidy rewards accrued amount and APY

* chore: console log cleanup

* chore: replace GOVERNANCE_TOKEN_SYMBOL with GOVERNANCE_TOKEN.ticker

* Peter/fix loans incentive apr computation (#1256)

* chore: update monetary to latest 0.7.3

* fix: convert incentives apr computation to percentage

* fix: change loans incentives annualized return to have label APR

* chore: release v2.33.0

* Peter/chore update lib 2.3.3 (#1282)

* chore: update monetary to latest 0.7.3

* chore: update lib to 2.3.3.

* fix: enable faucet on Interlay testnet (#1289)

* fix: enable faucet on Interlay testnet

* fix: prefer governance token ticker to symbol

* chore: bump bridge (#1285)

* fix(Swap): update trade object on each block (#1297)

* api: use diadata as main datasource (#1277)

* api: use diadata as main datasource

* api: add header to select price source

---------

Co-authored-by: tomjeatt <[email protected]>

* Peter/fix interlay issues (#1300)

* chore: update monetary to latest 0.7.3

* fix: add missing translation and fix lend APY display

* refactor: bring back formatting with 0 amount case covered

* refactor: code review

* refactor: code review

* api: select price source via query param and ticker renaming (#1307)

* api: fix tether label for dia (#1309)

* chore: release v2.34.0

* chore: update XCM RPCs (#1324)

* chore: release v2.34.1

* fix: correct wallet balance (#1334)

* api: switch to coingecko pro url (#1321)

* Peter/feat tx fee with swapped currency (#1340)

* chore: update monetary to latest 0.7.3

* feat: refactor Transfer and theme (#1244)

* wip: initial changes to move table

* chore: remove unused component

* Revert "chore: remove unused component"

This reverts commit 0db71a15538b776c73b752a98d2e825d890d2ea1.

* chore: remove unused component

* chore: use translation file

* fix: add missing p tags

* wip

* feat: refactor Transfer and theme (#1244)

* feat(Bridge): revamp Issue and Redeem (#1279)

* wip

* feat(TransactionDetails): extend component to support fee selector (#1292)

* feat: add tx fee estimation and swap for tx fee payment integration

* fix: remove impossible condition

* feat: integrate use-transaction with TransactionFeeDetails (#1294)

* feat: integrate use-transaction with TransactionFeeDetails

* fix: code review

* refactor: code review

* feat: add fee estimate loading state

* Rui/fee estimate transfer form (#1296)

* feat: add fee estimate to transfer form

* Update src/pages/Transfer/TransferForms/components/TransferForm/TransferForm.tsx

Co-authored-by: Peter Slaný <[email protected]>

---------

Co-authored-by: Peter Slaný <[email protected]>

* Feature/UI updates/navigation styling (#1293)

* wip: initial navigation styling

* refactor: remove icons from secondary navigation items

* refactor: split navigation into primary/secondary

* fix: add bg colour to nav to prevent problems on small screens

* refactor: update accordion styles

* refactor: remove redundant code and console log

* refactor: change Kintsugi background colour

* fix: show navigation item names

* fix: remove redundant conditional

* fix: code

* fix: changes to list style and disable 0 balance fee tokens

* feat(bringyourownfee): add check for existing trade path

* Update src/utils/hooks/transaction/use-transaction.ts

Co-authored-by: Dominik Harz <[email protected]>

* Update src/utils/hooks/transaction/use-transaction.ts

Co-authored-by: Dominik Harz <[email protected]>

* refactor: move multiplier to constant

* feat: add fee validation and other improvements to form validation (#1303)

* Peter/feat griefing collateral multicurrency (#1310)

* feat: add selectable griefing collateral currency to issue request form

* feat: add oracle currency hook and wrap up griefing collateral work

* feat(Swap): add custom fee (#1315)

* Peter/feat byof bridge page (#1328)

* wip

* refactor: issue page with griefing collateral select

* feat(bringyourownfees): redeem form

* refactor: renaming

* feat: add redeem request to getActionAmount

* feat(Pools): add fee estimate (#1322)

* feat(Loans): add fee estimate (#1332)

* feat(Vaults): add fee estimate to vault creation (#1333)

* fix(Redeem): add missing BTC address validation (#1336)

* fix: redeem getActionAmount type mismatch

* Tom/UI updates/minor changes (#1308)

* refactor: add vault table background colour

* fix: typo

* refactor: styled card for vault selector

* refactor: wrap vault transaction tables in card component

* fix: typo

* refactor: add shadowed prop to card component

* refactor: use card component for transactions table

* refactor: move request id in legacy issue/request modal

* refactor: use request id dictionary item

* chore: update Interlay logo

* refactor: update icon and logo colours

* feature: add bg image

* wip: add background image to Layout component

* refactor: add Wrapper component

* wip: initial values for background image position

* refactor: minor styling changes

* refactor: revert unneeded change

* refactor: move and rename Transaction component

* feat: sort currencies by balance (#1338)

---------

Co-authored-by: Peter <[email protected]>
Co-authored-by: Thomas Jeatt <[email protected]>
Co-authored-by: Peter Slaný <[email protected]>
Co-authored-by: tomjeatt <[email protected]>
Co-authored-by: Dominik Harz <[email protected]>

* chore: release v2.35.0

* Tom/feature/wallet buttons (#1346)

* refactor: add tab props

* feature: add bridge button to assets table

* refactor: don't show buy button for wrapped token

* [wallet] add default currencies to wallet (#1335)

* refactor: add default currencies to wallet

* refactor: use NATIVE_CURRENCIES

* chore: update navigation (#1344)

* refatctor: remove LBANK configuration and assets (#1355)

* feature: add LDOT icon (#1356)

* Peter/refactor fetch oracle status from chain (#1359)

* chore: update monetary to latest 0.7.3

* refactor: fetch oracle status from chain

* chore: remove commented-out code

* Peter/fix add wrapped currency as security deposit option (#1360)

* chore: update monetary to latest 0.7.3

* fix: add wrapped token to useGetOracleCurrencies result

* chore: update price impact warning copy (#1358)

* [transfer/bridge] open correct tab (#1366)

* fix: bridge query parameter

* fix: revert to previous tab name

* refactor: close redeem modal (#1367)

* refactor: close redeem modal

* fix: correct user messaging copy

* fix: remove unnecessary translation

* fix: correct copy

* feat: change LoadingSpinner styles and CTA loading spinner (#1372)

* feat: replace legacy toast with new notification toast (#1370)

* fix: UI styling bugs (#1371)

* fix: change broken gradient id ref

* refactor: add opacity value to navigation separator

* fix: update padding

* fix: border opacity

* fix: use transaction details component

* refactor: change how padding is set

* Peter/fix bridge dust value validation (#1374)

* chore: update monetary to latest 0.7.3

* fix: dust value calculation

* feat(Wallet): add USDT and change switch label (#1363)

* fix(Modal): prevent user from clicking when closed (#1364)

* fix(Swap): handle when schema params are undefined (#1375)

* feat(Wallet): add welcome banner (#1337)

* fix: correct subscan link (#1378)

* fix: select token modal list style (#1382)

* fix: improve issue form insufficient funds notice (#1380)

* feature: add tooltip to asset cell (#1345)

* feature: add tooltip to asset cell

* fix: typo

* wip: ReactNode tooltip so that we can pass in link

* feature: add fee asset tooltip

* update text link component

* fix: revert changes to text links

* revert changes to text links

* fix: maintain compatibility with existing text links

* use correct location variable

* fix: remove log

* fix: tooltip const

* Onboarding page (#1373)

* feat: add draft of onboarding page

* chore: update t&c links

* feat: add guided tour through app

* fix: typos and eslint warnings

* restrict width of onboarding cards

* feat: replace  UI faucet with discord link

* feat: improve CTA

* feat: add link to onboarding page

---------

Co-authored-by: Thomas Jeatt <[email protected]>

* fix: disable fetch on focus (#1386)

* fix(Onboarding): improve styles, semantics and file structure (#1387)

Co-authored-by: Dominik Harz <[email protected]>

* fix: typo (#1392)

* Peter/feat pools trading fee apr (#1389)

* chore: update monetary to latest 0.7.3

* feat(pools): add trading fee APR

* refactor: clean-up naming

* Peter/ choreupdate lib 2.3.5 (#1393)

* chore: update monetary to latest 0.7.3

* chore: update lib to 2.3.5

* chore: release v2.35.1

* fix: onboarding and empty fee selector (#1396)

* Onboarding feature flag (#1398)

* refactor: add feature flag

* fix: update dependencies

* add onboarding to env file

* chore: release v2.35.2

* api: add dia asset ids to market data endpoint (#1400)

* chore: release v2.35.3

* api: add dia asset ids to market data endpoint (#1403)

* chore: release v2.35.4

* fix(Wallet): add missing guide link (#1406)

* fix(Wallet): add missing guide link

* Update WelcomeBanner.tsx

* feat(Wallet): update welcome banner svg (#1407)

* wip: add T&Cs version (#1409)

* chore: release v2.35.5

* api: add support for multiple version of terms and conditions (#1411)

* api: add support for multiple version of terms and conditions

* api: add support for multiple version of terms and conditions

* chore: release v2.35.6

* feat: add parity signer companion for polkadot vault support (#1417)

* Tom/xcm copy changes (#1391)

* fix: typos

* refactor: pass chain data to transaction instead of chain id

* refactor: remove unused feature foags (#1402)

* Peter/fix pools daily volumes (#1421)

* chore: update monetary to latest 0.7.3

* fix: change pools fetching query to work when first record is younger than requested period

* fix(Pools): deposit validation (#1419)

* fix: various issues picked up from testing (#1414)

* fix: prefetching fee scenarios (#1384)

* fix: hide onboarding button when onboarding disabled (#1418)

* chore: release v2.35.7

* apply hotfix (#1428)

* Peter/fix byof not working (#1430)

* chore: update monetary to latest 0.7.3

* fix(byof): use correct field props getter for fee token select

* chore: release v2.35.8

* api: add support ethereum and karura (#1435)

* Tom/updated directory names (#1434)

* refactor: rename Bridge -> BTC

* refactor: transfer -> send and receive

* fix: rename Transfer component

* revert change to tab name

* refactor: update translation references

* update schemas

* update directory and file casing

* casing

* casing

* casing

* casing

* casing

* chore: split AMM pages into seperate folders (#1436)

* feat: check signature version (#1429)

* Fix Storybook (#1443)

* fix display name syntax

* disable snapshots

* Trigger build

* Update routes (#1442)

* update routes

* redirect crossChainTransfer query parameter

* fix redirect syntax

* fix redirect syntax

* redirect cross chain transfer

* tab redirects

* correct redirect syntax

* Peter/fix q token vaults support (#1445)

* chore: update monetary to latest 0.7.3

* wip

* wip: update lib version

* chore: install deps

* chore: fix test pipelines (#1379)

* fix(Redeem): redeem limit when there is not capcity (#1451)

* fix(Redeem): premium redeem (#1454)

* Peter/feat loans q token handle edge cases (#1449)

* chore: update monetary to latest 0.7.3

* feat(loans): handle lend position when qToken is used as vault collateral

* chore: update lib

* add nova wallet (#1453)

* add nova wallet

* delete unused config and update polkadot name

* move constant and delete redundant file

* feat: add query params handling (#1347)

* feat: add estimate fee hook and action amount deduction (#1433)

* Update number of wallets in test (#1462)

* Update number of wallets in test

* fix: remove parentheses from wallet name

* Support Banxa on Interlay (#1458)

* refactor: remove redundant env variable and UI component

* refactor: remove redundant URL parameter

* update translation file

* revert change to wallet parameter

* update translation parameter

* fix: missed file save

* chore: release v2.36.0

* fix(Swap): add missing scenario for re-computing trade obj (#1464)

* fix: use correct value for vault capacity indicator (#1465)

* fix: use correct value for vault capacity indicator

* fix: capacity ratio when there are no backed tokens

* revert version bump

* chore: release v2.36.0

* api: add fallback to coingecko for missing assets on dia (#1467)

* revert version bump

* chore: release v2.36.0

* fix: fee affecting action amount calculation (#1472)

* chore: release v2.36.1

* feat(Strategies): add landing page (#1466)

* feat(Strategies): add landing page

* fix: code review

* chore: improve translactions (#1447)

* feat: add tooltip to pools and refactor loans tooltip (#1424)

* feat: add tooltip to pools and refactor loans tooltip

* fix: code review

* fix: code reivew

---------

Co-authored-by: Thomas Jeatt <[email protected]>

* fix(Loans): simplify form and hook (#1476)

* Rui/loans modals lose close animation due to conditional render (#1460)

* wip

* feat: continue

* fix: code review

* fix:merge

---------

Co-authored-by: Thomas Jeatt <[email protected]>

* fix: loan tests (#1425)

* Tom/update bg image (#1481)

* update bg svg

* swap file

* minify

* Tom/xcm updates (#1480)

* wip: refactor account select

* refactor: update component names

* Revert "refactor: update component names"

This reverts commit c80ca13d04cec92a5405479ccafc65f069cb93ca.

* fix: rename components without breaking feature

* disable all data refetching

* wip: render xcm form when no wallet connected

* remove redundant legacy component

* workaround for account selection issue

* Tidying up

* handle TODO relating to SelectObject

* remove comment

* casing

* selected styling

* improvements

* Add comment

* fix: organize files (#1483)

* refactor: Layout and MainContainer (#1489)

* refactor: add block height, parachain status and locked tokens hooks (#1486)

* refactor: replace old faucet approach with use-faucet (#1484)

* Peter/feat dry running (#1499)

* chore: update monetary to latest 0.7.3

* feat(transaction): dry-run transaction before submission and revert execution if dry-running fails

* test: mock submittable extrinsic

* refactor: rename to dryRun and document functionality

* refactor: move submission code to separate folder

* Peter/feat simple passive income strategy page (#1473)

* chore: update monetary to latest 0.7.3

* wip: feat(strategies): add simple BTC strategy

* refactor(strategies): merge landing page with strategy page

* wip: strategy page infographics

* feat(loans): add earned amount to lend positions

* feat: changes to loans and strategies (#1498)

---------

Co-authored-by: Daniel Simão <[email protected]>

* fix(Strategies): improve responsiveness and add form link (#1503)

* fix: correct feature flag name (#1504)

* chore: release v2.36.2

* feat(Slider): add component (#1502)

* fix: use route instead of redirect (#1507)

* chore: release v2.37.0

* feat: add breadcrumbs component and add it to strategies (#1505)

* Peter/chore lib update 2.4.0 (#1512)

* chore: update monetary to latest 0.7.3

* chore: handle 2.4.0 upgrade

* fix: conditional check for amount (#1516)

* fix: conditional check for amount

* fix: revert slice change

* docs: roadmap item (#1519)

* feat: add roadmap items to roadmap but not backlog (#1521)

* feat: zero slippage option (#1497)

* chore: bump lib (#1523)

* Bump bridge and revert hotfix (#1104)

* chore: bump bridge and revert hotfix

* chore: bump bridge

* chore: bump bridge version

* Release/kintsugi/2.29.1 (#1107)

* chore: add resolutions for various polkadot packages (#1089)

* Fix input field width issue (#1090)

* fix: input field width

* fix: rename max weeks to total weeks

* chore: bump ui version

* chore: bump XCM bridge (#1093)

* feat(Wallet): add page (#1001)

* feat(Wallet): add page

* feat: add WalletIcon

* feat: copy address

* wip

* feat: staking table

* feat: refactor and add lending

* refactor: clean up code

* wip

* feat: add List card

* continue

* fix: continue

* feat: continue

* feat(CTALink): improve

* feat: add responsiveness and swap handling

* feat: final

* feat: add responsive prop

* fix: clean up List and Divider

* feat: add tests

* feat: add final tests

* fix: code review

* feat: add vesting and tests

* fix: code review

* Tom/bug/burn form collateral tokens (#1042)

* refactor: loop collateral to get burnable tokens

* refactor: revert previous change and simplify

* refactor: add function to filter tokens

* refactor: fetch collateral currencies and render token values

* wip: form layout and translation

* wip: set data and selected collateral

* chore: remove console log

* refactor: remove single collateral code

* chore: comment

* fix: incorrect USD value

* chore: remove testing code

* refactor: remove native token import

* refactor: add BurnableCollateral type

* refactor: add fullWidth prop and label to token selector

* refactor: collateral icon

* chore: add dictionary item

* chore: remove unnecessary conditional operators

* refactor: handle callback

* refactor: fix failing test

* chore: remove unused code

* refactor: add success notification to burn form

* Add CORS to market data (#1096)

* chore: add env variables to config

* chore: add cors to market data api

---------

Co-authored-by: ns212 <[email protected]>

* fix: revert to using 0.2.x version of the bridge (#1095)

* chore: improve price impact warning copy

* chore: release v2.29.0

* fix(amm): use correct hooks dependencies (#1105)

* fix: update useGetCurrencies callbacks dependency arrays (#1108)

* chore: release v2.29.1

---------

Co-authored-by: Brendon Votteler <[email protected]>
Co-authored-by: Chanakya888 <[email protected]>
Co-authored-by: Daniel Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>
Co-authored-by: Dominik Harz <[email protected]>
Co-authored-by: Peter Slaný <[email protected]>

* Tom/release/kintsugi/2.29.2 (#1116)

* chore: add resolutions for various polkadot packages (#1089)

* Fix input field width issue (#1090)

* fix: input field width

* fix: rename max weeks to total weeks

* chore: bump ui version

* chore: bump XCM bridge (#1093)

* feat(Wallet): add page (#1001)

* feat(Wallet): add page

* feat: add WalletIcon

* feat: copy address

* wip

* feat: staking table

* feat: refactor and add lending

* refactor: clean up code

* wip

* feat: add List card

* continue

* fix: continue

* feat: continue

* feat(CTALink): improve

* feat: add responsiveness and swap handling

* feat: final

* feat: add responsive prop

* fix: clean up List and Divider

* feat: add tests

* feat: add final tests

* fix: code review

* feat: add vesting and tests

* fix: code review

* Tom/bug/burn form collateral tokens (#1042)

* refactor: loop collateral to get burnable tokens

* refactor: revert previous change and simplify

* refactor: add function to filter tokens

* refactor: fetch collateral currencies and render token values

* wip: form layout and translation

* wip: set data and selected collateral

* chore: remove console log

* refactor: remove single collateral code

* chore: comment

* fix: incorrect USD value

* chore: remove testing code

* refactor: remove native token import

* refactor: add BurnableCollateral type

* refactor: add fullWidth prop and label to token selector

* refactor: collateral icon

* chore: add dictionary item

* chore: remove unnecessary conditional operators

* refactor: handle callback

* refactor: fix failing test

* chore: remove unused code

* refactor: add success notification to burn form

* Add CORS to market data (#1096)

* chore: add env variables to config

* chore: add cors to market data api

---------

Co-authored-by: ns212 <[email protected]>

* fix: revert to using 0.2.x version of the bridge (#1095)

* chore: improve price impact warning copy

* chore: release v2.29.0

* fix(amm): use correct hooks dependencies (#1105)

* fix: update useGetCurrencies callbacks dependency arrays (#1108)

* chore: release v2.29.1

* [wallet] improve wallet balance (#1109)

* wip: correct wallet balance

* refactor: account for borrow and lend positions when calculating total balance

* refactor: add total liquidity balance

* fix: typo

* chore: add TODO

* refactor: remove unnecessary toString call

* refactor: redirect home route to wallet if enabled, defaulting to bridge if not

* refactor: remove duplicated calculations

* refactor: return liquidity pools calculation from hook

* chore: release v2.29.2

---------

Co-authored-by: Brendon Votteler <[email protected]>
Co-authored-by: Chanakya888 <[email protected]>
Co-authored-by: Daniel Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>
Co-authored-by: Dominik Harz <[email protected]>
Co-authored-by: Peter Slaný <[email protected]>

* Tom/release/kintsugi/2.9.3 (#1121)

* chore: add resolutions for various polkadot packages (#1089)

* Fix input field width issue (#1090)

* fix: input field width

* fix: rename max weeks to total weeks

* chore: bump ui version

* chore: bump XCM bridge (#1093)

* feat(Wallet): add page (#1001)

* feat(Wallet): add page

* feat: add WalletIcon

* feat: copy address

* wip

* feat: staking table

* feat: refactor and add lending

* refactor: clean up code

* wip

* feat: add List card

* continue

* fix: continue

* feat: continue

* feat(CTALink): improve

* feat: add responsiveness and swap handling

* feat: final

* feat: add responsive prop

* fix: clean up List and Divider

* feat: add tests

* feat: add final tests

* fix: code review

* feat: add vesting and tests

* fix: code review

* Tom/bug/burn form collateral tokens (#1042)

* refactor: loop collateral to get burnable tokens

* refactor: revert previous change and simplify

* refactor: add function to filter tokens

* refactor: fetch collateral currencies and render token values

* wip: form layout and translation

* wip: set data and selected collateral

* chore: remove console log

* refactor: remove single collateral code

* chore: comment

* fix: incorrect USD value

* chore: remove testing code

* refactor: remove native token import

* refactor: add BurnableCollateral type

* refactor: add fullWidth prop and label to token selector

* refactor: collateral icon

* chore: add dictionary item

* chore: remove unnecessary conditional operators

* refactor: handle callback

* refactor: fix failing test

* chore: remove unused code

* refactor: add success notification to burn form

* Add CORS to market data (#1096)

* chore: add env variables to config

* chore: add cors to market data api

---------

Co-authored-by: ns212 <[email protected]>

* fix: revert to using 0.2.x version of the bridge (#1095)

* chore: improve price impact warning copy

* chore: release v2.29.0

* fix(amm): use correct hooks dependencies (#1105)

* fix: update useGetCurrencies callbacks dependency arrays (#1108)

* chore: release v2.29.1

* [wallet] improve wallet balance (#1109)

* wip: correct wallet balance

* refactor: account for borrow and lend positions when calculating total balance

* refactor: add total liquidity balance

* fix: typo

* chore: add TODO

* refactor: remove unnecessary toString call

* refactor: redirect home route to wallet if enabled, defaulting to bridge if not

* refactor: remove duplicated calculations

* refactor: return liquidity pools calculation from hook

* chore: release v2.29.2

* refactor: use current block when calculating lock time extension (#1118)

* Tom/hotfix/use correct xcm names (#1119)

* refactor: use display value for chain names

* refactor: use correct display value for XCM channels

* chore: release v2.29.3

---------

Co-authored-by: Brendon Votteler <[email protected]>
Co-authored-by: Chanakya888 <[email protected]>
Co-authored-by: Daniel Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>
Co-authored-by: Dominik Harz <[email protected]>
Co-authored-by: Peter Slaný <[email protected]>

* [release] Kintsugi 2.9.5 (#1127)

* chore: add resolutions for various polkadot packages (#1089)

* Fix input field width issue (#1090)

* fix: input field width

* fix: rename max weeks to total weeks

* chore: bump ui version

* chore: bump XCM bridge (#1093)

* feat(Wallet): add page (#1001)

* feat(Wallet): add page

* feat: add WalletIcon

* feat: copy address

* wip

* feat: staking table

* feat: refactor and add lending

* refactor: clean up code

* wip

* feat: add List card

* continue

* fix: continue

* feat: continue

* feat(CTALink): improve

* feat: add responsiveness and swap handling

* feat: final

* feat: add responsive prop

* fix: clean up List and Divider

* feat: add tests

* feat: add final tests

* fix: code review

* feat: add vesting and tests

* fix: code review

* Tom/bug/burn form collateral tokens (#1042)

* refactor: loop collateral to get burnable tokens

* refactor: revert previous change and simplify

* refactor: add function to filter tokens

* refactor: fetch collateral currencies and render token values

* wip: form layout and translation

* wip: set data and selected collateral

* chore: remove console log

* refactor: remove single collateral code

* chore: comment

* fix: incorrect USD value

* chore: remove testing code

* refactor: remove native token import

* refactor: add BurnableCollateral type

* refactor: add fullWidth prop and label to token selector

* refactor: collateral icon

* chore: add dictionary item

* chore: remove unnecessary conditional operators

* refactor: handle callback

* refactor: fix failing test

* chore: remove unused code

* refactor: add success notification to burn form

* Add CORS to market data (#1096)

* chore: add env variables to config

* chore: add cors to market data api

---------

Co-authored-by: ns212 <[email protected]>

* fix: revert to using 0.2.x version of the bridge (#1095)

* chore: improve price impact warning copy

* chore: release v2.29.0

* fix(amm): use correct hooks dependencies (#1105)

* fix: update useGetCurrencies callbacks dependency arrays (#1108)

* chore: release v2.29.1

* [wallet] improve wallet balance (#1109)

* wip: correct wallet balance

* refactor: account for borrow and lend positions when calculating total balance

* refactor: add total liquidity balance

* fix: typo

* chore: add TODO

* refactor: remove unnecessary toString call

* refactor: redirect home route to wallet if enabled, defaulting to bridge if not

* refactor: remove duplicated calculations

* refactor: return liquidity pools calculation from hook

* chore: release v2.29.2

* refactor: use current block when calculating lock time extension (#1118)

* Tom/hotfix/use correct xcm names (#1119)

* refactor: use display value for chain names

* refactor: use correct display value for XCM channels

* chore: release v2.29.3

* fix: correct apy calculation (#1123)

* fix: correct apy calculation

* refactor: set extension time as variable

* chore: release v2.29.4

* fix: prevent rewards estimate from being called when user has insufficient balance (#1126)

* chore: release v2.29.5

---------

Co-authored-by: Brendon Votteler <[email protected]>
Co-authored-by: Chanakya888 <[email protected]>
Co-authored-by: Daniel Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>
Co-authored-by: Dominik Harz <[email protected]>
Co-authored-by: Peter Slaný <[email protected]>

* fix: revert change which blocks rewards calculation

* chore: update coingecko api endpoint

* [release] Kintsugi 2.32.0 (#1215)

* feat: redirect when access from forbidden country is detected (#1209)

* Feature/updated transfer UI (#876)

* refactor: use updated tab component

* refactor: duplicated form titles

* refactor: remove redundant hook calls

* refactor: prefer title case

* wip: XCM transfer form UI

* wip: updated form UI

* wip: account selector placeholder component

* wip: account selector modal

* wip: modal open and close actions

* wip: update modal type

* wip: get accounts

* wip: add identicon and rename component for consistency

* wip: account input component

* fix: remove redundant icons prop

* feat: implement with SelectTrigger

* wip: styling and account selection value

* wip: handle setting account data

* refactor: better naming

* wip: address list styling

* refactor: rename defaultAccount

* wip: chain selector placeholder component

* wip: duplicate account component and rename

* chore: delete redundant legacy component

* wip: logic for fetching and rendering chain ids

* wip: chain item styling

* wip: selected chain styling

* chore: add comment

* refactor: pass through native token to icon component

* feature: add chain icon component

* chore: add comment

* chore: correct file name casing

* refactor: improve folder structure

* wip: form layout styling

* chore: add arrow icon

* chore: add logos and correct svg titles

* chore: remove redundant svg prop

* chore: rename arrow icon

* chore: consistent use of styled components

* refactor: remove padding from modal body

* wip: formik integration work

* wip: extend useXCMBridge to return available chains and utility methods

* chore: move Chain and Chains types to types directory

* feat: layout and form implementation

* feat: add schema

* feat: final

* wip: refactor useXCMBridge hook

* refactor: add endpoints type

* refactor: wrap methods in useCallback

* refactor: fix bug in hook method

* chore: bump bridge version

* wip: set originating and destination chain values

* refactor: set from chain value on field change

* wip: set originating chain value

* refactor: mergeProps to set field value

* refactor: handle setting origin/destination chain values

* wip: get tokens method

* wip: first iteration of balances function

* wip: handle tokens array

* wip: set token value

* wip: get token balances

* wip: return token and balances in single method

* wip: mapped tokens

* refactor: handle default chain values

* refactor: better organised function order

* wip: handle change events

* wip: handle setting tokens

* wip: handle fetching tokens and balances

* wip: convert input configs

* wip: handle token change

* wip: get token USD price

* Trigger Build

* chore: remove unused import

* chore: correct eslintignore syntax

* wip: handle breaking changes

* wip: disable token input when select items value is 1

* chore: set first token item as variable

* wip: handle setting and changing values

* chire: add loading spinner

* refactor: add loading state

* refactor: filter destination chains

* chore: remove console log

* chore: bump XCM bridge version

* chore: update config

* refactor: configure validation

* chore: revert change to useForm hook

* wip: form validation

* wip: working form validation

* wip: undefined validation parameters

* refactor: return dest fee estimate from bridge hook

* feature: show fees and fee estimates

* chore: conditional operators

* refactor: handle ticker change correctly

* wip: sendTransaction method

* Revert "wip: sendTransaction method"

This reverts commit 3ade26dda26c7cc14f9db9e7c005b66863fa9139.

* fix: USD amounts

* wip: send transactions

* refactor: bump bridge and use getNativeToken method

* chore: bump bridge

* refactor: move submit logic to useMutation hook

* fix: type mismatches

* refactor: white space/comments

* refactor: add transaction fee validation

* chore: typo

* chore: remove console log

* refactor: remove duplicated monetary conversion

* refactor: remove duplicate code

* Revert "refactor: remove duplicate code"

This reverts commit bd29f8c5661e327c5285d1020c534dab2deae806.

* Revert "refactor: remove duplicated monetary conversion"

This reverts commit 5fd3d645eb7d8edc00cfe8ced186d4e2432af9fc.

* refactor: use monetaryAmount when constructing transaction

* refactor: remove duplicated code for fetching tokens

* refactor: default XCM origin

* Revert "refactor: remove duplicated code for fetching tokens"

This reverts commit 8f31ee8667adcd49f5aaebb7db2f205afb5e9725.

* chore: remove comment

* chore: fix errors

* fix: set default value to empty string to prevent React error

* refactor: removed unwanted force validation parameters

* refactor: remove redundant method

* refactor: add method return type

* refactor: add method return type

* refactor: correct type error

* refactor: fix destFee type error

* refactor: remove fees validation and revert destFee return value

* chore: remove console log

* refactor: remove redundant method

* refactor: disable validation on change

* chore: remove commented out code

* wip: use select component for chain selector

* fix: handle chain select functions

* refactor: type chain id as ChainName

* Revert "refactor: type chain id as ChainName"

This reverts commit d05e0128cb4b5ac1d00ac07808ebdf9858739165.

* chore: remove unused component files

* refactor: remove duplicated transaction logic

* fix: make to/from field types more specific

* fix: revert yup.custom changes and cast validation

* fix: set correct destination chain

* refator: handle token data

* refactor: add use callback

* fix: correct rendering logic

* fix: update dependencies

* chore: delete unused styles

* chore: fix merge issue with transfer form

* fix: change validation handling

* Revert "fix: change validation handling"

This reverts commit c0cb3062aad3540b2afad7d375024d872924a62c.

* refactor: only display transfer amount if amount has been entered

* chore: config changes

* chore: add missing icons

* chore: Hydra chain icon

* fix: add error text to CTA

* Tom/xcm fixes (#1213)

* refactor: specify endpoints and remove unnecessary logic

* fix: save file before committing

* fix: disable refetch

* chore: update endpoints

* chore: remove log

* chore: rename file

* chore: add additional acala/karura endpoints

---------

Co-authored-by: Rui Simão <[email protected]>

* chore: release v2.32.0

---------

Co-authored-by: Peter Slaný <[email protected]>
Co-authored-by: Rui Simão <[email protected]>

* [release] Kintsugi 2.32.2 (#1223)

* feat: redirect when access from forbidden country is detected (#1209)

* Feature/updated transfer UI (#876)

* refactor: use updated tab component

* refactor: duplicated form titles

* refactor: remove redundant hook calls

* refactor: prefer title case

* wip: XCM transfer form UI

* wip: updated form UI

* wip: account selector placeholder component

* wip: account selector modal

* wip: modal open and close actions

* wip: update modal type

* wip: get accounts

* wip: add identicon and rename component for consistency

* wip: account input component

* fix: remove redundant icons prop

* feat: implement with SelectTrigger

* wip: styling and account selection value

* wip: handle setting account data

* refactor: better naming

* wip: address list styling

* refactor: rename defaultAccount

* wip: chain selector placeholder component

* wip: duplicate account component and rename

* chore: delete redundant legacy component

* wip: logic for fetching and rendering chain ids

* wip: chain item styling

* wip: selected chain styling

* chore: add comment

* refactor: pass through native token to icon component

* feature: add chain icon component

* chore: add comment

* chore: correct file name casing

* refactor: improve folder structure

* wip: form layout styling

* chore: add arrow icon

* chore: add logos and correct svg titles

* chore: remove redundant svg prop

* chore: rename arrow icon

* chore: consistent use of styled components

* refactor: remove padding from modal body

* wip: formik integration work

* wip: extend useXCMBridge to return available chains and utility methods

* chore: move Chain and Chains types to types directory

* feat: layout and form implementation

* feat: add schema

* feat: final

* wip: refactor useXCMBridge hook

* refactor: add endpoints type

* refactor: wrap methods in useCallback

* refactor: fix bug in hook method

* chore: bump bridge version

* wip: set originating and destination chain values

* refactor: set from chain value on field change

* wip: set originating chain value

* refactor: mergeProps to set field value

* refactor: handle setting origin/destination chain values

* wip: get tokens method

* wip: first iteration of balances function

* wip: handle tokens array

* wip: set token value

* wip: get token balances

* wip: return token and balances in single method

* wip: mapped tokens

* refactor: handle default chain values

* refactor: better organised function order

* wip: handle change events

* wip: handle setting tokens

* wip: handle fetching tokens and balances

* wip: convert input configs

* wip: handle token change

* wip: get token USD price

* Trigger Build

* chore: remove unused import

* chore: correct eslintignore syntax

* wip: handle breaking changes

* wip: disable token input when select items value is 1

* chore: set first token item as variable

* wip: handle setting and changing values

* chire: add loading spinner

* refactor: add loading state

* refactor: filter destination chains

* chore: remove console log

* chore: bump XCM bridge version

* chore: update config

* refactor: configure validation

* chore: revert change to useForm hook

* wip: form validation

* wip: working form validation

* wip: undefined validation parameters

* refactor: return dest fee estimate from bridge hook

* feature: show fees and fee estimates

* chore: conditional operators

* refactor: handle ticker change correctly

* wip: sendTransaction method

* Revert "wip: sendTransaction method"

This reverts commit 3ade26dda26c7cc14f9db9e7c005b66863fa9139.

* fix: USD amounts

* wip: send transactions

* refactor: bump bridge and use getNativeToken method

* chore: bump bridge

* refactor: move submit logic to useMutation hook

* fix: type mismatches

* refactor: white space/comments

* refactor: add transaction fee validation

* chore: typo

* chore: remove console log

* refactor: remove duplicated monetary conversion

* refactor: remove duplicate code

* Revert "refactor: remove duplicate code"

This reverts commit bd29f8c5661e327c5285d1020c534dab2deae806.

* Revert "refactor: remove duplicated monetary conversion"

This reverts commit 5fd3d645eb7d8edc00cfe8ced186d4e2432af9fc.

* refactor: use monetaryAmount when constructing transaction

* refactor: remove duplicated code for fetching tokens

* refactor: default XCM origin

* Revert "refactor: remove duplicated code for fetching tokens"

This reverts commit 8f31ee8667adcd49f5aaebb7db2f205afb5e9725.

* chore: remove comment

* chore: fix errors

* fix: set default value to empty string to prevent React error

* refactor: removed unwanted force validation parameters

* refactor: remove redundant method

* refactor: add method return type

* refactor: add method return type

* refactor: correct type error

* refactor: fix destFee type error

* refactor: remove fees validation and revert destFee return value

* chore: remove console log

* refactor: remove redundant method

* refactor: disable validation on change

* chore: remove commented out code

* wip: use select component for chain selector

* fix: handle chain select functions

* refactor: type chain id as ChainName

* Revert "refactor: type chain id as ChainName"

This reverts commit d05e0128cb4b5ac1d00ac07808ebdf9858739165.

* chore: remove unused component files

* refactor: remove duplicated transaction logic

* fix: make to/from field types more specific

* fix: revert yup.custom changes and cast validation

* fix: set correct destination chain

* refator: handle token data

* refactor: add use callback

* fix: correct rendering logic

* fix: update dependencies

* chore: delete unused styles

* chore: fix merge issue with transfer form

* fix: change validation handling

* Revert "fix: change validation handling"

This reverts commit c0cb3062aad3540b2afad7d375024d872924a62c.

* refactor: only display transfer amount if amount has been entered

* chore: config changes

* chore: add missing icons

* chore: Hydra chain icon

* fix: add error text to CTA

* Tom/xcm fixes (#1213)

* refactor: specify endpoints and remove unnecessary logic

* fix: save file before committing

* fix: disable refetch

* chore: update endpoints

* chore: remove log

* chore: rename file

* chore: add additional acala/karura endpoints

---------

Co-authored-by: Rui Simão <[email protected]>

* chore: release v2.32.0

* Update API healthchecks (#778)

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* [earn strategies] placeholder page, nav and feature flag (#1216)

* chore: bump icons dependency

* feature: earn strategies placeholder page and feature flag

* feat: add useTransaction (#1189)

* chore: update monetary to latest 0.7.3 (#1214)

* chore: update monetary to latest 0.7.3

* chore: update lib

* chore: bump lib and bridge (#1219)

* chore: release v2.32.1

* fix: add missing icons and remove erroring RPC (#1222)

* fix: add missing icons and remove erroring RPC

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Acala.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Astar.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Parallel.tsx

Co-authored-by: Peter Slaný <[email protected]>

---------

Co-authored-by: Peter Slaný <[email protected]>

* chore: release v2.32.2

---------

Co-authored-by: Peter Slaný <[email protected]>
Co-authored-by: Rui Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>

* [release] Kintsugi 2.32.3 (#1228)

* feat: redirect when access from forbidden country is detected (#1209)

* Feature/updated transfer UI (#876)

* refactor: use updated tab component

* refactor: duplicated form titles

* refactor: remove redundant hook calls

* refactor: prefer title case

* wip: XCM transfer form UI

* wip: updated form UI

* wip: account selector placeholder component

* wip: account selector modal

* wip: modal open and close actions

* wip: update modal type

* wip: get accounts

* wip: add identicon and rename component for consistency

* wip: account input component

* fix: remove redundant icons prop

* feat: implement with SelectTrigger

* wip: styling and account selection value

* wip: handle setting account data

* refactor: better naming

* wip: address list styling

* refactor: rename defaultAccount

* wip: chain selector placeholder component

* wip: duplicate account component and rename

* chore: delete redundant legacy component

* wip: logic for fetching and rendering chain ids

* wip: chain item styling

* wip: selected chain styling

* chore: add comment

* refactor: pass through native token to icon component

* feature: add chain icon component

* chore: add comment

* chore: correct file name casing

* refactor: improve folder structure

* wip: form layout styling

* chore: add arrow icon

* chore: add logos and correct svg titles

* chore: remove redundant svg prop

* chore: rename arrow icon

* chore: consistent use of styled components

* refactor: remove padding from modal body

* wip: formik integration work

* wip: extend useXCMBridge to return available chains and utility methods

* chore: move Chain and Chains types to types directory

* feat: layout and form implementation

* feat: add schema

* feat: final

* wip: refactor useXCMBridge hook

* refactor: add endpoints type

* refactor: wrap methods in useCallback

* refactor: fix bug in hook method

* chore: bump bridge version

* wip: set originating and destination chain values

* refactor: set from chain value on field change

* wip: set originating chain value

* refactor: mergeProps to set field value

* refactor: handle setting origin/destination chain values

* wip: get tokens method

* wip: first iteration of balances function

* wip: handle tokens array

* wip: set token value

* wip: get token balances

* wip: return token and balances in single method

* wip: mapped tokens

* refactor: handle default chain values

* refactor: better organised function order

* wip: handle change events

* wip: handle setting tokens

* wip: handle fetching tokens and balances

* wip: convert input configs

* wip: handle token change

* wip: get token USD price

* Trigger Build

* chore: remove unused import

* chore: correct eslintignore syntax

* wip: handle breaking changes

* wip: disable token input when select items value is 1

* chore: set first token item as variable

* wip: handle setting and changing values

* chire: add loading spinner

* refactor: add loading state

* refactor: filter destination chains

* chore: remove console log

* chore: bump XCM bridge version

* chore: update config

* refactor: configure validation

* chore: revert change to useForm hook

* wip: form validation

* wip: working form validation

* wip: undefined validation parameters

* refactor: return dest fee estimate from bridge hook

* feature: show fees and fee estimates

* chore: conditional operators

* refactor: handle ticker change correctly

* wip: sendTransaction method

* Revert "wip: sendTransaction method"

This reverts commit 3ade26dda26c7cc14f9db9e7c005b66863fa9139.

* fix: USD amounts

* wip: send transactions

* refactor: bump bridge and use getNativeToken method

* chore: bump bridge

* refactor: move submit logic to useMutation hook

* fix: type mismatches

* refactor: white space/comments

* refactor: add transaction fee validation

* chore: typo

* chore: remove console log

* refactor: remove duplicated monetary conversion

* refactor: remove duplicate code

* Revert "refactor: remove duplicate code"

This reverts commit bd29f8c5661e327c5285d1020c534dab2deae806.

* Revert "refactor: remove duplicated monetary conversion"

This reverts commit 5fd3d645eb7d8edc00cfe8ced186d4e2432af9fc.

* refactor: use monetaryAmount when constructing transaction

* refactor: remove duplicated code for fetching tokens

* refactor: default XCM origin

* Revert "refactor: remove duplicated code for fetching tokens"

This reverts commit 8f31ee8667adcd49f5aaebb7db2f205afb5e9725.

* chore: remove comment

* chore: fix errors

* fix: set default value to empty string to prevent React error

* refactor: removed unwanted force validation parameters

* refactor: remove redundant method

* refactor: add method return type

* refactor: add method return type

* refactor: correct type error

* refactor: fix destFee type error

* refactor: remove fees validation and revert destFee return value

* chore: remove console log

* refactor: remove redundant method

* refactor: disable validation on change

* chore: remove commented out code

* wip: use select component for chain selector

* fix: handle chain select functions

* refactor: type chain id as ChainName

* Revert "refactor: type chain id as ChainName"

This reverts commit d05e0128cb4b5ac1d00ac07808ebdf9858739165.

* chore: remove unused component files

* refactor: remove duplicated transaction logic

* fix: make to/from field types more specific

* fix: revert yup.custom changes and cast validation

* fix: set correct destination chain

* refator: handle token data

* refactor: add use callback

* fix: correct rendering logic

* fix: update dependencies

* chore: delete unused styles

* chore: fix merge issue with transfer form

* fix: change validation handling

* Revert "fix: change validation handling"

This reverts commit c0cb3062aad3540b2afad7d375024d872924a62c.

* refactor: only display transfer amount if amount has been entered

* chore: config changes

* chore: add missing icons

* chore: Hydra chain icon

* fix: add error text to CTA

* Tom/xcm fixes (#1213)

* refactor: specify endpoints and remove unnecessary logic

* fix: save file before committing

* fix: disable refetch

* chore: update endpoints

* chore: remove log

* chore: rename file

* chore: add additional acala/karura endpoints

---------

Co-authored-by: Rui Simão <[email protected]>

* chore: release v2.32.0

* Update API healthchecks (#778)

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* Chore - add vault healthcheck

* [earn strategies] placeholder page, nav and feature flag (#1216)

* chore: bump icons dependency

* feature: earn strategies placeholder page and feature flag

* feat: add useTransaction (#1189)

* chore: update monetary to latest 0.7.3 (#1214)

* chore: update monetary to latest 0.7.3

* chore: update lib

* chore: bump lib and bridge (#1219)

* chore: release v2.32.1

* fix: add missing icons and remove erroring RPC (#1222)

* fix: add missing icons and remove erroring RPC

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Acala.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Astar.tsx

Co-authored-by: Peter Slaný <[email protected]>

* Update src/pages/Transfer/CrossChainTransferForm/components/ChainIcon/icons/Parallel.tsx

Co-authored-by: Peter Slaný <[email protected]>

---------

Co-authored-by: Peter Slaný <[email protected]>

* chore: release v2.32.2

* fix: compare input configs with method not operator (#1225)

* refactor: reset selected account on account change (#1226)

* chore: release v2.32.3

---------

Co-authored-by: Peter Slaný <[email protected]>
Co-authored-by: Rui Simão <[email protected]>
Co-authored-by: ns212 <[email protected]>

* [release] Kintsugi 2.32.4 (#1232)

* feat: redirect when access from forbidden country is detected (#1209)

* Feature/updated transfer UI (#876)

* refactor: use updated tab component

* refactor: duplicated form titles

* refactor: remove redundant hook calls

* refactor: prefer title case

* wip: XCM transfer form UI

* wip: updated form UI

* wip: account selector placeholder component

* wip: account selector modal

* wip: modal open and close actions

* wip: update modal type

* wip: get accounts

* wip: add identicon and rename component for consistency

* wip: account input component

* fix: remove redundant icons prop

* feat: implement with SelectTrigger

* wip: styling and account selection value

* wip: handle setting account data

* refactor: better naming

* wip: address list styling

* refactor: rename defaultAccount

* wip: chain selector placeholder component

* wip: duplicate account component and rename

* chore: delete redundant legacy component

* wip: logic for fetching and rendering chain ids

* wip: chain item styling

* wip: selected chain styling

* chore: add comment

* refactor: pass through native token to icon component

* feature: add chain icon component

* chore: add comment

* chore: correct file name casing

* refactor: improve folder structure

* wip: form layout styling

* chore: add arrow icon

* chore: add logos and correct svg titles

* chore: remove redundant svg prop

* chore: rename arrow icon

* chore: consistent use of styled components

* refactor: remove padding from modal body

* wip: formik integration work

* wip: extend useXCMBridge to return available chains and utility methods

* chore: move Chain and Chains types to types directory

* feat: layout and form implementation

* feat: add schema

* feat: final

* wip: refactor useXCMBridge hook

* refactor: add endpoints type

* refactor: wrap methods in useCallback

* refactor: fix bug in hook method

* chore: bump bridge version

* wip: set originating and destination chain values

* refactor: set from chain value on field change

* wip: set originating chain value

* refactor: mergeProps to set field value

* refactor: handle setting origin/destination chain values

* wip: get tokens method

* wip: first iteration of balances function

* wip: handle tokens array

* wip: set token value

* wip: get token balances

* wip: return token and balances in single method

* wip: mapped tokens

* refactor: handle default chain values

* refactor: better organised function order

* wip: handle change events

* wip: handle setting tokens

* wip: handle fetching tokens and balances

* wip:…
  • Loading branch information
10 people authored Sep 28, 2023
1 parent 6a6ee6d commit 88e5af6
Show file tree
Hide file tree
Showing 15 changed files with 449 additions and 121 deletions.
106 changes: 106 additions & 0 deletions api/market_data.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
// Dia to Coingecko names
const tickers = {
"Tether USD": "tether",
"Acala USD": "acala-dollar",
"BNB": "binancecoin",
"Wrapped BTC": "wrapped-bitcoin",
"Dai Stablecoin": "dai",
"Ether": "ethereum",
"USD Coin": "usd-coin",
"tBTC v2": "tbtc",
"Voucher Dot": "voucher-dot",
"Voucher KSM": "voucher-ksm"
}

// Coingecko to Dia asset ids
const dia_assets = {
"bitcoin": "/Bitcoin/0x0000000000000000000000000000000000000000",
"ethereum": "/Ethereum/0x0000000000000000000000000000000000000000",
"interlay": "/Interlay/0x0000000000000000000000000000000000000000",
"polkadot": "/Polkadot/0x0000000000000000000000000000000000000000",
"kusama": "/Kusama/0x0000000000000000000000000000000000000000",
"kintsugi": "/Kintsugi/Token:KINT",
"acala-dollar": "/Acala/Token:AUSD",
"karura": "/Bifrost/518",
"tether": "/Ethereum/0xdAC17F958D2ee523a2206206994597C13D831ec7",
"voucher-dot": "/Bifrost-polkadot/2304",
"voucher-ksm": "/Bifrost/260",
"binancecoin": "/Ethereum/0xB8c77482e45F1F44dE1745F52C74426C631bDD52",
"bnb": "/Ethereum/0xB8c77482e45F1F44dE1745F52C74426C631bDD52",
"tbtc": "/Ethereum/0x18084fbA666a33d37592fA2633fD49a74DD93a88",
"dai": "/Ethereum/0x6B175474E89094C44Da98b954EedeAC495271d0F",
"moonbeam": "/Moonbeam/0x0000000000000000000000000000000000000000",
"usd-coin": "/Ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"wrapped-bitcoin": "/Ethereum/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599"
}

const fetchDiaAsset = async (asset) => {
try {
if (!dia_assets[asset]) {
console.log('Missing DIA asset: ', asset)
return coingecko({ ids: [asset], vs_currencies: ["usd"] })
}
const url = 'https://api.diadata.org/v1/assetQuotation' + dia_assets[asset]
const response = await fetch(url, { headers: { "accept": "application/json" } })
if (!response.ok) {
throw new Error(response.status)
}
const json = await response.json()

// optionally rename the ticker
const name = (tickers[json.Name] ?? json.Name).toLowerCase()
return {
[name]: {
'usd': json.Price
}
}
} catch (error) {
console.log(error)
}
}

const dia = async (args) => {
const assets = args.ids.split(',')

return Promise
.all(assets.map(x => fetchDiaAsset(x)))
.then(x => x.reduce((map, obj) => {
// we need to convert the list to an object
const k = Object.keys(obj)[0]
map[k] = obj[k]
return map
}, {}))
}

const coingecko = async (args) => {
const url = 'https://api.coingecko.com/api/v3/simple/price?' + new URLSearchParams(args)
const response = await fetch(url, { headers: { "accept": "application/json" } })
return await response.json()
}

const fetchPrices = (priceSource, args) => {
if (priceSource === 'coingecko') {
return coingecko(args)
} else if (priceSource === 'dia') {
return dia(args)
} else {
try {
return dia(args)
} catch (error) {
console.log(error)
return coingecko(args)
}
}
}

export default async function (request, response) {
const args = request.query
const priceSource = args['price-source']

const resp = await fetchPrices(priceSource, args)
return response
.status(200)
.setHeader("content-type", "application/json")
.setHeader("cache-control", "public, maxage=0, s-maxage=300")
.json(resp)
}
106 changes: 0 additions & 106 deletions api/market_data.py

This file was deleted.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "interbtc-ui",
"version": "2.38.1",
"version": "2.38.2",
"private": true,
"dependencies": {
"@craco/craco": "^6.1.1",
Expand Down
28 changes: 28 additions & 0 deletions src/component-library/CoinIcon/icons/DAI.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import { forwardRef } from 'react';

import { Icon, IconProps } from '@/component-library/Icon';

const DAI = forwardRef<SVGSVGElement, IconProps>((props, ref) => (
<Icon {...props} ref={ref} viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'>
<title>DAI</title>
<g clipPath='url(#dai-a)'>
<path
fill='#F5AC37'
d='M12 0c6.628 0 12 5.373 12 12 0 6.628-5.372 12-12 12-6.627 0-12-5.372-12-12C0 5.373 5.373 0 12 0Z'
/>
<path
fill='#FEFEFD'
d='M12.442 12.847h4.56c.097 0 .143 0 .15-.127a8.73 8.73 0 0 0 0-1.395c0-.09-.045-.127-.142-.127H7.935c-.112 0-.143.037-.143.142v1.335c0 .172 0 .172.18.172h4.47Zm4.201-3.21a.147.147 0 0 0 0-.104 2.975 2.975 0 0 0-.271-.473 3.83 3.83 0 0 0-.555-.697 1.84 1.84 0 0 0-.345-.338 5.391 5.391 0 0 0-2.25-1.14 5.594 5.594 0 0 0-1.275-.135H7.919c-.112 0-.127.045-.127.143v2.662c0 .112 0 .142.142.142h8.655s.075-.015.09-.06h-.037.001Zm0 4.77a1.743 1.743 0 0 0-.383 0H7.942c-.112 0-.15 0-.15.15v2.603c0 .12 0 .15.15.15h3.84c.184.015.368.002.547-.037a5.72 5.72 0 0 0 1.628-.36c.19-.066.374-.152.547-.255h.053a4.872 4.872 0 0 0 2.092-2.107s.053-.113-.006-.143ZM6.285 18.66v-4.147c0-.098 0-.113-.12-.113H4.538c-.09 0-.128 0-.128-.12v-1.425h1.74c.097 0 .135 0 .135-.127v-1.41c0-.09 0-.112-.12-.112H4.538c-.09 0-.128 0-.128-.12v-1.32c0-.083 0-.105.12-.105h1.613c.112 0 .142 0 .142-.142V5.476c0-.12 0-.15.15-.15h5.625c.408.016.814.061 1.215.135a7.33 7.33 0 0 1 2.347.87c.482.284.925.626 1.32 1.02.297.308.565.642.803.997.236.36.432.746.585 1.148.02.105.12.175.225.158h1.342c.172 0 .172 0 .18.165v1.23c0 .12-.045.15-.165.15h-1.036c-.104 0-.135 0-.127.135.041.457.041.915 0 1.372 0 .128 0 .143.143.143h1.184c.053.067 0 .135 0 .203.008.087.008.175 0 .262v.908c0 .127-.037.165-.15.165H18.51a.188.188 0 0 0-.218.142 5.998 5.998 0 0 1-1.575 2.295c-.255.23-.523.446-.803.645-.3.173-.592.353-.9.495a8.104 8.104 0 0 1-1.77.563 9.227 9.227 0 0 1-1.755.142H6.283v-.008l.002-.001Z'
/>
</g>
<defs>
<clipPath id='dai-a'>
<path fill='#fff' d='M0 0h24v24H0z' />
</clipPath>
</defs>
</Icon>
));

DAI.displayName = 'DAI';

export { DAI };
36 changes: 36 additions & 0 deletions src/component-library/CoinIcon/icons/GLMR.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { forwardRef } from 'react';

import { Icon, IconProps } from '@/component-library/Icon';

const GLMR = forwardRef<SVGSVGElement, IconProps>((props, ref) => (
<Icon {...props} ref={ref} viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'>
<title>GLMR</title>
<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'>
<g clipPath='url(#glmr-a)'>
<circle cx='12' cy='12' r='11.5' fill='#171717' stroke='#EC1C79' />
<g clipPath='url(#glmr-b)'>
<path
fill='#5FC0C1'
d='M15.234 5.44c1.816.772 3.064 2.645 2.95 4.518H8.426c0-1.212.453-2.534 1.361-3.416C11.035 5 13.418 4.56 15.234 5.441Z'
/>
<path
fill='#E1177C'
d='M15.007 17.45c.227 0 .34.11.34.22s-.113.22-.34.22h-5.22c-.227 0-.34-.11-.34-.22s.113-.22.34-.22h5.22ZM8.652 18c.227 0 .34-.11.34-.33 0-.22-.113-.331-.34-.331-.226 0-.34.11-.34.33 0 .22.114.331.34.331ZM11.83 16.678c.227 0 .34-.11.34-.33 0-.22-.113-.331-.34-.331-.227 0-.34.11-.34.33 0 .22.113.331.34.331ZM17.957 16.017c.227 0 .34.11.34.33 0 .22-.113.331-.34.331h-5.106c-.227 0-.34-.11-.34-.33 0-.22.113-.331.34-.331h5.106ZM5.021 15.356c.227 0 .34-.11.34-.33 0-.22-.113-.331-.34-.331-.227 0-.34.11-.34.33 0 .22.227.33.34.33ZM10.128 14.695c.227 0 .34.11.34.33 0 .22-.113.33-.34.33H5.929c-.227 0-.34-.11-.34-.33 0-.22.113-.33.34-.33h4.199ZM19.66 14.695c.227 0 .34.11.34.33 0 .22-.113.33-.34.33h-8.398c-.226 0-.34-.11-.34-.33 0-.22.114-.33.34-.33h8.398ZM18.07 13.373c.228 0 .341.11.341.33 0 .22-.113.33-.34.33H7.745c-.114.111-.34-.11-.34-.33 0-.22.113-.33.34-.33H18.07ZM6.61 14.144c.227 0 .34-.11.34-.33 0-.22-.113-.441-.34-.441-.227 0-.34.22-.34.33 0 .11.113.441.34.441ZM15.915 12.161c.227 0 .34.11.34.33 0 .22-.113.331-.34.331H5.589c-.114 0-.34-.11-.34-.33 0-.22.113-.331.34-.331h10.326ZM4.34 12.822c.227 0 .34-.11.34-.33 0-.22-.113-.331-.34-.331-.227 0-.34.11-.34.33 0 .22.113.331.34.331ZM6.61 11.5c.227 0 .34-.11.34-.33 0-.22-.113-.331-.34-.331-.227 0-.34.22-.34.33 0 .22.113.331.34.331ZM19.092 10.839c.227 0 .34.11.34.33 0 .22-.113.331-.34.331H7.858c-.227 0-.34-.11-.34-.33 0-.22.113-.331.34-.331h11.234Z'
/>
</g>
</g>
<defs>
<clipPath id='glmr-a'>
<path fill='#fff' d='M0 0h24v24H0z' />
</clipPath>
<clipPath id='glmr-b'>
<path fill='#fff' d='M4 5h16v13H4z' />
</clipPath>
</defs>
</svg>
</Icon>
));

GLMR.displayName = 'GLMR';

export { GLMR };
25 changes: 25 additions & 0 deletions src/component-library/CoinIcon/icons/TBTC.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { forwardRef } from 'react';

import { Icon, IconProps } from '@/component-library/Icon';

const TBTC = forwardRef<SVGSVGElement, IconProps>((props, ref) => (
<Icon {...props} ref={ref} viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'>
<title>TBTC</title>
<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'>
<path
fill='#000'
stroke='#000'
d='M22.5 12c0 5.799-4.701 10.5-10.5 10.5S1.5 17.799 1.5 12 6.201 1.5 12 1.5 22.5 6.201 22.5 12Z'
/>
<path fill='#fff' d='M10.177 11.078H8.335v1.842h1.842v-1.842ZM8.334 9.236H6.492v1.842h1.842V9.236Z' />
<path
fill='#fff'
d='M6.493 11.078H4.65v1.842h1.842v-1.842ZM8.334 12.92H6.492v1.842h1.842V12.92ZM18.805 9.633c-.13-1.355-1.3-1.81-2.776-1.94v-.867h-1.143v.818c-.3 0-.608.006-.913.012v-.83H12.83v.867c-.248.004-1.768.003-1.768.003l-.004 1.008.954.005v6.608h-.954l-.008.994c.277 0 1.51.005 1.777.007v.856h1.143v-.836c.313.007.617.01.913.01v.826h1.144v-.852c1.923-.11 3.27-.594 3.437-2.399.135-1.454-.548-2.102-1.64-2.366.663-.34 1.077-.933.98-1.924Zm-1.602 4.063c0 1.42-2.432 1.258-3.208 1.258v-2.518c.776 0 3.207-.221 3.208 1.26Zm-.53-3.553c0 1.292-2.03 1.14-2.676 1.14V9c.647 0 2.676-.205 2.675 1.143Z'
/>
</svg>
</Icon>
));

TBTC.displayName = 'TBTC';

export { TBTC };
29 changes: 29 additions & 0 deletions src/component-library/CoinIcon/icons/USDC.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import { forwardRef } from 'react';

import { Icon, IconProps } from '@/component-library/Icon';

const USDC = forwardRef<SVGSVGElement, IconProps>((props, ref) => (
<Icon {...props} ref={ref} viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'>
<title>USDC</title>
<g clipPath='url(#usdc-a)'>
<path fill='#2775CA' d='M12 24c6.65 0 12-5.35 12-12S18.65 0 12 0 0 5.35 0 12s5.35 12 12 12Z' />
<path
fill='#fff'
d='M15.3 13.9c0-1.75-1.05-2.35-3.15-2.6-1.5-.2-1.8-.6-1.8-1.3 0-.7.5-1.15 1.5-1.15.9 0 1.4.3 1.65 1.05.05.15.2.25.35.25h.8c.2 0 .35-.15.35-.35v-.05c-.2-1.1-1.1-1.95-2.25-2.05V6.5c0-.2-.15-.35-.4-.4h-.75c-.2 0-.35.15-.4.4v1.15c-1.5.2-2.45 1.2-2.45 2.45 0 1.65 1 2.3 3.1 2.55 1.4.25 1.85.55 1.85 1.35s-.7 1.35-1.65 1.35c-1.3 0-1.75-.55-1.9-1.3-.05-.2-.2-.3-.35-.3h-.85c-.2 0-.35.15-.35.35v.05c.2 1.25 1 2.15 2.65 2.4v1.2c0 .2.15.35.4.4h.75c.2 0 .35-.15.4-.4v-1.2c1.5-.25 2.5-1.3 2.5-2.65Z'
/>
<path
fill='#fff'
d='M9.45 19.15c-3.9-1.4-5.9-5.75-4.45-9.6.75-2.1 2.4-3.7 4.45-4.45.2-.1.3-.25.3-.5v-.7c0-.2-.1-.35-.3-.4-.05 0-.15 0-.2.05C4.5 5.05 1.9 10.1 3.4 14.85c.9 2.8 3.05 4.95 5.85 5.85.2.1.4 0 .45-.2.05-.05.05-.1.05-.2v-.7c0-.15-.15-.35-.3-.45Zm5.3-15.6c-.2-.1-.4 0-.45.2-.05.05-.05.1-.05.2v.7c0 .2.15.4.3.5 3.9 1.4 5.9 5.75 4.45 9.6-.75 2.1-2.4 3.7-4.45 4.45-.2.1-.3.25-.3.5v.7c0 .2.1.35.3.4.05 0 .15 0 .2-.05 4.75-1.5 7.35-6.55 5.85-11.3-.9-2.85-3.1-5-5.85-5.9Z'
/>
</g>
<defs>
<clipPath id='usdc-a'>
<path fill='#fff' d='M0 0h24v24H0z' />
</clipPath>
</defs>
</Icon>
));

USDC.displayName = 'USDC';

export { USDC };
54 changes: 54 additions & 0 deletions src/component-library/CoinIcon/icons/VDOT.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
import { forwardRef } from 'react';

import { Icon, IconProps } from '@/component-library/Icon';

const VDOT = forwardRef<SVGSVGElement, IconProps>((props, ref) => (
<Icon {...props} ref={ref} viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'>
<title>VDOT</title>
<g clipPath='url(#vdot-a)'>
<path
fill='#fff'
d='M24 12.244C24 5.778 18.627.536 12 .536S0 5.778 0 12.244C0 18.709 5.373 23.95 12 23.95s12-5.242 12-11.707Z'
/>
<path
fill='#E6007A'
fillRule='evenodd'
d='M14.794 6.18c0 .894-1.278 1.619-2.854 1.619-1.575 0-2.853-.725-2.853-1.62 0-.893 1.278-1.618 2.854-1.618 1.575 0 2.853.725 2.853 1.619Zm0 12.2c0 .893-1.278 1.618-2.854 1.618-1.575 0-2.853-.725-2.853-1.619s1.278-1.619 2.854-1.619c1.575 0 2.853.725 2.853 1.62Zm-6.83-8.34c.788-1.331.783-2.773-.011-3.22-.795-.448-2.077.268-2.865 1.6-.788 1.331-.783 2.773.011 3.22.794.448 2.077-.269 2.865-1.6Zm10.818 2.879c.793.447.798 1.888.01 3.22-.788 1.332-2.07 2.048-2.864 1.601-.794-.447-.798-1.889-.01-3.22.788-1.332 2.07-2.048 2.864-1.601Zm-10.829 4.82c.794-.447.8-1.889.011-3.22-.787-1.332-2.07-2.048-2.864-1.6-.795.447-.8 1.889-.012 3.22.788 1.332 2.07 2.048 2.865 1.6Zm10.84-9.318c.788 1.331.783 2.773-.01 3.22-.794.447-2.077-.27-2.865-1.601-.787-1.332-.783-2.773.01-3.22.795-.448 2.077.27 2.865 1.6Z'
clipRule='evenodd'
/>
<path
stroke='url(#vdot-b)'
d='M22.75 12.244c0 5.774-4.801 10.475-10.75 10.475S1.25 18.018 1.25 12.244 6.051 1.768 12 1.768 22.75 6.47 22.75 12.244Z'
/>
<path fill='url(#vdot-c)' stroke='#fff' d='M18.5 23.5a5 5 0 1 0 0-10 5 5 0 0 0 0 10Z' />
<path
fill='#fff'
d='m18.454 20.945-2.404-3.52c-.13-.192.01-.45.246-.45h1.069c.096 0 .185.046.24.122l.854 1.171a.3.3 0 0 0 .482 0l.853-1.171a.298.298 0 0 1 .241-.121h1.069c.236 0 .377.257.246.448l-2.404 3.52a.3.3 0 0 1-.492 0Z'
/>
</g>
<defs>
<linearGradient id='vdot-b' x1='12' x2='12' y1='.536' y2='23.951' gradientUnits='userSpaceOnUse'>
<stop stopColor='#7AEDCF' />
<stop offset='.201' stopColor='#68CEFA' />
<stop offset='.403' stopColor='#689CF8' />
<stop offset='.602' stopColor='#AC57C0' />
<stop offset='.802' stopColor='#E65659' />
<stop offset='1' stopColor='#F2C241' />
</linearGradient>
<linearGradient id='vdot-c' x1='17.938' x2='17.938' y1='23' y2='14' gradientUnits='userSpaceOnUse'>
<stop stopColor='#fff' />
<stop offset='0' stopColor='#F1B744' />
<stop offset='.302' stopColor='#D65777' />
<stop offset='.563' stopColor='#69B4FA' />
<stop offset='1' stopColor='#79EBD3' />
</linearGradient>
<clipPath id='vdot-a'>
<path fill='#fff' d='M0 0h24v24H0z' />
</clipPath>
</defs>
</Icon>
));

VDOT.displayName = 'VDOT';

export { VDOT };
Loading

1 comment on commit 88e5af6

@vercel
Copy link

@vercel vercel bot commented on 88e5af6 Sep 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.