From 3dfca831795a8ca9758929bf230d33663dbe214a Mon Sep 17 00:00:00 2001 From: viet-nv Date: Tue, 17 Dec 2024 22:59:24 +0700 Subject: [PATCH] feat: add sonic --- package.json | 6 +- src/components/ClassicElasticTab.tsx | 2 +- src/components/Web3Provider/index.tsx | 4 +- src/constants/bases.ts | 2 +- src/constants/networks.ts | 6 +- src/constants/networks/index.ts | 2 +- .../networks/{xlayer.ts => sonic.ts} | 40 +++---- src/constants/tokens.ts | 10 +- src/pages/About/AboutKyberSwap/index.tsx | 5 +- src/state/swap/hooks.ts | 12 +- yarn.lock | 105 +++++++++++++++++- 11 files changed, 147 insertions(+), 47 deletions(-) rename src/constants/networks/{xlayer.ts => sonic.ts} (71%) diff --git a/package.json b/package.json index 0e843f7d37..ab7469ca1e 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "@esbuild-plugins/node-globals-polyfill": "^0.2.3", "@holdstation/paymaster-helper": "^2.0.20", "@kyberswap/ks-sdk-classic": "^1.0.3", - "@kyberswap/ks-sdk-core": "1.1.6", + "@kyberswap/ks-sdk-core": "1.1.7", "@kyberswap/ks-sdk-elastic": "^1.1.2", "@kyberswap/oauth2": "1.0.2", "@lingui/macro": "^4.6.0", @@ -117,7 +117,7 @@ "swiper": "^8.4.4", "ua-parser-js": "^1.0.33", "util": "^0.12.5", - "viem": "^2.20.0", + "viem": "^2.21.55", "vite-plugin-env-compatible": "^1.1.1", "wagmi": "^2.12.25", "walktour": "^5.2.0", @@ -197,7 +197,7 @@ "vite-tsconfig-paths": "^4.0.8" }, "resolutions": { - "@kyberswap/ks-sdk-core": "1.1.6", + "@kyberswap/ks-sdk-core": "1.1.7", "babel-plugin-lodash/@babel/types": "~7.20.0", "react-error-overlay": "6.0.9" } diff --git a/src/components/ClassicElasticTab.tsx b/src/components/ClassicElasticTab.tsx index 3f0546fe29..06e982b962 100644 --- a/src/components/ClassicElasticTab.tsx +++ b/src/components/ClassicElasticTab.tsx @@ -54,7 +54,7 @@ function ClassicElasticTab() { ChainId.SCROLL, ChainId.BLAST, ChainId.MANTLE, - ChainId.XLAYER, + ChainId.SONIC, ].includes(chainId) const showLegacyExplicit = diff --git a/src/components/Web3Provider/index.tsx b/src/components/Web3Provider/index.tsx index 51e9dc458a..940f4f4c74 100644 --- a/src/components/Web3Provider/index.tsx +++ b/src/components/Web3Provider/index.tsx @@ -17,7 +17,7 @@ import { polygon, polygonZkEvm, scroll, - xLayer, + sonic, zksync, } from 'viem/chains' import { Connector, WagmiProvider, createConfig, createConnector, useConnect } from 'wagmi' @@ -158,7 +158,7 @@ export const wagmiConfig = createConfig({ avalanche, fantom, blast, - xLayer, + sonic, ], connectors: [ injectedWithFallback(), diff --git a/src/constants/bases.ts b/src/constants/bases.ts index fbc922dbf7..1889322129 100644 --- a/src/constants/bases.ts +++ b/src/constants/bases.ts @@ -25,7 +25,7 @@ const WETH_ONLY: ChainTokenList = { [ChainId.SCROLL]: [WETH[ChainId.SCROLL]], [ChainId.BLAST]: [WETH[ChainId.BLAST]], [ChainId.MANTLE]: [WETH[ChainId.MANTLE]], - [ChainId.XLAYER]: [WETH[ChainId.XLAYER]], + [ChainId.SONIC]: [WETH[ChainId.SONIC]], } // used to construct intermediary pairs for trading diff --git a/src/constants/networks.ts b/src/constants/networks.ts index e1d9fbcd55..e59e396ca7 100644 --- a/src/constants/networks.ts +++ b/src/constants/networks.ts @@ -18,7 +18,7 @@ import { mumbai, optimism, scroll, - xlayer, + sonic, zkEvm, zksync, } from './networks/index' @@ -45,7 +45,7 @@ const NETWORKS_INFO_CONFIG: NETWORKS_INFO_CONFIG_TYPE = { [ChainId.SCROLL]: scroll, [ChainId.BLAST]: blast, [ChainId.MANTLE]: mantle, - [ChainId.XLAYER]: xlayer, + [ChainId.SONIC]: sonic, } as const //this Proxy helps fallback undefined ChainId by Ethereum info @@ -74,7 +74,7 @@ export const MAINNET_NETWORKS = [ ChainId.FANTOM, ChainId.BLAST, ChainId.MANTLE, - ChainId.XLAYER, + ChainId.SONIC, ] as const // These option of walletconnect is not support by wallets properly diff --git a/src/constants/networks/index.ts b/src/constants/networks/index.ts index a70007240e..be027a0004 100644 --- a/src/constants/networks/index.ts +++ b/src/constants/networks/index.ts @@ -15,5 +15,5 @@ export { default as zkEvm } from './zkevm' export { default as base } from './base' export { default as scroll } from './scroll' export { default as blast } from './blast' -export { default as xlayer } from './xlayer' +export { default as sonic } from './sonic' export { default as mantle } from './mantle' diff --git a/src/constants/networks/xlayer.ts b/src/constants/networks/sonic.ts similarity index 71% rename from src/constants/networks/xlayer.ts rename to src/constants/networks/sonic.ts index aa7b933933..6161ee7c5b 100644 --- a/src/constants/networks/xlayer.ts +++ b/src/constants/networks/sonic.ts @@ -5,30 +5,30 @@ import { NetworkInfo } from 'constants/networks/type' const EMPTY_ARRAY: any[] = [] const NOT_SUPPORT = null -const x1: NetworkInfo = { - chainId: ChainId.XLAYER, - route: 'xlayer', - ksSettingRoute: 'xlayer', - priceRoute: 'xlayer', - poolFarmRoute: 'xlayer', - aggregatorRoute: 'xlayer', - name: 'X Layer', - icon: 'https://storage.googleapis.com/ks-setting-1d682dca/bafc6027-7c84-4517-8fbd-f18fda18c5b91709787884512.png', +const sonic: NetworkInfo = { + chainId: ChainId.SONIC, + route: 'sonic', + ksSettingRoute: 'sonic', + priceRoute: 'sonic', + poolFarmRoute: 'sonic', + aggregatorRoute: 'sonic', + name: 'Sonic', + icon: 'https://www.soniclabs.com/favicon.ico', iconSelected: NOT_SUPPORT, defaultBlockSubgraph: '', - etherscanUrl: 'https://www.okx.com/explorer/xlayer', - etherscanName: 'X Layer Explorer', - bridgeURL: 'https://www.okx.com/xlayer/bridge', + etherscanUrl: 'https://sonicscan.org', + etherscanName: 'Sonic scan', + bridgeURL: 'https://gw.fantom.network', nativeToken: { - symbol: 'OKB', - name: 'OKB', - logo: 'https://s2.coinmarketcap.com/static/img/coins/64x64/3897.png', + symbol: 'S', + name: 'S', + logo: 'https://www.soniclabs.com/favicon.ico', decimal: 18, - minForGas: 10 ** 16, + minForGas: 2 * 10 ** 17, }, - defaultRpcUrl: 'https://rpc.xlayer.tech', + defaultRpcUrl: 'https://rpc.soniclabs.com', multicall: '0xcA11bde05977b3631167028862bE2a173976CA11', classic: { defaultSubgraph: '', @@ -66,10 +66,10 @@ const x1: NetworkInfo = { }, limitOrder: '*', averageBlockTimeInSeconds: 2.0, // dont use for base - coingeckoNetworkId: 'xlayer', - coingeckoNativeTokenId: 'okb', + coingeckoNetworkId: 'sonic', + coingeckoNativeTokenId: 's', dexToCompare: NOT_SUPPORT, geckoTermialId: NOT_SUPPORT, } -export default x1 +export default sonic diff --git a/src/constants/tokens.ts b/src/constants/tokens.ts index 2a12aa7877..c490767319 100644 --- a/src/constants/tokens.ts +++ b/src/constants/tokens.ts @@ -46,7 +46,7 @@ export const STABLE_COIN_ADDRESSES_TO_TAKE_FEE: Record = { [ChainId.SCROLL]: [], [ChainId.BLAST]: [], [ChainId.MANTLE]: [], - [ChainId.XLAYER]: [], + [ChainId.SONIC]: [], } // This is basically the same as STABLE_COIN_ADDRESSES_TO_TAKE_FEE, @@ -117,7 +117,7 @@ export const SUPER_STABLE_COINS_ADDRESS: { [chainId in ChainId]: string[] } = { [ChainId.SCROLL]: [], [ChainId.BLAST]: [], [ChainId.MANTLE]: [], - [ChainId.XLAYER]: [], + [ChainId.SONIC]: [], } export const CORRELATED_COINS_ADDRESS: { [chainId in ChainId]: string[][] } = { @@ -389,7 +389,7 @@ export const CORRELATED_COINS_ADDRESS: { [chainId in ChainId]: string[][] } = { [ChainId.SCROLL]: [], [ChainId.BLAST]: [], [ChainId.MANTLE]: [], - [ChainId.XLAYER]: [], + [ChainId.SONIC]: [], } export const KNC_ADDRESS = '0xdeFA4e8a7bcBA345F687a2f1456F5Edd9CE97202' @@ -415,7 +415,7 @@ export const KNC: { [chainId in ChainId]: Token } = { [ChainId.ZKSYNC]: new Token(ChainId.ZKSYNC, KNC_ADDRESS, 18, 'KNC', 'KNC'), [ChainId.BLAST]: new Token(ChainId.BLAST, KNC_ADDRESS, 18, 'KNC', 'KNC'), [ChainId.MANTLE]: new Token(ChainId.MANTLE, KNC_ADDRESS, 18, 'KNC', 'KNC'), - [ChainId.XLAYER]: new Token(ChainId.MANTLE, KNC_ADDRESS, 18, 'KNC', 'KNC'), + [ChainId.SONIC]: new Token(ChainId.SONIC, KNC_ADDRESS, 18, 'KNC', 'KNC'), [ChainId.AVAXTESTNET]: new Token(ChainId.AVAXTESTNET, KNC_ADDRESS, 18, 'KNC', 'KNC'), [ChainId.MUMBAI]: new Token(ChainId.MUMBAI, '0xFD1f9381Cb641Dc76Fe8087dbcf8ea84a2c77cbE', 18, 'KNC', 'KNC'), @@ -443,7 +443,7 @@ export const DEFAULT_OUTPUT_TOKEN_BY_CHAIN: Partial> = { [ChainId.SCROLL]: new Token(ChainId.SCROLL, '0xf55BEC9cafDbE8730f096Aa55dad6D22d44099Df', 6, 'USDT', 'Tether USD'), [ChainId.BLAST]: new Token(ChainId.BLAST, '0x4300000000000000000000000000000000000003', 18, 'USDB', 'USDB'), [ChainId.MANTLE]: new Token(ChainId.MANTLE, '0x201EBa5CC46D216Ce6DC03F6a759e8E766e956aE', 6, 'USDT', 'USDT'), - [ChainId.XLAYER]: new Token(ChainId.XLAYER, '0x1e4a5963abfd975d8c9021ce480b42188849d41d', 6, 'USDT', 'USDT'), + [ChainId.SONIC]: new Token(ChainId.SONIC, '0x391071Fe567d609E4af9d32de726d4C33679C7e2', 6, 'USDC', 'USDC'), } export const DEFAULT_SWAP_FEE_STABLE_PAIRS = 4 diff --git a/src/pages/About/AboutKyberSwap/index.tsx b/src/pages/About/AboutKyberSwap/index.tsx index 30333a63e8..ba447bb2e1 100644 --- a/src/pages/About/AboutKyberSwap/index.tsx +++ b/src/pages/About/AboutKyberSwap/index.tsx @@ -357,10 +357,7 @@ function AboutKyberSwap() { mantle - - X Layer - X Layer - + Sonic diff --git a/src/state/swap/hooks.ts b/src/state/swap/hooks.ts index 6464c6ae6f..22d4a5789a 100644 --- a/src/state/swap/hooks.ts +++ b/src/state/swap/hooks.ts @@ -261,7 +261,11 @@ export const useInputCurrency = () => { const allTokens = useAllTokens() const token = useMemo(() => { - return Object.values(allTokens).find(item => item?.symbol?.toLowerCase() === fromCurrency.toLowerCase()) + return Object.values(allTokens).find( + item => + item?.symbol?.toLowerCase() === fromCurrency.toLowerCase() || + item.address.toLowerCase() === fromCurrency.toLowerCase(), + ) }, [allTokens, fromCurrency]) const inputCurrency = useCurrencyV2(token ? token.address : fromCurrency) @@ -272,7 +276,11 @@ export const useOutputCurrency = () => { const allTokens = useAllTokens() const token = useMemo(() => { - return Object.values(allTokens).find(item => item?.symbol?.toLowerCase() === toCurrency.toLowerCase()) + return Object.values(allTokens).find( + item => + item?.symbol?.toLowerCase() === toCurrency.toLowerCase() || + item.address.toLowerCase() === toCurrency.toLowerCase(), + ) }, [allTokens, toCurrency]) const outputCurrency = useCurrencyV2(token ? token.address : toCurrency) diff --git a/yarn.lock b/yarn.lock index a8954c4b1f..c975dfa881 100644 --- a/yarn.lock +++ b/yarn.lock @@ -38,6 +38,11 @@ resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.9.4.tgz#aae21cb858bbb0411949d5b7b3051f4209043f62" integrity sha512-UK0bHA7hh9cR39V+4gl2/NnBBjoXIxkuWAPCaY4X7fbH4L/azIi7ilWOCjMUYfpJgraLUAqkRi2BqrjME8Rynw== +"@adraffy/ens-normalize@^1.10.1": + version "1.11.0" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz#42cc67c5baa407ac25059fcd7d405cc5ecdb0c33" + integrity sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg== + "@ampproject/remapping@^2.1.0", "@ampproject/remapping@^2.2.0": version "2.2.1" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" @@ -3736,10 +3741,10 @@ tiny-warning "^1.0.3" toformat "^2.0.0" -"@kyberswap/ks-sdk-core@1.1.6", "@kyberswap/ks-sdk-core@^1.0.5": - version "1.1.6" - resolved "https://registry.yarnpkg.com/@kyberswap/ks-sdk-core/-/ks-sdk-core-1.1.6.tgz#14b03c00408973c66df7b896b94fa4430d7d460b" - integrity sha512-VuG2xvNPY+/Ls+5Lrr41MuEFnJ/fdvpmXioflefICNU/n8UaNwB2QuD0+ozFFOflnEP3hIf712JDGmgRt+T1SA== +"@kyberswap/ks-sdk-core@1.1.7", "@kyberswap/ks-sdk-core@^1.0.5": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@kyberswap/ks-sdk-core/-/ks-sdk-core-1.1.7.tgz#4c55f731c68b5b059bec1795ca7e07e82ab36ef8" + integrity sha512-2JrHI4AxqpfUJtCVKe3K1raWrDBgfiluKjyEGIP9kKugVNiDjsToaj3MH+Wm0xQFsFULJfCJ7HatwWIEODC5Fw== dependencies: "@ethersproject/address" "^5.0.2" big.js "^5.2.2" @@ -4193,6 +4198,13 @@ dependencies: "@noble/hashes" "1.4.0" +"@noble/curves@1.7.0", "@noble/curves@~1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.7.0.tgz#0512360622439256df892f21d25b388f52505e45" + integrity sha512-UTMhXK9SeDhFJVrHeUJ5uZlI6ajXg10O6Ddocf9S6GjbSBVZsJo88HzKwXznNfGpMTRDyJkqMjNDPYgf0qFWnw== + dependencies: + "@noble/hashes" "1.6.0" + "@noble/curves@^1.4.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.5.0.tgz#7a9b9b507065d516e6dce275a1e31db8d2a100dd" @@ -4222,6 +4234,16 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.5.0.tgz#abadc5ca20332db2b1b2aa3e496e9af1213570b0" integrity sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA== +"@noble/hashes@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.6.0.tgz#d4bfb516ad6e7b5111c216a5cc7075f4cf19e6c5" + integrity sha512-YUULf0Uk4/mAA89w+k3+yUYh6NrEvxZa5T6SY3wlMvE2chHkxFUUIDI8/XW1QSC357iA5pSnqt7XEhvFOqmDyQ== + +"@noble/hashes@1.6.1", "@noble/hashes@~1.6.0": + version "1.6.1" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.6.1.tgz#df6e5943edcea504bac61395926d6fd67869a0d5" + integrity sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w== + "@noble/hashes@^1.1.2", "@noble/hashes@~1.3.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.0.tgz#085fd70f6d7d9d109671090ccae1d3bec62554a1" @@ -4809,6 +4831,11 @@ resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.3.tgz#8584115565228290a6c6c4961973e0903bb3df2f" integrity sha512-/+SgoRjLq7Xlf0CWuLHq2LUZeL/w65kfzAPG5NH9pcmBhs+nunQTn4gvdwgMTIXnt9b2C/1SeL2XiysZEyIC9Q== +"@scure/base@~1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.1.tgz#dd0b2a533063ca612c17aa9ad26424a2ff5aa865" + integrity sha512-DGmGtC8Tt63J5GfHgfl5CuAXh96VF/LD8K9Hr/Gv0J2lAoRGlPOMpqMpMbCTOoOJMZCk2Xt+DskdDyn6dEFdzQ== + "@scure/bip32@1.3.2": version "1.3.2" resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.3.2.tgz#90e78c027d5e30f0b22c1f8d50ff12f3fb7559f8" @@ -4827,6 +4854,15 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" +"@scure/bip32@1.6.0", "@scure/bip32@^1.5.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.6.0.tgz#6dbc6b4af7c9101b351f41231a879d8da47e0891" + integrity sha512-82q1QfklrUUdXJzjuRU7iG7D7XiFx5PHYVS0+oeNKhyDLT7WPqs6pBcM2W5ZdwOwKCwoE1Vy1se+DHjcXwCYnA== + dependencies: + "@noble/curves" "~1.7.0" + "@noble/hashes" "~1.6.0" + "@scure/base" "~1.2.1" + "@scure/bip39@1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.2.1.tgz#5cee8978656b272a917b7871c981e0541ad6ac2a" @@ -4843,6 +4879,14 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" +"@scure/bip39@1.5.0", "@scure/bip39@^1.4.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.5.0.tgz#c8f9533dbd787641b047984356531d84485f19be" + integrity sha512-Dop+ASYhnrwm9+HA/HwXg7j2ZqM6yk2fyLWb5znexjctFY3+E+eU8cIWI0Pql0Qx4hPZCijlGq4OL71g+Uz30A== + dependencies: + "@noble/hashes" "~1.6.0" + "@scure/base" "~1.2.1" + "@sentry-internal/browser-utils@8.34.0": version "8.34.0" resolved "https://registry.yarnpkg.com/@sentry-internal/browser-utils/-/browser-utils-8.34.0.tgz#36a50d503ad4ad51fce22e80670f8fd6fd195a27" @@ -7942,6 +7986,11 @@ abitype@1.0.5: resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.5.tgz#29d0daa3eea867ca90f7e4123144c1d1270774b6" integrity sha512-YzDhti7cjlfaBhHutMaboYB21Ha3rXR9QTkNJFzYC4kC8YclaiwPBBBJY8ejFdu2wnJeZCVZSMlQJ7fi8S6hsw== +abitype@1.0.7, abitype@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.7.tgz#876a0005d211e1c9132825d45bcee7b46416b284" + integrity sha512-ZfYYSktDQUwc2eduYu8C4wOs+RDPmnRYMh7zNfzeMtGGgb0U+6tLGjixUic6mXf5xKKCcgT5Qp6cv39tOARVFw== + abort-controller@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" @@ -13416,6 +13465,11 @@ isows@1.0.4: resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.4.tgz#810cd0d90cc4995c26395d2aa4cfa4037ebdf061" integrity sha512-hEzjY+x9u9hPmBom9IIAqdJCwNLax+xrPb51vEPpERoFlIxgmZcHzsT5jKG06nvInKOBGvReAVz80Umed5CczQ== +isows@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.6.tgz#0da29d706fa51551c663c627ace42769850f86e7" + integrity sha512-lPHCayd40oW98/I0uvgaHKWCSvkzY27LjWLbtzOm64yQ+G3Q5npjjbdppU65iZXkK1Zt+kH9pfegli0AYfwYYw== + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" @@ -15450,6 +15504,19 @@ ospath@^1.2.2: resolved "https://registry.yarnpkg.com/ospath/-/ospath-1.2.2.tgz#1276639774a3f8ef2572f7fe4280e0ea4550c07b" integrity sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA== +ox@0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ox/-/ox-0.1.2.tgz#0f791be2ccabeaf4928e6d423498fe1c8094e560" + integrity sha512-ak/8K0Rtphg9vnRJlbOdaX9R7cmxD2MiSthjWGaQdMk3D7hrAlDoM+6Lxn7hN52Za3vrXfZ7enfke/5WjolDww== + dependencies: + "@adraffy/ens-normalize" "^1.10.1" + "@noble/curves" "^1.6.0" + "@noble/hashes" "^1.5.0" + "@scure/bip32" "^1.5.0" + "@scure/bip39" "^1.4.0" + abitype "^1.0.6" + eventemitter3 "5.0.1" + p-cancelable@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0" @@ -19176,7 +19243,7 @@ viem@^1.6.0: isomorphic-ws "5.0.0" ws "8.13.0" -viem@^2.1.1, viem@^2.20.0: +viem@^2.1.1: version "2.20.0" resolved "https://registry.yarnpkg.com/viem/-/viem-2.20.0.tgz#abff4c2cf733bcc20978e662ea17db117a2881ef" integrity sha512-cM4vs81HnSNbfceI1MLkx4pCVzbVjl9xiNSv5SCutYjUyFFOVSPDlEyhpg2iHinxx1NM4Qne3END5eLT8rvUdg== @@ -19191,6 +19258,21 @@ viem@^2.1.1, viem@^2.20.0: webauthn-p256 "0.0.5" ws "8.17.1" +viem@^2.21.55: + version "2.21.55" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.21.55.tgz#a57ad31fcf2a0f6c011b1909f02c94421ec4f781" + integrity sha512-PgXew7C11cAuEtOSgRyQx2kJxEOPUwIwZA9dMglRByqJuFVA7wSGZZOOo/93iylAA8E15bEdqy9xulU3oKZ70Q== + dependencies: + "@noble/curves" "1.7.0" + "@noble/hashes" "1.6.1" + "@scure/bip32" "1.6.0" + "@scure/bip39" "1.5.0" + abitype "1.0.7" + isows "1.0.6" + ox "0.1.2" + webauthn-p256 "0.0.10" + ws "8.18.0" + vite-plugin-checker@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.5.6.tgz#233978091dfadef0873f0a8aacfe7fc431212b95" @@ -19358,6 +19440,14 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +webauthn-p256@0.0.10: + version "0.0.10" + resolved "https://registry.yarnpkg.com/webauthn-p256/-/webauthn-p256-0.0.10.tgz#877e75abe8348d3e14485932968edf3325fd2fdd" + integrity sha512-EeYD+gmIT80YkSIDb2iWq0lq2zbHo1CxHlQTeJ+KkCILWpVy3zASH3ByD4bopzfk0uCwXxLqKGLqp2W4O28VFA== + dependencies: + "@noble/curves" "^1.4.0" + "@noble/hashes" "^1.4.0" + webauthn-p256@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/webauthn-p256/-/webauthn-p256-0.0.5.tgz#0baebd2ba8a414b21cc09c0d40f9dd0be96a06bd" @@ -19652,6 +19742,11 @@ ws@8.17.1, ws@~8.17.1: resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== +ws@8.18.0: + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== + ws@8.5.0: version "8.5.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f"