diff --git a/.changeset/fresh-heads-visit.md b/.changeset/fresh-heads-visit.md new file mode 100644 index 00000000..a466e7aa --- /dev/null +++ b/.changeset/fresh-heads-visit.md @@ -0,0 +1,5 @@ +--- +"@stakekit/widget": patch +--- + +feat: add monad diff --git a/packages/widget/package.json b/packages/widget/package.json index cab96428..6304e946 100644 --- a/packages/widget/package.json +++ b/packages/widget/package.json @@ -80,8 +80,8 @@ "@solana/wallet-adapter-react": "^0.15.39", "@solana/wallet-adapter-wallets": "^0.19.37", "@solana/web3.js": "^1.98.4", - "@stakekit/api-hooks": "0.0.112", - "@stakekit/common": "^0.0.60", + "@stakekit/api-hooks": "0.0.113", + "@stakekit/common": "^0.0.61", "@stakekit/rainbowkit": "^2.2.9", "@tanstack/react-query": "^5.83.0", "@tanstack/react-virtual": "^3.13.12", diff --git a/packages/widget/src/domain/types/chains/evm.ts b/packages/widget/src/domain/types/chains/evm.ts index 9c802375..31f904b7 100644 --- a/packages/widget/src/domain/types/chains/evm.ts +++ b/packages/widget/src/domain/types/chains/evm.ts @@ -13,6 +13,7 @@ import { hoodi, linea, mainnet, + monadTestnet, optimism, plasmaTestnet, polygon, @@ -46,6 +47,8 @@ const supportedEVMChains = [ EvmNetworks.Gnosis, EvmNetworks.HyperEVM, EvmNetworks.Plasma, + EvmNetworks.Monad, + EvmNetworks.MonadTestnet, ] as const; export const supportedEVMChainsSet = new Set(supportedEVMChains); @@ -227,6 +230,35 @@ export const evmChainsMap: EvmChainsMap = { }, }, }, + [EvmNetworks.MonadTestnet]: { + type: "evm", + skChainName: EvmNetworks.MonadTestnet, + wagmiChain: { + ...monadTestnet, + iconUrl: getNetworkLogo(EvmNetworks.MonadTestnet), + }, + }, + [EvmNetworks.Monad]: { + type: "evm", + skChainName: EvmNetworks.Monad, + wagmiChain: { + id: 143, + name: "Monad", + iconUrl: getNetworkLogo(EvmNetworks.Monad), + nativeCurrency: { + name: "Monad", + symbol: "MON", + decimals: 18, + }, + rpcUrls: { + default: { + http: [ + "https://rpc-mainnet.monadinfra.com/rpc/wibIOSEgRVbSCBJwHBho3mLEQODJvzd2", + ], + }, + }, + }, + }, }; export enum EvmChainIds { @@ -251,6 +283,8 @@ export enum EvmChainIds { Gnosis = 100, Hyperevm = 999, Plasma = 9745, + Monad = 143, + MonadTestnet = 10143, } EvmChainIds satisfies Record< diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index daf0bbaf..bc0e5cfa 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -187,11 +187,11 @@ importers: specifier: ^1.98.4 version: 1.98.4(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.8.3)(utf-8-validate@5.0.10) '@stakekit/api-hooks': - specifier: 0.0.112 - version: 0.0.112(@faker-js/faker@9.9.0)(@tanstack/react-query@5.83.0(react@19.1.0))(msw@2.10.4(@types/node@24.0.15)(typescript@5.8.3))(react@19.1.0) + specifier: 0.0.113 + version: 0.0.113(@faker-js/faker@9.9.0)(@tanstack/react-query@5.83.0(react@19.1.0))(msw@2.10.4(@types/node@24.0.15)(typescript@5.8.3))(react@19.1.0) '@stakekit/common': - specifier: ^0.0.60 - version: 0.0.60 + specifier: ^0.0.61 + version: 0.0.61 '@stakekit/rainbowkit': specifier: ^2.2.9 version: 2.2.9(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@19.0.10)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)(viem@2.33.0(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76))(wagmi@2.15.7(@react-native-async-storage/async-storage@1.24.0(react-native@0.81.1(@babel/core@7.28.0)(@types/react@19.0.10)(bufferutil@4.0.9)(react@19.1.0)(utf-8-validate@5.0.10)))(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@19.0.10)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.1.0)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.33.0(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76))(zod@3.25.76)) @@ -4154,8 +4154,8 @@ packages: '@stacks/transactions@6.17.0': resolution: {integrity: sha512-FUah2BRgV66ApLcEXGNGhwyFTRXqX5Zco3LpiM3essw8PF0NQlHwwdPgtDko5RfrJl3LhGXXe/30nwsfNnB3+g==} - '@stakekit/api-hooks@0.0.112': - resolution: {integrity: sha512-V1PmX2dhcPGi8S4/zyDX2K1HNNtm1wLwfLC88WzPGS06kSWRlqQ9iCBfDlA1fMfyKaiO69PZkCftvO1TWNKbwQ==} + '@stakekit/api-hooks@0.0.113': + resolution: {integrity: sha512-bRAMP0bkWjUYNNwzCyz4CirHIiaUHQkGqSSSwlue8pGG0/6eEIjQULxwrUcdQqppZ+l7QpjrON6JzLuiRp6ZRQ==} peerDependencies: '@faker-js/faker': ^9 '@tanstack/react-query': '>=5' @@ -4169,8 +4169,8 @@ packages: msw: optional: true - '@stakekit/common@0.0.60': - resolution: {integrity: sha512-AwGzgsRWovXuC8szTwXpo+zKIllrUPZtPoTW7N7+KrrXEF18feFKMRkqcf0mvioQErnWZUmcUy9tmG8MESZcyQ==} + '@stakekit/common@0.0.61': + resolution: {integrity: sha512-NHaJ9Yq5ykjryWB/EIACcHvq5mUrqU5eNfMIcv9Ovadq0TOqfKAJSs8FcFQu6/p2zAHcFywJQUbNOunOsTR8xg==} '@stakekit/rainbowkit@2.2.9': resolution: {integrity: sha512-u756O/hZCgqqBNiQkP7K/BVpZaLHnqeIpvJUFVuW6SNrxcmPq53TrB/d4ghveztuIHlgyu9UyiQgZl3K6krLpg==} @@ -15584,7 +15584,7 @@ snapshots: transitivePeerDependencies: - encoding - '@stakekit/api-hooks@0.0.112(@faker-js/faker@9.9.0)(@tanstack/react-query@5.83.0(react@19.1.0))(msw@2.10.4(@types/node@24.0.15)(typescript@5.8.3))(react@19.1.0)': + '@stakekit/api-hooks@0.0.113(@faker-js/faker@9.9.0)(@tanstack/react-query@5.83.0(react@19.1.0))(msw@2.10.4(@types/node@24.0.15)(typescript@5.8.3))(react@19.1.0)': dependencies: react: 19.1.0 optionalDependencies: @@ -15592,7 +15592,7 @@ snapshots: '@tanstack/react-query': 5.83.0(react@19.1.0) msw: 2.10.4(@types/node@24.0.15)(typescript@5.8.3) - '@stakekit/common@0.0.60': {} + '@stakekit/common@0.0.61': {} '@stakekit/rainbowkit@2.2.9(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@19.0.10)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.3)(viem@2.33.0(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76))(wagmi@2.15.7(@react-native-async-storage/async-storage@1.24.0(react-native@0.81.1(@babel/core@7.28.0)(@types/react@19.0.10)(bufferutil@4.0.9)(react@19.1.0)(utf-8-validate@5.0.10)))(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@19.0.10)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.1.0)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.33.0(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76))(zod@3.25.76))': dependencies: