diff --git a/.pnp.cjs b/.pnp.cjs index 17ac8f4..8562290 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -29,10 +29,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./",\ "packageDependencies": [\ ["@amplitude/analytics-browser", "npm:1.6.6"],\ - ["@keplr-wallet/common", "npm:0.11.23"],\ - ["@keplr-wallet/cosmos", "npm:0.11.23"],\ - ["@keplr-wallet/proto-types", "npm:0.11.23"],\ - ["@keplr-wallet/types", "npm:0.11.23"],\ + ["@keplr-wallet/common", "npm:0.11.25"],\ + ["@keplr-wallet/cosmos", "npm:0.11.25"],\ + ["@keplr-wallet/proto-types", "npm:0.11.25"],\ + ["@keplr-wallet/types", "npm:0.11.25"],\ ["@next/eslint-plugin-next", "npm:13.0.5"],\ ["@sentry/nextjs", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0"],\ ["@types/eslint", "npm:8.4.10"],\ @@ -643,11 +643,11 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/common", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-common-npm-0.11.23-21e0bff02f-fa756241d0.zip/node_modules/@keplr-wallet/common/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-common-npm-0.11.25-9963e214ee-30aed28c56.zip/node_modules/@keplr-wallet/common/",\ "packageDependencies": [\ - ["@keplr-wallet/common", "npm:0.11.23"],\ - ["@keplr-wallet/crypto", "npm:0.11.23"],\ + ["@keplr-wallet/common", "npm:0.11.25"],\ + ["@keplr-wallet/crypto", "npm:0.11.25"],\ ["buffer", "npm:6.0.3"],\ ["delay", "npm:4.4.1"]\ ],\ @@ -655,16 +655,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/cosmos", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-cosmos-npm-0.11.23-e909d29c73-3777ad82ee.zip/node_modules/@keplr-wallet/cosmos/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-cosmos-npm-0.11.25-5a72ef6016-25a540d80f.zip/node_modules/@keplr-wallet/cosmos/",\ "packageDependencies": [\ - ["@keplr-wallet/cosmos", "npm:0.11.23"],\ + ["@keplr-wallet/cosmos", "npm:0.11.25"],\ ["@ethersproject/address", "npm:5.7.0"],\ - ["@keplr-wallet/common", "npm:0.11.23"],\ - ["@keplr-wallet/crypto", "npm:0.11.23"],\ - ["@keplr-wallet/proto-types", "npm:0.11.23"],\ - ["@keplr-wallet/types", "npm:0.11.23"],\ - ["@keplr-wallet/unit", "npm:0.11.23"],\ + ["@keplr-wallet/common", "npm:0.11.25"],\ + ["@keplr-wallet/crypto", "npm:0.11.25"],\ + ["@keplr-wallet/proto-types", "npm:0.11.25"],\ + ["@keplr-wallet/types", "npm:0.11.25"],\ + ["@keplr-wallet/unit", "npm:0.11.25"],\ ["axios", "npm:0.27.2"],\ ["bech32", "npm:1.1.4"],\ ["buffer", "npm:6.0.3"],\ @@ -675,10 +675,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/crypto", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-crypto-npm-0.11.23-00a1560834-660425deb6.zip/node_modules/@keplr-wallet/crypto/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-crypto-npm-0.11.25-eb75244924-bdb5ff6c57.zip/node_modules/@keplr-wallet/crypto/",\ "packageDependencies": [\ - ["@keplr-wallet/crypto", "npm:0.11.23"],\ + ["@keplr-wallet/crypto", "npm:0.11.25"],\ ["@ethersproject/keccak256", "npm:5.7.0"],\ ["bip32", "npm:2.0.6"],\ ["bip39", "npm:3.0.4"],\ @@ -692,10 +692,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/proto-types", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-proto-types-npm-0.11.23-e19f2b6321-0dfe72c3c9.zip/node_modules/@keplr-wallet/proto-types/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-proto-types-npm-0.11.25-8f5637fdcf-07f0efcd41.zip/node_modules/@keplr-wallet/proto-types/",\ "packageDependencies": [\ - ["@keplr-wallet/proto-types", "npm:0.11.23"],\ + ["@keplr-wallet/proto-types", "npm:0.11.25"],\ ["long", "npm:4.0.0"],\ ["protobufjs", "npm:6.11.3"]\ ],\ @@ -703,10 +703,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/types", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-types-npm-0.11.23-47d40e583e-15c60741f3.zip/node_modules/@keplr-wallet/types/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-types-npm-0.11.25-03c9c802b5-1482307c0a.zip/node_modules/@keplr-wallet/types/",\ "packageDependencies": [\ - ["@keplr-wallet/types", "npm:0.11.23"],\ + ["@keplr-wallet/types", "npm:0.11.25"],\ ["axios", "npm:0.27.2"],\ ["long", "npm:4.0.0"],\ ["secretjs", "npm:0.17.7"]\ @@ -715,11 +715,11 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["@keplr-wallet/unit", [\ - ["npm:0.11.23", {\ - "packageLocation": "./.yarn/cache/@keplr-wallet-unit-npm-0.11.23-5690bbdf49-560aec00cb.zip/node_modules/@keplr-wallet/unit/",\ + ["npm:0.11.25", {\ + "packageLocation": "./.yarn/cache/@keplr-wallet-unit-npm-0.11.25-e5c3f823f6-dfed155ce2.zip/node_modules/@keplr-wallet/unit/",\ "packageDependencies": [\ - ["@keplr-wallet/unit", "npm:0.11.23"],\ - ["@keplr-wallet/types", "npm:0.11.23"],\ + ["@keplr-wallet/unit", "npm:0.11.25"],\ + ["@keplr-wallet/types", "npm:0.11.25"],\ ["big-integer", "npm:1.6.51"],\ ["utility-types", "npm:3.10.0"]\ ],\ @@ -4435,10 +4435,10 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [\ ["icns-frontend", "workspace:."],\ ["@amplitude/analytics-browser", "npm:1.6.6"],\ - ["@keplr-wallet/common", "npm:0.11.23"],\ - ["@keplr-wallet/cosmos", "npm:0.11.23"],\ - ["@keplr-wallet/proto-types", "npm:0.11.23"],\ - ["@keplr-wallet/types", "npm:0.11.23"],\ + ["@keplr-wallet/common", "npm:0.11.25"],\ + ["@keplr-wallet/cosmos", "npm:0.11.25"],\ + ["@keplr-wallet/proto-types", "npm:0.11.25"],\ + ["@keplr-wallet/types", "npm:0.11.25"],\ ["@next/eslint-plugin-next", "npm:13.0.5"],\ ["@sentry/nextjs", "virtual:4b77e00d446246df1ed27001550885fbf1b51be18c660c1b5c357d3d763078ecef2a676194291a120f149b87573081e5af0621dc83cf1f83383639f39ac133c7#npm:7.27.0"],\ ["@types/eslint", "npm:8.4.10"],\ diff --git a/.yarn/cache/@keplr-wallet-common-npm-0.11.23-21e0bff02f-fa756241d0.zip b/.yarn/cache/@keplr-wallet-common-npm-0.11.25-9963e214ee-30aed28c56.zip similarity index 65% rename from .yarn/cache/@keplr-wallet-common-npm-0.11.23-21e0bff02f-fa756241d0.zip rename to .yarn/cache/@keplr-wallet-common-npm-0.11.25-9963e214ee-30aed28c56.zip index 22447fb..85c35d8 100644 Binary files a/.yarn/cache/@keplr-wallet-common-npm-0.11.23-21e0bff02f-fa756241d0.zip and b/.yarn/cache/@keplr-wallet-common-npm-0.11.25-9963e214ee-30aed28c56.zip differ diff --git a/.yarn/cache/@keplr-wallet-cosmos-npm-0.11.23-e909d29c73-3777ad82ee.zip b/.yarn/cache/@keplr-wallet-cosmos-npm-0.11.25-5a72ef6016-25a540d80f.zip similarity index 81% rename from .yarn/cache/@keplr-wallet-cosmos-npm-0.11.23-e909d29c73-3777ad82ee.zip rename to .yarn/cache/@keplr-wallet-cosmos-npm-0.11.25-5a72ef6016-25a540d80f.zip index 7327e60..436e28d 100644 Binary files a/.yarn/cache/@keplr-wallet-cosmos-npm-0.11.23-e909d29c73-3777ad82ee.zip and b/.yarn/cache/@keplr-wallet-cosmos-npm-0.11.25-5a72ef6016-25a540d80f.zip differ diff --git a/.yarn/cache/@keplr-wallet-crypto-npm-0.11.23-00a1560834-660425deb6.zip b/.yarn/cache/@keplr-wallet-crypto-npm-0.11.25-eb75244924-bdb5ff6c57.zip similarity index 65% rename from .yarn/cache/@keplr-wallet-crypto-npm-0.11.23-00a1560834-660425deb6.zip rename to .yarn/cache/@keplr-wallet-crypto-npm-0.11.25-eb75244924-bdb5ff6c57.zip index acdf3ac..4fd8593 100644 Binary files a/.yarn/cache/@keplr-wallet-crypto-npm-0.11.23-00a1560834-660425deb6.zip and b/.yarn/cache/@keplr-wallet-crypto-npm-0.11.25-eb75244924-bdb5ff6c57.zip differ diff --git a/.yarn/cache/@keplr-wallet-proto-types-npm-0.11.23-e19f2b6321-0dfe72c3c9.zip b/.yarn/cache/@keplr-wallet-proto-types-npm-0.11.25-8f5637fdcf-07f0efcd41.zip similarity index 93% rename from .yarn/cache/@keplr-wallet-proto-types-npm-0.11.23-e19f2b6321-0dfe72c3c9.zip rename to .yarn/cache/@keplr-wallet-proto-types-npm-0.11.25-8f5637fdcf-07f0efcd41.zip index a3e91c4..08b1e10 100644 Binary files a/.yarn/cache/@keplr-wallet-proto-types-npm-0.11.23-e19f2b6321-0dfe72c3c9.zip and b/.yarn/cache/@keplr-wallet-proto-types-npm-0.11.25-8f5637fdcf-07f0efcd41.zip differ diff --git a/.yarn/cache/@keplr-wallet-types-npm-0.11.23-47d40e583e-15c60741f3.zip b/.yarn/cache/@keplr-wallet-types-npm-0.11.23-47d40e583e-15c60741f3.zip deleted file mode 100644 index 2fea824..0000000 Binary files a/.yarn/cache/@keplr-wallet-types-npm-0.11.23-47d40e583e-15c60741f3.zip and /dev/null differ diff --git a/.yarn/cache/@keplr-wallet-types-npm-0.11.25-03c9c802b5-1482307c0a.zip b/.yarn/cache/@keplr-wallet-types-npm-0.11.25-03c9c802b5-1482307c0a.zip new file mode 100644 index 0000000..915e1c0 Binary files /dev/null and b/.yarn/cache/@keplr-wallet-types-npm-0.11.25-03c9c802b5-1482307c0a.zip differ diff --git a/.yarn/cache/@keplr-wallet-unit-npm-0.11.23-5690bbdf49-560aec00cb.zip b/.yarn/cache/@keplr-wallet-unit-npm-0.11.25-e5c3f823f6-dfed155ce2.zip similarity index 87% rename from .yarn/cache/@keplr-wallet-unit-npm-0.11.23-5690bbdf49-560aec00cb.zip rename to .yarn/cache/@keplr-wallet-unit-npm-0.11.25-e5c3f823f6-dfed155ce2.zip index ff3da41..36aa8bc 100644 Binary files a/.yarn/cache/@keplr-wallet-unit-npm-0.11.23-5690bbdf49-560aec00cb.zip and b/.yarn/cache/@keplr-wallet-unit-npm-0.11.25-e5c3f823f6-dfed155ce2.zip differ diff --git a/components/chain-list/chain-item.tsx b/components/chain-list/chain-item.tsx index 317f319..f8680ed 100644 --- a/components/chain-list/chain-item.tsx +++ b/components/chain-list/chain-item.tsx @@ -1,4 +1,4 @@ -import { ChainItemType } from "../../types"; +import { ChainItemType, DisabledChainItemType } from "../../types"; import { FunctionComponent, useEffect, useState } from "react"; import color from "../../styles/color"; @@ -8,15 +8,31 @@ import { ChainImage } from "./chain-image"; import { Checkbox } from "../checkbox"; interface Props { - chainItem: ChainItemType; + chainItem: ChainItemType | DisabledChainItemType; checkedItemHandler: (chainItem: ChainItemType, isChecked: boolean) => void; checkedItems: Set; - disabled?: boolean; } export const ChainItem: FunctionComponent = (props) => { - const { chainItem, checkedItemHandler, checkedItems, disabled } = props; - const [checked, setChecked] = useState(!!disabled); + const { chainItem, checkedItemHandler, checkedItems } = props; + const disabled = "disabled" in chainItem && chainItem.disabled; + // XXX: Currently, this component can't handle `checked` state well, + // If chain is disabled, it should be disabled in general. + // However, if it is disabled due to the limitation of ethermint and ledger, + // it should be not checked. + // To solve this problem, for now, just use dumb way. + // If chain is disabled with explicit reason, it should be unchecked. + const [checked, setChecked] = useState(!!disabled && !chainItem.reason); + + useEffect(() => { + if (disabled) { + if (chainItem.reason) { + setChecked(false); + } else { + setChecked(true); + } + } + }, [chainItem, disabled]); const checkHandler = () => { if (!disabled) { @@ -46,7 +62,12 @@ export const ChainItem: FunctionComponent = (props) => { /> {`.${chainItem.prefix}`} - {chainItem.address} + {chainItem.address ? ( + {chainItem.address} + ) : null} + {disabled && chainItem.reason ? ( + {chainItem.reason.message} + ) : null} @@ -117,3 +138,10 @@ export const WalletAddress = styled.div` color: ${color.grey["400"]}; `; + +export const DisabledReason = styled.div` + color: ${color.grey["200"]}; + font-weight: 500; + font-size: 14px; + line-height: 17px; +`; diff --git a/components/chain-list/chain-list.tsx b/components/chain-list/chain-list.tsx index 805b241..edf572b 100644 --- a/components/chain-list/chain-list.tsx +++ b/components/chain-list/chain-list.tsx @@ -1,12 +1,12 @@ import { Dispatch, FunctionComponent, SetStateAction, useEffect } from "react"; -import { ChainItemType } from "../../types"; +import { ChainItemType, DisabledChainItemType } from "../../types"; import color from "../../styles/color"; import styled from "styled-components"; import { ChainItem } from "./chain-item"; interface Props { chainList: ChainItemType[]; - disabledChainList: ChainItemType[]; + disabledChainList: DisabledChainItemType[]; checkedItems: Set; setCheckedItems: Dispatch>>; } @@ -30,7 +30,7 @@ export const ChainList: FunctionComponent = (props) => { {chainList.map((chainItem) => ( = (props) => { ))} {disabledChainList.map((chainItem) => ( ))} diff --git a/package.json b/package.json index 49a03c7..f43ca42 100644 --- a/package.json +++ b/package.json @@ -11,10 +11,10 @@ }, "dependencies": { "@amplitude/analytics-browser": "^1.6.6", - "@keplr-wallet/common": "^0.11.23", - "@keplr-wallet/cosmos": "^0.11.23", - "@keplr-wallet/proto-types": "^0.11.23", - "@keplr-wallet/types": "^0.11.23", + "@keplr-wallet/common": "^0.11.25", + "@keplr-wallet/cosmos": "^0.11.25", + "@keplr-wallet/proto-types": "^0.11.25", + "@keplr-wallet/types": "^0.11.25", "@sentry/nextjs": "^7.27.0", "axios": "^0.27.2", "buffer": "^6.0.3", diff --git a/pages/verification/index.tsx b/pages/verification/index.tsx index 5ce3ac0..96ca3f0 100644 --- a/pages/verification/index.tsx +++ b/pages/verification/index.tsx @@ -6,6 +6,7 @@ import { useEffect, useState } from "react"; // Types import { ChainItemType, + DisabledChainItemType, QueryError, RegisteredAddresses, TwitterProfileType, @@ -70,12 +71,17 @@ export default function VerificationPage() { name: string; pubKey: Uint8Array; bech32Address: string; + isLedgerNano?: boolean; }>(); - const [chainList, setChainList] = useState([]); - const [disabledChainList, setDisabledChainList] = useState( - [], - ); + const [chainList, setChainList] = useState< + (ChainItemType & { + isEthermintLike?: boolean; + })[] + >([]); + const [disabledChainList, setDisabledChainList] = useState< + DisabledChainItemType[] + >([]); const [registeredChainList, setRegisteredChainList] = useState< RegisteredAddresses[] >([]); @@ -101,23 +107,51 @@ export default function VerificationPage() { }, [wallet]); useEffect(() => { - const disabledChainList = chainList.filter((chain) => { - for (const registeredChain of registeredChainList) { - if ( - chain.prefix === registeredChain.bech32_prefix && - chain.address === registeredChain.address - ) { + const disabledChainList = chainList + .filter((chain) => { + if (!chain.address) { + // Address can be "" if `getKey` failed. return true; } - } - return false; + for (const registeredChain of registeredChainList) { + if ( + chain.prefix === registeredChain.bech32_prefix && + chain.address === registeredChain.address + ) { + return true; + } + } + + return false; + }) + .map((chain) => { + if (walletKey) { + if (walletKey.isLedgerNano && chain.isEthermintLike) { + return { + ...chain, + disabled: true, + reason: new Error( + "Support for Ethereum address on Ledger is coming soon.", + ), + }; + } + } + + return { + ...chain, + disabled: true, + }; + }); + + const filteredChainList = chainList.filter((chain) => { + return ( + disabledChainList.find( + (disabled) => disabled.chainId === chain.chainId, + ) == null + ); }); - const filteredChainList = chainList.filter( - (chain) => !disabledChainList.includes(chain), - ); - setChainList(filteredChainList); setDisabledChainList(disabledChainList); @@ -200,7 +234,7 @@ export default function VerificationPage() { const chainIds = (await wallet.getChainInfosWithoutEndpoints()).map( (c) => c.chainId, ); - const chainKeys = await Promise.all( + const chainKeys = await Promise.allSettled( chainIds.map((chainId) => wallet.getKey(chainId)), ); @@ -213,14 +247,20 @@ export default function VerificationPage() { chainImageUrl: `https://raw.githubusercontent.com/chainapsis/keplr-chain-registry/main/images/${ ChainIdHelper.parse(chainInfo.chainId).identifier }/chain.png`, + isEthermintLike: chainInfo.isEthermintLike, }; }, ); const chainArray = []; for (let i = 0; i < chainKeys.length; i++) { + const chainKey = chainKeys[i]; + if (chainKey.status !== "fulfilled") { + console.log("Failed to get key from wallet", chainKey); + } chainArray.push({ - address: chainKeys[i].bech32Address, + address: + chainKey.status === "fulfilled" ? chainKey.value.bech32Address : "", ...chainInfos[i], }); } diff --git a/types/chain-item-type.ts b/types/chain-item-type.ts index 315b88a..18c8485 100644 --- a/types/chain-item-type.ts +++ b/types/chain-item-type.ts @@ -5,3 +5,10 @@ export interface ChainItemType { chainImageUrl: string; address: string; } + +export interface DisabledChainItemType extends ChainItemType { + disabled: true; + + // Show reason why this chain is disabled to user if needed. + reason?: Error; +} diff --git a/wallets/keplr.ts b/wallets/keplr.ts index 0f8d85a..06c5be5 100644 --- a/wallets/keplr.ts +++ b/wallets/keplr.ts @@ -45,18 +45,32 @@ export class KeplrWallet implements Wallet { } getChainInfosWithoutEndpoints(): Promise< - Omit[] + (Pick & { + readonly isEthermintLike?: boolean; + })[] > { - // TODO: Update @keplr-wallet/types - return (this.keplr as any).getChainInfosWithoutEndpoints(); + return this.keplr.getChainInfosWithoutEndpoints().then((chainInfos) => { + return chainInfos.map((chainInfo) => { + return { + ...chainInfo, + isEthermintLike: chainInfo.features?.includes("eth-address-gen"), + }; + }); + }); } getKey(chainId: string): Promise<{ readonly name: string; readonly pubKey: Uint8Array; readonly bech32Address: string; + readonly isLedgerNano?: boolean; }> { - return this.keplr.getKey(chainId); + return this.keplr.getKey(chainId).then((key) => { + return { + ...key, + isLedgerNano: key.isNanoLedger, + }; + }); } init(chainIds: string[]): Promise { @@ -88,8 +102,7 @@ export class KeplrWallet implements Wallet { signature: Uint8Array; }[] > { - // TODO: Update @keplr-wallet/types - return (this.keplr as any).signICNSAdr36( + return this.keplr.signICNSAdr36( chainId, contractAddress, owner, diff --git a/wallets/types.ts b/wallets/types.ts index 61ef521..7cc85bd 100644 --- a/wallets/types.ts +++ b/wallets/types.ts @@ -4,13 +4,16 @@ export interface Wallet { init(chainIds: string[]): Promise; getChainInfosWithoutEndpoints(): Promise< - Omit[] + (Pick & { + readonly isEthermintLike?: boolean; + })[] >; getKey(chainId: string): Promise<{ readonly name: string; readonly pubKey: Uint8Array; readonly bech32Address: string; + readonly isLedgerNano?: boolean; }>; signAmino( chainId: string, diff --git a/yarn.lock b/yarn.lock index 0c3c2f8..c8f6a0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -498,39 +498,39 @@ __metadata: languageName: node linkType: hard -"@keplr-wallet/common@npm:0.11.23, @keplr-wallet/common@npm:^0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/common@npm:0.11.23" +"@keplr-wallet/common@npm:0.11.25, @keplr-wallet/common@npm:^0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/common@npm:0.11.25" dependencies: - "@keplr-wallet/crypto": 0.11.23 + "@keplr-wallet/crypto": 0.11.25 buffer: ^6.0.3 delay: ^4.4.0 - checksum: fa756241d0dece173875ee851df2702adfa934d36f2b074efd3895090940db12018cb4489733225ed7660af8da3a58104da229b1a1db6971b6a678e8f4a8c9d9 + checksum: 30aed28c568d2f0b33dc3d1d05526ba9893e4d458187109f19b20025b9ef95094aa328d4473a7bdf6c45dce251d7bfc85fd5f6adf7cd5586060fbe481dc76411 languageName: node linkType: hard -"@keplr-wallet/cosmos@npm:^0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/cosmos@npm:0.11.23" +"@keplr-wallet/cosmos@npm:^0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/cosmos@npm:0.11.25" dependencies: "@ethersproject/address": ^5.6.0 - "@keplr-wallet/common": 0.11.23 - "@keplr-wallet/crypto": 0.11.23 - "@keplr-wallet/proto-types": 0.11.23 - "@keplr-wallet/types": 0.11.23 - "@keplr-wallet/unit": 0.11.23 + "@keplr-wallet/common": 0.11.25 + "@keplr-wallet/crypto": 0.11.25 + "@keplr-wallet/proto-types": 0.11.25 + "@keplr-wallet/types": 0.11.25 + "@keplr-wallet/unit": 0.11.25 axios: ^0.27.2 bech32: ^1.1.4 buffer: ^6.0.3 long: ^4.0.0 protobufjs: ^6.11.2 - checksum: 3777ad82ee55c341db417e9a4d079f55e78ddd6b0372c3e3b7d3f1cf6598ce4bbae1b2ed3d7f72980d861c2580da1b41e9143f30c524b45e86cc0b56e016de50 + checksum: 25a540d80fb5cd93d88f7b071b801789fb2bd7360b610f57231070411fed63d6a17ab3ad014bc54158c43cf1034799428c6e6087b7db1cbe09cd08726e95535c languageName: node linkType: hard -"@keplr-wallet/crypto@npm:0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/crypto@npm:0.11.23" +"@keplr-wallet/crypto@npm:0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/crypto@npm:0.11.25" dependencies: "@ethersproject/keccak256": ^5.5.0 bip32: ^2.0.6 @@ -540,39 +540,39 @@ __metadata: crypto-js: ^4.0.0 elliptic: ^6.5.3 sha.js: ^2.4.11 - checksum: 660425deb64b5aee5a2497470490ad11f97472823909dd9eb3066730cc4011656433d0349279866369d00fe166680ba21b17a990f93000a0aab712f4da5274d8 + checksum: bdb5ff6c57fbe296e40da9e913e5cf89a29a2b5f2887d56b2d2cac801ae06cc8b9b0b16b7d8cc5275bca434a3f632bf1b1f52c3b5b3253643f0adb4a9771e85e languageName: node linkType: hard -"@keplr-wallet/proto-types@npm:0.11.23, @keplr-wallet/proto-types@npm:^0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/proto-types@npm:0.11.23" +"@keplr-wallet/proto-types@npm:0.11.25, @keplr-wallet/proto-types@npm:^0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/proto-types@npm:0.11.25" dependencies: long: ^4.0.0 protobufjs: ^6.11.2 - checksum: 0dfe72c3c9d12319276fc7e67ff997b4a01216299e73d331132565d8489ca729d4207713c11b91f8893774995c2d813b7faed6b83911400d13969a0d3a147189 + checksum: 07f0efcd41ef83eb7e9441ab06cd7e607311c5db1fef09b90c0bbef8baeff2feded3ca6a958243cfdfb6dd9aa7ebd6ee51df781c2b3bfe29e2a83961ef7eb58b languageName: node linkType: hard -"@keplr-wallet/types@npm:0.11.23, @keplr-wallet/types@npm:^0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/types@npm:0.11.23" +"@keplr-wallet/types@npm:0.11.25, @keplr-wallet/types@npm:^0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/types@npm:0.11.25" dependencies: axios: ^0.27.2 long: ^4.0.0 secretjs: 0.17.7 - checksum: 15c60741f3b15c3ad2542ba655224b1fdd95736c31b2885c1e37c6fb7cac14c8e6b80a2add84d5ae17e97ab016b3046f4720729580017300ba8d0873cf7a2dd3 + checksum: 1482307c0aabd9494635fa62a99160e5f0906951de9af027a48d927c205d130f1c62c43172ef672ad24982cc9864aab91866a6568d3e2d833ecb584b22eab9a8 languageName: node linkType: hard -"@keplr-wallet/unit@npm:0.11.23": - version: 0.11.23 - resolution: "@keplr-wallet/unit@npm:0.11.23" +"@keplr-wallet/unit@npm:0.11.25": + version: 0.11.25 + resolution: "@keplr-wallet/unit@npm:0.11.25" dependencies: - "@keplr-wallet/types": 0.11.23 + "@keplr-wallet/types": 0.11.25 big-integer: ^1.6.48 utility-types: ^3.10.0 - checksum: 560aec00cb6b0b6b9934f70712ad43632c7420fb61b3d66fb8789b5cfdf9b8dd8e5ec5e43159e31e2f845e8ea8b1bf15ba8c97bf47fd0ea4734403c5321fd0bc + checksum: dfed155ce2487396a549e7fbab514adceec30938f45fd5af61d03bf51a5be558736e450acf5b1ff764e9d3d42634306f6d10c1fe6480adad00ac3d7162e27985 languageName: node linkType: hard @@ -3546,10 +3546,10 @@ __metadata: resolution: "icns-frontend@workspace:." dependencies: "@amplitude/analytics-browser": ^1.6.6 - "@keplr-wallet/common": ^0.11.23 - "@keplr-wallet/cosmos": ^0.11.23 - "@keplr-wallet/proto-types": ^0.11.23 - "@keplr-wallet/types": ^0.11.23 + "@keplr-wallet/common": ^0.11.25 + "@keplr-wallet/cosmos": ^0.11.25 + "@keplr-wallet/proto-types": ^0.11.25 + "@keplr-wallet/types": ^0.11.25 "@next/eslint-plugin-next": ^13.0.5 "@sentry/nextjs": ^7.27.0 "@types/eslint": ^8.4.10