diff --git a/packages/common/package.json b/packages/common/package.json index 65b137de84..3fe2b3fe24 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -71,7 +71,7 @@ }, "dependencies": { "@latticexyz/schema-type": "workspace:*", - "@solidity-parser/parser": "^0.16.0", + "@nomicfoundation/slang": "^1.2.1", "abitype": "1.0.9", "debug": "^4.3.4", "execa": "^9.5.2", diff --git a/packages/common/src/codegen/utils/contractToInterface.test.ts b/packages/common/src/codegen/utils/contractToInterface.test.ts new file mode 100644 index 0000000000..6b06220fbc --- /dev/null +++ b/packages/common/src/codegen/utils/contractToInterface.test.ts @@ -0,0 +1,48 @@ +import { describe, expect, it } from "vitest"; +import { contractToInterface } from "./contractToInterface"; + +const source = ` +import { Data } from "./lib.sol"; + +contract World { + constructor() {} + fallback(bytes calldata input) external payable returns (bytes memory) {} + receive() external payable {} + function update(Data.Entity[] memory entities, uint delta) public returns (bool) {} + function visible() view external {} + function invisible() internal {} + error UpdateError(uint entityId); +} +`; + +describe("contractToInterface", () => { + it("extracts public functions and errors from contract", () => { + const { functions, errors, symbolImports } = contractToInterface(source, "World"); + expect(functions).toStrictEqual([ + { + name: "update", + parameters: ["Data.Entity[] memory entities", "uint delta"], + returnParameters: ["bool"], + stateMutability: "", + }, + { + name: "visible", + parameters: [], + returnParameters: [], + stateMutability: "view", + }, + ]); + expect(errors).toStrictEqual([ + { + name: "UpdateError", + parameters: ["uint entityId"], + }, + ]); + expect(symbolImports).toStrictEqual([ + { + path: "./lib.sol", + symbol: "Data", + }, + ]); + }); +}); diff --git a/packages/common/src/codegen/utils/contractToInterface.ts b/packages/common/src/codegen/utils/contractToInterface.ts index 94ea706e6f..413d99b28d 100644 --- a/packages/common/src/codegen/utils/contractToInterface.ts +++ b/packages/common/src/codegen/utils/contractToInterface.ts @@ -1,8 +1,19 @@ -import { parse, visit } from "@solidity-parser/parser"; -import type { SourceUnit, TypeName, VariableDeclaration } from "@solidity-parser/parser/dist/src/ast-types"; import { MUDError } from "../../errors"; -import { findContractNode } from "./findContractNode"; +import { findContractOrInterfaceNode } from "./findContractOrInterfaceNode"; import { SymbolImport, findSymbolImport } from "./findSymbolImport"; +import { Parser } from "@nomicfoundation/slang/parser"; +import { assertNonterminalNode, Cursor, Query, TerminalNode } from "@nomicfoundation/slang/cst"; +import { + ArrayTypeName, + ErrorDefinition, + ErrorParametersDeclaration, + FunctionDefinition, + IdentifierPath, + MemberAccessExpression, + ParametersDeclaration, + TypeName, +} from "@nomicfoundation/slang/ast"; +import { LanguageFacts } from "@nomicfoundation/slang/utils"; export interface ContractInterfaceFunction { name: string; @@ -39,13 +50,18 @@ export function contractToInterface( symbolImports: SymbolImport[]; qualifiedSymbols: Map; } { - let ast: SourceUnit; - try { - ast = parse(source); - } catch (error) { - throw new MUDError(`Failed to parse contract ${contractName}: ${error}`); + const version = LanguageFacts.inferLanguageVersions(source).at(-1); + const parser = Parser.create(version ?? LanguageFacts.latestVersion()); + const parserResult = parser.parseFileContents(source); + if (!parserResult.isValid()) { + const errorMessage = parserResult + .errors() + .map((error) => error.message) + .join("\n"); + throw new MUDError(`Failed to parse contract ${contractName}: ${errorMessage}`); } - const contractNode = findContractNode(ast, contractName); + const root = parserResult.createTreeCursor(); + const contractNode = findContractOrInterfaceNode(root, contractName); let symbolImports: SymbolImport[] = []; const functions: ContractInterfaceFunction[] = []; const errors: ContractInterfaceError[] = []; @@ -55,55 +71,76 @@ export function contractToInterface( throw new MUDError(`Contract not found: ${contractName}`); } - visit(contractNode, { - FunctionDefinition({ - name, - visibility, - parameters, - stateMutability, - returnParameters, - isConstructor, - isFallback, - isReceiveEther, - }) { - try { - // skip constructor and fallbacks - if (isConstructor || isFallback || isReceiveEther) return; - // forbid default visibility (this check might be unnecessary, modern solidity already disallows this) - if (visibility === "default") throw new MUDError(`Visibility is not specified`); - - if (visibility === "external" || visibility === "public") { - functions.push({ - name: name === null ? "" : name, - parameters: parameters.map(parseParameter), - stateMutability: stateMutability || "", - returnParameters: returnParameters === null ? [] : returnParameters.map(parseParameter), - }); - - for (const { typeName } of parameters.concat(returnParameters ?? [])) { - const symbols = typeNameToSymbols(typeName); - symbolImports = symbolImports.concat(symbolsToImports(ast, symbols, findInheritedSymbol, qualifiedSymbols)); - } + for (const match of contractNode.query([ + Query.create(` + @function [FunctionDefinition [FunctionName [Identifier]]] + `), + Query.create(` + @error [ErrorDefinition] + `), + ])) { + if (match.captures["function"]) { + // Functions + const funcNode = match.captures["function"]?.[0].node; + assertNonterminalNode(funcNode); + const funcDef = new FunctionDefinition(funcNode); + const name = funcDef.name.cst.unparse().trim(); + + let visibility = undefined; + let stateMutability = ""; + for (const item of funcDef.attributes.items) { + const attribute = item.cst.unparse().trim(); + switch (attribute) { + case "public": + case "private": + case "internal": + case "external": + visibility = attribute; + break; + case "view": + case "pure": + case "payable": + stateMutability = attribute; + break; } - } catch (error: unknown) { - if (error instanceof MUDError) { - error.message = `Function "${name}" in contract "${contractName}": ${error.message}`; - } - throw error; } - }, - CustomErrorDefinition({ name, parameters }) { + if (visibility === undefined) throw new MUDError(`Visibility is not specified for function '${name}'`); + if (visibility !== "public" && visibility !== "external") { + continue; + } + + functions.push({ + name, + parameters: splatParameters(funcDef.parameters), + stateMutability, + returnParameters: splatParameters(funcDef.returns?.variables), + }); + + for (const { typeName } of funcDef.parameters.parameters.items.concat( + funcDef.returns?.variables.parameters.items ?? [], + )) { + const symbols = typeNameToSymbols(typeName); + symbolImports = symbolImports.concat(symbolsToImports(root, symbols, findInheritedSymbol, qualifiedSymbols)); + } + } else if (match.captures["error"]) { + // Custom errors + const errorNode = match.captures.error?.[0].node; + assertNonterminalNode(errorNode); + const errorDef = new ErrorDefinition(errorNode); + const name = errorDef.name.unparse().trim(); errors.push({ name, - parameters: parameters.map(parseParameter), + parameters: splatParameters(errorDef.members), }); - for (const parameter of parameters) { - const symbols = typeNameToSymbols(parameter.typeName); - symbolImports = symbolImports.concat(symbolsToImports(ast, symbols, findInheritedSymbol, qualifiedSymbols)); + for (const { typeName } of errorDef.members.parameters.items) { + const symbols = typeNameToSymbols(typeName); + symbolImports = symbolImports.concat(symbolsToImports(root, symbols, findInheritedSymbol, qualifiedSymbols)); } - }, - }); + } + } + + symbolImports = deduplicateSymbolImports(symbolImports); return { functions, @@ -113,85 +150,33 @@ export function contractToInterface( }; } -function parseParameter({ name, typeName, storageLocation }: VariableDeclaration): string { - let typedNameWithLocation = ""; - - const { name: flattenedTypeName, stateMutability } = flattenTypeName(typeName); - // type name (e.g. uint256) - typedNameWithLocation += flattenedTypeName; - // optional mutability (e.g. address payable) - if (stateMutability !== null) { - typedNameWithLocation += ` ${stateMutability}`; - } - // location, when relevant (e.g. string memory) - if (storageLocation !== null) { - typedNameWithLocation += ` ${storageLocation}`; - } - // optional variable name - if (name !== null) { - typedNameWithLocation += ` ${name}`; - } - - return typedNameWithLocation; -} - -function flattenTypeName(typeName: TypeName | null): { name: string; stateMutability: string | null } { - if (typeName === null) { - return { - name: "", - stateMutability: null, - }; - } - if (typeName.type === "ElementaryTypeName") { - return { - name: typeName.name, - stateMutability: typeName.stateMutability, - }; - } else if (typeName.type === "UserDefinedTypeName") { - return { - name: typeName.namePath, - stateMutability: null, - }; - } else if (typeName.type === "ArrayTypeName") { - let length = ""; - if (typeName.length?.type === "NumberLiteral") { - length = typeName.length.number; - } else if (typeName.length?.type === "Identifier") { - length = typeName.length.name; - } - - const { name, stateMutability } = flattenTypeName(typeName.baseTypeName); - return { - name: `${name}[${length}]`, - stateMutability, - }; - } else { - // TODO function types are unsupported but could be useful - throw new MUDError(`Invalid typeName.type ${typeName.type}`); - } +function splatParameters(parameters: ParametersDeclaration | ErrorParametersDeclaration | undefined): string[] { + return parameters?.parameters.items.map((parameter) => parameter.cst.unparse().trim()) ?? []; } // Get symbols that need to be imported for given typeName -function typeNameToSymbols(typeName: TypeName | null): string[] { - if (typeName?.type === "UserDefinedTypeName") { - // split is needed to get a library, if types are internal to it - const symbol = typeName.namePath.split(".")[0]; - return [symbol]; - } else if (typeName?.type === "ArrayTypeName") { - const symbols = typeNameToSymbols(typeName.baseTypeName); - // array types can also use symbols (constants) for length - if (typeName.length?.type === "Identifier") { - const innerTypeName = typeName.length.name; - symbols.push(innerTypeName.split(".")[0]); +function typeNameToSymbols(typeName: TypeName): string[] { + const typeVariant = typeName.variant; + if (typeVariant instanceof IdentifierPath) { + return [typeVariant.items[0].unparse()]; + } else if (typeVariant instanceof ArrayTypeName) { + const symbols = typeNameToSymbols(typeVariant.operand); + const indexVariant = typeVariant.index?.variant; + if (indexVariant instanceof TerminalNode) { + symbols.push(indexVariant.unparse()); + } else if (indexVariant instanceof MemberAccessExpression) { + const memberOperandVariant = indexVariant.operand.variant; + if (memberOperandVariant instanceof TerminalNode) { + symbols.push(memberOperandVariant.unparse()); + } } return symbols; - } else { - return []; } + return []; } function symbolsToImports( - ast: SourceUnit, + root: Cursor, symbols: string[], findInheritedSymbol?: (symbol: string) => QualifiedSymbol | undefined, qualifiedSymbols?: Map, @@ -200,7 +185,7 @@ function symbolsToImports( for (const symbol of symbols) { // First check explicit imports - const explicitImport = findSymbolImport(ast, symbol); + const explicitImport = findSymbolImport(root, symbol); if (explicitImport) { imports.push(explicitImport); continue; @@ -225,6 +210,10 @@ function symbolsToImports( } } + return imports; +} + +function deduplicateSymbolImports(imports: SymbolImport[]): SymbolImport[] { // Deduplicate imports const uniqueImports = new Map(); for (const imp of imports) { diff --git a/packages/common/src/codegen/utils/findContractNode.ts b/packages/common/src/codegen/utils/findContractNode.ts deleted file mode 100644 index cccc8822f0..0000000000 --- a/packages/common/src/codegen/utils/findContractNode.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { visit } from "@solidity-parser/parser"; -import type { ContractDefinition, SourceUnit } from "@solidity-parser/parser/dist/src/ast-types"; - -export function findContractNode(ast: SourceUnit, contractName: string): ContractDefinition | undefined { - let contract: ContractDefinition | undefined = undefined; - - visit(ast, { - ContractDefinition(node) { - if (node.name === contractName) { - contract = node; - } - }, - }); - - return contract; -} diff --git a/packages/common/src/codegen/utils/findContractOrInterfaceNode.ts b/packages/common/src/codegen/utils/findContractOrInterfaceNode.ts new file mode 100644 index 0000000000..7c88bafa57 --- /dev/null +++ b/packages/common/src/codegen/utils/findContractOrInterfaceNode.ts @@ -0,0 +1,18 @@ +import { Cursor, Query } from "@nomicfoundation/slang/cst"; + +export function findContractOrInterfaceNode(root: Cursor, contractOrInterfaceName: string): Cursor | undefined { + for (const result of root.query([ + Query.create(` + [ContractDefinition + name: ["${contractOrInterfaceName}"] + ] + `), + Query.create(` + [InterfaceDefinition + name: ["${contractOrInterfaceName}"] + ] + `), + ])) { + return result.root; + } +} diff --git a/packages/common/src/codegen/utils/findSymbolImport.ts b/packages/common/src/codegen/utils/findSymbolImport.ts index 2b3d5ac9b1..7cbe4deaa3 100644 --- a/packages/common/src/codegen/utils/findSymbolImport.ts +++ b/packages/common/src/codegen/utils/findSymbolImport.ts @@ -1,5 +1,4 @@ -import { visit } from "@solidity-parser/parser"; -import type { SourceUnit } from "@solidity-parser/parser/dist/src/ast-types"; +import { Cursor, Query } from "@nomicfoundation/slang/cst"; export interface SymbolImport { symbol: string; @@ -14,27 +13,27 @@ export interface SymbolImport { * To avoid parsing the entire project to build dependencies, * symbols must be imported with an explicit `import { symbol } from ...` */ -export function findSymbolImport(ast: SourceUnit, symbol: string): SymbolImport | undefined { - let symbolImport: SymbolImport | undefined; - - visit(ast, { - ImportDirective({ path, symbolAliases }) { - if (symbolAliases) { - for (const symbolAndAlias of symbolAliases) { - // either check the alias, or the original symbol if there's no alias - const symbolAlias = symbolAndAlias[1] ?? symbolAndAlias[0]; - if (symbol === symbolAlias) { - symbolImport = { - // always use the original symbol for interface imports - symbol: symbolAndAlias[0], - path, - }; - return; - } - } - } - }, - }); - - return symbolImport; +export function findSymbolImport(root: Cursor, symbol: string): SymbolImport | undefined { + for (const result of root.query([ + Query.create(` + [ImportDeconstruction + [_ item: [ImportDeconstructionSymbol + @name [Identifier] + alias: [_ @alias identifier: [Identifier]]?] + ] + path: [StringLiteral @path [_]] + ] + `), + ])) { + const symbolName = result.captures.name?.[0].node.unparse(); + const symbolAlias = result.captures.alias?.[0].node.unparse() ?? symbolName; + // The path node includes the quotation marks, so we stripped them off. + const path = result.captures.path?.[0].node.unparse().slice(1, -1); + if (symbol === symbolAlias) { + return { + symbol: symbolName, + path, + }; + } + } } diff --git a/packages/common/src/codegen/utils/parseSystem.test.ts b/packages/common/src/codegen/utils/parseSystem.test.ts new file mode 100644 index 0000000000..25727f9115 --- /dev/null +++ b/packages/common/src/codegen/utils/parseSystem.test.ts @@ -0,0 +1,34 @@ +import { describe, expect, it } from "vitest"; +import { parseSystem } from "./parseSystem"; + +describe("parseSystem", () => { + it("returns undefined if the contract is not found", () => { + expect(parseSystem("contract Foo {}", "System")).toBeUndefined(); + }); + + it("returns contract type when the name ends with 'System'", () => { + expect(parseSystem("contract TestSystem {}", "TestSystem")).toStrictEqual({ contractType: "contract" }); + }); + + it("returns abstract type when the name ends with 'System'", () => { + expect(parseSystem("abstract contract TestSystem {}", "TestSystem")).toStrictEqual({ contractType: "abstract" }); + }); + + it("returns undefined for interfaces", () => { + expect(parseSystem("interface TestSystem {}", "TestSystem")).toBeUndefined(); + }); + + it("returns the contract type if the contract extends the base system", () => { + const source = ` +import { System } from "@latticexyz/world/src/System.sol"; +contract Test is System {} +`; + expect(parseSystem(source, "Test")).toStrictEqual({ contractType: "contract" }); + }); + + it("handles unsupported version in pragma directive", () => { + expect(parseSystem("pragma solidity 0.7.99;\ncontract TestSystem {}", "TestSystem")).toStrictEqual({ + contractType: "contract", + }); + }); +}); diff --git a/packages/common/src/codegen/utils/parseSystem.ts b/packages/common/src/codegen/utils/parseSystem.ts index 656a42fbd0..e059e97909 100644 --- a/packages/common/src/codegen/utils/parseSystem.ts +++ b/packages/common/src/codegen/utils/parseSystem.ts @@ -1,7 +1,9 @@ -import { parse, visit } from "@solidity-parser/parser"; - -import { findContractNode } from "./findContractNode"; +import { findContractOrInterfaceNode } from "./findContractOrInterfaceNode"; import { findSymbolImport } from "./findSymbolImport"; +import { Parser } from "@nomicfoundation/slang/parser"; +import { assertNonterminalNode, Query } from "@nomicfoundation/slang/cst"; +import { ContractDefinition } from "@nomicfoundation/slang/ast"; +import { LanguageFacts } from "@nomicfoundation/slang/utils"; const baseSystemName = "System"; const baseSystemPath = "@latticexyz/world/src/System.sol"; @@ -10,32 +12,35 @@ export function parseSystem( source: string, contractName: string, ): undefined | { contractType: "contract" | "abstract" } { - const ast = parse(source); - const contractNode = findContractNode(ast, contractName); - if (!contractNode) return; + const version = LanguageFacts.inferLanguageVersions(source).at(-1); + const parser = Parser.create(version ?? LanguageFacts.latestVersion()); + const root = parser.parseFileContents(source).createTreeCursor(); - const contractType = contractNode.kind; - // skip libraries and interfaces - // we allow abstract systems here so that we can create system libraries from them but without deploying them - if (contractType !== "contract" && contractType !== "abstract") return; + const contractCursor = findContractOrInterfaceNode(root, contractName); + if (!contractCursor) return; - const isSystem = ((): boolean => { - // if using the System suffix, assume its a system - if (contractName.endsWith("System") && contractName !== baseSystemName) return true; + assertNonterminalNode(contractCursor.node); + if (contractCursor.node.kind === "InterfaceDefinition") { + // it's an interface + return; + } + const contract = new ContractDefinition(contractCursor.node); + const contractType = contract.abstractKeyword ? "abstract" : "contract"; - // otherwise check if we're inheriting from the base system - let extendsBaseSystem = false; - visit(contractNode, { - InheritanceSpecifier(node) { - if (node.baseName.namePath === baseSystemName) { - extendsBaseSystem = true; - } - }, - }); - return extendsBaseSystem && findSymbolImport(ast, baseSystemName)?.path === baseSystemPath; - })(); + // if using the System suffix, assume its a system + if (contractName.endsWith("System") && contractName !== baseSystemName) return { contractType }; - if (isSystem) { - return { contractType }; + for (const _ of contractCursor.query([ + Query.create(` + [InheritanceType + type_name: [_ ["${baseSystemName}"]] + ] + `), + ])) { + if (findSymbolImport(root, baseSystemName)?.path === baseSystemPath) { + return { contractType }; + } } + + return; } diff --git a/packages/common/src/codegen/utils/resolveInheritedSymbols.ts b/packages/common/src/codegen/utils/resolveInheritedSymbols.ts index 747f157e1e..5927897226 100644 --- a/packages/common/src/codegen/utils/resolveInheritedSymbols.ts +++ b/packages/common/src/codegen/utils/resolveInheritedSymbols.ts @@ -1,11 +1,13 @@ -import { parse, visit } from "@solidity-parser/parser"; -import type { SourceUnit, ContractDefinition } from "@solidity-parser/parser/dist/src/ast-types"; import { readFile } from "node:fs/promises"; import path from "node:path"; -import { findContractNode } from "./findContractNode"; +import { findContractOrInterfaceNode } from "./findContractOrInterfaceNode"; import { QualifiedSymbol } from "./contractToInterface"; import { findSymbolImport } from "./findSymbolImport"; import { resolveRemapping } from "./resolveRemapping"; +import { Parser } from "@nomicfoundation/slang/parser"; +import { assertNonterminalNode, Cursor, Query } from "@nomicfoundation/slang/cst"; +import { ContractDefinition, InterfaceDefinition } from "@nomicfoundation/slang/ast"; +import { LanguageFacts } from "@nomicfoundation/slang/utils"; interface InheritanceInfo { baseContracts: string[]; @@ -42,34 +44,36 @@ export async function createInheritanceResolver( const source = await readFile(filePath, "utf8"); // Try to parse the source - let ast: SourceUnit; - try { - ast = parse(source); - } catch (parseError) { - // If parsing fails, log the error and skip this file - console.warn(`Warning: Failed to parse ${filePath} for inheritance resolution:`, parseError); + const version = LanguageFacts.inferLanguageVersions(source).at(-1); + const parser = Parser.create(version ?? LanguageFacts.latestVersion()); + const parserResult = parser.parseFileContents(source); + if (!parserResult.isValid()) { + const errorMessage = parserResult + .errors() + .map((error) => error.message) + .join("\n"); + console.warn(`Warning: Failed to parse ${filePath} for inheritance resolution:`, errorMessage); return undefined; } + const root = parserResult.createTreeCursor(); // If targetContractName is specified, find that specific contract // Otherwise, process all contracts in the file - const contractsToProcess: ContractDefinition[] = []; + const contractsToProcess: Cursor[] = []; if (targetContractName) { - const contractNode = findContractNode(ast, targetContractName); - if (contractNode) { - contractsToProcess.push(contractNode); + const contractCursor = findContractOrInterfaceNode(root, targetContractName); + if (contractCursor) { + contractsToProcess.push(contractCursor); } } else { - visit(ast, { - ContractDefinition(node) { - contractsToProcess.push(node); - }, - }); + for (const result of root.query([Query.create(`@contract ([ContractDefinition] | [InterfaceDefinition])`)])) { + contractsToProcess.push(result.captures.contract?.[0]); + } } // Process each contract - for (const contractNode of contractsToProcess) { + for (const contractCursor of contractsToProcess) { const info: InheritanceInfo = { baseContracts: [], baseContractImports: new Map(), @@ -77,38 +81,50 @@ export async function createInheritanceResolver( filePath: normalizedPath, }; + const contractNode = contractCursor.node; + assertNonterminalNode(contractNode); + const contract = + contractNode.kind === "ContractDefinition" + ? new ContractDefinition(contractNode) + : new InterfaceDefinition(contractNode); + const contractName = contract.name.unparse(); + // Extract base contracts - if (contractNode.baseContracts) { - for (const base of contractNode.baseContracts) { - info.baseContracts.push(base.baseName.namePath); - } + for (const result of contractCursor.query([ + Query.create(` + [InheritanceType type_name: [IdentifierPath @baseName [Identifier]]] + `), + ])) { + const baseName = result.captures.baseName?.[0].node.unparse(); + info.baseContracts.push(baseName); } // Extract symbols defined in this contract/interface - visit(contractNode, { - StructDefinition(node) { - if (node.name) { - info.symbols.set(node.name, { type: "struct", contract: contractNode.name }); - } - }, - EnumDefinition(node) { - if (node.name) { - info.symbols.set(node.name, { type: "enum", contract: contractNode.name }); - } - }, - CustomErrorDefinition(node) { - if (node.name) { - info.symbols.set(node.name, { type: "error", contract: contractNode.name }); - } - }, - }); + for (const result of contractCursor.query([ + Query.create(`[StructDefinition @name [Identifier]]`), + Query.create(`[EnumDefinition @name [Identifier]]`), + Query.create(`[ErrorDefinition @name [Identifier]]`), + ])) { + const name = result.captures.name?.[0].node.unparse(); + switch (result.queryIndex) { + case 0: + info.symbols.set(name, { type: "struct", contract: contractName }); + break; + case 1: + info.symbols.set(name, { type: "enum", contract: contractName }); + break; + case 2: + info.symbols.set(name, { type: "error", contract: contractName }); + break; + } + } - resolvedContracts.set(contractNode.name, info); + resolvedContracts.set(contractName, info); // Recursively process base contracts for (const baseName of info.baseContracts) { // First check if it's imported - const importInfo = findSymbolImport(ast, baseName); + const importInfo = findSymbolImport(root, baseName); if (importInfo) { // Store the original import path info.baseContractImports.set(baseName, importInfo.path); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9825e5cfe3..4ed65eb68a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -106,7 +106,7 @@ importers: version: 0.8.4(typescript@5.4.2)(zod@3.23.8) porto: specifier: 0.0.76 - version: 0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8) + version: 0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8) react: specifier: ^19.1.0 version: 19.1.0 @@ -124,7 +124,7 @@ importers: version: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) wagmi: specifier: 2.16.5 - version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) zustand: specifier: ^5.0.6 version: 5.0.6(@types/react@18.2.22)(react@19.1.0)(use-sync-external-store@1.4.0(react@19.1.0)) @@ -330,9 +330,9 @@ importers: '@latticexyz/schema-type': specifier: workspace:* version: link:../schema-type - '@solidity-parser/parser': - specifier: ^0.16.0 - version: 0.16.0 + '@nomicfoundation/slang': + specifier: ^1.2.1 + version: 1.2.1 abitype: specifier: 1.0.9 version: 1.0.9(typescript@5.4.2)(zod@3.23.8) @@ -673,7 +673,7 @@ importers: version: 3.1.3(@types/react-dom@18.2.7)(@types/react@18.2.22)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@rainbow-me/rainbowkit': specifier: ^2.2.6 - version: 2.2.6(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) + version: 2.2.6(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)) '@tanstack/react-query': specifier: ^5.51.3 version: 5.52.0(react@18.2.0) @@ -739,7 +739,7 @@ importers: version: 1.12.0 wagmi: specifier: 2.16.5 - version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) yargs: specifier: ^17.7.1 version: 17.7.2 @@ -871,7 +871,7 @@ importers: version: 4.4.1(supports-color@5.5.0) porto: specifier: 0.0.76 - version: 0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8) + version: 0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8) devDependencies: '@types/debug': specifier: ^4.1.7 @@ -881,7 +881,7 @@ importers: version: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) wagmi: specifier: 2.16.5 - version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) packages/paymaster: devDependencies: @@ -1353,7 +1353,7 @@ importers: version: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) wagmi: specifier: 2.16.5 - version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.56.2(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + version: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.56.2(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) packages/utils: dependencies: @@ -2212,6 +2212,9 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@bytecodealliance/preview2-shim@0.17.2': + resolution: {integrity: sha512-mNm/lblgES8UkVle8rGImXOz4TtL3eU3inHay/7TVchkKrb/lgcVvTK0+VAw8p5zQ0rgQsXm1j5dOlAAd+MeoA==} + '@changesets/apply-release-plan@7.0.4': resolution: {integrity: sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==} @@ -3366,6 +3369,9 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@nomicfoundation/slang@1.2.1': + resolution: {integrity: sha512-XQirzqDGxMnhOZtGPRLdc1F6UymU0N/lhXUcWsf6bqy29Pq+g6ougvbSTTCTXjgWXjBp6zQ1gaJmzWmMBvMgOw==} + '@npmcli/fs@2.1.2': resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -13037,6 +13043,8 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} + '@bytecodealliance/preview2-shim@0.17.2': {} + '@changesets/apply-release-plan@7.0.4': dependencies: '@babel/runtime': 7.21.0 @@ -14335,6 +14343,10 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 + '@nomicfoundation/slang@1.2.1': + dependencies: + '@bytecodealliance/preview2-shim': 0.17.2 + '@npmcli/fs@2.1.2': dependencies: '@gar/promisify': 1.1.3 @@ -15682,7 +15694,7 @@ snapshots: '@types/react': 18.2.22 '@types/react-dom': 18.2.7 - '@rainbow-me/rainbowkit@2.2.6(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))': + '@rainbow-me/rainbowkit@2.2.6(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))': dependencies: '@tanstack/react-query': 5.52.0(react@18.2.0) '@vanilla-extract/css': 1.15.5 @@ -15695,7 +15707,7 @@ snapshots: react-remove-scroll: 2.6.2(@types/react@18.2.22)(react@18.2.0) ua-parser-js: 1.0.38 viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - wagmi: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + wagmi: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) transitivePeerDependencies: - '@types/react' - babel-plugin-macros @@ -15806,37 +15818,7 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-controllers@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/universal-provider': 2.21.0(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - valtio: 1.13.2(@types/react@18.2.22)(react@18.2.0) - viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@reown/appkit-controllers@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@reown/appkit-controllers@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) @@ -15897,43 +15879,12 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-pay@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@reown/appkit-pay@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8) - lit: 3.3.0 - valtio: 1.13.2(@types/react@18.2.22)(react@18.2.0) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@reown/appkit-pay@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) + '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) lit: 3.3.0 valtio: 1.13.2(@types/react@18.2.22)(react@19.1.0) transitivePeerDependencies: @@ -16031,44 +15982,12 @@ snapshots: - valtio - zod - '@reown/appkit-scaffold-ui@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8)': + '@reown/appkit-scaffold-ui@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8) - '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) - lit: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - valtio - - zod - - '@reown/appkit-scaffold-ui@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) + '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) lit: 3.3.0 transitivePeerDependencies: @@ -16155,40 +16074,10 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-ui@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) - lit: 3.3.0 - qrcode: 1.5.3 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@reown/appkit-ui@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@reown/appkit-ui@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) lit: 3.3.0 qrcode: 1.5.3 @@ -16281,43 +16170,10 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-utils@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8)': + '@reown/appkit-utils@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-polyfills': 1.7.8 - '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/logger': 2.1.2 - '@walletconnect/universal-provider': 2.21.0(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - valtio: 1.13.2(@types/react@18.2.22)(react@18.2.0) - viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@reown/appkit-utils@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-polyfills': 1.7.8 '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/logger': 2.1.2 @@ -16444,53 +16300,15 @@ snapshots: - utf-8-validate - zod - '@reown/appkit@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@reown/appkit@1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-pay': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-pay': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-polyfills': 1.7.8 - '@reown/appkit-scaffold-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@18.2.0))(zod@3.23.8) - '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/types': 2.21.0(@upstash/redis@1.34.9) - '@walletconnect/universal-provider': 2.21.0(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - bs58: 6.0.0 - valtio: 1.13.2(@types/react@18.2.22)(react@18.2.0) - viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@reown/appkit@1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': - dependencies: - '@reown/appkit-common': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-controllers': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-pay': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-polyfills': 1.7.8 - '@reown/appkit-scaffold-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) - '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) + '@reown/appkit-scaffold-ui': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) + '@reown/appkit-ui': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-utils': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(valtio@1.13.2(@types/react@18.2.22)(react@19.1.0))(zod@3.23.8) '@reown/appkit-wallet': 1.7.8(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/types': 2.21.0(@upstash/redis@1.34.9) '@walletconnect/universal-provider': 2.21.0(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -17789,46 +17607,7 @@ snapshots: - utf-8-validate - zod - '@wagmi/connectors@5.9.5(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)': - dependencies: - '@base-org/account': 1.1.1(@types/react@18.2.22)(bufferutil@4.0.8)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(zod@3.23.8) - '@coinbase/wallet-sdk': 4.3.6(@types/react@18.2.22)(bufferutil@4.0.8)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(zod@3.23.8) - '@gemini-wallet/core': 0.2.0(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) - '@metamask/sdk': 0.32.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10) - '@safe-global/safe-apps-provider': 0.18.6(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) - '@walletconnect/ethereum-provider': 2.21.1(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - cbw-sdk: '@coinbase/wallet-sdk@3.9.3' - viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - optionalDependencies: - typescript: 5.4.2 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - immer - - ioredis - - react - - supports-color - - uWebSockets.js - - use-sync-external-store - - utf-8-validate - - zod - - '@wagmi/connectors@5.9.5(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)': + '@wagmi/connectors@5.9.5(@types/react@18.2.22)(@upstash/redis@1.34.9)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8)': dependencies: '@base-org/account': 1.1.1(@types/react@18.2.22)(bufferutil@4.0.8)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(zod@3.23.8) '@coinbase/wallet-sdk': 4.3.6(@types/react@18.2.22)(bufferutil@4.0.8)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(zod@3.23.8) @@ -17837,7 +17616,7 @@ snapshots: '@safe-global/safe-apps-provider': 0.18.6(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) - '@walletconnect/ethereum-provider': 2.21.1(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@walletconnect/ethereum-provider': 2.21.1(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) cbw-sdk: '@coinbase/wallet-sdk@3.9.3' viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) optionalDependencies: @@ -18129,45 +17908,9 @@ snapshots: - utf-8-validate - zod - '@walletconnect/ethereum-provider@2.21.1(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': - dependencies: - '@reown/appkit': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/keyvaluestorage': 1.1.1(@upstash/redis@1.34.9) - '@walletconnect/sign-client': 2.21.1(@upstash/redis@1.34.9)(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@walletconnect/types': 2.21.1(@upstash/redis@1.34.9) - '@walletconnect/universal-provider': 2.21.1(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - '@walletconnect/utils': 2.21.1(@upstash/redis@1.34.9)(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - events: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - ioredis - - react - - typescript - - uWebSockets.js - - utf-8-validate - - zod - - '@walletconnect/ethereum-provider@2.21.1(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@walletconnect/ethereum-provider@2.21.1(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: - '@reown/appkit': 1.7.8(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit': 1.7.8(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) '@walletconnect/jsonrpc-provider': 1.0.14 '@walletconnect/jsonrpc-types': 1.0.4 @@ -21952,7 +21695,7 @@ snapshots: jest-util: 29.7.0 natural-compare: 1.4.0 pretty-format: 29.7.0 - semver: 7.6.3 + semver: 7.7.2 transitivePeerDependencies: - supports-color @@ -22671,7 +22414,7 @@ snapshots: node-abi@3.45.0: dependencies: - semver: 7.6.3 + semver: 7.7.2 node-abi@3.52.0: dependencies: @@ -23243,21 +22986,21 @@ snapshots: style-value-types: 5.0.0 tslib: 2.8.1 - porto@0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8): + porto@0.0.76(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8))(zod@3.23.8): dependencies: '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) effect: 3.16.16 idb-keyval: 6.2.1 mipd: 0.0.7(typescript@5.4.2) open: 10.2.0 - ox: 0.8.4(typescript@5.4.2)(zod@3.23.8) + ox: 0.8.7(typescript@5.4.2)(zod@3.23.8) viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) zustand: 5.0.6(@types/react@18.2.22)(react@19.1.0)(use-sync-external-store@1.4.0(react@19.1.0)) optionalDependencies: '@tanstack/react-query': 5.83.0(react@19.1.0) react: 19.1.0 typescript: 5.4.2 - wagmi: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + wagmi: 2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) transitivePeerDependencies: - '@types/react' - immer @@ -24802,7 +24545,7 @@ snapshots: json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.6.3 + semver: 7.7.2 typescript: 5.4.2 yargs-parser: 21.1.1 optionalDependencies: @@ -24820,7 +24563,7 @@ snapshots: json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.6.3 + semver: 7.7.2 typescript: 5.4.2 yargs-parser: 21.1.1 optionalDependencies: @@ -25361,10 +25104,10 @@ snapshots: dependencies: xml-name-validator: 4.0.0 - wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8): + wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.52.0(react@18.2.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8): dependencies: '@tanstack/react-query': 5.52.0(react@18.2.0) - '@wagmi/connectors': 5.9.5(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + '@wagmi/connectors': 5.9.5(@types/react@18.2.22)(@upstash/redis@1.34.9)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) react: 18.2.0 use-sync-external-store: 1.4.0(react@18.2.0) @@ -25429,44 +25172,10 @@ snapshots: - utf-8-validate - zod - wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.56.2(react@18.2.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8): - dependencies: - '@tanstack/react-query': 5.56.2(react@18.2.0) - '@wagmi/connectors': 5.9.5(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) - '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@18.2.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@18.2.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) - react: 18.2.0 - use-sync-external-store: 1.4.0(react@18.2.0) - viem: 2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8) - optionalDependencies: - typescript: 5.4.2 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@tanstack/query-core' - - '@types/react' - - '@upstash/redis' - - '@vercel/kv' - - bufferutil - - encoding - - immer - - ioredis - - supports-color - - uWebSockets.js - - utf-8-validate - - zod - - wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8): + wagmi@2.16.5(@tanstack/query-core@5.83.0)(@tanstack/react-query@5.83.0(react@19.1.0))(@types/react@18.2.22)(@upstash/redis@1.34.9)(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8): dependencies: '@tanstack/react-query': 5.83.0(react@19.1.0) - '@wagmi/connectors': 5.9.5(@types/react@18.2.22)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) + '@wagmi/connectors': 5.9.5(@types/react@18.2.22)(@upstash/redis@1.34.9)(@wagmi/core@2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)))(bufferutil@4.0.8)(encoding@0.1.13)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(utf-8-validate@5.0.10)(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8))(zod@3.23.8) '@wagmi/core': 2.20.0(@tanstack/query-core@5.83.0)(@types/react@18.2.22)(react@19.1.0)(typescript@5.4.2)(use-sync-external-store@1.4.0(react@19.1.0))(viem@2.35.1(bufferutil@4.0.8)(typescript@5.4.2)(utf-8-validate@5.0.10)(zod@3.23.8)) react: 19.1.0 use-sync-external-store: 1.4.0(react@19.1.0)