From 70ecb99534fdabc3bff2ab8e0dfa0f3a51077641 Mon Sep 17 00:00:00 2001 From: Michael Moldoveanu Date: Wed, 28 Aug 2024 11:27:08 -0400 Subject: [PATCH] chore: upgrade to latest version of viem and wagmi (#941) --- .vitest/package.json | 2 +- aa-sdk/core/package.json | 17 +- .../core/src/account/smartContractAccount.ts | 6 +- .../internal/initUserOperation.ts | 2 +- aa-sdk/core/src/index.ts | 1 - aa-sdk/ethers/package.json | 15 +- account-kit/core/package.json | 22 +- account-kit/infra/package.json | 19 +- .../client/decorators/alchemyEnhancedApis.ts | 24 +- .../src/client/isAlchemySmartAccountClient.ts | 6 +- account-kit/plugingen/package.json | 10 +- .../plugin-generator/get-contract-gen.ts | 2 +- account-kit/react/package.json | 23 +- account-kit/signer/package.json | 19 +- account-kit/smart-contracts/package.json | 17 +- .../plugindefs/multi-owner/config.ts | 9 +- .../plugindefs/multisig/config.ts | 9 +- .../plugindefs/session-key/config.ts | 10 +- .../clients/multiOwnerLightAccount.test.ts | 2 +- .../src/msca/plugins/multi-owner/plugin.ts | 6 +- .../src/msca/plugins/multisig/plugin.ts | 6 +- .../src/msca/plugins/session-key/plugin.ts | 6 +- doc-gen/package.json | 4 +- package.json | 28 +- site/package.json | 4 +- site/pages/migration-guide.mdx | 12 + templates/eslint/package.json | 2 +- templates/typescript/base.json | 6 +- templates/typescript/build.json | 4 +- yarn.lock | 544 ++++++++++++------ 30 files changed, 512 insertions(+), 325 deletions(-) diff --git a/.vitest/package.json b/.vitest/package.json index 6b74e99919..fe39e5a084 100644 --- a/.vitest/package.json +++ b/.vitest/package.json @@ -9,7 +9,7 @@ "prool": "^0.0.15", "tar": "^7.4.1", "typescript-template": "*", - "viem": "2.8.6" + "viem": "2.20.0" }, "dependencies": { "@aa-sdk/core": "^4.0.0-alpha.8" diff --git a/aa-sdk/core/package.json b/aa-sdk/core/package.json index 474331b842..bc4cba96a4 100644 --- a/aa-sdk/core/package.json +++ b/aa-sdk/core/package.json @@ -5,7 +5,7 @@ "description": "viem based SDK that enables interactions with ERC-4337 Smart Accounts. ABIs are based off the definitions generated in @account-abstraction/contracts", "author": "Alchemy", "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -23,7 +23,7 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./package.json": "./package.json" }, @@ -32,11 +32,10 @@ "registry": "https://registry.npmjs.org/" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "prebuild": "npx tsx ./inject-version.ts", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/aa-sdk/core", "clean": "rm -rf ./dist", "test": "vitest", @@ -53,11 +52,11 @@ "dependencies": { "abitype": "^0.8.3", "eventemitter3": "^5.0.1", - "viem": "2.8.6", + "viem": "2.20.0", "zod": "^3.22.4" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" }, "repository": { "type": "git", diff --git a/aa-sdk/core/src/account/smartContractAccount.ts b/aa-sdk/core/src/account/smartContractAccount.ts index 0489938477..1e9bed30c9 100644 --- a/aa-sdk/core/src/account/smartContractAccount.ts +++ b/aa-sdk/core/src/account/smartContractAccount.ts @@ -118,7 +118,7 @@ export type SmartContractAccount< typedDataDefinition: TypedDataDefinition ) => Promise; encodeUpgradeToAndCall: (params: UpgradeToAndCallParams) => Promise; - getNonce(nonceKey?: bigint): Promise; + getAccountNonce(nonceKey?: bigint): Promise; getInitCode: () => Promise; isAccountDeployed: () => Promise; getFactoryAddress: () => Promise
; @@ -374,7 +374,7 @@ export async function toSmartContractAccount( if (deploymentState === DeploymentState.DEPLOYED) { return "0x"; } - const contractCode = await client.getBytecode({ + const contractCode = await client.getCode({ address: accountAddress_, }); @@ -509,7 +509,7 @@ export async function toSmartContractAccount( encodeUpgradeToAndCall: encodeUpgradeToAndCall_, getEntryPoint: () => entryPoint, isAccountDeployed, - getNonce, + getAccountNonce: getNonce, signMessageWith6492, signTypedDataWith6492, getImplementationAddress, diff --git a/aa-sdk/core/src/actions/smartAccount/internal/initUserOperation.ts b/aa-sdk/core/src/actions/smartAccount/internal/initUserOperation.ts index e1accef092..ce3386c01d 100644 --- a/aa-sdk/core/src/actions/smartAccount/internal/initUserOperation.ts +++ b/aa-sdk/core/src/actions/smartAccount/internal/initUserOperation.ts @@ -62,7 +62,7 @@ export async function _initUserOperation< const signature = account.getDummySignature(); - const nonce = account.getNonce(overrides?.nonceKey); + const nonce = account.getAccountNonce(overrides?.nonceKey); const struct = entryPoint.version === "0.6.0" diff --git a/aa-sdk/core/src/index.ts b/aa-sdk/core/src/index.ts index 29f9280d13..3a30e59763 100644 --- a/aa-sdk/core/src/index.ts +++ b/aa-sdk/core/src/index.ts @@ -1,6 +1,5 @@ export type { Abi } from "abitype"; export type { Address, HttpTransport } from "viem"; -export * as chains from "viem/chains"; export { EntryPointAbi_v6 } from "./abis/EntryPointAbi_v6.js"; export { EntryPointAbi_v7 } from "./abis/EntryPointAbi_v7.js"; diff --git a/aa-sdk/ethers/package.json b/aa-sdk/ethers/package.json index 9f6fe974a9..c704f6d74d 100644 --- a/aa-sdk/ethers/package.json +++ b/aa-sdk/ethers/package.json @@ -5,7 +5,7 @@ "description": "Ethers.js wrapper for @aa-sdk/core", "author": "Alchemy", "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -23,7 +23,7 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./package.json": "./package.json" }, @@ -32,10 +32,9 @@ "registry": "https://registry.npmjs.org/" }, "scripts": { - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/aa-sdk/ethers", "clean": "rm -rf ./dist", "test": "vitest", @@ -60,10 +59,10 @@ "@ethersproject/keccak256": "^5.7.0", "@ethersproject/providers": "^5.7.2", "@ethersproject/wallet": "^5.7.0", - "viem": "2.8.6" + "viem": "2.20.0" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" }, "repository": { "type": "git", diff --git a/account-kit/core/package.json b/account-kit/core/package.json index 482f2f4339..0ee2824ef6 100644 --- a/account-kit/core/package.json +++ b/account-kit/core/package.json @@ -6,7 +6,7 @@ "license": "MIT", "private": false, "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -24,16 +24,15 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./package.json": "./package.json" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "prebuild": "npx tsx ./inject-version.ts", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "clean": "rm -rf ./dist", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/account-kit/core", "test": "vitest --passWithNoTests", @@ -49,17 +48,18 @@ "@account-kit/infra": "^4.0.0-alpha.12", "@account-kit/signer": "^4.0.0-alpha.12", "@account-kit/smart-contracts": "^4.0.0-alpha.12", - "@wagmi/core": "^2.9.8", "js-cookie": "^3.0.5", - "viem": "2.8.6", + "wagmi": "2.12.7", + "viem": "2.20.0", "zod": "^3.22.4", "zustand": "^4.5.2" }, "peerDependencies": { - "viem": "2.8.6" + "wagmi": "2.12.7", + "viem": "2.20.0" }, "resolutions": { - "viem": "2.8.6" + "viem": "2.20.0" }, "publishConfig": { "access": "public", diff --git a/account-kit/infra/package.json b/account-kit/infra/package.json index d97212e299..48e307dd6a 100644 --- a/account-kit/infra/package.json +++ b/account-kit/infra/package.json @@ -6,7 +6,7 @@ "license": "MIT", "private": false, "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -24,16 +24,15 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./package.json": "./package.json" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "prebuild": "npx tsx ./inject-version.ts", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/account-kit/infra", "clean": "rm -rf ./dist", "test": "vitest", @@ -48,14 +47,14 @@ "dependencies": { "@aa-sdk/core": "^4.0.0-alpha.12", "eventemitter3": "^5.0.1", - "viem": "2.8.6", + "viem": "2.20.0", "zod": "^3.22.4" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" }, "resolutions": { - "viem": "2.8.6" + "viem": "2.20.0" }, "publishConfig": { "access": "public", diff --git a/account-kit/infra/src/client/decorators/alchemyEnhancedApis.ts b/account-kit/infra/src/client/decorators/alchemyEnhancedApis.ts index d1570e93bd..f307d02fe1 100644 --- a/account-kit/infra/src/client/decorators/alchemyEnhancedApis.ts +++ b/account-kit/infra/src/client/decorators/alchemyEnhancedApis.ts @@ -31,17 +31,18 @@ export type AlchemyEnhancedApis = { * @param {Alchemy} alchemy The Alchemy instance containing the SDK client * @returns {(client: AlchemySmartAccountClient) => AlchemyEnhancedApis} A client decorator for Alchemy Smart Account clients that adds the enhanced API methods */ -export const alchemyEnhancedApiActions = - (alchemy: Alchemy) => - < - TTransport extends Transport = Transport, - TChain extends Chain | undefined = Chain | undefined, - TAccount extends SmartContractAccount | undefined = - | SmartContractAccount - | undefined - >( - client: AlchemySmartAccountClient - ): AlchemyEnhancedApis => { +export function alchemyEnhancedApiActions( + alchemy: Alchemy +): < + TTransport extends Transport = Transport, + TChain extends Chain | undefined = Chain | undefined, + TAccount extends SmartContractAccount | undefined = + | SmartContractAccount + | undefined +>( + client: AlchemySmartAccountClient +) => AlchemyEnhancedApis { + return (client) => { const alchemySdk = AlchemySdkClientSchema.parse(alchemy); if (client.transport.type === "http") { @@ -69,3 +70,4 @@ export const alchemyEnhancedApiActions = config: alchemySdk.config, }; }; +} diff --git a/account-kit/infra/src/client/isAlchemySmartAccountClient.ts b/account-kit/infra/src/client/isAlchemySmartAccountClient.ts index ab6c4bf536..71b39083d3 100644 --- a/account-kit/infra/src/client/isAlchemySmartAccountClient.ts +++ b/account-kit/infra/src/client/isAlchemySmartAccountClient.ts @@ -17,7 +17,7 @@ import type { AlchemySmartAccountClient } from "./smartAccountClient"; * @param {Client} client The client instance to be checked * @returns {boolean} `true` if the client is an Alchemy Smart Account Client, otherwise `false` */ -export const isAlchemySmartAccountClient = < +export function isAlchemySmartAccountClient< TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = @@ -25,10 +25,10 @@ export const isAlchemySmartAccountClient = < | undefined >( client: Client -): client is AlchemySmartAccountClient => { +): client is AlchemySmartAccountClient { // TODO: the goal of this check is to make sure that the client supports certain RPC methods // we should probably do this by checking the client's transport and configured URL, since alchemy // clients have to be RPC clients. this is difficult to do though because the transport might // point to a proxy url :/ return isSmartAccountClient(client); -}; +} diff --git a/account-kit/plugingen/package.json b/account-kit/plugingen/package.json index 52187abded..e57fd4dea2 100644 --- a/account-kit/plugingen/package.json +++ b/account-kit/plugingen/package.json @@ -34,10 +34,10 @@ "plugingen": "./dist/esm/cli.js" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", + "prebuild": "npx tsx ./inject-version.ts", "build": "yarn clean && yarn build:esm && yarn build:types", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "postbuild": "chmod +x ./dist/esm/cli.js", "clean": "rm -rf ./dist" }, @@ -73,10 +73,10 @@ "pathe": "^1.1.2", "picocolors": "^1.0.0", "prettier": "^3.2.5", - "viem": "2.8.6", + "viem": "2.20.0", "zod": "^3.22.4" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" } } diff --git a/account-kit/plugingen/src/commands/generate/phases/plugin-generator/get-contract-gen.ts b/account-kit/plugingen/src/commands/generate/phases/plugin-generator/get-contract-gen.ts index d6a70516f1..c76f18e27c 100644 --- a/account-kit/plugingen/src/commands/generate/phases/plugin-generator/get-contract-gen.ts +++ b/account-kit/plugingen/src/commands/generate/phases/plugin-generator/get-contract-gen.ts @@ -23,7 +23,7 @@ export const GetContractGenPhase: Phase = async (input) => { address: address || addresses[client.chain.id], abi: ${pluginConfig.name}Abi, client: client, - }); + }) as GetContractReturnType; }`); return input; diff --git a/account-kit/react/package.json b/account-kit/react/package.json index c7b98400ba..feefa36c7b 100644 --- a/account-kit/react/package.json +++ b/account-kit/react/package.json @@ -6,7 +6,7 @@ "license": "MIT", "private": false, "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -25,21 +25,20 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./tailwind": { "types": "./dist/types/tailwind/index.d.ts", "import": "./dist/esm/tailwind/index.js", - "default": "./dist/cjs/tailwind/index.js" + "default": "./dist/esm/tailwind/index.js" }, "./package.json": "./package.json" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "prebuild": "npx tsx ./inject-version.ts", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/account-kit/react", "clean": "rm -rf ./dist", "test": "vitest --passWithNoTests", @@ -61,11 +60,8 @@ "@tanstack/react-form": "^0.19.4", "@tanstack/zod-form-adapter": "^0.19.4", "@wagmi/connectors": "^4.3.9", - "@wagmi/core": "^2.9.8", "react-remove-scroll": "^2.5.10", "tailwindcss": "^3.4.3", - "viem": "2.8.6", - "wagmi": "^2.8.8", "zod": "^3.22.4", "zustand": "^4.5.4" }, @@ -74,10 +70,11 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "tailwindcss": "^3.4.3", - "viem": "2.8.6" + "wagmi": "2.12.7", + "viem": "2.20.0" }, "resolutions": { - "viem": "2.8.6" + "viem": "2.20.0" }, "publishConfig": { "access": "public", diff --git a/account-kit/signer/package.json b/account-kit/signer/package.json index 6271b566b2..a861a30868 100644 --- a/account-kit/signer/package.json +++ b/account-kit/signer/package.json @@ -6,7 +6,7 @@ "license": "MIT", "private": false, "type": "module", - "main": "./dist/cjs/index.js", + "main": "./dist/esm/index.js", "module": "./dist/esm/index.js", "types": "./dist/types/index.d.ts", "typings": "./dist/types/index.d.ts", @@ -24,16 +24,15 @@ ".": { "types": "./dist/types/index.d.ts", "import": "./dist/esm/index.js", - "default": "./dist/cjs/index.js" + "default": "./dist/esm/index.js" }, "./package.json": "./package.json" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "prebuild": "npx tsx ./inject-version.ts", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/account-kit/signer", "clean": "rm -rf ./dist", "test": "vitest --passWithNoTests", @@ -55,14 +54,14 @@ "@turnkey/iframe-stamper": "^1.0.0", "@turnkey/viem": "^0.4.8", "@turnkey/webauthn-stamper": "^0.4.3", - "viem": "2.8.6", + "viem": "2.20.0", "zod": "^3.22.4" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" }, "resolutions": { - "viem": "2.8.6" + "viem": "2.20.0" }, "publishConfig": { "access": "public", diff --git a/account-kit/smart-contracts/package.json b/account-kit/smart-contracts/package.json index ba1d66a5bc..ba35a28322 100644 --- a/account-kit/smart-contracts/package.json +++ b/account-kit/smart-contracts/package.json @@ -6,7 +6,7 @@ "license": "MIT", "private": false, "type": "module", - "main": "./dist/cjs/src/index.js", + "main": "./dist/esm/src/index.js", "module": "./dist/esm/src/index.js", "types": "./dist/types/src/index.d.ts", "typings": "./dist/types/src/index.d.ts", @@ -25,21 +25,20 @@ ".": { "types": "./dist/types/src/index.d.ts", "import": "./dist/esm/src/index.js", - "default": "./dist/cjs/src/index.js" + "default": "./dist/esm/src/index.js" }, "./plugin-defs": { "types": "./dist/types/plugindefs/index.d.ts", "import": "./dist/esm/plugindefs/index.js", - "default": "./dist/cjs/plugindefs/index.js" + "default": "./dist/esm/plugindefs/index.js" }, "./package.json": "./package.json" }, "scripts": { "generate": "npx tsx ../plugingen/src/cli.ts generate", - "build": "yarn clean && yarn build:cjs && yarn build:esm && yarn build:types", - "build:cjs": "tsc --project tsconfig.build.json --module commonjs --outDir ./dist/cjs --removeComments --verbatimModuleSyntax false && echo > ./dist/cjs/package.json '{\"type\":\"commonjs\"}'", - "build:esm": "tsc --project tsconfig.build.json --module es2020 --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", - "build:types": "tsc --project tsconfig.build.json --module esnext --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", + "build": "yarn clean && yarn build:esm && yarn build:types", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", + "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "docs:gen": "npx ak-docgen generate --in ./src/index.ts --out ../../site/pages/reference/account-kit/smart-contracts", "clean": "rm -rf ./dist", "test": "vitest", @@ -72,9 +71,9 @@ "dependencies": { "@aa-sdk/core": "^4.0.0-alpha.12", "@account-kit/infra": "^4.0.0-alpha.12", - "viem": "2.8.6" + "viem": "2.20.0" }, "peerDependencies": { - "viem": "2.8.6" + "viem": "2.20.0" } } diff --git a/account-kit/smart-contracts/plugindefs/multi-owner/config.ts b/account-kit/smart-contracts/plugindefs/multi-owner/config.ts index 4aedab1809..969d2146bc 100644 --- a/account-kit/smart-contracts/plugindefs/multi-owner/config.ts +++ b/account-kit/smart-contracts/plugindefs/multi-owner/config.ts @@ -1,10 +1,11 @@ +import type { PluginConfig } from "@account-kit/plugingen"; +import { parseAbiParameters } from "viem"; import { arbitrum, arbitrumSepolia, base, baseSepolia, fraxtal, - fraxtalSepolia, mainnet, optimism, optimismSepolia, @@ -14,9 +15,7 @@ import { sepolia, zora, zoraSepolia, -} from "@account-kit/infra"; -import type { PluginConfig } from "@account-kit/plugingen"; -import { parseAbiParameters } from "viem"; +} from "viem/chains"; import { MultiOwnerPluginAbi } from "./abi.js"; export const MultiOwnerPluginGenConfig: PluginConfig = { @@ -34,7 +33,7 @@ export const MultiOwnerPluginGenConfig: PluginConfig = { [arbitrumSepolia.id]: "0xcE0000007B008F50d762D155002600004cD6c647", [base.id]: "0xcE0000007B008F50d762D155002600004cD6c647", [fraxtal.id]: "0xcE0000007B008F50d762D155002600004cD6c647", - [fraxtalSepolia.id]: "0xcE0000007B008F50d762D155002600004cD6c647", + 2523: "0xcE0000007B008F50d762D155002600004cD6c647", [zora.id]: "0xcE0000007B008F50d762D155002600004cD6c647", [zoraSepolia.id]: "0xcE0000007B008F50d762D155002600004cD6c647", [mainnet.id]: "0xcE0000007B008F50d762D155002600004cD6c647", diff --git a/account-kit/smart-contracts/plugindefs/multisig/config.ts b/account-kit/smart-contracts/plugindefs/multisig/config.ts index 5b1a93aff5..b2d01dc88f 100644 --- a/account-kit/smart-contracts/plugindefs/multisig/config.ts +++ b/account-kit/smart-contracts/plugindefs/multisig/config.ts @@ -1,10 +1,11 @@ +import type { PluginConfig } from "@account-kit/plugingen"; +import { parseAbiParameters } from "viem"; import { arbitrum, arbitrumSepolia, base, baseSepolia, fraxtal, - fraxtalSepolia, mainnet, optimism, optimismSepolia, @@ -13,9 +14,7 @@ import { sepolia, zora, zoraSepolia, -} from "@account-kit/infra"; -import type { PluginConfig } from "@account-kit/plugingen"; -import { parseAbiParameters } from "viem"; +} from "viem/chains"; import { MultisigPluginAbi } from "./abi.js"; export const MultisigPluginGenConfig: PluginConfig = { @@ -33,7 +32,7 @@ export const MultisigPluginGenConfig: PluginConfig = { [arbitrumSepolia.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", [base.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", [fraxtal.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", - [fraxtalSepolia.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", + 2523: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", [zora.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", [zoraSepolia.id]: "0x000000000000A53f64b7bcf4Cd59624943C43Fc7", }, diff --git a/account-kit/smart-contracts/plugindefs/session-key/config.ts b/account-kit/smart-contracts/plugindefs/session-key/config.ts index 2d6ef1f6b8..607bff4cae 100644 --- a/account-kit/smart-contracts/plugindefs/session-key/config.ts +++ b/account-kit/smart-contracts/plugindefs/session-key/config.ts @@ -1,10 +1,11 @@ +import type { PluginConfig } from "@account-kit/plugingen"; +import { parseAbiParameters } from "viem"; import { arbitrum, arbitrumSepolia, base, baseSepolia, fraxtal, - fraxtalSepolia, mainnet, optimism, optimismSepolia, @@ -14,9 +15,7 @@ import { sepolia, zora, zoraSepolia, -} from "@account-kit/infra"; -import type { PluginConfig } from "@account-kit/plugingen"; -import { parseAbiParameters } from "viem"; +} from "viem/chains"; import { MultiOwnerPluginGenConfig } from "../multi-owner/config.js"; import { SessionKeyPluginAbi } from "./abi.js"; @@ -34,9 +33,8 @@ export const SessionKeyPluginGenConfig: PluginConfig = { [arbitrum.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [arbitrumSepolia.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [base.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", - [baseSepolia.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [fraxtal.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", - [fraxtalSepolia.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", + 2523: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [zora.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [zoraSepolia.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", [mainnet.id]: "0x0000003E0000a96de4058e1E02a62FaaeCf23d8d", diff --git a/account-kit/smart-contracts/src/light-account/clients/multiOwnerLightAccount.test.ts b/account-kit/smart-contracts/src/light-account/clients/multiOwnerLightAccount.test.ts index 54b14b8fe4..0878fc951b 100644 --- a/account-kit/smart-contracts/src/light-account/clients/multiOwnerLightAccount.test.ts +++ b/account-kit/smart-contracts/src/light-account/clients/multiOwnerLightAccount.test.ts @@ -95,7 +95,7 @@ describe("MultiOwner Light Account Tests", () => { const txnHash = provider.waitForUserOperationTransaction(result); await expect(txnHash).resolves.not.toThrowError(); - }, 5_000); + }, 15_000); it("should sign typed data with 6492 successfully for undeployed account", async () => { const { account } = await givenConnectedProvider({ diff --git a/account-kit/smart-contracts/src/msca/plugins/multi-owner/plugin.ts b/account-kit/smart-contracts/src/msca/plugins/multi-owner/plugin.ts index 95fea4465d..45db31a09b 100644 --- a/account-kit/smart-contracts/src/msca/plugins/multi-owner/plugin.ts +++ b/account-kit/smart-contracts/src/msca/plugins/multi-owner/plugin.ts @@ -189,7 +189,11 @@ export const MultiOwnerPlugin: Plugin = { address: address || addresses[client.chain.id], abi: MultiOwnerPluginAbi, client: client, - }); + }) as GetContractReturnType< + typeof MultiOwnerPluginAbi, + PublicClient, + Address + >; }, }; diff --git a/account-kit/smart-contracts/src/msca/plugins/multisig/plugin.ts b/account-kit/smart-contracts/src/msca/plugins/multisig/plugin.ts index 0b88418852..53780468e7 100644 --- a/account-kit/smart-contracts/src/msca/plugins/multisig/plugin.ts +++ b/account-kit/smart-contracts/src/msca/plugins/multisig/plugin.ts @@ -184,7 +184,11 @@ export const MultisigPlugin: Plugin = { address: address || addresses[client.chain.id], abi: MultisigPluginAbi, client: client, - }); + }) as GetContractReturnType< + typeof MultisigPluginAbi, + PublicClient, + Address + >; }, }; diff --git a/account-kit/smart-contracts/src/msca/plugins/session-key/plugin.ts b/account-kit/smart-contracts/src/msca/plugins/session-key/plugin.ts index 1deed7b642..fea9ce6730 100644 --- a/account-kit/smart-contracts/src/msca/plugins/session-key/plugin.ts +++ b/account-kit/smart-contracts/src/msca/plugins/session-key/plugin.ts @@ -237,7 +237,11 @@ export const SessionKeyPlugin: Plugin = { address: address || addresses[client.chain.id], abi: SessionKeyPluginAbi, client: client, - }); + }) as GetContractReturnType< + typeof SessionKeyPluginAbi, + PublicClient, + Address + >; }, }; diff --git a/doc-gen/package.json b/doc-gen/package.json index 44a47e2b51..f70ef773e6 100644 --- a/doc-gen/package.json +++ b/doc-gen/package.json @@ -30,9 +30,9 @@ "ak-docgen": "./dist/esm/cli.js" }, "scripts": { - "prebuild": "node --loader ts-node/esm ./inject-version.ts", + "prebuild": "npx tsx ./inject-version.ts", "build": "yarn clean && yarn build:esm && yarn build:types", - "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm --removeComments && echo > ./dist/esm/package.json '{\"type\":\"module\"}'", + "build:esm": "tsc --project tsconfig.build.json --outDir ./dist/esm", "build:types": "tsc --project tsconfig.build.json --declarationDir ./dist/types --emitDeclarationOnly --declaration --declarationMap", "postbuild": "chmod +x ./dist/esm/cli.js", "clean": "rm -rf ./dist" diff --git a/package.json b/package.json index ec28dc5cbf..4ff266ad7b 100644 --- a/package.json +++ b/package.json @@ -5,15 +5,25 @@ "engines": { "node": ">=18.16" }, - "workspaces": [ - "aa-sdk/*", - "account-kit/*", - "templates/*", - "examples/*", - "site", - "doc-gen", - ".vitest" - ], + "workspaces": { + "packages": [ + "aa-sdk/*", + "account-kit/*", + "templates/*", + "examples/*", + "site", + "doc-gen", + ".vitest" + ], + "nohoist": [ + "**/viem", + "**/viem/**" + ] + }, + "resolutions": { + "wagmi": "2.12.7", + "viem": "2.20.0" + }, "scripts": { "generate": "lerna run generate", "postgenerate": "yarn lint:write", diff --git a/site/package.json b/site/package.json index b8af9b235a..cf32e9f4b7 100644 --- a/site/package.json +++ b/site/package.json @@ -19,7 +19,7 @@ "fs-extra": "^11.2.0", "prettier": "^2.8.8", "tailwindcss": "^3.3.3", - "viem": "2.8.6" + "viem": "2.20.0" }, "dependencies": { "@aa-sdk/core": "latest", @@ -31,7 +31,7 @@ "@account-kit/smart-contracts": "latest", "react": "^18.2.0", "react-dom": "^18.2.0", - "viem": "2.8.6", + "viem": "2.20.0", "vocs": "^1.0.0-alpha.55" } } diff --git a/site/pages/migration-guide.mdx b/site/pages/migration-guide.mdx index 1abc824cc9..64984e0433 100644 --- a/site/pages/migration-guide.mdx +++ b/site/pages/migration-guide.mdx @@ -43,6 +43,18 @@ If you were creating LightAccounts for users without explicitly specifying the v Previously, the `create*Client` (ie. `createLightAccountClient`) methods used to have an `account` parameter which took in the params for the underlying account. This is resulted in different APIs for both the corresponding `create*AlchemyClient` (ie. `createLightAccountAlchemyClient`) which had these as top-level parameters. If you were using `createLightAccountClient` or similar methods, you should now pass the account parameters as top-level parameters. +### Accounts: `getNonce` -> `getAccountNonce` + +Due to a clash in the typing of viem's `Account` type, the `getNonce` method has been renamed to `getAccountNonce`. + +### Viem Version + +The version of viem has been updated to `2.20.0` and been added as a peer dependency. If you have viem listed as a dependency, make sure it is updated to `2.20.0`. + +### Dropped CJS support + +Due to our dependency on `wagmi` in the `core` and `react` packages, those packages no longer support `cjs` builds. To keep things consistent across all of our packages, we've dropped CJS support in all the packages in this repo. See [this](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c) guide on how to migrate from CJS to ESM. + ## Migrating to version 3.x.x This version update brings a lot of breaking changes. As we began to support Modular Accounts and their interfaces, we realized that the previous version of the SDK was not as flexible as it could have been to handle the modularity of the new account interfaces. diff --git a/templates/eslint/package.json b/templates/eslint/package.json index 88d41b3bb2..db2a8ce586 100644 --- a/templates/eslint/package.json +++ b/templates/eslint/package.json @@ -21,7 +21,7 @@ } }, "scripts": { - "build": "rm -rf ./dist && tsc --project tsconfig.json --module commonjs --removeComments --verbatimModuleSyntax false && echo > ./dist/package.json '{\"type\":\"commonjs\"}'" + "build": "rm -rf ./dist && tsc --project tsconfig.json --module commonjs --moduleResolution node --removeComments --verbatimModuleSyntax false && echo > ./dist/package.json '{\"type\":\"commonjs\"}'" }, "devDependencies": { "@types/eslint-utils": "^3.0.5", diff --git a/templates/typescript/base.json b/templates/typescript/base.json index de714c48ad..a6098368fb 100644 --- a/templates/typescript/base.json +++ b/templates/typescript/base.json @@ -3,7 +3,7 @@ "display": "Default", "compilerOptions": { "lib": ["es2022", "dom"], - "target": "es2021", + "target": "es2020", "types": ["vitest/globals"], "allowJs": false, "skipLibCheck": true, @@ -11,8 +11,8 @@ "allowSyntheticDefaultImports": true, "strict": true, "forceConsistentCasingInFileNames": true, - "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", + "module": "es2020", "resolveJsonModule": true, "isolatedModules": true, "verbatimModuleSyntax": true, diff --git a/templates/typescript/build.json b/templates/typescript/build.json index dafc6fe3f7..2bc1e603c5 100644 --- a/templates/typescript/build.json +++ b/templates/typescript/build.json @@ -6,8 +6,6 @@ "declaration": true, "inlineSources": true, "noEmit": false, - "sourceMap": true, - "module": "NodeNext", - "moduleResolution": "node" + "sourceMap": true } } diff --git a/yarn.lock b/yarn.lock index ae636323cf..24f862586a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -117,11 +117,6 @@ resolved "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.0.tgz" integrity sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q== -"@adraffy/ens-normalize@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.9.0.tgz#223572538f6bea336750039bb43a4016dcc8182d" - integrity sha512-iowxq3U30sghZotgl4s/oJRci6WPBfNO5YYgk2cIOMCHr3LeGPcsZjCEr+33Q4N+oV3OABDAtA+pyvWjbvBifQ== - "@adraffy/ens-normalize@1.9.2": version "1.9.2" resolved "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.9.2.tgz" @@ -3152,6 +3147,18 @@ preact "^10.16.0" sha.js "^2.4.11" +"@coinbase/wallet-sdk@4.0.4": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-4.0.4.tgz#634cd89bac93eeaf381a1f026476794e53431ed6" + integrity sha512-74c040CRnGhfRjr3ArnkAgud86erIqdkPHNt5HR1k9u97uTIZCJww9eGYT67Qf7gHPpGS/xW8Be1D4dvRm63FA== + dependencies: + buffer "^6.0.3" + clsx "^1.2.1" + eventemitter3 "^5.0.1" + keccak "^3.0.3" + preact "^10.16.0" + sha.js "^2.4.11" + "@coinbase/wallet-sdk@^3.6.6": version "3.7.2" resolved "https://registry.npmjs.org/@coinbase/wallet-sdk/-/wallet-sdk-3.7.2.tgz" @@ -5452,6 +5459,15 @@ "@metamask/safe-event-emitter" "^3.0.0" "@metamask/utils" "^8.3.0" +"@metamask/json-rpc-engine@^8.0.1", "@metamask/json-rpc-engine@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@metamask/json-rpc-engine/-/json-rpc-engine-8.0.2.tgz#29510a871a8edef892f838ee854db18de0bf0d14" + integrity sha512-IoQPmql8q7ABLruW7i4EYVHWUbF74yrp63bRuXV5Zf9BQwcn5H9Ww1eLtROYvI1bUXwOiHZ6qT5CWTrDc/t/AA== + dependencies: + "@metamask/rpc-errors" "^6.2.1" + "@metamask/safe-event-emitter" "^3.0.0" + "@metamask/utils" "^8.3.0" + "@metamask/json-rpc-middleware-stream@^6.0.2": version "6.0.2" resolved "https://registry.yarnpkg.com/@metamask/json-rpc-middleware-stream/-/json-rpc-middleware-stream-6.0.2.tgz#75852ce481f8f9f091edbfc04ffdf964f8f3cabd" @@ -5462,6 +5478,16 @@ "@metamask/utils" "^8.3.0" readable-stream "^3.6.2" +"@metamask/json-rpc-middleware-stream@^7.0.1": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@metamask/json-rpc-middleware-stream/-/json-rpc-middleware-stream-7.0.2.tgz#2e8b2cbc38968e3c6239a9144c35bbb08a8fb57d" + integrity sha512-yUdzsJK04Ev98Ck4D7lmRNQ8FPioXYhEUZOMS01LXW8qTvPGiRVXmVltj2p4wrLkh0vW7u6nv0mNl5xzC5Qmfg== + dependencies: + "@metamask/json-rpc-engine" "^8.0.2" + "@metamask/safe-event-emitter" "^3.0.0" + "@metamask/utils" "^8.3.0" + readable-stream "^3.6.2" + "@metamask/object-multiplex@^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@metamask/object-multiplex/-/object-multiplex-2.0.0.tgz#aa6e4aa7b4e2f457ea4bb51cd7281d931e0aa35d" @@ -5477,6 +5503,24 @@ dependencies: bowser "^2.9.0" +"@metamask/providers@16.1.0": + version "16.1.0" + resolved "https://registry.yarnpkg.com/@metamask/providers/-/providers-16.1.0.tgz#7da593d17c541580fa3beab8d9d8a9b9ce19ea07" + integrity sha512-znVCvux30+3SaUwcUGaSf+pUckzT5ukPRpcBmy+muBLC0yaWnBcvDqGfcsw6CBIenUdFrVoAFa8B6jsuCY/a+g== + dependencies: + "@metamask/json-rpc-engine" "^8.0.1" + "@metamask/json-rpc-middleware-stream" "^7.0.1" + "@metamask/object-multiplex" "^2.0.0" + "@metamask/rpc-errors" "^6.2.1" + "@metamask/safe-event-emitter" "^3.1.1" + "@metamask/utils" "^8.3.0" + detect-browser "^5.2.0" + extension-port-stream "^3.0.0" + fast-deep-equal "^3.1.3" + is-stream "^2.0.0" + readable-stream "^3.6.2" + webextension-polyfill "^0.10.0" + "@metamask/providers@^15.0.0": version "15.0.0" resolved "https://registry.yarnpkg.com/@metamask/providers/-/providers-15.0.0.tgz#e8957bb89d2f3379b32b60117d79a141e44db2bc" @@ -5516,7 +5560,7 @@ resolved "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz" integrity sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q== -"@metamask/safe-event-emitter@^3.0.0": +"@metamask/safe-event-emitter@^3.0.0", "@metamask/safe-event-emitter@^3.1.1": version "3.1.1" resolved "https://registry.yarnpkg.com/@metamask/safe-event-emitter/-/safe-event-emitter-3.1.1.tgz#e89b840a7af8097a8ed4953d8dc8470d1302d3ef" integrity sha512-ihb3B0T/wJm1eUuArYP4lCTSEoZsClHhuWyfo/kMX3m/odpqNcPfsz5O2A3NT7dXCAgWPGDQGPqygCpgeniKMw== @@ -5532,6 +5576,17 @@ utf-8-validate "^6.0.3" uuid "^8.3.2" +"@metamask/sdk-communication-layer@0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@metamask/sdk-communication-layer/-/sdk-communication-layer-0.27.0.tgz#8d618fadd39f11627d5b3ef1bc72867439e33ff4" + integrity sha512-G9LCaQzIqp5WmUmvHN6UUdjWrBh67MbRobmbbs5fcc2+9XFhj3vBgtyleUYjun91jSlPHoZeo+f/Pj4/WoPIJg== + dependencies: + bufferutil "^4.0.8" + date-fns "^2.29.3" + debug "^4.3.4" + utf-8-validate "^5.0.2" + uuid "^8.3.2" + "@metamask/sdk-install-modal-web@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@metamask/sdk-install-modal-web/-/sdk-install-modal-web-0.20.2.tgz#1cf0eb3c26291de7598190878fa9a893c4eb2d66" @@ -5539,6 +5594,13 @@ dependencies: qr-code-styling "^1.6.0-rc.1" +"@metamask/sdk-install-modal-web@0.26.5": + version "0.26.5" + resolved "https://registry.yarnpkg.com/@metamask/sdk-install-modal-web/-/sdk-install-modal-web-0.26.5.tgz#b696c78818adaff85d01a4f41fecc8fd2c80bc59" + integrity sha512-qVA9Nk+NorGx5hXyODy5wskptE8R7RNYTYt49VbQpJogqbbVe1dnJ98+KaA43PBN4XYMCXmcIhULNiEHGsLynA== + dependencies: + qr-code-styling "^1.6.0-rc.1" + "@metamask/sdk@0.20.3": version "0.20.3" resolved "https://registry.yarnpkg.com/@metamask/sdk/-/sdk-0.20.3.tgz#73851d68ffe5d45c1872c024182922530b187b7a" @@ -5567,6 +5629,34 @@ util "^0.12.4" uuid "^8.3.2" +"@metamask/sdk@0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@metamask/sdk/-/sdk-0.27.0.tgz#38617985b8305a0f5d482cdd7af8ddec87968bb7" + integrity sha512-6sMjr/0qR700X1svPGEQ4rBdtccidBLeTC27fYQc7r9ROgSixB1DUUAyu/LoySVqt3Hu/Zm7NnAHXuT228ht7A== + dependencies: + "@metamask/onboarding" "^1.0.1" + "@metamask/providers" "16.1.0" + "@metamask/sdk-communication-layer" "0.27.0" + "@metamask/sdk-install-modal-web" "0.26.5" + "@types/dom-screen-wake-lock" "^1.0.0" + bowser "^2.9.0" + cross-fetch "^4.0.0" + debug "^4.3.4" + eciesjs "^0.3.15" + eth-rpc-errors "^4.0.3" + eventemitter2 "^6.4.7" + i18next "23.11.5" + i18next-browser-languagedetector "7.1.0" + obj-multiplex "^1.0.0" + pump "^3.0.0" + qrcode-terminal-nooctal "^0.12.1" + react-native-webview "^11.26.0" + readable-stream "^3.6.2" + rollup-plugin-visualizer "^5.9.2" + socket.io-client "^4.5.1" + util "^0.12.4" + uuid "^8.3.2" + "@metamask/utils@^3.0.1": version "3.6.0" resolved "https://registry.npmjs.org/@metamask/utils/-/utils-3.6.0.tgz" @@ -5929,13 +6019,6 @@ dependencies: eslint-scope "5.1.1" -"@noble/curves@1.0.0", "@noble/curves@~1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.0.0.tgz#e40be8c7daf088aaf291887cbc73f43464a92932" - integrity sha512-2upgEu0iLiDVDZkNLeFV2+ht0BAVgQnEmCk6JsOch9Rp8xfkMCbvbAZlA2pBHQc73dbl+vFOXfqkf4uemdn0bw== - dependencies: - "@noble/hashes" "1.3.0" - "@noble/curves@1.1.0", "@noble/curves@~1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.1.0.tgz" @@ -5943,12 +6026,12 @@ dependencies: "@noble/hashes" "1.3.1" -"@noble/curves@1.2.0", "@noble/curves@~1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz" - integrity sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw== +"@noble/curves@1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.4.0.tgz#f05771ef64da724997f69ee1261b2417a49522d6" + integrity sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg== dependencies: - "@noble/hashes" "1.3.2" + "@noble/hashes" "1.4.0" "@noble/curves@^1.2.0", "@noble/curves@^1.3.0": version "1.3.0" @@ -5957,6 +6040,20 @@ dependencies: "@noble/hashes" "1.3.3" +"@noble/curves@^1.4.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.5.0.tgz#7a9b9b507065d516e6dce275a1e31db8d2a100dd" + integrity sha512-J5EKamIHnKPyClwVrzmaf5wSdQXgdHcPZIZLu3bwnbeCx8/7NPK5q2ZBWF+5FvYGByjiQQsJYX6jfgB2wDPn3A== + dependencies: + "@noble/hashes" "1.4.0" + +"@noble/curves@~1.4.0": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.4.2.tgz#40309198c76ed71bc6dbf7ba24e81ceb4d0d1fe9" + integrity sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw== + dependencies: + "@noble/hashes" "1.4.0" + "@noble/hashes@1.1.2": version "1.1.2" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.2.tgz" @@ -5967,26 +6064,21 @@ resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz" integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== -"@noble/hashes@1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.0.tgz#085fd70f6d7d9d109671090ccae1d3bec62554a1" - integrity sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg== - "@noble/hashes@1.3.1": version "1.3.1" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz" integrity sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA== -"@noble/hashes@1.3.2": - version "1.3.2" - resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz" - integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ== - -"@noble/hashes@1.3.3", "@noble/hashes@^1", "@noble/hashes@^1.0.0", "@noble/hashes@^1.1.2", "@noble/hashes@^1.3.1", "@noble/hashes@^1.3.2", "@noble/hashes@~1.3.0", "@noble/hashes@~1.3.1", "@noble/hashes@~1.3.2": +"@noble/hashes@1.3.3", "@noble/hashes@^1", "@noble/hashes@^1.0.0", "@noble/hashes@^1.1.2", "@noble/hashes@^1.3.1", "@noble/hashes@^1.3.2", "@noble/hashes@~1.3.0", "@noble/hashes@~1.3.1": version "1.3.3" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz" integrity sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA== +"@noble/hashes@1.4.0", "@noble/hashes@^1.4.0", "@noble/hashes@~1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" + integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== + "@noble/secp256k1@1.7.1", "@noble/secp256k1@~1.7.0": version "1.7.1" resolved "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz" @@ -7312,6 +7404,14 @@ "@safe-global/safe-apps-sdk" "^8.1.0" events "^3.3.0" +"@safe-global/safe-apps-provider@0.18.3": + version "0.18.3" + resolved "https://registry.yarnpkg.com/@safe-global/safe-apps-provider/-/safe-apps-provider-0.18.3.tgz#805a42e24f5dde803cb96dac251a3c9e256de45b" + integrity sha512-f/0cNv3S4v7p8rowAjj0hDCg8Q8P/wBjp5twkNWeBdvd0RDr7BuRBPPk74LCqmjQ82P+1ltLlkmVFSmxTIT7XQ== + dependencies: + "@safe-global/safe-apps-sdk" "^9.1.0" + events "^3.3.0" + "@safe-global/safe-apps-sdk@8.1.0", "@safe-global/safe-apps-sdk@^8.1.0": version "8.1.0" resolved "https://registry.npmjs.org/@safe-global/safe-apps-sdk/-/safe-apps-sdk-8.1.0.tgz" @@ -7320,16 +7420,29 @@ "@safe-global/safe-gateway-typescript-sdk" "^3.5.3" viem "^1.0.0" +"@safe-global/safe-apps-sdk@9.1.0", "@safe-global/safe-apps-sdk@^9.1.0": + version "9.1.0" + resolved "https://registry.yarnpkg.com/@safe-global/safe-apps-sdk/-/safe-apps-sdk-9.1.0.tgz#0e65913e0f202e529ed3c846e0f5a98c2d35aa98" + integrity sha512-N5p/ulfnnA2Pi2M3YeWjULeWbjo7ei22JwU/IXnhoHzKq3pYCN6ynL9mJBOlvDVv892EgLPCWCOwQk/uBT2v0Q== + dependencies: + "@safe-global/safe-gateway-typescript-sdk" "^3.5.3" + viem "^2.1.1" + "@safe-global/safe-gateway-typescript-sdk@^3.5.3": version "3.13.3" resolved "https://registry.npmjs.org/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.13.3.tgz" integrity sha512-qBDM469cVCedpBpeTSn+k5FUr9+rq5bMTflp/mKd7h35uafcexvOR/PHZn2qftqV8b1kc9b8t22cPRJ2365jew== -"@scure/base@^1.1.3", "@scure/base@~1.1.0", "@scure/base@~1.1.2": +"@scure/base@^1.1.3", "@scure/base@~1.1.0": version "1.1.4" resolved "https://registry.npmjs.org/@scure/base/-/base-1.1.4.tgz" integrity sha512-wznebWtt+ejH8el87yuD4i9xLSbYZXf1Pe4DY0o/zq/eg5I0VQVXVbFs6XIM0pNVCJ/uE3t5wI9kh90mdLUxtw== +"@scure/base@~1.1.6": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.7.tgz#fe973311a5c6267846aa131bc72e96c5d40d2b30" + integrity sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g== + "@scure/bip32@1.1.5": version "1.1.5" resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz" @@ -7339,15 +7452,6 @@ "@noble/secp256k1" "~1.7.0" "@scure/base" "~1.1.0" -"@scure/bip32@1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.3.0.tgz#6c8d980ef3f290987736acd0ee2e0f0d50068d87" - integrity sha512-bcKpo1oj54hGholplGLpqPHRbIsnbixFtc06nwuNM5/dwSXOq/AAYoIBRsBmnZJSdfeNW5rnff7NTAz3ZCqR9Q== - dependencies: - "@noble/curves" "~1.0.0" - "@noble/hashes" "~1.3.0" - "@scure/base" "~1.1.0" - "@scure/bip32@1.3.1": version "1.3.1" resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.1.tgz" @@ -7357,14 +7461,14 @@ "@noble/hashes" "~1.3.1" "@scure/base" "~1.1.0" -"@scure/bip32@1.3.2": - version "1.3.2" - resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.3.2.tgz" - integrity sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA== +"@scure/bip32@1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.4.0.tgz#4e1f1e196abedcef395b33b9674a042524e20d67" + integrity sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg== dependencies: - "@noble/curves" "~1.2.0" - "@noble/hashes" "~1.3.2" - "@scure/base" "~1.1.2" + "@noble/curves" "~1.4.0" + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" "@scure/bip39@1.1.1": version "1.1.1" @@ -7374,14 +7478,6 @@ "@noble/hashes" "~1.2.0" "@scure/base" "~1.1.0" -"@scure/bip39@1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.2.0.tgz#a207e2ef96de354de7d0002292ba1503538fc77b" - integrity sha512-SX/uKq52cuxm4YFXWFaVByaSHJh2w3BnokVSeUJVCv6K7WulT9u2BuNRBhuFl8vAuYnzx9bEu9WgpcNYTrYieg== - dependencies: - "@noble/hashes" "~1.3.0" - "@scure/base" "~1.1.0" - "@scure/bip39@1.2.1": version "1.2.1" resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-1.2.1.tgz" @@ -7390,6 +7486,14 @@ "@noble/hashes" "~1.3.0" "@scure/base" "~1.1.0" +"@scure/bip39@1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.3.0.tgz#0f258c16823ddd00739461ac31398b4e7d6a18c3" + integrity sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ== + dependencies: + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" + "@sec-ant/readable-stream@^0.4.1": version "0.4.1" resolved "https://registry.yarnpkg.com/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz#60de891bb126abfdc5410fdc6166aca065f10a0c" @@ -7764,7 +7868,7 @@ dependencies: "@tanstack/query-core" "4.36.1" -"@tanstack/query-sync-storage-persister@^4.27.1", "@tanstack/query-sync-storage-persister@^4.29.7": +"@tanstack/query-sync-storage-persister@^4.29.7": version "4.36.1" resolved "https://registry.npmjs.org/@tanstack/query-sync-storage-persister/-/query-sync-storage-persister-4.36.1.tgz" integrity sha512-yMEt5hWe2+1eclf1agMtXHnPIkxEida0lYWkfdhR8U6KXk/lO4Vca6piJmhKI85t0NHlx3l/z6zX+t/Fn5O9NA== @@ -7781,7 +7885,7 @@ decode-formdata "^0.4.0" rehackt "^0.0.3" -"@tanstack/react-query-persist-client@^4.28.0", "@tanstack/react-query-persist-client@^4.29.7": +"@tanstack/react-query-persist-client@^4.29.7": version "4.36.1" resolved "https://registry.npmjs.org/@tanstack/react-query-persist-client/-/react-query-persist-client-4.36.1.tgz" integrity sha512-32I5b9aAu4NCiXZ7Te/KEQLfHbYeTNriVPrKYcvEThnZ9tlW01vLcSoxpUIsMYRsembvJUUAkzYBAiZHLOd6pQ== @@ -7795,7 +7899,7 @@ dependencies: "@tanstack/query-core" "5.28.9" -"@tanstack/react-query@^4.28.0", "@tanstack/react-query@^4.29.7": +"@tanstack/react-query@^4.29.7": version "4.36.1" resolved "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.36.1.tgz" integrity sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw== @@ -8568,13 +8672,6 @@ dependencies: "@types/node" "*" -"@types/ws@^8.5.4": - version "8.5.11" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.11.tgz#90ad17b3df7719ce3e6bc32f83ff954d38656508" - integrity sha512-4+q7P5h3SpJxaBft0Dzpbr6lmMaqh0Jr2tbhJZ/luAwvD7ohSCniYkwz/pLxuT2h0EOa6QADgJj1Ko+TzRfZ+w== - dependencies: - "@types/node" "*" - "@typescript-eslint/eslint-plugin@^5.5.0", "@typescript-eslint/eslint-plugin@^5.56.0": version "5.62.0" resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz" @@ -9311,11 +9408,6 @@ loupe "^3.1.1" tinyrainbow "^1.2.0" -"@wagmi/chains@1.6.0": - version "1.6.0" - resolved "https://registry.yarnpkg.com/@wagmi/chains/-/chains-1.6.0.tgz#eb992ad28dbaaab729b5bcab3e5b461e8a035656" - integrity sha512-5FRlVxse5P4ZaHG3GTvxwVANSmYJas1eQrTBHhjxVtqXoorm0aLmCHbhmN8Xo1yu09PaWKlleEvfE98yH4AgIw== - "@wagmi/chains@^1.8.0": version "1.8.0" resolved "https://registry.npmjs.org/@wagmi/chains/-/chains-1.8.0.tgz" @@ -9349,7 +9441,20 @@ viem "^1.0.0" zod "^3.21.4" -"@wagmi/connectors@3.1.9", "@wagmi/connectors@^3.0.0": +"@wagmi/connectors@5.1.7": + version "5.1.7" + resolved "https://registry.yarnpkg.com/@wagmi/connectors/-/connectors-5.1.7.tgz#cfe57ed48029451526267591b9a8ea1dc77dd7ca" + integrity sha512-sFoxkxl1ltUkDT5wA2liuQ4LRjfVfkNGMAocGHRyik+8i2Tlr+3SjDAUKjDrcq6sqMQVd40hpcBVbxs2HeRosw== + dependencies: + "@coinbase/wallet-sdk" "4.0.4" + "@metamask/sdk" "0.27.0" + "@safe-global/safe-apps-provider" "0.18.3" + "@safe-global/safe-apps-sdk" "9.1.0" + "@walletconnect/ethereum-provider" "2.15.1" + "@walletconnect/modal" "2.6.2" + cbw-sdk "npm:@coinbase/wallet-sdk@3.9.3" + +"@wagmi/connectors@^3.0.0": version "3.1.9" resolved "https://registry.npmjs.org/@wagmi/connectors/-/connectors-3.1.9.tgz" integrity sha512-q7Hz6WDnvOcZ/EPzuFgilirSwyoWYo1owowHmHqHTxEu0yu6HFNQGuaMNK9hsM/XCHeCisW/ZdUvudQSBUVpHQ== @@ -9365,18 +9470,6 @@ abitype "0.8.7" eventemitter3 "^4.0.7" -"@wagmi/connectors@4.3.10": - version "4.3.10" - resolved "https://registry.yarnpkg.com/@wagmi/connectors/-/connectors-4.3.10.tgz#b4ae30712fe0e818efa2a188cdcfc81b1e971f15" - integrity sha512-IZcsocBfDq6pe8sxkDgP2k9YNqv8udl2eSr2hx2JCESA44ixx5zRjoGNMAkKxlzM6uXjXLJKp/g1KYlpmoHkDg== - dependencies: - "@coinbase/wallet-sdk" "3.9.1" - "@metamask/sdk" "0.20.3" - "@safe-global/safe-apps-provider" "0.18.1" - "@safe-global/safe-apps-sdk" "8.1.0" - "@walletconnect/ethereum-provider" "2.13.0" - "@walletconnect/modal" "2.6.2" - "@wagmi/connectors@^4.3.9": version "4.3.9" resolved "https://registry.yarnpkg.com/@wagmi/connectors/-/connectors-4.3.9.tgz#7d0643ca7012c3181ce7ae09616bed1e7a3a720c" @@ -9389,17 +9482,16 @@ "@walletconnect/ethereum-provider" "2.13.0" "@walletconnect/modal" "2.6.2" -"@wagmi/core@1.4.11": - version "1.4.11" - resolved "https://registry.npmjs.org/@wagmi/core/-/core-1.4.11.tgz" - integrity sha512-H6y5v+PpvYbT5Qsk7PTVu5MtcSqudDqGZC/LZFV6Y+UeJlBsnfJNy5+cPEzKmvaz+6tSyVPGCF9aWK+sNdC0sQ== +"@wagmi/core@2.13.4": + version "2.13.4" + resolved "https://registry.yarnpkg.com/@wagmi/core/-/core-2.13.4.tgz#8d5da08e450171bfe34f72a079cfa2b81825410a" + integrity sha512-J6gfxHYr8SCc/BzEa712LnI+qLFs5K2nBLupwQqQl4WiAlCu8SdcpbZokqiwfCMYhIRMj0+YFEP9qe4ypcexmw== dependencies: - "@wagmi/connectors" "3.1.9" - abitype "0.8.7" - eventemitter3 "^4.0.7" - zustand "^4.3.1" + eventemitter3 "5.0.1" + mipd "0.0.7" + zustand "4.4.1" -"@wagmi/core@2.9.8", "@wagmi/core@^2.9.8": +"@wagmi/core@^2.9.8": version "2.9.8" resolved "https://registry.yarnpkg.com/@wagmi/core/-/core-2.9.8.tgz#dad0e4688372526d387576f904da83cb1123a0f9" integrity sha512-VQJMHZIZta53xFfEels/ig3w3iRFlH3dwQMcn70ZBL8c9RpecE5yus2Wxih4TOaB32hIkOtg4zla1abHG+u4Wg== @@ -9453,6 +9545,28 @@ lodash.isequal "4.5.0" uint8arrays "3.1.0" +"@walletconnect/core@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.15.1.tgz#98536057874246988428d9aadf4b25b23c3fd57f" + integrity sha512-9MWVt33MFrLiAeK9nqY/B30/y0M4uiq8v9EXenIBQdlgkmXM++RTcOnn7u7EAbthGgzx3WLPRm4ViwIb+rI/Cg== + dependencies: + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/jsonrpc-ws-connection" "1.0.14" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/logger" "2.1.2" + "@walletconnect/relay-api" "1.0.11" + "@walletconnect/relay-auth" "1.0.4" + "@walletconnect/safe-json" "1.0.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.15.1" + "@walletconnect/utils" "2.15.1" + events "3.3.0" + lodash.isequal "4.5.0" + uint8arrays "3.1.0" + "@walletconnect/core@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/core/-/core-2.9.2.tgz" @@ -9535,6 +9649,22 @@ "@walletconnect/utils" "2.13.0" events "3.3.0" +"@walletconnect/ethereum-provider@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/ethereum-provider/-/ethereum-provider-2.15.1.tgz#178c2063d5830671f50450d55abeaaf7627c117b" + integrity sha512-3ssEAKc/rLYshwyE2ZIaoTxzi/p9Ws+kj/FIsd1Ed/CC37Rl5l/KYHaRJtevWeni9s4dGqyqKsYkJ0VwwUcnfQ== + dependencies: + "@walletconnect/jsonrpc-http-connection" "1.0.8" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/modal" "2.6.2" + "@walletconnect/sign-client" "2.15.1" + "@walletconnect/types" "2.15.1" + "@walletconnect/universal-provider" "2.15.1" + "@walletconnect/utils" "2.15.1" + events "3.3.0" + "@walletconnect/ethereum-provider@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/ethereum-provider/-/ethereum-provider-2.9.2.tgz" @@ -9812,6 +9942,13 @@ dependencies: "@walletconnect/jsonrpc-types" "^1.0.2" +"@walletconnect/relay-api@1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@walletconnect/relay-api/-/relay-api-1.0.11.tgz#80ab7ef2e83c6c173be1a59756f95e515fb63224" + integrity sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q== + dependencies: + "@walletconnect/jsonrpc-types" "^1.0.2" + "@walletconnect/relay-api@^1.0.9": version "1.0.9" resolved "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.9.tgz" @@ -9869,6 +10006,21 @@ "@walletconnect/utils" "2.13.0" events "3.3.0" +"@walletconnect/sign-client@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.15.1.tgz#95b430164a8c6f3fe629531a5481dec9c9be02b4" + integrity sha512-YnLNEmCHgZ8yBpE3hwZnHD/bVznVMguSAlwLBNOoWUH2f4d9mR8bqa6KeVXqZ3e8mVHcxKTJTjTJ3oQMLyKIjw== + dependencies: + "@walletconnect/core" "2.15.1" + "@walletconnect/events" "1.0.1" + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/logger" "2.1.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.15.1" + "@walletconnect/utils" "2.15.1" + events "3.3.0" + "@walletconnect/sign-client@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.9.2.tgz" @@ -9927,6 +10079,18 @@ "@walletconnect/logger" "2.1.2" events "3.3.0" +"@walletconnect/types@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.15.1.tgz#5a093d28a32581e88fd4246690989099789f0830" + integrity sha512-4WkMsHD8ioZI5GmxNT0qMlz6msI7ZajBcTyDxfRncaNZVau0C+Btw1U4jWO+gxwJVDJY+Ue/cb1QKJ5BanZsyw== + dependencies: + "@walletconnect/events" "1.0.1" + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/logger" "2.1.2" + events "3.3.0" + "@walletconnect/types@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/types/-/types-2.9.2.tgz" @@ -9969,6 +10133,21 @@ "@walletconnect/utils" "2.13.0" events "3.3.0" +"@walletconnect/universal-provider@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/universal-provider/-/universal-provider-2.15.1.tgz#2c06faa0f22232ed09fd82b8a4ae047c3e56e9b4" + integrity sha512-JvKwHoE/ugWSKOmrEr03go1V79N0bbYV6w24Lqlzz4VAoReZZo8TDKsya7UkJ1L5HUCgKVP+AVktuJv8khzJ6w== + dependencies: + "@walletconnect/jsonrpc-http-connection" "1.0.8" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/logger" "2.1.2" + "@walletconnect/sign-client" "2.15.1" + "@walletconnect/types" "2.15.1" + "@walletconnect/utils" "2.15.1" + events "3.3.0" + "@walletconnect/universal-provider@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.9.2.tgz" @@ -10044,6 +10223,26 @@ query-string "7.1.3" uint8arrays "3.1.0" +"@walletconnect/utils@2.15.1": + version "2.15.1" + resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.15.1.tgz#4f90abe4869ee1cff6c0102c57b45e959811ca8d" + integrity sha512-i5AR8XpZdcX8ghaCjYV13Er/KAGe56c1mLaG9c2cv9kmnZMZijeMdInjX/flnSM1RFDUiZXvKPMUNwlCL4NsWw== + dependencies: + "@stablelib/chacha20poly1305" "1.0.1" + "@stablelib/hkdf" "1.0.1" + "@stablelib/random" "1.0.2" + "@stablelib/sha256" "1.0.1" + "@stablelib/x25519" "1.0.3" + "@walletconnect/relay-api" "1.0.11" + "@walletconnect/safe-json" "1.0.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.15.1" + "@walletconnect/window-getters" "1.0.1" + "@walletconnect/window-metadata" "1.0.1" + detect-browser "5.3.0" + query-string "7.1.3" + uint8arrays "3.1.0" + "@walletconnect/utils@2.9.2": version "2.9.2" resolved "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.9.2.tgz" @@ -10337,20 +10536,10 @@ abitype@0.8.7: resolved "https://registry.npmjs.org/abitype/-/abitype-0.8.7.tgz" integrity sha512-wQ7hV8Yg/yKmGyFpqrNZufCxbszDe5es4AZGYPBitocfSqXtjrTG9JMWFcc4N30ukl2ve48aBTwt7NJxVQdU3w== -abitype@0.9.3: - version "0.9.3" - resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.9.3.tgz#294d25288ee683d72baf4e1fed757034e3c8c277" - integrity sha512-dz4qCQLurx97FQhnb/EIYTk/ldQ+oafEDUqC0VVIeQS1Q48/YWt/9YNfMmp9SLFqN41ktxny3c8aYxHjmFIB/w== - -abitype@0.9.8: - version "0.9.8" - resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.9.8.tgz#1f120b6b717459deafd213dfbf3a3dd1bf10ae8c" - integrity sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ== - -abitype@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/abitype/-/abitype-1.0.0.tgz" - integrity sha512-NMeMah//6bJ56H5XRj8QCV4AwuW6hB6zqz2LnhhLdcWVQOsXki6/Pn3APeqxCma62nXIcmZWdu1DlHWS74umVQ== +abitype@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.5.tgz#29d0daa3eea867ca90f7e4123144c1d1270774b6" + integrity sha512-YzDhti7cjlfaBhHutMaboYB21Ha3rXR9QTkNJFzYC4kC8YclaiwPBBBJY8ejFdu2wnJeZCVZSMlQJ7fi8S6hsw== abitype@^0.8.3: version "0.8.11" @@ -11549,6 +11738,21 @@ cborg@^1.5.4, cborg@^1.6.0: resolved "https://registry.npmjs.org/cborg/-/cborg-1.10.2.tgz" integrity sha512-b3tFPA9pUr2zCUiCfRd2+wok2/LBSNUMKOuRRok+WlvvAgEt/PlbgPTsZUcwCOs53IJvLgTp0eotwtosE6njug== +"cbw-sdk@npm:@coinbase/wallet-sdk@3.9.3": + version "3.9.3" + resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-3.9.3.tgz#daf10cb0c85d0363315b7270cb3f02bedc408aab" + integrity sha512-N/A2DRIf0Y3PHc1XAMvbBUu4zisna6qAdqABMZwBMNEfWrXpAwx16pZGkYCLGE+Rvv1edbcB2LYDRnACNcmCiw== + dependencies: + bn.js "^5.2.1" + buffer "^6.0.3" + clsx "^1.2.1" + eth-block-tracker "^7.1.0" + eth-json-rpc-filters "^6.0.0" + eventemitter3 "^5.0.1" + keccak "^3.0.3" + preact "^10.16.0" + sha.js "^2.4.11" + ccount@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" @@ -15790,6 +15994,13 @@ i18next@22.5.1: dependencies: "@babel/runtime" "^7.20.6" +i18next@23.11.5: + version "23.11.5" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-23.11.5.tgz#d71eb717a7e65498d87d0594f2664237f9e361ef" + integrity sha512-41pvpVbW9rhZPk5xjCX2TPJi2861LEig/YRhUkY+1FQ2IQPS0bKUDYnEqY8XPPbB48h1uIwLnP9iiEfuSl20CA== + dependencies: + "@babel/runtime" "^7.23.2" + i18next@^23.7.6: version "23.7.9" resolved "https://registry.npmjs.org/i18next/-/i18next-23.7.9.tgz" @@ -16626,20 +16837,15 @@ isomorphic-unfetch@3.1.0: node-fetch "^2.6.1" unfetch "^4.2.0" -isomorphic-ws@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" - integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== - isomorphic-ws@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz" integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== -isows@1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/isows/-/isows-1.0.3.tgz" - integrity sha512-2cKei4vlmg2cxEjm3wVSqn8pcoRF/LX/wpifuuNquFO4SQmPwarClT+SUCA2lt+l581tTeZIPIZuIDo2jWN1fg== +isows@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.4.tgz#810cd0d90cc4995c26395d2aa4cfa4037ebdf061" + integrity sha512-hEzjY+x9u9hPmBom9IIAqdJCwNLax+xrPb51vEPpERoFlIxgmZcHzsT5jKG06nvInKOBGvReAVz80Umed5CczQ== it-all@^1.0.4: version "1.0.6" @@ -18758,6 +18964,11 @@ mipd@0.0.5: dependencies: viem "^1.1.4" +mipd@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mipd/-/mipd-0.0.7.tgz#bb5559e21fa18dc3d9fe1c08902ef14b7ce32fd9" + integrity sha512-aAPZPNDQ3uMTdKbuO2YmAw2TxLHO0moa4YKAyETM/DTj5FloZo+a+8tU+iv4GmW+sOxKLSRwcSFuczk+Cpt6fg== + mkdirp@^0.5.5: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" @@ -23931,49 +24142,20 @@ vfile@^6.0.0, vfile@^6.0.1: unist-util-stringify-position "^4.0.0" vfile-message "^4.0.0" -viem@1.5.3: - version "1.5.3" - resolved "https://registry.yarnpkg.com/viem/-/viem-1.5.3.tgz#076a95e0c11d03b6cfa8abb1bd19b48a2c02e056" - integrity sha512-oImpSDDvm8Y72qxXV0pCAGAqQLYgo8YENdz9EKS8ExnnOJLascpex4LNazNyp9cksjm3ORpVpbqGMr9Cy1z2mg== - dependencies: - "@adraffy/ens-normalize" "1.9.0" - "@noble/curves" "1.0.0" - "@noble/hashes" "1.3.0" - "@scure/bip32" "1.3.0" - "@scure/bip39" "1.2.0" - "@types/ws" "^8.5.4" - "@wagmi/chains" "1.6.0" - abitype "0.9.3" - isomorphic-ws "5.0.0" - ws "8.12.0" - -viem@2.8.6: - version "2.8.6" - resolved "https://registry.yarnpkg.com/viem/-/viem-2.8.6.tgz#7467a0f113b4b13dd53fde4797aec1e686672f03" - integrity sha512-LqxLOSFtXfbC3tsiZ8Km8jKR4ktTOLfigL2dR9IN28He2+QrNhYvvwGPz3P4hbfU12Wvuxo6mWGZ2L1lpNtvrA== +viem@1.5.3, viem@2.20.0, viem@2.8.6, viem@^1.0.0, viem@^1.1.4, viem@^1.21.4, viem@^2.1.1: + version "2.20.0" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.20.0.tgz#abff4c2cf733bcc20978e662ea17db117a2881ef" + integrity sha512-cM4vs81HnSNbfceI1MLkx4pCVzbVjl9xiNSv5SCutYjUyFFOVSPDlEyhpg2iHinxx1NM4Qne3END5eLT8rvUdg== dependencies: "@adraffy/ens-normalize" "1.10.0" - "@noble/curves" "1.2.0" - "@noble/hashes" "1.3.2" - "@scure/bip32" "1.3.2" - "@scure/bip39" "1.2.1" - abitype "1.0.0" - isows "1.0.3" - ws "8.13.0" - -viem@^1.0.0, viem@^1.1.4, viem@^1.21.4: - version "1.21.4" - resolved "https://registry.yarnpkg.com/viem/-/viem-1.21.4.tgz#883760e9222540a5a7e0339809202b45fe6a842d" - integrity sha512-BNVYdSaUjeS2zKQgPs+49e5JKocfo60Ib2yiXOWBT6LuVxY1I/6fFX3waEtpXvL1Xn4qu+BVitVtMh9lyThyhQ== - dependencies: - "@adraffy/ens-normalize" "1.10.0" - "@noble/curves" "1.2.0" - "@noble/hashes" "1.3.2" - "@scure/bip32" "1.3.2" - "@scure/bip39" "1.2.1" - abitype "0.9.8" - isows "1.0.3" - ws "8.13.0" + "@noble/curves" "1.4.0" + "@noble/hashes" "1.4.0" + "@scure/bip32" "1.4.0" + "@scure/bip39" "1.3.0" + abitype "1.0.5" + isows "1.0.4" + webauthn-p256 "0.0.5" + ws "8.17.1" vite-node@2.0.4: version "2.0.4" @@ -24116,25 +24298,13 @@ void-elements@3.1.0: resolved "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz" integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w== -wagmi@^1.3.11, wagmi@^1.4.2: - version "1.4.11" - resolved "https://registry.npmjs.org/wagmi/-/wagmi-1.4.11.tgz" - integrity sha512-Kslc5wwuPTSOqxpqElE9lGZahyPwlwAXrRpvmw+h89e8lPg7DWThQsPQMWiSvKcg+NloEHwQRGmy5rpfKFKLaA== +wagmi@2.12.7, wagmi@^1.3.11, wagmi@^1.4.2, wagmi@^2.8.8: + version "2.12.7" + resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-2.12.7.tgz#7c50271cd6a3edb7acc5f8cbaee096a0aac0e4ab" + integrity sha512-E7f+2fd+rZPJ3ggBZmVj064gYuCi/Z32x9WMfSDvj5jmGHDkAmTfSi9isKkjJrTf0I+sNxd3PCWku7pndFYsIw== dependencies: - "@tanstack/query-sync-storage-persister" "^4.27.1" - "@tanstack/react-query" "^4.28.0" - "@tanstack/react-query-persist-client" "^4.28.0" - "@wagmi/core" "1.4.11" - abitype "0.8.7" - use-sync-external-store "^1.2.0" - -wagmi@^2.8.8: - version "2.8.8" - resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-2.8.8.tgz#094dc5fc9b421791105081bba25ee9ab77126def" - integrity sha512-M1RynFKP/WQuJY97UGnUVIItm9Gub8q67DAlPe8AYsKvk7j9vmj72BhAGrZqGKnHNMarR8ODYspoP8fMfO/4sA== - dependencies: - "@wagmi/connectors" "4.3.10" - "@wagmi/core" "2.9.8" + "@wagmi/connectors" "5.1.7" + "@wagmi/core" "2.13.4" use-sync-external-store "1.2.0" walk-up-path@^3.0.1: @@ -24356,6 +24526,14 @@ web3-utils@1.8.0: randombytes "^2.1.0" utf8 "3.0.0" +webauthn-p256@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/webauthn-p256/-/webauthn-p256-0.0.5.tgz#0baebd2ba8a414b21cc09c0d40f9dd0be96a06bd" + integrity sha512-drMGNWKdaixZNobeORVIqq7k5DsRC9FnG201K2QjeOoQLmtSDaSsVZdkg6n5jUALJKcAG++zBPJXmv6hy0nWFg== + dependencies: + "@noble/curves" "^1.4.0" + "@noble/hashes" "^1.4.0" + "webextension-polyfill@>=0.10.0 <1.0": version "0.12.0" resolved "https://registry.yarnpkg.com/webextension-polyfill/-/webextension-polyfill-0.12.0.tgz#f62c57d2cd42524e9fbdcee494c034cae34a3d69" @@ -24571,15 +24749,10 @@ ws@7.4.6: resolved "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== -ws@8.12.0: - version "8.12.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" - integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== - -ws@8.13.0: - version "8.13.0" - resolved "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz" - integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== +ws@8.17.1: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" + integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== ws@8.5.0: version "8.5.0" @@ -24846,13 +25019,6 @@ zustand@4.4.1: dependencies: use-sync-external-store "1.2.0" -zustand@^4.3.1: - version "4.4.7" - resolved "https://registry.npmjs.org/zustand/-/zustand-4.4.7.tgz" - integrity sha512-QFJWJMdlETcI69paJwhSMJz7PPWjVP8Sjhclxmxmxv/RYI7ZOvR5BHX+ktH0we9gTWQMxcne8q1OY8xxz604gw== - dependencies: - use-sync-external-store "1.2.0" - zustand@^4.5.2: version "4.5.2" resolved "https://registry.npmjs.org/zustand/-/zustand-4.5.2.tgz"