various fixes (#785)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* 🐛 fix build

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* post update hotfixes (#580)

* fix: fixed showing 0 on farm page if no desposited vaults

* fix: chnage USDC’s name to Noble

* v2.0.1 (#579) (#582)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* v2.0.1 (#579) (#583)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* Asset select overflow (#584)

* v2.0.1 (#579)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* 🐛 fix build

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* 🐛 fix build

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* post update hotfixes (#580)

* fix: fixed showing 0 on farm page if no desposited vaults

* fix: chnage USDC’s name to Noble

* v2.0.1 (#579) (#582)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* v2.0.1 (#579) (#583)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* fix: fixed the asset select overflow

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* fix: fixed the AccountDetails position

* fix: update

* Hotfixes v2.0.1 (#581) (#585)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





* post update hotfixes (#580)

* fix: fixed showing 0 on farm page if no desposited vaults

* fix: chnage USDC’s name to Noble

* v2.0.1 (#579) (#582)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------





* v2.0.1 (#579) (#583)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------





* Asset select overflow (#584)

* v2.0.1 (#579)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------





* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* post update hotfixes (#580)

* fix: fixed showing 0 on farm page if no desposited vaults

* fix: chnage USDC’s name to Noble

* v2.0.1 (#579) (#582)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------





* v2.0.1 (#579) (#583)

* Build(deps): bump @splinetool/runtime from 0.9.477 to 0.9.482 (#544)

Bumps @splinetool/runtime from 0.9.477 to 0.9.482.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...




* Build(deps-dev): bump @types/node from 20.7.0 to 20.8.6 (#548)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.7.0 to 20.8.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...




* Build(deps): bump @sentry/nextjs from 7.73.0 to 7.74.0 (#545)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.73.0 to 7.74.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.73.0...7.74.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




* Mp 3245 usehlsvaults hook (#541)

*  routing and pages for HLS

*  create hooks for fetching HLS vaults and Strategies

* Share accounts (#539)

* feat: do not redirect to wallet on portfolio page

* fix: use connected wallet for AccountMenu

* fix: fixed ghost AccountDetails

* feat: created ShareBar and share functionality

* fix: don’t show shareBar if no address is present

* fix: stupid 'next/navigation'

* tidy: format

* fix: fixed tests

*  routing and pages for HLS (#538)

* 🐛 use useAccountIds

* fix: fixed the tests

* fix: accountIds is now a suspense

---------



* 🐛 fix build

---------



* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* added hatched health masks (#552)

* added hatched health masks

* Mp 2837 pre commit hook (#549)

* MP-2837: added husys and lint-staged

* MP-2837: enabled lint-staged

* MP-2837: setup .prettierignore

* MP-2837: setup .prettierignore

* MP-3483: all Depo. Caps are now % filled (#551)

* MP-3487: changed the copy of the bridging intro screen (#553)

* MP-3482: replaced Max LTV with Max. Leverage (#550)

* sneak: change filled to used

* fix: fixed the foregroundColor on increase and my ocd

* ♻️ refactor table (Farm) (#555)

* ♻️ refactor table (Farm)

* 🧽 clean up PR

* 🧽 clean up PR

* Build(deps): bump @babel/traverse from 7.21.2 to 7.23.2 (#554)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.2 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...




* fix: rename withdraw to unlend (#557)

* Full refactor tables (#556)

* 📈 Improve structure generic Table component

* ♻️ Update Borrow Table and overall structure of Table comp

* ♻️ Update Lend table

*  add loading state for lend table

* 🧪 Fix unit tests

*  Add available HLS Vaults page (#558)

* Table updates (#559)

* fix: adjusted table colors and hover interactions

* fix: added actionButtons back and changed lend to APY

* fix: build update

* tidy: fixed the CircularProgress indicators on the loading  modals

* fix: relative import

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* Mp 3480 persist last trading pair (#578)

* MP-3480: remove favourite asset and prepare localStore

* env: updated shuttle, keplr and version (#566)

* fix: fixed dust left when trying to buy max amount without leverage (#565)

* feat: added squidrouter to the bridges (#561)

* feat: added squidrouter to the bridges

* fix: copy update

* MP-3521: updated the APR calculation (#572)

* Table fixes (#563)

* fix: fixed the sorting of the tables

* fix: added sorting functions

* fix: farm sorting for deposit cap

* fix: fixed Row types

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.5 to 0.5.6 (#567)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...




* Build(deps): bump react-router-dom from 6.16.0 to 6.17.0 (#571)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.17.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...




*  HLS: Add info modal (#573)

* MP-3484: remember summaryAccount tabs and auto expand both (#574)

* User feedback (#575)

* feat: added debt indicator and adjusted the borrowModal

* fix: wallet interaction fix

* Add usdc noble (#576)

* env: added USDC.n

* env: updated usdc noble variables

* fix: fixed the pool on USDC for devnet purposes

* 🐛 Fix initial status of chart (#577)

* MP-3480: persist trading pair

* fix: updated according to feedback

* fix:  remove pair from Trading View header

---------





---------





* fix: fixed the asset select overflow

---------





* fix: fixed the AccountDetails position

* fix: update

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: prevent permanent account updates by trade page (#587)

* fix: keep the selected accountId if its present int the url (#588)

* Link changelog (#589)

* env: update RPC endpoint

* feat: added changelog link to the footer version

* Refactor balances table (#590)

* env: update env.example after last sync

* tidy: refactored AccountBalancesTable

* fix: updated isCard to hideCard

* fix: do update the health on sliding the margin back to 0 (#593)

* fix: disable highlighting on non-expandable rows (#592)

* Healthfactor adjustments (#594)

* fix: do update the health on sliding the margin back to 0

* MP-3531: first updates on the health bars

* fix: added exponential function for health percentage

* fix: build fix

* tidy: refactor

* tidy: cleanup

* feat: added new curve

* fix: base set to 3.5

* env: version update

* 🌟 Add HLS Vault Modal (#595)

* 🌟 Add HLS Vault Modal

* 🛠️ Fix failing build

* fix: keep the selected accountId if its present int the url (#588)

* Link changelog (#589)

* env: update RPC endpoint

* feat: added changelog link to the footer version

* Refactor balances table (#590)

* env: update env.example after last sync

* tidy: refactored AccountBalancesTable

* fix: updated isCard to hideCard

* fix: do update the health on sliding the margin back to 0 (#593)

* fix: disable highlighting on non-expandable rows (#592)

* Healthfactor adjustments (#594)

* fix: do update the health on sliding the margin back to 0

* MP-3531: first updates on the health bars

* fix: added exponential function for health percentage

* fix: build fix

* tidy: refactor

* tidy: cleanup

* feat: added new curve

* fix: base set to 3.5

* env: version update

* 🌟 Add HLS Vault Modal

* Use `DisplayCurrency` in subtitle header

* 🔥Remove redundant component

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* fix: if HF > 1 and health === 0, return health 1 (#601)

* MP-3540: added liquidity warning (#605)

* Oracle update button (#606)

* feat: added a resync button to the header

* fix: updated the text

* fix: remove pulsing

* fix: fixed the checkbox not being clickable after select (#608)

* Mp 3360 create vault position (#607)

* 🔧 Small fixes

*  Deposit into HLS Vault + Groudnwork for HLS Staking

* Adjusted according to feedback

* Adjusted according to feedback

* Build(deps-dev): bump eslint-config-next from 13.5.4 to 14.0.0 (#599)

Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 13.5.4 to 14.0.0.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/commits/v14.0.0/packages/eslint-config-next)

---
updated-dependencies:
- dependency-name: eslint-config-next
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump recharts from 2.8.0 to 2.9.0 (#598)

Bumps [recharts](https://github.com/recharts/recharts) from 2.8.0 to 2.9.0.
- [Release notes](https://github.com/recharts/recharts/releases)
- [Changelog](https://github.com/recharts/recharts/blob/master/CHANGELOG.md)
- [Commits](https://github.com/recharts/recharts/compare/v2.8.0...v2.9.0)

---
updated-dependencies:
- dependency-name: recharts
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react from 18.2.28 to 18.2.33 (#596)

Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.28 to 18.2.33.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump crypto-js from 4.1.1 to 4.2.0 (#591)

Bumps [crypto-js](https://github.com/brix/crypto-js) from 4.1.1 to 4.2.0.
- [Commits](https://github.com/brix/crypto-js/compare/4.1.1...4.2.0)

---
updated-dependencies:
- dependency-name: crypto-js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/lodash.throttle from 4.1.7 to 4.1.8 (#569)

Bumps [@types/lodash.throttle](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash.throttle) from 4.1.7 to 4.1.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash.throttle)

---
updated-dependencies:
- dependency-name: "@types/lodash.throttle"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: waiting for script to be ready (#609)

* fix: show a loading state of the trading chart (#610)

* fix: show a loading state of the trading chart

* tidy: refactor

* Feedback implementation (#611)

* env: update wallet volnurabilities

* fix: always render TradingChart container

* fix: amounts can be a fraction of MIN_AMOUNT

* feat: added clickaway handler

* tidy: refactor

* fix: size below 0.00001 is possible for BTC and WETH

* fix: fixed tests

* Mp 3367 staking interactions (#613)

* ♻️ Refactor borrowRate to be in full numbers

* Enter into HLS Staking strategy

* HLS Staking deposited table + Portfolio pages

* tidy: refactored the masks for HealthBar

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Added dropdown button (#614)

* Add basic modal for HLS staking (#615)

* Hls staking manage actions (#622)

* Add basic modal for HLS staking

* UI components for Manage

* All Manage actions (except change lev)

* 🐛hls intro icons + checkbox, hide repay when no debt, clickable dropdown

* fix build

* Pyth history feed (#623)

* MP-3556: first PythDataFeed class

* fix: fixed the timestamp

* fix: fixed the chart data

* fix: fixed the prices

* fix: fixed the math and decimal scale

* tidy: refactor

* fix: update the pythFeedId

* fix: updated OsmosisTheGraphDataFeed

* fix: add a fallback for non pyth data

* tidy: refactor

* fix: adjusted to feedback

* Tia and stosmo (#627)

* feat: listed TIA and stOSMO

* fix: fixed USDC

* tidy: refactor the token logos

* Hls leverage (#628)

* Add basic modal for HLS staking

* UI components for Manage

* All Manage actions (except change lev)

* 🐛hls intro icons + checkbox, hide repay when no debt, clickable dropdown

* fix build

* finish all actiosn for HLS staking

* 🐛clean up tooltip props

* tidy: updated the token logos (#629)

* tidy: updated the token logos

* feat: added dydx

* hotfix: quickfix for Trade

* fix: inverted the charts

* fix: fixed the chart description

* fix: assets

* Build(deps): bump @keplr-wallet/cosmos from 0.12.39 to 0.12.42 (#634)

Bumps @keplr-wallet/cosmos from 0.12.39 to 0.12.42.

---
updated-dependencies:
- dependency-name: "@keplr-wallet/cosmos"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Borrow Rate to APY (#632)

* fix: changed Borrow Rate to Borrow Rate APY

* fix: regarding feedback

* Auto repay on trade (#631)

* fix: fixed the trading chart load

* fix: prevent wrapped checkboxes to be double clicked

* fix: refactored funding account modal

* fix: fixed modal classes

* fix: adjusted width classes

* fix: fixed updating states

* tidy: format

* fix: fixed the slider masks

* fix: fixed the slider masks

* listed: TIA and USDT

* fix: fixed the slider initial position

* env: version update

* fix: fixed priceFeedIds

* Hls latest (#637)

* env: enable HLS

* feat: added background and orb fading

* tidy: updated the token logos (#629)

* tidy: updated the token logos

* feat: added dydx

* fix: increase load spead of trading charts

* feat: first version of the UI shift

* Deployment for HLS testing

*  add APY to HLS staking

*  add APY account overview and summary

* fix: fixed the intro component visibility

*  add warning messages HLS

* fix: menu order

*  implement live APRs

* auto-select first account, add no balance message

* enable tabs for hls, fix net APY for deposit

* fix button for hls, sorting apy and console warnings

* disable feature flag HLS

* fix slider

* update routing

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Build(deps): bump postcss from 8.4.23 to 8.4.31 (#624)

Bumps [postcss](https://github.com/postcss/postcss) from 8.4.23 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.23...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump zustand from 4.4.3 to 4.4.6 (#621)

Bumps [zustand](https://github.com/pmndrs/zustand) from 4.4.3 to 4.4.6.
- [Release notes](https://github.com/pmndrs/zustand/releases)
- [Commits](https://github.com/pmndrs/zustand/compare/v4.4.3...v4.4.6)

---
updated-dependencies:
- dependency-name: zustand
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.74.0 to 7.77.0 (#625)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.74.0 to 7.77.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.74.0...7.77.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react-dom from 18.2.13 to 18.2.15 (#633)

Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.13 to 18.2.15.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump eslint from 8.51.0 to 8.53.0 (#620)

Bumps [eslint](https://github.com/eslint/eslint) from 8.51.0 to 8.53.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.51.0...v8.53.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump eslint-plugin-import from 2.28.1 to 2.29.0 (#617)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.28.1 to 2.29.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.28.1...v2.29.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* MP-3564: added navigation dropdown and Governance NavLink (#639)

* MP-2887: added ICNS and ICP support (#638)

* MP-2887: added ICNS and ICP support

:

* fix: removed unessecary package

* Build(deps): bump recharts from 2.9.0 to 2.10.1 (#640)

Bumps [recharts](https://github.com/recharts/recharts) from 2.9.0 to 2.10.1.
- [Release notes](https://github.com/recharts/recharts/releases)
- [Changelog](https://github.com/recharts/recharts/blob/master/CHANGELOG.md)
- [Commits](https://github.com/recharts/recharts/compare/v2.9.0...v2.10.1)

---
updated-dependencies:
- dependency-name: recharts
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump eslint from 8.53.0 to 8.54.0 (#641)

Bumps [eslint](https://github.com/eslint/eslint) from 8.53.0 to 8.54.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.53.0...v8.54.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react-helmet from 6.1.7 to 6.1.9 (#642)

Bumps [@types/react-helmet](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-helmet) from 6.1.7 to 6.1.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-helmet)

---
updated-dependencies:
- dependency-name: "@types/react-helmet"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/lodash.debounce from 4.0.7 to 4.0.9 (#643)

Bumps [@types/lodash.debounce](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash.debounce) from 4.0.7 to 4.0.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash.debounce)

---
updated-dependencies:
- dependency-name: "@types/lodash.debounce"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update HC for Margin trade and HLS (#645)

* Update HC for Margin trade and HLS

* fix relative imports

* fix: added clickaway handler and fixed z-index issues (#646)

* v2.0.6 and use feature flag for auto repay (#650)

* 🐛incorrect deposit cap utilization (#647)

* Initialize perps (#648)

* setup routing

* add basic perps interface

* small fix

* feat: listed dydx and AKT (#652)

* Deposit Cap and Utilization Fix (#654)

* fix: fixed the deposit cap and total supplied / utilization rate

* fix: fixed build

* fix: fixed build

* fix: avoid deposit cap usage over 100%

* refactor market data apy/ltv

* fix: fixed the withdraw from vaults modal

* tidy: refactor

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* stATOM and stOSMO TradingView support (#653)

* feat: listed dydx and AKT

* fix: removed theGraph support for now

* finish adding liquidation price (#649)

* finish adding liquidation price

* fix minor issues

* v2.0.6 and use feature flag for auto repay (#650)

* 🐛incorrect deposit cap utilization (#647)

* Initialize perps (#648)

* setup routing

* add basic perps interface

* small fix

* feat: listed dydx and AKT (#652)

* Deposit Cap and Utilization Fix (#654)

* fix: fixed the deposit cap and total supplied / utilization rate

* fix: fixed build

* fix: fixed build

* fix: avoid deposit cap usage over 100%

* refactor market data apy/ltv

* fix: fixed the withdraw from vaults modal

* tidy: refactor

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* stATOM and stOSMO TradingView support (#653)

* feat: listed dydx and AKT

* fix: removed theGraph support for now

* adjust liq price loading and null/0 values

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Auto Lend Switch (#660)

* refactor: moved the autolend logic to the switch

* tidy: update default value

* adjust logic of auto-lend for switch component

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* temp: remove liquidation price (#661)

* Revert "temp: remove liquidation price (#661)" (#663)

This reverts commit 0cba668c82.

* 🐛 fix liquidation price (#664)

* Hls text fixes (#667)

* 🐛 incorrect vault values calc

* 🐛 incorrect message for no balance in wallet hls

* 🐛 hls message on keep leverage

* update to correct wasm files

* update to correct wasm files

* v2.1.0 (#669)

* Repay from Wallet (#673)

* feat: added repay from wallet

* tidy: refactor

* UX/UI finetuning (#672)

* feat: added Buy/Sell token ratio to the TradingView header

* fix: changed the order in the trading view description

* feat: added minute timeframe to the chart

* fix: changed WBTC to WBTC/USD pyth price feed

* fix: adjusted HLS health curve

* fix: made HLS accounts unselectable

* copy: changed the APY range and Strategy text

* tidy: fix the tables layout to be more readable

* fix: change the precision of the Trading chart header

* feat: added summary collapsable

* fix: removed Debt Column for active HLS positions

* fix: added Memo to TVChart

* fix: adjust Trade page layout

* tidy: refactor table meta

* fix: DisplayCurrency is able to take options now

* tidy: remove unneeded typesafety

* fix: adjusted according feedback

* env: enabled autoRepay and updated version

* fix: auto-repay

* fix: disable lend on auto repay on trade

* tidy: refactor

* feat: make USDC the standard secondary asset (for trade) (#681)

* Add usePerpsMarket hook and adjust routing (#680)

* Add usePerpsMarket hook and adjust routing

* fix: enable 7 links in the header

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Liq price in balances (#679)

* add liquidation price to balances table trade

* add depositcap to HLS

* fix: add width classes to the balances table, remove abbreviation, remove flicker

* fix: fixed the account selection and added a tooltip

* fix wasm file for debt liquidation price

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* added sharp (#682)

* env: added sharp

* fix: use dvh over vh

* add cache for asset params (#683)

* Build(deps): bump @sentry/nextjs from 7.77.0 to 7.84.0 (#677)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.77.0 to 7.84.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.77.0...7.84.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @splinetool/runtime from 0.9.482 to 0.9.516 (#676)

Bumps @splinetool/runtime from 0.9.482 to 0.9.516.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react from 18.2.33 to 18.2.41 (#675)

Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 18.2.33 to 18.2.41.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-helmet-async from 1.3.0 to 2.0.3 (#674)

Bumps [react-helmet-async](https://github.com/staylor/react-helmet-async) from 1.3.0 to 2.0.3.
- [Release notes](https://github.com/staylor/react-helmet-async/releases)
- [Commits](https://github.com/staylor/react-helmet-async/commits)

---
updated-dependencies:
- dependency-name: react-helmet-async
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @adobe/css-tools from 4.3.1 to 4.3.2 (#671)

Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.3.1 to 4.3.2.
- [Changelog](https://github.com/adobe/css-tools/blob/main/History.md)
- [Commits](https://github.com/adobe/css-tools/commits)

---
updated-dependencies:
- dependency-name: "@adobe/css-tools"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/debounce-promise from 3.1.7 to 3.1.9 (#659)

Bumps [@types/debounce-promise](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/debounce-promise) from 3.1.7 to 3.1.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/debounce-promise)

---
updated-dependencies:
- dependency-name: "@types/debounce-promise"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Simple spot trading (#684)

* env: added sharp

* fix: use dvh over vh

* feat: prepared the trade view for perps and spot

* fix: adjusted heights for Trade

* feat: added Navigation submenu

* feat: added first interface itteration

* feat: added logic

* feat: added pairsList

* feat: finished Trade Spot Simple

* fix: fixed Sell button

* fix: adjusted capLeft logic and added sorting util

* fix: order of values

* fix: fixed the autoLend switch to be deselectable

* env: bump version

* fix: changes according to feedback

* fix: fixed naming

* tidy: refactor

* fix: set default stable to USDC.axl

* Build(deps): bump @splinetool/runtime from 0.9.516 to 0.9.521 (#690)

Bumps @splinetool/runtime from 0.9.516 to 0.9.521.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump eslint-config-next from 14.0.0 to 14.0.4 (#687)

Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 14.0.0 to 14.0.4.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/commits/v14.0.4/packages/eslint-config-next)

---
updated-dependencies:
- dependency-name: eslint-config-next
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react-helmet from 6.1.9 to 6.1.11 (#688)

Bumps [@types/react-helmet](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-helmet) from 6.1.9 to 6.1.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-helmet)

---
updated-dependencies:
- dependency-name: "@types/react-helmet"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump lint-staged from 15.0.1 to 15.2.0 (#689)

Bumps [lint-staged](https://github.com/okonet/lint-staged) from 15.0.1 to 15.2.0.
- [Release notes](https://github.com/okonet/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/master/CHANGELOG.md)
- [Commits](https://github.com/okonet/lint-staged/compare/v15.0.1...v15.2.0)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: fixed deposit cap being negative

* add execute message page (#694)

* fix negative deposit cap, make trade pair selected button (#695)

* fix: fixed the swap message for multihop swaps (#701)

* fix: fixed the swap message for multihop swaps

* fix: according to feedback

* feat: added PYTH logo to the trade chart (#705)

* Added chain agnostic v2 (#710)

* update assets config and chains

* make clients dynamic

* feat: formatted ChainSelect

* fix infinite rerender on trade page

* feat: added NTRN icon

* fix: fixed ChainInfoID

* fix: fixed autoLendEnabled for NTRN

* fix: fixed the navigation and dependencies

* fix: fixed the pricefeed id

* fix: fixed the header menu

* fix: fixed the trading charts

* fix: fixed the healthbars

* fix: fixed naming of pion-1

* feast: updated xdefi image

* env: updated contracts

* make localStorage chain agnostic

* fix: made the selected chain persistant

* fix: fixed the wallet providers

* fix: updated auto connect

* fix: fixed auto connecting

* fix: added ChainSelect to focusMode

* store raw strings in localstorage

* 🔥 remnove tests

* update caching keys + disconnect wallet on change chain

* fix: fixed the chain select

* env: bumped version

---------

Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>

* Build(deps): bump zustand from 4.4.6 to 4.4.7 (#699)

Bumps [zustand](https://github.com/pmndrs/zustand) from 4.4.6 to 4.4.7.
- [Release notes](https://github.com/pmndrs/zustand/releases)
- [Commits](https://github.com/pmndrs/zustand/compare/v4.4.6...v4.4.7)

---
updated-dependencies:
- dependency-name: zustand
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/node from 20.8.6 to 20.10.6 (#707)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.8.6 to 20.10.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.84.0 to 7.91.0 (#704)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.84.0 to 7.91.0.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.84.0...7.91.0)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Perp queries (#711)

* update assets config and chains

* make clients dynamic

* feat: formatted ChainSelect

* fix infinite rerender on trade page

* feat: added NTRN icon

* fix: fixed ChainInfoID

* fix: fixed autoLendEnabled for NTRN

* fix: fixed the navigation and dependencies

* fix: fixed the pricefeed id

* fix: fixed the header menu

* fix: fixed the trading charts

* fix: fixed the healthbars

* fix: fixed naming of pion-1

* feast: updated xdefi image

* env: updated contracts

* make localStorage chain agnostic

* fix: made the selected chain persistant

* fix: fixed the wallet providers

* fix: updated auto connect

* fix: fixed auto connecting

* fix: added ChainSelect to focusMode

* store raw strings in localstorage

* 🔥 remnove tests

* update caching keys + disconnect wallet on change chain

* update contract types and add perps asset select overlay

* fix build + add perps positions to accounts

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Perp queries (#712)

* update assets config and chains

* make clients dynamic

* feat: formatted ChainSelect

* fix infinite rerender on trade page

* feat: added NTRN icon

* fix: fixed ChainInfoID

* fix: fixed autoLendEnabled for NTRN

* fix: fixed the navigation and dependencies

* fix: fixed the pricefeed id

* fix: fixed the header menu

* fix: fixed the trading charts

* fix: fixed the healthbars

* fix: fixed naming of pion-1

* feast: updated xdefi image

* env: updated contracts

* make localStorage chain agnostic

* fix: made the selected chain persistant

* fix: fixed the wallet providers

* fix: updated auto connect

* fix: fixed auto connecting

* fix: added ChainSelect to focusMode

* store raw strings in localstorage

* 🔥 remnove tests

* update caching keys + disconnect wallet on change chain

* update contract types and add perps asset select overlay

* fix build + add perps positions to accounts

* fix healthcomputer errors

* fix healthcomputer errors

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Cleanup env variables (#713)

* fix: cleaned up env variables and disabled chain selector if there is only one chain

* env: update .env.example

* Add perps balances table (#714)

* Add perps balances table

* fix: updated svg

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* fix: fixed unlend on withdraw with borrow (#720)

* fix: fixed unlend on withdraw with borrow

* fix: fixed the logic

* fix: lending on funding

* Extend perps (#721)

* Build(deps): bump @cosmjs/cosmwasm-stargate from 0.31.1 to 0.32.2 (#719)

Bumps [@cosmjs/cosmwasm-stargate](https://github.com/cosmos/cosmjs) from 0.31.1 to 0.32.2.
- [Changelog](https://github.com/cosmos/cosmjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmjs/compare/v0.31.1...v0.32.2)

---
updated-dependencies:
- dependency-name: "@cosmjs/cosmwasm-stargate"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Build(deps-dev): bump eslint from 8.54.0 to 8.56.0 (#715)

Bumps [eslint](https://github.com/eslint/eslint) from 8.54.0 to 8.56.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.54.0...v8.56.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Build(deps): bump sharp from 0.33.0 to 0.33.1 (#717)

Bumps [sharp](https://github.com/lovell/sharp) from 0.33.0 to 0.33.1.
- [Release notes](https://github.com/lovell/sharp/releases)
- [Changelog](https://github.com/lovell/sharp/blob/main/docs/changelog.md)
- [Commits](https://github.com/lovell/sharp/compare/v0.33.0...v0.33.1)

---
updated-dependencies:
- dependency-name: sharp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* Build(deps): bump follow-redirects from 1.15.2 to 1.15.4 (#722)

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Pyth price fetching (#723)

* env: remove testing library

* fix: use pyth over oracle

* fix: fix the endpoints

* fix: fix build

* tidy: refactor

* fix: fixed account fetching

* fix: made all queries chain agnostic

* fix: fixed the chart position

* fix swap fee for osmosis (#725)

* Websocket implementation (#726)

* feat: first steps

* feat: added websocket support and set the TradingChart to USD

* fix: oracle staleness button

* fix: set the background to solid and overide backgroundGradient settings (#727)

* Edit perps position (#728)

* add functional funding rate + selector (#729)

* add functional funding rate + selector

* Edit perps position (#728)

* refactor components folder (#734)

* refactor components folder

* create leverage slider variants

* Deposit cap highlighting (#735)

* feat: added depositCap highlighting

* feat: added depositCap highlighting

* Custom Pyth Endpoint & Price Data on Tx's (#736)

* env: remove testing library

* fix: use pyth over oracle

* fix: fix the endpoints

* fix: fix build

* tidy: refactor

* fix: fixed account fetching

* fix: made all queries chain agnostic

* fix: fixed the chart position

* feat: added basic auth

* fix: added env validation

* fix: added ‘no-cors’ and included credentials

* fix: removed ‘no-cors’ mode

* fix: change the isLessThanACent logic

* tidy: console log

* fix: added fallback api

* feat: progress on pythVaas

* fix: getting prices

* fix: try catch

* feat: add pythPriceData to transactions based on setting

* fix: disable Pyth Update when user uses Ledger

* tidy: copy

* Miscellaneous (#737)

* fix: sorted assets by value

* tidy: refactored AssetsSelectTable

* fix: fixed the multipleVaultWithdraw Modal

* change labels for leverage slider (#738)

* Build(deps): bump sharp from 0.33.1 to 0.33.2 (#731)

Bumps [sharp](https://github.com/lovell/sharp) from 0.33.1 to 0.33.2.
- [Release notes](https://github.com/lovell/sharp/releases)
- [Changelog](https://github.com/lovell/sharp/blob/main/docs/changelog.md)
- [Commits](https://github.com/lovell/sharp/compare/v0.33.1...v0.33.2)

---
updated-dependencies:
- dependency-name: sharp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: added external links and marked them accordingly (#740)

* Build(deps-dev): bump prettier from 3.0.3 to 3.2.4 (#741)

Bumps [prettier](https://github.com/prettier/prettier) from 3.0.3 to 3.2.4.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.0.3...3.2.4)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @sentry/nextjs from 7.91.0 to 7.94.1 (#743)

Bumps [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) from 7.91.0 to 7.94.1.
- [Release notes](https://github.com/getsentry/sentry-javascript/releases)
- [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-javascript/compare/7.91.0...7.94.1)

---
updated-dependencies:
- dependency-name: "@sentry/nextjs"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump react-router-dom from 6.17.0 to 6.21.3 (#744)

Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.17.0 to 6.21.3.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.21.3/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* add hooks to fetch route (#739)

* add hooks to fetch route

* add missing routes endpoint for pion1

* feat: created AccountPerpsPositions for the AccountDetails component (#745)

* feat: created AccountPerpsPositions for the AccountDetails component

* fix: type fixing

* feat: added ToolTip

* tidy: refactor

* fix: added unrealized PnL placeholder

* tidy: finetune on the border color

* fix: fixed tables

* fix: adjustments according to feedback

* fix: fixed lent assets table

* fix: fixed typing

* refactor: streamline size to amount

* tidy: remove console.log

* fixed refetchgin of account data (#747)

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* fix: fixed merge issues

* fix: hide Perp Positions on Osmosis

* tidy: refactor

* Moved Markets data to SWR (#749)

* Build(deps-dev): bump prettier-plugin-tailwindcss from 0.5.6 to 0.5.11 (#751)

Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.5.6 to 0.5.11.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.6...v0.5.11)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump autoprefixer from 10.4.16 to 10.4.17 (#753)

Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.16 to 10.4.17.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.16...10.4.17)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump eslint-plugin-import from 2.29.0 to 2.29.1 (#752)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.29.0 to 2.29.1.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.29.0...v2.29.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump dotenv from 16.3.1 to 16.4.1 (#754)

Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.3.1 to 16.4.1.
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v16.3.1...v16.4.1)

---
updated-dependencies:
- dependency-name: dotenv
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* fix: replaces the store with useChainConfig (#755)

* Withdraw and fund fix (#756)

* fix: fixed markets.find(byDenom())

* fix: fixed the account Summary in modals

* fix: fixed the withdraw lent assets logic

* Perps account preview (#750)

* fix: fixed the Liquidation Price inside the TradeSummary

* feat: added account preview

* tidy: refactor

* feat: added HLS intro

* fix: closing the wallet select focusComponent

* fix: added perps position update to edit as well

* fix: fix update perp

* fix: fail catch

* fix: implemented suggest changes

* tidy: fix

* fix: unfix

* fix: created helper function

* tidy: console.log

* Mp 2182 convert api folder to swr hooks (#758)

* moved api/openingFee to hook

* moved api/icns and api/balances to hooks

* moved api/assetIncentivesApy to hooks

* moved api/incentives to hooks

* fix relative import

* List milkTIA (#757)

* tidy: update svgs

* feat: list milkTIA

* env: updated the version

* fix: fixed null return of RedBank

* fix: useMarketEnabledAssets

* fix: fixed merge errors

* fix: fixed the useSWR key for vaults

* update osmosis nodes to Rhino (#762)

* perps: remove modify module and adjust main module (#761)

* perps: remove modify module and adjust main module

* fix build

* Build(deps): bump react-toastify from 9.1.3 to 10.0.4 (#764)

Bumps [react-toastify](https://github.com/fkhadra/react-toastify) from 9.1.3 to 10.0.4.
- [Release notes](https://github.com/fkhadra/react-toastify/releases)
- [Commits](https://github.com/fkhadra/react-toastify/compare/v9.1.3...v10.0.4)

---
updated-dependencies:
- dependency-name: react-toastify
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @tanstack/react-table from 8.11.7 to 8.11.8 (#765)

Bumps [@tanstack/react-table](https://github.com/TanStack/table/tree/HEAD/packages/react-table) from 8.11.7 to 8.11.8.
- [Release notes](https://github.com/TanStack/table/releases)
- [Commits](https://github.com/TanStack/table/commits/v8.11.8/packages/react-table)

---
updated-dependencies:
- dependency-name: "@tanstack/react-table"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps): bump @splinetool/runtime from 0.9.526 to 1.0.47 (#766)

Bumps @splinetool/runtime from 0.9.526 to 1.0.47.

---
updated-dependencies:
- dependency-name: "@splinetool/runtime"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump @types/react-dom from 18.2.15 to 18.2.18 (#767)

Bumps [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 18.2.15 to 18.2.18.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

---
updated-dependencies:
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Build(deps-dev): bump typescript from 5.2.2 to 5.3.3 (#768)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.2.2 to 5.3.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.2.2...v5.3.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: use the chartView LocalStore to load the last set resolution (#769)

* fix: fixed favorite asset select (#770)

* Morph summary (#763)

* fix: fixed mobile issues with SVGs

* feat: first morphing AccountDetails

* tidy: composition refresh

* tidy: fine adjusting

* fix: svg fixes

* feat: updated summary structure

* feat: overall layout adjustments

* fix: fixed svg adjustments

* feat: finished AccountSummary update

* fix: fixed build

* tidy: refactor

* fix: fix enourmous APYs

* fix: don’t abbreviate APYs

* tidy: console.log

* fix: fix borrow Rate sorting

* fix: fixed scrollbars

* fix: hide scrollbars

* fix: resolved feedback

* fix: amount not size

* feat: only show credit account number outside of modals

* fix: added missing Strategies to PortfolioAccount

* fix: save some space

* feat: preperations for open sourcing the repo (#771)

* feat: preperations for open sourcing the repo

* fix: don’t use an apikey if there is none set

* fix: fixed a dependency

* fix: filled the empty space below collapsed content (#773)

* fix: filled the empty space below collapsed content

* fix: fixed timings

* Mp 2193 pnl breakdown (#775)

* perps: add additional pnl info

* perps: make realized / unrealized coins

* vault: separate aprs (#777)

* fix: update account health on modal close (#776)

* fix: fixed a dependency

* feat: split perps into active and non active positions (#780)

* perps: modify perps, update contracts, interest, realized profits (#783)

* feat: debounce input sliders (#784)

* feat: debounce input sliders

* fix: fixed the debounce function

* Mp 2227 assetselect search (#782)

* feat: split perps into active and non active positions

* fix: fixed the search of assets selector

* fix: according to feedback

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bob van der Helm <34470358+bobthebuidlr@users.noreply.github.com>
This commit is contained in:
Linkie Link 2024-02-09 08:50:23 +01:00 committed by GitHub
parent a1d5e10758
commit 3505b9d10f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
30 changed files with 930 additions and 616 deletions

View File

@ -24,6 +24,7 @@ interface Props {
onClose: () => void onClose: () => void
onChange: (value: BigNumber) => void onChange: (value: BigNumber) => void
onAction: (value: BigNumber, isMax: boolean) => void onAction: (value: BigNumber, isMax: boolean) => void
onDebounce: () => void
} }
export default function AssetAmountSelectActionModal(props: Props) { export default function AssetAmountSelectActionModal(props: Props) {
@ -36,6 +37,7 @@ export default function AssetAmountSelectActionModal(props: Props) {
onClose, onClose,
onChange, onChange,
onAction, onAction,
onDebounce,
} = props } = props
const [amount, setAmount] = useState(BN_ZERO) const [amount, setAmount] = useState(BN_ZERO)
const maxAmount = BN(coinBalances.find(byDenom(asset.denom))?.amount ?? 0) const maxAmount = BN(coinBalances.find(byDenom(asset.denom))?.amount ?? 0)
@ -74,6 +76,7 @@ export default function AssetAmountSelectActionModal(props: Props) {
<TokenInputWithSlider <TokenInputWithSlider
asset={asset} asset={asset}
onChange={handleAmountChange} onChange={handleAmountChange}
onDebounce={onDebounce}
amount={amount} amount={amount}
max={maxAmount} max={maxAmount}
hasSelect hasSelect

View File

@ -1,8 +1,8 @@
import BigNumber from 'bignumber.js' import BigNumber from 'bignumber.js'
import { useCallback, useEffect, useMemo, useState } from 'react' import { useCallback, useEffect, useMemo, useState } from 'react'
import AccountSummary from 'components/account/AccountSummary' import Modal from 'components/Modals/Modal'
import AssetImage from 'components/common/assets/AssetImage' import AccountSummaryInModal from 'components/account/AccountSummary/AccountSummaryInModal'
import Button from 'components/common/Button' import Button from 'components/common/Button'
import Card from 'components/common/Card' import Card from 'components/common/Card'
import DisplayCurrency from 'components/common/DisplayCurrency' import DisplayCurrency from 'components/common/DisplayCurrency'
@ -13,7 +13,7 @@ import Switch from 'components/common/Switch'
import Text from 'components/common/Text' import Text from 'components/common/Text'
import TitleAndSubCell from 'components/common/TitleAndSubCell' import TitleAndSubCell from 'components/common/TitleAndSubCell'
import TokenInputWithSlider from 'components/common/TokenInput/TokenInputWithSlider' import TokenInputWithSlider from 'components/common/TokenInput/TokenInputWithSlider'
import Modal from 'components/Modals/Modal' import AssetImage from 'components/common/assets/AssetImage'
import { BN_ZERO } from 'constants/math' import { BN_ZERO } from 'constants/math'
import useCurrentAccount from 'hooks/accounts/useCurrentAccount' import useCurrentAccount from 'hooks/accounts/useCurrentAccount'
import useMarkets from 'hooks/markets/useMarkets' import useMarkets from 'hooks/markets/useMarkets'
@ -29,7 +29,6 @@ import { byDenom } from 'utils/array'
import { formatPercent } from 'utils/formatters' import { formatPercent } from 'utils/formatters'
import { BN } from 'utils/helpers' import { BN } from 'utils/helpers'
import { getDebtAmountWithInterest } from 'utils/tokens' import { getDebtAmountWithInterest } from 'utils/tokens'
import AccountSummaryInModal from 'components/account/AccountSummary/AccountSummaryInModal'
interface Props { interface Props {
account: Account account: Account
@ -92,6 +91,7 @@ function BorrowModal(props: Props) {
const isAutoLendEnabled = autoLendEnabledAccountIds.includes(account.id) const isAutoLendEnabled = autoLendEnabledAccountIds.includes(account.id)
const { computeMaxBorrowAmount } = useHealthComputer(account) const { computeMaxBorrowAmount } = useHealthComputer(account)
const totalDebt = BN(getDebtAmount(modal)) const totalDebt = BN(getDebtAmount(modal))
const accountDebt = account.debts.find(byDenom(asset.denom))?.amount ?? BN_ZERO
const markets = useMarkets() const markets = useMarkets()
const [depositBalance, lendBalance] = useMemo( const [depositBalance, lendBalance] = useMemo(
@ -102,34 +102,34 @@ function BorrowModal(props: Props) {
[account, asset.denom], [account, asset.denom],
) )
const totalDebtRepayAmount = useMemo( const accountDebtWithInterest = useMemo(
() => getDebtAmountWithInterest(totalDebt, apy), () => getDebtAmountWithInterest(accountDebt, apy),
[totalDebt, apy], [accountDebt, apy],
) )
const overpayExeedsCap = useMemo(() => { const overpayExeedsCap = useMemo(() => {
const marketAsset = markets.find((market) => market.asset.denom === asset.denom) const marketAsset = markets.find((market) => market.asset.denom === asset.denom)
if (!marketAsset) return if (!marketAsset) return
const overpayAmount = totalDebtRepayAmount.minus(totalDebt) const overpayAmount = accountDebtWithInterest.minus(accountDebt)
const marketCapAfterOverpay = marketAsset.cap.used.plus(overpayAmount) const marketCapAfterOverpay = marketAsset.cap.used.plus(overpayAmount)
return marketAsset.cap.max.isLessThanOrEqualTo(marketCapAfterOverpay) return marketAsset.cap.max.isLessThanOrEqualTo(marketCapAfterOverpay)
}, [markets, asset.denom, totalDebt, totalDebtRepayAmount]) }, [markets, asset.denom, accountDebt, accountDebtWithInterest])
const maxRepayAmount = useMemo(() => { const maxRepayAmount = useMemo(() => {
const maxBalance = repayFromWallet const maxBalance = repayFromWallet
? BN(walletBalances.find(byDenom(asset.denom))?.amount ?? 0) ? BN(walletBalances.find(byDenom(asset.denom))?.amount ?? 0)
: depositBalance.plus(lendBalance) : depositBalance.plus(lendBalance)
return isRepay return isRepay
? BigNumber.min(maxBalance, overpayExeedsCap ? totalDebt : totalDebtRepayAmount) ? BigNumber.min(maxBalance, overpayExeedsCap ? accountDebt : accountDebtWithInterest)
: BN_ZERO : BN_ZERO
}, [ }, [
depositBalance, depositBalance,
lendBalance, lendBalance,
isRepay, isRepay,
totalDebtRepayAmount, accountDebtWithInterest,
overpayExeedsCap, overpayExeedsCap,
totalDebt, accountDebt,
walletBalances, walletBalances,
asset.denom, asset.denom,
repayFromWallet, repayFromWallet,
@ -149,7 +149,7 @@ function BorrowModal(props: Props) {
repay({ repay({
accountId: account.id, accountId: account.id,
coin: BNCoin.fromDenomAndBigNumber(asset.denom, amount), coin: BNCoin.fromDenomAndBigNumber(asset.denom, amount),
accountBalance: amount.isEqualTo(totalDebtRepayAmount), accountBalance: amount.isEqualTo(accountDebtWithInterest),
lend: repayFromWallet ? BNCoin.fromDenomAndBigNumber(asset.denom, BN_ZERO) : lend, lend: repayFromWallet ? BNCoin.fromDenomAndBigNumber(asset.denom, BN_ZERO) : lend,
fromWallet: repayFromWallet, fromWallet: repayFromWallet,
}) })
@ -172,17 +172,39 @@ function BorrowModal(props: Props) {
const handleChange = useCallback( const handleChange = useCallback(
(newAmount: BigNumber) => { (newAmount: BigNumber) => {
const coin = BNCoin.fromDenomAndBigNumber(asset.denom, newAmount)
if (!amount.isEqualTo(newAmount)) setAmount(newAmount) if (!amount.isEqualTo(newAmount)) setAmount(newAmount)
if (!isRepay) return
const repayCoin = coin.amount.isGreaterThan(totalDebt)
? BNCoin.fromDenomAndBigNumber(asset.denom, totalDebt)
: coin
simulateRepay(repayCoin, repayFromWallet)
}, },
[amount, asset.denom, isRepay, simulateRepay, totalDebt, repayFromWallet], [amount, setAmount],
) )
const onDebounce = useCallback(() => {
if (isRepay) {
const repayCoin = BNCoin.fromDenomAndBigNumber(
asset.denom,
amount.isGreaterThan(accountDebt) ? accountDebt : amount,
)
simulateRepay(repayCoin, repayFromWallet)
} else {
const borrowCoin = BNCoin.fromDenomAndBigNumber(
asset.denom,
amount.isGreaterThan(max) ? max : amount,
)
const target = borrowToWallet ? 'wallet' : isAutoLendEnabled ? 'lend' : 'deposit'
simulateBorrow(target, borrowCoin)
}
}, [
amount,
isRepay,
repayFromWallet,
maxRepayAmount,
max,
asset,
borrowToWallet,
isAutoLendEnabled,
simulateBorrow,
simulateRepay,
])
const maxBorrow = useMemo(() => { const maxBorrow = useMemo(() => {
const maxBorrowAmount = isRepay const maxBorrowAmount = isRepay
? BN_ZERO ? BN_ZERO
@ -209,13 +231,6 @@ function BorrowModal(props: Props) {
setAmount(max) setAmount(max)
}, [amount, max, handleChange]) }, [amount, max, handleChange])
useEffect(() => {
if (isRepay) return
const coin = BNCoin.fromDenomAndBigNumber(asset.denom, amount.isGreaterThan(max) ? max : amount)
const target = borrowToWallet ? 'wallet' : isAutoLendEnabled ? 'lend' : 'deposit'
simulateBorrow(target, coin)
}, [isRepay, borrowToWallet, isAutoLendEnabled, simulateBorrow, asset, amount, max])
if (!modal || !asset) return null if (!modal || !asset) return null
return ( return (
<Modal <Modal
@ -257,7 +272,7 @@ function BorrowModal(props: Props) {
/> />
</div> </div>
<Text size='xs' className='text-white/50' tag='span'> <Text size='xs' className='text-white/50' tag='span'>
Borrowed Total Borrowed
</Text> </Text>
</div> </div>
</> </>
@ -294,6 +309,7 @@ function BorrowModal(props: Props) {
<TokenInputWithSlider <TokenInputWithSlider
asset={asset} asset={asset}
onChange={handleChange} onChange={handleChange}
onDebounce={onDebounce}
amount={amount} amount={amount}
max={max} max={max}
disabled={max.isZero()} disabled={max.isZero()}

View File

@ -1,5 +1,5 @@
import BigNumber from 'bignumber.js' import BigNumber from 'bignumber.js'
import { useEffect, useState } from 'react' import { useCallback, useState } from 'react'
import Button from 'components/common/Button' import Button from 'components/common/Button'
import Divider from 'components/common/Divider' import Divider from 'components/common/Divider'
@ -86,17 +86,10 @@ export default function WithdrawFromAccount(props: Props) {
useStore.setState({ fundAndWithdrawModal: null }) useStore.setState({ fundAndWithdrawModal: null })
} }
useEffect(() => { const onDebounce = useCallback(() => {
const coin = BNCoin.fromDenomAndBigNumber(currentAsset.denom, withdrawAmount.plus(debtAmount)) const coin = BNCoin.fromDenomAndBigNumber(currentAsset.denom, withdrawAmount.plus(debtAmount))
simulateWithdraw(withdrawWithBorrowing, coin) simulateWithdraw(withdrawWithBorrowing, coin)
}, [ }, [withdrawWithBorrowing, currentAsset.denom, debtAmount, simulateWithdraw, withdrawAmount])
amount,
withdrawWithBorrowing,
currentAsset.denom,
debtAmount,
simulateWithdraw,
withdrawAmount,
])
return ( return (
<> <>
@ -104,6 +97,7 @@ export default function WithdrawFromAccount(props: Props) {
<TokenInputWithSlider <TokenInputWithSlider
asset={currentAsset} asset={currentAsset}
onChange={onChangeAmount} onChange={onChangeAmount}
onDebounce={onDebounce}
onChangeAsset={(asset) => { onChangeAsset={(asset) => {
setAmount(BN_ZERO) setAmount(BN_ZERO)
setWithdrawWithBorrowing(false) setWithdrawWithBorrowing(false)

View File

@ -1,4 +1,4 @@
import { useCallback } from 'react' import { useCallback, useState } from 'react'
import AssetAmountSelectActionModal from 'components/Modals/AssetAmountSelectActionModal' import AssetAmountSelectActionModal from 'components/Modals/AssetAmountSelectActionModal'
import DetailsHeader from 'components/Modals/LendAndReclaim/DetailsHeader' import DetailsHeader from 'components/Modals/LendAndReclaim/DetailsHeader'
@ -27,6 +27,7 @@ function LendAndReclaimModal({ currentAccount, config }: Props) {
const reclaim = useStore((s) => s.reclaim) const reclaim = useStore((s) => s.reclaim)
const { close } = useLendAndReclaimModal() const { close } = useLendAndReclaimModal()
const { simulateLending } = useUpdatedAccount(currentAccount) const { simulateLending } = useUpdatedAccount(currentAccount)
const [coin, setCoin] = useState<BNCoin>()
const { data, action } = config const { data, action } = config
const { asset } = data const { asset } = data
@ -37,12 +38,16 @@ function LendAndReclaimModal({ currentAccount, config }: Props) {
const handleAmountChange = useCallback( const handleAmountChange = useCallback(
(value: BigNumber) => { (value: BigNumber) => {
const coin = BNCoin.fromDenomAndBigNumber(asset.denom, value) setCoin(BNCoin.fromDenomAndBigNumber(asset.denom, value))
simulateLending(isLendAction, coin)
}, },
[asset.denom, isLendAction, simulateLending], [asset.denom],
) )
const onDebounce = useCallback(() => {
if (!coin) return
simulateLending(isLendAction, coin)
}, [coin, isLendAction, simulateLending])
const handleAction = useCallback( const handleAction = useCallback(
(value: BigNumber, isMax: boolean) => { (value: BigNumber, isMax: boolean) => {
const coin = BNCoin.fromDenomAndBigNumber(asset.denom, value) const coin = BNCoin.fromDenomAndBigNumber(asset.denom, value)
@ -70,6 +75,7 @@ function LendAndReclaimModal({ currentAccount, config }: Props) {
onClose={close} onClose={close}
onAction={handleAction} onAction={handleAction}
onChange={handleAmountChange} onChange={handleAmountChange}
onDebounce={onDebounce}
/> />
) )
} }

View File

@ -95,10 +95,6 @@ export default function AccountFundContent(props: Props) {
} }
}, [baseBalance]) }, [baseBalance])
useEffect(() => {
simulateDeposits(isLending ? 'lend' : 'deposit', fundingAssets)
}, [isLending, fundingAssets, simulateDeposits])
useEffect(() => { useEffect(() => {
const currentSelectedDenom = fundingAssets.map((asset) => asset.denom) const currentSelectedDenom = fundingAssets.map((asset) => asset.denom)
@ -125,6 +121,10 @@ export default function AccountFundContent(props: Props) {
}) })
}, []) }, [])
const onDebounce = useCallback(() => {
simulateDeposits(isLending ? 'lend' : 'deposit', fundingAssets)
}, [isLending, fundingAssets, simulateDeposits])
const depositCapReachedCoins = useMemo(() => { const depositCapReachedCoins = useMemo(() => {
const depositCapReachedCoins: BNCoin[] = [] const depositCapReachedCoins: BNCoin[] = []
fundingAssets.forEach((asset) => { fundingAssets.forEach((asset) => {
@ -159,6 +159,7 @@ export default function AccountFundContent(props: Props) {
amount={coin.amount ?? BN_ZERO} amount={coin.amount ?? BN_ZERO}
isConfirming={isConfirming} isConfirming={isConfirming}
updateFundingAssets={updateFundingAssets} updateFundingAssets={updateFundingAssets}
onDebounce={onDebounce}
/> />
</div> </div>
) )

View File

@ -10,6 +10,7 @@ interface Props {
denom: string denom: string
isConfirming: boolean isConfirming: boolean
updateFundingAssets: (amount: BigNumber, denom: string) => void updateFundingAssets: (amount: BigNumber, denom: string) => void
onDebounce: () => void
} }
export default function AccountFundRow(props: Props) { export default function AccountFundRow(props: Props) {
@ -23,6 +24,7 @@ export default function AccountFundRow(props: Props) {
<TokenInputWithSlider <TokenInputWithSlider
asset={asset} asset={asset}
onChange={(amount) => props.updateFundingAssets(amount, asset.denom)} onChange={(amount) => props.updateFundingAssets(amount, asset.denom)}
onDebounce={props.onDebounce}
amount={props.amount} amount={props.amount}
max={balance} max={balance}
balances={props.balances} balances={props.balances}

View File

@ -84,11 +84,11 @@ export default function AccountSummary(props: Props) {
hlsStrategies, hlsStrategies,
assets, assets,
vaultAprs, vaultAprs,
props.account.kind === 'high_levered_strategy', account.kind === 'high_levered_strategy',
), ),
[ [
account,
updatedAccount, updatedAccount,
props.account,
borrowAssetsData, borrowAssetsData,
lendingAssetsData, lendingAssetsData,
prices, prices,

View File

@ -11,7 +11,7 @@ interface Props {
} }
export default function BorrowActionButtons(props: Props) { export default function BorrowActionButtons(props: Props) {
const { asset, debt } = props.data const { asset, accountDebt } = props.data
const marketAssets = useMarketEnabledAssets() const marketAssets = useMarketEnabledAssets()
const currentAsset = marketAssets.find((a) => a.denom === asset.denom) const currentAsset = marketAssets.find((a) => a.denom === asset.denom)
@ -33,10 +33,10 @@ export default function BorrowActionButtons(props: Props) {
leftIcon={<Plus className='w-3' />} leftIcon={<Plus className='w-3' />}
onClick={borrowHandler} onClick={borrowHandler}
color='secondary' color='secondary'
text={debt ? 'Borrow more' : 'Borrow'} text={accountDebt ? 'Borrow more' : 'Borrow'}
className='min-w-40 text-center' className='text-center min-w-40'
/> />
{debt && ( {accountDebt && (
<Button color='tertiary' leftIcon={<HandCoins />} text='Repay' onClick={repayHandler} /> <Button color='tertiary' leftIcon={<HandCoins />} text='Repay' onClick={repayHandler} />
)} )}
</div> </div>

View File

@ -16,7 +16,7 @@ export default function DropDownButton(props: Props) {
content={<DropDown closeMenu={() => toggleIsOpen(false)} {...props} />} content={<DropDown closeMenu={() => toggleIsOpen(false)} {...props} />}
type='info' type='info'
placement='bottom' placement='bottom'
contentClassName='!bg-white/10 border border-white/20 backdrop-blur-xl !p-0' contentClassName='!bg-white/10 backdrop-blur-xl !p-0'
interactive interactive
hideArrow hideArrow
visible={isOpen} visible={isOpen}

View File

@ -1,5 +1,6 @@
import classNames from 'classnames' import classNames from 'classnames'
import { ChangeEvent, useCallback } from 'react' import debounce from 'lodash.debounce'
import { ChangeEvent, useCallback, useMemo } from 'react'
import InputOverlay from 'components/common/LeverageSlider/InputOverlay' import InputOverlay from 'components/common/LeverageSlider/InputOverlay'
@ -13,20 +14,41 @@ type Props = {
marginThreshold?: number marginThreshold?: number
wrapperClassName?: string wrapperClassName?: string
onChange: (value: number) => void onChange: (value: number) => void
onDebounce?: () => void
onBlur?: () => void onBlur?: () => void
type: LeverageSliderType type: LeverageSliderType
} }
export type LeverageSliderType = 'margin' | 'long' | 'short' export type LeverageSliderType = 'margin' | 'long' | 'short'
function LeverageSlider(props: Props) { function LeverageSlider(props: Props) {
const { value, max, onChange, wrapperClassName, disabled, marginThreshold, onBlur, type } = props const {
value,
max,
onChange,
wrapperClassName,
disabled,
marginThreshold,
onBlur,
type,
onDebounce,
} = props
const min = props.min ?? 0 const min = props.min ?? 0
const debounceFunction = useMemo(
() =>
debounce(() => {
if (!onDebounce) return
onDebounce()
}, 250),
[onDebounce],
)
const handleOnChange = useCallback( const handleOnChange = useCallback(
(event: ChangeEvent<HTMLInputElement>) => { (event: ChangeEvent<HTMLInputElement>) => {
onChange(parseFloat(event.target.value)) onChange(parseFloat(event.target.value))
debounceFunction()
}, },
[onChange], [onChange, debounceFunction],
) )
const markPosPercent = 100 / (max / (marginThreshold ?? 1)) const markPosPercent = 100 / (max / (marginThreshold ?? 1))

View File

@ -1,4 +1,5 @@
import classNames from 'classnames' import classNames from 'classnames'
import debounce from 'lodash.debounce'
import { ChangeEvent, useCallback, useEffect, useMemo, useRef, useState } from 'react' import { ChangeEvent, useCallback, useEffect, useMemo, useRef, useState } from 'react'
import Draggable from 'react-draggable' import Draggable from 'react-draggable'
@ -19,6 +20,7 @@ const colors = {
type Props = { type Props = {
value: number value: number
onChange: (value: number) => void onChange: (value: number) => void
onDebounce?: () => void
leverage?: { leverage?: {
current: number current: number
max: number max: number
@ -28,6 +30,7 @@ type Props = {
} }
export default function Slider(props: Props) { export default function Slider(props: Props) {
const { value, onChange, onDebounce, leverage, className, disabled } = props
const [showTooltip, setShowTooltip] = useToggle() const [showTooltip, setShowTooltip] = useToggle()
const [sliderRect, setSliderRect] = useState({ width: 0, left: 0, right: 0 }) const [sliderRect, setSliderRect] = useState({ width: 0, left: 0, right: 0 })
const ref = useRef<HTMLDivElement>(null) const ref = useRef<HTMLDivElement>(null)
@ -52,6 +55,20 @@ export default function Slider(props: Props) {
} }
}, [sliderRect.left, sliderRect.right, sliderRect.width]) }, [sliderRect.left, sliderRect.right, sliderRect.width])
const debounceFunction = useMemo(
() =>
debounce(() => {
if (!onDebounce) return
onDebounce()
}, 250),
[onDebounce],
)
function handleOnChange(value: number) {
onChange(value)
debounceFunction()
}
function handleDrag(e: any) { function handleDrag(e: any) {
if (!isDragging) { if (!isDragging) {
setIsDragging(true) setIsDragging(true)
@ -60,24 +77,24 @@ export default function Slider(props: Props) {
const current: number = e.clientX const current: number = e.clientX
if (current < sliderRect.left) { if (current < sliderRect.left) {
props.onChange(0) handleOnChange(0)
return return
} }
if (current > sliderRect.right) { if (current > sliderRect.right) {
props.onChange(100) handleOnChange(100)
return return
} }
const value = Math.round(((current - sliderRect.left) / sliderRect.width) * 100) const currentValue = Math.round(((current - sliderRect.left) / sliderRect.width) * 100)
if (value !== props.value) { if (currentValue !== value) {
props.onChange(value) handleOnChange(currentValue)
} }
} }
function handleSliderClick(e: ChangeEvent<HTMLInputElement>) { function handleSliderClick(e: ChangeEvent<HTMLInputElement>) {
props.onChange(Number(e.target.value)) handleOnChange(Number(e.target.value))
} }
function handleShowTooltip() { function handleShowTooltip() {
@ -89,21 +106,22 @@ export default function Slider(props: Props) {
} }
function getActiveIndex() { function getActiveIndex() {
if (props.value >= 100) return '5' if (value >= 100) return '5'
if (props.value >= 75) return '4' if (value >= 75) return '4'
if (props.value >= 50) return '3' if (value >= 50) return '3'
if (props.value >= 25) return '2' if (value >= 25) return '2'
return '1' return '1'
} }
const DraggableElement: any = Draggable const DraggableElement: any = Draggable
const [positionOffset, position] = useMemo(() => { const [positionOffset, position] = useMemo(() => {
debounceFunction()
return [ return [
{ x: (props.value / 100) * -12, y: 0 }, { x: (value / 100) * -12, y: 0 },
{ x: (sliderRect.width / 100) * props.value, y: -2 }, { x: (sliderRect.width / 100) * value, y: -2 },
] ]
}, [props.value, sliderRect.width]) }, [value, sliderRect.width])
useEffect(() => { useEffect(() => {
handleSliderRect() handleSliderRect()
@ -115,60 +133,60 @@ export default function Slider(props: Props) {
ref={ref} ref={ref}
className={classNames( className={classNames(
'relative min-h-3 w-full transition-opacity', 'relative min-h-3 w-full transition-opacity',
props.className, className,
props.disabled && 'pointer-events-none', disabled && 'pointer-events-none',
)} )}
onMouseEnter={handleSliderRect} onMouseEnter={handleSliderRect}
> >
<input <input
type='range' type='range'
value={props.value} value={value}
onChange={handleSliderClick} onChange={handleSliderClick}
onMouseDown={handleShowTooltip} onMouseDown={handleShowTooltip}
className='absolute z-2 w-full hover:cursor-pointer appearance-none bg-transparent [&::-webkit-slider-thumb]:h-3 [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:appearance-none' className='absolute z-2 w-full hover:cursor-pointer appearance-none bg-transparent [&::-webkit-slider-thumb]:h-3 [&::-webkit-slider-thumb]:w-3 [&::-webkit-slider-thumb]:appearance-none'
/> />
<div className='absolute flex items-center w-full gap-1.5'> <div className='absolute flex items-center w-full gap-1.5'>
<Mark <Mark
onClick={props.onChange} onClick={() => handleOnChange(0)}
value={0} value={0}
sliderValue={props.value} sliderValue={value}
disabled={props.disabled} disabled={disabled}
style={{ backgroundColor: colors['1'] }} style={{ backgroundColor: colors['1'] }}
/> />
<Track maxValue={23} sliderValue={props.value} bg='before:gradient-slider-1' /> <Track maxValue={23} sliderValue={value} bg='before:gradient-slider-1' />
<Mark <Mark
onClick={props.onChange} onClick={() => handleOnChange(25)}
value={25} value={25}
sliderValue={props.value} sliderValue={value}
disabled={props.disabled} disabled={disabled}
style={{ backgroundColor: colors['2'] }} style={{ backgroundColor: colors['2'] }}
/> />
<Track maxValue={48} sliderValue={props.value} bg='before:gradient-slider-2' /> <Track maxValue={48} sliderValue={value} bg='before:gradient-slider-2' />
<Mark <Mark
onClick={props.onChange} onClick={() => handleOnChange(50)}
value={50} value={50}
sliderValue={props.value} sliderValue={value}
disabled={props.disabled} disabled={disabled}
style={{ backgroundColor: colors['3'] }} style={{ backgroundColor: colors['3'] }}
/> />
<Track maxValue={73} sliderValue={props.value} bg='before:gradient-slider-3' /> <Track maxValue={73} sliderValue={value} bg='before:gradient-slider-3' />
<Mark <Mark
onClick={props.onChange} onClick={() => handleOnChange(75)}
value={75} value={75}
sliderValue={props.value} sliderValue={value}
disabled={props.disabled} disabled={disabled}
style={{ backgroundColor: colors['4'] }} style={{ backgroundColor: colors['4'] }}
/> />
<Track maxValue={98} sliderValue={props.value} bg='before:gradient-slider-4' /> <Track maxValue={98} sliderValue={value} bg='before:gradient-slider-4' />
<Mark <Mark
onClick={props.onChange} onClick={() => handleOnChange(100)}
value={100} value={100}
sliderValue={props.value} sliderValue={value}
disabled={props.disabled} disabled={disabled}
style={{ backgroundColor: colors['5'] }} style={{ backgroundColor: colors['5'] }}
/> />
</div> </div>
{!props.disabled && ( {!disabled && (
<div onMouseEnter={handleShowTooltip} onMouseLeave={handleHideTooltip}> <div onMouseEnter={handleShowTooltip} onMouseLeave={handleHideTooltip}>
<DraggableElement <DraggableElement
nodeRef={nodeRef} nodeRef={nodeRef}
@ -187,12 +205,12 @@ export default function Slider(props: Props) {
)} )}
style={{ background: colors[getActiveIndex()] }} style={{ background: colors[getActiveIndex()] }}
/> />
{props.leverage ? ( {leverage ? (
<div className='pt-2.5'> <div className='pt-2.5'>
<LeverageLabel <LeverageLabel
leverage={props.leverage.current} leverage={leverage.current}
decimals={1} decimals={1}
className={props.leverage.current >= 10 ? '-translate-x-2' : '-translate-x-1'} className={leverage.current >= 10 ? '-translate-x-2' : '-translate-x-1'}
/> />
</div> </div>
) : ( ) : (
@ -203,7 +221,7 @@ export default function Slider(props: Props) {
'absolute h-2 -translate-x-1/2 -bottom-2 left-1/2 -z-1 text-fuchsia', 'absolute h-2 -translate-x-1/2 -bottom-2 left-1/2 -z-1 text-fuchsia',
)} )}
/> />
{props.value.toFixed(0)}% {value.toFixed(0)}%
</div> </div>
) )
)} )}
@ -212,19 +230,19 @@ export default function Slider(props: Props) {
</div> </div>
)} )}
</div> </div>
{props.leverage && ( {leverage && (
<div className='flex justify-between pt-2'> <div className='flex justify-between pt-2'>
<LeverageLabel <LeverageLabel
leverage={1} leverage={1}
decimals={0} decimals={0}
className='-translate-x-0.5' className='-translate-x-0.5'
style={{ opacity: props.value < 5 ? 0 : 1 }} style={{ opacity: value < 5 ? 0 : 1 }}
/> />
<LeverageLabel <LeverageLabel
leverage={props.leverage.max || 1} leverage={leverage.max || 1}
decimals={0} decimals={0}
className='translate-x-1.5' className='translate-x-1.5'
style={{ opacity: props.value > 95 ? 0 : 1 }} style={{ opacity: value > 95 ? 0 : 1 }}
/> />
</div> </div>
)} )}

View File

@ -12,6 +12,7 @@ interface Props {
asset: Asset asset: Asset
max: BigNumber max: BigNumber
onChange: (amount: BigNumber) => void onChange: (amount: BigNumber) => void
onDebounce?: () => void
accountId?: string accountId?: string
balances?: BNCoin[] balances?: BNCoin[]
className?: string className?: string
@ -37,6 +38,11 @@ export default function TokenInputWithSlider(props: Props) {
props.onChange(newAmount) props.onChange(newAmount)
} }
function onDebounce() {
if (!props.onDebounce) return
props.onDebounce()
}
function onChangeAmount(newAmount: BigNumber) { function onChangeAmount(newAmount: BigNumber) {
setAmount(newAmount) setAmount(newAmount)
setPercentage(BN(newAmount).dividedBy(props.max).multipliedBy(100).toNumber()) setPercentage(BN(newAmount).dividedBy(props.max).multipliedBy(100).toNumber())
@ -76,6 +82,7 @@ export default function TokenInputWithSlider(props: Props) {
<Slider <Slider
value={percentage || 0} value={percentage || 0}
onChange={(value) => onChangeSlider(value)} onChange={(value) => onChangeSlider(value)}
onDebounce={onDebounce}
disabled={props.disabled} disabled={props.disabled}
leverage={props.leverage} leverage={props.leverage}
/> />

View File

@ -1,3 +1,4 @@
import { Row } from '@tanstack/react-table'
import { useMemo } from 'react' import { useMemo } from 'react'
import { FormattedNumber } from 'components/common/FormattedNumber' import { FormattedNumber } from 'components/common/FormattedNumber'
@ -18,6 +19,10 @@ export const SIZE_META = {
), ),
} }
export const sizeSortingFn = (a: Row<PerpPositionRow>, b: Row<PerpPositionRow>): number => {
return a.original.amount.abs().minus(b.original.amount.abs()).toNumber()
}
type Props = { type Props = {
amount: BigNumber amount: BigNumber
asset: Asset asset: Asset
@ -27,7 +32,7 @@ export default function Size(props: Props) {
const price = usePrice(props.asset.denom) const price = usePrice(props.asset.denom)
const amount = useMemo( const amount = useMemo(
() => demagnify(props.amount.toString(), props.asset), () => demagnify(props.amount.abs().toString(), props.asset),
[props.asset, props.amount], [props.asset, props.amount],
) )
const value = useMemo(() => price.times(amount).toNumber(), [amount, price]) const value = useMemo(() => price.times(amount).toNumber(), [amount, price])

View File

@ -6,7 +6,7 @@ import Leverage, { LEVERAGE_META } from 'components/perps/BalancesTable/Columns/
import Manage, { MANAGE_META } from 'components/perps/BalancesTable/Columns/Manage' import Manage, { MANAGE_META } from 'components/perps/BalancesTable/Columns/Manage'
import { PERP_NAME_META, PerpName } from 'components/perps/BalancesTable/Columns/PerpName' import { PERP_NAME_META, PerpName } from 'components/perps/BalancesTable/Columns/PerpName'
import PnL, { PNL_META } from 'components/perps/BalancesTable/Columns/PnL' import PnL, { PNL_META } from 'components/perps/BalancesTable/Columns/PnL'
import Size, { SIZE_META } from 'components/perps/BalancesTable/Columns/Size' import Size, { SIZE_META, sizeSortingFn } from 'components/perps/BalancesTable/Columns/Size'
import TradeDirection, { import TradeDirection, {
PERP_TYPE_META, PERP_TYPE_META,
} from 'components/perps/BalancesTable/Columns/TradeDirection' } from 'components/perps/BalancesTable/Columns/TradeDirection'
@ -25,6 +25,7 @@ export default function usePerpsBalancesTable() {
{ {
...SIZE_META, ...SIZE_META,
cell: ({ row }) => <Size amount={row.original.amount} asset={row.original.asset} />, cell: ({ row }) => <Size amount={row.original.amount} asset={row.original.asset} />,
sortingFn: sizeSortingFn,
}, },
{ {
...LEVERAGE_META, ...LEVERAGE_META,

View File

@ -61,6 +61,10 @@ export function PerpsModule() {
previousTradeDirection, previousTradeDirection,
]) ])
const onDebounce = useCallback(() => {
// TODO: Implement debounced simulation
}, [])
const setLeverage = useCallback((leverage: number) => { const setLeverage = useCallback((leverage: number) => {
// TODO: Implement leverage setting // TODO: Implement leverage setting
}, []) }, [])
@ -116,6 +120,7 @@ export function PerpsModule() {
max={10} max={10}
value={leverage} value={leverage}
onChange={setLeverage} onChange={setLeverage}
onDebounce={onDebounce}
type={tradeDirection} type={tradeDirection}
/> />
<LeverageButtons /> <LeverageButtons />
@ -132,6 +137,7 @@ export function PerpsModule() {
previousTradeDirection={previousTradeDirection} previousTradeDirection={previousTradeDirection}
previousLeverage={previousLeverage} previousLeverage={previousLeverage}
hasActivePosition={hasActivePosition} hasActivePosition={hasActivePosition}
onTxExecuted={() => setAmount(BN_ZERO)}
/> />
</Card> </Card>
) )

View File

@ -8,6 +8,7 @@ import SummaryLine from 'components/common/SummaryLine'
import Text from 'components/common/Text' import Text from 'components/common/Text'
import TradeDirection from 'components/perps/BalancesTable/Columns/TradeDirection' import TradeDirection from 'components/perps/BalancesTable/Columns/TradeDirection'
import OpeningFee from 'components/perps/Module/OpeningFee' import OpeningFee from 'components/perps/Module/OpeningFee'
import { BN_ZERO } from 'constants/math'
import useCurrentAccount from 'hooks/accounts/useCurrentAccount' import useCurrentAccount from 'hooks/accounts/useCurrentAccount'
import useStore from 'store' import useStore from 'store'
import { BNCoin } from 'types/classes/BNCoin' import { BNCoin } from 'types/classes/BNCoin'
@ -18,37 +19,56 @@ type Props = {
amount: BigNumber amount: BigNumber
tradeDirection: TradeDirection tradeDirection: TradeDirection
asset: Asset asset: Asset
previousAmount?: BigNumber previousAmount?: BigNumber | null
previousTradeDirection?: 'long' | 'short' previousTradeDirection?: 'long' | 'short'
previousLeverage?: number previousLeverage?: number | null
hasActivePosition: boolean hasActivePosition: boolean
onTxExecuted: () => void
} }
export default function PerpsSummary(props: Props) { export default function PerpsSummary(props: Props) {
const openPerpPosition = useStore((s) => s.openPerpPosition) const openPerpPosition = useStore((s) => s.openPerpPosition)
const modifyPerpPosition = useStore((s) => s.modifyPerpPosition)
const closePerpPosition = useStore((s) => s.closePerpPosition)
const currentAccount = useCurrentAccount() const currentAccount = useCurrentAccount()
const onConfirm = useCallback(async () => { const newAmount = useMemo(
if (!currentAccount) return () => (props.previousAmount ?? BN_ZERO).plus(props.amount),
await openPerpPosition({
accountId: currentAccount.id,
coin: BNCoin.fromDenomAndBigNumber(
props.asset.denom,
props.amount.times(props.tradeDirection === 'short' ? -1 : 1),
),
})
}, [currentAccount, openPerpPosition, props.amount, props.asset.denom, props.tradeDirection])
const disabled = useMemo(
() =>
(props.previousAmount && props.previousAmount.isEqualTo(props.amount)) ||
props.amount.isZero(),
[props.amount, props.previousAmount], [props.amount, props.previousAmount],
) )
const onConfirm = useCallback(async () => {
if (!currentAccount) return
if (props.previousAmount && newAmount.isZero()) {
await closePerpPosition({
accountId: currentAccount.id,
denom: props.asset.denom,
})
return props.onTxExecuted()
}
if (props.previousAmount && newAmount) {
await modifyPerpPosition({
accountId: currentAccount.id,
coin: BNCoin.fromDenomAndBigNumber(props.asset.denom, newAmount),
changeDirection: props.previousAmount.isNegative() !== newAmount.isNegative(),
})
return props.onTxExecuted()
}
await openPerpPosition({
accountId: currentAccount.id,
coin: BNCoin.fromDenomAndBigNumber(props.asset.denom, props.amount),
})
return props.onTxExecuted()
}, [closePerpPosition, currentAccount, modifyPerpPosition, newAmount, openPerpPosition, props])
const disabled = useMemo(() => props.amount.isZero(), [props.amount])
return ( return (
<div className='border border-white/10 rounded-sm bg-white/5'> <div className='border border-white/10 rounded-sm bg-white/5'>
<ManageSummary {...props} /> <ManageSummary {...props} newAmount={newAmount} />
<div className='py-4 px-3 flex flex-col gap-1'> <div className='py-4 px-3 flex flex-col gap-1'>
<Text size='xs' className='font-bold mb-2'> <Text size='xs' className='font-bold mb-2'>
Summary Summary
@ -67,9 +87,9 @@ export default function PerpsSummary(props: Props) {
) )
} }
function ManageSummary(props: Props) { function ManageSummary(props: Props & { newAmount: BigNumber }) {
const showTradeDirection = const showTradeDirection =
props.previousTradeDirection && props.previousTradeDirection !== props.tradeDirection props.previousAmount && props.previousAmount.isNegative() !== props.newAmount.isNegative()
const showAmount = !props.amount.isZero() && props.previousAmount const showAmount = !props.amount.isZero() && props.previousAmount
const showLeverage = const showLeverage =
props.previousLeverage && props.previousLeverage &&
@ -84,7 +104,13 @@ function ManageSummary(props: Props) {
Your new position Your new position
</Text> </Text>
{showTradeDirection && props.previousTradeDirection && ( {props.newAmount.isZero() && (
<Text size='xs' className='text-white/40 mb-1'>
Your position will be closed
</Text>
)}
{showTradeDirection && props.previousTradeDirection && !props.newAmount.isZero() && (
<SummaryLine label='Side' contentClassName='flex gap-1'> <SummaryLine label='Side' contentClassName='flex gap-1'>
<TradeDirection tradeDirection={props.previousTradeDirection} /> <TradeDirection tradeDirection={props.previousTradeDirection} />
<ArrowRight width={16} /> <ArrowRight width={16} />
@ -92,13 +118,15 @@ function ManageSummary(props: Props) {
</SummaryLine> </SummaryLine>
)} )}
{showAmount && props.previousAmount && ( {showAmount && props.newAmount && props.previousAmount && !props.newAmount.isZero() && (
<SummaryLine label='Size' contentClassName='flex gap-1'> <SummaryLine label='Size' contentClassName='flex gap-1'>
<AssetAmount asset={props.asset} amount={props.previousAmount.abs().toNumber()} /> <AssetAmount asset={props.asset} amount={props.previousAmount.abs().toNumber()} />
<ArrowRight <ArrowRight
width={16} width={16}
className={classNames( className={classNames(
props.previousAmount.isGreaterThan(props.amount) ? 'text-error' : 'text-success', props.previousAmount.abs().isGreaterThan(props.newAmount)
? 'text-error'
: 'text-success',
)} )}
/> />
<AssetAmount <AssetAmount

View File

@ -29,11 +29,7 @@ export default function usePerpsModule(amount: BigNumber | null) {
return getAccountNetValue(account, prices, assets) return getAccountNetValue(account, prices, assets)
}, [account, assets, prices]) }, [account, assets, prices])
const previousAmount = useMemo( const previousAmount = useMemo(() => perpPosition?.amount ?? BN_ZERO, [perpPosition?.amount])
() =>
(perpPosition?.amount ?? BN_ZERO).times(perpPosition?.tradeDirection === 'short' ? -1 : 1),
[perpPosition?.amount, perpPosition?.tradeDirection],
)
const previousTradeDirection = useMemo( const previousTradeDirection = useMemo(
() => perpPosition?.tradeDirection || 'long', () => perpPosition?.tradeDirection || 'long',
[perpPosition?.tradeDirection], [perpPosition?.tradeDirection],
@ -41,18 +37,16 @@ export default function usePerpsModule(amount: BigNumber | null) {
const previousLeverage = useMemo( const previousLeverage = useMemo(
() => () =>
price previousAmount
.times(demagnify(previousAmount.abs(), perpsAsset)) ? price.times(demagnify(previousAmount, perpsAsset)).div(accountNetValue).plus(1).toNumber()
.div(accountNetValue) : null,
.plus(1)
.toNumber(),
[accountNetValue, perpsAsset, previousAmount, price], [accountNetValue, perpsAsset, previousAmount, price],
) )
const leverage = useMemo( const leverage = useMemo(
() => () =>
price price
.times(demagnify(previousAmount.plus(amount ?? BN_ZERO).abs(), perpsAsset)) .times(demagnify(previousAmount.plus(amount ?? BN_ZERO), perpsAsset))
.div(accountNetValue) .div(accountNetValue)
.plus(1) .plus(1)
.toNumber(), .toNumber(),

View File

@ -8,6 +8,7 @@ import Text from 'components/common/Text'
import AssetList from 'components/trade/TradeModule/AssetSelector/AssetList' import AssetList from 'components/trade/TradeModule/AssetSelector/AssetList'
import StablesFilter from 'components/trade/TradeModule/AssetSelector/AssetOverlay/StablesFilter' import StablesFilter from 'components/trade/TradeModule/AssetSelector/AssetOverlay/StablesFilter'
import PairsList from 'components/trade/TradeModule/AssetSelector/PairsList' import PairsList from 'components/trade/TradeModule/AssetSelector/PairsList'
import useCurrentAccount from 'hooks/accounts/useCurrentAccount'
import useAllAssets from 'hooks/assets/useAllAssets' import useAllAssets from 'hooks/assets/useAllAssets'
import useFilteredAssets from 'hooks/useFilteredAssets' import useFilteredAssets from 'hooks/useFilteredAssets'
@ -23,8 +24,17 @@ interface Props {
type: 'pair' | 'single' | 'perps' type: 'pair' | 'single' | 'perps'
} }
function MarketSubheadLine(props: { title: string }) {
return (
<Text size='sm' className='px-4 py-2 border-b border-white/5 text-white/60 bg-white/5'>
{props.title}
</Text>
)
}
export default function AssetOverlay(props: Props) { export default function AssetOverlay(props: Props) {
const { assets, searchString, onChangeSearch } = useFilteredAssets(props.buyAssets) const { assets, searchString, onChangeSearch } = useFilteredAssets(props.buyAssets)
const account = useCurrentAccount()
const allAssets = useAllAssets() const allAssets = useAllAssets()
const stableAssets = useMemo(() => allAssets.filter((asset) => asset.isStable), [allAssets]) const stableAssets = useMemo(() => allAssets.filter((asset) => asset.isStable), [allAssets])
const handleClose = useCallback(() => props.onChangeState('closed'), [props]) const handleClose = useCallback(() => props.onChangeState('closed'), [props])
@ -76,6 +86,18 @@ export default function AssetOverlay(props: Props) {
[onChangeSearch, props], [onChangeSearch, props],
) )
const [activePerpsPositions, availablePerpsMarkets] = useMemo(() => {
if (!account) return [[], []]
const activePerpsPositions = assets.filter((assets) =>
account?.perps.find((perp) => perp.denom === assets.denom),
)
const availablePerpsMarkets = assets.filter(
(assets) => !activePerpsPositions.find((perp) => perp.denom === assets.denom),
)
return [activePerpsPositions, availablePerpsMarkets]
}, [assets, account])
return ( return (
<Overlay <Overlay
className='inset-0 w-full overflow-y-scroll scrollbar-hide' className='inset-0 w-full overflow-y-scroll scrollbar-hide'
@ -104,14 +126,29 @@ export default function AssetOverlay(props: Props) {
/> />
</div> </div>
<Divider /> <Divider />
{props.type === 'perps' && ( {props.type === 'perps' && activePerpsPositions.length > 0 && (
<>
<MarketSubheadLine title='Active Positions' />
<AssetList <AssetList
assets={props.buyAssets} assets={activePerpsPositions}
type='perps' type='perps'
onChangeAsset={onChangeBuyAsset} onChangeAsset={onChangeBuyAsset}
isOpen isOpen
toggleOpen={() => {}} toggleOpen={() => {}}
/> />
</>
)}
{props.type === 'perps' && availablePerpsMarkets.length > 0 && (
<>
<MarketSubheadLine title='Available Markets' />
<AssetList
assets={availablePerpsMarkets}
type='perps'
onChangeAsset={onChangeBuyAsset}
isOpen
toggleOpen={() => {}}
/>
</>
)} )}
{props.type === 'pair' && ( {props.type === 'pair' && (

View File

@ -201,7 +201,7 @@ export default function SwapForm(props: Props) {
isAutoLendEnabled && !isAutoRepayChecked ? 'lend' : 'deposit', isAutoLendEnabled && !isAutoRepayChecked ? 'lend' : 'deposit',
isAutoRepayChecked, isAutoRepayChecked,
) )
}, 100), }, 250),
[simulateTrade, isAutoLendEnabled, isAutoRepayChecked], [simulateTrade, isAutoLendEnabled, isAutoRepayChecked],
) )

View File

@ -21,14 +21,14 @@ const Pion1: ChainConfig = {
id: ChainInfoID.Pion1, id: ChainInfoID.Pion1,
name: 'Neutron Testnet', name: 'Neutron Testnet',
contracts: { contracts: {
redBank: 'neutron1u3fmnnd3q9dkx2sccjgs2hfdp7sndkw5f37ug64zj0zgdm6dgjxq4njrnc', redBank: 'neutron1gpv59ff87mfvx8s3fn5ku3l8dn94fkj4q37sruhwfl0zzgjsejqs3xejyj',
incentives: 'neutron18ere5chtsdswna8re75sldzhw0ccrmuff57cfh63060dnvflqswsxpzlm9', incentives: 'neutron1au78lscqqh77ghvl6eq2d58vy439q0gprhz0sc5q4r9svh63hquqtwlrsw',
oracle: 'neutron1nua7c2esr5d8f6jfkylsd4pjywwlf0snj8gtxkp6k6f5jxa32hxqq2lcm7', oracle: 'neutron1z44naqtpn20z5yws7updsgcplm7tcfkcn67uejvc0l7n8hy6vupq0894qs',
swapper: 'neutron1me0pspfhkphe2mw7ja2f2fqnh0z5x30jj5t80jgd7p6y9swwk06snh7mun', swapper: 'neutron1td4dn53k7ythdj8ah3xv5p66swq3sy2a9jzq4yrue8aa4dvwacrs7dachf',
params: 'neutron1ku3eccj8a49atmgkv4g8r2zgy62l93xy224ls44lfvdexh5xfqds97rrz3', params: 'neutron16l9j74q6ht9ycd37qxt6tz83l3r3cwec4qu9r5mkd66kcve23ywspjqhjp',
creditManager: 'neutron1zjuschuar2e9cugj84hmun4r93mzkan6qy4x4ee5geguh3lmrdnsnq5s9z', creditManager: 'neutron1swud86k6acvpjfn68cv6tz3h7z72nz395d7y5e3yxknrc8yl9faqxn5jjw',
accountNft: 'neutron12wrdnp0edn7xqleak4khn265xrtkk732ext4d3yeyfz2gcup3e4scmmrj3', accountNft: 'neutron1apus79ka5v30wmwdxzzapprrzxxw6mz0hc0uk3g030t0m5f0asuq8x3ldf',
perps: 'neutron1zlj4l4h55wmrctm3ete6sqjvucujgcpa7r9m0ex6pcgdngaqa0pss93jla', perps: 'neutron1ssnc38h40fu0d2et8f38z83ealgugh06r4anqa6dn6hlz6syqaqsmj6zcy',
pyth: 'neutron15ldst8t80982akgr8w8ekcytejzkmfpgdkeq4xgtge48qs7435jqp87u3t', pyth: 'neutron15ldst8t80982akgr8w8ekcytejzkmfpgdkeq4xgtge48qs7435jqp87u3t',
}, },
endpoints: { endpoints: {

View File

@ -1,6 +1,5 @@
import useSWR from 'swr' import useSWR from 'swr'
import { BN_ZERO } from 'constants/math'
import usePerpsAsset from 'hooks/perps/usePerpsAsset' import usePerpsAsset from 'hooks/perps/usePerpsAsset'
import useChainConfig from 'hooks/useChainConfig' import useChainConfig from 'hooks/useChainConfig'
import useClients from 'hooks/useClients' import useClients from 'hooks/useClients'
@ -27,8 +26,8 @@ async function getPerpsMarket(clients: ContractClients, asset: Asset) {
fundingRate: BN(denomState.rate as any), fundingRate: BN(denomState.rate as any),
asset: asset, asset: asset,
openInterest: { openInterest: {
long: BN_ZERO, long: BN(denomState.long_oi),
short: BN_ZERO, short: BN(denomState.short_oi),
}, },
} as PerpsMarket } as PerpsMarket
} }

View File

@ -246,6 +246,11 @@ export function useUpdatedAccount(account?: Account) {
const simulatePerps = useCallback( const simulatePerps = useCallback(
(position: PerpsPosition) => { (position: PerpsPosition) => {
if (!account) return if (!account) return
if (position.amount.isZero()) {
return addPerps(undefined)
}
addPerps(position) addPerps(position)
}, },
[account, addPerps], [account, addPerps],

View File

@ -126,11 +126,18 @@ export default function createBroadcastSlice(
}) })
break break
case 'close-perp': case 'close-perp':
// TODO: [Perps] Elaborate on the message
toast.content.push({ toast.content.push({
coins: changes.deposits?.map((deposit) => deposit.toCoin()) ?? [], coins: [],
text: 'Closed perp position', text: 'Closed perp position',
}) })
break break
case 'modify-perp':
toast.content.push({
coins: [],
text: 'Modified perp position',
})
break
case 'swap': case 'swap':
if (changes.debts) { if (changes.debts) {
@ -995,6 +1002,57 @@ export default function createBroadcastSlice(
return response.then((response) => !!response.result) return response.then((response) => !!response.result)
}, },
modifyPerpPosition: async (options: {
accountId: string
coin: BNCoin
changeDirection: boolean
}) => {
const msg: CreditManagerExecuteMsg = {
update_credit_account: {
account_id: options.accountId,
actions: [
...(options.changeDirection
? [
{
close_perp: {
denom: options.coin.denom,
},
},
{
open_perp: options.coin.toSignedCoin(),
},
]
: [
{
modify_perp: {
denom: options.coin.denom,
new_size: options.coin.amount.toString() as any,
},
},
]),
],
},
}
const cmContract = get().chainConfig.contracts.creditManager
const response = get().executeMsg({
messages: [generateExecutionMessage(get().address, cmContract, msg, [])],
})
get().setToast({
response,
options: {
action: 'modify-perp',
target: 'account',
message: `Modified position to a ${formatAmountWithSymbol(options.coin.abs().toCoin(), get().chainConfig.assets)} ${options.coin.amount.isNegative() ? 'short' : 'long'}`,
accountId: options.accountId,
changes: { deposits: [options.coin] },
},
})
return response.then((response) => !!response.result)
},
getPythVaas: async () => { getPythVaas: async () => {
const priceFeedIds = get() const priceFeedIds = get()
.chainConfig.assets.filter((asset) => !!asset.pythPriceFeedId) .chainConfig.assets.filter((asset) => !!asset.pythPriceFeedId)

View File

@ -44,4 +44,8 @@ export class BNCoin {
size: this.amount.toString(), size: this.amount.toString(),
} }
} }
abs() {
return BNCoin.fromDenomAndBigNumber(this.denom, this.amount.abs())
}
} }

View File

@ -29,144 +29,150 @@ export interface InstantiateMsg {
export type ExecuteMsg = export type ExecuteMsg =
| { | {
create_credit_account: AccountKind create_credit_account: AccountKind
} }
| { | {
update_credit_account: { update_credit_account: {
account_id: string account_id: string
actions: Action[] actions: Action[]
} }
} }
| { | {
repay_from_wallet: { repay_from_wallet: {
account_id: string account_id: string
} }
} }
| { | {
update_config: { update_config: {
updates: ConfigUpdates updates: ConfigUpdates
} }
} }
| { | {
update_owner: OwnerUpdate update_owner: OwnerUpdate
} }
| { | {
update_nft_config: { update_nft_config: {
config?: NftConfigUpdates | null config?: NftConfigUpdates | null
ownership?: Action2 | null ownership?: Action2 | null
} }
} }
| { | {
callback: CallbackMsg callback: CallbackMsg
} }
export type AccountKind = 'default' | 'high_levered_strategy' export type AccountKind = 'default' | 'high_levered_strategy'
export type Action = export type Action =
| { | {
deposit: Coin deposit: Coin
} }
| { | {
withdraw: ActionCoin withdraw: ActionCoin
} }
| { | {
borrow: Coin borrow: Coin
} }
| { | {
lend: ActionCoin lend: ActionCoin
} }
| { | {
reclaim: ActionCoin reclaim: ActionCoin
} }
| { | {
claim_rewards: {} claim_rewards: {}
} }
| { | {
repay: { repay: {
coin: ActionCoin coin: ActionCoin
recipient_account_id?: string | null recipient_account_id?: string | null
} }
} }
| { | {
open_perp: { open_perp: {
denom: string denom: string
size: SignedDecimal size: SignedDecimal
} }
} }
| { | {
close_perp: { close_perp: {
denom: string denom: string
} }
}
| {
modify_perp: {
denom: string
new_size: SignedDecimal
} }
}
| { | {
enter_vault: { enter_vault: {
coin: ActionCoin coin: ActionCoin
vault: VaultBaseForString vault: VaultBaseForString
} }
} }
| { | {
exit_vault: { exit_vault: {
amount: Uint128 amount: Uint128
vault: VaultBaseForString vault: VaultBaseForString
} }
} }
| { | {
request_vault_unlock: { request_vault_unlock: {
amount: Uint128 amount: Uint128
vault: VaultBaseForString vault: VaultBaseForString
} }
} }
| { | {
exit_vault_unlocked: { exit_vault_unlocked: {
id: number id: number
vault: VaultBaseForString vault: VaultBaseForString
} }
} }
| { | {
liquidate: { liquidate: {
debt_coin: Coin debt_coin: Coin
liquidatee_account_id: string liquidatee_account_id: string
request: LiquidateRequestForVaultBaseForString request: LiquidateRequestForVaultBaseForString
} }
} }
| { | {
swap_exact_in: { swap_exact_in: {
coin_in: ActionCoin coin_in: ActionCoin
denom_out: string denom_out: string
slippage: Decimal slippage: Decimal
} }
} }
| { | {
provide_liquidity: { provide_liquidity: {
coins_in: ActionCoin[] coins_in: ActionCoin[]
lp_token_out: string lp_token_out: string
slippage: Decimal slippage: Decimal
} }
} }
| { | {
withdraw_liquidity: { withdraw_liquidity: {
lp_token: ActionCoin lp_token: ActionCoin
slippage: Decimal slippage: Decimal
} }
} }
| { | {
refund_all_coin_balances: {} refund_all_coin_balances: {}
} }
export type ActionAmount = export type ActionAmount =
| 'account_balance' | 'account_balance'
| { | {
exact: Uint128 exact: Uint128
} }
export type LiquidateRequestForVaultBaseForString = export type LiquidateRequestForVaultBaseForString =
| { | {
deposit: string deposit: string
} }
| { | {
lend: string lend: string
} }
| { | {
vault: { vault: {
position_type: VaultPositionType position_type: VaultPositionType
request_vault: VaultBaseForString request_vault: VaultBaseForString
} }
} }
export type VaultPositionType = 'u_n_l_o_c_k_e_d' | 'l_o_c_k_e_d' | 'u_n_l_o_c_k_i_n_g' export type VaultPositionType = 'u_n_l_o_c_k_e_d' | 'l_o_c_k_e_d' | 'u_n_l_o_c_k_i_n_g'
export type AccountNftBaseForString = string export type AccountNftBaseForString = string
export type PerpsBaseForString = string export type PerpsBaseForString = string
@ -175,7 +181,7 @@ export type OwnerUpdate =
propose_new_owner: { propose_new_owner: {
proposed: string proposed: string
} }
} }
| 'clear_proposed' | 'clear_proposed'
| 'accept_proposed' | 'accept_proposed'
| 'abolish_owner_role' | 'abolish_owner_role'
@ -183,7 +189,7 @@ export type OwnerUpdate =
set_emergency_owner: { set_emergency_owner: {
emergency_owner: string emergency_owner: string
} }
} }
| 'clear_emergency_owner' | 'clear_emergency_owner'
export type Action2 = export type Action2 =
| { | {
@ -191,19 +197,19 @@ export type Action2 =
expiry?: Expiration | null expiry?: Expiration | null
new_owner: string new_owner: string
} }
} }
| 'accept_ownership' | 'accept_ownership'
| 'renounce_ownership' | 'renounce_ownership'
export type Expiration = export type Expiration =
| { | {
at_height: number at_height: number
} }
| { | {
at_time: Timestamp at_time: Timestamp
} }
| { | {
never: {} never: {}
} }
export type Timestamp = Uint64 export type Timestamp = Uint64
export type Uint64 = string export type Uint64 = string
export type CallbackMsg = export type CallbackMsg =
@ -213,103 +219,110 @@ export type CallbackMsg =
coin: ActionCoin coin: ActionCoin
recipient: Addr recipient: Addr
} }
} }
| { | {
borrow: { borrow: {
account_id: string account_id: string
coin: Coin coin: Coin
} }
} }
| { | {
repay: { repay: {
account_id: string account_id: string
coin: ActionCoin coin: ActionCoin
} }
} }
| { | {
repay_for_recipient: { repay_for_recipient: {
benefactor_account_id: string benefactor_account_id: string
coin: ActionCoin coin: ActionCoin
recipient_account_id: string recipient_account_id: string
} }
} }
| { | {
lend: { lend: {
account_id: string account_id: string
coin: ActionCoin coin: ActionCoin
} }
} }
| { | {
reclaim: { reclaim: {
account_id: string account_id: string
coin: ActionCoin coin: ActionCoin
} }
} }
| { | {
claim_rewards: { claim_rewards: {
account_id: string account_id: string
recipient: Addr recipient: Addr
} }
} }
| { | {
assert_max_ltv: { assert_max_ltv: {
account_id: string account_id: string
prev_health_state: HealthState prev_health_state: HealthState
} }
} }
| { | {
assert_deposit_caps: { assert_deposit_caps: {
denoms: string[] denoms: string[]
} }
} }
| { | {
open_perp: { open_perp: {
account_id: string account_id: string
denom: string denom: string
size: SignedDecimal size: SignedDecimal
} }
} }
| { | {
close_perp: { close_perp: {
account_id: string account_id: string
denom: string denom: string
} }
}
| {
modify_perp: {
account_id: string
denom: string
new_size: SignedDecimal
} }
}
| { | {
enter_vault: { enter_vault: {
account_id: string account_id: string
coin: ActionCoin coin: ActionCoin
vault: VaultBaseForAddr vault: VaultBaseForAddr
} }
} }
| { | {
exit_vault: { exit_vault: {
account_id: string account_id: string
amount: Uint128 amount: Uint128
vault: VaultBaseForAddr vault: VaultBaseForAddr
} }
} }
| { | {
update_vault_coin_balance: { update_vault_coin_balance: {
account_id: string account_id: string
previous_total_balance: Uint128 previous_total_balance: Uint128
vault: VaultBaseForAddr vault: VaultBaseForAddr
} }
} }
| { | {
request_vault_unlock: { request_vault_unlock: {
account_id: string account_id: string
amount: Uint128 amount: Uint128
vault: VaultBaseForAddr vault: VaultBaseForAddr
} }
} }
| { | {
exit_vault_unlocked: { exit_vault_unlocked: {
account_id: string account_id: string
position_id: number position_id: number
vault: VaultBaseForAddr vault: VaultBaseForAddr
} }
} }
| { | {
liquidate: { liquidate: {
debt_coin: Coin debt_coin: Coin
@ -317,7 +330,7 @@ export type CallbackMsg =
liquidator_account_id: string liquidator_account_id: string
request: LiquidateRequestForVaultBaseForAddr request: LiquidateRequestForVaultBaseForAddr
} }
} }
| { | {
swap_exact_in: { swap_exact_in: {
account_id: string account_id: string
@ -325,21 +338,21 @@ export type CallbackMsg =
denom_out: string denom_out: string
slippage: Decimal slippage: Decimal
} }
} }
| { | {
update_coin_balance: { update_coin_balance: {
account_id: string account_id: string
change: ChangeExpected change: ChangeExpected
previous_balance: Coin previous_balance: Coin
} }
} }
| { | {
update_coin_balance_after_vault_liquidation: { update_coin_balance_after_vault_liquidation: {
account_id: string account_id: string
previous_balance: Coin previous_balance: Coin
protocol_fee: Decimal protocol_fee: Decimal
} }
} }
| { | {
provide_liquidity: { provide_liquidity: {
account_id: string account_id: string
@ -347,34 +360,34 @@ export type CallbackMsg =
lp_token_out: string lp_token_out: string
slippage: Decimal slippage: Decimal
} }
} }
| { | {
withdraw_liquidity: { withdraw_liquidity: {
account_id: string account_id: string
lp_token: ActionCoin lp_token: ActionCoin
slippage: Decimal slippage: Decimal
} }
} }
| { | {
refund_all_coin_balances: { refund_all_coin_balances: {
account_id: string account_id: string
} }
} }
| { | {
assert_hls_rules: { assert_hls_rules: {
account_id: string account_id: string
} }
} }
| { | {
remove_reentrancy_guard: {} remove_reentrancy_guard: {}
} }
| { | {
send_rewards_to_addr: { send_rewards_to_addr: {
account_id: string account_id: string
previous_balances: Coin[] previous_balances: Coin[]
recipient: Addr recipient: Addr
} }
} }
export type Addr = string export type Addr = string
export type HealthState = export type HealthState =
| 'healthy' | 'healthy'
@ -382,20 +395,20 @@ export type HealthState =
unhealthy: { unhealthy: {
max_ltv_health_factor: Decimal max_ltv_health_factor: Decimal
} }
} }
export type LiquidateRequestForVaultBaseForAddr = export type LiquidateRequestForVaultBaseForAddr =
| { | {
deposit: string deposit: string
} }
| { | {
lend: string lend: string
} }
| { | {
vault: { vault: {
position_type: VaultPositionType position_type: VaultPositionType
request_vault: VaultBaseForAddr request_vault: VaultBaseForAddr
} }
} }
export type ChangeExpected = 'increase' | 'decrease' export type ChangeExpected = 'increase' | 'decrease'
export interface Coin { export interface Coin {
amount: Uint128 amount: Uint128
@ -441,77 +454,77 @@ export type QueryMsg =
account_kind: { account_kind: {
account_id: string account_id: string
} }
} }
| { | {
accounts: { accounts: {
limit?: number | null limit?: number | null
owner: string owner: string
start_after?: string | null start_after?: string | null
} }
} }
| { | {
config: {} config: {}
} }
| { | {
vault_utilization: { vault_utilization: {
vault: VaultBaseForString vault: VaultBaseForString
} }
} }
| { | {
positions: { positions: {
account_id: string account_id: string
} }
} }
| { | {
all_coin_balances: { all_coin_balances: {
limit?: number | null limit?: number | null
start_after?: [string, string] | null start_after?: [string, string] | null
} }
} }
| { | {
all_debt_shares: { all_debt_shares: {
limit?: number | null limit?: number | null
start_after?: [string, string] | null start_after?: [string, string] | null
} }
} }
| { | {
total_debt_shares: string total_debt_shares: string
} }
| { | {
all_total_debt_shares: { all_total_debt_shares: {
limit?: number | null limit?: number | null
start_after?: string | null start_after?: string | null
} }
} }
| { | {
all_vault_positions: { all_vault_positions: {
limit?: number | null limit?: number | null
start_after?: [string, string] | null start_after?: [string, string] | null
} }
} }
| { | {
estimate_provide_liquidity: { estimate_provide_liquidity: {
coins_in: Coin[] coins_in: Coin[]
lp_token_out: string lp_token_out: string
} }
} }
| { | {
estimate_withdraw_liquidity: { estimate_withdraw_liquidity: {
lp_token: Coin lp_token: Coin
} }
} }
| { | {
vault_position_value: { vault_position_value: {
vault_position: VaultPosition vault_position: VaultPosition
} }
} }
export type VaultPositionAmount = export type VaultPositionAmount =
| { | {
unlocked: VaultAmount unlocked: VaultAmount
} }
| { | {
locking: LockingVaultAmount locking: LockingVaultAmount
} }
export type VaultAmount = string export type VaultAmount = string
export type VaultAmount1 = string export type VaultAmount1 = string
export type UnlockingPositions = VaultUnlockingPosition[] export type UnlockingPositions = VaultUnlockingPosition[]
@ -585,10 +598,10 @@ export type PnL =
| 'break_even' | 'break_even'
| { | {
profit: Coin profit: Coin
} }
| { | {
loss: Coin loss: Coin
} }
export interface Positions { export interface Positions {
account_id: string account_id: string
debts: DebtAmount[] debts: DebtAmount[]
@ -605,11 +618,21 @@ export interface DebtAmount {
export interface PerpPosition { export interface PerpPosition {
base_denom: string base_denom: string
closing_fee_rate: Decimal closing_fee_rate: Decimal
current_exec_price: Decimal
current_price: Decimal current_price: Decimal
denom: string denom: string
entry_exec_price: Decimal
entry_price: Decimal entry_price: Decimal
pnl: PositionPnl realised_pnl: RealizedPnlAmounts
size: SignedDecimal size: SignedDecimal
unrealised_pnl: PositionPnl
}
export interface RealizedPnlAmounts {
accrued_funding: SignedDecimal
closing_fee: SignedDecimal
opening_fee: SignedDecimal
pnl: SignedDecimal
price_pnl: SignedDecimal
} }
export interface PositionPnl { export interface PositionPnl {
coins: PnlCoins coins: PnlCoins

View File

@ -23,54 +23,61 @@ export interface InstantiateMsg {
export type ExecuteMsg = export type ExecuteMsg =
| { | {
update_owner: OwnerUpdate update_owner: OwnerUpdate
} }
| { | {
init_denom: { init_denom: {
denom: string denom: string
max_funding_velocity: Decimal max_funding_velocity: Decimal
skew_scale: Decimal skew_scale: Decimal
} }
} }
| { | {
enable_denom: { enable_denom: {
denom: string denom: string
} }
} }
| { | {
disable_denom: { disable_denom: {
denom: string denom: string
} }
} }
| { | {
deposit: {} deposit: {}
} }
| { | {
unlock: { unlock: {
shares: Uint128 shares: Uint128
} }
} }
| { | {
withdraw: {} withdraw: {}
} }
| { | {
open_position: { open_position: {
account_id: string account_id: string
denom: string denom: string
size: SignedDecimal size: SignedDecimal
} }
} }
| { | {
close_position: { close_position: {
account_id: string account_id: string
denom: string denom: string
} }
}
| {
modify_position: {
account_id: string
denom: string
new_size: SignedDecimal
} }
}
export type OwnerUpdate = export type OwnerUpdate =
| { | {
propose_new_owner: { propose_new_owner: {
proposed: string proposed: string
} }
} }
| 'clear_proposed' | 'clear_proposed'
| 'accept_proposed' | 'accept_proposed'
| 'abolish_owner_role' | 'abolish_owner_role'
@ -78,7 +85,7 @@ export type OwnerUpdate =
set_emergency_owner: { set_emergency_owner: {
emergency_owner: string emergency_owner: string
} }
} }
| 'clear_emergency_owner' | 'clear_emergency_owner'
export interface SignedDecimal { export interface SignedDecimal {
abs: Decimal abs: Decimal
@ -88,71 +95,85 @@ export interface SignedDecimal {
export type QueryMsg = export type QueryMsg =
| { | {
owner: {} owner: {}
} }
| { | {
config: {} config: {}
} }
| { | {
vault_state: {} vault_state: {}
} }
| { | {
denom_state: { denom_state: {
denom: string denom: string
} }
} }
| { | {
perp_denom_state: { perp_denom_state: {
denom: string denom: string
} }
} }
| { | {
denom_states: { denom_states: {
limit?: number | null limit?: number | null
start_after?: string | null start_after?: string | null
} }
} }
| { | {
deposit: { deposit: {
depositor: string depositor: string
} }
} }
| { | {
deposits: { deposits: {
limit?: number | null limit?: number | null
start_after?: string | null start_after?: string | null
} }
} }
| { | {
unlocks: { unlocks: {
depositor: string depositor: string
} }
} }
| { | {
position: { position: {
account_id: string account_id: string
denom: string denom: string
} }
} }
| { | {
positions: { positions: {
limit?: number | null limit?: number | null
start_after?: [string, string] | null start_after?: [string, string] | null
} }
} }
| { | {
positions_by_account: { positions_by_account: {
account_id: string account_id: string
} }
} }
| { | {
total_pnl: {} total_pnl: {}
} }
| { | {
opening_fee: { opening_fee: {
denom: string denom: string
size: SignedDecimal size: SignedDecimal
} }
}
| {
denom_accounting: {
denom: string
} }
}
| {
total_accounting: {}
}
| {
denom_realized_pnl_for_account: {
account_id: string
denom: string
}
}
export interface ConfigForString { export interface ConfigForString {
base_denom: string base_denom: string
closing_fee_rate: Decimal closing_fee_rate: Decimal
@ -164,6 +185,31 @@ export interface ConfigForString {
oracle: OracleBaseForString oracle: OracleBaseForString
params: ParamsBaseForString params: ParamsBaseForString
} }
export interface Accounting {
balance: Balance
cash_flow: CashFlow
withdrawal_balance: Balance
}
export interface Balance {
accrued_funding: SignedDecimal
closing_fee: SignedDecimal
opening_fee: SignedDecimal
price_pnl: SignedDecimal
total: SignedDecimal
}
export interface CashFlow {
accrued_funding: SignedDecimal
closing_fee: SignedDecimal
opening_fee: SignedDecimal
price_pnl: SignedDecimal
}
export interface RealizedPnlAmounts {
accrued_funding: SignedDecimal
closing_fee: SignedDecimal
opening_fee: SignedDecimal
pnl: SignedDecimal
price_pnl: SignedDecimal
}
export interface DenomStateResponse { export interface DenomStateResponse {
denom: string denom: string
enabled: boolean enabled: boolean
@ -203,13 +249,16 @@ export interface OwnerResponse {
export interface PerpDenomState { export interface PerpDenomState {
denom: string denom: string
enabled: boolean enabled: boolean
long_oi: Decimal
pnl_values: DenomPnlValues pnl_values: DenomPnlValues
rate: SignedDecimal rate: SignedDecimal
short_oi: Decimal
total_entry_cost: SignedDecimal total_entry_cost: SignedDecimal
total_entry_funding: SignedDecimal total_entry_funding: SignedDecimal
} }
export interface DenomPnlValues { export interface DenomPnlValues {
accrued_funding: SignedDecimal accrued_funding: SignedDecimal
closing_fees: SignedDecimal
pnl: SignedDecimal pnl: SignedDecimal
price_pnl: SignedDecimal price_pnl: SignedDecimal
} }
@ -217,10 +266,10 @@ export type PnL =
| 'break_even' | 'break_even'
| { | {
profit: Coin profit: Coin
} }
| { | {
loss: Coin loss: Coin
} }
export interface PositionResponse { export interface PositionResponse {
account_id: string account_id: string
position: PerpPosition position: PerpPosition
@ -228,11 +277,14 @@ export interface PositionResponse {
export interface PerpPosition { export interface PerpPosition {
base_denom: string base_denom: string
closing_fee_rate: Decimal closing_fee_rate: Decimal
current_exec_price: Decimal
current_price: Decimal current_price: Decimal
denom: string denom: string
entry_exec_price: Decimal
entry_price: Decimal entry_price: Decimal
pnl: PositionPnl realised_pnl: RealizedPnlAmounts
size: SignedDecimal size: SignedDecimal
unrealised_pnl: PositionPnl
} }
export interface PositionPnl { export interface PositionPnl {
coins: PnlCoins coins: PnlCoins

View File

@ -11,7 +11,6 @@ interface PerpsPosition {
baseDenom: string baseDenom: string
tradeDirection: TradeDirection tradeDirection: TradeDirection
amount: BigNumber amount: BigNumber
closingFee: BNCoin
pnl: PerpsPnL pnl: PerpsPnL
entryPrice: BigNumber entryPrice: BigNumber
} }
@ -34,3 +33,16 @@ interface PerpsPnLCoins {
net: BNCoin net: BNCoin
price: BNCoin price: BNCoin
} }
interface PerpsPnL {
net: BNCoin
realized: PerpsPnLCoins
unrealized: PerpsPnLCoins
}
interface PerpsPnLCoins {
fees: BNCoin
funding: BNCoin
net: BNCoin
price: BNCoin
}

View File

@ -72,6 +72,7 @@ interface HandleResponseProps {
| 'hls-staking' | 'hls-staking'
| 'open-perp' | 'open-perp'
| 'close-perp' | 'close-perp'
| 'modify-perp'
lend?: boolean lend?: boolean
accountId?: string accountId?: string
changes?: { changes?: {
@ -123,6 +124,11 @@ interface BroadcastSlice {
lend: (options: { accountId: string; coin: BNCoin; isMax?: boolean }) => Promise<boolean> lend: (options: { accountId: string; coin: BNCoin; isMax?: boolean }) => Promise<boolean>
closePerpPosition: (options: { accountId: string; denom: string }) => Promise<boolean> closePerpPosition: (options: { accountId: string; denom: string }) => Promise<boolean>
openPerpPosition: (options: { accountId: string; coin: BNCoin }) => Promise<boolean> openPerpPosition: (options: { accountId: string; coin: BNCoin }) => Promise<boolean>
modifyPerpPosition: (options: {
accountId: string
coin: BNCoin
changeDirection: boolean
}) => Promise<boolean>
reclaim: (options: { accountId: string; coin: BNCoin; isMax?: boolean }) => Promise<boolean> reclaim: (options: { accountId: string; coin: BNCoin; isMax?: boolean }) => Promise<boolean>
repay: (options: { repay: (options: {
accountId: string accountId: string

View File

@ -248,7 +248,6 @@ export function cloneAccount(account: Account): Account {
perps: account.perps.map((perpPosition) => ({ perps: account.perps.map((perpPosition) => ({
...perpPosition, ...perpPosition,
amount: perpPosition.amount, amount: perpPosition.amount,
closingFee: perpPosition.closingFee,
pnl: perpPosition.pnl, pnl: perpPosition.pnl,
entryPrice: perpPosition.entryPrice, entryPrice: perpPosition.entryPrice,
tradeDirection: perpPosition.tradeDirection, tradeDirection: perpPosition.tradeDirection,

View File

@ -108,7 +108,7 @@ export function resolvePerpsPositions(
perpPositions: Positions['perps'], perpPositions: Positions['perps'],
prices: BNCoin[], prices: BNCoin[],
): PerpsPosition[] { ): PerpsPosition[] {
if (!perpPositions) return [] if (!perpPositions.length) return []
const basePrice = const basePrice =
prices.find((price) => price.denom === perpPositions[0].base_denom)?.amount ?? BN_ZERO prices.find((price) => price.denom === perpPositions[0].base_denom)?.amount ?? BN_ZERO
@ -116,36 +116,52 @@ export function resolvePerpsPositions(
return { return {
denom: position.denom, denom: position.denom,
baseDenom: position.base_denom, baseDenom: position.base_denom,
amount: BN(position.size as any).abs(), amount: BN(position.size as any), // Amount is negative for SHORT positions
tradeDirection: BN(position.size as any).isNegative() ? 'short' : 'long', tradeDirection: BN(position.size as any).isNegative() ? 'short' : 'long',
closingFee: BNCoin.fromCoin(position.pnl.coins.closing_fee), // closingFee: BNCoin.fromCoin(position.pnl.coins.closing_fee),
pnl: { pnl: {
net: BNCoin.fromDenomAndBigNumber( net: BNCoin.fromDenomAndBigNumber(
position.base_denom, position.base_denom,
BN(position.pnl.values.pnl as any).plus(BN_ZERO), BN(position.unrealised_pnl.values.pnl as any)
.div(basePrice)
.plus(position.realised_pnl.pnl as any),
), ),
realized: { realized: {
net: BNCoin.fromDenomAndBigNumber(position.base_denom, BN_ZERO), net: BNCoin.fromDenomAndBigNumber(
price: BNCoin.fromDenomAndBigNumber(position.base_denom, BN_ZERO), position.base_denom,
funding: BNCoin.fromDenomAndBigNumber(position.base_denom, BN_ZERO), BN(position.realised_pnl.pnl as any),
fees: BNCoin.fromDenomAndBigNumber(position.base_denom, BN_ZERO.times(-1)), ),
price: BNCoin.fromDenomAndBigNumber(
position.base_denom,
BN(position.realised_pnl.price_pnl as any),
),
funding: BNCoin.fromDenomAndBigNumber(
position.base_denom,
BN(position.realised_pnl.accrued_funding as any),
),
fees: BNCoin.fromDenomAndBigNumber(
position.base_denom,
BN(position.realised_pnl.closing_fee as any).plus(
position.realised_pnl.opening_fee as any,
),
),
}, },
unrealized: { unrealized: {
net: BNCoin.fromDenomAndBigNumber( net: BNCoin.fromDenomAndBigNumber(
position.base_denom, position.base_denom,
BN(position.pnl.values.pnl as any), BN(position.unrealised_pnl.values.pnl as any).div(basePrice),
), ),
price: BNCoin.fromDenomAndBigNumber( price: BNCoin.fromDenomAndBigNumber(
position.base_denom, position.base_denom,
BN(position.pnl.values.price_pnl as any), BN(position.unrealised_pnl.values.price_pnl as any).div(basePrice),
), ),
funding: BNCoin.fromDenomAndBigNumber( funding: BNCoin.fromDenomAndBigNumber(
position.base_denom, position.base_denom,
BN(position.pnl.values.accrued_funding as any), BN(position.unrealised_pnl.values.accrued_funding as any).div(basePrice),
), ),
fees: BNCoin.fromDenomAndBigNumber( fees: BNCoin.fromDenomAndBigNumber(
position.base_denom, position.base_denom,
BN(position.pnl.values.closing_fee as any).times(-1), BN(position.unrealised_pnl.values.closing_fee as any).div(basePrice),
), ),
}, },
}, },