diff --git a/apps/maestro/package.json b/apps/maestro/package.json index 8dd932cbd..c0ef22027 100644 --- a/apps/maestro/package.json +++ b/apps/maestro/package.json @@ -34,6 +34,7 @@ "release": "tsx scripts/release.ts" }, "dependencies": { + "@axelar-network/axelar-cgp-sui": "0.0.0-snapshot.424bc13", "@axelar-network/axelarjs-sdk": "0.17.1-alpha.12", "@axelarjs/api": "workspace:*", "@axelarjs/core": "workspace:*", @@ -41,6 +42,9 @@ "@axelarjs/ui": "workspace:*", "@axelarjs/utils": "workspace:*", "@hookform/resolvers": "^3.3.4", + "@mysten/bcs": "^1.1.0", + "@mysten/dapp-kit": "^0.14.43", + "@mysten/sui": "^1.11.0", "@sentry/nextjs": "^7.108.0", "@tanstack/react-query": "^5.28.6", "@trpc/client": "11.0.0-next.320", @@ -51,6 +55,7 @@ "@vercel/postgres": "^0.7.2", "@web3modal/wagmi": "^4.1.1", "drizzle-orm": "^0.29.5", + "hardhat": "^2.22.13", "lucide-react": "^0.265.0", "next": "^14.1.4", "nextjs-cors": "^2.2.0", diff --git a/apps/maestro/public/logos/chains/sui.svg b/apps/maestro/public/logos/chains/sui.svg new file mode 100644 index 000000000..c8c83c427 --- /dev/null +++ b/apps/maestro/public/logos/chains/sui.svg @@ -0,0 +1,3 @@ + + + diff --git a/apps/maestro/src/config/env.ts b/apps/maestro/src/config/env.ts index 98a4300bd..21b3e03d4 100644 --- a/apps/maestro/src/config/env.ts +++ b/apps/maestro/src/config/env.ts @@ -15,7 +15,7 @@ export const NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID = Maybe.of( export const NEXT_PUBLIC_NETWORK_ENV = String( process.env.NEXT_PUBLIC_NETWORK_ENV ?? "testnet" -) as "mainnet" | "testnet"; +) as "mainnet" | "testnet" | "devnet-amplifier"; export const NEXT_PUBLIC_AXELAR_CONFIGS_URL = Maybe.of( process.env.NEXT_PUBLIC_AXELAR_CONFIGS_URL diff --git a/apps/maestro/src/config/evm-chains.ts b/apps/maestro/src/config/evm-chains.ts index e082aa99b..33d5aa201 100644 --- a/apps/maestro/src/config/evm-chains.ts +++ b/apps/maestro/src/config/evm-chains.ts @@ -51,11 +51,12 @@ import { NEXT_PUBLIC_NETWORK_ENV } from "./env"; export interface ExtendedWagmiChainConfig extends Chain { axelarChainId: string; axelarChainName: string; - environment: "mainnet" | "testnet"; + environment: "mainnet" | "testnet" | "devnet-amplifier"; } const ENVIRONMENTS = { mainnet: "mainnet", + devnet: "devnet-amplifier", testnet: "testnet", } as const; @@ -78,11 +79,70 @@ export const ALL_CHAINS: ExtendedWagmiChainConfig[] = [ axelarChainName: "ethereum", environment: ENVIRONMENTS.mainnet, }, + // TODO: correct this + { + id: 101, + axelarChainId: "sui", + axelarChainName: "sui", + environment: ENVIRONMENTS.mainnet, + name: "Sui", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { http: ["https://sui-rpc.publicnode.com"] }, + public: { http: ["https://sui-rpc.publicnode.com"] }, + }, + blockExplorers: { + default: { name: "Sui Explorer", url: "https://suiexplorer.com/" }, + }, + }, + { + id: 103, + axelarChainId: "sui", + axelarChainName: "sui", + environment: ENVIRONMENTS.devnet, + name: "Sui Testnet", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { http: ["https://fullnode.testnet.sui.io:443"] }, + public: { http: ["https://fullnode.testnet.sui.io:443"] }, + }, + blockExplorers: { + default: { name: "Sui Explorer", url: "https://suiscan.xyz/testnet" }, + }, + }, + //TODO: check if this is ok + { + id: 103, + axelarChainId: "sui", + axelarChainName: "sui", + environment: ENVIRONMENTS.testnet, + name: "Sui Testnet", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { http: ["https://fullnode.testnet.sui.io:443"] }, + public: { http: ["https://fullnode.testnet.sui.io:443"] }, + }, + blockExplorers: { + default: { name: "Sui Explorer", url: "https://suiscan.xyz/testnet" }, + }, + }, { ...sepolia, rpcUrls: { - default: { http: ["https://endpoints.omniatech.io/v1/eth/sepolia/public", "https://1rpc.io/sepolia"] }, // Temporarily using this url - public: { http: ["https://endpoints.omniatech.io/v1/eth/sepolia/public", "https://1rpc.io/sepolia"] }, + default: { http: ["https://rpc-sepolia.rockx.com"] }, + public: { http: ["https://rpc-sepolia.rockx.com"] }, }, axelarChainId: "ethereum-sepolia", axelarChainName: "ethereum-sepolia", @@ -366,6 +426,30 @@ export const ALL_CHAINS: ExtendedWagmiChainConfig[] = [ axelarChainName: "blast-sepolia", environment: ENVIRONMENTS.testnet, }, + { + ...blastSepolia, + axelarChainId: "blast-sepolia", + axelarChainName: "blast-sepolia", + environment: ENVIRONMENTS.testnet, + }, + { + ...avalancheFuji, + axelarChainId: "avalanche-fuji", + axelarChainName: "avalanche-fuji", + environment: ENVIRONMENTS.devnet, + }, + { + ...optimismSepolia, + axelarChainId: "optimism-sepolia", + axelarChainName: "optimism-sepolia", + environment: ENVIRONMENTS.devnet, + }, + { + ...sepolia, + axelarChainId: "eth-sepolia", + axelarChainName: "eth-sepolia", + environment: ENVIRONMENTS.devnet, + }, ] as const; export const WAGMI_CHAIN_CONFIGS = ALL_CHAINS.filter( diff --git a/apps/maestro/src/config/next-auth.ts b/apps/maestro/src/config/next-auth.ts index 2a882c7bb..4f6dcd888 100644 --- a/apps/maestro/src/config/next-auth.ts +++ b/apps/maestro/src/config/next-auth.ts @@ -2,8 +2,9 @@ import { Maybe } from "@axelarjs/utils"; import type { NextAuthOptions } from "next-auth"; import CredentialsProvider from "next-auth/providers/credentials"; +import { verifyPersonalMessageSignature } from "@mysten/sui/verify"; import { kv } from "@vercel/kv"; -import { getAddress, verifyMessage } from "viem"; +import { verifyMessage } from "viem"; import db from "~/lib/drizzle/client"; import { getSignInMessage } from "~/server/routers/auth/createSignInMessage"; @@ -43,15 +44,14 @@ export const NEXT_AUTH_OPTIONS: NextAuthOptions = { async authorize(credentials, req) { if ( !credentials?.address || - !getAddress(credentials?.address) || + // !getAddress(credentials?.address) || !credentials?.signature ) { return null; } - - const address = getAddress(credentials.address); + //TODO: revert + const address = credentials.address as `0x${string}`; const signature = credentials.signature as `0x${string}`; - const [accountNonce, accountStatus] = await Promise.all([ kvClient.getAccountNonce(address), kvClient.getAccountStatus(address), @@ -79,21 +79,30 @@ export const NEXT_AUTH_OPTIONS: NextAuthOptions = { } return null; } - + let isMessageSigned; const message = getSignInMessage(accountNonce ?? 0); - - const isMessageSigned = await verifyMessage({ - message, - signature, - address, - }); + // is SUI address + if (address.length === 66) { + const suiPublicKey = await verifyPersonalMessageSignature( + new TextEncoder().encode(message), + signature + ); + isMessageSigned = suiPublicKey.toSuiAddress() === address; + } + // is EVM address + else if (address.length === 42) { + isMessageSigned = await verifyMessage({ + message, + signature, + address, + }); + } if (!isMessageSigned) { return null; } // increment nonce - await kvClient.incrementAccountNonce(address); return { @@ -110,7 +119,7 @@ export const NEXT_AUTH_OPTIONS: NextAuthOptions = { }, callbacks: { async session({ session, token }) { - const address = getAddress(token.sub ?? ""); + const address = token.sub as `0x${string}`; session.address = address; session.accountStatus = await kvClient diff --git a/apps/maestro/src/features/CanonicalTokenDeployment/CanonicalTokenDeployment.state.ts b/apps/maestro/src/features/CanonicalTokenDeployment/CanonicalTokenDeployment.state.ts index 0d5f5eca7..962c24e3d 100644 --- a/apps/maestro/src/features/CanonicalTokenDeployment/CanonicalTokenDeployment.state.ts +++ b/apps/maestro/src/features/CanonicalTokenDeployment/CanonicalTokenDeployment.state.ts @@ -14,12 +14,12 @@ export type DeployAndRegisterTransactionState = } | { type: "deploying"; - txHash: `0x${string}`; + txHash: string; } | { type: "deployed"; - txHash: `0x${string}`; - tokenAddress: `0x${string}`; + txHash: string; + tokenAddress: string; }; export const INITIAL_STATE = { @@ -28,11 +28,11 @@ export const INITIAL_STATE = { tokenName: "", tokenSymbol: "", tokenDecimals: 18, - tokenAddress: "0x" as `0x${string}`, + tokenAddress: "0x", }, txState: { type: "idle" } as DeployAndRegisterTransactionState, selectedChains: [] as string[], - onDeployTxHash: (txHash: `0x${string}`) => { + onDeployTxHash: (txHash: string) => { logger.log("onDeployTxHash", txHash); }, }; diff --git a/apps/maestro/src/features/CanonicalTokenDeployment/hooks/useDeployAndRegisterRemoteCanonicalTokenMutation.ts b/apps/maestro/src/features/CanonicalTokenDeployment/hooks/useDeployAndRegisterRemoteCanonicalTokenMutation.ts index d4a73996c..7f411f975 100644 --- a/apps/maestro/src/features/CanonicalTokenDeployment/hooks/useDeployAndRegisterRemoteCanonicalTokenMutation.ts +++ b/apps/maestro/src/features/CanonicalTokenDeployment/hooks/useDeployAndRegisterRemoteCanonicalTokenMutation.ts @@ -4,7 +4,7 @@ import { useCallback, useEffect, useMemo, useState } from "react"; import { reduce } from "rambda"; import type { TransactionReceipt } from "viem"; -import { useAccount, useChainId, useWaitForTransactionReceipt } from "wagmi"; +import { useWaitForTransactionReceipt } from "wagmi"; import { useReadInterchainTokenFactoryCanonicalInterchainTokenId, @@ -15,6 +15,7 @@ import { decodeDeploymentMessageId, type DeploymentMessageId, } from "~/lib/drizzle/schema"; +import { useAccount, useChainId } from "~/lib/hooks"; import { trpc } from "~/lib/trpc"; import { isValidEVMAddress } from "~/lib/utils/validation"; import { RecordInterchainTokenDeploymentInput } from "~/server/routers/interchainToken/recordInterchainTokenDeployment"; @@ -25,7 +26,7 @@ export interface UseDeployAndRegisterCanonicalTokenInput { sourceChainId: string; tokenName: string; tokenSymbol: string; - tokenAddress: `0x${string}`; + tokenAddress: string; decimals: number; destinationChainIds: string[]; remoteDeploymentGasFees: bigint[]; @@ -92,7 +93,7 @@ export function useDeployAndRegisterRemoteCanonicalTokenMutation( const deployTxData = INTERCHAIN_TOKEN_FACTORY_ENCODERS.registerCanonicalInterchainToken.data({ - tokenAddress: input.tokenAddress, + tokenAddress: input.tokenAddress as `0x${string}`, }); if (!input.destinationChainIds.length) { @@ -105,7 +106,7 @@ export function useDeployAndRegisterRemoteCanonicalTokenMutation( const args = { originalChain: originalChainName, - originalTokenAddress: input.tokenAddress, + originalTokenAddress: input.tokenAddress as `0x${string}`, destinationChain, gasValue, }; @@ -165,6 +166,7 @@ export function useDeployAndRegisterRemoteCanonicalTokenMutation( tokenSymbol: input.tokenSymbol, tokenDecimals: input.decimals, axelarChainId: input.sourceChainId, + tokenManagerAddress: "", destinationAxelarChainIds: input.destinationChainIds, }); }, @@ -194,7 +196,7 @@ export function useDeployAndRegisterRemoteCanonicalTokenMutation( onStatusUpdate({ type: "deployed", tokenAddress: recordDeploymentArgs.tokenAddress as `0x${string}`, - txHash: tx.hash, + txHash: tx.hash as `0x${string}`, }); }) .catch((e) => { @@ -225,6 +227,7 @@ export function useDeployAndRegisterRemoteCanonicalTokenMutation( tokenDecimals: input.decimals, axelarChainId: input.sourceChainId, tokenAddress: input.tokenAddress, + tokenManagerAddress: "", destinationAxelarChainIds: input.destinationChainIds, deploymentMessageId: "", }); diff --git a/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts b/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts index 0524726c8..37d87386f 100644 --- a/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts +++ b/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts @@ -1,13 +1,15 @@ import type { EVMChainConfig, VMChainConfig } from "@axelarjs/api/axelarscan"; +import { Maybe } from "@axelarjs/utils"; import { useEffect, useState } from "react"; import { formatEther } from "viem"; -import { useChainId } from "wagmi"; import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_GAS_LIMIT, } from "~/config/env"; +import { useBalance, useChainId } from "~/lib/hooks"; +import { toNumericString } from "~/lib/utils/bigint"; import { useEstimateGasFeeMultipleChainsQuery } from "~/services/axelarjsSDK/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useCanonicalTokenDeploymentStateContainer } from "../../CanonicalTokenDeployment.state"; @@ -19,11 +21,14 @@ export type UseStep3ChainSelectionStateProps = { export function useStep3ChainSelectionState() { const { allChains } = useAllChainConfigsQuery(); const chainId = useChainId(); + const userBalance = useBalance(); const [isDeploying, setIsDeploying] = useState(false); const [totalGasFee, $setTotalGasFee] = useState(formatEther(0n)); - + // Find source chain from both EVM and VM chains - const currentChain = allChains?.find((chain: EVMChainConfig | VMChainConfig) => chain.chain_id === chainId); + const currentChain = allChains?.find( + (chain: EVMChainConfig | VMChainConfig) => chain.chain_id === chainId + ); const [sourceChainId, setSourceChainId] = useState( currentChain?.id || "" @@ -43,23 +48,17 @@ export function useStep3ChainSelectionState() { gasMultiplier: "auto", }); - useEffect( - () => - remoteDeploymentGasFees && - setTotalGasFee(remoteDeploymentGasFees.totalGasFee), - [remoteDeploymentGasFees] - ); + useEffect(() => { + Maybe.of(remoteDeploymentGasFees?.totalGasFee) + .map((value) => toNumericString(value, userBalance?.decimals || 18)) + .map($setTotalGasFee); + }, [remoteDeploymentGasFees, $setTotalGasFee, userBalance?.decimals]); const resetState = () => { setIsDeploying(false); $setTotalGasFee(formatEther(0n)); }; - const setTotalGasFee = (total: bigint) => { - const num = Number(formatEther(total)); - $setTotalGasFee(num.toFixed(4)); - }; - useEffect(() => { if (!currentChain || currentChain.chain_name === sourceChainId) return; @@ -79,7 +78,7 @@ export function useStep3ChainSelectionState() { actions: { resetState, setIsDeploying, - setTotalGasFee, + $setTotalGasFee, setSourceChainId, }, }; diff --git a/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx b/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx index 2ce3b318f..86f479ace 100644 --- a/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx +++ b/apps/maestro/src/features/CanonicalTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx @@ -11,11 +11,11 @@ import React, { } from "react"; import { parseUnits } from "viem"; -import { useAccount, useBalance, useChainId } from "wagmi"; import { useCanonicalTokenDeploymentStateContainer } from "~/features/CanonicalTokenDeployment/CanonicalTokenDeployment.state"; import { useDeployAndRegisterRemoteCanonicalTokenMutation } from "~/features/CanonicalTokenDeployment/hooks"; import { useTransactionsContainer } from "~/features/Transactions"; +import { useBalance, useChainId } from "~/lib/hooks"; import { handleTransactionResult } from "~/lib/transactions/handlers"; import { getNativeToken } from "~/lib/utils/getNativeToken"; import ChainPicker from "~/ui/compounds/ChainPicker"; @@ -31,9 +31,11 @@ export const Step3: FC = () => { const chainId = useChainId(); // Support both EVM and VM chains - const sourceChain = state.allChains?.find((chain) => chain.chain_id === chainId); + const sourceChain = state.allChains?.find( + (chain) => chain.chain_id === chainId + ); - const [validDestinationChainIds, erroredDestinationChainIds] = useMemo( + const [validDestinationChainIds, erroredDestinationChainIds] = useMemo( () => (state.remoteDeploymentGasFees?.gasFees ?? []).reduce( ([succeeded, errored], x): [string[], string[]] => @@ -136,15 +138,15 @@ export const Step3: FC = () => { addTransaction, ] ); - const eligibleChains = state.allChains.filter(chain => chain.chain_id !== chainId); + const eligibleChains = state.allChains.filter( + (chain) => chain.chain_id !== chainId + ); const formSubmitRef = useRef>(null); - const { address } = useAccount(); - - const { data: balance } = useBalance({ address }); + const balance = useBalance(); const nativeTokenSymbol = useMemo(() => { - if (sourceChain?.chain_type === 'vm') { + if (sourceChain?.chain_type === "vm") { return sourceChain.native_token.symbol; } return getNativeToken(state.sourceChainId); diff --git a/apps/maestro/src/features/CanonicalTokenDeployment/steps/review/Review.tsx b/apps/maestro/src/features/CanonicalTokenDeployment/steps/review/Review.tsx index 49d91d610..187df826c 100644 --- a/apps/maestro/src/features/CanonicalTokenDeployment/steps/review/Review.tsx +++ b/apps/maestro/src/features/CanonicalTokenDeployment/steps/review/Review.tsx @@ -7,11 +7,10 @@ import { LinkButton, } from "@axelarjs/ui"; import { maskAddress } from "@axelarjs/utils"; -import { useCallback, useEffect, useState, useMemo, type FC } from "react"; +import { useCallback, useEffect, useMemo, useState, type FC } from "react"; import { useRouter } from "next/router"; -import { useAccount } from "wagmi"; -import { useChainFromRoute } from "~/lib/hooks"; +import { useAccount, useChainFromRoute } from "~/lib/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useInterchainTokensQuery } from "~/services/gmp/hooks"; import GMPTxStatusMonitor from "~/ui/compounds/GMPTxStatusMonitor"; @@ -46,11 +45,17 @@ const Review: FC = () => { chain.id, state.txState.txHash, state.selectedChains.map( - (axelarChainId) => combinedComputed.indexedById[axelarChainId].chain_id + (axelarChainId) => + combinedComputed.indexedById[axelarChainId].chain_id ) ); } - }, [chain, combinedComputed.indexedById, state.selectedChains, state.txState]); + }, [ + chain, + combinedComputed.indexedById, + state.selectedChains, + state.txState, + ]); const chainConfig = useMemo(() => { if (!chain) return undefined; @@ -66,7 +71,7 @@ const Review: FC = () => { } }, [actions, chainConfig, router, state.txState]); - const isVMChain = chainConfig?.chain_type === 'vm'; + const isVMChain = chainConfig?.chain_type === "vm"; return ( <> @@ -106,7 +111,8 @@ const Review: FC = () => { {state.selectedChains.length > 0 ? ( ) : ( - !isVMChain && chain?.blockExplorers?.default && ( + !isVMChain && + chain?.blockExplorers?.default && ( { setState((draft) => { - draft.tokenDetails.minter = "" as `0x${string}`; - tokenDetailsForm.setValue("minter", "" as `0x${string}`); + draft.tokenDetails.minter = "" as string; + tokenDetailsForm.setValue("minter", "" as string); }); }, }, diff --git a/apps/maestro/src/features/InterchainTokenDeployment/hooks/useDeployAndRegisterRemoteInterchainTokenMutation.ts b/apps/maestro/src/features/InterchainTokenDeployment/hooks/useDeployAndRegisterRemoteInterchainTokenMutation.ts index 3a8b418f6..073925cfb 100644 --- a/apps/maestro/src/features/InterchainTokenDeployment/hooks/useDeployAndRegisterRemoteInterchainTokenMutation.ts +++ b/apps/maestro/src/features/InterchainTokenDeployment/hooks/useDeployAndRegisterRemoteInterchainTokenMutation.ts @@ -6,8 +6,10 @@ import { invariant, throttle } from "@axelarjs/utils"; import { useCallback, useEffect, useMemo, useState } from "react"; import { zeroAddress, type TransactionReceipt } from "viem"; -import { useAccount, useChainId, useWaitForTransactionReceipt } from "wagmi"; +import { useWaitForTransactionReceipt } from "wagmi"; +import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; +import useDeployToken from "~/features/suiHooks/useDeployToken"; import { useReadInterchainTokenFactoryInterchainTokenId, useSimulateInterchainTokenFactoryMulticall, @@ -18,6 +20,7 @@ import { decodeDeploymentMessageId, type DeploymentMessageId, } from "~/lib/drizzle/schema"; +import { useAccount, useChainId } from "~/lib/hooks"; import { trpc } from "~/lib/trpc"; import { isValidEVMAddress } from "~/lib/utils/validation"; import type { EstimateGasFeeMultipleChainsOutput } from "~/server/routers/axelarjsSDK"; @@ -34,7 +37,7 @@ export interface UseDeployAndRegisterInterchainTokenInput { remoteDeploymentGasFees?: EstimateGasFeeMultipleChainsOutput; initialSupply?: bigint; salt: `0x${string}`; - minterAddress?: `0x${string}`; + minterAddress?: string; } export interface UseDeployAndRegisterRemoteInterchainTokenConfig { @@ -48,9 +51,238 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( ) { const { address: deployerAddress } = useAccount(); const chainId = useChainId(); - + const { deployToken } = useDeployToken(); const { combinedComputed } = useAllChainConfigsQuery(); + // TODO: remove when axelarscan's api is ready + const updatedComputed = { + ...combinedComputed, + indexedByChainId: { + ...combinedComputed.indexedByChainId, + ...(NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? { + id: "sui", + chain_id: 101, + axelarChainId: "sui", + axelarChainName: "sui", + chain_name: "sui", + maintainer_id: "sui", + name: "Sui", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + endpoints: { + rpc: ["https://sui-rpc.publicnode.com"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiexplorer.com", + icon: "/logos/explorers/sui.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x65", // Hexadecimal representation of 101 + chainName: "Sui Mainnet", + rpcUrls: ["https://sui-rpc.publicnode.com"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiexplorer.com"], + }, + ], + } + : { + id: "sui", + chain_id: 103, + axelarChainId: "sui", + axelarChainName: "sui", + chain_name: "sui", + maintainer_id: "sui", + name: "Sui Testnet", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + endpoints: { + rpc: ["https://fullnode.testnet.sui.io:443"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiscan.xyz/testnet", + icon: "/logos/explorers/sui.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x67", // Hexadecimal representation of 103 + chainName: "Sui Testnet", + rpcUrls: ["https://fullnode.testnet.sui.io:443"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiscan.xyz/testnet"], + }, + ], + }), + }, + indexedById: { + ...combinedComputed.indexedById, + sui: + NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? { + id: "sui", + axelarChainId: "sui", + axelarChainName: "sui", + chain_id: 101, + chain_name: "sui", + maintainer_id: "sui", + name: "Sui", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + endpoints: { + rpc: ["https://sui-rpc.publicnode.com"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiexplorer.com", + icon: "/logos/explorers/sui.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x65", // Hexadecimal representation of 101 + chainName: "Sui Mainnet", + rpcUrls: ["https://sui-rpc.publicnode.com"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiexplorer.com"], + }, + ], + } + : { + id: "sui", + axelarChainId: "sui", + axelarChainName: "sui", + chain_id: 103, + chain_name: "sui", + maintainer_id: "sui", + name: "Sui Testnet", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + endpoints: { + rpc: ["https://fullnode.testnet.sui.io:443"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiscan.xyz/testnet", + icon: "/logos/explorers/sui.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x67", // Hexadecimal representation of 103 + chainName: "Sui Testnet", + rpcUrls: ["https://fullnode.testnet.sui.io:443"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiscan.xyz/testnet"], + }, + ], + }, + }, + wagmiChains: [ + ...combinedComputed.wagmiChains, + { + id: NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? 101 : 103, + name: NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? "Sui" : "Sui Testnet", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { + http: [ + NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? "https://sui-rpc.publicnode.com" + : "https://fullnode.testnet.sui.io:443", + ], + }, + public: { + http: [ + NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? "https://sui-rpc.publicnode.com" + : "https://fullnode.testnet.sui.io:443", + ], + }, + }, + blockExplorers: { + default: { + name: "Sui Explorer", + url: + NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? "https://suiexplorer.com" + : "https://suiscan.xyz/testnet", + }, + }, + contracts: { + // Add Sui-specific contracts here if applicable + }, + axelarChainId: "sui", + axelarChainName: "sui", + environment: NEXT_PUBLIC_NETWORK_ENV, + }, + ], + } as const; + const { mutateAsync: recordDeploymentAsync } = trpc.interchainToken.recordInterchainTokenDeployment.useMutation(); @@ -62,7 +294,7 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( const { data: tokenId } = useReadInterchainTokenFactoryInterchainTokenId({ args: INTERCHAIN_TOKEN_FACTORY_ENCODERS.interchainTokenId.args({ salt: input?.salt as `0x${string}`, - deployer: deployerAddress as `0x${string}`, + deployer: deployerAddress, }), query: { enabled: @@ -81,24 +313,35 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( }); const { destinationChainNames } = useMemo(() => { - const index = combinedComputed.indexedById; + const index = updatedComputed.indexedById; + type IndexedChainId = keyof typeof index; + const originalChain = + index[(input?.sourceChainId ?? chainId) as IndexedChainId]; + const originalChainName = originalChain?.chain_name ?? "Unknown"; return { + originalChainName, destinationChainNames: input?.destinationChainIds.map( (destinationChainId) => - index[destinationChainId]?.chain_name ?? "Unknown" + index[destinationChainId as IndexedChainId]?.chain_name ?? "Unknown" ) ?? [], }; - }, [combinedComputed.indexedById, input?.destinationChainIds]); + }, [ + chainId, + input?.destinationChainIds, + input?.sourceChainId, + updatedComputed.indexedById, + ]); const multicallArgs = useMemo(() => { if (!input || !tokenId) { return []; } + const minter = input?.minterAddress ?? zeroAddress; const commonArgs = { - minter: input?.minterAddress ?? zeroAddress, + minter: minter as `0x${string}`, salt: input.salt, }; @@ -129,12 +372,10 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( }, [input, tokenId, destinationChainNames]); const totalGasFee = input?.remoteDeploymentGasFees?.totalGasFee ?? 0n; - const isMutationReady = multicallArgs.length > 0 && // enable if there are no remote chains or if there are remote chains and the total gas fee is greater than 0 (!destinationChainNames.length || totalGasFee > 0n); - const { data: prepareMulticall } = useSimulateInterchainTokenFactoryMulticall( { chainId, @@ -145,7 +386,6 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( }, } ); - const multicall = useWriteInterchainTokenFactoryMulticall(); const { data: receipt } = useWaitForTransactionReceipt({ @@ -174,7 +414,7 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( setRecordDeploymentArgs({ kind: "interchain", deploymentMessageId: `${txHash}-${txIndex}`, - tokenId, + tokenId: tokenId as string, tokenAddress, deployerAddress, salt: input.salt, @@ -184,6 +424,7 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( axelarChainId: input.sourceChainId, originalMinterAddress: input.minterAddress, destinationAxelarChainIds: input.destinationChainIds, + tokenManagerAddress: "", }); }, [deployerAddress, input, tokenAddress, tokenId] @@ -235,7 +476,7 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( return await recordDeploymentAsync({ kind: "interchain", - tokenId, + tokenId: tokenId as string, deployerAddress, tokenAddress, tokenName: input.tokenName, @@ -246,19 +487,59 @@ export function useDeployAndRegisterRemoteInterchainTokenMutation( originalMinterAddress: input.minterAddress, destinationAxelarChainIds: input.destinationChainIds, deploymentMessageId: "", + tokenManagerAddress: "", }); }, [deployerAddress, input, recordDeploymentAsync, tokenAddress, tokenId]); const writeAsync = useCallback(async () => { - invariant( - prepareMulticall?.request !== undefined, - "useDeployAndRegisterRemoteInterchainTokenMutation: prepareMulticall?.request is not defined" - ); + const SUI_CHAIN_ID = NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? 101 : 103; await recordDeploymentDraft(); + if (chainId === SUI_CHAIN_ID && input) { + const result = await deployToken({ + initialSupply: input.initialSupply as bigint, + symbol: input.tokenSymbol, + name: input.tokenName, + decimals: input.decimals, + destinationChainIds: input.destinationChainIds, + }); + if (result?.digest && result.deploymentMessageId) { + const token: any = result?.events?.[0]?.parsedJson; + setRecordDeploymentArgs({ + kind: "interchain", + deploymentMessageId: result.deploymentMessageId, + tokenId: token.token_id?.id, + tokenAddress: result.tokenAddress, + tokenManagerAddress: result.tokenManagerAddress, + deployerAddress, + salt: input.salt, + tokenName: input.tokenName, + tokenSymbol: input.tokenSymbol, + tokenDecimals: input.decimals, + axelarChainId: input.sourceChainId, + originalMinterAddress: input.minterAddress, + destinationAxelarChainIds: input.destinationChainIds, + }); + + return result; + } + } else { + invariant( + prepareMulticall?.request !== undefined, + "useDeployAndRegisterRemoteInterchainTokenMutation: prepareMulticall?.request is not defined" + ); - return await multicall.writeContractAsync(prepareMulticall.request); - }, [multicall, prepareMulticall?.request, recordDeploymentDraft]); + return await multicall.writeContractAsync(prepareMulticall.request); + } + }, [ + chainId, + deployToken, + deployerAddress, + input, + multicall, + prepareMulticall?.request, + recordDeploymentDraft, + ]); const write = useCallback(() => { invariant( diff --git a/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts b/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts index fc8ab2ddc..567bdc3d2 100644 --- a/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts +++ b/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.state.ts @@ -3,12 +3,12 @@ import { Maybe } from "@axelarjs/utils"; import { useEffect, useState } from "react"; import { formatEther } from "viem"; -import { useChainId } from "wagmi"; import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_GAS_LIMIT, } from "~/config/env"; +import { useBalance, useChainId } from "~/lib/hooks"; import { toNumericString } from "~/lib/utils/bigint"; import { useEstimateGasFeeMultipleChainsQuery } from "~/services/axelarjsSDK/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; @@ -23,11 +23,14 @@ export type UseStep2ChainSelectionStateProps = { export function useStep2ChainSelectionState() { const { allChains } = useAllChainConfigsQuery(); const chainId = useChainId(); + const userBalance = useBalance(); const [isDeploying, setIsDeploying] = useState(false); const [totalGasFee, setTotalGasFee] = useState(formatEther(0n)); const [sourceChainId, setSourceChainId] = useState(() => { - const chain = allChains?.find((chain: ChainConfig) => chain.chain_id === chainId); + const chain = allChains?.find( + (chain: ChainConfig) => chain.chain_id === chainId + ); return chain?.id || ""; }); @@ -47,9 +50,9 @@ export function useStep2ChainSelectionState() { useEffect(() => { Maybe.of(remoteDeploymentGasFees?.totalGasFee) - .map(toNumericString) + .map((value) => toNumericString(value, userBalance?.decimals || 18)) .map(setTotalGasFee); - }, [remoteDeploymentGasFees, setTotalGasFee]); + }, [remoteDeploymentGasFees, setTotalGasFee, userBalance?.decimals]); const resetState = () => { setIsDeploying(false); diff --git a/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx b/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx index 117bf3c82..8a588e139 100644 --- a/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx +++ b/apps/maestro/src/features/InterchainTokenDeployment/steps/deploy-and-register/DeployAndRegister.tsx @@ -11,9 +11,12 @@ import React, { } from "react"; import { parseUnits } from "viem"; -import { useAccount, useBalance, useChainId } from "wagmi"; +import { WriteContractData } from "wagmi/query"; +import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; +import { DeployTokenResult } from "~/features/suiHooks/useDeployToken"; import { useTransactionsContainer } from "~/features/Transactions"; +import { useBalance, useChainId } from "~/lib/hooks"; import { handleTransactionResult } from "~/lib/transactions/handlers"; import { getNativeToken } from "~/lib/utils/getNativeToken"; import ChainPicker from "~/ui/compounds/ChainPicker"; @@ -102,7 +105,37 @@ export const Step2: FC = () => { const txPromise = deployInterchainTokenAsync(); - await handleTransactionResult(txPromise, { + // Sui will return a digest equivalent to the txHash + const SUI_CHAIN_ID = NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? 101 : 103; + if (sourceChain.chain_id === SUI_CHAIN_ID) { + const result = (await txPromise) as DeployTokenResult; + // if tx is successful, we will get a digest + if (result) { + rootActions.setTxState({ + type: "deployed", + suiTx: result, + txHash: result.digest, + tokenAddress: result.tokenAddress, + // chainId: sourceChain.chain_id, + }); + if (rootState.selectedChains.length > 0) { + addTransaction({ + status: "submitted", + suiTx: result, + hash: result.digest, + chainId: sourceChain.chain_id, + txType: "INTERCHAIN_DEPLOYMENT", + }); + } + return; + } else { + rootActions.setTxState({ + type: "idle", + }); + } + } + + await handleTransactionResult(txPromise as Promise, { onSuccess(txHash) { rootActions.setTxState({ type: "deploying", @@ -128,7 +161,7 @@ export const Step2: FC = () => { }); }, [ - rootState.selectedChains.length, + rootState, state.totalGasFee, state.isEstimatingGasFees, state.hasGasFeesEstimationError, @@ -140,15 +173,17 @@ export const Step2: FC = () => { ] ); - const eligibleChains = state.chains.filter(chain => chain.chain_id !== chainId); + const eligibleChains = state.chains.filter( + (chain) => chain.chain_id !== chainId + ); const formSubmitRef = useRef>(null); - const { address } = useAccount(); + const balance = useBalance(); - const { data: balance } = useBalance({ address }); - - const nativeTokenSymbol = getNativeToken(state.sourceChainId); + const nativeTokenSymbol = state.sourceChainId + ? getNativeToken(state.sourceChainId) + : undefined; const hasInsufficientGasBalance = useMemo(() => { if (!balance || !state.remoteDeploymentGasFees) { @@ -209,6 +244,10 @@ export const Step2: FC = () => { nativeTokenSymbol, ]); + if (!sourceChain) { + return; + } + const isCTADisabled = state.isEstimatingGasFees || state.hasGasFeesEstimationError || diff --git a/apps/maestro/src/features/InterchainTokenDeployment/steps/review/Review.tsx b/apps/maestro/src/features/InterchainTokenDeployment/steps/review/Review.tsx index c708ae303..35ca2d8de 100644 --- a/apps/maestro/src/features/InterchainTokenDeployment/steps/review/Review.tsx +++ b/apps/maestro/src/features/InterchainTokenDeployment/steps/review/Review.tsx @@ -6,13 +6,11 @@ import { ExternalLinkIcon, LinkButton, } from "@axelarjs/ui"; -import { maskAddress} from "@axelarjs/utils"; -import { useCallback, useEffect, useState, useMemo, type FC } from "react"; +import { maskAddress } from "@axelarjs/utils"; +import { useCallback, useEffect, useMemo, useState, type FC } from "react"; import { useRouter } from "next/router"; -import { useAccount } from "wagmi"; - -import { useChainFromRoute } from "~/lib/hooks"; +import { useAccount, useChainFromRoute } from "~/lib/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useInterchainTokensQuery } from "~/services/gmp/hooks"; import GMPTxStatusMonitor from "~/ui/compounds/GMPTxStatusMonitor"; @@ -47,11 +45,17 @@ const Review: FC = () => { chain.id, state.txState.txHash, state.selectedChains.map( - (axelarChainId) => combinedComputed.indexedById[axelarChainId].chain_id + (axelarChainId) => + combinedComputed.indexedById[axelarChainId].chain_id ) ); } - }, [chain, combinedComputed.indexedById, state.selectedChains, state.txState]); + }, [ + chain, + combinedComputed.indexedById, + state.selectedChains, + state.txState, + ]); const chainConfig = useMemo(() => { if (!chain) return undefined; @@ -68,7 +72,7 @@ const Review: FC = () => { } }, [actions, chainConfig, router, state.txState]); - const isVMChain = chainConfig?.chain_type === 'vm'; + const isVMChain = chainConfig?.chain_type === "vm"; return ( <> diff --git a/apps/maestro/src/features/InterchainTokenDeployment/steps/token-details/TokenDetails.tsx b/apps/maestro/src/features/InterchainTokenDeployment/steps/token-details/TokenDetails.tsx index 5290ba219..a1dcc815a 100644 --- a/apps/maestro/src/features/InterchainTokenDeployment/steps/token-details/TokenDetails.tsx +++ b/apps/maestro/src/features/InterchainTokenDeployment/steps/token-details/TokenDetails.tsx @@ -17,6 +17,7 @@ import { useInterchainTokenDeploymentStateContainer, type TokenDetailsFormState, } from "~/features/InterchainTokenDeployment"; +import { SUI_CHAIN_ID, useChainId } from "~/lib/hooks"; import { isValidEVMAddress, preventNonHexInput, @@ -29,8 +30,11 @@ import { ValidationError, } from "~/ui/compounds/MultiStepForm"; +const MAX_UINT64 = BigInt(2) ** BigInt(64) - BigInt(1); + const TokenDetails: FC = () => { const { state, actions } = useInterchainTokenDeploymentStateContainer(); + const chainId = useChainId(); const { register, handleSubmit, formState, watch } = state.tokenDetailsForm; @@ -40,6 +44,7 @@ const TokenDetails: FC = () => { const isMintable = watch("isMintable"); const minter = watch("minter"); const supply = watch("initialSupply"); + const tokenDecimals = watch("tokenDecimals"); const minterErrorMessage = useMemo(() => { if (!isMintable) { @@ -72,7 +77,18 @@ const TokenDetails: FC = () => { message: "Fixed supply token requires an initial balance", }; } - }, [isMintable, minter, supply]); + + if ( + chainId === SUI_CHAIN_ID && + supply && + BigInt(supply) * BigInt(10) ** BigInt(tokenDecimals) > MAX_UINT64 + ) { + return { + type: "validate", + message: "Supply must be less than 2^64 - 1 for Sui", + }; + } + }, [isMintable, minter, supply, chainId, tokenDecimals]); const isFormValid = useMemo(() => { if (minterErrorMessage || initialSupplyErrorMessage) { diff --git a/apps/maestro/src/features/InterchainTokenList/RegisteredInterchainTokenCard.tsx b/apps/maestro/src/features/InterchainTokenList/RegisteredInterchainTokenCard.tsx index e4ca2bff3..d89e2a688 100644 --- a/apps/maestro/src/features/InterchainTokenList/RegisteredInterchainTokenCard.tsx +++ b/apps/maestro/src/features/InterchainTokenList/RegisteredInterchainTokenCard.tsx @@ -18,10 +18,10 @@ import Image from "next/image"; import Link from "next/link"; import { TransactionExecutionError } from "viem"; -import { useAccount, useChainId, useSwitchChain } from "wagmi"; import { dexLinks } from "~/config/dex"; import { NEXT_PUBLIC_NETWORK_ENV, shouldDisableSend } from "~/config/env"; +import { useAccount, useChainId, useSwitchChain } from "~/lib/hooks"; import { useInterchainTokenBalanceForOwnerQuery } from "~/services/interchainToken/hooks"; import BigNumberText from "~/ui/components/BigNumberText"; import { ChainIcon } from "~/ui/components/ChainsDropdown"; @@ -56,11 +56,12 @@ export type Props = TokenInfo & { export const RegisteredInterchainTokenCard: FC = (props) => { const { address } = useAccount(); const chainId = useChainId(); - const { data: balance } = useInterchainTokenBalanceForOwnerQuery({ + const result = useInterchainTokenBalanceForOwnerQuery({ chainId: props.chainId, tokenAddress: props.isRegistered ? props.tokenAddress : undefined, owner: address, }); + const balance = result?.data; const { explorerUrl, explorerName } = useMemo(() => { if (!props.tokenAddress || !props.chain) { @@ -77,17 +78,17 @@ export const RegisteredInterchainTokenCard: FC = (props) => { }; }, [props.chain, props.tokenAddress]); - const { switchChainAsync } = useSwitchChain(); + const { switchChain } = useSwitchChain(); - const handleSwitchChain = useCallback(async () => { + const handleSwitchChain = useCallback(() => { try { - await switchChainAsync?.({ chainId: props.chainId }); + switchChain?.({ chainId: props.chainId }); } catch (error) { if (error instanceof TransactionExecutionError) { toast.error(`Failed to switch chain: ${error.cause.shortMessage}`); } } - }, [props.chainId, switchChainAsync]); + }, [props.chainId, switchChain]); const isSourceChain = chainId === props.chainId; @@ -203,7 +204,7 @@ export const RegisteredInterchainTokenCard: FC = (props) => { {balance.isTokenPendingOwner && ( <> = (props) => { <> {balance.isTokenPendingOwner ? ( = (props) => { ); const { data: receipt } = useWaitForTransactionReceipt({ - hash: txState.status === "submitted" ? txState.hash : undefined, + hash: + txState.status === "submitted" + ? (txState.hash as `0x${string}`) + : undefined, }); + const onSuiTxComplete = useCallback(async () => { + if (txState.status !== "submitted") return; + if (!txState.suiTx) return; + + console.log("onSuiTxComplete", txState.hash); + const { digest } = txState.suiTx; + + const remoteTokens = baseRemoteTokens.map((remoteToken) => ({ + ...remoteToken, + deploymentTxHash: digest, + })); + console.log("remoteTokens", remoteTokens); + await recordRemoteTokenDeployment({ + tokenAddress: props.tokenAddress, + chainId: props.originChainId ?? -1, + // TODO: find event Txindex correctly + deploymentMessageId: `${digest}`, + remoteTokens, + }); + console.log("setTxState"); + setTxState({ + status: "confirmed", + hash: digest, + suiTx: txState.suiTx, + }); + }, [ + baseRemoteTokens, + props.originChainId, + props.tokenAddress, + recordRemoteTokenDeployment, + setTxState, + txState, + ]); + + useEffect( + () => { + if (txState.status !== "submitted") return; + + onSuiTxComplete().catch((error) => { + logger.error("Failed to record remote token deployment", error); + toast.error("Failed to record remote token deployment"); + }); + }, // eslint-disable-next-line react-hooks/exhaustive-deps + [txState.status] + ); + useEffect( () => { if (!receipt) return; @@ -99,7 +147,7 @@ export const RegisterRemoteTokens: FC = (props) => { reset: resetCanonical, } = useRegisterRemoteCanonicalTokens({ chainIds: props.chainIds, - deployerAddress: deployerAddress as `0x${string}`, + deployerAddress: deployerAddress, tokenAddress: props.tokenAddress, originChainId: props.originChainId ?? -1, }); diff --git a/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteCanonicalTokens.ts b/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteCanonicalTokens.ts index 01252e7bd..7cdfd6d53 100644 --- a/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteCanonicalTokens.ts +++ b/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteCanonicalTokens.ts @@ -1,8 +1,6 @@ import { INTERCHAIN_TOKEN_FACTORY_ENCODERS } from "@axelarjs/evm"; import { useMemo } from "react"; -import { useChainId } from "wagmi"; - import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_GAS_LIMIT, @@ -11,13 +9,14 @@ import { useSimulateInterchainTokenFactoryMulticall, useWriteInterchainTokenFactoryMulticall, } from "~/lib/contracts/InterchainTokenFactory.hooks"; +import { useChainId } from "~/lib/hooks"; import { useEstimateGasFeeMultipleChainsQuery } from "~/services/axelarjsSDK/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useInterchainTokenDetailsQuery } from "~/services/interchainToken/hooks"; export type RegisterRemoteCanonicalTokensInput = { chainIds: number[]; - tokenAddress: `0x${string}`; + tokenAddress: string; originChainId: number; deployerAddress: `0x${string}`; }; @@ -26,7 +25,7 @@ export default function useRegisterRemoteCanonicalTokens( input: RegisterRemoteCanonicalTokensInput ) { const { combinedComputed } = useAllChainConfigsQuery(); - + const chainId = useChainId(); const destinationChains = useMemo( @@ -68,7 +67,7 @@ export default function useRegisterRemoteCanonicalTokens( return INTERCHAIN_TOKEN_FACTORY_ENCODERS.deployRemoteCanonicalInterchainToken.data( { originalChain: sourceChain?.chain_name ?? "0x", - originalTokenAddress: tokenDetails.tokenAddress, + originalTokenAddress: tokenDetails.tokenAddress as `0x${string}`, destinationChain: axelarChainId, gasValue, } diff --git a/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteInterchainTokens.ts b/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteInterchainTokens.ts index 1e975d5f0..e0732db09 100644 --- a/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteInterchainTokens.ts +++ b/apps/maestro/src/features/RegisterRemoteTokens/hooks/useRegisterRemoteInterchainTokens.ts @@ -2,7 +2,6 @@ import { INTERCHAIN_TOKEN_FACTORY_ENCODERS } from "@axelarjs/evm"; import { useMemo } from "react"; import { zeroAddress } from "viem"; -import { useChainId } from "wagmi"; import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, @@ -12,20 +11,20 @@ import { useSimulateInterchainTokenFactoryMulticall, useWriteInterchainTokenFactoryMulticall, } from "~/lib/contracts/InterchainTokenFactory.hooks"; +import { useChainId } from "~/lib/hooks"; import { useEstimateGasFeeMultipleChainsQuery } from "~/services/axelarjsSDK/hooks"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useInterchainTokenDetailsQuery } from "~/services/interchainToken/hooks"; export type RegisterRemoteInterchainTokensInput = { chainIds: number[]; - tokenAddress: `0x${string}`; + tokenAddress: string; originChainId: number; }; export default function useRegisterRemoteInterchainTokens( input: RegisterRemoteInterchainTokensInput ) { - const { combinedComputed } = useAllChainConfigsQuery(); const chainId = useChainId(); @@ -68,11 +67,13 @@ export default function useRegisterRemoteInterchainTokens( ) return []; + const minter = tokenDeployment.originalMinterAddress ?? zeroAddress; + return destinationChainIds.map((chainId, i) => INTERCHAIN_TOKEN_FACTORY_ENCODERS.deployRemoteInterchainToken.data({ salt: tokenDeployment.salt, - originalChainName: "", - minter: tokenDeployment.originalMinterAddress ?? zeroAddress, + originalChainName: sourceChain?.chain_name ?? "", + minter: minter as `0x${string}`, destinationChain: chainId, gasValue: gasFeesData.gasFees[i].fee, }) diff --git a/apps/maestro/src/features/SearchInterchainToken/SearchInterchainToken.tsx b/apps/maestro/src/features/SearchInterchainToken/SearchInterchainToken.tsx index 36d1364ae..77a2d1291 100644 --- a/apps/maestro/src/features/SearchInterchainToken/SearchInterchainToken.tsx +++ b/apps/maestro/src/features/SearchInterchainToken/SearchInterchainToken.tsx @@ -10,12 +10,10 @@ import { useSessionStorageState } from "@axelarjs/utils/react"; import { useEffect, useMemo, useState, type ChangeEvent, type FC } from "react"; import { isAddress } from "viem"; -import { useAccount } from "wagmi"; +import { useAccount } from "~/lib/hooks"; import useQueryStringState from "~/lib/hooks/useQueryStringStyate"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useERC20TokenDetailsQuery } from "~/services/erc20"; import { useInterchainTokensQuery } from "~/services/gmp/hooks"; import ChainsDropdown, { @@ -105,7 +103,7 @@ const SearchInterchainToken: FC = (props) => { (!isValidAddress && search.length >= 10); return ( - +
TAKE YOUR TOKEN INTERCHAIN
diff --git a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.spec.tsx b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.spec.tsx index 306880963..7c9bbac42 100644 --- a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.spec.tsx +++ b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.spec.tsx @@ -49,7 +49,7 @@ const MOCK_EVM_CHAIN_CONFIG: EVMChainConfig = { symbol: "ETH", decimals: 18, }, - no_tvl: true, + // no_tvl: true, }; const mocks = { diff --git a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.state.ts b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.state.ts index 7e57f3467..37a7f17f7 100644 --- a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.state.ts +++ b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.state.ts @@ -1,12 +1,12 @@ import type { EVMChainConfig, VMChainConfig } from "@axelarjs/api"; import { Maybe } from "@axelarjs/utils"; import { useMemo, useState } from "react"; -import { useAccount, useBalance } from "wagmi"; import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, NEXT_PUBLIC_INTERCHAIN_TRANSFER_GAS_LIMIT, } from "~/config/env"; +import { useBalance } from "~/lib/hooks"; import { trpc } from "~/lib/trpc"; import { toNumericString } from "~/lib/utils/bigint"; import { getNativeToken } from "~/lib/utils/getNativeToken"; @@ -32,7 +32,6 @@ export function useSendInterchainTokenState(props: { kind: "canonical" | "interchain"; isModalOpen?: boolean; }) { - const { combinedComputed } = useAllChainConfigsQuery(); // Only query ERC20 details for EVM chains @@ -90,12 +89,11 @@ export function useSendInterchainTokenState(props: { const [, { addTransaction }] = useTransactionsContainer(); - const { address } = useAccount(); - const { data: balance } = useBalance({ - address, - }); + const balance = useBalance(); - const nativeTokenSymbol = getNativeToken(props.sourceChain.chain_name.toLowerCase()); + const nativeTokenSymbol = getNativeToken( + props.sourceChain.chain_name.toLowerCase() + ); const { data: gas } = useEstimateGasFeeQuery({ sourceChainId: props.sourceChain.chain_name, @@ -113,7 +111,7 @@ export function useSendInterchainTokenState(props: { return gas > balance.value; }, [balance, gas]); - const { + const { mutateAsync: interchainTransferAsync, isPending: isInterchainTransferSending, txState: interchainTransferTxState, @@ -148,7 +146,7 @@ export function useSendInterchainTokenState(props: { resetTokenServiceTxState(); }; - const { sendTokenAsync, isSending, txState } = useMemo( + const { sendTokenAsync, isSending, txState } = useMemo( () => isApprovalRequired ? { @@ -199,6 +197,8 @@ export function useSendInterchainTokenState(props: { ] as const; } -export type UseSendInterchainTokenState = ReturnType; +export type UseSendInterchainTokenState = ReturnType< + typeof useSendInterchainTokenState +>; export type State = UseSendInterchainTokenState[0]; export type Actions = UseSendInterchainTokenState[1]; diff --git a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.tsx b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.tsx index 7d5d6350f..101269824 100644 --- a/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.tsx +++ b/apps/maestro/src/features/SendInterchainToken/SendInterchainToken.tsx @@ -14,6 +14,7 @@ import { invariant } from "@axelarjs/utils"; import { useCallback, useEffect, useMemo, type FC } from "react"; import { useForm, type SubmitHandler } from "react-hook-form"; +import type { SuiTransactionBlockResponse } from "@mysten/sui/client"; import { formatUnits, parseUnits } from "viem"; import { logger } from "~/lib/logger"; @@ -175,6 +176,40 @@ export const SendInterchainToken: FC = (props) => { }); }, [actions, props.sourceChain, state.txState, txHash]); + const suiTxDigest = useMemo(() => { + console.log("MEMO@@@ state.txState", state.txState); + return state.txState.status === "submitted" + ? state.txState.suiTx?.digest + : undefined; + }, [state.txState]); + + useEffect(() => { + console.log("ENTERING USEEFF suiTxDigest", suiTxDigest); + async function trackTransaction() { + if (state.txState.status !== "submitted") return; + if (!state.txState.suiTx) return; + if (!suiTxDigest) return; + + actions.trackTransaction({ + status: "submitted", + hash: suiTxDigest, + suiTx: state.txState.suiTx, + chainId: 103, //todo change + txType: "INTERCHAIN_TRANSFER", + }); + + console.log(" past if state.txState.suiTx", state.txState.suiTx); + + await handleSuiTransactionComplete(state.txState.suiTx); + } + + if (suiTxDigest && state.txState.status === "submitted") { + trackTransaction().catch((error) => { + logger.error("Failed to track transaction", error); + }); + } + }, [actions, suiTxDigest, state.txState.status]); + const handleAllChainsExecuted = useCallback(async () => { await actions.refetchBalances(); resetForm(); @@ -203,6 +238,28 @@ export const SendInterchainToken: FC = (props) => { }); }, [props.balance.decimals, props.balance.tokenBalance, setValue]); + const handleSuiTransactionComplete = useCallback( + async (result: SuiTransactionBlockResponse) => { + // Check if transaction was successful + console.log( + "handleSuiTransactionComplete", + result, + "and result.effects.status.status ", + result.effects?.status?.status + ); + if (result.effects?.status?.status === "success") { + await actions.refetchBalances(); + resetForm(); + actions.resetTxState(); + actions.setIsModalOpen(false); + toast.success("Tokens sent successfully!", { + id: `token-sent:${result.digest}`, + }); + } + }, + [actions, resetForm] + ); + return ( ; +type TransactionsByHash = Record; export const { Provider: TransactionsProvider, @@ -30,13 +30,13 @@ export const { }); }; - const removeTransaction = (hash: `0x${string}`) => { + const removeTransaction = (hash: string) => { setTransactions((draft) => { delete draft[hash]; }); }; - const getTransaction = (hash: `0x${string}`) => transactions[hash]; + const getTransaction = (hash: string) => transactions[hash]; return [ { diff --git a/apps/maestro/src/features/Transactions/Transactions.tsx b/apps/maestro/src/features/Transactions/Transactions.tsx index 3b8bbcac2..fa88c351e 100644 --- a/apps/maestro/src/features/Transactions/Transactions.tsx +++ b/apps/maestro/src/features/Transactions/Transactions.tsx @@ -14,9 +14,7 @@ import Link from "next/link"; import { groupBy } from "rambda"; import type { TxType } from "~/lib/hooks"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useGetTransactionStatusOnDestinationChainsQuery } from "~/services/gmp/hooks"; import { ChainIcon } from "~/ui/components/ChainsDropdown"; import { @@ -31,7 +29,7 @@ const TX_LABEL_MAP: Record = { INTERCHAIN_TRANSFER: "Interchain Transfer", } as const; -function useGroupedStatuses(txHash: `0x${string}`) { +function useGroupedStatuses(txHash: string) { const { data: statuses } = useGetTransactionStatusOnDestinationChainsQuery({ txHash, }); @@ -65,10 +63,10 @@ function useGroupedStatuses(txHash: `0x${string}`) { } type ToastElementProps = { - txHash: `0x${string}`; + txHash: string; chainId: number; txType: TxType; - onRemoveTx?: (txHash: `0x${string}`) => void; + onRemoveTx?: (txHash: string) => void; }; const ToastElement: FC = ({ @@ -134,7 +132,7 @@ const ToastElement: FC = ({ /> )}
- {txTypeText} + {txTypeText} {showFinalityProgressBar ? ( = ({ }; type GMPTxStatusProps = { - txHash: `0x${string}`; + txHash: string; chainId: number; txType: keyof typeof TX_LABEL_MAP; }; diff --git a/apps/maestro/src/features/suiHooks/useDeployToken.ts b/apps/maestro/src/features/suiHooks/useDeployToken.ts new file mode 100644 index 000000000..af2aa9790 --- /dev/null +++ b/apps/maestro/src/features/suiHooks/useDeployToken.ts @@ -0,0 +1,209 @@ +import { useSignAndExecuteTransaction } from "@mysten/dapp-kit"; +import { + getFullnodeUrl, + SuiClient, + SuiObjectChange, + type SuiTransactionBlockResponse, +} from "@mysten/sui/client"; +import { Transaction } from "@mysten/sui/transactions"; +import { fromHex } from "@mysten/sui/utils"; + +import { useAccount } from "~/lib/hooks"; +import { trpc } from "~/lib/trpc"; + +const findCoinDataObject = ( + registerTokenResult: SuiTransactionBlockResponse +) => { + return ( + registerTokenResult?.objectChanges?.find( + (change) => + change.type === "created" && change.objectType.includes("coin_data") + ) as SuiObjectCreated + )?.objectId; +}; + +export type DeployTokenParams = { + initialSupply: bigint; + symbol: string; + name: string; + decimals: number; + destinationChainIds: string[]; + skipRegister?: boolean; +}; + +export type DeployTokenResult = SuiTransactionBlockResponse & { + tokenManagerAddress: string; + tokenAddress: string; + tokenManagerType: "mint/burn" | "lock/unlock"; + deploymentMessageId?: string; +}; + +type SuiObjectCreated = + | Extract + | undefined; +const findObjectByType = ( + objectChanges: SuiObjectChange[], + type: string +): SuiObjectCreated => { + return objectChanges.find( + (change) => change.type === "created" && change.objectType.includes(type) + ) as SuiObjectCreated; +}; + +export default function useTokenDeploy() { + const currentAccount = useAccount(); + const client = new SuiClient({ url: getFullnodeUrl("testnet") }); + const { mutateAsync: signAndExecuteTransaction } = + useSignAndExecuteTransaction({ + execute: async ({ bytes, signature }) => { + const result = await client.executeTransactionBlock({ + transactionBlock: bytes, + signature, + options: { + showObjectChanges: true, + showEvents: true, + showEffects: true, + showRawEffects: true, + }, + }); + return result; + }, + }); + + const { mutateAsync: getDeployTokenTxBytes } = + trpc.sui.getDeployTokenTxBytes.useMutation({ + onError(error) { + console.log("error in usedeploytoken", error.message); + }, + }); + + const { mutateAsync: getMintTx } = trpc.sui.getMintTx.useMutation({ + onError(error) { + console.log("error in getMintTx", error.message); + }, + }); + + const { mutateAsync: getRegisterAndSendTokenDeploymentTxBytes } = + trpc.sui.getRegisterAndDeployTokenTx.useMutation({ + onError(error) { + console.log("error in getSendTokenDeploymentTxBytes", error.message); + }, + }); + + const deployToken = async ({ + initialSupply, + symbol, + name, + decimals, + destinationChainIds, + skipRegister = false, + }: DeployTokenParams): Promise => { + if (!currentAccount) { + throw new Error("Wallet not connected"); + } + + try { + const deployTokenTxBytes = await getDeployTokenTxBytes({ + symbol, + name, + decimals, + skipRegister, + walletAddress: currentAccount.address, + }); + // First step, deploy the token + const deployTokenTx = Transaction.from(fromHex(deployTokenTxBytes)); + const deployTokenResult = await signAndExecuteTransaction({ + transaction: await deployTokenTx.toJSON(), + chain: "sui:testnet", + }); + + if (!deployTokenResult?.objectChanges) { + throw new Error("Failed to deploy token"); + } + + const deploymentCreatedObjects = deployTokenResult.objectChanges.filter( + (objectChange: SuiObjectChange) => objectChange.type === "created" + ); + + const treasuryCap = findObjectByType( + deploymentCreatedObjects, + "TreasuryCap" + ); + + const metadata = findObjectByType(deploymentCreatedObjects, "Metadata"); + + const tokenAddress = metadata?.objectType.match(/<([^:>]+)/)?.[1]; + + if (!tokenAddress) { + throw new Error("Failed to deploy token"); + } + + // Mint tokens before registering, as the treasury cap will be transferred to the ITS contract + // TODO: should merge this with above to avoid multiple transactions. + // we can do this once we know whether the token is mint/burn or lock/unlock + if (treasuryCap) { + const mintTxJSON = await getMintTx({ + sender: currentAccount.address, + tokenTreasuryCap: treasuryCap?.objectId, + amount: initialSupply, + tokenPackageId: tokenAddress, + symbol, + }); + await signAndExecuteTransaction({ + transaction: mintTxJSON, + chain: "sui:testnet", //TODO: make this dynamic + }); + } + + const sendTokenTxJSON = await getRegisterAndSendTokenDeploymentTxBytes({ + sender: currentAccount.address, + symbol, + tokenPackageId: tokenAddress, + metadataId: metadata.objectId, + destinationChains: destinationChainIds, + }); + + if (!sendTokenTxJSON) { + throw new Error( + "Failed to get register and send token deployment tx bytes" + ); + } + + const sendTokenResult = await signAndExecuteTransaction({ + transaction: sendTokenTxJSON, + chain: "sui:testnet", //TODO: make this dynamic + }); + const coinManagementObjectId = findCoinDataObject(sendTokenResult); + + // find treasury cap in the sendTokenResult to determine the token manager type + const sendTokenObjects = sendTokenResult?.objectChanges; + const treasuryCapSendTokenResult = findObjectByType( + sendTokenObjects as SuiObjectChange[], + "TreasuryCap" + ); + const tokenManagerType = treasuryCapSendTokenResult + ? "mint/burn" + : "lock/unlock"; + // TODO:: handle txIndex properly + const txIndex = sendTokenResult?.events?.[0]?.id?.eventSeq ?? 0; + const deploymentMessageId = `${sendTokenResult?.digest}-${txIndex}`; + + return { + ...sendTokenResult, + deploymentMessageId, + tokenManagerAddress: coinManagementObjectId || "0x", + tokenAddress, + tokenManagerType, + }; + } catch (error) { + console.error("Token deployment failed:", error); + throw error; + } + }; + + return { + deployToken, + isConnected: !!currentAccount, + account: currentAccount, + }; +} diff --git a/apps/maestro/src/lib/auth/useRouteProtection.ts b/apps/maestro/src/lib/auth/useRouteProtection.ts index 1b7db8590..8a3203f63 100644 --- a/apps/maestro/src/lib/auth/useRouteProtection.ts +++ b/apps/maestro/src/lib/auth/useRouteProtection.ts @@ -3,8 +3,7 @@ import { useCallback, useEffect } from "react"; import { signOut, useSession } from "next-auth/react"; import { useRouter } from "next/router"; -import { useAccount, useDisconnect } from "wagmi"; - +import { useAccount, useDisconnect } from "~/lib/hooks"; import type { AccountStatus } from "~/services/db/kv"; import { logger } from "../logger"; @@ -28,7 +27,7 @@ export function useRouteProtection({ accountStatuses = ["enabled", "privileged"], }: UseRouteProtectionProps) { const { address } = useAccount(); - const { disconnectAsync } = useDisconnect(); + const { disconnect } = useDisconnect(); const { data: session, status: sessionStatus } = useSession(); const router = useRouter(); @@ -36,8 +35,8 @@ export function useRouteProtection({ const handleSignout = useCallback(async () => { await signOut({ callbackUrl: "/" }); - await disconnectAsync(); - }, [disconnectAsync]); + disconnect(); + }, [disconnect]); /** * redirect rules rules: diff --git a/apps/maestro/src/lib/auth/useWeb3SignIn.ts b/apps/maestro/src/lib/auth/useWeb3SignIn.ts index 095e429ba..c66a907b5 100644 --- a/apps/maestro/src/lib/auth/useWeb3SignIn.ts +++ b/apps/maestro/src/lib/auth/useWeb3SignIn.ts @@ -1,5 +1,5 @@ import { debounce, invariant } from "@axelarjs/utils"; -import { useRef } from "react"; +import { useEffect, useRef } from "react"; import { signIn, signOut, @@ -7,11 +7,13 @@ import { type SignInResponse, } from "next-auth/react"; +import { useCurrentAccount, useSignPersonalMessage } from "@mysten/dapp-kit"; import { useMutation } from "@tanstack/react-query"; -import { useDisconnect, useSignMessage } from "wagmi"; +import { useSignMessage } from "wagmi"; import { watchAccount } from "wagmi/actions"; import { wagmiConfig } from "~/config/wagmi"; +import { useDisconnect } from "~/lib/hooks"; import { trpc } from "../trpc"; export type UseWeb3SignInOptions = { @@ -41,7 +43,9 @@ export function useWeb3SignIn({ }: UseWeb3SignInOptions = DEFAULT_OPTIONS) { const { data: session, status: sessionStatus } = useSession(); const { signMessageAsync } = useSignMessage(); - const { disconnectAsync } = useDisconnect(); + const { disconnect } = useDisconnect(); + const { mutateAsync: signSuiMessageAsync } = useSignPersonalMessage(); + const currentSuiAccount = useCurrentAccount(); const signInAddressRef = useRef<`0x${string}` | null>(null); @@ -67,9 +71,24 @@ export function useWeb3SignIn({ const { message } = await createSignInMessage({ address }); onSignInStart?.(address); - const signature = await signMessageAsync({ message }); - const response = await signIn("credentials", { address, signature }); + let signature; + // 42 is the length of an EVM address + if (address.length === 42) { + signature = await signMessageAsync({ message }); + } + // 66 is the length of a sui address + else if (address.length === 66) { + const resp = await signSuiMessageAsync({ + message: new TextEncoder().encode(message), + }); + signature = resp.signature; + } + const response = await signIn("credentials", { + address, + signature, + redirect: false, + }); if (response?.error) { throw new Error(response.error); } @@ -79,7 +98,7 @@ export function useWeb3SignIn({ isSigningInRef.current = false; } catch (error) { if (error instanceof Error) { - await disconnectAsync(); + disconnect(); await signOut(); signInAddressRef.current = null; @@ -91,7 +110,7 @@ export function useWeb3SignIn({ }, }); - const unwatch = watchAccount(wagmiConfig, { + const unwatchEVM = watchAccount(wagmiConfig, { onChange: debounce(async ({ address }) => { if ( enabled === false || @@ -110,11 +129,37 @@ export function useWeb3SignIn({ return; } - unwatch(); + unwatchEVM(); await signInWithWeb3Async(address); }, 150), }); + // Same check as above, but for sui + useEffect(() => { + if ( + enabled === false || + isSigningInRef.current || + sessionStatus === "loading" || + !currentSuiAccount + ) { + return; + } + + const address = currentSuiAccount.address as `0x${string}`; + + if (session?.address === address || signInAddressRef.current === address) { + return; + } + + void signInWithWeb3Async(address); + }, [ + currentSuiAccount, + enabled, + sessionStatus, + session?.address, + signInWithWeb3Async, + ]); + return { retryAsync: signInWithWeb3Async.bind(null, signInAddressRef.current), retry: signInWithWeb3.bind(null, signInAddressRef.current), diff --git a/apps/maestro/src/lib/contracts/IERC20MintableBurnable.hooks.ts b/apps/maestro/src/lib/contracts/IERC20MintableBurnable.hooks.ts index 1b586fe1f..acf865d75 100644 --- a/apps/maestro/src/lib/contracts/IERC20MintableBurnable.hooks.ts +++ b/apps/maestro/src/lib/contracts/IERC20MintableBurnable.hooks.ts @@ -2,8 +2,8 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ import { - createUseWriteContract, createUseSimulateContract, + createUseWriteContract, } from "wagmi/codegen"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/apps/maestro/src/lib/contracts/InterchainToken.hooks.ts b/apps/maestro/src/lib/contracts/InterchainToken.hooks.ts index 3e86d8204..b82179574 100644 --- a/apps/maestro/src/lib/contracts/InterchainToken.hooks.ts +++ b/apps/maestro/src/lib/contracts/InterchainToken.hooks.ts @@ -3,9 +3,9 @@ import { createUseReadContract, - createUseWriteContract, createUseSimulateContract, createUseWatchContractEvent, + createUseWriteContract, } from "wagmi/codegen"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -518,14 +518,14 @@ export const useReadInterchainTokenNameHash = * Wraps __{@link useReadContract}__ with `abi` set to __{@link interchainTokenAbi}__ and `functionName` set to `"nonces"` */ export const useReadInterchainTokenNonces = /*#__PURE__*/ createUseReadContract( - { abi: interchainTokenAbi, functionName: "nonces" }, + { abi: interchainTokenAbi, functionName: "nonces" } ); /** * Wraps __{@link useReadContract}__ with `abi` set to __{@link interchainTokenAbi}__ and `functionName` set to `"symbol"` */ export const useReadInterchainTokenSymbol = /*#__PURE__*/ createUseReadContract( - { abi: interchainTokenAbi, functionName: "symbol" }, + { abi: interchainTokenAbi, functionName: "symbol" } ); /** @@ -566,7 +566,7 @@ export const useWriteInterchainTokenApprove = * Wraps __{@link useWriteContract}__ with `abi` set to __{@link interchainTokenAbi}__ and `functionName` set to `"burn"` */ export const useWriteInterchainTokenBurn = /*#__PURE__*/ createUseWriteContract( - { abi: interchainTokenAbi, functionName: "burn" }, + { abi: interchainTokenAbi, functionName: "burn" } ); /** @@ -591,7 +591,7 @@ export const useWriteInterchainTokenIncreaseAllowance = * Wraps __{@link useWriteContract}__ with `abi` set to __{@link interchainTokenAbi}__ and `functionName` set to `"init"` */ export const useWriteInterchainTokenInit = /*#__PURE__*/ createUseWriteContract( - { abi: interchainTokenAbi, functionName: "init" }, + { abi: interchainTokenAbi, functionName: "init" } ); /** @@ -616,7 +616,7 @@ export const useWriteInterchainTokenInterchainTransferFrom = * Wraps __{@link useWriteContract}__ with `abi` set to __{@link interchainTokenAbi}__ and `functionName` set to `"mint"` */ export const useWriteInterchainTokenMint = /*#__PURE__*/ createUseWriteContract( - { abi: interchainTokenAbi, functionName: "mint" }, + { abi: interchainTokenAbi, functionName: "mint" } ); /** diff --git a/apps/maestro/src/lib/contracts/InterchainTokenFactory.hooks.ts b/apps/maestro/src/lib/contracts/InterchainTokenFactory.hooks.ts index 55b2b3134..cc1ee17e7 100644 --- a/apps/maestro/src/lib/contracts/InterchainTokenFactory.hooks.ts +++ b/apps/maestro/src/lib/contracts/InterchainTokenFactory.hooks.ts @@ -3,9 +3,9 @@ import { createUseReadContract, - createUseWriteContract, createUseSimulateContract, createUseWatchContractEvent, + createUseWriteContract, } from "wagmi/codegen"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -427,7 +427,7 @@ export const interchainTokenFactoryAbi = [ ] as const; export const interchainTokenFactoryAddress = - "0x83a93500d23Fbc3e82B410aD07A6a9F7A0670D66" as const; + "0x6Ae8C8498d5FDA930e6ABeB0E15E5A00471702a7" as const; export const interchainTokenFactoryConfig = { address: interchainTokenFactoryAddress, diff --git a/apps/maestro/src/lib/contracts/InterchainTokenService.hooks.ts b/apps/maestro/src/lib/contracts/InterchainTokenService.hooks.ts index 4d5df3012..50487699c 100644 --- a/apps/maestro/src/lib/contracts/InterchainTokenService.hooks.ts +++ b/apps/maestro/src/lib/contracts/InterchainTokenService.hooks.ts @@ -3,9 +3,9 @@ import { createUseReadContract, - createUseWriteContract, createUseSimulateContract, createUseWatchContractEvent, + createUseWriteContract, } from "wagmi/codegen"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -1141,7 +1141,7 @@ export const interchainTokenServiceAbi = [ ] as const; export const interchainTokenServiceAddress = - "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C" as const; + "0x144c3d7A5f5198EF3B46A8258b35E903cf197A66" as const; export const interchainTokenServiceConfig = { address: interchainTokenServiceAddress, diff --git a/apps/maestro/src/lib/contracts/TokenManager.hooks.ts b/apps/maestro/src/lib/contracts/TokenManager.hooks.ts index 094ea7aa3..f9f0e631e 100644 --- a/apps/maestro/src/lib/contracts/TokenManager.hooks.ts +++ b/apps/maestro/src/lib/contracts/TokenManager.hooks.ts @@ -3,9 +3,9 @@ import { createUseReadContract, - createUseWriteContract, createUseSimulateContract, createUseWatchContractEvent, + createUseWriteContract, } from "wagmi/codegen"; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -454,7 +454,7 @@ export const useReadTokenManagerFlowInAmount = * Wraps __{@link useReadContract}__ with `abi` set to __{@link tokenManagerAbi}__ and `functionName` set to `"flowLimit"` */ export const useReadTokenManagerFlowLimit = /*#__PURE__*/ createUseReadContract( - { abi: tokenManagerAbi, functionName: "flowLimit" }, + { abi: tokenManagerAbi, functionName: "flowLimit" } ); /** diff --git a/apps/maestro/src/lib/contracts/index.ts b/apps/maestro/src/lib/contracts/index.ts index ba3bc678c..064d15443 100644 --- a/apps/maestro/src/lib/contracts/index.ts +++ b/apps/maestro/src/lib/contracts/index.ts @@ -18,12 +18,12 @@ export const contracts = [ { name: INTERCHAIN_TOKEN_FACTORY_ABI.contractName, abi: INTERCHAIN_TOKEN_FACTORY_ABI.abi, - address: "0x83a93500d23Fbc3e82B410aD07A6a9F7A0670D66" as `0x${string}`, // read from .env.local (NEXT_PUBLIC_INTERCHAIN_TOKEN_FACTORY_ADDRESS) + address: "0x6Ae8C8498d5FDA930e6ABeB0E15E5A00471702a7" as `0x${string}`, // read from .env.local (NEXT_PUBLIC_INTERCHAIN_TOKEN_FACTORY_ADDRESS) }, { name: INTERCHAIN_TOKEN_SERVICE_ABI.contractName, abi: INTERCHAIN_TOKEN_SERVICE_ABI.abi, - address: "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C" as `0x${string}`, // read from .env.local (NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS) + address: "0x144c3d7A5f5198EF3B46A8258b35E903cf197A66" as `0x${string}`, // read from .env.local (NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS) }, { name: TOKEN_MANAGER_ABI.contractName, diff --git a/apps/maestro/src/lib/drizzle/docs/SCHEMA.md b/apps/maestro/src/lib/drizzle/docs/SCHEMA.md index 9ed6dd3b2..115669fa9 100644 --- a/apps/maestro/src/lib/drizzle/docs/SCHEMA.md +++ b/apps/maestro/src/lib/drizzle/docs/SCHEMA.md @@ -30,16 +30,16 @@ Several fields utilize enumerated types (`ENUMs`) to restrict values to a predef erDiagram INTERCHAIN_TOKENS { string tokenId PK "Primary Key, Format: 0x${string} (HASH_LENGTH)" - string tokenAddress "Not Null, Format: 0x${string} (ADDRESS_LENGTH)" + string tokenAddress "Not Null, Format: ${string}" string axelarChainId "Not Null, Format: ${string} (HASH_LENGTH)" string tokenName "Not Null, Max: 100" string tokenSymbol "Not Null, Max: 100" int tokenDecimals "Not Null" - string deploymentMessageId "Not Null, Format: 0x${string}-${number} (HASH_LENGTH + 5)" - string deployerAddress "Not Null, Format: 0x${string} (ADDRESS_LENGTH)" - string tokenManagerAddress "Not Null, Format: 0x${string} (ADDRESS_LENGTH)" + string deploymentMessageId "Not Null, Format: ${string}-${number}" + string deployerAddress "Not Null, Format: 0x${string}" + string tokenManagerAddress "Not Null, Format: 0x${string}" string tokenManagerType "ENUM(TOKEN_MANAGER_TYPES)" - string originalMinterAddress "Format: 0x${string} (ADDRESS_LENGTH)" + string originalMinterAddress "Format: 0x${string}" string kind "Not Null, ENUM(token_kind)" datetime createdAt "Default: Now" datetime updatedAt "Default: Now" @@ -50,10 +50,10 @@ erDiagram string id PK "Primary Key, Format: ${axelarChainId}:${tokenAddress}" string tokenId FK "Not Null, References INTERCHAIN_TOKENS" string axelarChainId "Not Null, Format: ${string} (HASH_LENGTH)" - string tokenAddress "Not Null, Format: 0x${string} (ADDRESS_LENGTH)" - string tokenManagerAddress "Format: 0x${string} (ADDRESS_LENGTH)" + string tokenAddress "Not Null, Format: 0x${string}" + string tokenManagerAddress "Format: 0x${string}" string tokenManagerType "ENUM(TOKEN_MANAGER_TYPES)" - string deploymentMessageId "Not Null, Format: 0x${string}-${number} (HASH_LENGTH + 5)" + string deploymentMessageId "Not Null, Format: ${string}-${number}" string deploymentStatus "Default: pending, ENUM(deployment_status)" datetime createdAt "Default: Now" datetime updatedAt "Default: Now" diff --git a/apps/maestro/src/lib/drizzle/migrations/0005_abnormal_tombstone.sql b/apps/maestro/src/lib/drizzle/migrations/0005_abnormal_tombstone.sql new file mode 100644 index 000000000..f0019d404 --- /dev/null +++ b/apps/maestro/src/lib/drizzle/migrations/0005_abnormal_tombstone.sql @@ -0,0 +1,10 @@ +ALTER TABLE "interchain_tokens" ALTER COLUMN "token_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "interchain_tokens" ALTER COLUMN "axelar_chain_id" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "interchain_tokens" ALTER COLUMN "deployment_message_id" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "interchain_tokens" ALTER COLUMN "deployer_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "interchain_tokens" ALTER COLUMN "token_manager_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "interchain_tokens" ALTER COLUMN "original_minter_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "remote_interchain_tokens" ALTER COLUMN "axelar_chain_id" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "remote_interchain_tokens" ALTER COLUMN "token_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "remote_interchain_tokens" ALTER COLUMN "token_manager_address" SET DATA TYPE varchar;--> statement-breakpoint +ALTER TABLE "remote_interchain_tokens" ALTER COLUMN "deployment_message_id" SET DATA TYPE varchar; \ No newline at end of file diff --git a/apps/maestro/src/lib/drizzle/migrations/meta/0005_snapshot.json b/apps/maestro/src/lib/drizzle/migrations/meta/0005_snapshot.json new file mode 100644 index 000000000..3543188f3 --- /dev/null +++ b/apps/maestro/src/lib/drizzle/migrations/meta/0005_snapshot.json @@ -0,0 +1,269 @@ +{ + "id": "441d49f1-9aa6-44a1-907f-b01aae46e6f9", + "prevId": "1d946e70-48b9-4854-bbfb-5b7877935721", + "version": "5", + "dialect": "pg", + "tables": { + "audit_logs": { + "name": "audit_logs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "event_kind": { + "name": "event_kind", + "type": "audit_log_event_kind", + "primaryKey": false, + "notNull": true + }, + "payload": { + "name": "payload", + "type": "varchar(2048)", + "primaryKey": false, + "notNull": true + }, + "timestamp": { + "name": "timestamp", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "interchain_tokens": { + "name": "interchain_tokens", + "schema": "", + "columns": { + "token_id": { + "name": "token_id", + "type": "varchar(66)", + "primaryKey": true, + "notNull": true + }, + "token_address": { + "name": "token_address", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "axelar_chain_id": { + "name": "axelar_chain_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "token_name": { + "name": "token_name", + "type": "varchar(100)", + "primaryKey": false, + "notNull": true + }, + "token_symbol": { + "name": "token_symbol", + "type": "varchar(100)", + "primaryKey": false, + "notNull": true + }, + "token_decimals": { + "name": "token_decimals", + "type": "smallint", + "primaryKey": false, + "notNull": true + }, + "deployment_message_id": { + "name": "deployment_message_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "deployer_address": { + "name": "deployer_address", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "token_manager_address": { + "name": "token_manager_address", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "token_manager_type": { + "name": "token_manager_type", + "type": "token_manager_type", + "primaryKey": false, + "notNull": false + }, + "original_minter_address": { + "name": "original_minter_address", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "kind": { + "name": "kind", + "type": "token_kind", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + }, + "salt": { + "name": "salt", + "type": "varchar(66)", + "primaryKey": false, + "notNull": true, + "default": "'0x'" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "remote_interchain_tokens": { + "name": "remote_interchain_tokens", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "varchar(128)", + "primaryKey": true, + "notNull": true + }, + "token_id": { + "name": "token_id", + "type": "varchar(66)", + "primaryKey": false, + "notNull": true + }, + "axelar_chain_id": { + "name": "axelar_chain_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "token_address": { + "name": "token_address", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "token_manager_address": { + "name": "token_manager_address", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "token_manager_type": { + "name": "token_manager_type", + "type": "token_manager_type", + "primaryKey": false, + "notNull": false + }, + "deployment_message_id": { + "name": "deployment_message_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "deployment_status": { + "name": "deployment_status", + "type": "deployment_status", + "primaryKey": false, + "notNull": false, + "default": "'pending'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "remote_interchain_tokens_token_id_interchain_tokens_token_id_fk": { + "name": "remote_interchain_tokens_token_id_interchain_tokens_token_id_fk", + "tableFrom": "remote_interchain_tokens", + "tableTo": "interchain_tokens", + "columnsFrom": ["token_id"], + "columnsTo": ["token_id"], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + } + }, + "enums": { + "audit_log_event_kind": { + "name": "audit_log_event_kind", + "values": { + "unauthorized_access_attempt": "unauthorized_access_attempt" + } + }, + "token_manager_type": { + "name": "token_manager_type", + "values": { + "mint_burn": "mint_burn", + "mint_burn_from": "mint_burn_from", + "lock_unlock": "lock_unlock", + "lock_unlock_fee": "lock_unlock_fee", + "gateway": "gateway" + } + }, + "token_kind": { + "name": "token_kind", + "values": { + "canonical": "canonical", + "interchain": "interchain", + "custom": "custom" + } + }, + "deployment_status": { + "name": "deployment_status", + "values": { + "confirmed": "confirmed", + "pending": "pending" + } + } + }, + "schemas": {}, + "_meta": { + "columns": {}, + "schemas": {}, + "tables": {} + } +} diff --git a/apps/maestro/src/lib/drizzle/migrations/meta/_journal.json b/apps/maestro/src/lib/drizzle/migrations/meta/_journal.json index 4acbb40eb..695cc7788 100644 --- a/apps/maestro/src/lib/drizzle/migrations/meta/_journal.json +++ b/apps/maestro/src/lib/drizzle/migrations/meta/_journal.json @@ -36,6 +36,13 @@ "when": 1706596474172, "tag": "0004_amazing_king_bedlam", "breakpoints": true + }, + { + "idx": 5, + "version": "5", + "when": 1730926202479, + "tag": "0005_abnormal_tombstone", + "breakpoints": true } ] } diff --git a/apps/maestro/src/lib/drizzle/schema/common.ts b/apps/maestro/src/lib/drizzle/schema/common.ts index 8f1834eee..b53c23d3a 100644 --- a/apps/maestro/src/lib/drizzle/schema/common.ts +++ b/apps/maestro/src/lib/drizzle/schema/common.ts @@ -1,44 +1,33 @@ import { PgEnum, pgEnum, timestamp, varchar } from "drizzle-orm/pg-core"; -export const ADDRESS_LENGTH = 42; export const HASH_LENGTH = 66; // common fields /** - * This is a composite field. Format: `0x${string)-${number}` + * This is a composite field. Format: `${string)-${number}` */ -export const deploymentMessageId = varchar("deployment_message_id", { - length: HASH_LENGTH + 5, // up to 10k indexes -}); +export const deploymentMessageId = varchar("deployment_message_id"); /** - * Token address. Format: `0x${string}` + * Token address. Format: `${string}` */ -export const tokenAddress = varchar("token_address", { - length: ADDRESS_LENGTH, -}); +export const tokenAddress = varchar("token_address"); /** - * This is the address of the account. Format: `0x${string}` + * This is the address of the account. Format: `${string}` */ -export const accountAddress = varchar("account_address", { - length: ADDRESS_LENGTH, -}); +export const accountAddress = varchar("account_address"); /** - * This is the address of the token manager contract. Format: `0x${string}` + * This is the address of the token manager contract. Format: `${string}` */ -export const tokenManagerAddress = varchar("token_manager_address", { - length: ADDRESS_LENGTH, -}); +export const tokenManagerAddress = varchar("token_manager_address"); /** * This is an internal identifier for the chain. Format: `${string}` */ -export const axelarChainId = varchar("axelar_chain_id", { - length: HASH_LENGTH, -}); +export const axelarChainId = varchar("axelar_chain_id"); export const createdAt = timestamp("created_at").defaultNow(); diff --git a/apps/maestro/src/lib/drizzle/schema/interchainTokens.ts b/apps/maestro/src/lib/drizzle/schema/interchainTokens.ts index e1c06d44d..e79682aeb 100644 --- a/apps/maestro/src/lib/drizzle/schema/interchainTokens.ts +++ b/apps/maestro/src/lib/drizzle/schema/interchainTokens.ts @@ -3,7 +3,6 @@ import { pgEnum, pgTable, smallint, varchar } from "drizzle-orm/pg-core"; import { createInsertSchema, createSelectSchema } from "drizzle-zod"; import { - ADDRESS_LENGTH, axelarChainId, createdAt, deploymentMessageId, @@ -33,14 +32,10 @@ export const interchainTokens = pgTable("interchain_tokens", { tokenSymbol: varchar("token_symbol", { length: 100 }).notNull(), tokenDecimals: smallint("token_decimals").notNull(), deploymentMessageId: deploymentMessageId.notNull(), - deployerAddress: varchar("deployer_address", { - length: ADDRESS_LENGTH, - }).notNull(), + deployerAddress: varchar("deployer_address").notNull(), tokenManagerAddress: tokenManagerAddress.notNull(), tokenManagerType: tokenManagerTypeEnum("token_manager_type"), - originalMinterAddress: varchar("original_minter_address", { - length: ADDRESS_LENGTH, - }), + originalMinterAddress: varchar("original_minter_address"), kind: tokenKindEnum("kind").notNull(), createdAt, updatedAt, diff --git a/apps/maestro/src/lib/drizzle/schema/remoteInterchainTokens.ts b/apps/maestro/src/lib/drizzle/schema/remoteInterchainTokens.ts index bcae05d44..42a9e4feb 100644 --- a/apps/maestro/src/lib/drizzle/schema/remoteInterchainTokens.ts +++ b/apps/maestro/src/lib/drizzle/schema/remoteInterchainTokens.ts @@ -3,7 +3,6 @@ import { pgEnum, pgTable, varchar } from "drizzle-orm/pg-core"; import { createInsertSchema, createSelectSchema } from "drizzle-zod"; import { - ADDRESS_LENGTH, axelarChainId, createdAt, deploymentMessageId, @@ -37,9 +36,7 @@ export const remoteInterchainTokens = pgTable("remote_interchain_tokens", { .references(() => interchainTokens.tokenId), axelarChainId: axelarChainId.notNull(), tokenAddress: tokenAddress.notNull(), - tokenManagerAddress: varchar("token_manager_address", { - length: ADDRESS_LENGTH, - }), + tokenManagerAddress: varchar("token_manager_address"), tokenManagerType: tokenManagerTypeEnum("token_manager_type"), deploymentMessageId: deploymentMessageId.notNull(), deploymentStatus: deplymentStatusEnum("deployment_status").default("pending"), diff --git a/apps/maestro/src/lib/drizzle/schema/types.ts b/apps/maestro/src/lib/drizzle/schema/types.ts index 646bd4dfc..12cf8ff10 100644 --- a/apps/maestro/src/lib/drizzle/schema/types.ts +++ b/apps/maestro/src/lib/drizzle/schema/types.ts @@ -1 +1 @@ -export type DeploymentMessageId = `0x${string}-${number}`; +export type DeploymentMessageId = `${string}-${number}`; diff --git a/apps/maestro/src/lib/drizzle/schema/utils.ts b/apps/maestro/src/lib/drizzle/schema/utils.ts index fb60010d0..a83945e22 100644 --- a/apps/maestro/src/lib/drizzle/schema/utils.ts +++ b/apps/maestro/src/lib/drizzle/schema/utils.ts @@ -6,13 +6,13 @@ export function decodeDeploymentMessageId( const [hash, index] = deploymentMessageId.split("-"); return { - hash: hash as `0x${string}`, + hash: hash, index: parseInt(index), }; } export function encodeDeploymentMessageId( - hash: `0x${string}`, + hash: `${string}`, index: number ): DeploymentMessageId { return `${hash}-${index}`; diff --git a/apps/maestro/src/lib/hooks/index.ts b/apps/maestro/src/lib/hooks/index.ts index 862b3393c..696e4cb6d 100644 --- a/apps/maestro/src/lib/hooks/index.ts +++ b/apps/maestro/src/lib/hooks/index.ts @@ -1,2 +1,7 @@ export * from "./useChainFromRoute"; export * from "./useTransactionState"; +export * from "./useAccount"; +export * from "./useDisconnect"; +export * from "./useChainId"; +export * from "./useBalance"; +export * from "./useSwitchChain"; diff --git a/apps/maestro/src/lib/hooks/useAccount.ts b/apps/maestro/src/lib/hooks/useAccount.ts new file mode 100644 index 000000000..2ff500529 --- /dev/null +++ b/apps/maestro/src/lib/hooks/useAccount.ts @@ -0,0 +1,84 @@ +import { useMemo } from "react"; + +import { useCurrentAccount as useMystenAccount } from "@mysten/dapp-kit"; +import type { Chain } from "viem"; +import { useAccount as useWagmiAccount } from "wagmi"; + +import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; +import { useEVMChainConfigsQuery } from "../../services/axelarscan/hooks"; + +interface CombinedAccountInfo { + address: `0x${string}`; + isConnected: boolean; + isDisconnected: boolean; + chain?: Chain; + isEvmChain: boolean; + chainName?: string; +} + +export function useAccount(): CombinedAccountInfo { + const wagmiAccount = useWagmiAccount(); + const mystenAccount = useMystenAccount(); + + const { data: evmChains } = useEVMChainConfigsQuery(); + + const isWagmiConnected = wagmiAccount.isConnected; + const isMystenConnected = !!mystenAccount; + + const evmChain = useMemo( + () => evmChains?.find?.((x) => x.chain_id === wagmiAccount?.chain?.id), + [wagmiAccount?.chain, evmChains] + ); + + // TODO: do it more generic + return { + address: wagmiAccount.address || (mystenAccount?.address as `0x${string}`), + isConnected: isWagmiConnected || isMystenConnected, + isDisconnected: !isWagmiConnected && !isMystenConnected, + chain: + wagmiAccount.chain || + (isMystenConnected + ? NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? { + id: 101, + name: "Sui", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { http: ["https://sui-rpc.publicnode.com"] }, + public: { http: ["https://sui-rpc.publicnode.com"] }, + }, + blockExplorers: { + default: { + name: "Sui Explorer", + url: "https://suiexplorer.com", + }, + }, + } + : { + id: 103, + name: "Sui Testnet", + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + rpcUrls: { + default: { http: ["https://fullnode.testnet.sui.io:443"] }, + public: { http: ["https://fullnode.testnet.sui.io:443"] }, + }, + blockExplorers: { + default: { + name: "Sui Explorer", + url: "https://suiscan.xyz/testnet", + }, + }, + } + : undefined), + isEvmChain: !!evmChain, + chainName: evmChain?.chain_name || "Sui", + }; +} diff --git a/apps/maestro/src/lib/hooks/useBalance.ts b/apps/maestro/src/lib/hooks/useBalance.ts new file mode 100644 index 000000000..44c31807c --- /dev/null +++ b/apps/maestro/src/lib/hooks/useBalance.ts @@ -0,0 +1,54 @@ +import { useMemo } from "react"; + +import { useCurrentAccount, useSuiClientQuery } from "@mysten/dapp-kit"; +import { formatUnits } from "viem"; +import { + useAccount as useWagmiAccount, + useBalance as useWagmiBalance, +} from "wagmi"; + +// Define a type for the balance result +interface BalanceResult { + value: bigint; + formatted: string; + symbol: string; + decimals: number; +} + +export function useBalance(): BalanceResult | undefined { + const wagmiAccount = useWagmiAccount(); + const suiAccount = useCurrentAccount(); + // Wagmi balance hook + const { data: wagmiBalance } = useWagmiBalance({ + address: wagmiAccount.address, + }); + + // Sui balance query + const { data: suiBalance } = useSuiClientQuery( + "getBalance", + { + owner: suiAccount?.address ?? "", + }, + { + enabled: !!suiAccount, + } + ); + + const balance = useMemo(() => { + if (wagmiBalance) { + return wagmiBalance; + } + if (suiBalance) { + const value = BigInt(suiBalance.totalBalance); + return { + value, + formatted: formatUnits(value, 9), // SUI has 9 decimals + symbol: "SUI", + decimals: 9, + }; + } + return undefined; + }, [wagmiBalance, suiBalance]); + + return balance; +} diff --git a/apps/maestro/src/lib/hooks/useChainId.ts b/apps/maestro/src/lib/hooks/useChainId.ts new file mode 100644 index 000000000..d281152fb --- /dev/null +++ b/apps/maestro/src/lib/hooks/useChainId.ts @@ -0,0 +1,24 @@ +import { useMemo } from "react"; + +import { useCurrentAccount } from "@mysten/dapp-kit"; +import { useChainId as useWagmiChainId } from "wagmi"; + +// Sui's chain ID +import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; + +export const SUI_CHAIN_ID = NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? 101 : 103; + +// TODO: check if this is the best way to use chain ids, maybe we should combine it with chain type +export function useChainId(): number { + const wagmiChainId = useWagmiChainId(); + const suiAccount = useCurrentAccount(); + + const chainId = useMemo(() => { + if (suiAccount) { + return SUI_CHAIN_ID; + } + return wagmiChainId; + }, [wagmiChainId, suiAccount]); + + return chainId; +} diff --git a/apps/maestro/src/lib/hooks/useDisconnect.ts b/apps/maestro/src/lib/hooks/useDisconnect.ts new file mode 100644 index 000000000..8b22f8103 --- /dev/null +++ b/apps/maestro/src/lib/hooks/useDisconnect.ts @@ -0,0 +1,32 @@ +import { useDisconnectWallet } from "@mysten/dapp-kit"; +import { useDisconnect as useWagmiDisconnect } from "wagmi"; + +interface DisconnectResult { + disconnect: () => void; + error: Error | null; +} + +export function useDisconnect(): DisconnectResult { + const { disconnect: wagmiDisconnect, error: wagmiError } = + useWagmiDisconnect(); + const { mutate: suiDisconnect } = useDisconnectWallet(); + let error: Error | null = wagmiError; + const disconnect = () => { + try { + // Attempt to disconnect from Wagmi (EVM) wallet + if (wagmiDisconnect) { + wagmiDisconnect(); + } + + // Attempt to disconnect from SUI wallet + suiDisconnect(); + } catch (e) { + error = e as Error; + } + }; + + return { + disconnect, + error: error, + }; +} diff --git a/apps/maestro/src/lib/hooks/useSwitchChain.ts b/apps/maestro/src/lib/hooks/useSwitchChain.ts new file mode 100644 index 000000000..a283511b0 --- /dev/null +++ b/apps/maestro/src/lib/hooks/useSwitchChain.ts @@ -0,0 +1,31 @@ +import { useSwitchChain as useWagmiSwitchChain } from "wagmi"; + +import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; +import { useChainId, useDisconnect } from "~/lib/hooks"; + +const CHAIN_ID_SUI = NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? 101 : 103; + +export function useSwitchChain() { + const { switchChain: switchChainWagmi } = useWagmiSwitchChain(); + const { disconnect } = useDisconnect(); + const currentChainId = useChainId(); + + function switchChain({ chainId }: { chainId: number }) { + const isTargetChainSui = chainId === CHAIN_ID_SUI; + const isCurrentChainSui = currentChainId === CHAIN_ID_SUI; + + if (isTargetChainSui && !isCurrentChainSui) { + disconnect(); + } else if (!isTargetChainSui && isCurrentChainSui) { + disconnect(); + switchChainWagmi({ chainId }); + } else if (!isTargetChainSui && !isCurrentChainSui) { + switchChainWagmi({ chainId }); + } + } + return { + switchChain, + }; +} + +export default useSwitchChain; diff --git a/apps/maestro/src/lib/hooks/useTransactionState.ts b/apps/maestro/src/lib/hooks/useTransactionState.ts index f0c1b60a4..8fd8d6a5f 100644 --- a/apps/maestro/src/lib/hooks/useTransactionState.ts +++ b/apps/maestro/src/lib/hooks/useTransactionState.ts @@ -1,5 +1,6 @@ import { useState } from "react"; +import type { SuiTransactionBlockResponse } from "@mysten/sui/client"; import type { TransactionReceipt } from "viem"; export type UnsubmittedTransactionState = @@ -11,26 +12,29 @@ export type TxType = "INTERCHAIN_DEPLOYMENT" | "INTERCHAIN_TRANSFER"; export type SubmittedTransactionState = | { status: "submitted"; - hash: `0x${string}`; + hash: string; txType?: TxType; chainId: number; isGMP?: boolean; + suiTx?: SuiTransactionBlockResponse; } | { status: "confirmed"; - receipt: TransactionReceipt; - hash?: `0x${string}`; + receipt?: TransactionReceipt; + hash?: string; txType?: TxType; chainId?: number; isGMP?: boolean; + suiTx?: SuiTransactionBlockResponse; } | { status: "reverted"; error: TError; - hash?: `0x${string}`; + hash?: string; txType?: TxType; chainId?: number; isGMP?: boolean; + suiTx?: SuiTransactionBlockResponse; }; export type TransactionState = diff --git a/apps/maestro/src/lib/providers/WagmiConfigPropvider.tsx b/apps/maestro/src/lib/providers/WagmiConfigPropvider.tsx index 794bc697b..e3ecd0592 100644 --- a/apps/maestro/src/lib/providers/WagmiConfigPropvider.tsx +++ b/apps/maestro/src/lib/providers/WagmiConfigPropvider.tsx @@ -1,6 +1,6 @@ import type { FC, PropsWithChildren } from "react"; -import { WagmiConfig } from "wagmi"; +import { WagmiProvider } from "wagmi"; import { wagmiConfig } from "~/config/wagmi"; @@ -8,5 +8,5 @@ export const WagmiConfigPropvider: FC = ({ children }) => { if (!wagmiConfig) { return <>{children}; } - return {children}; + return {children}; }; diff --git a/apps/maestro/src/lib/transactions/handlers.ts b/apps/maestro/src/lib/transactions/handlers.ts index 1b2925737..26a31f1ae 100644 --- a/apps/maestro/src/lib/transactions/handlers.ts +++ b/apps/maestro/src/lib/transactions/handlers.ts @@ -1,12 +1,11 @@ import { toast } from "@axelarjs/ui/toaster"; import { TransactionExecutionError } from "viem"; -import type { WriteContractData } from "wagmi/query"; import { logger } from "~/lib/logger"; type TransactionResultHooks = { - onSuccess?: (tx: WriteContractData) => void; + onSuccess?: (tx: string) => void; onTransactionError?: (error: TransactionExecutionError) => void; onUnknownError?: (error: Error) => void; }; @@ -36,7 +35,7 @@ const DEFAULT_HOOKS: TransactionResultHooks = { * ``` */ export async function handleTransactionResult( - txPromise: Promise, + txPromise: Promise, hooks: TransactionResultHooks ): Promise { const handleSuccess = hooks.onSuccess ?? DEFAULT_HOOKS.onSuccess; diff --git a/apps/maestro/src/lib/utils/bigint.ts b/apps/maestro/src/lib/utils/bigint.ts index 3df17aef0..dd12ad500 100644 --- a/apps/maestro/src/lib/utils/bigint.ts +++ b/apps/maestro/src/lib/utils/bigint.ts @@ -1,7 +1,7 @@ -import { formatEther } from "viem"; +import { formatUnits } from "viem"; -export const toNumericString = (num: bigint) => - Number(formatEther(num)).toLocaleString("en", { +export const toNumericString = (num: bigint, decimals = 18) => + Number(formatUnits(num, decimals)).toLocaleString("en", { minimumFractionDigits: 2, maximumFractionDigits: 4, }); diff --git a/apps/maestro/src/pages/_app.tsx b/apps/maestro/src/pages/_app.tsx index d09c23354..291053a51 100644 --- a/apps/maestro/src/pages/_app.tsx +++ b/apps/maestro/src/pages/_app.tsx @@ -12,9 +12,13 @@ import { ReactQueryDevtools } from "@tanstack/react-query-devtools"; import { WagmiConfigPropvider } from "~/lib/providers/WagmiConfigPropvider"; +import "@mysten/dapp-kit/dist/index.css"; import "~/lib/polyfills"; import "~/styles/globals.css"; +import { SuiClientProvider, WalletProvider } from "@mysten/dapp-kit"; +import { getFullnodeUrl } from "@mysten/sui/client"; + import { NEXT_PUBLIC_GA_MEASUREMENT_ID } from "~/config/env"; import { queryClient as wagmiQueryClient } from "~/config/wagmi"; import { logger } from "~/lib/logger"; @@ -22,6 +26,17 @@ import { trpc } from "~/lib/trpc"; import MainLayout from "~/ui/layouts/MainLayout"; import NProgressBar from "~/ui/layouts/NProgressBar"; +import "@tanstack/react-query"; + +// type NetworkEnv = "mainnet" | "testnet" | "devnet" | "localnet"; + +const networks = { + localnet: { url: getFullnodeUrl("localnet") }, + devnet: { url: getFullnodeUrl("devnet") }, + testnet: { url: getFullnodeUrl("testnet") }, + mainnet: { url: getFullnodeUrl("mainnet") }, +}; + const fontSans = Cabin({ subsets: ["latin"] }); const clashGrotesk = localFont({ src: [ @@ -86,13 +101,24 @@ const App: FC = ({ Component, pageProps }) => { - {!isSSR && ( - - - - )} - - + + + {!isSSR && ( + + + + )} + + + + diff --git a/apps/maestro/src/pages/index.tsx b/apps/maestro/src/pages/index.tsx index 378f8a590..1c024fdcc 100644 --- a/apps/maestro/src/pages/index.tsx +++ b/apps/maestro/src/pages/index.tsx @@ -3,12 +3,11 @@ import { useCallback } from "react"; import dynamic from "next/dynamic"; import { useRouter } from "next/router"; -import { useAccount } from "wagmi"; - import RecentTransactions from "~/features/RecentTransactions"; import SearchInterchainToken, { TokenFoundResult, } from "~/features/SearchInterchainToken"; +import { useAccount } from "~/lib/hooks"; import { ConditionalRenderInterchainBanner } from "~/ui/components/InterchainBanner"; import { useLayoutStateContainer } from "~/ui/layouts/MainLayout"; import Page from "~/ui/layouts/Page"; diff --git a/apps/maestro/src/pages/interchain-tokens/[tokenId]/index.tsx b/apps/maestro/src/pages/interchain-tokens/[tokenId]/index.tsx index 15231d9d8..f2d40143d 100644 --- a/apps/maestro/src/pages/interchain-tokens/[tokenId]/index.tsx +++ b/apps/maestro/src/pages/interchain-tokens/[tokenId]/index.tsx @@ -12,7 +12,8 @@ const TokenDetailsRedirectPage = () => { ); const [errorMessage, setErrorMessage] = useState(""); - const { combinedComputed, isLoading: isLoadingChains } = useAllChainConfigsQuery(); + const { combinedComputed, isLoading: isLoadingChains } = + useAllChainConfigsQuery(); const { tokenId } = router.query; diff --git a/apps/maestro/src/pages/recent-transactions/index.tsx b/apps/maestro/src/pages/recent-transactions/index.tsx index b44e886cf..eaf43de91 100644 --- a/apps/maestro/src/pages/recent-transactions/index.tsx +++ b/apps/maestro/src/pages/recent-transactions/index.tsx @@ -2,14 +2,13 @@ import { Tabs } from "@axelarjs/ui"; import { invert } from "@axelarjs/utils"; import { Suspense } from "react"; -import { useAccount } from "wagmi"; - import { CONTRACT_METHODS_LABELS } from "~/features/RecentTransactions"; import RecentTransactionsTable from "~/features/RecentTransactions/RecentTransactionsTable"; import { CONTRACT_METHODS, ContractMethod, } from "~/features/RecentTransactions/types"; +import { useAccount } from "~/lib/hooks"; import useQueryStringState from "~/lib/hooks/useQueryStringStyate"; import Page from "~/ui/layouts/Page"; diff --git a/apps/maestro/src/server/context.ts b/apps/maestro/src/server/context.ts index cec5a0505..c311eedfb 100644 --- a/apps/maestro/src/server/context.ts +++ b/apps/maestro/src/server/context.ts @@ -49,9 +49,11 @@ const createContextInner = async ({ req, res }: ContextConfig) => { apiKey: process.env.OPENAI_API_KEY, }); - const axelarQueryClient = createAxelarQueryClient(NEXT_PUBLIC_NETWORK_ENV); + const networkEnv = + NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? "mainnet" : "testnet"; - const axelarConfigClient = createAxelarConfigClient(NEXT_PUBLIC_NETWORK_ENV); + const axelarQueryClient = createAxelarQueryClient(networkEnv); + const axelarConfigClient = createAxelarConfigClient(networkEnv); return { req, @@ -99,14 +101,20 @@ const createContextInner = async ({ req, res }: ContextConfig) => { postgres: maestroPostgresClient, }, contracts: { - createERC20Client(chain: Chain, address: `0x${string}`) { - return new IERC20BurnableMintableClient({ chain, address }); + createERC20Client(chain: Chain, address: string) { + return new IERC20BurnableMintableClient({ + chain, + address: address as `0x${string}`, + }); }, createInterchainTokenClient(chain: Chain, address: `0x${string}`) { return new InterchainTokenClient({ chain, address }); }, createTokenManagerClient(chain: Chain, address: string) { - return new TokenManagerClient({ chain, address: address as `0x${string}` }); + return new TokenManagerClient({ + chain, + address: address as `0x${string}`, + }); }, createInterchainTokenServiceClient( chain: Chain, diff --git a/apps/maestro/src/server/routers/_app.ts b/apps/maestro/src/server/routers/_app.ts index 0a17d40a9..afae6fa80 100644 --- a/apps/maestro/src/server/routers/_app.ts +++ b/apps/maestro/src/server/routers/_app.ts @@ -10,6 +10,7 @@ import { gmpRouter } from "./gmp"; import { interchainTokenRouter } from "./interchainToken"; import { messagesRouter } from "./messages"; import { openaiRouter } from "./openai"; +import { suiRouter } from "./sui"; export const appRouter = router({ uptime: publicProcedure.query(() => ({ @@ -25,6 +26,7 @@ export const appRouter = router({ openai: openaiRouter, messages: messagesRouter, accounts: accountsRouter, + sui: suiRouter, }); export type AppRouter = typeof appRouter; diff --git a/apps/maestro/src/server/routers/accounts/setAccountStatus.ts b/apps/maestro/src/server/routers/accounts/setAccountStatus.ts index 589a827ee..3da619c7b 100644 --- a/apps/maestro/src/server/routers/accounts/setAccountStatus.ts +++ b/apps/maestro/src/server/routers/accounts/setAccountStatus.ts @@ -1,10 +1,10 @@ import { z } from "zod"; -import { hex40Literal } from "~/lib/utils/validation"; +import { hex40Literal, hex64Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; const INPUT_SCHEMA = z.object({ - accountAddress: hex40Literal(), + accountAddress: z.union([hex40Literal(), hex64Literal()]), status: z.enum(["enabled", "disabled", "privileged"]), }); diff --git a/apps/maestro/src/server/routers/auth/createSignInMessage.ts b/apps/maestro/src/server/routers/auth/createSignInMessage.ts index b66b63082..59326dd96 100644 --- a/apps/maestro/src/server/routers/auth/createSignInMessage.ts +++ b/apps/maestro/src/server/routers/auth/createSignInMessage.ts @@ -1,7 +1,7 @@ import { z } from "zod"; import { APP_NAME } from "~/config/app"; -import { hex40Literal } from "~/lib/utils/validation"; +import { hex40Literal, hex64Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; export const SIGNIN_MESSAGE = `Sign this message to access ${APP_NAME}.`; @@ -12,7 +12,7 @@ export const getSignInMessage = (nonce: number) => export const createSignInMessage = publicProcedure .input( z.object({ - address: hex40Literal(), + address: z.union([hex40Literal(), hex64Literal()]), }) ) .mutation(async ({ input, ctx }) => { diff --git a/apps/maestro/src/server/routers/axelarscan/getEVMChainConfigs.ts b/apps/maestro/src/server/routers/axelarscan/getEVMChainConfigs.ts index 8d98d0b58..5c983076f 100644 --- a/apps/maestro/src/server/routers/axelarscan/getEVMChainConfigs.ts +++ b/apps/maestro/src/server/routers/axelarscan/getEVMChainConfigs.ts @@ -14,8 +14,9 @@ const evmChainConfigSchema = z.object({ name: z.string(), image: z.string(), color: z.string(), - chain_type: z.literal("evm"), + chain_type: z.string(), no_inflation: z.boolean(), + no_tvl: z.boolean().optional(), endpoints: z.object({ rpc: z.array(z.string()), }), diff --git a/apps/maestro/src/server/routers/erc20/getERC20TokenBalanceForOwner.ts b/apps/maestro/src/server/routers/erc20/getERC20TokenBalanceForOwner.ts index f65516aaa..eff6edcac 100644 --- a/apps/maestro/src/server/routers/erc20/getERC20TokenBalanceForOwner.ts +++ b/apps/maestro/src/server/routers/erc20/getERC20TokenBalanceForOwner.ts @@ -1,8 +1,8 @@ +import { getFullnodeUrl, SuiClient } from "@mysten/sui/client"; import { TRPCError } from "@trpc/server"; import { always } from "rambda"; import { z } from "zod"; -import { hex40Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; export const ROLES_ENUM = ["MINTER", "OPERATOR", "FLOW_LIMITER"] as const; @@ -16,11 +16,71 @@ export const getERC20TokenBalanceForOwner = publicProcedure .input( z.object({ chainId: z.number(), - tokenAddress: hex40Literal(), - owner: hex40Literal(), + tokenAddress: z.string(), + owner: z.string(), }) ) .query(async ({ input, ctx }) => { + // Sui address length is 66 + if (input.tokenAddress?.length === 66) { + let isTokenOwner = false; + + const client = new SuiClient({ url: getFullnodeUrl("testnet") }); // TODO: make this configurable + + // Get the coin type + const modules = await client.getNormalizedMoveModulesByPackage({ + package: input.tokenAddress, + }); + const coinSymbol = Object.keys(modules)[0]; + const coinType = `${input.tokenAddress}::${coinSymbol?.toLowerCase()}::${coinSymbol?.toUpperCase()}`; + // Get the coin balance + const coins = await client.getCoins({ + owner: input.owner, + coinType: coinType, + }); + const balance = coins.data?.[0]?.balance?.toString() ?? "0"; + + // Get the coin metadata + const metadata = await client.getCoinMetadata({ coinType }); + + // Get the token owner + const object = await client.getObject({ + id: input.tokenAddress, + options: { + showOwner: true, + showPreviousTransaction: true, + }, + }); + + if (object?.data?.owner === "Immutable") { + const previousTx = object.data.previousTransaction; + + // Fetch the transaction details to find the sender + const transactionDetails = await client.getTransactionBlock({ + digest: previousTx as string, + options: { showInput: true, showEffects: true }, + }); + isTokenOwner = + transactionDetails.transaction?.data.sender === input.owner; + } + + const result = { + isTokenOwner, + isTokenMinter: isTokenOwner, + tokenBalance: balance, + decimals: metadata?.decimals ?? 0, + isTokenPendingOwner: false, + hasPendingOwner: false, + hasMinterRole: isTokenOwner, + hasOperatorRole: isTokenOwner, + hasFlowLimiterRole: isTokenOwner, // TODO: check if this is correct + }; + return result; + } + // This is for ERC20 tokens + const balanceOwner = input.owner as `0x${string}`; + const tokenAddress = input.tokenAddress as `0x${string}`; + const chainConfig = ctx.configs.wagmiChainConfigs.find( (chain) => chain.id === input.chainId ); @@ -39,7 +99,7 @@ export const getERC20TokenBalanceForOwner = publicProcedure ); const [tokenBalance, decimals, owner, pendingOwner] = await Promise.all([ - client.reads.balanceOf({ account: input.owner }), + client.reads.balanceOf({ account: balanceOwner }), client.reads.decimals(), client.reads.owner().catch(always(null)), client.reads.pendingOwner().catch(always(null)), @@ -47,7 +107,7 @@ export const getERC20TokenBalanceForOwner = publicProcedure const itClient = ctx.contracts.createInterchainTokenClient( chainConfig, - input.tokenAddress + tokenAddress ); const [ @@ -58,31 +118,31 @@ export const getERC20TokenBalanceForOwner = publicProcedure ] = await Promise.all( [ itClient.reads.isMinter({ - addr: input.owner, + addr: balanceOwner, }), itClient.reads.hasRole({ role: getRoleIndex("MINTER"), - account: input.owner, + account: balanceOwner, }), itClient.reads.hasRole({ role: getRoleIndex("OPERATOR"), - account: input.owner, + account: balanceOwner, }), itClient.reads.hasRole({ role: getRoleIndex("FLOW_LIMITER"), - account: input.owner, + account: balanceOwner, }), ].map((p) => p.catch(always(false))) ); - const isTokenOwner = owner === input.owner; + const isTokenOwner = owner === balanceOwner; return { isTokenOwner, isTokenMinter, tokenBalance: tokenBalance.toString(), decimals, - isTokenPendingOwner: pendingOwner === input.owner, + isTokenPendingOwner: pendingOwner === balanceOwner, hasPendingOwner: pendingOwner !== null, hasMinterRole, hasOperatorRole, diff --git a/apps/maestro/src/server/routers/erc20/getERC20TokenDetails.ts b/apps/maestro/src/server/routers/erc20/getERC20TokenDetails.ts index 4779300ad..183dd239d 100644 --- a/apps/maestro/src/server/routers/erc20/getERC20TokenDetails.ts +++ b/apps/maestro/src/server/routers/erc20/getERC20TokenDetails.ts @@ -1,38 +1,94 @@ import type { IERC20BurnableMintableClient } from "@axelarjs/evm"; import { invariant } from "@axelarjs/utils"; +import { getFullnodeUrl, SuiClient } from "@mysten/sui/client"; import { TRPCError } from "@trpc/server"; import { always } from "rambda"; import { z } from "zod"; import { ExtendedWagmiChainConfig } from "~/config/evm-chains"; -import { hex40Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; //TODO: migrate to kv store? -const overrides: Record<`0x${string}`, Record> = { +const overrides: Record> = { "0x4200000000000000000000000000000000000042": { symbol: "axlOP", }, }; +async function getSuiTokenDetails(tokenAddress: string, chainId: number) { + const client = new SuiClient({ url: getFullnodeUrl("testnet") }); // TODO: make this configurable + + const modules = await client.getNormalizedMoveModulesByPackage({ + package: tokenAddress, + }); + const coinSymbol = Object.keys(modules)[0]; + + const coinType = `${tokenAddress}::${coinSymbol?.toLowerCase()}::${coinSymbol?.toUpperCase()}`; + + const metadata = await client.getCoinMetadata({ coinType }); + + // Get the token owner + const object = await client.getObject({ + id: tokenAddress, + options: { + showOwner: true, + showPreviousTransaction: true, + }, + }); + + const previousTx = object?.data?.previousTransaction; + + // Fetch the transaction details to find the sender + const transactionDetails = await client.getTransactionBlock({ + digest: previousTx as string, + options: { showInput: true, showEffects: true }, + }); + const tokenOwner = transactionDetails.transaction?.data.sender; + + if (!metadata) { + throw new TRPCError({ + code: "NOT_FOUND", + message: `Token metadata not found for ${tokenAddress} on chain ${chainId}`, + }); + } + + return { + name: metadata.name, + decimals: metadata.decimals, + owner: tokenOwner, + pendingOwner: null, + chainId: chainId, + chainName: "Sui", + axelarChainId: "sui", + axelarChainName: "sui", + symbol: metadata.symbol, + }; +} + export const getERC20TokenDetails = publicProcedure .input( z.object({ chainId: z.number().optional(), - tokenAddress: hex40Literal(), + tokenAddress: z.string(), }) ) .query(async ({ input, ctx }) => { + // Enter here if the token is a Sui token + if (input.tokenAddress.length === 66) { + return await getSuiTokenDetails( + input.tokenAddress, + input.chainId as number + ); + } try { const { wagmiChainConfigs: chainConfigs } = ctx.configs; - const chainConfig = chainConfigs.find( (chain) => chain.id === input.chainId ); if (!chainConfig) { - const promises = chainConfigs.map((config) => { + const promises = chainConfigs.map(async (config) => { const client = ctx.contracts.createERC20Client( config, input.tokenAddress @@ -97,7 +153,7 @@ export const getERC20TokenDetails = publicProcedure async function getTokenPublicDetails( client: IERC20BurnableMintableClient, chainConfig: ExtendedWagmiChainConfig, - tokenAddress: `0x${string}` + tokenAddress: string ) { invariant(client.chain, "client.chain must be defined"); diff --git a/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments.ts b/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments.ts index 83fd61949..102ea684b 100644 --- a/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments.ts +++ b/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments.ts @@ -1,7 +1,8 @@ const deployPayload = { method: "searchGMP", size: 25000, - destinationContractAddress: "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C", + destinationContractAddress: process.env + .NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS as `0x${string}`, contractMethod: "InterchainTokenDeploymentStarted,TokenManagerDeploymentStarted", _source: { diff --git a/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments_hourly.ts b/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments_hourly.ts index 01ae834b7..a09e534ed 100644 --- a/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments_hourly.ts +++ b/apps/maestro/src/server/routers/gmp/data/reference_scripts/deployments_hourly.ts @@ -1,7 +1,8 @@ const deployPayload = { method: "searchGMP", size: 25000, - destinationContractAddress: "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C", + destinationContractAddress: process.env + .NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS as `0x${string}`, contractMethod: "InterchainTokenDeploymentStarted,TokenManagerDeploymentStarted", _source: { diff --git a/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers.ts b/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers.ts index a27197ea1..2878dd335 100644 --- a/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers.ts +++ b/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers.ts @@ -1,7 +1,8 @@ const payload = { method: "searchGMP", size: 25000, - destinationContractAddress: "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C", + destinationContractAddress: process.env + .NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS as `0x${string}`, contractMethod: "InterchainTransfer", _source: { includes: [ diff --git a/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers_hourly.ts b/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers_hourly.ts index c43fe628f..c620a4651 100644 --- a/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers_hourly.ts +++ b/apps/maestro/src/server/routers/gmp/data/reference_scripts/transfers_hourly.ts @@ -1,7 +1,8 @@ const payload = { method: "searchGMP", size: 25000, - destinationContractAddress: "0xB5FB4BE02232B1bBA4dC8f81dc24C26980dE9e3C", + destinationContractAddress: process.env + .NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS as `0x${string}`, contractMethod: "InterchainTransfer", _source: { includes: [ diff --git a/apps/maestro/src/server/routers/gmp/getRecentTransactions.ts b/apps/maestro/src/server/routers/gmp/getRecentTransactions.ts index 21769768b..ef290cb65 100644 --- a/apps/maestro/src/server/routers/gmp/getRecentTransactions.ts +++ b/apps/maestro/src/server/routers/gmp/getRecentTransactions.ts @@ -5,13 +5,13 @@ import { uniqBy } from "rambda"; import { z } from "zod"; import { NEXT_PUBLIC_INTERCHAIN_TOKEN_SERVICE_ADDRESS } from "~/config/env"; -import { hex40Literal } from "~/lib/utils/validation"; +import { hex40Literal, hex64Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; const INPUT_SCHEMA = z.object({ pageSize: z.number().optional().default(20), page: z.number().optional().default(0), - senderAddress: hex40Literal().optional(), + senderAddress: z.union([hex40Literal(), hex64Literal()]).optional(), contractMethod: z.union([ z.literal("InterchainTransfer"), z.literal("InterchainTokenDeploymentStarted"), diff --git a/apps/maestro/src/server/routers/gmp/getTopTransactions.ts b/apps/maestro/src/server/routers/gmp/getTopTransactions.ts index 9fc3cd7e6..5277bcca3 100644 --- a/apps/maestro/src/server/routers/gmp/getTopTransactions.ts +++ b/apps/maestro/src/server/routers/gmp/getTopTransactions.ts @@ -116,20 +116,23 @@ export const getTopTransactions = publicProcedure ); const filtered = Object.entries(grouped).filter( - ([, txs]) => txs && txs.length >= input.minTxCount + ([, txs]) => (txs?.length || 0) >= input.minTxCount ); - const results = (filtered as [string, any[]][]) - .map(([tokenId, [tx, ...txs]]) => { - const transfer = tx.interchain_transfer; + const results = filtered + .map(([tokenId, transactions]) => { + const tx = transactions?.[0]; + const txs = transactions?.slice(1); + + const transfer = tx?.interchain_transfer; return { tokenId: tokenId as `0x${string}`, name: transfer?.name ?? "", symbol: transfer?.symbol ?? "", address: transfer?.contract_address ?? ("" as `0x${string}`), - count: txs.length + 1, - txIds: txs.map((tx) => tx.call.transactionHash), + count: (txs?.length || 0) + 1, + txIds: txs?.map((tx) => tx.call.transactionHash), }; }) .sort((a, b) => b.count - a.count) diff --git a/apps/maestro/src/server/routers/gmp/getTransactionStatusOnDestinationChains.ts b/apps/maestro/src/server/routers/gmp/getTransactionStatusOnDestinationChains.ts index 04f5ff2d4..b88ce3971 100644 --- a/apps/maestro/src/server/routers/gmp/getTransactionStatusOnDestinationChains.ts +++ b/apps/maestro/src/server/routers/gmp/getTransactionStatusOnDestinationChains.ts @@ -3,7 +3,6 @@ import type { GMPTxStatus } from "@axelarjs/api/gmp"; import { TRPCError } from "@trpc/server"; import { z } from "zod"; -import { hex64Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; export const SEARCHGMP_SOURCE = { @@ -38,7 +37,7 @@ export const SEARCHGMP_SOURCE = { }; const INPUT_SCHEMA = z.object({ - txHash: hex64Literal(), + txHash: z.string(), }); /** @@ -57,7 +56,9 @@ export const getTransactionStatusOnDestinationChains = publicProcedure const result = data.reduce( (acc, gmpData) => { const { call, status } = gmpData; - const destinationChain = gmpData.callback?.returnValues.destinationChain.toLowerCase() || call.returnValues.destinationChain.toLowerCase(); + const destinationChain = + gmpData.callback?.returnValues.destinationChain.toLowerCase() || + call.returnValues.destinationChain.toLowerCase(); return { ...acc, [destinationChain]: { @@ -71,7 +72,7 @@ export const getTransactionStatusOnDestinationChains = publicProcedure {} as { [chainId: string]: { status: GMPTxStatus; - txHash: `0x${string}`; + txHash: string; txId: string; logIndex: number; }; diff --git a/apps/maestro/src/server/routers/interchainToken/getInterchainTokenDetails.ts b/apps/maestro/src/server/routers/interchainToken/getInterchainTokenDetails.ts index e2017a236..cce3779d0 100644 --- a/apps/maestro/src/server/routers/interchainToken/getInterchainTokenDetails.ts +++ b/apps/maestro/src/server/routers/interchainToken/getInterchainTokenDetails.ts @@ -2,19 +2,15 @@ import { TRPCError } from "@trpc/server"; import { z } from "zod"; import { TOKEN_MANAGER_TYPES } from "~/lib/drizzle/schema/common"; -import { - hex0xLiteral, - hex40Literal, - hex64Literal, -} from "~/lib/utils/validation"; +import { hex0xLiteral, hex64Literal } from "~/lib/utils/validation"; import { publicProcedure } from "~/server/trpc"; const remoteTokenSchema = z.object({ id: z.string(), tokenId: z.string(), axelarChainId: z.string(), - tokenAddress: hex40Literal(), - tokenManagerAddress: hex40Literal().nullable(), + tokenAddress: z.string(), + tokenManagerAddress: z.string().nullable(), tokenManagerType: z.enum(TOKEN_MANAGER_TYPES).nullable(), deploymentMessageId: z.string(), deploymentStatus: z.string().nullable(), @@ -24,21 +20,21 @@ const remoteTokenSchema = z.object({ export const inputSchema = z.object({ chainId: z.number(), - tokenAddress: hex40Literal(), + tokenAddress: z.string(), }); const outputSchema = z.object({ tokenId: z.string(), - tokenAddress: hex40Literal(), + tokenAddress: z.string(), axelarChainId: z.string(), tokenName: z.string(), tokenSymbol: z.string(), tokenDecimals: z.number(), deploymentMessageId: z.string(), - deployerAddress: hex40Literal(), - tokenManagerAddress: hex40Literal().nullable(), + deployerAddress: z.string(), + tokenManagerAddress: z.string().nullable(), tokenManagerType: z.enum(TOKEN_MANAGER_TYPES).nullable(), - originalMinterAddress: hex40Literal().nullable(), + originalMinterAddress: z.string().nullable(), kind: z.string(), createdAt: z.date().nullable(), updatedAt: z.date().nullable(), @@ -69,16 +65,18 @@ export const getInterchainTokenDetails = publicProcedure // Combine chains and look for config const configs = evmChains[input.chainId] || vmChains[input.chainId]; - if (!configs) { - throw new TRPCError({ - code: "NOT_FOUND", - message: `Chain configuration not found for chain ID ${input.chainId}`, - }); - } + // TODO: remove this once we have sui in the chains object + const axelarChainId = input.chainId === 103 ? "sui" : configs.info.id; + // if (!configs) { + // throw new TRPCError({ + // code: "NOT_FOUND", + // message: `Chain configuration not found for chain ID ${input.chainId}`, + // }); + // } const tokenRecord = await ctx.persistence.postgres.getInterchainTokenByChainIdAndTokenAddress( - configs.info.id, + axelarChainId, input.tokenAddress ); diff --git a/apps/maestro/src/server/routers/interchainToken/getInterchainTokenRolesForAccount.ts b/apps/maestro/src/server/routers/interchainToken/getInterchainTokenRolesForAccount.ts index bc354f921..4f21e79f6 100644 --- a/apps/maestro/src/server/routers/interchainToken/getInterchainTokenRolesForAccount.ts +++ b/apps/maestro/src/server/routers/interchainToken/getInterchainTokenRolesForAccount.ts @@ -33,7 +33,9 @@ export const getInterchainTokenRolesForAccount = publicProcedure ]); // Try to find config in either chain type - const configs = evmChains[tokenDetails.axelarChainId] || vmChains[tokenDetails.axelarChainId]; + const configs = + evmChains[tokenDetails.axelarChainId] || + vmChains[tokenDetails.axelarChainId]; if (!configs) { return { @@ -81,8 +83,6 @@ export const getInterchainTokenRolesForAccount = publicProcedure tokenManager: tokenManagerRoles .filter(([, hasRole]) => hasRole) .map(([role]) => role), - token: tokenRoles - .filter(([, hasRole]) => hasRole) - .map(([role]) => role), + token: tokenRoles.filter(([, hasRole]) => hasRole).map(([role]) => role), }; }); diff --git a/apps/maestro/src/server/routers/interchainToken/getMyInterchainTokens.ts b/apps/maestro/src/server/routers/interchainToken/getMyInterchainTokens.ts index 3e5242c05..fa8b0ae26 100644 --- a/apps/maestro/src/server/routers/interchainToken/getMyInterchainTokens.ts +++ b/apps/maestro/src/server/routers/interchainToken/getMyInterchainTokens.ts @@ -2,14 +2,13 @@ import { invariant } from "@axelarjs/utils"; import { z } from "zod"; -import { hex40Literal } from "~/lib/utils/validation"; import { protectedProcedure } from "~/server/trpc"; export const getMyInterchainTokens = protectedProcedure .input( z.object({ // only for cache invalidation on account change - sessionAddress: hex40Literal(), + sessionAddress: z.string(), // pagination limit: z.number().optional().default(10), offset: z.number().optional().default(0), diff --git a/apps/maestro/src/server/routers/interchainToken/recordInterchainTokenDeployment.ts b/apps/maestro/src/server/routers/interchainToken/recordInterchainTokenDeployment.ts index 4563b52e1..8fe92746c 100644 --- a/apps/maestro/src/server/routers/interchainToken/recordInterchainTokenDeployment.ts +++ b/apps/maestro/src/server/routers/interchainToken/recordInterchainTokenDeployment.ts @@ -10,13 +10,9 @@ import { type NewRemoteInterchainTokenInput, } from "~/services/db/postgres"; -const recordInterchainTokenDeploymentInput = newInterchainTokenSchema - .extend({ - destinationAxelarChainIds: z.array(z.string()), - }) - .omit({ - tokenManagerAddress: true, - }); +const recordInterchainTokenDeploymentInput = newInterchainTokenSchema.extend({ + destinationAxelarChainIds: z.array(z.string()), +}); export type RecordInterchainTokenDeploymentInput = z.infer< typeof recordInterchainTokenDeploymentInput @@ -26,50 +22,60 @@ export const recordInterchainTokenDeployment = protectedProcedure .input(recordInterchainTokenDeploymentInput) .mutation(async ({ ctx, input }) => { invariant(ctx.session?.address, "ctx.session.address is required"); + let tokenManagerAddress; + let tokenManagerType; + + if (input.axelarChainId !== "sui") { + const evmChains = await ctx.configs.evmChains(); + const vmChains = await ctx.configs.vmChains(); + const configs = + evmChains[input.axelarChainId] || vmChains[input.axelarChainId]; + + invariant( + configs, + `No configuration found for chain ${input.axelarChainId}` + ); - const evmChains = await ctx.configs.evmChains(); - const vmChains = await ctx.configs.vmChains(); - const configs = - evmChains[input.axelarChainId] || vmChains[input.axelarChainId]; - - invariant( - configs, - `No configuration found for chain ${input.axelarChainId}` - ); - - // Handle different chain types - const createServiceClient = () => { - return ctx.contracts.createInterchainTokenServiceClient(configs.wagmi); - }; + // Handle different chain types + const createServiceClient = () => { + return ctx.contracts.createInterchainTokenServiceClient(configs.wagmi); + }; - const originChainServiceClient = createServiceClient(); + const originChainServiceClient = createServiceClient(); - const tokenManagerAddress = (await originChainServiceClient.reads - .tokenManagerAddress({ - tokenId: input.tokenId as `0x${string}`, - }) - .catch(() => null)) as `0x${string}`; + const tokenManagerAddress = (await originChainServiceClient.reads + .tokenManagerAddress({ + tokenId: input.tokenId as `0x${string}`, + }) + .catch(() => null)) as `0x${string}`; - const createTokenManagerClient = (address: string) => { - return ctx.contracts.createTokenManagerClient(configs.wagmi, address); - }; + const createTokenManagerClient = (address: string) => { + return ctx.contracts.createTokenManagerClient(configs.wagmi, address); + }; - const tokenManagerClient = !tokenManagerAddress - ? null - : createTokenManagerClient(tokenManagerAddress); + const tokenManagerClient = !tokenManagerAddress + ? null + : createTokenManagerClient(tokenManagerAddress); - const tokenManagerTypeCode = !tokenManagerClient - ? null - : await tokenManagerClient.reads.implementationType().catch(() => null); + const tokenManagerTypeCode = !tokenManagerClient + ? null + : await tokenManagerClient.reads.implementationType().catch(() => null); - const tokenManagerType = Maybe.of(tokenManagerTypeCode).mapOr( - input.kind === "canonical" ? "lock_unlock" : "mint_burn", - (value) => getTokenManagerTypeFromBigInt(value as bigint) - ); + tokenManagerType = Maybe.of(tokenManagerTypeCode).mapOr( + // default to mint_burn for interchain tokens + // and lock_unlock for canonical tokens + input.kind === "canonical" ? "lock_unlock" : "mint_burn", + (value) => getTokenManagerTypeFromBigInt(value as bigint) + ); + } else { + // TODO: verify this info on chain + tokenManagerAddress = input.tokenManagerAddress; + tokenManagerType = input.tokenManagerType; + } await ctx.persistence.postgres.recordInterchainTokenDeployment({ ...input, - tokenManagerAddress: tokenManagerAddress, + tokenManagerAddress: tokenManagerAddress as string, tokenManagerType, }); @@ -114,23 +120,30 @@ export const recordInterchainTokenDeployment = protectedProcedure chainConfig.wagmi, `No wagmi configuration found for chain ${axelarChainId}` ); - - const itsClient = ctx.contracts.createInterchainTokenServiceClient( - chainConfig.wagmi - ); - - const [tokenManagerAddress, tokenAddress] = await Promise.all([ - itsClient.reads - .tokenManagerAddress({ - tokenId: input.tokenId as `0x${string}`, - }) - .catch(always("0x")), - itsClient.reads - .interchainTokenAddress({ - tokenId: input.tokenId as `0x${string}`, - }) - .catch(always("0x")), - ]); + let tokenAddress; + let tokenManagerAddress; + + if (axelarChainId !== "sui") { + const itsClient = ctx.contracts.createInterchainTokenServiceClient( + chainConfig.wagmi + ); + + [tokenManagerAddress, tokenAddress] = await Promise.all([ + itsClient.reads + .tokenManagerAddress({ + tokenId: input.tokenId as `0x${string}`, + }) + .catch(always("0x")), + itsClient.reads + .interchainTokenAddress({ + tokenId: input.tokenId as `0x${string}`, + }) + .catch(always("0x")), + ]); + } else { + tokenAddress = input.tokenAddress; + tokenManagerAddress = input.tokenManagerAddress; + } return { tokenAddress, diff --git a/apps/maestro/src/server/routers/interchainToken/recordRemoteTokensDeployment.ts b/apps/maestro/src/server/routers/interchainToken/recordRemoteTokensDeployment.ts index ed4e1ba40..8468a7a58 100644 --- a/apps/maestro/src/server/routers/interchainToken/recordRemoteTokensDeployment.ts +++ b/apps/maestro/src/server/routers/interchainToken/recordRemoteTokensDeployment.ts @@ -81,7 +81,9 @@ export const recordRemoteTokensDeployment = protectedProcedure } // Create appropriate client based on chain type - const itsClient = ctx.contracts.createInterchainTokenServiceClient(remoteConfig.wagmi); + const itsClient = ctx.contracts.createInterchainTokenServiceClient( + remoteConfig.wagmi + ); if (!itsClient) { throw new TRPCError({ diff --git a/apps/maestro/src/server/routers/interchainToken/searchInterchainToken.ts b/apps/maestro/src/server/routers/interchainToken/searchInterchainToken.ts index 7ae55dca5..b68c45832 100644 --- a/apps/maestro/src/server/routers/interchainToken/searchInterchainToken.ts +++ b/apps/maestro/src/server/routers/interchainToken/searchInterchainToken.ts @@ -7,7 +7,7 @@ import { z } from "zod"; import type { ExtendedWagmiChainConfig } from "~/config/wagmi"; import { InterchainToken, RemoteInterchainToken } from "~/lib/drizzle/schema"; import { TOKEN_MANAGER_TYPES } from "~/lib/drizzle/schema/common"; -import { hex40Literal, hexLiteral } from "~/lib/utils/validation"; +import { hexLiteral } from "~/lib/utils/validation"; import type { Context } from "~/server/context"; import { publicProcedure } from "~/server/trpc"; @@ -17,8 +17,8 @@ const tokenDetailsSchema = z.object({ axelarChainId: z.string(), // nullable fields tokenId: hexLiteral().nullable(), - tokenAddress: hex40Literal().nullable(), - tokenManagerAddress: hex40Literal().optional().nullable(), + tokenAddress: z.string().nullable(), + tokenManagerAddress: z.string().optional().nullable(), tokenManagerType: z.enum(TOKEN_MANAGER_TYPES).nullable(), isOriginToken: z.boolean().nullable(), isRegistered: z.boolean(), @@ -27,7 +27,7 @@ const tokenDetailsSchema = z.object({ export const inputSchema = z.object({ chainId: z.number().optional(), - tokenAddress: hex40Literal(), + tokenAddress: z.string(), strict: z.boolean().optional(), }); @@ -189,7 +189,7 @@ async function getInterchainToken( } const isRegistered = await itsClient.reads - .registeredTokenAddress({ + .interchainTokenAddress({ tokenId: tokenDetails.tokenId as `0x${string}`, }) .then(() => true) @@ -273,10 +273,10 @@ async function getInterchainToken( */ async function scanChains( chainConfigs: ExtendedWagmiChainConfig[], - tokenAddress: `0x${string}`, + tokenAddress: string, ctx: Context ) { - const promises = chainConfigs.map((chainConfig) => { + const promises = chainConfigs.map(async (chainConfig) => { return getTokenDetails(chainConfig, tokenAddress, ctx) .then((tokenDetails) => { if (tokenDetails) { @@ -307,7 +307,7 @@ async function scanChains( async function getTokenDetails( chainConfig: ExtendedWagmiChainConfig, - tokenAddress: `0x${string}`, + tokenAddress: string, ctx: Context ) { const tokenDetails = diff --git a/apps/maestro/src/server/routers/sui/config/devnet-amplifier.json b/apps/maestro/src/server/routers/sui/config/devnet-amplifier.json new file mode 100644 index 000000000..efa92044d --- /dev/null +++ b/apps/maestro/src/server/routers/sui/config/devnet-amplifier.json @@ -0,0 +1,74 @@ +{ + "sui": { + "name": "Sui", + "axelarId": "sui", + "networkType": "testnet", + "rpc": "https://sui-testnet-rpc.publicnode.com:443", + "tokenSymbol": "SUI", + "explorer": { + "name": "Suiscan", + "url": "https://suiscan.xyz/testnet" + }, + "contracts": { + "AxelarGateway": { + "address": "0x936c1f0714a06fac58edc57bb95276bb0ad1e6ae930e5c232fdfec4a18f65818", + "objects": { + "Gateway": "0xf9eee074e8de1c3b4e12e0d3cdda33b7c41f0047756eaafc68224b1303e81a9b", + "UpgradeCap": "0x7137b2f35ef71bac778fe6be0c0a641f30659289473abe28c2fac2374f77f060", + "Gatewayv0": "0xa042055976ebcf01930c33f304a83bc0795c0f5c7b6c4056d2ca35a42dd8909a" + }, + "domainSeparator": "0x8a4b7c0ae3e02feb8a34711648ee44a4c9fc56ac90b41b74619a75e75de13c37", + "operator": "0x1471a8acf730a05a7d720e52c7ef94024c7351502c83b80da5583db2f6b0b8df", + "minimumRotationDelay": 0 + }, + "Utils": { + "address": "0xd937e31b88f0c35c65210e5a38b8222044bf0624227a220c0ee5ec48f86aa8e0" + }, + "VersionControl": { + "address": "0x1faa10c04e3ccdd0c5f1dbe43a63704be46f00903032d44b4eb4b87c16a18276" + }, + "RelayerDiscovery": { + "address": "0x4075fefb4216afcdeef604aa9880830720316156025c9addcb6b04a3f4a4c00c", + "objects": { + "RelayerDiscovery": "0x0fdaeba8d37107f0b637a363f4779683cd2b6232966acc197ccb88e212886d3b", + "RelayerDiscoveryv0": "0x952a1cb19ad86c75466b10375a81d9773a52b74b4cf97fff8ee2380ba4b490a0" + } + }, + "GasService": { + "address": "0xef105cb526865ac558c3ee5e0ef6b63cffb730b4a784bca8ff40dcba66576ca8", + "objects": { + "GasCollectorCap": "0xa2e9b881c62decb65bd8b783f1e8ef9523babbd7914142b33f7889e7c201fa96", + "GasService": "0xc4b2024a3a51c0f9f15a617efd81ddfab8c36c0b707027e6707cfc9cf0741d29", + "GasServicev0": "0x37b4b94650db69763d7449f48eb68bc5e8e335a5b7c89d308d0ddc1ab6024033" + } + }, + "Abi": { + "address": "0xeac9d24da6b5be005ca01577b0fb4dd756e44d45ad105c33a914e0e2b3b03138" + }, + "ITS": { + "address": "0x6c3d772d81c8ef130de111de4c8c4172856b6056aa3949ff26d89fe3035b64bd", + "objects": { + "ITS": "0x83be4eb9b623ec0d9433cca2cebf30a9fde5935d9cd579f19a3e08b89603cfe7", + "ITSv0": "0x0d89aca2ad447b16f7f35ec8c47561dc00126f1f6699c851b49f44b432d8e00e", + "ChannelId": "0x13bc8c2b3fda3a0a3ca30c4d518f47eff9d523c73b792a2fcf3064ae9f3902bc", + "OwnerCap": "0x2dd1c932d894d5416d373474b58fe7f0d0bae2932220784657f3f7b2f95de4b3" + }, + "trustedAddresses": { + "axelar": [ + "axelar10jzzmv5m7da7dn2xsfac0yqe7zamy34uedx3e28laq0p6f3f8dzqp649fp", + "axelar157hl7gpuknjmhtac2qnphuazv2yerfagva7lsu9vuj2pgn32z22qa26dk4" + ] + } + }, + "Example": { + "address": "0xdafe98f7add273eba84ef4d052535da2e264459845b19a9a1aa7d0801e75e177", + "objects": { + "GmpSingleton": "0x333bb32e97745c4cb93761834d6b7c18142b96f5d77985a0cfaf90f966d41d14", + "GmpChannelId": "0xb21972e89645ac75909afff39d18e32e3691951f1b1b1645e526bc6b902efc87", + "ItsSingleton": "0xf6c5a78b45dbf65d7c57b41fcdf47b04967c88c2844a1f7b4a366f4be0fa7860", + "ItsChannelId": "0x8bd7f12ccc0e1b97cf0cfaf4c1630200541acdad6e7eeabf0ec9c43290f494d0" + } + } + } + } +} diff --git a/apps/maestro/src/server/routers/sui/index.ts b/apps/maestro/src/server/routers/sui/index.ts new file mode 100644 index 000000000..6439ba705 --- /dev/null +++ b/apps/maestro/src/server/routers/sui/index.ts @@ -0,0 +1,197 @@ +import { SUI_PACKAGE_ID, TxBuilder } from "@axelar-network/axelar-cgp-sui"; +import { SuiClient } from "@mysten/sui/client"; +import { z } from "zod"; + +import { publicProcedure, router } from "~/server/trpc"; +import config from "./config/devnet-amplifier.json"; +import { buildTx } from "./utils/utils"; + +// Initialize SuiClient directly with RPC from config +const suiClient = new SuiClient({ + url: config["sui"].rpc, +}); + +const suiServiceBaseUrl = "https://melted-fayth-nptytn-57e5d396.koyeb.app"; + +export const suiRouter = router({ + getDeployTokenTxBytes: publicProcedure + .input( + z.object({ + symbol: z.string(), + name: z.string(), + decimals: z.number(), + skipRegister: z.boolean().optional(), + walletAddress: z.string(), + }) + ) + .mutation(async ({ input }) => { + try { + const { symbol, name, decimals, walletAddress } = input; + // TODO: create a service client if we plan to keep this + const response = await fetch(`${suiServiceBaseUrl}/deploy-token`, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + sender: walletAddress, + name, + symbol, + decimals, + }), + }); + + if (!response.ok) { + throw new Error( + `Deploy token request failed: ${response.statusText}` + ); + } + + const respJSON = await response.json(); + + const txBytes = respJSON.data.txBytes; + + return txBytes; + } catch (error) { + console.error("Failed to prepare token deployment:", error); + throw new Error( + `Token deployment preparation failed: ${(error as Error).message}` + ); + } + }), + + getRegisterAndDeployTokenTx: publicProcedure + .input( + z.object({ + sender: z.string(), + symbol: z.string(), + destinationChains: z.array(z.string()), + tokenPackageId: z.string(), + metadataId: z.string(), + }) + ) + .mutation(async ({ input }) => { + try { + //TODO: use chain config from ui + const response = await fetch( + `${suiServiceBaseUrl}/chain/devnet-amplifier` + ); + const _chainConfig = await response.json(); + const chainConfig = _chainConfig.chains.sui; + const { + sender, + symbol, + tokenPackageId, + metadataId, + destinationChains, + } = input; + + const tokenType = `${tokenPackageId}::${symbol.toLowerCase()}::${symbol.toUpperCase()}`; + + const txBuilder = new TxBuilder(suiClient); + + txBuilder.tx.setSenderIfNotSet(sender); + const examplePackageId = chainConfig.contracts.Example.address; + const feeUnitAmount = 5e7; + const ITS = chainConfig.contracts.ITS; + const Example = chainConfig.contracts.Example; + const AxelarGateway = chainConfig.contracts.AxelarGateway; + const GasService = chainConfig.contracts.GasService; + + const itsObjectId = ITS.objects.ITS; + + // const trustedDestinationChains = Object.keys(ITS.trustedAddresses); + // for (const destinationChain of destinationChains) { + // if (!trustedDestinationChains.includes(destinationChain)) { + // console.log(`destination chain ${destinationChain} not trusted`); + // return undefined; + // } + // } + + const coinMetadata = await suiClient.getCoinMetadata({ + coinType: tokenType, + }); + + if (!coinMetadata) { + return undefined; + } + + // TODO: handle register type properly, whether it's mint/burn or lock/unlock. + await txBuilder.moveCall({ + target: `${examplePackageId}::its::register_coin`, + typeArguments: [tokenType], + arguments: [itsObjectId, metadataId], + }); + + for (const destinationChain of destinationChains) { + const [TokenId] = await txBuilder.moveCall({ + target: `${ITS.address}::token_id::from_info`, + typeArguments: [tokenType], + arguments: [ + coinMetadata.name, + coinMetadata.symbol, + txBuilder.tx.pure.u8(coinMetadata.decimals), + txBuilder.tx.pure.bool(false), + txBuilder.tx.pure.bool(false), + ], + }); + + const gas = txBuilder.tx.splitCoins(txBuilder.tx.gas, [ + feeUnitAmount, + ]); + + await txBuilder.moveCall({ + target: `${Example.address}::its::deploy_remote_interchain_token`, + arguments: [ + ITS.objects.ITS, + AxelarGateway.objects.Gateway, + GasService.objects.GasService, + destinationChain, + TokenId, + gas, + "0x", + sender, + ], + typeArguments: [tokenType], + }); + } + + const tx = await buildTx(sender, txBuilder); + const txJSON = await tx.toJSON(); + return txJSON; + } catch (error) { + console.error("Failed to finalize deployment:", error); + throw new Error( + `Deployment finalization failed: ${(error as Error).message}` + ); + } + }), + + getMintTx: publicProcedure + .input( + z.object({ + sender: z.string(), + tokenTreasuryCap: z.string(), + amount: z.bigint(), + tokenPackageId: z.string(), + symbol: z.string(), + }) + ) + .mutation(async ({ input }) => { + const { sender, tokenTreasuryCap, amount, tokenPackageId, symbol } = + input; + const tokenType = `${tokenPackageId}::${symbol.toLowerCase()}::${symbol.toUpperCase()}`; + + const txBuilder = new TxBuilder(suiClient); + const [coin] = await txBuilder.moveCall({ + target: `${SUI_PACKAGE_ID}::coin::mint`, + typeArguments: [tokenType], + arguments: [tokenTreasuryCap, amount.toString()], + }); + txBuilder.tx.transferObjects([coin], txBuilder.tx.pure.address(sender)); + + const tx = await buildTx(sender, txBuilder); + const txJSON = await tx.toJSON(); + return txJSON; + }), +}); diff --git a/apps/maestro/src/server/routers/sui/utils/utils.ts b/apps/maestro/src/server/routers/sui/utils/utils.ts new file mode 100644 index 000000000..c9f05c481 --- /dev/null +++ b/apps/maestro/src/server/routers/sui/utils/utils.ts @@ -0,0 +1,38 @@ +import { TxBuilder } from "@axelar-network/axelar-cgp-sui"; +import { SuiObjectChange } from "@mysten/sui/client"; +import { Transaction } from "@mysten/sui/transactions"; + +export const findPublishedObject = (objectChanges: SuiObjectChange[]) => { + return objectChanges.find((change) => change.type === "published"); +}; + +export const getObjectIdsByObjectTypes = ( + objectChanges: SuiObjectChange[], + objectTypes: string[] +) => { + return objectTypes.map((objectType) => { + const createdObjects = objectChanges.filter( + (change) => change.type === "created" + ); + + const objectId = createdObjects.find((change) => + change.objectType?.includes(objectType) + )?.objectId; + + if (!objectId) { + throw new Error(`No object found for type: ${objectType}`); + } + + return objectId; + }); +}; + +export async function buildTx(walletAddress: string, txBuilder: TxBuilder) { + txBuilder.tx.setSender(walletAddress); + + const txBytes = await txBuilder.tx.build({ + client: txBuilder.client, + }); + + return Transaction.from(txBytes); +} diff --git a/apps/maestro/src/server/utils.ts b/apps/maestro/src/server/utils.ts index 4fb257ccf..b16ec7370 100644 --- a/apps/maestro/src/server/utils.ts +++ b/apps/maestro/src/server/utils.ts @@ -45,7 +45,8 @@ export async function vmChains( const chainConfigs = await axelarscanClient.getChainConfigs(); // Add flow config to the list of eligible chains - const vmChainsMap = chainConfigs.vm.reduce((acc, chain) => { + const vmChainsMap = chainConfigs.vm.reduce( + (acc, chain) => { const wagmiConfig = WAGMI_CHAIN_CONFIGS.find( (config) => config.id === chain.chain_id ); @@ -92,7 +93,9 @@ export async function evmChains( const configuredIDs = WAGMI_CHAIN_CONFIGS.map((chain) => chain.id); - const eligibleChains = chainConfigs.evm.filter((chain) => configuredIDs.includes(chain.chain_id)); + const eligibleChains = chainConfigs.evm.filter((chain) => + configuredIDs.includes(chain.chain_id) + ); // Add flow config to the list of eligible chains const evmChainsMap = eligibleChains.reduce( @@ -109,6 +112,11 @@ export async function evmChains( wagmi: wagmiConfig, }; + // TODO: remove this once we have ITS hub on testnet + if (NEXT_PUBLIC_NETWORK_ENV === "devnet-amplifier") { + entry.info.id = wagmiConfig.axelarChainId; + } + return { ...acc, [chain.id]: entry, @@ -144,7 +152,7 @@ export async function axelarConfigs( } const chainConfigs = await axelarConfigClient.getAxelarConfigs( - NEXT_PUBLIC_NETWORK_ENV + NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? "mainnet" : "testnet" ); // cache for 1 hour diff --git a/apps/maestro/src/services/axelarjsSDK/index.ts b/apps/maestro/src/services/axelarjsSDK/index.ts index 758fc3b42..9e9b96a74 100644 --- a/apps/maestro/src/services/axelarjsSDK/index.ts +++ b/apps/maestro/src/services/axelarjsSDK/index.ts @@ -16,24 +16,24 @@ export const client = new AxelarQueryAPI({ }); async function estimateGasFee(params: EstimateGasFeeInput): Promise { - const response = await client.estimateGasFee( - params.sourceChainId, - params.destinationChainId, - params.gasLimit, - params.gasMultiplier, - params.sourceChainTokenSymbol, - params.minGasPrice, - params.executeData as `0x${string}` | undefined - ); + const hopParams = [ + { + ...params, + sourceChain: params.sourceChainId, + destinationChain: "axelar", + gasLimit: params.gasLimit.toString(), + }, + { + ...params, + sourceChain: "axelar", + destinationChain: params.destinationChainId, + gasLimit: params.gasLimit.toString(), + }, + ]; - const rawFee = - typeof response === "string" - ? response - : response.baseFee + - response.l1ExecutionFeeWithMultiplier + - response.executionFeeWithMultiplier; + const fee = await client.estimateMultihopFee(hopParams); - return BigInt(rawFee); + return BigInt(fee as string); } async function estimateGasFeeMultipleChains( diff --git a/apps/maestro/src/services/axelarscan/hooks.ts b/apps/maestro/src/services/axelarscan/hooks.ts index aeb9fd7de..17e3ba6db 100644 --- a/apps/maestro/src/services/axelarscan/hooks.ts +++ b/apps/maestro/src/services/axelarscan/hooks.ts @@ -14,8 +14,16 @@ const EVM_CHAIN_CONFIGS_BY_ID = indexBy(prop("id"), WAGMI_CHAIN_CONFIGS); const VM_CHAIN_CONFIGS_BY_ID = indexBy(prop("id"), WAGMI_CHAIN_CONFIGS); export function useAllChainConfigsQuery() { - const { computed: evmComputed, data: evmChains, isLoading: isLoadingEVM } = useEVMChainConfigsQuery(); - const { computed: vmComputed, data: vmChains, isLoading: isLoadingVM } = useVMChainConfigsQuery(); + const { + computed: evmComputed, + data: evmChains, + isLoading: isLoadingEVM, + } = useEVMChainConfigsQuery(); + const { + computed: vmComputed, + data: vmChains, + isLoading: isLoadingVM, + } = useVMChainConfigsQuery(); const combinedComputed = useMemo( () => ({ indexedById: { @@ -26,10 +34,7 @@ export function useAllChainConfigsQuery() { ...vmComputed.indexedByChainId, ...evmComputed.indexedByChainId, }, - wagmiChains: [ - ...vmComputed.wagmiChains, - ...evmComputed.wagmiChains - ] + wagmiChains: [...vmComputed.wagmiChains, ...evmComputed.wagmiChains], }), [evmComputed, vmComputed] ); @@ -60,10 +65,104 @@ export function useAllChainConfigsQuery() { return Array.from(chainMap.values()); }, [evmChains, vmChains]); - - return {combinedComputed, allChains, isLoading: isLoadingEVM || isLoadingVM}; + return { + combinedComputed, + allChains, + isLoading: isLoadingEVM || isLoadingVM, + }; } +const suiChainMockData = + NEXT_PUBLIC_NETWORK_ENV === "mainnet" + ? { + id: "sui", + chain_id: 101, + chain_name: "sui", + maintainer_id: "sui", + name: "Sui", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + no_tvl: true, + deprecated: false, + endpoints: { + rpc: ["https://sui-rpc.publicnode.com"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiexplorer.com/", + icon: "/logos/explorers/suiexplorer.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + contract_0_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x65", + chainName: "Sui Mainnet", + rpcUrls: ["https://sui-rpc.publicnode.com"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiexplorer.com/"], + }, + ], + } + : { + id: "sui", + chain_id: 103, + chain_name: "sui", + maintainer_id: "sui", + name: "Sui Testnet", + image: "/logos/chains/sui.svg", + color: "#6fbcf0", + chain_type: "sui", + no_inflation: false, + no_tvl: true, + deprecated: false, + endpoints: { + rpc: ["https://fullnode.testnet.sui.io:443"], + }, + native_token: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + explorer: { + name: "Sui Explorer", + url: "https://suiscan.xyz/testnet", + icon: "/logos/explorers/sui.png", + block_path: "/block/{block}", + address_path: "/address/{address}", + contract_path: "/object/{address}", + contract_0_path: "/object/{address}", + transaction_path: "/txblock/{tx}", + }, + provider_params: [ + { + chainId: "0x67", // Hexadecimal representation of 103 + chainName: "Sui Testnet", + rpcUrls: ["https://fullnode.testnet.sui.io:443"], + nativeCurrency: { + name: "SUI", + symbol: "SUI", + decimals: 9, + }, + blockExplorerUrls: ["https://suiscan.xyz/testnet"], + }, + ], + }; + export function useEVMChainConfigsQuery() { const { data, ...queryResult } = trpc.axelarscan.getEVMChainConfigs.useQuery< EVMChainConfig[] @@ -102,10 +201,14 @@ export function useEVMChainConfigsQuery() { return { ...queryResult, - data: configured, + // TODO: remove this once we have the sui chain data + data: [...configured, suiChainMockData], computed: { - indexedByChainId: indexBy(prop("chain_id"), configured), - indexedById: indexBy(prop("id"), configured), + indexedByChainId: indexBy(prop("chain_id"), [ + ...configured, + suiChainMockData, + ]), + indexedById: indexBy(prop("id"), [...configured, suiChainMockData]), wagmiChains, }, }; @@ -150,7 +253,7 @@ export function useVMChainConfigsQuery() { computed: { indexedByChainId: indexBy(prop("chain_id"), configured), indexedById: indexBy(prop("id"), configured), - wagmiChains + wagmiChains, }, }; } diff --git a/apps/maestro/src/services/axelarscan/index.ts b/apps/maestro/src/services/axelarscan/index.ts index 436dd14e9..df6854264 100644 --- a/apps/maestro/src/services/axelarscan/index.ts +++ b/apps/maestro/src/services/axelarscan/index.ts @@ -2,4 +2,6 @@ import { createAxelarscanClient } from "@axelarjs/api/axelarscan"; import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; -export default createAxelarscanClient(NEXT_PUBLIC_NETWORK_ENV); +export default createAxelarscanClient( + NEXT_PUBLIC_NETWORK_ENV === "mainnet" ? "mainnet" : "testnet" +); diff --git a/apps/maestro/src/services/db/postgres/MaestroPostgresClient.ts b/apps/maestro/src/services/db/postgres/MaestroPostgresClient.ts index 94f86bce5..ae0f2842b 100644 --- a/apps/maestro/src/services/db/postgres/MaestroPostgresClient.ts +++ b/apps/maestro/src/services/db/postgres/MaestroPostgresClient.ts @@ -228,7 +228,7 @@ export default class MaestroPostgresClient { */ async getInterchainTokenByChainIdAndTokenAddress( axelarChainId: string, - tokenAddress: Address + tokenAddress: string ) { const query = this.db.query.interchainTokens.findFirst({ where: (table, { ilike, and }) => @@ -249,7 +249,7 @@ export default class MaestroPostgresClient { */ async getRemoteInterchainTokenByChainIdAndTokenAddress( axelarChainId: string, - tokenAddress: Address + tokenAddress: string ) { const query = this.db.query.remoteInterchainTokens.findFirst({ where: (table, { ilike, and }) => diff --git a/apps/maestro/src/services/erc20/hooks.ts b/apps/maestro/src/services/erc20/hooks.ts index 1bab1ca95..a19ebed67 100644 --- a/apps/maestro/src/services/erc20/hooks.ts +++ b/apps/maestro/src/services/erc20/hooks.ts @@ -14,7 +14,7 @@ export function useERC20TokenDetailsQuery(input: { tokenAddress: String(input.tokenAddress), }, { - enabled: isAddress(input.tokenAddress ?? ""), + enabled: !!input.tokenAddress, retry: false, staleTime: 1000 * 60 * 60 * 24, // 24 hours refetchOnWindowFocus: false, diff --git a/apps/maestro/src/services/gmp/hooks.ts b/apps/maestro/src/services/gmp/hooks.ts index 3f6714d1d..3af4fa7ef 100644 --- a/apps/maestro/src/services/gmp/hooks.ts +++ b/apps/maestro/src/services/gmp/hooks.ts @@ -1,30 +1,36 @@ import { Maybe } from "@axelarjs/utils"; import { useMemo } from "react"; -import { isAddress } from "viem"; import { trpc } from "~/lib/trpc"; import { hex64 } from "~/lib/utils/validation"; -import { useEVMChainConfigsQuery, useVMChainConfigsQuery } from "../axelarscan/hooks"; +import { + useEVMChainConfigsQuery, + useVMChainConfigsQuery, +} from "../axelarscan/hooks"; export function useInterchainTokensQuery(input: { chainId?: number; - tokenAddress?: `0x${string}`; + tokenAddress?: string; strict?: boolean; }) { - const { computed: evmComputed, ...evmChainsQuery } = useEVMChainConfigsQuery(); + const { computed: evmComputed, ...evmChainsQuery } = + useEVMChainConfigsQuery(); const { computed: vmComputed, ...vmChainsQuery } = useVMChainConfigsQuery(); - const combinedComputed = useMemo(() => ({ - indexedById: { - ...vmComputed.indexedById, - ...evmComputed.indexedById, - }, - indexedByChainId: { - ...vmComputed.indexedByChainId, - ...evmComputed.indexedByChainId, - }, - wagmiChains: evmComputed.wagmiChains, // Keep wagmiChains for EVM compatibility - }), [evmComputed, vmComputed]); + const combinedComputed = useMemo( + () => ({ + indexedById: { + ...vmComputed.indexedById, + ...evmComputed.indexedById, + }, + indexedByChainId: { + ...vmComputed.indexedByChainId, + ...evmComputed.indexedByChainId, + }, + wagmiChains: evmComputed.wagmiChains, // Keep wagmiChains for EVM compatibility + }), + [evmComputed, vmComputed] + ); const { data, ...queryResult } = trpc.interchainToken.searchInterchainToken.useQuery( @@ -34,7 +40,7 @@ export function useInterchainTokensQuery(input: { strict: input.strict, }, { - enabled: Maybe.of(input.tokenAddress).mapOr(false, isAddress), + enabled: Maybe.of(input.tokenAddress).mapOr(false, Boolean), retry: false, refetchOnWindowFocus: false, } @@ -47,27 +53,36 @@ export function useInterchainTokensQuery(input: { matchingTokens: data?.matchingTokens.map((token) => ({ ...token, chain: combinedComputed.indexedById[token.axelarChainId ?? ""], - wagmiConfig: combinedComputed.wagmiChains?.find((x) => x?.id === Number(token.chainId)) + wagmiConfig: combinedComputed.wagmiChains?.find( + (x) => x?.id === Number(token.chainId) + ), })), chain: Maybe.of(input.chainId).mapOrUndefined( (x) => combinedComputed.indexedByChainId[x] ), wagmiConfig: Maybe.of(input.chainId) .map(Number) - .mapOrUndefined((chainId) => + .mapOrUndefined((chainId) => combinedComputed.wagmiChains?.find((x) => x?.id === chainId) ), }, - isLoading: evmChainsQuery.isLoading || vmChainsQuery.isLoading || queryResult.isLoading, - isFetching: evmChainsQuery.isFetching || vmChainsQuery.isFetching || queryResult.isFetching, - isError: evmChainsQuery.isError || vmChainsQuery.isError || queryResult.isError, + isLoading: + evmChainsQuery.isLoading || + vmChainsQuery.isLoading || + queryResult.isLoading, + isFetching: + evmChainsQuery.isFetching || + vmChainsQuery.isFetching || + queryResult.isFetching, + isError: + evmChainsQuery.isError || vmChainsQuery.isError || queryResult.isError, error: evmChainsQuery.error || vmChainsQuery.error || queryResult.error, }; } export function useGetTransactionStatusOnDestinationChainsQuery( input: { - txHash?: `0x${string}`; + txHash: string; }, options?: { enabled?: boolean; @@ -77,14 +92,14 @@ export function useGetTransactionStatusOnDestinationChainsQuery( const { data, ...query } = trpc.gmp.getTransactionStatusOnDestinationChains.useQuery( { - txHash: input.txHash as `0x${string}`, + txHash: input.txHash, }, { - refetchInterval: 1000 * 10, + refetchInterval: options?.refetchInterval ?? 1000 * 10, // 10 seconds enabled: - input.txHash && + !!input.txHash && hex64().safeParse(input.txHash).success && - Maybe.of(options?.enabled).mapOr(true, Boolean), + (options?.enabled || true), } ); @@ -104,7 +119,7 @@ export function useGetTransactionStatusOnDestinationChainsQuery( export function useGetTransactionsStatusesOnDestinationChainsQuery( input: { - txHashes?: `0x${string}`[]; + txHashes?: string[]; }, options?: { enabled?: boolean; diff --git a/apps/maestro/src/services/gmp/index.ts b/apps/maestro/src/services/gmp/index.ts index fcca8426f..090803553 100644 --- a/apps/maestro/src/services/gmp/index.ts +++ b/apps/maestro/src/services/gmp/index.ts @@ -2,4 +2,6 @@ import { createGMPClient } from "@axelarjs/api/gmp"; import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; -export default createGMPClient(NEXT_PUBLIC_NETWORK_ENV); +export default createGMPClient( + NEXT_PUBLIC_NETWORK_ENV === "devnet-amplifier" ? "testnet" : "mainnet" +); diff --git a/apps/maestro/src/services/interchainToken/hooks.ts b/apps/maestro/src/services/interchainToken/hooks.ts index 0bae65226..b6b138fe2 100644 --- a/apps/maestro/src/services/interchainToken/hooks.ts +++ b/apps/maestro/src/services/interchainToken/hooks.ts @@ -1,12 +1,10 @@ import { Maybe } from "@axelarjs/utils"; -import { isAddress } from "viem"; - import { trpc } from "~/lib/trpc"; export function useInterchainTokenDetailsQuery(input: { chainId?: number; - tokenAddress?: `0x${string}` | null; + tokenAddress?: string | null; }) { return trpc.interchainToken.getInterchainTokenDetails.useQuery( { @@ -14,7 +12,7 @@ export function useInterchainTokenDetailsQuery(input: { tokenAddress: String(input.tokenAddress), }, { - enabled: isAddress(input.tokenAddress ?? ""), + enabled: !!input.tokenAddress, staleTime: 1000 * 60 * 60 * 24, // 24 hours refetchOnWindowFocus: false, } @@ -23,8 +21,8 @@ export function useInterchainTokenDetailsQuery(input: { export function useInterchainTokenBalanceForOwnerQuery(input: { chainId?: number; - tokenAddress?: `0x${string}`; - owner?: `0x${string}`; + tokenAddress?: string; + owner?: string; }) { return trpc.erc20.getERC20TokenBalanceForOwner.useQuery( { @@ -35,8 +33,6 @@ export function useInterchainTokenBalanceForOwnerQuery(input: { { enabled: Boolean(input.chainId) && - isAddress(input.tokenAddress ?? "") && - isAddress(input.owner ?? "") && parseInt(String(input.tokenAddress), 16) !== 0, } ); diff --git a/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.state.tsx b/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.state.tsx index 1b4de85d9..e324638a3 100644 --- a/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.state.tsx +++ b/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.state.tsx @@ -13,7 +13,10 @@ function useChainsDropdownState(initialState = INITIAL_STATE) { ); const actions = { - selectChainId: (chainId: number | null, chainType?: "evm" | "vm" | null) => { + selectChainId: ( + chainId: number | null, + chainType?: "evm" | "vm" | null + ) => { setState((state) => { state.selectedChainId = chainId; if (chainType !== undefined) { diff --git a/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.tsx b/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.tsx index e12f844ce..3613e0191 100644 --- a/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.tsx +++ b/apps/maestro/src/ui/components/ChainsDropdown/ChainsDropdown.tsx @@ -8,12 +8,9 @@ import Image from "next/image"; import { find, propEq } from "rambda"; import { TransactionExecutionError } from "viem"; -import { useAccount, useSwitchChain } from "wagmi"; -import { logger } from "~/lib/logger"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAccount, useSwitchChain } from "~/lib/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useChainsDropdownContainer, withChainsDropdownProvider, @@ -129,7 +126,7 @@ export const ChainIconComponent: FC = (props) => { const ChainsDropdown: FC = (props) => { const { allChains } = useAllChainConfigsQuery(); const { chain } = useAccount(); - const { switchChainAsync } = useSwitchChain(); + const { switchChain } = useSwitchChain(); const [state, actions] = useChainsDropdownContainer(); @@ -141,11 +138,13 @@ const ChainsDropdown: FC = (props) => { [chain?.id, allChains, state.selectedChainId] ); - const eligibleChains = Maybe.of(props.chains ?? allChains).mapOr([], (chains) => - chains.filter((chain) => chain.chain_id !== selectedChain?.chain_id) + const eligibleChains = Maybe.of(props.chains ?? allChains).mapOr( + [], + (chains) => + chains.filter((chain) => chain.chain_id !== selectedChain?.chain_id) ); - const handleChainChange = async (chainId: number) => { + const handleChainChange = (chainId: number) => { try { if (props.onSelectChain) { props.onSelectChain( @@ -160,9 +159,8 @@ const ChainsDropdown: FC = (props) => { toast.error("Chain not found"); return; } + switchChain?.({ chainId }); - // Determine chain type and handle accordingly - await switchChainAsync?.({ chainId }); if (!chain) { actions.selectChainId(chainId, "evm"); } @@ -241,9 +239,7 @@ const ChainsDropdown: FC = (props) => {
- ); } ); ConnectWalletButton.displayName = "ConnectWalletButton"; -ConnectWalletButton.defaultProps = { - $size: "sm", - $variant: "primary", - children: "Connect Wallet", -}; - export default ConnectWalletButton; diff --git a/apps/maestro/src/ui/compounds/ConnectWalletModal/ConnectWalletModal.tsx b/apps/maestro/src/ui/compounds/ConnectWalletModal/ConnectWalletModal.tsx new file mode 100644 index 000000000..76fa59661 --- /dev/null +++ b/apps/maestro/src/ui/compounds/ConnectWalletModal/ConnectWalletModal.tsx @@ -0,0 +1,63 @@ +import { Button, Modal, type ButtonProps } from "@axelarjs/ui"; +import React, { forwardRef } from "react"; + +import { ConnectModal } from "@mysten/dapp-kit"; + +import ConnectWalletButton from "../ConnectWalletButton/ConnectWalletButton"; + +const ConnectWalletModal = forwardRef( + ( + { + $size = "md", + $variant = "primary", + children = "Connect Wallet", + ...props + }, + ref + ) => { + const [isModalOpen, setIsModalOpen] = React.useState(false); + return ( + { + setTimeout(() => (document.body.style.pointerEvents = ""), 1); + setIsModalOpen(a); + }} + trigger={ + + } + > + + Select Chain Type + + + EVM Chains + + SUI + + } + /> + + + ); + } +); + +ConnectWalletModal.displayName = "ConnectWalletButton"; + +export default ConnectWalletModal; diff --git a/apps/maestro/src/ui/compounds/GMPTxStatusMonitor/GMPTxStatusMonitor.tsx b/apps/maestro/src/ui/compounds/GMPTxStatusMonitor/GMPTxStatusMonitor.tsx index 144aafdd0..542fc0b27 100644 --- a/apps/maestro/src/ui/compounds/GMPTxStatusMonitor/GMPTxStatusMonitor.tsx +++ b/apps/maestro/src/ui/compounds/GMPTxStatusMonitor/GMPTxStatusMonitor.tsx @@ -5,13 +5,12 @@ import { useEffect, useMemo, type FC } from "react"; import Link from "next/link"; import { clamp, splitAt } from "rambda"; -import { useBlockNumber, useChainId, useTransaction } from "wagmi"; +import { useBlockNumber, useTransaction } from "wagmi"; import { NEXT_PUBLIC_EXPLORER_URL } from "~/config/env"; +import { useChainId } from "~/lib/hooks"; import { useChainInfoQuery } from "~/services/axelarjsSDK/hooks"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useGetTransactionStatusOnDestinationChainsQuery } from "~/services/gmp/hooks"; import { ChainIcon } from "~/ui/components/ChainsDropdown"; @@ -98,11 +97,11 @@ export function useGMPTxProgress(txHash: `0x${string}`, chainId: number) { } type Props = { - txHash: `0x${string}`; + txHash: string; onAllChainsExecuted?: () => void; }; -const TxFinalityProgress: FC<{ txHash: `0x${string}`; chainId: number }> = ({ +const TxFinalityProgress: FC<{ txHash: string; chainId: number }> = ({ txHash, chainId, }) => { @@ -210,7 +209,7 @@ export default GMPTxStatusMonitor; export type ChainStatusItemProps = { status: ExtendedGMPTxStatus; - txHash: `0x${string}`; + txHash: string; logIndex: number; chain: ChainConfig; className?: string; @@ -322,7 +321,7 @@ export const ChainStatusItem: FC = ({ }; export type StatusIndicatorProps = { - txHash: `0x${string}` | `0x${string}:${number}`; + txHash: string; status: ExtendedGMPTxStatus; }; diff --git a/apps/maestro/src/ui/compounds/MultiStepForm/MultiStepForm.tsx b/apps/maestro/src/ui/compounds/MultiStepForm/MultiStepForm.tsx index 6b5e0f62b..39d6a4450 100644 --- a/apps/maestro/src/ui/compounds/MultiStepForm/MultiStepForm.tsx +++ b/apps/maestro/src/ui/compounds/MultiStepForm/MultiStepForm.tsx @@ -29,12 +29,11 @@ import { import type { FieldError } from "react-hook-form"; import { useSession } from "next-auth/react"; -import { useAccount } from "wagmi"; - +import { useAccount } from "~/lib/hooks"; import { trpc } from "~/lib/trpc"; import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import ChainsDropdownComponent from "~/ui/components/ChainsDropdown"; -import ConnectWalletButton from "../ConnectWalletButton"; +import ConnectWalletModal from "../ConnectWalletModal/ConnectWalletModal"; type ButtonProps = ComponentProps; @@ -212,7 +211,7 @@ export const MultiStepDialog: FC = ({ )} - {isSignedIn ? props.children : } + {isSignedIn ? props.children : } ); @@ -223,7 +222,7 @@ export const ShareHaikuButton: FC<{ originChainName: string; additionalChainNames: string[]; originAxelarChainId: string; - tokenAddress: `0x${string}`; + tokenAddress: string; haikuType: "deployment" | "send"; }> = (props) => { const { mutateAsync, isPending, isSuccess } = diff --git a/apps/maestro/src/ui/layouts/MainLayout/Appbar.tsx b/apps/maestro/src/ui/layouts/MainLayout/Appbar.tsx index 963e798c5..3b1fb4f69 100644 --- a/apps/maestro/src/ui/layouts/MainLayout/Appbar.tsx +++ b/apps/maestro/src/ui/layouts/MainLayout/Appbar.tsx @@ -22,13 +22,12 @@ import Image from "next/image"; import Link from "next/link"; import { useRouter } from "next/router"; -import { useAccount, useDisconnect } from "wagmi"; - import { APP_NAME } from "~/config/app"; import { NEXT_PUBLIC_NETWORK_ENV } from "~/config/env"; import Transactions from "~/features/Transactions/Transactions"; +import { useAccount, useDisconnect } from "~/lib/hooks"; import ChainsDropdown from "~/ui/components/ChainsDropdown"; -import ConnectWalletButton from "~/ui/compounds/ConnectWalletButton"; +import ConnectWalletModal from "~/ui/compounds/ConnectWalletModal/ConnectWalletModal"; import { useLayoutStateContainer } from "./MainLayout.state"; import MainMenu from "./MainMenu"; @@ -40,7 +39,6 @@ const Appbar: FC = (props) => { const { disconnect } = useDisconnect(); const { isConnected, address } = useAccount(); const { chain } = useAccount(); - const router = useRouter(); const isSticky = useIsSticky(100); @@ -110,7 +108,7 @@ const Appbar: FC = (props) => { ) : ( - + )}
@@ -208,7 +206,7 @@ const Appbar: FC = (props) => { ) : ( - + )} diff --git a/apps/maestro/src/ui/layouts/Page.tsx b/apps/maestro/src/ui/layouts/Page.tsx index 2d9df3143..e828f43cc 100644 --- a/apps/maestro/src/ui/layouts/Page.tsx +++ b/apps/maestro/src/ui/layouts/Page.tsx @@ -6,18 +6,14 @@ import { GridLoader } from "react-spinners"; import Head from "next/head"; import { useRouter } from "next/router"; -import { useAccount, useSwitchChain } from "wagmi"; - import { ALL_CHAINS } from "~/config/evm-chains"; import RecentTransactions from "~/features/RecentTransactions/RecentTransactions"; import SearchInterchainToken from "~/features/SearchInterchainToken"; -import { useChainFromRoute } from "~/lib/hooks"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAccount, useChainFromRoute, useSwitchChain } from "~/lib/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import ChainsDropdown, { ChainIcon } from "~/ui/components/ChainsDropdown"; import { ConditionalRenderInterchainBanner } from "../components/InterchainBanner"; -import ConnectWalletButton from "../compounds/ConnectWalletButton/ConnectWalletButton"; +import ConnectWalletModal from "../compounds/ConnectWalletModal/ConnectWalletModal"; type PageState = | "loading" @@ -73,13 +69,15 @@ const Page: FC = ({ return "disconnected"; } - if (chain && allChains?.length && !currentChain) { - return "unsupported-network"; - } + // TODO: uncomment this when we have a way to handle multiple chains - if (!currentChain) { - return "loading"; - } + // if (chain && allChains?.length && !currentChain) { + // return "unsupported-network"; + // } + + // if (!currentChain) { + // return "loading"; + // } if ( chainFromRoute && @@ -92,8 +90,6 @@ const Page: FC = ({ }, [ mustBeConnected, isConnected, - allChains, - chain, chainFromRoute, currentChainFromRoute, currentChain, @@ -131,7 +127,7 @@ const Page: FC = ({
OR
- +
diff --git a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/ConnectedInterchainTokensPage.tsx b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/ConnectedInterchainTokensPage.tsx index e13900cae..e0a5732ea 100644 --- a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/ConnectedInterchainTokensPage.tsx +++ b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/ConnectedInterchainTokensPage.tsx @@ -5,7 +5,6 @@ import { useSessionStorageState } from "@axelarjs/utils/react"; import { useCallback, useEffect, useMemo, type FC } from "react"; import { concat, isEmpty, map, partition, uniq, without } from "rambda"; -import { useAccount, useBalance, useChainId, useSwitchChain } from "wagmi"; import { NEXT_PUBLIC_INTERCHAIN_DEPLOYMENT_EXECUTE_DATA, @@ -16,33 +15,37 @@ import { InterchainTokenList } from "~/features/InterchainTokenList"; import type { TokenInfo } from "~/features/InterchainTokenList/types"; import { RegisterRemoteTokens } from "~/features/RegisterRemoteTokens"; import { useTransactionsContainer } from "~/features/Transactions"; +import { + useAccount, + useBalance, + useChainId, + useSwitchChain, +} from "~/lib/hooks"; import { logger } from "~/lib/logger"; import { trpc } from "~/lib/trpc"; import { getNativeToken } from "~/lib/utils/getNativeToken"; import { useEstimateGasFeeMultipleChainsQuery } from "~/services/axelarjsSDK/hooks"; -import { - useAllChainConfigsQuery, -} from "~/services/axelarscan/hooks"; +import { useAllChainConfigsQuery } from "~/services/axelarscan/hooks"; import { useGetTransactionsStatusesOnDestinationChainsQuery, useInterchainTokensQuery, } from "~/services/gmp/hooks"; import BigNumberText from "~/ui/components/BigNumberText"; -import ConnectWalletButton from "~/ui/compounds/ConnectWalletButton"; +import ConnectWalletModal from "~/ui/compounds/ConnectWalletModal/ConnectWalletModal"; type ConnectedInterchainTokensPageProps = { chainId: number; - tokenAddress: `0x${string}`; + tokenAddress: string; tokenName: string; tokenSymbol: string; decimals: number; - tokenId?: `0x${string}` | null; + tokenId?: string | null; deploymentMessageId: string | undefined; }; type InterchainTokenDetailsPageSessionStorageProps = { chainId: number; - tokenAddress: `0x${string}`; + tokenAddress: string; }; export const getInterchainTokenDetailsPageSessionStorageKey = ( @@ -52,14 +55,14 @@ export const getInterchainTokenDetailsPageSessionStorageKey = ( `@maestro/interchain-tokens/${props.chainId}/${props.tokenAddress}/v${version}`; export type InterchainTokenDetailsPageState = { - deployTokensTxHashes: `0x${string}`[]; + deployTokensTxHashes: string[]; selectedChainIds: number[]; }; export function persistTokenDeploymentTxHash( - tokenAddress: `0x${string}`, + tokenAddress: string, chainId: number, - deployTokensTxHash: `0x${string}`, + deployTokensTxHash: string, selectedChainIds: number[] ) { const key = getInterchainTokenDetailsPageSessionStorageKey({ @@ -160,10 +163,9 @@ const ConnectedInterchainTokensPage: FC = ( txHashes: sessionState.deployTokensTxHashes, }); + const { switchChain } = useSwitchChain(); const { combinedComputed } = useAllChainConfigsQuery(); - const { switchChainAsync } = useSwitchChain(); - const statusesByChain = useMemo(() => { return ( statuses ?? @@ -274,7 +276,7 @@ const ConnectedInterchainTokensPage: FC = ( setSessionState, ]); - const { data: userGasBalance } = useBalance({ address }); + const userGasBalance = useBalance(); const { data: gasFees, isLoading: isGasPriceQueryLoading } = useEstimateGasFeeMultipleChainsQuery({ @@ -293,7 +295,8 @@ const ConnectedInterchainTokensPage: FC = ( const runningChainIds = useMemo( () => Object.entries(statusesByChain).map( - ([axelarChainId]) => combinedComputed.indexedById[axelarChainId]?.chain_id + ([axelarChainId]) => + combinedComputed.indexedById[axelarChainId]?.chain_id ), [combinedComputed.indexedById, statusesByChain] ); @@ -380,7 +383,7 @@ const ConnectedInterchainTokensPage: FC = (
≈{" "} = ( $variant="accent" onClick={() => { if (originToken) { - switchChainAsync?.({ chainId: originToken.chainId }).catch( - () => { - logger.error("Failed to switch network"); - } - ); + switchChain?.({ chainId: originToken.chainId }); } }} > @@ -466,9 +465,9 @@ const ConnectedInterchainTokensPage: FC = ( }} /> ) : ( - + Connect wallet to register this token - + )}
)} diff --git a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/TokenDetailsSection.tsx b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/TokenDetailsSection.tsx index 98275c60b..11e91b0c9 100644 --- a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/TokenDetailsSection.tsx +++ b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/TokenDetailsSection.tsx @@ -25,9 +25,9 @@ import Image from "next/image"; import { createWalletClient, custom } from "viem"; import { watchAsset } from "viem/actions"; -import { useAccount } from "wagmi"; import { z } from "zod"; +import { useAccount } from "~/lib/hooks"; import { trpc } from "~/lib/trpc"; import { hex64Literal } from "~/lib/utils/validation"; import { ChainIcon } from "~/ui/components/ChainsDropdown"; @@ -41,7 +41,7 @@ export type TokenDetailsSectionProps = { decimals: number; tokenId?: `0x${string}` | null | undefined; deploymentMessageId?: string | undefined; - tokenManagerAddress?: `0x${string}` | null; + tokenManagerAddress?: string | null; kind?: "canonical" | "interchain" | "custom"; claimOwnershipFormLink?: string; }; @@ -288,7 +288,7 @@ const ManageTokenIcon: FC = ({ trpc.interchainToken.getInterchainTokenRolesForAccount.useQuery( { tokenId, - accountAddress: address as `0x${string}`, + accountAddress: address, }, { enabled: Boolean(address), diff --git a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/index.tsx b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/index.tsx index 08f203a57..ddcb4a921 100644 --- a/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/index.tsx +++ b/apps/maestro/src/ui/pages/InterchainTokenDetailsPage/index.tsx @@ -1,9 +1,6 @@ -import { Alert } from "@axelarjs/ui"; import type { FC } from "react"; import { useRouter } from "next/router"; -import { isAddress } from "viem"; - import { useChainFromRoute } from "~/lib/hooks"; import { getPrefilledClaimOwnershipFormLink } from "~/lib/utils/gform"; import { useERC20TokenDetailsQuery } from "~/services/erc20/hooks"; @@ -40,10 +37,9 @@ const InterchainTokensPage: FC = () => { tokenAddress, }); - if (!isAddress(tokenAddress)) { - return Invalid token address; - } - + // if (!isAddress(tokenAddress)) { + // return Invalid token address; + // } const chainNames = interchainToken?.matchingTokens ?.filter((token) => token.isRegistered) @@ -78,7 +74,7 @@ const InterchainTokensPage: FC = () => { interchainToken.chain.name, chainNames, "Interchain Token Service (ITS)", - destToken.tokenAddress as string, + destToken.tokenAddress, tokenDetails.name, tokenDetails.symbol ) diff --git a/apps/maestro/src/ui/pages/InterchainTokensPage/TokenList.tsx b/apps/maestro/src/ui/pages/InterchainTokensPage/TokenList.tsx index 38a70c612..dae8d3a2e 100644 --- a/apps/maestro/src/ui/pages/InterchainTokensPage/TokenList.tsx +++ b/apps/maestro/src/ui/pages/InterchainTokensPage/TokenList.tsx @@ -54,7 +54,7 @@ const TokenList: FC = ({ sessionAddress }) => { ); const { combinedComputed } = useAllChainConfigsQuery(); - + const maybeTokens = Maybe.of(data).map((data) => data.items); const totalPages = Maybe.of(data).mapOr(0, (data) => data.totalPages); @@ -64,7 +64,10 @@ const TokenList: FC = ({ sessionAddress }) => { .map( map( (token) => - [token, combinedComputed.indexedById[token.axelarChainId]] as const + [ + token, + combinedComputed.indexedById[token.axelarChainId], + ] as const ) ) .mapOr( diff --git a/package.json b/package.json index f9bedcaf4..a2a47459a 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "husky": "^8.0.3", "lint-staged": "^15.2.2", "package-json": "^8.1.1", - "prettier": "^3.2.5", + "prettier": "^3.4.2", "pretty-quick": "^4.0.0", "rimraf": "^5.0.5", "turbo": "^1.13.0", diff --git a/packages/api/src/axelar-config/types.ts b/packages/api/src/axelar-config/types.ts index ea6d18fc6..9f955c29c 100644 --- a/packages/api/src/axelar-config/types.ts +++ b/packages/api/src/axelar-config/types.ts @@ -32,7 +32,7 @@ export interface AssetConfig { }; } -export type CHAIN_TYPE = "axelarnet" | "evm"; +export type CHAIN_TYPE = "axelarnet" | "evm" | "sui"; export interface ChainEvmSubconfig { contracts?: { diff --git a/packages/api/src/axelarscan/isomorphic.ts b/packages/api/src/axelarscan/isomorphic.ts index f77f193d6..4fe352ea6 100644 --- a/packages/api/src/axelarscan/isomorphic.ts +++ b/packages/api/src/axelarscan/isomorphic.ts @@ -20,7 +20,11 @@ export type GetAssetsResponse = AxelarScanAsset[]; export type GetAssetsPriceResponse = AxelarAssetPrice[]; -export type GetChainConfigsResponse = (EVMChainConfig | CosmosChainConfig | VMChainConfig)[]; +export type GetChainConfigsResponse = ( + | EVMChainConfig + | CosmosChainConfig + | VMChainConfig +)[]; export class AxelarscanClient extends RestService { static init(options: RestServiceOptions) { diff --git a/packages/api/src/axelarscan/types.ts b/packages/api/src/axelarscan/types.ts index 1e968230e..8bf4ba06d 100644 --- a/packages/api/src/axelarscan/types.ts +++ b/packages/api/src/axelarscan/types.ts @@ -87,7 +87,7 @@ export type EVMChainConfig = { chain_id: number; chain_name: string; maintainer_id: string; - deprecated: boolean; + deprecated?: boolean; endpoints: { rpc: string[]; }; @@ -110,22 +110,20 @@ export type EVMChainConfig = { transaction_path: string; }; id: string; - chain_type: "evm"; - provider_params: [ - { - chainId: string; - chainName: string; - rpcUrls: string[]; - nativeCurrency: { - name: string; - symbol: string; - decimals: number; - }; - blockExplorerUrls: string[]; - }, - ]; + chain_type: string; + provider_params: { + chainId: string; + chainName: string; + rpcUrls: string[]; + nativeCurrency: { + name: string; + symbol: string; + decimals: number; + }; + blockExplorerUrls: string[]; + }[]; no_inflation: boolean; - no_tvl: boolean; + no_tvl?: boolean; }; export type CosmosChainConfig = { diff --git a/packages/deposit-address/src/get-deposit-address/helpers/getDepositAddressFromAxelarNetwork.ts b/packages/deposit-address/src/get-deposit-address/helpers/getDepositAddressFromAxelarNetwork.ts index 68a09ad22..99c49e296 100644 --- a/packages/deposit-address/src/get-deposit-address/helpers/getDepositAddressFromAxelarNetwork.ts +++ b/packages/deposit-address/src/get-deposit-address/helpers/getDepositAddressFromAxelarNetwork.ts @@ -48,7 +48,7 @@ export async function getDepositAddressFromAxelarNetwork( function findLinkRequest( params: ListenerParams, - module: "evm" | "axelarnet" | undefined, + module: "evm" | "axelarnet" | "sui" | undefined, results: LinkRequestResponse[] ) { return results.find((linkRequest) => { @@ -81,13 +81,13 @@ async function waitForDepositAddress( axelarscanClient: AxelarscanClient ) { const srcChainConfig = chainConfigs.chains[params.sourceChain.toLowerCase()]; + const chainType = srcChainConfig?.chainType; return findLinkRequest( params, - srcChainConfig?.chainType, + chainType, await poll( () => axelarscanClient.getRecentLinkTransactions({ size: 10 }), - (res: LinkRequestResponse[]) => - !findLinkRequest(params, srcChainConfig?.chainType, res), + (res: LinkRequestResponse[]) => !findLinkRequest(params, chainType, res), 5_000, 5 ) diff --git a/packages/ui/src/components/core/index.tsx b/packages/ui/src/components/core/index.tsx index 3769af2d4..2881766a5 100644 --- a/packages/ui/src/components/core/index.tsx +++ b/packages/ui/src/components/core/index.tsx @@ -3,7 +3,6 @@ import { ComponentProps, FC } from "react"; import tw from "../../tw"; export const Clamp = tw.div` - max-w-4xl w-full mx-auto `; diff --git a/packages/utils/src/string.ts b/packages/utils/src/string.ts index 10d3fbd58..e0343a7bf 100644 --- a/packages/utils/src/string.ts +++ b/packages/utils/src/string.ts @@ -15,7 +15,7 @@ export const unSluggify = (value: string) => value.split("-").map(capitalize).join(" "); export const maskAddress = ( - address: `0x${string}`, + address: string, opts?: { segmentA: number; segmentB: number; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 39b1e261e..2813db6ff 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -21,7 +21,7 @@ importers: version: 0.4.8 '@changesets/cli': specifier: ^2.27.1 - version: 2.27.1 + version: 2.27.10 '@commitlint/cli': specifier: ^17.8.1 version: 17.8.1 @@ -30,46 +30,46 @@ importers: version: 17.8.1 '@ianvs/prettier-plugin-sort-imports': specifier: ^4.2.1 - version: 4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5) + version: 4.4.0(prettier@3.4.2) '@tsconfig/strictest': specifier: ^2.0.4 - version: 2.0.4 + version: 2.0.5 '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint@8.57.0)(typescript@5.4.3) + version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2) '@typescript-eslint/parser': specifier: ^6.21.0 - version: 6.21.0(eslint@8.57.0)(typescript@5.4.3) + version: 6.21.0(eslint@8.57.1)(typescript@5.7.2) eslint: specifier: ^8.57.0 - version: 8.57.0 + version: 8.57.1 husky: specifier: ^8.0.3 version: 8.0.3 lint-staged: specifier: ^15.2.2 - version: 15.2.2 + version: 15.2.11 package-json: specifier: ^8.1.1 version: 8.1.1 prettier: - specifier: ^3.2.5 - version: 3.2.5 + specifier: ^3.4.2 + version: 3.4.2 pretty-quick: specifier: ^4.0.0 - version: 4.0.0(prettier@3.2.5) + version: 4.0.0(prettier@3.4.2) rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 turbo: specifier: ^1.13.0 - version: 1.13.0 + version: 1.13.4 typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 apps/axelarscan-amplifier-apis: dependencies: @@ -82,7 +82,7 @@ importers: version: 4.20241205.0 '@types/node': specifier: ^20.5.7 - version: 20.11.30 + version: 20.17.10 '@types/service-worker-mock': specifier: ^2.0.1 version: 2.0.4 @@ -92,9 +92,12 @@ importers: apps/maestro: dependencies: + '@axelar-network/axelar-cgp-sui': + specifier: 0.0.0-snapshot.424bc13 + version: 0.0.0-snapshot.424bc13(bufferutil@4.0.8)(utf-8-validate@6.0.3) '@axelar-network/axelarjs-sdk': specifier: 0.17.1-alpha.12 - version: 0.17.1-alpha.12(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3) + version: 0.17.1-alpha.12(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3) '@axelarjs/api': specifier: workspace:* version: link:../../packages/api @@ -113,6 +116,15 @@ importers: '@hookform/resolvers': specifier: ^3.3.4 version: 3.9.1(react-hook-form@7.54.0(react@18.3.1)) + '@mysten/bcs': + specifier: ^1.1.0 + version: 1.1.0 + '@mysten/dapp-kit': + specifier: ^0.14.43 + version: 0.14.43(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@mysten/sui': + specifier: ^1.11.0 + version: 1.11.0(typescript@5.7.2) '@sentry/nextjs': specifier: ^7.108.0 version: 7.108.0(next@14.1.4(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) @@ -139,10 +151,13 @@ importers: version: 0.7.2 '@web3modal/wagmi': specifier: ^4.1.1 - version: 4.2.3(g2jokmnp5dswp2ur2l5nmjfttq) + version: 4.2.3(tx2qcuguw7ip4pmbujlc3ml2am) drizzle-orm: specifier: ^0.29.5 version: 0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1) + hardhat: + specifier: ^2.22.13 + version: 2.22.17(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2))(typescript@5.7.2)(utf-8-validate@6.0.3) lucide-react: specifier: ^0.265.0 version: 0.265.0(react@18.3.1) @@ -157,7 +172,7 @@ importers: version: 0.2.0 openai: specifier: ^4.29.2 - version: 4.76.1(zod@3.22.4) + version: 4.76.1(zod@3.24.1) pg: specifier: ^8.11.3 version: 8.13.1 @@ -190,26 +205,26 @@ importers: version: 5.18.2(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) trpc-openapi: specifier: ^1.2.0 - version: 1.2.0(@trpc/server@11.0.0-next.320)(@types/express@4.17.21)(@types/node@20.11.30)(zod@3.22.4) + version: 1.2.0(@trpc/server@11.0.0-next.320)(@types/express@4.17.21)(@types/node@20.17.10)(zod@3.24.1) unfetch: specifier: ^4.2.0 version: 4.2.0 viem: specifier: ^2.21.1 - version: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) wagmi: specifier: ^2.5.12 - version: 2.13.5(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@tanstack/query-core@5.62.7)(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(utf-8-validate@6.0.3)(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))(zod@3.22.4) + version: 2.13.5(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@tanstack/query-core@5.62.7)(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(utf-8-validate@6.0.3)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))(zod@3.24.1) zod: specifier: ^3.22.4 - version: 3.22.4 + version: 3.24.1 devDependencies: '@babel/core': specifier: ^7.24.3 version: 7.26.0 '@ianvs/prettier-plugin-sort-imports': specifier: ^4.2.1 - version: 4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5) + version: 4.4.0(prettier@3.4.2) '@inquirer/prompts': specifier: ^3.3.2 version: 3.3.2 @@ -236,7 +251,7 @@ importers: version: 14.5.2(@testing-library/dom@10.4.0) '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@types/nprogress': specifier: ^0.2.3 version: 0.2.3 @@ -254,22 +269,22 @@ importers: version: 5.14.9 '@typescript-eslint/eslint-plugin': specifier: ^6.21.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint@8.57.0)(typescript@5.4.3) + version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2) '@typescript-eslint/parser': specifier: ^6.21.0 - version: 6.21.0(eslint@8.57.0)(typescript@5.4.3) + version: 6.21.0(eslint@8.57.1)(typescript@5.7.2) '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.3.4(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) + version: 4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@vitest/coverage-v8': specifier: ^1.4.0 - version: 1.6.0(vitest@1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0)) + version: 1.6.0(vitest@1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0)) '@wagmi/cli': specifier: ^2.1.4 - version: 2.1.20(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3) + version: 2.1.20(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3) autoprefixer: specifier: ^10.4.19 - version: 10.4.20(postcss@8.4.38) + version: 10.4.20(postcss@8.4.49) concurrently: specifier: ^8.2.2 version: 8.2.2 @@ -278,7 +293,7 @@ importers: version: 3.6.0 dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 dotenv-cli: specifier: ^7.4.1 version: 7.4.4 @@ -287,13 +302,13 @@ importers: version: 0.20.18 drizzle-zod: specifier: ^0.5.1 - version: 0.5.1(drizzle-orm@0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1))(zod@3.22.4) + version: 0.5.1(drizzle-orm@0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1))(zod@3.24.1) eslint: specifier: ^8.57.0 - version: 8.57.0 + version: 8.57.1 eslint-config-next: specifier: ^14.1.4 - version: 14.2.20(eslint@8.57.0)(typescript@5.4.3) + version: 14.2.20(eslint@8.57.1)(typescript@5.7.2) happy-dom: specifier: ^13.10.1 version: 13.10.1 @@ -308,28 +323,28 @@ importers: version: 8.0.0 postcss: specifier: ^8.4.38 - version: 8.4.38 + version: 8.4.49 prettier: specifier: ^3.2.5 - version: 3.2.5 + version: 3.4.2 prettier-plugin-tailwindcss: specifier: ^0.5.12 - version: 0.5.14(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5))(prettier@3.2.5) + version: 0.5.14(@ianvs/prettier-plugin-sort-imports@4.4.0(prettier@3.4.2))(prettier@3.4.2) tailwindcss: specifier: ^3.4.1 - version: 3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) tsx: specifier: ^4.7.1 - version: 4.7.1 + version: 4.19.2 typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vite: specifier: ^5.2.6 - version: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) zx: specifier: ^7.2.3 version: 7.2.3 @@ -354,7 +369,7 @@ importers: devDependencies: '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@types/react': specifier: 18.2.21 version: 18.2.21 @@ -363,22 +378,22 @@ importers: version: 18.3.5(@types/react@18.2.21) autoprefixer: specifier: ^10.4.19 - version: 10.4.20(postcss@8.4.38) + version: 10.4.20(postcss@8.4.49) eslint: specifier: ^8.57.0 - version: 8.57.0 + version: 8.57.1 eslint-config-next: specifier: ^14.1.4 - version: 14.2.20(eslint@8.57.0)(typescript@5.4.3) + version: 14.2.20(eslint@8.57.1)(typescript@5.7.2) postcss: specifier: ^8.4.38 - version: 8.4.38 + version: 8.4.49 tailwindcss: specifier: ^3.4.1 - version: 3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 packages/api: dependencies: @@ -408,7 +423,7 @@ importers: version: 4.2.0 viem: specifier: ^2.8.18 - version: 2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@5.0.10)(zod@3.24.1) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@5.0.10)(zod@3.24.1) devDependencies: '@axelarjs/config': specifier: workspace:* @@ -421,16 +436,16 @@ importers: version: 0.31.0-alpha.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) '@types/node': specifier: ^20.11.28 - version: 20.11.30 + version: 20.17.10 dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 fast-check: specifier: ^3.17.0 version: 3.23.1 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 happy-dom: specifier: ^13.10.1 version: 13.10.1 @@ -448,19 +463,19 @@ importers: version: 18.3.1(react@18.3.1) rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vite: specifier: ^5.2.6 - version: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) packages/config: {} @@ -471,16 +486,16 @@ importers: version: link:../config gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 packages/cosmos: dependencies: @@ -514,31 +529,31 @@ importers: version: link:../core '@tsconfig/strictest': specifier: ^2.0.4 - version: 2.0.4 + version: 2.0.5 cosmjs-types: specifier: ^0.8.0 version: 0.8.0 dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 rambda: specifier: ^9.1.1 version: 9.4.0 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) packages/deposit-address: dependencies: @@ -562,26 +577,26 @@ importers: version: 2.0.0 viem: specifier: ^2.8.18 - version: 2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) devDependencies: '@axelarjs/config': specifier: workspace:* version: link:../config dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vitest: specifier: 1.2.1 version: 1.2.1(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) @@ -596,10 +611,10 @@ importers: version: 8.1.1 tsx: specifier: ^4.7.1 - version: 4.7.1 + version: 4.19.2 viem: specifier: ^2.21.1 - version: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) zx: specifier: ^7.2.3 version: 7.2.3 @@ -615,7 +630,7 @@ importers: version: link:../config '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@types/prettier': specifier: ^2.7.3 version: 2.7.3 @@ -624,28 +639,28 @@ importers: version: 11.1.0 dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 prettier: specifier: ^3.2.5 - version: 3.2.5 + version: 3.4.2 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 strip-ansi: specifier: ^6.0.1 version: 6.0.1 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) packages/proto: dependencies: @@ -661,28 +676,28 @@ importers: version: link:../config '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 degit: specifier: ^2.8.4 version: 2.8.4 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 prettier: specifier: ^3.2.5 - version: 3.2.5 + version: 3.4.2 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 ts-proto: specifier: ^1.169.1 version: 1.181.2 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 packages/transaction-recovery: dependencies: @@ -703,7 +718,7 @@ importers: version: 0.31.3(bufferutil@4.0.8)(utf-8-validate@6.0.3) viem: specifier: ^2.8.18 - version: 2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) devDependencies: '@axelarjs/api': specifier: workspace:* @@ -713,22 +728,22 @@ importers: version: link:../config dotenv: specifier: ^16.4.5 - version: 16.4.5 + version: 16.4.7 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) packages/ui: dependencies: @@ -755,7 +770,7 @@ importers: version: 1.0.3(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@storybook/test': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) clsx: specifier: ^2.1.0 version: 2.1.1 @@ -779,7 +794,7 @@ importers: version: 1.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) styled-cva: specifier: ^0.2.2 - version: 0.2.4(typescript@5.4.3) + version: 0.2.4(typescript@5.7.2) tailwind-merge: specifier: ^1.14.0 version: 1.14.0 @@ -789,43 +804,43 @@ importers: version: 3.3.2 '@storybook/addon-essentials': specifier: ^8.0.4 - version: 8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/addon-interactions': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/addon-links': specifier: ^8.0.4 - version: 8.4.7(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/addons': specifier: ^7.6.17 version: 7.6.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@storybook/blocks': specifier: ^8.0.4 - version: 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/client-logger': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/preview-api': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/react': specifier: ^8.0.4 - version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(typescript@5.4.3) + version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(typescript@5.7.2) '@storybook/react-vite': specifier: ^8.0.4 - version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.28.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(typescript@5.4.3)(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) + version: 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.28.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@storybook/theming': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/types': specifier: ^8.0.4 - version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + version: 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@svgr/cli': specifier: ^7.0.0 - version: 7.0.0(typescript@5.4.3) + version: 7.0.0(typescript@5.7.2) '@tailwindcss/typography': specifier: ^0.5.10 - version: 0.5.15(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3))) + version: 0.5.15(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2))) '@testing-library/jest-dom': specifier: ^5.17.0 version: 5.17.0 @@ -837,10 +852,10 @@ importers: version: 14.5.2(@testing-library/dom@10.4.0) '@tsconfig/strictest': specifier: ^2.0.4 - version: 2.0.4 + version: 2.0.5 '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@types/react': specifier: 18.2.21 version: 18.2.21 @@ -852,10 +867,10 @@ importers: version: 5.14.9 '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.3.4(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) + version: 4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) autoprefixer: specifier: ^10.4.19 - version: 10.4.20(postcss@8.4.38) + version: 10.4.20(postcss@8.4.49) commander: specifier: ^10.0.1 version: 10.0.1 @@ -864,13 +879,13 @@ importers: version: 3.1.3 daisyui: specifier: ^4.8.0 - version: 4.12.20(postcss@8.4.38) + version: 4.12.20(postcss@8.4.49) fast-check: specifier: ^3.17.0 version: 3.23.1 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 happy-dom: specifier: ^13.10.1 version: 13.10.1 @@ -882,49 +897,49 @@ importers: version: link:@testing-library/jest-dom/matchers postcss: specifier: ^8.4.38 - version: 8.4.38 + version: 8.4.49 prettier: specifier: ^3.2.5 - version: 3.2.5 + version: 3.4.2 prettier-plugin-tailwindcss: specifier: ^0.5.12 - version: 0.5.14(@ianvs/prettier-plugin-sort-imports@4.4.0(@vue/compiler-sfc@3.4.21)(prettier@3.2.5))(prettier@3.2.5) + version: 0.5.14(@ianvs/prettier-plugin-sort-imports@4.4.0(prettier@3.4.2))(prettier@3.4.2) pretty-quick: specifier: ^4.0.0 - version: 4.0.0(prettier@3.2.5) + version: 4.0.0(prettier@3.4.2) prop-types: specifier: ^15.8.1 version: 15.8.1 storybook: specifier: ^8.0.4 - version: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + version: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) tailwindcss: specifier: ^3.4.1 - version: 3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3))) + version: 1.0.7(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2))) tailwindcss-radix: specifier: ^2.9.0 version: 2.9.0 tsup: specifier: ^8.0.2 - version: 8.3.5(jiti@2.4.1)(postcss@8.4.38)(tsx@4.7.1)(typescript@5.4.3)(yaml@2.6.1) + version: 8.3.5(jiti@2.4.1)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.6.1) tsx: specifier: ^4.7.1 - version: 4.7.1 + version: 4.19.2 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vite: specifier: ^5.2.6 - version: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) zx: specifier: ^7.2.3 version: 7.2.3 @@ -961,7 +976,7 @@ importers: version: 14.3.1(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tsconfig/strictest': specifier: ^2.0.4 - version: 2.0.4 + version: 2.0.5 '@types/lodash.debounce': specifier: ^4.0.9 version: 4.0.9 @@ -970,7 +985,7 @@ importers: version: 4.1.9 '@types/node': specifier: ^20.11.30 - version: 20.11.30 + version: 20.17.10 '@types/ramda': specifier: ^0.29.11 version: 0.29.12 @@ -985,13 +1000,13 @@ importers: version: 5.14.9 '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.3.4(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) + version: 4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) fast-check: specifier: ^3.17.0 version: 3.23.1 gh-pages: specifier: ^6.1.1 - version: 6.1.1 + version: 6.2.0 happy-dom: specifier: ^13.10.1 version: 13.10.1 @@ -1009,49 +1024,42 @@ importers: version: 18.3.1(react@18.3.1) rimraf: specifier: ^5.0.5 - version: 5.0.5 + version: 5.0.10 typedoc: specifier: ^0.25.12 - version: 0.25.12(typescript@5.4.3) + version: 0.25.13(typescript@5.7.2) typescript: specifier: ^5.4.3 - version: 5.4.3 + version: 5.7.2 vite: specifier: ^5.2.6 - version: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vitest: specifier: ^1.4.0 - version: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + version: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) packages: - '@0no-co/graphql.web@1.0.13': - resolution: {integrity: sha512-jqYxOevheVTU1S36ZdzAkJIdvRp2m3OYIG5SEoKDw5NI8eVwkoI0D/Q3DYNGmXCxkA6CQuoa7zvMiDPTLqUNuw==} + '@0no-co/graphql.web@1.0.8': + resolution: {integrity: sha512-8BG6woLtDMvXB9Ajb/uE+Zr/U7y4qJ3upXi0JQHZmsKUJa7HjF/gFvmL2f3/mSmfZoQGRr9VoY97LCX2uaFMzA==} peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 peerDependenciesMeta: graphql: optional: true - '@0no-co/graphqlsp@1.12.16': - resolution: {integrity: sha512-B5pyYVH93Etv7xjT6IfB7QtMBdaaC07yjbhN6v8H7KgFStMkPvi+oWYBTibMFRMY89qwc9H8YixXg8SXDVgYWw==} + '@0no-co/graphqlsp@1.12.15': + resolution: {integrity: sha512-3DHkAu4JCp+T7U4n/9VoXe8pfGjPnDHXKupCFULkBINK8j4fk6umqseLuQaZLcz6DG5JayGZ3zdhUxdUVlumdA==} peerDependencies: graphql: ^15.5.0 || ^16.0.0 || ^17.0.0 typescript: ^5.0.0 - '@aashutoshrathi/word-wrap@1.2.6': - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - '@adobe/css-tools@4.3.3': resolution: {integrity: sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==} '@adobe/css-tools@4.4.1': resolution: {integrity: sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==} - '@adraffy/ens-normalize@1.10.0': - resolution: {integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==} - '@adraffy/ens-normalize@1.11.0': resolution: {integrity: sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==} @@ -1072,6 +1080,10 @@ packages: resolution: {integrity: sha512-Xnw5xi234B1cmTCzgudV8zq+DDjJ1d1U362CM0vKH1FWmZprKIdqgmOYkiRyu+QiVhnznKiBURiSEHVrNjtYpw==} engines: {node: '>=18'} + '@axelar-network/axelar-cgp-sui@0.0.0-snapshot.424bc13': + resolution: {integrity: sha512-fAErtcvtc+dOQZR0BAuvBxgFaiZ1kvpiXplLi8pV/NlU4VRBtu4GU2y8IldBS8fCqsYDXsuLsF6yTyIhdeQwyA==} + engines: {node: '>=18'} + '@axelar-network/axelar-gmp-sdk-solidity@5.10.0': resolution: {integrity: sha512-s8SImALvYB+5AeiT3tbfWNBI2Mhqw1x91i/zM3DNpVUCnAR2HKtsB9T84KnUn/OJjOVgb4h0lv7q9smeYniRPw==} engines: {node: '>=18'} @@ -1090,14 +1102,6 @@ packages: resolution: {integrity: sha512-5m4ocCIx9qfH1xODPAmhnGPGBl0ytKUzIwvJ94zgTlj0IUmsRkr93ON8/6dRjg+HK8RgfYNwQD1r4Gdy6kaU1w==} engines: {node: '>=18'} - '@babel/code-frame@7.23.5': - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} - engines: {node: '>=6.9.0'} - - '@babel/code-frame@7.24.2': - resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} - engines: {node: '>=6.9.0'} - '@babel/code-frame@7.25.7': resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} engines: {node: '>=6.9.0'} @@ -1106,28 +1110,16 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.23.5': - resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} - engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.3': resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} - '@babel/core@7.24.0': - resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==} - engines: {node: '>=6.9.0'} - '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.23.6': - resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.24.1': - resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==} + '@babel/generator@7.25.7': + resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} engines: {node: '>=6.9.0'} '@babel/generator@7.26.3': @@ -1138,10 +1130,6 @@ packages: resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.23.6': - resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.9': resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} engines: {node: '>=6.9.0'} @@ -1163,36 +1151,14 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-environment-visitor@7.22.20': - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.23.0': - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.22.5': - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - '@babel/helper-member-expression-to-functions@7.25.9': resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.22.15': - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.25.9': resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.23.3': - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-module-transforms@7.26.0': resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} engines: {node: '>=6.9.0'} @@ -1219,30 +1185,18 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.22.5': - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.25.9': resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} - '@babel/helper-split-export-declaration@7.22.6': - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.23.4': - resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} '@babel/helper-string-parser@7.25.9': resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.22.20': - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.25.7': resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} engines: {node: '>=6.9.0'} @@ -1251,10 +1205,6 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.23.5': - resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.25.9': resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} @@ -1263,33 +1213,16 @@ packages: resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.24.0': - resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==} - engines: {node: '>=6.9.0'} - '@babel/helpers@7.26.0': resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.23.4': - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.24.2': - resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} - engines: {node: '>=6.9.0'} - '@babel/highlight@7.25.7': resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.24.0': - resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.24.1': - resolution: {integrity: sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==} + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true @@ -1856,32 +1789,28 @@ packages: resolution: {integrity: sha512-YXHu5lN8kJCb1LOb9PgV6pvak43X2h4HvRApcN5SdWeaItQOzfn1hgP6jasD6KWQyJDBxrVmA9o9OivlnNJK/w==} engines: {node: '>=6.9.0'} - '@babel/runtime@7.22.11': - resolution: {integrity: sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==} - engines: {node: '>=6.9.0'} - '@babel/runtime@7.26.0': resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} engines: {node: '>=6.9.0'} - '@babel/template@7.24.0': - resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} + '@babel/template@7.25.7': + resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} engines: {node: '>=6.9.0'} '@babel/template@7.25.9': resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.24.0': - resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==} + '@babel/traverse@7.25.7': + resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} engines: {node: '>=6.9.0'} '@babel/traverse@7.26.4': resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} engines: {node: '>=6.9.0'} - '@babel/types@7.24.0': - resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} '@babel/types@7.26.3': @@ -1894,11 +1823,11 @@ packages: '@braintree/sanitize-url@7.0.4': resolution: {integrity: sha512-hPYRrKFoI+nuckPgDJfyYAkybFvheo4usS0Vw0HNAe+fmGBQA5Az37b/yStO284atBoqqdOUhKJ3d9Zw3PQkcQ==} - '@changesets/apply-release-plan@7.0.0': - resolution: {integrity: sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==} + '@changesets/apply-release-plan@7.0.6': + resolution: {integrity: sha512-TKhVLtiwtQOgMAC0fCJfmv93faiViKSDqr8oMEqrnNs99gtSC1sZh/aEMS9a+dseU1ESZRCK+ofLgGY7o0fw/Q==} - '@changesets/assemble-release-plan@6.0.0': - resolution: {integrity: sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==} + '@changesets/assemble-release-plan@6.0.5': + resolution: {integrity: sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ==} '@changesets/changelog-git@0.2.0': resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} @@ -1906,42 +1835,45 @@ packages: '@changesets/changelog-github@0.4.8': resolution: {integrity: sha512-jR1DHibkMAb5v/8ym77E4AMNWZKB5NPzw5a5Wtqm1JepAuIF+hrKp2u04NKM14oBZhHglkCfrla9uq8ORnK/dw==} - '@changesets/cli@2.27.1': - resolution: {integrity: sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==} + '@changesets/cli@2.27.10': + resolution: {integrity: sha512-PfeXjvs9OfQJV8QSFFHjwHX3QnUL9elPEQ47SgkiwzLgtKGyuikWjrdM+lO9MXzOE22FO9jEGkcs4b+B6D6X0Q==} hasBin: true - '@changesets/config@3.0.0': - resolution: {integrity: sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==} + '@changesets/config@3.0.4': + resolution: {integrity: sha512-+DiIwtEBpvvv1z30f8bbOsUQGuccnZl9KRKMM/LxUHuDu5oEjmN+bJQ1RIBKNJjfYMQn8RZzoPiX0UgPaLQyXw==} '@changesets/errors@0.2.0': resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} - '@changesets/get-dependents-graph@2.0.0': - resolution: {integrity: sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==} + '@changesets/get-dependents-graph@2.1.2': + resolution: {integrity: sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==} '@changesets/get-github-info@0.5.2': resolution: {integrity: sha512-JppheLu7S114aEs157fOZDjFqUDpm7eHdq5E8SSR0gUBTEK0cNSHsrSR5a66xs0z3RWuo46QvA3vawp8BxDHvg==} - '@changesets/get-release-plan@4.0.0': - resolution: {integrity: sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==} + '@changesets/get-release-plan@4.0.5': + resolution: {integrity: sha512-E6wW7JoSMcctdVakut0UB76FrrN3KIeJSXvB+DHMFo99CnC3ZVnNYDCVNClMlqAhYGmLmAj77QfApaI3ca4Fkw==} '@changesets/get-version-range-type@0.4.0': resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} - '@changesets/git@3.0.0': - resolution: {integrity: sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==} + '@changesets/git@3.0.2': + resolution: {integrity: sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==} - '@changesets/logger@0.1.0': - resolution: {integrity: sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==} + '@changesets/logger@0.1.1': + resolution: {integrity: sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==} '@changesets/parse@0.4.0': resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} - '@changesets/pre@2.0.0': - resolution: {integrity: sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==} + '@changesets/pre@2.0.1': + resolution: {integrity: sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==} + + '@changesets/read@0.6.2': + resolution: {integrity: sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg==} - '@changesets/read@0.6.0': - resolution: {integrity: sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==} + '@changesets/should-skip-package@0.1.1': + resolution: {integrity: sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==} '@changesets/types@4.1.0': resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} @@ -1952,8 +1884,8 @@ packages: '@changesets/types@6.0.0': resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} - '@changesets/write@0.3.0': - resolution: {integrity: sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==} + '@changesets/write@0.3.2': + resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} '@cloudflare/itty-router-openapi@1.1.1': resolution: {integrity: sha512-iJKV7vIaJctMykyiNC89W+ZR3cQ5q8tQL1rVejtkXSj+/AuJYX0l7NrrM3D3u+SijbvsNsNMjFsoCGIzG7tpmQ==} @@ -2076,53 +2008,88 @@ packages: '@confio/ics23@0.6.8': resolution: {integrity: sha512-wB6uo+3A50m0sW/EWcU64xpV/8wShZ6bMTa7pF8eYsTrSkQA7oLUIJcs/wb8g4y2Oyq701BaGiO6n/ak5WXO1w==} - deprecated: Unmaintained. The codebase for this package was moved to https://github.com/cosmos/ics23 but then the JS implementation was removed in https://github.com/cosmos/ics23/pull/353. Please consult the maintainers of https://github.com/cosmos for further assistance. '@cosmjs/amino@0.31.3': resolution: {integrity: sha512-36emtUq895sPRX8PTSOnG+lhJDCVyIcE0Tr5ct59sUbgQiI14y43vj/4WAlJ/utSOxy+Zhj9wxcs4AZfu0BHsw==} + '@cosmjs/amino@0.32.4': + resolution: {integrity: sha512-zKYOt6hPy8obIFtLie/xtygCkH9ZROiQ12UHfKsOkWaZfPQUvVbtgmu6R4Kn1tFLI/SRkw7eqhaogmW/3NYu/Q==} + + '@cosmjs/cosmwasm-stargate@0.32.4': + resolution: {integrity: sha512-Fuo9BGEiB+POJ5WeRyBGuhyKR1ordvxZGLPuPosFJOH9U0gKMgcjwKMCgAlWFkMlHaTB+tNdA8AifWiHrI7VgA==} + '@cosmjs/crypto@0.31.3': resolution: {integrity: sha512-vRbvM9ZKR2017TO73dtJ50KxoGcFzKtKI7C8iO302BQ5p+DuB+AirUg1952UpSoLfv5ki9O416MFANNg8UN/EQ==} + '@cosmjs/crypto@0.32.4': + resolution: {integrity: sha512-zicjGU051LF1V9v7bp8p7ovq+VyC91xlaHdsFOTo2oVry3KQikp8L/81RkXmUIT8FxMwdx1T7DmFwVQikcSDIw==} + '@cosmjs/encoding@0.31.3': resolution: {integrity: sha512-6IRtG0fiVYwyP7n+8e54uTx2pLYijO48V3t9TLiROERm5aUAIzIlz6Wp0NYaI5he9nh1lcEGJ1lkquVKFw3sUg==} + '@cosmjs/encoding@0.32.4': + resolution: {integrity: sha512-tjvaEy6ZGxJchiizzTn7HVRiyTg1i4CObRRaTRPknm5EalE13SV+TCHq38gIDfyUeden4fCuaBVEdBR5+ti7Hw==} + '@cosmjs/json-rpc@0.30.1': resolution: {integrity: sha512-pitfC/2YN9t+kXZCbNuyrZ6M8abnCC2n62m+JtU9vQUfaEtVsgy+1Fk4TRQ175+pIWSdBMFi2wT8FWVEE4RhxQ==} '@cosmjs/json-rpc@0.31.3': resolution: {integrity: sha512-7LVYerXjnm69qqYR3uA6LGCrBW2EO5/F7lfJxAmY+iII2C7xO3a0vAjMSt5zBBh29PXrJVS6c2qRP22W1Le2Wg==} + '@cosmjs/json-rpc@0.32.4': + resolution: {integrity: sha512-/jt4mBl7nYzfJ2J/VJ+r19c92mUKF0Lt0JxM3MXEJl7wlwW5haHAWtzRujHkyYMXOwIR+gBqT2S0vntXVBRyhQ==} + '@cosmjs/math@0.31.3': resolution: {integrity: sha512-kZ2C6glA5HDb9hLz1WrftAjqdTBb3fWQsRR+Us2HsjAYdeE6M3VdXMsYCP5M3yiihal1WDwAY2U7HmfJw7Uh4A==} + '@cosmjs/math@0.32.4': + resolution: {integrity: sha512-++dqq2TJkoB8zsPVYCvrt88oJWsy1vMOuSOKcdlnXuOA/ASheTJuYy4+oZlTQ3Fr8eALDLGGPhJI02W2HyAQaw==} + '@cosmjs/proto-signing@0.31.3': resolution: {integrity: sha512-24+10/cGl6lLS4VCrGTCJeDRPQTn1K5JfknzXzDIHOx8THR31JxA7/HV5eWGHqWgAbudA7ccdSvEK08lEHHtLA==} + '@cosmjs/proto-signing@0.32.4': + resolution: {integrity: sha512-QdyQDbezvdRI4xxSlyM1rSVBO2st5sqtbEIl3IX03uJ7YiZIQHyv6vaHVf1V4mapusCqguiHJzm4N4gsFdLBbQ==} + '@cosmjs/socket@0.31.3': resolution: {integrity: sha512-aqrDGGi7os/hsz5p++avI4L0ZushJ+ItnzbqA7C6hamFSCJwgOkXaOUs+K9hXZdX4rhY7rXO4PH9IH8q09JkTw==} + '@cosmjs/socket@0.32.4': + resolution: {integrity: sha512-davcyYziBhkzfXQTu1l5NrpDYv0K9GekZCC9apBRvL1dvMc9F/ygM7iemHjUA+z8tJkxKxrt/YPjJ6XNHzLrkw==} + '@cosmjs/stargate@0.31.0-alpha.1': resolution: {integrity: sha512-kCTUT3niB2hvcHjhlxpM8cNw1KOVmgZROdJUQaO8Ts4j22OyRZRFdwRPrOIuAKpqhVW2I1vI2HQL9Bg7pk9Glw==} '@cosmjs/stargate@0.31.3': resolution: {integrity: sha512-53NxnzmB9FfXpG4KjOUAYAvWLYKdEmZKsutcat/u2BrDXNZ7BN8jim/ENcpwXfs9/Og0K24lEIdvA4gsq3JDQw==} + '@cosmjs/stargate@0.32.4': + resolution: {integrity: sha512-usj08LxBSsPRq9sbpCeVdyLx2guEcOHfJS9mHGCLCXpdAPEIEQEtWLDpEUc0LEhWOx6+k/ChXTc5NpFkdrtGUQ==} + '@cosmjs/stream@0.30.1': resolution: {integrity: sha512-Fg0pWz1zXQdoxQZpdHRMGvUH5RqS6tPv+j9Eh7Q953UjMlrwZVo0YFLC8OTf/HKVf10E4i0u6aM8D69Q6cNkgQ==} '@cosmjs/stream@0.31.3': resolution: {integrity: sha512-8keYyI7X0RjsLyVcZuBeNjSv5FA4IHwbFKx7H60NHFXszN8/MvXL6aZbNIvxtcIHHsW7K9QSQos26eoEWlAd+w==} + '@cosmjs/stream@0.32.4': + resolution: {integrity: sha512-Gih++NYHEiP+oyD4jNEUxU9antoC0pFSg+33Hpp0JlHwH0wXhtD3OOKnzSfDB7OIoEbrzLJUpEjOgpCp5Z+W3A==} + '@cosmjs/tendermint-rpc@0.31.0-alpha.1': resolution: {integrity: sha512-2gug1NrGQgDwuto1JP/H4wBVHc6VRg6RrHLDkfEZJA5NkPkgYzywXkZN9RxqI3CL1pINt9X8R92raWhTURXUvg==} '@cosmjs/tendermint-rpc@0.31.3': resolution: {integrity: sha512-s3TiWkPCW4QceTQjpYqn4xttUJH36mTPqplMl+qyocdqk5+X5mergzExU/pHZRWQ4pbby8bnR7kMvG4OC1aZ8g==} + '@cosmjs/tendermint-rpc@0.32.4': + resolution: {integrity: sha512-MWvUUno+4bCb/LmlMIErLypXxy7ckUuzEmpufYYYd9wgbdCXaTaO08SZzyFM5PI8UJ/0S2AmUrgWhldlbxO8mw==} + '@cosmjs/utils@0.31.3': resolution: {integrity: sha512-VBhAgzrrYdIe0O5IbKRqwszbQa7ZyQLx9nEQuHQ3HUplQW7P44COG/ye2n6AzCudtqxmwdX7nyX8ta1J07GoqA==} + '@cosmjs/utils@0.32.4': + resolution: {integrity: sha512-D1Yc+Zy8oL/hkUkFUL/bwxvuDBzRGpc4cF7/SkdhxX4iHpSLgdOuTt1mhCh9+kl6NQREy9t7SYZ6xeW5gFe60w==} + '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -2137,6 +2104,9 @@ packages: peerDependencies: '@noble/ciphers': ^1.0.0 + '@emotion/hash@0.9.2': + resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==} + '@emotion/use-insertion-effect-with-fallbacks@1.2.0': resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==} peerDependencies: @@ -2160,27 +2130,21 @@ packages: peerDependencies: esbuild: '*' - '@esbuild/aix-ppc64@0.19.11': - resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - '@esbuild/aix-ppc64@0.19.12': resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.20.2': - resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} - engines: {node: '>=12'} + '@esbuild/aix-ppc64@0.23.1': + resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} + engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -2202,27 +2166,21 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.19.11': - resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm64@0.19.12': resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} engines: {node: '>=12'} cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.20.2': - resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} - engines: {node: '>=12'} + '@esbuild/android-arm64@0.23.1': + resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} + engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -2244,27 +2202,21 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.19.11': - resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - '@esbuild/android-arm@0.19.12': resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} engines: {node: '>=12'} cpu: [arm] os: [android] - '@esbuild/android-arm@0.20.2': - resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} - engines: {node: '>=12'} + '@esbuild/android-arm@0.23.1': + resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} + engines: {node: '>=18'} cpu: [arm] os: [android] @@ -2286,27 +2238,21 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.19.11': - resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - '@esbuild/android-x64@0.19.12': resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} engines: {node: '>=12'} cpu: [x64] os: [android] - '@esbuild/android-x64@0.20.2': - resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} - engines: {node: '>=12'} + '@esbuild/android-x64@0.23.1': + resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} + engines: {node: '>=18'} cpu: [x64] os: [android] @@ -2328,27 +2274,21 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.19.11': - resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-arm64@0.19.12': resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.20.2': - resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} - engines: {node: '>=12'} + '@esbuild/darwin-arm64@0.23.1': + resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} + engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -2370,27 +2310,21 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.19.11': - resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - '@esbuild/darwin-x64@0.19.12': resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} engines: {node: '>=12'} cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.20.2': - resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} - engines: {node: '>=12'} + '@esbuild/darwin-x64@0.23.1': + resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} + engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -2412,27 +2346,21 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.19.11': - resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-arm64@0.19.12': resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.20.2': - resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} - engines: {node: '>=12'} + '@esbuild/freebsd-arm64@0.23.1': + resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} + engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -2454,27 +2382,21 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.19.11': - resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - '@esbuild/freebsd-x64@0.19.12': resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.20.2': - resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} - engines: {node: '>=12'} + '@esbuild/freebsd-x64@0.23.1': + resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} + engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -2496,27 +2418,21 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.19.11': - resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm64@0.19.12': resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} engines: {node: '>=12'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.20.2': - resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} - engines: {node: '>=12'} + '@esbuild/linux-arm64@0.23.1': + resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} + engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -2538,27 +2454,21 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.19.11': - resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - '@esbuild/linux-arm@0.19.12': resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} engines: {node: '>=12'} cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.20.2': - resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} - engines: {node: '>=12'} + '@esbuild/linux-arm@0.23.1': + resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} + engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -2580,27 +2490,21 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.19.11': - resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-ia32@0.19.12': resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} engines: {node: '>=12'} cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.20.2': - resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} - engines: {node: '>=12'} + '@esbuild/linux-ia32@0.23.1': + resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} + engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -2622,27 +2526,21 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.19.11': - resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-loong64@0.19.12': resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} engines: {node: '>=12'} cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.20.2': - resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} - engines: {node: '>=12'} + '@esbuild/linux-loong64@0.23.1': + resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} + engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -2664,27 +2562,21 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.19.11': - resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-mips64el@0.19.12': resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.20.2': - resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} - engines: {node: '>=12'} + '@esbuild/linux-mips64el@0.23.1': + resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} + engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -2706,27 +2598,21 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.19.11': - resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-ppc64@0.19.12': resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.20.2': - resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} - engines: {node: '>=12'} + '@esbuild/linux-ppc64@0.23.1': + resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} + engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -2748,27 +2634,21 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.19.11': - resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-riscv64@0.19.12': resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.20.2': - resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} - engines: {node: '>=12'} + '@esbuild/linux-riscv64@0.23.1': + resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} + engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -2790,27 +2670,21 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.19.11': - resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-s390x@0.19.12': resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} engines: {node: '>=12'} cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.20.2': - resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} - engines: {node: '>=12'} + '@esbuild/linux-s390x@0.23.1': + resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} + engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -2832,27 +2706,21 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.19.11': - resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - '@esbuild/linux-x64@0.19.12': resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} engines: {node: '>=12'} cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.20.2': - resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} + '@esbuild/linux-x64@0.23.1': + resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} + engines: {node: '>=18'} cpu: [x64] os: [linux] @@ -2874,27 +2742,21 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.19.11': - resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - '@esbuild/netbsd-x64@0.19.12': resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.20.2': - resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} - engines: {node: '>=12'} + '@esbuild/netbsd-x64@0.23.1': + resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} + engines: {node: '>=18'} cpu: [x64] os: [netbsd] @@ -2904,6 +2766,12 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/openbsd-arm64@0.23.1': + resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-arm64@0.24.0': resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==} engines: {node: '>=18'} @@ -2922,30 +2790,24 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.19.11': - resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - '@esbuild/openbsd-x64@0.19.12': resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.20.2': - resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.23.1': + resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.24.0': resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==} engines: {node: '>=18'} @@ -2964,27 +2826,21 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.19.11': - resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - '@esbuild/sunos-x64@0.19.12': resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} engines: {node: '>=12'} cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.20.2': - resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} - engines: {node: '>=12'} + '@esbuild/sunos-x64@0.23.1': + resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} + engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -3006,27 +2862,21 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.19.11': - resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-arm64@0.19.12': resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.20.2': - resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} - engines: {node: '>=12'} + '@esbuild/win32-arm64@0.23.1': + resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} + engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -3048,27 +2898,21 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.19.11': - resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-ia32@0.19.12': resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.20.2': - resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} - engines: {node: '>=12'} + '@esbuild/win32-ia32@0.23.1': + resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} + engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -3090,27 +2934,21 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.19.11': - resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - '@esbuild/win32-x64@0.19.12': resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} engines: {node: '>=12'} cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.20.2': - resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} - engines: {node: '>=12'} + '@esbuild/win32-x64@0.23.1': + resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} + engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -3120,22 +2958,22 @@ packages: cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.8.0': - resolution: {integrity: sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==} + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} '@eslint/eslintrc@2.1.4': resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@eslint/js@8.57.0': - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} + '@eslint/js@8.57.1': + resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} '@ethereumjs/common@3.2.0': @@ -3263,8 +3101,8 @@ packages: '@floating-ui/utils@0.2.8': resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==} - '@gql.tada/cli-utils@1.6.3': - resolution: {integrity: sha512-jFFSY8OxYeBxdKi58UzeMXG1tdm4FVjXa8WHIi66Gzu9JWtCE6mqom3a8xkmSw+mVaybFW5EN2WXf1WztJVNyQ==} + '@gql.tada/cli-utils@1.6.2': + resolution: {integrity: sha512-P4bOOayf6zR/uRWHmVyRz8auiuOzNmq8C0YFQbhj5TGGgHr5kkVI2ZIrplWsJqCBTYzpZEYzaxa9iGP6vuKA9Q==} peerDependencies: '@0no-co/graphqlsp': ^1.12.13 '@gql.tada/svelte-support': 1.0.1 @@ -3315,8 +3153,8 @@ packages: peerDependencies: react-hook-form: ^7.0.0 - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} + '@humanwhocodes/config-array@0.13.0': + resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} deprecated: Use @eslint/config-array instead @@ -3324,19 +3162,10 @@ packages: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/object-schema@2.0.2': - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} + '@humanwhocodes/object-schema@2.0.3': + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead - '@ianvs/prettier-plugin-sort-imports@4.2.1': - resolution: {integrity: sha512-NKN1LVFWUDGDGr3vt+6Ey3qPeN/163uR1pOPAlkWpgvAqgxQ6kSdUf1F0it8aHUtKRUzEGcK38Wxd07O61d7+Q==} - peerDependencies: - '@vue/compiler-sfc': 2.7.x || 3.x - prettier: 2 || 3 - peerDependenciesMeta: - '@vue/compiler-sfc': - optional: true - '@ianvs/prettier-plugin-sort-imports@4.4.0': resolution: {integrity: sha512-f4/e+/ANGk3tHuwRW0uh2YuBR50I4h1ZjGQ+5uD8sWfinHTivQsnieR5cz24t8M6Vx4rYvZ5v/IEKZhYpzQm9Q==} peerDependencies: @@ -3458,9 +3287,6 @@ packages: '@jridgewell/source-map@0.3.6': resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} - '@jridgewell/sourcemap-codec@1.4.15': - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} @@ -3495,6 +3321,10 @@ packages: resolution: {integrity: sha512-whiUMPlAOrVGmX8aKYVPvlKyG4CpQXiNNyt74vE1xb5sPvmx5oA7B/kOi/JdBvhGQq97U1/AVdXEdk2zkP8qyA==} engines: {node: '>=14.0.0'} + '@metamask/eth-sig-util@4.0.1': + resolution: {integrity: sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==} + engines: {node: '>=12.0.0'} + '@metamask/json-rpc-engine@7.3.3': resolution: {integrity: sha512-dwZPq8wx9yV3IX2caLi9q9xZBw2XeIoYqdyihDDDpuHVCEiqadJLwqM3zy+uwf6F1QYQ65A8aOMQg1Uw7LMLNg==} engines: {node: '>=16.0.0'} @@ -3585,13 +3415,32 @@ packages: resolution: {integrity: sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==} deprecated: Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion + '@mysten/bcs@1.1.0': + resolution: {integrity: sha512-yy9/1Y4d0FlRywS1+9ze/T7refCbrvwFwJIOKs9M3QBK1njbcHZp+LkVeLqBvIJA5eZ3ZCzmhQ1Xq4Sed5mEBA==} + '@mysten/bcs@1.2.0': resolution: {integrity: sha512-LuKonrGdGW7dq/EM6U2L9/as7dFwnhZnsnINzB/vu08Xfrj0qzWwpLOiXagAa5yZOPLK7anRZydMonczFkUPzA==} - '@mysten/sui@1.18.0': - resolution: {integrity: sha512-cFh5LxXZrXb/ZAD1dkKeQxzhgRYFXreyFGmI7w/JQWwdl+/0FrHJBwaWyTmGxJ/6ZC9SlaOPOk63flN7DbUurg==} + '@mysten/dapp-kit@0.14.43': + resolution: {integrity: sha512-RbbDCMXM8gdhiaJa3gzYpglL2PBBj7QrRQm6pqH/jetVIeEpGNNdyBtdo2H2E9otBRqV2bM/NeXC5NyRSgJXsw==} + peerDependencies: + '@tanstack/react-query': ^5.0.0 + react: '*' + + '@mysten/sui@1.11.0': + resolution: {integrity: sha512-+5kSXmoPFrecxUb+fweqqy4eXRpgvv6H51IwRzJbxlolE0AmnM+5IJbLpTlM5RNZEmmocE7p5bUn1OijbuDVkw==} + engines: {node: '>=18'} + + '@mysten/sui@1.17.0': + resolution: {integrity: sha512-vL6QrH3l10dTatimPmz/feqMbYfEjvh8MPf3Xwn5tjuwDwBCS0ha1kdN+4vUpu6t0aCFviK+Df/vanORS8cbGQ==} engines: {node: '>=18'} + '@mysten/wallet-standard@0.13.19': + resolution: {integrity: sha512-+Rvdi/fDWKSYVuRyO9IvdDZ30S43NfU5jBt8C61QIDrtVBlIMNR3rLy9gTK3uCcCwdNQvwJcRAhWYFgZ1qQoKQ==} + + '@mysten/zksend@0.12.9': + resolution: {integrity: sha512-xr8PL8MnAAlSi9M0L9lFAbKPS3jViGeD3qMUaTYR4GSQ8BSp79q2XezKAGSEmAOryhx+5pxOAq+1ySy+baQwLw==} + '@neondatabase/serverless@0.7.2': resolution: {integrity: sha512-wU3WA2uTyNO7wjPs3Mg0G01jztAxUxzd9/mskMmtPwPTjf7JKWi9AW5/puOGXLxmZ9PVgRFeBVRVYq5nBPhsCg==} @@ -3662,16 +3511,20 @@ packages: resolution: {integrity: sha512-Ygv6WnWJHLLiW4fnNDC1z+i13bud+enXOFRBlpxI+NJliPWx5wdR+oWlTjLuBPTqjUjtHXtjkU6w3kuuH6upZA==} engines: {node: ^14.21.3 || >=16} - '@noble/curves@1.4.0': - resolution: {integrity: sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==} - '@noble/curves@1.4.2': resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + '@noble/curves@1.6.0': + resolution: {integrity: sha512-TlaHRXDehJuRNR9TfZDNQ45mMEd5dwUwmicsafcIX4SsNiqnCHKjE/1alYPd/lDRVhxdhUAlv8uEhMCI5zjIJQ==} + engines: {node: ^14.21.3 || >=16} + '@noble/curves@1.7.0': resolution: {integrity: sha512-UTMhXK9SeDhFJVrHeUJ5uZlI6ajXg10O6Ddocf9S6GjbSBVZsJo88HzKwXznNfGpMTRDyJkqMjNDPYgf0qFWnw==} engines: {node: ^14.21.3 || >=16} + '@noble/hashes@1.2.0': + resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} + '@noble/hashes@1.4.0': resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} engines: {node: '>= 16'} @@ -3688,6 +3541,9 @@ packages: resolution: {integrity: sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==} engines: {node: ^14.21.3 || >=16} + '@noble/secp256k1@1.7.1': + resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -3704,6 +3560,96 @@ packages: resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} engines: {node: '>=12.4.0'} + '@nomicfoundation/edr-darwin-arm64@0.6.5': + resolution: {integrity: sha512-A9zCCbbNxBpLgjS1kEJSpqxIvGGAX4cYbpDYCU2f3jVqOwaZ/NU761y1SvuCRVpOwhoCXqByN9b7HPpHi0L4hw==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-darwin-x64@0.6.5': + resolution: {integrity: sha512-x3zBY/v3R0modR5CzlL6qMfFMdgwd6oHrWpTkuuXnPFOX8SU31qq87/230f4szM+ukGK8Hi+mNq7Ro2VF4Fj+w==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-linux-arm64-gnu@0.6.5': + resolution: {integrity: sha512-HGpB8f1h8ogqPHTyUpyPRKZxUk2lu061g97dOQ/W4CxevI0s/qiw5DB3U3smLvSnBHKOzYS1jkxlMeGN01ky7A==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-linux-arm64-musl@0.6.5': + resolution: {integrity: sha512-ESvJM5Y9XC03fZg9KaQg3Hl+mbx7dsSkTIAndoJS7X2SyakpL9KZpOSYrDk135o8s9P9lYJdPOyiq+Sh+XoCbQ==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-linux-x64-gnu@0.6.5': + resolution: {integrity: sha512-HCM1usyAR1Ew6RYf5AkMYGvHBy64cPA5NMbaeY72r0mpKaH3txiMyydcHibByOGdQ8iFLWpyUdpl1egotw+Tgg==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-linux-x64-musl@0.6.5': + resolution: {integrity: sha512-nB2uFRyczhAvWUH7NjCsIO6rHnQrof3xcCe6Mpmnzfl2PYcGyxN7iO4ZMmRcQS7R1Y670VH6+8ZBiRn8k43m7A==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr-win32-x64-msvc@0.6.5': + resolution: {integrity: sha512-B9QD/4DSSCFtWicO8A3BrsnitO1FPv7axB62wq5Q+qeJ50yJlTmyeGY3cw62gWItdvy2mh3fRM6L1LpnHiB77A==} + engines: {node: '>= 18'} + + '@nomicfoundation/edr@0.6.5': + resolution: {integrity: sha512-tAqMslLP+/2b2sZP4qe9AuGxG3OkQ5gGgHE4isUuq6dUVjwCRPFhAOhpdFl+OjY5P3yEv3hmq9HjUGRa2VNjng==} + engines: {node: '>= 18'} + + '@nomicfoundation/ethereumjs-common@4.0.4': + resolution: {integrity: sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg==} + + '@nomicfoundation/ethereumjs-rlp@5.0.4': + resolution: {integrity: sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw==} + engines: {node: '>=18'} + hasBin: true + + '@nomicfoundation/ethereumjs-tx@5.0.4': + resolution: {integrity: sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw==} + engines: {node: '>=18'} + peerDependencies: + c-kzg: ^2.1.2 + peerDependenciesMeta: + c-kzg: + optional: true + + '@nomicfoundation/ethereumjs-util@9.0.4': + resolution: {integrity: sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q==} + engines: {node: '>=18'} + peerDependencies: + c-kzg: ^2.1.2 + peerDependenciesMeta: + c-kzg: + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + resolution: {integrity: sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + resolution: {integrity: sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + resolution: {integrity: sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + resolution: {integrity: sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + resolution: {integrity: sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + resolution: {integrity: sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + resolution: {integrity: sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer@0.1.2': + resolution: {integrity: sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==} + engines: {node: '>= 12'} + '@panva/hkdf@1.2.1': resolution: {integrity: sha512-6oclG6Y3PiDFcoyk8srjLfVKyMfVCKJ27JwNPViuXziFpmdz+MZnZN/aKY0JGXgYuO/VghU0jcOAZgWXZ1Dmrw==} @@ -4311,41 +4257,21 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.13.0': - resolution: {integrity: sha512-5ZYPOuaAqEH/W3gYsRkxQATBW3Ii1MfaT4EQstTnLKViLi2gLSQmlmtTpGucNP3sXEpOiI5tdGhjdE111ekyEg==} - cpu: [arm] - os: [android] - '@rollup/rollup-android-arm-eabi@4.28.1': resolution: {integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.13.0': - resolution: {integrity: sha512-BSbaCmn8ZadK3UAQdlauSvtaJjhlDEjS5hEVVIN3A4bbl3X+otyf/kOJV08bYiRxfejP3DXFzO2jz3G20107+Q==} - cpu: [arm64] - os: [android] - '@rollup/rollup-android-arm64@4.28.1': resolution: {integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.13.0': - resolution: {integrity: sha512-Ovf2evVaP6sW5Ut0GHyUSOqA6tVKfrTHddtmxGQc1CTQa1Cw3/KMCDEEICZBbyppcwnhMwcDce9ZRxdWRpVd6g==} - cpu: [arm64] - os: [darwin] - '@rollup/rollup-darwin-arm64@4.28.1': resolution: {integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.13.0': - resolution: {integrity: sha512-U+Jcxm89UTK592vZ2J9st9ajRv/hrwHdnvyuJpa5A2ngGSVHypigidkQJP+YiGL6JODiUeMzkqQzbCG3At81Gg==} - cpu: [x64] - os: [darwin] - '@rollup/rollup-darwin-x64@4.28.1': resolution: {integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==} cpu: [x64] @@ -4361,11 +4287,6 @@ packages: cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.13.0': - resolution: {integrity: sha512-8wZidaUJUTIR5T4vRS22VkSMOVooG0F4N+JSwQXWSRiC6yfEsFMLTYRFHvby5mFFuExHa/yAp9juSphQQJAijQ==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.28.1': resolution: {integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==} cpu: [arm] @@ -4376,21 +4297,11 @@ packages: cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.13.0': - resolution: {integrity: sha512-Iu0Kno1vrD7zHQDxOmvweqLkAzjxEVqNhUIXBsZ8hu8Oak7/5VTPrxOEZXYC1nmrBVJp0ZcL2E7lSuuOVaE3+w==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.28.1': resolution: {integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.13.0': - resolution: {integrity: sha512-C31QrW47llgVyrRjIwiOwsHFcaIwmkKi3PCroQY5aVq4H0A5v/vVVAtFsI1nfBngtoRpeREvZOkIhmRwUKkAdw==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-musl@4.28.1': resolution: {integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==} cpu: [arm64] @@ -4406,11 +4317,6 @@ packages: cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.13.0': - resolution: {integrity: sha512-Oq90dtMHvthFOPMl7pt7KmxzX7E71AfyIhh+cPhLY9oko97Zf2C9tt/XJD4RgxhaGeAraAXDtqxvKE1y/j35lA==} - cpu: [riscv64] - os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.28.1': resolution: {integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==} cpu: [riscv64] @@ -4421,51 +4327,26 @@ packages: cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.13.0': - resolution: {integrity: sha512-yUD/8wMffnTKuiIsl6xU+4IA8UNhQ/f1sAnQebmE/lyQ8abjsVyDkyRkWop0kdMhKMprpNIhPmYlCxgHrPoXoA==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-gnu@4.28.1': resolution: {integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.13.0': - resolution: {integrity: sha512-9RyNqoFNdF0vu/qqX63fKotBh43fJQeYC98hCaf89DYQpv+xu0D8QFSOS0biA7cGuqJFOc1bJ+m2rhhsKcw1hw==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-musl@4.28.1': resolution: {integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.13.0': - resolution: {integrity: sha512-46ue8ymtm/5PUU6pCvjlic0z82qWkxv54GTJZgHrQUuZnVH+tvvSP0LsozIDsCBFO4VjJ13N68wqrKSeScUKdA==} - cpu: [arm64] - os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.28.1': resolution: {integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.13.0': - resolution: {integrity: sha512-P5/MqLdLSlqxbeuJ3YDeX37srC8mCflSyTrUsgbU1c/U9j6l2g2GiIdYaGD9QjdMQPMSgYm7hgg0551wHyIluw==} - cpu: [ia32] - os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.28.1': resolution: {integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.13.0': - resolution: {integrity: sha512-UKXUQNbO3DOhzLRwHSpa0HnhhCgNODvfoPWv2FCXme8N/ANFfhIPMGuOT+QuKd16+B5yxZ0HdpNlqPvTMS1qfw==} - cpu: [x64] - os: [win32] - '@rollup/rollup-win32-x64-msvc@4.28.1': resolution: {integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==} cpu: [x64] @@ -4496,12 +4377,18 @@ packages: '@scure/base@1.2.1': resolution: {integrity: sha512-DGmGtC8Tt63J5GfHgfl5CuAXh96VF/LD8K9Hr/Gv0J2lAoRGlPOMpqMpMbCTOoOJMZCk2Xt+DskdDyn6dEFdzQ==} + '@scure/bip32@1.1.5': + resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==} + '@scure/bip32@1.4.0': resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} '@scure/bip32@1.6.0': resolution: {integrity: sha512-82q1QfklrUUdXJzjuRU7iG7D7XiFx5PHYVS0+oeNKhyDLT7WPqs6pBcM2W5ZdwOwKCwoE1Vy1se+DHjcXwCYnA==} + '@scure/bip39@1.1.1': + resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==} + '@scure/bip39@1.3.0': resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} @@ -4575,14 +4462,26 @@ packages: engines: {node: '>= 10'} hasBin: true + '@sentry/core@5.30.0': + resolution: {integrity: sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==} + engines: {node: '>=6'} + '@sentry/core@7.108.0': resolution: {integrity: sha512-I/VNZCFgLASxHZaD0EtxZRM34WG9w2gozqgrKGNMzAymwmQ3K9g/1qmBy4e6iS3YRptb7J5UhQkZQHrcwBbjWQ==} engines: {node: '>=8'} + '@sentry/hub@5.30.0': + resolution: {integrity: sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==} + engines: {node: '>=6'} + '@sentry/integrations@7.108.0': resolution: {integrity: sha512-b/WbK1f3x2rQ4aJJSA4VSwpBXrXFm1Nzrca3Y9qW0MI1wjZEYsDDrh9m6ulLdVBl4YDc2VqYp1COwU/NjuHlog==} engines: {node: '>=8'} + '@sentry/minimal@5.30.0': + resolution: {integrity: sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==} + engines: {node: '>=6'} + '@sentry/nextjs@7.108.0': resolution: {integrity: sha512-etBrMSLRbNAzozetBeL6D+lR9lRAyHmV7NUBGCX9lQvgmcdxkQa15EX8pIKjsMejZ8xAZNsqYVIByIs67A77rg==} engines: {node: '>=8'} @@ -4594,6 +4493,10 @@ packages: webpack: optional: true + '@sentry/node@5.30.0': + resolution: {integrity: sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==} + engines: {node: '>=6'} + '@sentry/node@7.108.0': resolution: {integrity: sha512-pMxc9txnDDkU4Z8k2Uw/DPSLPehNtWV3mjJ3+my0AMORGYrXLkJI93tddlE5z/7k+GEJdj1HsOLgxUN0OU+HGA==} engines: {node: '>=8'} @@ -4608,10 +4511,22 @@ packages: resolution: {integrity: sha512-jo8fDOzcZJclP1+4n9jUtVxTlBFT9hXwxhAMrhrt70FV/nfmCtYQMD3bzIj79nwbhUtFP6pN39JH1o7Xqt1hxQ==} engines: {node: '>=12'} + '@sentry/tracing@5.30.0': + resolution: {integrity: sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==} + engines: {node: '>=6'} + + '@sentry/types@5.30.0': + resolution: {integrity: sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==} + engines: {node: '>=6'} + '@sentry/types@7.108.0': resolution: {integrity: sha512-bKtHITmBN3kqtqE5eVvL8mY8znM05vEodENwRpcm6TSrrBjC2RnwNWVwGstYDdHpNfFuKwC8mLY9bgMJcENo8g==} engines: {node: '>=8'} + '@sentry/utils@5.30.0': + resolution: {integrity: sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==} + engines: {node: '>=6'} + '@sentry/utils@7.108.0': resolution: {integrity: sha512-a45yEFD5qtgZaIFRAcFkG8C8lnDzn6t4LfLXuV4OafGAy/3ZAN3XN8wDnrruHkiUezSSANGsLg3bXaLW/JLvJw==} engines: {node: '>=8'} @@ -5211,8 +5126,8 @@ packages: '@tsconfig/node16@1.0.4': resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - '@tsconfig/strictest@2.0.4': - resolution: {integrity: sha512-/VKO/oufDOvAE48KGzZOEXFBKtR3PnGlb4cJoRtw3Ax5tYwaWnaNgyTJDviIbvjlnn82WMfTNvhegFkj5Xt2UA==} + '@tsconfig/strictest@2.0.5': + resolution: {integrity: sha512-ec4tjL2Rr0pkZ5hww65c+EEPYwxOi4Ryv+0MtjeaSQRJyq322Q27eOQiFbuNgw2hpL4hB1/W/HBGk3VKS43osg==} '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} @@ -5229,6 +5144,12 @@ packages: '@types/babel__traverse@7.20.6': resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} + '@types/bn.js@4.11.6': + resolution: {integrity: sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==} + + '@types/bn.js@5.1.6': + resolution: {integrity: sha512-Xh8vSwUeMKeYYrj3cX4lGQgFSF/N03r+tv4AiLl1SucqV+uTQpxRcnM8AkXKHwYP9ZPXOYXRr2KPXpVlIvqh9w==} + '@types/body-parser@1.19.5': resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} @@ -5244,9 +5165,6 @@ packages: '@types/estree-jsx@1.0.5': resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} - '@types/estree@1.0.5': - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} @@ -5286,8 +5204,8 @@ packages: '@types/jest@29.5.14': resolution: {integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==} - '@types/json-schema@7.0.12': - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} @@ -5307,6 +5225,9 @@ packages: '@types/long@4.0.2': resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} + '@types/lru-cache@5.1.1': + resolution: {integrity: sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -5316,9 +5237,6 @@ packages: '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/minimist@1.2.2': - resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} - '@types/minimist@1.2.5': resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} @@ -5340,9 +5258,6 @@ packages: '@types/node@18.19.68': resolution: {integrity: sha512-QGtpFH1vB99ZmTa63K4/FU8twThj4fuVSBkGddTp7uIL/cuoLWIUSL2RcOaigBhfR+hg5pgGkBnkoOxrTVBMKw==} - '@types/node@20.11.30': - resolution: {integrity: sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==} - '@types/node@20.17.10': resolution: {integrity: sha512-/jrvh5h6NXhEauFFexRin69nA0uHJ5gwk4iDivp/DeoEua3uwCUto6PC86IpRITBOs4+6i2I56K5x5b6WYGXHA==} @@ -5355,6 +5270,9 @@ packages: '@types/nprogress@0.2.3': resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} + '@types/pbkdf2@3.1.2': + resolution: {integrity: sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==} + '@types/pg@8.6.6': resolution: {integrity: sha512-O2xNmXebtwVekJDD+02udOncjVcMZQuTEQEMpKJ0ZRf5E7/9JJX3izhKUcUifBkyKpljyUM6BTgy2trmviKlpw==} @@ -5396,8 +5314,11 @@ packages: '@types/scheduler@0.23.0': resolution: {integrity: sha512-YIoDCTH3Af6XM5VuwGG/QL/CJqga1Zm3NkU3HZ4ZHK2fRMPYP1VczsTUqtsf43PH/iJNVlPHAo2oWX7BSdB2Hw==} - '@types/semver@7.5.1': - resolution: {integrity: sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==} + '@types/secp256k1@4.0.6': + resolution: {integrity: sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==} + + '@types/semver@7.5.8': + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} '@types/send@0.17.4': resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} @@ -5505,15 +5426,26 @@ packages: resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} engines: {node: ^16.0.0 || >=18.0.0} - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - '@ungap/structured-clone@1.2.1': resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} '@upstash/redis@1.25.1': resolution: {integrity: sha512-ACj0GhJ4qrQyBshwFgPod6XufVEfKX2wcaihsEvSdLYnY+m+pa13kGt1RXm/yTHKf4TQi/Dy2A8z/y6WUEOmlg==} + '@vanilla-extract/css@1.15.5': + resolution: {integrity: sha512-N1nQebRWnXvlcmu9fXKVUs145EVwmWtMD95bpiEKtvehHDpUhmO1l2bauS7FGYKbi3dU1IurJbGpQhBclTr1ng==} + + '@vanilla-extract/dynamic@2.1.2': + resolution: {integrity: sha512-9BGMciD8rO1hdSPIAh1ntsG4LPD3IYKhywR7VOmmz9OO4Lx1hlwkSg3E6X07ujFx7YuBfx0GDQnApG9ESHvB2A==} + + '@vanilla-extract/private@1.0.6': + resolution: {integrity: sha512-ytsG/JLweEjw7DBuZ/0JCN4WAQgM9erfSTdS1NQY778hFQSZ6cfCDEZZ0sgVm4k54uNz6ImKB33AYvSR//fjxw==} + + '@vanilla-extract/recipes@0.5.5': + resolution: {integrity: sha512-VadU7+IFUwLNLMgks29AHav/K5h7DOEfTU91RItn5vwdPfzduodNg317YbgWCcpm7FSXkuR3B3X8ZOi95UOozA==} + peerDependencies: + '@vanilla-extract/css': ^1.0.0 + '@vercel/kv@1.0.1': resolution: {integrity: sha512-uTKddsqVYS2GRAM/QMNNXCTuw9N742mLoGRXoNDcyECaxEXvIHG0dEY+ZnYISV4Vz534VwJO+64fd9XeSggSKw==} engines: {node: '>=14.6'} @@ -5536,8 +5468,8 @@ packages: '@vitest/expect@1.2.1': resolution: {integrity: sha512-/bqGXcHfyKgFWYwIgFr1QYDaR9e64pRKxgBNWNXPefPFRhgm+K3+a/dS0cUGEreWngets3dlr8w8SBRw2fCfFQ==} - '@vitest/expect@1.4.0': - resolution: {integrity: sha512-Jths0sWCJZ8BxjKe+p+eKsoqev1/T8lYcrjavEaz8auEJ4jAVY0GwW3JKmdVU4mmNPLPHixh4GNXP7GFtAiDHA==} + '@vitest/expect@1.6.0': + resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} '@vitest/expect@2.0.5': resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} @@ -5551,20 +5483,20 @@ packages: '@vitest/runner@1.2.1': resolution: {integrity: sha512-zc2dP5LQpzNzbpaBt7OeYAvmIsRS1KpZQw4G3WM/yqSV1cQKNKwLGmnm79GyZZjMhQGlRcSFMImLjZaUQvNVZQ==} - '@vitest/runner@1.4.0': - resolution: {integrity: sha512-EDYVSmesqlQ4RD2VvWo3hQgTJ7ZrFQ2VSJdfiJiArkCerDAGeyF1i6dHkmySqk573jLp6d/cfqCN+7wUB5tLgg==} + '@vitest/runner@1.6.0': + resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} '@vitest/snapshot@1.2.1': resolution: {integrity: sha512-Tmp/IcYEemKaqAYCS08sh0vORLJkMr0NRV76Gl8sHGxXT5151cITJCET20063wk0Yr/1koQ6dnmP6eEqezmd/Q==} - '@vitest/snapshot@1.4.0': - resolution: {integrity: sha512-saAFnt5pPIA5qDGxOHxJ/XxhMFKkUSBJmVt5VgDsAqPTX6JP326r5C/c9UuCMPoXNzuudTPsYDZCoJ5ilpqG2A==} + '@vitest/snapshot@1.6.0': + resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} '@vitest/spy@1.2.1': resolution: {integrity: sha512-vG3a/b7INKH7L49Lbp0IWrG6sw9j4waWAucwnksPB1r1FTJgV7nkBByd9ufzu6VWya/QTvQW4V9FShZbZIB2UQ==} - '@vitest/spy@1.4.0': - resolution: {integrity: sha512-Ywau/Qs1DzM/8Uc+yA77CwSegizMlcgTJuYGAi0jujOteJOUf1ujunHThYo243KG9nAyWT3L9ifPYZ5+As/+6Q==} + '@vitest/spy@1.6.0': + resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} '@vitest/spy@2.0.5': resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} @@ -5572,8 +5504,8 @@ packages: '@vitest/utils@1.2.1': resolution: {integrity: sha512-bsH6WVZYe/J2v3+81M5LDU8kW76xWObKIURpPrOXm2pjBniBu2MERI/XP60GpS4PHU3jyK50LUutOwrx4CyHUg==} - '@vitest/utils@1.4.0': - resolution: {integrity: sha512-mx3Yd1/6e2Vt/PUC98DcqTirtfxUyAZ32uK82r8rZzbtBeBo+nqgnjx/LvqQdWsrvNtm14VmurNgcf4nqY5gJg==} + '@vitest/utils@1.6.0': + resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} '@vitest/utils@2.0.5': resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} @@ -5581,21 +5513,6 @@ packages: '@vitest/utils@2.1.8': resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} - '@vue/compiler-core@3.4.21': - resolution: {integrity: sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==} - - '@vue/compiler-dom@3.4.21': - resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==} - - '@vue/compiler-sfc@3.4.21': - resolution: {integrity: sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==} - - '@vue/compiler-ssr@3.4.21': - resolution: {integrity: sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==} - - '@vue/shared@3.4.21': - resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==} - '@wagmi/cli@2.1.20': resolution: {integrity: sha512-JC67ZJipcxiSZfU3cKvRlT4FrawAHmJx+Fu2EM+JwVcY3OIKvBLfVNrzPjUd6myBxkWz41brTQGnwouGyZ3DXg==} hasBin: true @@ -5627,6 +5544,26 @@ packages: typescript: optional: true + '@wallet-standard/app@1.0.1': + resolution: {integrity: sha512-LnLYq2Vy2guTZ8GQKKSXQK3+FRGPil75XEdkZqE6fiLixJhZJoJa5hT7lXxwe0ykVTt9LEThdTbOpT7KadS26Q==} + engines: {node: '>=16'} + + '@wallet-standard/base@1.0.1': + resolution: {integrity: sha512-1To3ekMfzhYxe0Yhkpri+Fedq0SYcfrOfJi3vbLjMwF2qiKPjTGLwZkf2C9ftdQmxES+hmxhBzTwF4KgcOwf8w==} + engines: {node: '>=16'} + + '@wallet-standard/core@1.0.3': + resolution: {integrity: sha512-Jb33IIjC1wM1HoKkYD7xQ6d6PZ8EmMZvyc8R7dFgX66n/xkvksVTW04g9yLvQXrLFbcIjHrCxW6TXMhvpsAAzg==} + engines: {node: '>=16'} + + '@wallet-standard/features@1.0.3': + resolution: {integrity: sha512-m8475I6W5LTatTZuUz5JJNK42wFRgkJTB0I9tkruMwfqBF2UN2eomkYNVf9RbrsROelCRzSFmugqjKZBFaubsA==} + engines: {node: '>=16'} + + '@wallet-standard/wallet@1.0.1': + resolution: {integrity: sha512-qkhJeuQU2afQTZ02yMZE5SFc91Fo3hyFjFkpQglHudENNyiSG0oUKcIjky8X32xVSaumgTZSQUAzpXnCTWHzKQ==} + engines: {node: '>=16'} + '@walletconnect/core@2.13.0': resolution: {integrity: sha512-blDuZxQenjeXcVJvHxPznTNl6c/2DO4VNrFnus+qHmO6OtT5lZRowdMtlCaCNb1q0OxzgrmBDcTOCbFcCpio/g==} @@ -5755,7 +5692,6 @@ packages: '@web3modal/core@4.2.3': resolution: {integrity: sha512-UykKZTELBpb6ey+IV6fkHWsLkjrIdILmRYzhlznyTPbm9qX5pOR9tH0Z3QGUo7YPFmUqMRH1tC9Irsr3SgIbbw==} - deprecated: Web3Modal is now Reown AppKit. Please follow the upgrade guide at https://docs.reown.com/appkit/upgrade/from-w3m-to-reown '@web3modal/polyfills@4.2.3': resolution: {integrity: sha512-RiGxh2hMLSD1s2aTjoejNK/UL377CJhGf5tzmdF1m5xsYHpil+Dnulpio8Yojnm27cOqQD+QiaYUKnHOxErLjQ==} @@ -5787,15 +5723,12 @@ packages: '@web3modal/siwe@4.2.3': resolution: {integrity: sha512-uPma0U/OxAy3LwnF7pCYYX8tn+ONBYNcssuVZxEGsusJD1kF4ueS8lK7eyQogyK5nXqOGdNESOjY1NImNNjMVw==} - deprecated: Web3Modal is now Reown AppKit. Please follow the upgrade guide at https://docs.reown.com/appkit/upgrade/from-w3m-to-reown '@web3modal/ui@4.2.3': resolution: {integrity: sha512-QPPgE0hii1gpAldTdnrP63D/ryI78Ohz99zRBp8vi81lawot7rbdUbryMoX13hMPCW9vW7JYyvX+jJN7uO3QwA==} - deprecated: Web3Modal is now Reown AppKit. Please follow the upgrade guide at https://docs.reown.com/appkit/upgrade/from-w3m-to-reown '@web3modal/wagmi@4.2.3': resolution: {integrity: sha512-oisBCMrOYn8TBgNaSPrumvMmTGox6+3Ii92zxQJalW5U/K9iBTxoejHT033Ss7mFEFybilcfXBAvGNFXfQmtkA==} - deprecated: Web3Modal is now Reown AppKit. Please follow the upgrade guide at https://docs.reown.com/appkit/upgrade/from-w3m-to-reown peerDependencies: '@wagmi/connectors': '>=4' '@wagmi/core': '>=2.0.0' @@ -5821,17 +5754,6 @@ packages: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} hasBin: true - abitype@1.0.5: - resolution: {integrity: sha512-YzDhti7cjlfaBhHutMaboYB21Ha3rXR9QTkNJFzYC4kC8YclaiwPBBBJY8ejFdu2wnJeZCVZSMlQJ7fi8S6hsw==} - peerDependencies: - typescript: '>=5.0.4' - zod: ^3 >=3.22.0 - peerDependenciesMeta: - typescript: - optional: true - zod: - optional: true - abitype@1.0.7: resolution: {integrity: sha512-ZfYYSktDQUwc2eduYu8C4wOs+RDPmnRYMh7zNfzeMtGGgb0U+6tLGjixUic6mXf5xKKCcgT5Qp6cv39tOARVFw==} peerDependencies: @@ -5856,24 +5778,19 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn-walk@8.3.2: - resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} - engines: {node: '>=0.4.0'} - acorn-walk@8.3.4: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} - acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} - hasBin: true - acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} hasBin: true + adm-zip@0.4.16: + resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} + engines: {node: '>=0.3.0'} + aes-js@3.0.0: resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==} @@ -5885,6 +5802,10 @@ packages: resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} engines: {node: '>= 8.0.0'} + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -5894,6 +5815,9 @@ packages: anser@1.4.10: resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==} + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} @@ -5902,9 +5826,9 @@ packages: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} - ansi-escapes@6.2.0: - resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} - engines: {node: '>=14.16'} + ansi-escapes@7.0.0: + resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} + engines: {node: '>=18'} ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} @@ -5969,9 +5893,6 @@ packages: resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} engines: {node: '>= 0.4'} - array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} - array-buffer-byte-length@1.0.1: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} @@ -5983,18 +5904,10 @@ packages: resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} - array-union@1.0.2: - resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==} - engines: {node: '>=0.10.0'} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - array-uniq@1.0.3: - resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==} - engines: {node: '>=0.10.0'} - array.prototype.findlast@1.2.5: resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} engines: {node: '>= 0.4'} @@ -6003,10 +5916,6 @@ packages: resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} engines: {node: '>= 0.4'} - array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} - engines: {node: '>= 0.4'} - array.prototype.flat@1.3.2: resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} engines: {node: '>= 0.4'} @@ -6019,10 +5928,6 @@ packages: resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.1: - resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} - engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} @@ -6061,8 +5966,8 @@ packages: async-mutex@0.2.6: resolution: {integrity: sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==} - async@3.2.5: - resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} + async@3.2.6: + resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} @@ -6085,10 +5990,6 @@ packages: peerDependencies: postcss: '>=8.4.31' - available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} @@ -6164,6 +6065,9 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + base-x@3.0.10: + resolution: {integrity: sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==} + base-x@5.0.0: resolution: {integrity: sha512-sMW3VGSX1QWVFA6l8U62MLKz29rRfpTlYdCqLdpLo1/Yd4zZwSbnUaDfciIAowAqvq7YFnWq9hrhdg1KYgc1lQ==} @@ -6198,6 +6102,9 @@ packages: blake3-wasm@2.1.5: resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==} + blakejs@1.2.1: + resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} + bn.js@4.12.1: resolution: {integrity: sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==} @@ -6210,48 +6117,55 @@ packages: bowser@2.11.0: resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} + boxen@5.1.2: + resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} + engines: {node: '>=10'} + brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - breakword@1.0.6: - resolution: {integrity: sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==} - brorand@1.1.0: resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} browser-assert@1.2.1: resolution: {integrity: sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==} - browserslist@4.23.0: - resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + browserify-aes@1.2.0: + resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} browserslist@4.24.2: resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + bs58@4.0.1: + resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} + bs58@6.0.0: resolution: {integrity: sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==} + bs58check@2.1.2: + resolution: {integrity: sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==} + bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + buffer-xor@1.0.3: + resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} + buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} @@ -6295,9 +6209,6 @@ packages: resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} engines: {node: '>= 0.4'} - call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} - call-bind@1.0.8: resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} engines: {node: '>= 0.4'} @@ -6338,9 +6249,6 @@ packages: resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} engines: {node: '>=14.16'} - caniuse-lite@1.0.30001597: - resolution: {integrity: sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==} - caniuse-lite@1.0.30001687: resolution: {integrity: sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==} @@ -6354,10 +6262,6 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - chai@4.4.1: - resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} - engines: {node: '>=4'} - chai@4.5.0: resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} engines: {node: '>=4'} @@ -6435,27 +6339,35 @@ packages: ci-info@2.0.0: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} - engines: {node: '>=8'} - ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} + cipher-base@1.0.6: + resolution: {integrity: sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw==} + engines: {node: '>= 0.10'} + citty@0.1.6: resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} classnames@2.5.1: resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + cli-boxes@2.2.1: + resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} + engines: {node: '>=6'} + cli-color@2.0.4: resolution: {integrity: sha512-zlnpg0jNcibNrO7GG9IeHH7maWFeCz+Ja1wx/7tZNU5ASSSSZ+/qZciM0/LHCYxSdqv5h2sdbQ/PXYdOuetXvA==} engines: {node: '>=0.10'} - cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} cli-spinners@2.9.2: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} @@ -6479,6 +6391,9 @@ packages: cliui@6.0.0: resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -6487,10 +6402,6 @@ packages: resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} engines: {node: '>=6'} - clone@1.0.4: - resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} - engines: {node: '>=0.8'} - clsx@1.2.1: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} @@ -6529,6 +6440,9 @@ packages: comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + commander@10.0.1: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} @@ -6552,6 +6466,10 @@ packages: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + commander@9.5.0: resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} engines: {node: ^12.20.0 || >=14} @@ -6607,6 +6525,10 @@ packages: cookie-es@1.2.2: resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==} + cookie@0.4.2: + resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} + engines: {node: '>= 0.6'} + cookie@0.5.0: resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} engines: {node: '>= 0.6'} @@ -6660,11 +6582,20 @@ packages: cosmjs-types@0.8.0: resolution: {integrity: sha512-Q2Mj95Fl0PYMWEhA2LuGEIhipF7mQwd9gTQ85DdP9jjjopeoGaDxvmPa5nakNzsq7FnO1DMTatXTAx6bxMH7Lg==} + cosmjs-types@0.9.0: + resolution: {integrity: sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==} + crc-32@1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} engines: {node: '>=0.8'} hasBin: true + create-hash@1.2.0: + resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} + + create-hmac@1.1.7: + resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} + create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} @@ -6674,13 +6605,6 @@ packages: cross-fetch@4.0.0: resolution: {integrity: sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==} - cross-spawn@5.1.0: - resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -6724,19 +6648,6 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - csv-generate@3.4.3: - resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} - - csv-parse@4.16.3: - resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==} - - csv-stringify@5.6.5: - resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==} - - csv@5.5.3: - resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==} - engines: {node: '>= 0.1.90'} - culori@3.3.0: resolution: {integrity: sha512-pHJg+jbuFsCjz9iclQBqyL3B2HLCBF71BwVNujUYEvCeQMvV97R59MNK3R2+jgJ3a1fcZgI9B3vYgz8lzr/BFQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6814,15 +6725,6 @@ packages: supports-color: optional: true - debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.3.7: resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} engines: {node: '>=6.0'} @@ -6849,6 +6751,10 @@ packages: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} @@ -6863,6 +6769,14 @@ packages: dedent@0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + dedent@1.5.3: + resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + deep-eql@4.1.3: resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} engines: {node: '>=6'} @@ -6882,13 +6796,13 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + deep-object-diff@1.1.9: + resolution: {integrity: sha512-Rn+RuwkmkDwCi2/oXOFS9Gsr5lJZu/yTGpK7wAaAIE75CC+LCGEZHpY6VQJa/RoJcrmaA/docWJZvYohlNkWPA==} + deepmerge@4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} - defaults@1.0.4: - resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} - defer-to-connect@2.0.1: resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} engines: {node: '>=10'} @@ -6901,10 +6815,6 @@ packages: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} - define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} - define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} @@ -6972,6 +6882,10 @@ packages: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} + engines: {node: '>=0.3.1'} + difflib@0.2.4: resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} @@ -7027,10 +6941,6 @@ packages: resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} engines: {node: '>=12'} - dotenv@16.4.5: - resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} - engines: {node: '>=12'} - dotenv@16.4.7: resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} engines: {node: '>=12'} @@ -7151,9 +7061,6 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-to-chromium@1.4.704: - resolution: {integrity: sha512-OK01+86Qvby1V6cTiowVbhp25aX4DLZnwar+NocAOXdzKAByd+jq5156bmo4kHwevWMknznW18Y/Svfk2dU91A==} - electron-to-chromium@1.5.72: resolution: {integrity: sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==} @@ -7208,20 +7115,24 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + env-paths@3.0.0: resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + environment@1.1.0: + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} + error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - es-abstract@1.22.1: - resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} - engines: {node: '>= 0.4'} - es-abstract@1.23.5: resolution: {integrity: sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==} engines: {node: '>= 0.4'} @@ -7245,24 +7156,13 @@ packages: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} - es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} - es-set-tostringtag@2.0.3: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} - es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} - es-shim-unscopables@1.0.2: resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - es-to-primitive@1.3.0: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} @@ -7296,35 +7196,26 @@ packages: engines: {node: '>=12'} hasBin: true - esbuild@0.19.11: - resolution: {integrity: sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==} - engines: {node: '>=12'} - hasBin: true - esbuild@0.19.12: resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} engines: {node: '>=12'} hasBin: true - esbuild@0.20.2: - resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} - engines: {node: '>=12'} - hasBin: true - esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} hasBin: true + esbuild@0.23.1: + resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} + engines: {node: '>=18'} + hasBin: true + esbuild@0.24.0: resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} engines: {node: '>=18'} hasBin: true - escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -7426,8 +7317,8 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} + eslint@8.57.1: + resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. hasBin: true @@ -7445,8 +7336,8 @@ packages: engines: {node: '>=4'} hasBin: true - esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} esrecurse@4.3.0: @@ -7491,12 +7382,29 @@ packages: eth-rpc-errors@4.0.3: resolution: {integrity: sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==} + ethereum-cryptography@0.1.3: + resolution: {integrity: sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==} + + ethereum-cryptography@1.2.0: + resolution: {integrity: sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==} + ethereum-cryptography@2.2.1: resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + ethereumjs-abi@0.6.8: + resolution: {integrity: sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==} + deprecated: This library has been deprecated and usage is discouraged. + + ethereumjs-util@6.2.1: + resolution: {integrity: sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==} + ethers@5.7.2: resolution: {integrity: sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==} + ethjs-util@0.1.6: + resolution: {integrity: sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==} + engines: {node: '>=6.5.0', npm: '>=3'} + event-emitter@0.3.5: resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} @@ -7521,6 +7429,9 @@ packages: resolution: {integrity: sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==} engines: {node: '>=12.0.0'} + evp_bytestokey@1.0.3: + resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} + execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -7633,10 +7544,6 @@ packages: resolution: {integrity: sha512-hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg==} engines: {node: '>=8'} - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -7669,9 +7576,6 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} - find-yarn-workspace-root2@1.2.16: - resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} - find-yarn-workspace-root@2.0.0: resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} @@ -7679,6 +7583,10 @@ packages: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} @@ -7701,10 +7609,6 @@ packages: for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} - foreground-child@3.3.0: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} @@ -7732,6 +7636,9 @@ packages: resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} engines: {node: '>=12.20.0'} + fp-ts@1.19.3: + resolution: {integrity: sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==} + fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -7775,9 +7682,6 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -7807,9 +7711,6 @@ packages: get-func-name@2.0.2: resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} - get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} - get-intrinsic@1.2.5: resolution: {integrity: sha512-Y4+pKa7XeRUPWFNvOOYHkRYrfzW07oraURSvjDmRVOJ748OrVmeXtpE4+GCEHncjCjkTxPNRt8kEbxDhsn6VTg==} engines: {node: '>= 0.4'} @@ -7836,22 +7737,15 @@ packages: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} - get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - get-symbol-description@1.0.2: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} - get-tsconfig@4.7.2: - resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} - get-tsconfig@4.8.1: resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} - gh-pages@6.1.1: - resolution: {integrity: sha512-upnohfjBwN5hBP9w2dPE7HO5JJTHzSGMV1JrLrHvNuqmjoYHg6TBrCcnEoorjG/e0ejbuvnwyKMdTyM40PEByw==} + gh-pages@6.2.0: + resolution: {integrity: sha512-HMXJ8th9u5wRXaZCnLcs/d3oVvCHiZkaP5KQExQljYGwJjQbSPyTdHe/Gc1IvYUR/rWiZLxNobIqfoMHKTKjHQ==} engines: {node: '>=10'} hasBin: true @@ -7876,11 +7770,6 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true - glob@10.3.7: - resolution: {integrity: sha512-wCMbE1m9Nx5yD9LYtgsVWq5VhHlk5WzJirw594qZR6AIvQYuHrdDtIktUVjQItalD53y7dqoedu9xP0u0WaxIQ==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true @@ -7902,18 +7791,10 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - globals@13.21.0: - resolution: {integrity: sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==} - engines: {node: '>=8'} - globals@13.24.0: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} - globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - globalthis@1.0.4: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} @@ -7926,18 +7807,11 @@ packages: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - globby@6.1.0: - resolution: {integrity: sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==} - engines: {node: '>=0.10.0'} - goober@2.1.16: resolution: {integrity: sha512-erjk19y1U33+XAMe1VTvIONHYoSqE4iS7BYUZfHaqeohLmnC0FdxEh7rQU+6MZ4OajItzjZFSRtVANrQwNq6/g==} peerDependencies: csstype: ^3.0.10 - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} @@ -7946,8 +7820,8 @@ packages: resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} engines: {node: '>=14.16'} - gql.tada@1.8.10: - resolution: {integrity: sha512-FrvSxgz838FYVPgZHGOSgbpOjhR+yq44rCzww3oOPJYi0OvBJjAgCiP6LEokZIYND2fUTXzQAyLgcvgw1yNP5A==} + gql.tada@1.8.9: + resolution: {integrity: sha512-hW6SWLfkRUh/xDYSAb9Ps+Eb3kp7LyZ9GGrWUyfy3d8rG2bIAj+DvyZwxy4HyQHyjZLVJU1doJhvXrYvVez+xw==} hasBin: true peerDependencies: typescript: ^5.0.0 @@ -7958,14 +7832,11 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - grapheme-splitter@1.0.4: - resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} - graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphql@16.10.0: - resolution: {integrity: sha512-AjqGKbDGUFRKIRCP9tCKiIGHyriz2oHEbPIbEtcSLSs4YjReZOIPQQWek4+6hjw62H9QShXHyaGivGiYVLeYFQ==} + graphql@16.9.0: + resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} gzip-size@6.0.0: @@ -7986,6 +7857,18 @@ packages: resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} engines: {node: '>=6'} + hardhat@2.22.17: + resolution: {integrity: sha512-tDlI475ccz4d/dajnADUTRc1OJ3H8fpP9sWhXhBPpYsQOg8JHq5xrDimo53UhWPl7KJmAeDCm1bFG74xvpGRpg==} + hasBin: true + peerDependencies: + ts-node: '*' + typescript: '*' + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} @@ -7997,39 +7880,24 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} - has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - has-proto@1.2.0: resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - has-symbols@1.1.0: resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} - has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - has-tostringtag@1.0.2: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} - has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} + hash-base@3.1.0: + resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} + engines: {node: '>=4'} hash.js@1.1.7: resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} @@ -8050,6 +7918,10 @@ packages: hastscript@6.0.0: resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + heap@0.2.7: resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} @@ -8151,14 +8023,6 @@ packages: ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - ignore@5.3.0: - resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} - engines: {node: '>= 4'} - - ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -8178,6 +8042,9 @@ packages: resolution: {integrity: sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==} engines: {node: '>=0.10.0'} + immutable@4.3.7: + resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==} + import-fresh@2.0.0: resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} engines: {node: '>=4'} @@ -8215,10 +8082,6 @@ packages: inline-style-parser@0.2.4: resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} - internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} - internal-slot@1.0.7: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} @@ -8226,6 +8089,9 @@ packages: invariant@2.2.4: resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + io-ts@1.10.4: + resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} + iron-webcrypto@1.2.1: resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} @@ -8245,9 +8111,6 @@ packages: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} - is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} - is-array-buffer@3.0.4: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} @@ -8338,6 +8201,10 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-hex-prefixed@1.0.0: + resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} + engines: {node: '>=6.5.0', npm: '>=3'} + is-hexadecimal@1.0.4: resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} @@ -8353,10 +8220,6 @@ packages: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} - is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - is-negative-zero@2.0.3: resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} @@ -8403,10 +8266,6 @@ packages: is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - is-regex@1.2.0: resolution: {integrity: sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==} engines: {node: '>= 0.4'} @@ -8419,9 +8278,6 @@ packages: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} - is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - is-shared-array-buffer@1.0.3: resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} engines: {node: '>= 0.4'} @@ -8434,10 +8290,6 @@ packages: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - is-string@1.1.0: resolution: {integrity: sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==} engines: {node: '>= 0.4'} @@ -8446,10 +8298,6 @@ packages: resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} engines: {node: '>=4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - is-symbol@1.1.0: resolution: {integrity: sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==} engines: {node: '>= 0.4'} @@ -8458,14 +8306,14 @@ packages: resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==} engines: {node: '>=0.10.0'} - is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} - is-typed-array@1.1.13: resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} engines: {node: '>= 0.4'} + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} @@ -8521,11 +8369,6 @@ packages: peerDependencies: ws: '*' - isows@1.0.4: - resolution: {integrity: sha512-hEzjY+x9u9hPmBom9IIAqdJCwNLax+xrPb51vEPpERoFlIxgmZcHzsT5jKG06nvInKOBGvReAVz80Umed5CczQ==} - peerDependencies: - ws: '*' - isows@1.0.6: resolution: {integrity: sha512-lPHCayd40oW98/I0uvgaHKWCSvkzY27LjWLbtzOm64yQ+G3Q5npjjbdppU65iZXkK1Zt+kH9pfegli0AYfwYYw==} peerDependencies: @@ -8561,10 +8404,6 @@ packages: itty-time@1.0.6: resolution: {integrity: sha512-+P8IZaLLBtFv8hCkIjcymZOp4UJ+xW6bSlQsXGqrkmJh7vSiMFSlNne0mCYagEE0N7HDNR5jJBRxwN0oYv61Rw==} - jackspeak@2.3.0: - resolution: {integrity: sha512-uKmsITSsF4rUWQHzqaRUuyAir3fZfW3f202Ee34lz/gZCi970CPZwyQXLGNgWJvvZbvFyzeyGq0+4fcG/mBKZg==} - engines: {node: '>=14'} - jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} @@ -8643,9 +8482,6 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-tokens@8.0.3: - resolution: {integrity: sha512-UfJMcSJc+SEXEl9lH/VLHSZbThQyLpw1vLO1Lb+j4RWDvG3N2f7yj3PVQA3cmkTBNldJ9eFnM+xEXxHIXrYiJw==} - js-tokens@9.0.1: resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} @@ -8673,11 +8509,6 @@ packages: resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} engines: {node: '>=12.0.0'} - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -8716,6 +8547,10 @@ packages: resolution: {integrity: sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==} engines: {node: '>= 0.4'} + json-stream-stringify@3.1.6: + resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} + engines: {node: '>=7.10.1'} + json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} hasBin: true @@ -8725,9 +8560,6 @@ packages: engines: {node: '>=6'} hasBin: true - jsonc-parser@3.2.0: - resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} - jsonc-parser@3.3.1: resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} @@ -8768,10 +8600,6 @@ packages: klaw-sync@6.0.0: resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==} - kleur@4.1.5: - resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} - engines: {node: '>=6'} - language-subtag-registry@0.3.23: resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} @@ -8799,10 +8627,6 @@ packages: lighthouse-logger@1.4.2: resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==} - lilconfig@3.0.0: - resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} - engines: {node: '>=14'} - lilconfig@3.1.3: resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} @@ -8810,8 +8634,8 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - lint-staged@15.2.2: - resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==} + lint-staged@15.2.11: + resolution: {integrity: sha512-Ev6ivCTYRTGs9ychvpVw35m/bcNDuBN+mnTeObCL5h+boS5WzBEC6LHI4I9F/++sZm1m+J2LEiy0gxL/R9TBqQ==} engines: {node: '>=18.12.0'} hasBin: true @@ -8819,8 +8643,8 @@ packages: resolution: {integrity: sha512-I8oW2+QL5KJo8zXNWX046M134WchxsXC7SawLPvRQpogCbkyQIaFxPE89A2HiwR7vAK2Dm2ERBAmyjTYGYEpBg==} hasBin: true - listr2@8.0.1: - resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==} + listr2@8.2.5: + resolution: {integrity: sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ==} engines: {node: '>=18.0.0'} lit-element@3.3.3: @@ -8845,14 +8669,6 @@ packages: resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - load-yaml-file@0.2.0: - resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} - engines: {node: '>=6'} - - local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} - engines: {node: '>=14'} - local-pkg@0.5.1: resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} engines: {node: '>=14'} @@ -8923,8 +8739,12 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - log-update@6.0.0: - resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + log-update@6.1.0: + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} long@4.0.0: @@ -8953,16 +8773,9 @@ packages: lowlight@1.20.0: resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==} - lru-cache@10.0.1: - resolution: {integrity: sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==} - engines: {node: 14 || >=16.14} - lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@4.1.5: - resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} - lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -8973,6 +8786,9 @@ packages: lru-queue@0.1.0: resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==} + lru_map@0.3.3: + resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==} + lucide-react@0.265.0: resolution: {integrity: sha512-znyvziBEUQ7CKR31GiU4viomQbJrpDLG5ac+FajwiZIavC3YbPFLkzQx3dCXT4JWJx/pB34EwmtiZ0ElGZX0PA==} peerDependencies: @@ -9000,10 +8816,6 @@ packages: magic-string@0.30.15: resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} - magic-string@0.30.8: - resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==} - engines: {node: '>=12'} - magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -9047,6 +8859,9 @@ packages: marky@1.2.5: resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} + md5.js@1.3.5: + resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} + mdast-util-from-markdown@2.0.2: resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} @@ -9077,6 +8892,9 @@ packages: mdn-data@2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + media-query-parser@2.0.2: + resolution: {integrity: sha512-1N4qp+jE0pL5Xv4uEcwVUhIkwdUO3S/9gML90nqKA7v7FcOS5vUtatfzok9S9U1EJU8dHWlcv95WLnKmmxZI9w==} + media-typer@0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} @@ -9091,9 +8909,9 @@ packages: memoizerific@1.11.3: resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} - meow@6.1.1: - resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} - engines: {node: '>=8'} + memorystream@0.3.1: + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} meow@8.1.2: resolution: {integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==} @@ -9244,10 +9062,6 @@ packages: micromark@4.0.1: resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==} - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -9278,6 +9092,10 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -9331,10 +9149,6 @@ packages: minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - minipass@7.0.3: - resolution: {integrity: sha512-LhbbwCfz3vsb12j/WkWQPZfKTsgqIe1Nf/ti1pKjYESGLHIVjWU96G9/ljLH4F9mWNVhlQOm0VySdAWzf05dpg==} - engines: {node: '>=16 || 14 >=14.17'} - minipass@7.1.2: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} @@ -9347,9 +9161,8 @@ packages: typescript: optional: true - mixme@0.5.9: - resolution: {integrity: sha512-VC5fg6ySUscaWUpI4gxCBTQMH2RdUpNrk+MsbpCYtIvf9SBJdiUey4qE7BXviJsJR4nDQxCZ+3yaYNW3guz/Pw==} - engines: {node: '>= 8.0.0'} + mitt@3.0.1: + resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} @@ -9360,15 +9173,20 @@ packages: engines: {node: '>=10'} hasBin: true - mlly@1.4.1: - resolution: {integrity: sha512-SCDs78Q2o09jiZiE2WziwVBEqXQ02XkGdUy45cbJf+BpYRIjArXRJ1Wbowxkb+NaM9DWvS3UC9GiO/6eqvQ/pg==} - - mlly@1.6.1: - resolution: {integrity: sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==} - mlly@1.7.3: resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} + mnemonist@0.38.5: + resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} + + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + modern-ahocorasick@1.0.1: + resolution: {integrity: sha512-yoe+JbhTClckZ67b2itRtistFKf8yPYelHLc7e5xAwtNAXxM6wJTUx2C7QeVSJFDzKT7bCIFyBVybPMKvmB9AA==} + motion@10.16.2: resolution: {integrity: sha512-p+PurYqfUdcJZvtnmAqu5fJgV2kR0uLFQuBKtLeFVTrYEVllI99tiOTSefVNYuip9ELTEkepIIDftNdze76NAQ==} @@ -9383,9 +9201,6 @@ packages: ms@2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -9403,11 +9218,6 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - nanoid@3.3.8: resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -9416,6 +9226,10 @@ packages: nanospinner@1.2.2: resolution: {integrity: sha512-Zt/AmG6qRU3e+WnzGGLuMCEAO/dAu45stNbHY223tUxldaDAeE+FxSPsd9Q+j+paejmm0ZbrNVs5Sraqy3dRxA==} + nanostores@0.10.3: + resolution: {integrity: sha512-Nii8O1XqmawqSCf9o2aWqVxhKRN01+iue9/VEd1TiJCr9VT5XxgPFbF1Edl1XN6pwJcZRsl8Ki+z01yb/T/C2g==} + engines: {node: ^18.0.0 || >=20.0.0} + natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -9470,6 +9284,9 @@ packages: node-addon-api@2.0.2: resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + node-addon-api@5.1.0: + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} + node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} @@ -9532,9 +9349,6 @@ packages: '@types/node': optional: true - node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -9596,9 +9410,6 @@ packages: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} - object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - object-inspect@1.13.3: resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==} engines: {node: '>= 0.4'} @@ -9611,10 +9422,6 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} - object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - object.assign@4.1.5: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} @@ -9635,6 +9442,9 @@ packages: resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} engines: {node: '>= 0.4'} + obliterator@2.0.4: + resolution: {integrity: sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==} + ofetch@1.4.1: resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==} @@ -9667,6 +9477,10 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + open@7.4.2: resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} engines: {node: '>=8'} @@ -9705,8 +9519,8 @@ packages: openid-client@5.7.1: resolution: {integrity: sha512-jDBPgSVfTnkIh71Hg9pRvtJc6wTwqjRkN88+gCFtYWrlP4Yx2Dsrow8uPi3qLr/aeymPF3o2+dS+wOpglK04ew==} - optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} os-tmpdir@1.0.2: @@ -9760,6 +9574,10 @@ packages: resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} engines: {node: '>=6'} + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -9771,6 +9589,12 @@ packages: resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==} engines: {node: '>=14.16'} + package-manager-detector@0.2.7: + resolution: {integrity: sha512-g4+387DXDKlZzHkP+9FLt8yKj8+/3tOkPv7DVTJGGRm00RkEWgqbFstX1mXJ4M0VDYhUqsTOiISqNOJnhAu3PQ==} + + pako@2.1.0: + resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} + parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -9821,10 +9645,6 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} - path-scurry@1.11.1: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} @@ -9849,6 +9669,10 @@ packages: pause-stream@0.0.11: resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} + pbkdf2@3.1.2: + resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} + engines: {node: '>=0.12'} + pg-cloudflare@1.1.1: resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==} @@ -9883,9 +9707,6 @@ packages: pgpass@1.0.5: resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==} - picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -9922,14 +9743,6 @@ packages: resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==} engines: {node: '>=10'} - pinkie-promise@2.0.1: - resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} - engines: {node: '>=0.10.0'} - - pinkie@2.0.4: - resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} - engines: {node: '>=0.10.0'} - pino-abstract-transport@0.5.0: resolution: {integrity: sha512-+KAgmVeqXYbTtU2FScx1XS3kNyfZ5TrXY07V96QnUSFqo2gAqlvmaxH67Lj7SWazqsMabf+58ctdTcBgnOLUOQ==} @@ -9952,9 +9765,6 @@ packages: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} - pkg-types@1.0.3: - resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} - pkg-types@1.2.1: resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} @@ -10050,10 +9860,6 @@ packages: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} - postcss@8.4.38: - resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.4.49: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} @@ -10082,10 +9888,6 @@ packages: preact@10.25.1: resolution: {integrity: sha512-frxeZV2vhQSohQwJ7FvlqC40ze89+8friponWUFeVEkaCfhC6Eu4V0iND5C9CXz8JLndV07QRDeXzH1+Anz5Og==} - preferred-pm@3.0.3: - resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} - engines: {node: '>=10'} - prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -10147,11 +9949,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - prettier@3.4.2: resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} engines: {node: '>=14'} @@ -10234,9 +10031,6 @@ packages: engines: {node: '>= 0.10'} hasBin: true - pseudomap@1.0.2: - resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} - pump@3.0.2: resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} @@ -10547,19 +10341,12 @@ packages: regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - regenerator-runtime@0.14.0: - resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} - engines: {node: '>= 0.4'} - regexp.prototype.flags@1.5.3: resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} @@ -10637,6 +10424,9 @@ packages: resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolve@1.17.0: + resolution: {integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==} + resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true @@ -10649,9 +10439,9 @@ packages: resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} engines: {node: '>=14.16'} - restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} ret@0.2.2: resolution: {integrity: sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==} @@ -10661,8 +10451,8 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} rimraf@2.6.3: resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} @@ -10679,9 +10469,15 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true - rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} + rimraf@5.0.10: + resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} + hasBin: true + + ripemd160@2.0.2: + resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} + + rlp@2.2.7: + resolution: {integrity: sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==} hasBin: true rollup-plugin-inject@3.0.2: @@ -10699,11 +10495,6 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - rollup@4.13.0: - resolution: {integrity: sha512-3YegKemjoQnYKmsBlOHfMLVPPA5xLkQ8MHLLSw/fBrFaVkEayL51DilPpNNLq1exr98F2B1TzrV0FUlN3gWRPg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - rollup@4.28.1: resolution: {integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -10719,10 +10510,6 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - safe-array-concat@1.0.0: - resolution: {integrity: sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==} - engines: {node: '>=0.4'} - safe-array-concat@1.1.2: resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} engines: {node: '>=0.4'} @@ -10733,9 +10520,6 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - safe-regex-test@1.0.3: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} @@ -10756,6 +10540,14 @@ packages: scrypt-js@3.0.1: resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} + secp256k1@4.0.4: + resolution: {integrity: sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==} + engines: {node: '>=18.0.0'} + + secp256k1@5.0.1: + resolution: {integrity: sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==} + engines: {node: '>=18.0.0'} + selfsigned@2.4.1: resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} engines: {node: '>=10'} @@ -10773,11 +10565,6 @@ packages: engines: {node: '>=10'} hasBin: true - semver@7.6.0: - resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} - engines: {node: '>=10'} - hasBin: true - semver@7.6.3: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} @@ -10795,6 +10582,9 @@ packages: resolution: {integrity: sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ==} engines: {node: '>=10'} + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + serve-static@1.16.2: resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} engines: {node: '>= 0.8.0'} @@ -10810,6 +10600,9 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} @@ -10821,18 +10614,10 @@ packages: resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} engines: {node: '>=8'} - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} @@ -10848,9 +10633,6 @@ packages: resolution: {integrity: sha512-cMGfwNyfDZ/nzJ2k2M+ClthBIh//GlZl1JEf47Uoa9XR11bz8Pa2T2wQO4bVrRdH48LrIDWJahQziKo3MjhsWg==} hasBin: true - side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} engines: {node: '>= 0.4'} @@ -10892,10 +10674,9 @@ packages: resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} engines: {node: '>=18'} - smartwrap@2.0.2: - resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} - engines: {node: '>=6'} - hasBin: true + smol-toml@1.3.1: + resolution: {integrity: sha512-tEYNll18pPKHroYSmLLrksq233j021G0giwW7P3D24jC54pQ5W5BXMsQ/Mvw1OJCmEYDgY+lrzT+3nNUtoNfXQ==} + engines: {node: '>= 18'} socket.io-client@4.8.1: resolution: {integrity: sha512-hJVXfu3E28NmzGk8o1sHhN3om52tRvwYeidbj7xKy2eIIse5IoKX3USlS6Tqt3BHAtflLIkCQBkzVrEEfWUyYQ==} @@ -10908,13 +10689,14 @@ packages: sodium-native@4.3.1: resolution: {integrity: sha512-YdP64gAdpIKHfL4ttuX4aIfjeunh9f+hNeQJpE9C8UMndB3zkgZ7YmmGT4J2+v6Ibyp6Wem8D1TcSrtdW0bqtg==} + solc@0.8.26: + resolution: {integrity: sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==} + engines: {node: '>=10.0.0'} + hasBin: true + sonic-boom@2.8.0: resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==} - source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -10947,8 +10729,8 @@ packages: spawn-command@0.0.2: resolution: {integrity: sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==} - spawndamnit@2.0.0: - resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} + spawndamnit@3.0.1: + resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} spdx-correct@3.2.0: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} @@ -11013,9 +10795,6 @@ packages: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} - std-env@3.7.0: - resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} - std-env@3.8.0: resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} @@ -11045,9 +10824,6 @@ packages: stream-shift@1.0.3: resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} - stream-transform@2.1.3: - resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} - streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} @@ -11086,23 +10862,13 @@ packages: string.prototype.repeat@1.0.0: resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} - engines: {node: '>= 0.4'} - string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} - string.prototype.trimend@1.0.8: resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} - string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} - string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} @@ -11136,6 +10902,10 @@ packages: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} + strip-hex-prefix@1.0.0: + resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} + engines: {node: '>=6.5.0', npm: '>=3'} + strip-indent@3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -11155,9 +10925,6 @@ packages: strip-literal@1.3.0: resolution: {integrity: sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==} - strip-literal@2.0.0: - resolution: {integrity: sha512-f9vHgsCWBq2ugHAkGMiiYY+AYG0D/cbloKKg0nhaaaSNsujdGIpVXCNsrJpCKr5M0f4aI31mr13UjY6GAuXCKA==} - strip-literal@2.1.1: resolution: {integrity: sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==} @@ -11319,9 +11086,6 @@ packages: tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} - tinybench@2.6.0: - resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} - tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} @@ -11332,10 +11096,6 @@ packages: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} - tinypool@0.8.2: - resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==} - engines: {node: '>=14.0.0'} - tinypool@0.8.4: resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} engines: {node: '>=14.0.0'} @@ -11422,9 +11182,9 @@ packages: '@trpc/server': ^10.0.0 zod: ^3.14.4 - ts-api-utils@1.0.3: - resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} - engines: {node: '>=16.13.0'} + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} + engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' @@ -11475,12 +11235,12 @@ packages: tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsort@0.0.1: + resolution: {integrity: sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==} + tsup@8.3.5: resolution: {integrity: sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==} engines: {node: '>=18'} @@ -11500,50 +11260,48 @@ packages: typescript: optional: true - tsx@4.7.1: - resolution: {integrity: sha512-8d6VuibXHtlN5E3zFkgY8u4DX7Y3Z27zvvPKVmLon/D4AjuKzarkUBTLDBgj9iTQ0hg5xM7c/mYiRVM+HETf0g==} + tsx@4.19.2: + resolution: {integrity: sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==} engines: {node: '>=18.0.0'} hasBin: true - tty-table@4.2.1: - resolution: {integrity: sha512-xz0uKo+KakCQ+Dxj1D/tKn2FSyreSYWzdkL/BYhgN6oMW808g8QRMuh1atAV9fjTPbWBjfbkKQpI/5rEcnAc7g==} - engines: {node: '>=8.0.0'} - hasBin: true - - turbo-darwin-64@1.13.0: - resolution: {integrity: sha512-ctHeJXtQgBcgxnCXwrJTGiq57HtwF7zWz5NTuSv//5yeU01BtQIt62ArKfjudOhRefWJbX3Z5srn88XTb9hfww==} + turbo-darwin-64@1.13.4: + resolution: {integrity: sha512-A0eKd73R7CGnRinTiS7txkMElg+R5rKFp9HV7baDiEL4xTG1FIg/56Vm7A5RVgg8UNgG2qNnrfatJtb+dRmNdw==} cpu: [x64] os: [darwin] - turbo-darwin-arm64@1.13.0: - resolution: {integrity: sha512-/Q9/pNFkF9w83tNxwMpgapwLYdQ12p8mpty2YQRoUiS9ClWkcqe136jR0mtuMqzlNlpREOFZaoyIthjt6Sdo0g==} + turbo-darwin-arm64@1.13.4: + resolution: {integrity: sha512-eG769Q0NF6/Vyjsr3mKCnkG/eW6dKMBZk6dxWOdrHfrg6QgfkBUk0WUUujzdtVPiUIvsh4l46vQrNVd9EOtbyA==} cpu: [arm64] os: [darwin] - turbo-linux-64@1.13.0: - resolution: {integrity: sha512-hgbT7o020BGV4L7Sd8hhFTd5zVKPKxbsr0dPfel/9NkdTmptz2aGZ0Vb2MAa18SY3XaCQpDxmdYuOzvvRpo5ZA==} + turbo-linux-64@1.13.4: + resolution: {integrity: sha512-Bq0JphDeNw3XEi+Xb/e4xoKhs1DHN7OoLVUbTIQz+gazYjigVZvtwCvgrZI7eW9Xo1eOXM2zw2u1DGLLUfmGkQ==} cpu: [x64] os: [linux] - turbo-linux-arm64@1.13.0: - resolution: {integrity: sha512-WK01i2wDZARrV+HEs495A3hNeGMwQR5suYk7G+ceqqW7b+dOTlQdvUjnI3sg7wAnZPgjafFs/hoBaZdJjVa/nw==} + turbo-linux-arm64@1.13.4: + resolution: {integrity: sha512-BJcXw1DDiHO/okYbaNdcWN6szjXyHWx9d460v6fCHY65G8CyqGU3y2uUTPK89o8lq/b2C8NK0yZD+Vp0f9VoIg==} cpu: [arm64] os: [linux] - turbo-windows-64@1.13.0: - resolution: {integrity: sha512-hJgSZJZwlWHNwLEthaqJqJWGm4NqF5X/I7vE0sPE4i/jeDl8f0n1hcOkgJkJiNXVxhj+qy/9+4dzbPLKT9imaQ==} + turbo-windows-64@1.13.4: + resolution: {integrity: sha512-OFFhXHOFLN7A78vD/dlVuuSSVEB3s9ZBj18Tm1hk3aW1HTWTuAw0ReN6ZNlVObZUHvGy8d57OAGGxf2bT3etQw==} cpu: [x64] os: [win32] - turbo-windows-arm64@1.13.0: - resolution: {integrity: sha512-L/ErxYoXeq8tmjU/AIGicC9VyBN1zdYw8JlM4yPmMI0pJdY8E4GaYK1IiIazqq7M72lmQhU/WW7fV9FqEktwrw==} + turbo-windows-arm64@1.13.4: + resolution: {integrity: sha512-u5A+VOKHswJJmJ8o8rcilBfU5U3Y1TTAfP9wX8bFh8teYF1ghP0EhtMRLjhtp6RPa+XCxHHVA2CiC3gbh5eg5g==} cpu: [arm64] os: [win32] - turbo@1.13.0: - resolution: {integrity: sha512-r02GtNmkOPcQvUzVE6lg474QVLyU02r3yh3lUGqrFHf5h5ZEjgDGWILsAUqplVqjri1Y/oOkTssks4CObTAaiw==} + turbo@1.13.4: + resolution: {integrity: sha512-1q7+9UJABuBAHrcC4Sxp5lOqYS5mvxRrwa33wpIyM18hlOCpRD/fTJNxZ0vhbMcJmz15o9kkVm743mPn7p6jpQ==} hasBin: true + tweetnacl-util@0.15.1: + resolution: {integrity: sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==} + tweetnacl@1.0.3: resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==} @@ -11559,10 +11317,6 @@ packages: resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} engines: {node: '>=4'} - type-fest@0.13.1: - resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} - engines: {node: '>=10'} - type-fest@0.18.1: resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} engines: {node: '>=10'} @@ -11591,10 +11345,6 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} - type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} @@ -11602,39 +11352,24 @@ packages: type@2.7.3: resolution: {integrity: sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==} - typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} - typed-array-buffer@1.0.2: resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} engines: {node: '>= 0.4'} - typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} - typed-array-byte-length@1.0.1: resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.3: resolution: {integrity: sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==} engines: {node: '>= 0.4'} - typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - typed-array-length@1.0.7: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} - typedoc@0.25.12: - resolution: {integrity: sha512-F+qhkK2VoTweDXd1c42GS/By2DvI2uDF4/EpG424dTexSHdtCH52C6IcAvMA6jR3DzAWZjHpUOW+E02kyPNUNw==} + typedoc@0.25.13: + resolution: {integrity: sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ==} engines: {node: '>= 16'} hasBin: true peerDependencies: @@ -11646,19 +11381,11 @@ packages: types-ramda@0.30.1: resolution: {integrity: sha512-1HTsf5/QVRmLzcGfldPFvkVsAdi1db1BBKzi7iW3KBUlOICg/nKnFS+jGqDJS3YD8VsWbAh7JiHeBvbsw8RPxA==} - typescript@5.4.3: - resolution: {integrity: sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==} - engines: {node: '>=14.17'} - hasBin: true - typescript@5.7.2: resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==} engines: {node: '>=14.17'} hasBin: true - ufo@1.5.3: - resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} - ufo@1.5.4: resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} @@ -11684,6 +11411,10 @@ packages: resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} engines: {node: '>=14.0'} + undici@7.1.0: + resolution: {integrity: sha512-3+mdX2R31khuLCm2mKExSlMdJsfol7bJkIMH80tdXA74W34rT1jKemUTlYR7WY3TqsV4wfOgpatWmmB2Jl1+5g==} + engines: {node: '>=20.18.1'} + unenv-nightly@2.0.0-20241204-140205-a5d5190: resolution: {integrity: sha512-jpmAytLeiiW01pl5bhVn9wYJ4vtiLdhGe10oXlJBuQEX8mxjxO8BlEXGHU4vr4yEikjFP1wsomTHt/CLU8kUwg==} @@ -11797,12 +11528,6 @@ packages: resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==} hasBin: true - update-browserslist-db@1.0.13: - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - update-browserslist-db@1.1.1: resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true @@ -11846,6 +11571,11 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 + use-sync-external-store@1.2.2: + resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + use-sync-external-store@1.4.0: resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} peerDependencies: @@ -11908,14 +11638,6 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - viem@2.21.1: - resolution: {integrity: sha512-nlIc2LLS6aqkngULS9UJ2Sg3nHKAgF9bbpDUwjUoAUBijd69mrCWPBXQ8jmbzcx12uZUfd9Nc//CHgSVZiMwyg==} - peerDependencies: - typescript: '>=5.0.4' - peerDependenciesMeta: - typescript: - optional: true - viem@2.21.54: resolution: {integrity: sha512-G9mmtbua3UtnVY9BqAtWdNp+3AO+oWhD0B9KaEsZb6gcrOWgmA4rz02yqEMg+qW9m6KgKGie7q3zcHqJIw6AqA==} peerDependencies: @@ -11929,38 +11651,10 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite-node@1.4.0: - resolution: {integrity: sha512-VZDAseqjrHgNd4Kh8icYHWzTKSCZMhia7GyHfhtzLW33fZlG9SwsB6CEhgyVOWkJfJ2pFLrp/Gj1FSfAiqH9Lw==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - - vite@5.2.6: - resolution: {integrity: sha512-FPtnxFlSIKYjZ2eosBQamz4CbyrTizbZ3hnGJlh/wMtCrlp1Hah6AzBLjGI5I2urTfNnpovpHdrL6YRuBOPnCA==} + vite-node@1.6.0: + resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true vite@5.4.11: resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==} @@ -12018,15 +11712,15 @@ packages: jsdom: optional: true - vitest@1.4.0: - resolution: {integrity: sha512-gujzn0g7fmwf83/WzrDTnncZt2UiXP41mHuFYFrdwaLRVQ6JYQEiME2IfEjU3vcFL3VKa75XhI3lFgn+hfVsQw==} + vitest@1.6.0: + resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 1.4.0 - '@vitest/ui': 1.4.0 + '@vitest/browser': 1.6.0 + '@vitest/ui': 1.6.0 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -12066,9 +11760,6 @@ packages: walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} - wcwidth@1.0.1: - resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} - web-streams-polyfill@3.3.3: resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} engines: {node: '>= 8'} @@ -12083,9 +11774,6 @@ packages: webauthn-p256@0.0.10: resolution: {integrity: sha512-EeYD+gmIT80YkSIDb2iWq0lq2zbHo1CxHlQTeJ+KkCILWpVy3zASH3ByD4bopzfk0uCwXxLqKGLqp2W4O28VFA==} - webauthn-p256@0.0.5: - resolution: {integrity: sha512-drMGNWKdaixZNobeORVIqq7k5DsRC9FnG201K2QjeOoQLmtSDaSsVZdkg6n5jUALJKcAG++zBPJXmv6hy0nWFg==} - webextension-polyfill@0.10.0: resolution: {integrity: sha512-c5s35LgVa5tFaHhrZDnr3FpQpjj1BB+RXhLTYUxGqBVN460HkbM8TBtEqdXWbpTKfzwCcjAZVF7zXCYSKtcp9g==} @@ -12143,22 +11831,10 @@ packages: which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} - which-pm@2.0.0: - resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} - engines: {node: '>=8.15'} - - which-typed-array@1.1.11: - resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} - engines: {node: '>= 0.4'} - which-typed-array@1.1.16: resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==} engines: {node: '>= 0.4'} - which@1.3.1: - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} - hasBin: true - which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -12169,16 +11845,19 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} hasBin: true - why-is-node-running@2.2.2: - resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} - engines: {node: '>=8'} - hasBin: true - why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} hasBin: true + widest-line@3.1.0: + resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} + engines: {node: '>=8'} + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} @@ -12187,6 +11866,9 @@ packages: engines: {node: '>=16'} hasBin: true + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + wrangler@3.95.0: resolution: {integrity: sha512-3w5852i3FNyDz421K2Qk4v5L8jjwegO5O8E1+VAQmjnm82HFNxpIRUBq0bmM7CTLvOPI/Jjcmj/eAWjQBL7QYg==} engines: {node: '>=16.17.0'} @@ -12321,19 +12003,12 @@ packages: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - yallist@2.1.2: - resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} - yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yaml@2.3.4: - resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} - engines: {node: '>= 14'} - yaml@2.6.1: resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} engines: {node: '>= 14'} @@ -12351,10 +12026,18 @@ packages: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + yargs@15.4.1: resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} engines: {node: '>=8'} + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -12388,6 +12071,21 @@ packages: zod@3.24.1: resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + zustand@4.5.5: + resolution: {integrity: sha512-+0PALYNJNgK6hldkgDq2vLrw5f6g/jCInz52n9RTpropGgeAf/ioFUCdtsjCqu4gNhW9D01rUQBROoRjdzyn2Q==} + engines: {node: '>=12.7.0'} + peerDependencies: + '@types/react': '>=16.8' + immer: '>=9.0.6' + react: '>=16.8' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + zustand@5.0.0: resolution: {integrity: sha512-LE+VcmbartOPM+auOjCCLQOsQ05zUTp8RkgwRzefUk+2jISdMMFnxvyTjA4YNWr5ZGXYbVsEMZosttuxUBkojQ==} engines: {node: '>=12.20.0'} @@ -12416,24 +12114,20 @@ packages: snapshots: - '@0no-co/graphql.web@1.0.13(graphql@16.10.0)': + '@0no-co/graphql.web@1.0.8(graphql@16.9.0)': optionalDependencies: - graphql: 16.10.0 + graphql: 16.9.0 - '@0no-co/graphqlsp@1.12.16(graphql@16.10.0)(typescript@5.4.3)': + '@0no-co/graphqlsp@1.12.15(graphql@16.9.0)(typescript@5.7.2)': dependencies: - '@gql.tada/internal': 1.0.8(graphql@16.10.0)(typescript@5.4.3) - graphql: 16.10.0 - typescript: 5.4.3 - - '@aashutoshrathi/word-wrap@1.2.6': {} + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.2) + graphql: 16.9.0 + typescript: 5.7.2 '@adobe/css-tools@4.3.3': {} '@adobe/css-tools@4.4.1': {} - '@adraffy/ens-normalize@1.10.0': {} - '@adraffy/ens-normalize@1.11.0': {} '@alloc/quick-lru@5.2.0': {} @@ -12452,11 +12146,26 @@ snapshots: dependencies: '@axelar-network/axelar-gmp-sdk-solidity': 5.10.0 + '@axelar-network/axelar-cgp-sui@0.0.0-snapshot.424bc13(bufferutil@4.0.8)(utf-8-validate@6.0.3)': + dependencies: + '@cosmjs/cosmwasm-stargate': 0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@mysten/sui': 1.11.0(typescript@5.7.2) + ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.3) + secp256k1: 5.0.1 + smol-toml: 1.3.1 + typescript: 5.7.2 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - bufferutil + - debug + - utf-8-validate + '@axelar-network/axelar-gmp-sdk-solidity@5.10.0': {} '@axelar-network/axelar-gmp-sdk-solidity@6.0.4': {} - '@axelar-network/axelarjs-sdk@0.17.1-alpha.12(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)': + '@axelar-network/axelarjs-sdk@0.17.1-alpha.12(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)': dependencies: '@axelar-network/axelar-cgp-solidity': 6.4.0 '@axelar-network/axelarjs-types': 0.33.0 @@ -12465,7 +12174,7 @@ snapshots: '@ethersproject/abstract-provider': 5.7.0 '@ethersproject/networks': 5.7.1 '@ethersproject/providers': 5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@mysten/sui': 1.18.0(typescript@5.4.3) + '@mysten/sui': 1.17.0(typescript@5.7.2) '@stellar/stellar-sdk': 13.1.0 '@types/uuid': 8.3.4 bech32: 2.0.0 @@ -12497,16 +12206,6 @@ snapshots: '@axelar-network/axelar-cgp-solidity': 6.4.0 '@axelar-network/axelar-gmp-sdk-solidity': 6.0.4 - '@babel/code-frame@7.23.5': - dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 - - '@babel/code-frame@7.24.2': - dependencies: - '@babel/highlight': 7.24.2 - picocolors: 1.0.0 - '@babel/code-frame@7.25.7': dependencies: '@babel/highlight': 7.25.7 @@ -12518,30 +12217,8 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.23.5': {} - '@babel/compat-data@7.26.3': {} - '@babel/core@7.24.0': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) - '@babel/helpers': 7.24.0 - '@babel/parser': 7.24.0 - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.0 - '@babel/types': 7.24.0 - convert-source-map: 2.0.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 @@ -12555,26 +12232,19 @@ snapshots: '@babel/traverse': 7.26.4 '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.23.6': - dependencies: - '@babel/types': 7.24.0 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/generator@7.24.1': + '@babel/generator@7.25.7': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.25.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 + jsesc: 3.0.2 '@babel/generator@7.26.3': dependencies: @@ -12589,14 +12259,6 @@ snapshots: '@babel/types': 7.26.3 optional: true - '@babel/helper-compilation-targets@7.23.6': - dependencies: - '@babel/compat-data': 7.23.5 - '@babel/helper-validator-option': 7.23.5 - browserslist: 4.23.0 - lru-cache: 5.1.1 - semver: 6.3.1 - '@babel/helper-compilation-targets@7.25.9': dependencies: '@babel/compat-data': 7.26.3 @@ -12632,24 +12294,13 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: - supports-color optional: true - '@babel/helper-environment-visitor@7.22.20': {} - - '@babel/helper-function-name@7.23.0': - dependencies: - '@babel/template': 7.24.0 - '@babel/types': 7.24.0 - - '@babel/helper-hoist-variables@7.22.5': - dependencies: - '@babel/types': 7.24.0 - '@babel/helper-member-expression-to-functions@7.25.9': dependencies: '@babel/traverse': 7.26.4 @@ -12658,10 +12309,6 @@ snapshots: - supports-color optional: true - '@babel/helper-module-imports@7.22.15': - dependencies: - '@babel/types': 7.24.0 - '@babel/helper-module-imports@7.25.9': dependencies: '@babel/traverse': 7.26.4 @@ -12669,15 +12316,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0)': - dependencies: - '@babel/core': 7.24.0 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -12714,10 +12352,6 @@ snapshots: - supports-color optional: true - '@babel/helper-simple-access@7.22.5': - dependencies: - '@babel/types': 7.24.0 - '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: '@babel/traverse': 7.26.4 @@ -12726,22 +12360,14 @@ snapshots: - supports-color optional: true - '@babel/helper-split-export-declaration@7.22.6': - dependencies: - '@babel/types': 7.24.0 - - '@babel/helper-string-parser@7.23.4': {} + '@babel/helper-string-parser@7.25.7': {} '@babel/helper-string-parser@7.25.9': {} - '@babel/helper-validator-identifier@7.22.20': {} - '@babel/helper-validator-identifier@7.25.7': {} '@babel/helper-validator-identifier@7.25.9': {} - '@babel/helper-validator-option@7.23.5': {} - '@babel/helper-validator-option@7.25.9': {} '@babel/helper-wrap-function@7.25.9': @@ -12753,32 +12379,11 @@ snapshots: - supports-color optional: true - '@babel/helpers@7.24.0': - dependencies: - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.0 - '@babel/types': 7.24.0 - transitivePeerDependencies: - - supports-color - '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 '@babel/types': 7.26.3 - '@babel/highlight@7.23.4': - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@babel/highlight@7.24.2': - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.0 - '@babel/highlight@7.25.7': dependencies: '@babel/helper-validator-identifier': 7.25.7 @@ -12786,13 +12391,9 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/parser@7.24.0': - dependencies: - '@babel/types': 7.24.0 - - '@babel/parser@7.24.1': + '@babel/parser@7.25.7': dependencies: - '@babel/types': 7.24.0 + '@babel/types': 7.25.7 '@babel/parser@7.26.3': dependencies: @@ -13556,19 +13157,15 @@ snapshots: core-js-pure: 3.39.0 regenerator-runtime: 0.14.1 - '@babel/runtime@7.22.11': - dependencies: - regenerator-runtime: 0.14.0 - '@babel/runtime@7.26.0': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.24.0': + '@babel/template@7.25.7': dependencies: - '@babel/code-frame': 7.24.2 - '@babel/parser': 7.24.1 - '@babel/types': 7.24.0 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 '@babel/template@7.25.9': dependencies: @@ -13576,17 +13173,14 @@ snapshots: '@babel/parser': 7.26.3 '@babel/types': 7.26.3 - '@babel/traverse@7.24.0': - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.24.1 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.24.1 - '@babel/types': 7.24.0 - debug: 4.3.4 + '@babel/traverse@7.25.7': + dependencies: + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -13598,15 +13192,15 @@ snapshots: '@babel/parser': 7.26.3 '@babel/template': 7.25.9 '@babel/types': 7.26.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.24.0': + '@babel/types@7.25.7': dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 to-fast-properties: 2.0.0 '@babel/types@7.26.3': @@ -13618,12 +13212,12 @@ snapshots: '@braintree/sanitize-url@7.0.4': {} - '@changesets/apply-release-plan@7.0.0': + '@changesets/apply-release-plan@7.0.6': dependencies: - '@babel/runtime': 7.22.11 - '@changesets/config': 3.0.0 + '@changesets/config': 3.0.4 '@changesets/get-version-range-type': 0.4.0 - '@changesets/git': 3.0.0 + '@changesets/git': 3.0.2 + '@changesets/should-skip-package': 0.1.1 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 detect-indent: 6.1.0 @@ -13632,16 +13226,16 @@ snapshots: outdent: 0.5.0 prettier: 2.8.8 resolve-from: 5.0.0 - semver: 7.5.4 + semver: 7.6.3 - '@changesets/assemble-release-plan@6.0.0': + '@changesets/assemble-release-plan@6.0.5': dependencies: - '@babel/runtime': 7.22.11 '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.0.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/should-skip-package': 0.1.1 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 - semver: 7.5.4 + semver: 7.6.3 '@changesets/changelog-git@0.2.0': dependencies: @@ -13655,62 +13249,57 @@ snapshots: transitivePeerDependencies: - encoding - '@changesets/cli@2.27.1': + '@changesets/cli@2.27.10': dependencies: - '@babel/runtime': 7.22.11 - '@changesets/apply-release-plan': 7.0.0 - '@changesets/assemble-release-plan': 6.0.0 + '@changesets/apply-release-plan': 7.0.6 + '@changesets/assemble-release-plan': 6.0.5 '@changesets/changelog-git': 0.2.0 - '@changesets/config': 3.0.0 + '@changesets/config': 3.0.4 '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.0.0 - '@changesets/get-release-plan': 4.0.0 - '@changesets/git': 3.0.0 - '@changesets/logger': 0.1.0 - '@changesets/pre': 2.0.0 - '@changesets/read': 0.6.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/get-release-plan': 4.0.5 + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 + '@changesets/pre': 2.0.1 + '@changesets/read': 0.6.2 + '@changesets/should-skip-package': 0.1.1 '@changesets/types': 6.0.0 - '@changesets/write': 0.3.0 + '@changesets/write': 0.3.2 '@manypkg/get-packages': 1.1.3 - '@types/semver': 7.5.1 ansi-colors: 4.1.3 - chalk: 2.4.2 - ci-info: 3.8.0 + ci-info: 3.9.0 enquirer: 2.4.1 external-editor: 3.1.0 fs-extra: 7.0.1 - human-id: 1.0.2 - meow: 6.1.1 - outdent: 0.5.0 + mri: 1.2.0 p-limit: 2.3.0 - preferred-pm: 3.0.3 + package-manager-detector: 0.2.7 + picocolors: 1.1.1 resolve-from: 5.0.0 - semver: 7.5.4 - spawndamnit: 2.0.0 + semver: 7.6.3 + spawndamnit: 3.0.1 term-size: 2.2.1 - tty-table: 4.2.1 - '@changesets/config@3.0.0': + '@changesets/config@3.0.4': dependencies: '@changesets/errors': 0.2.0 - '@changesets/get-dependents-graph': 2.0.0 - '@changesets/logger': 0.1.0 + '@changesets/get-dependents-graph': 2.1.2 + '@changesets/logger': 0.1.1 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 fs-extra: 7.0.1 - micromatch: 4.0.5 + micromatch: 4.0.8 '@changesets/errors@0.2.0': dependencies: extendable-error: 0.1.7 - '@changesets/get-dependents-graph@2.0.0': + '@changesets/get-dependents-graph@2.1.2': dependencies: '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 - chalk: 2.4.2 - fs-extra: 7.0.1 - semver: 7.5.4 + picocolors: 1.1.1 + semver: 7.6.3 '@changesets/get-github-info@0.5.2': dependencies: @@ -13719,55 +13308,55 @@ snapshots: transitivePeerDependencies: - encoding - '@changesets/get-release-plan@4.0.0': + '@changesets/get-release-plan@4.0.5': dependencies: - '@babel/runtime': 7.22.11 - '@changesets/assemble-release-plan': 6.0.0 - '@changesets/config': 3.0.0 - '@changesets/pre': 2.0.0 - '@changesets/read': 0.6.0 + '@changesets/assemble-release-plan': 6.0.5 + '@changesets/config': 3.0.4 + '@changesets/pre': 2.0.1 + '@changesets/read': 0.6.2 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 '@changesets/get-version-range-type@0.4.0': {} - '@changesets/git@3.0.0': + '@changesets/git@3.0.2': dependencies: - '@babel/runtime': 7.22.11 '@changesets/errors': 0.2.0 - '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 is-subdir: 1.2.0 - micromatch: 4.0.5 - spawndamnit: 2.0.0 + micromatch: 4.0.8 + spawndamnit: 3.0.1 - '@changesets/logger@0.1.0': + '@changesets/logger@0.1.1': dependencies: - chalk: 2.4.2 + picocolors: 1.1.1 '@changesets/parse@0.4.0': dependencies: '@changesets/types': 6.0.0 js-yaml: 3.14.1 - '@changesets/pre@2.0.0': + '@changesets/pre@2.0.1': dependencies: - '@babel/runtime': 7.22.11 '@changesets/errors': 0.2.0 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 fs-extra: 7.0.1 - '@changesets/read@0.6.0': + '@changesets/read@0.6.2': dependencies: - '@babel/runtime': 7.22.11 - '@changesets/git': 3.0.0 - '@changesets/logger': 0.1.0 + '@changesets/git': 3.0.2 + '@changesets/logger': 0.1.1 '@changesets/parse': 0.4.0 '@changesets/types': 6.0.0 - chalk: 2.4.2 fs-extra: 7.0.1 p-filter: 2.1.0 + picocolors: 1.1.1 + + '@changesets/should-skip-package@0.1.1': + dependencies: + '@changesets/types': 6.0.0 + '@manypkg/get-packages': 1.1.3 '@changesets/types@4.1.0': {} @@ -13775,9 +13364,8 @@ snapshots: '@changesets/types@6.0.0': {} - '@changesets/write@0.3.0': + '@changesets/write@0.3.2': dependencies: - '@babel/runtime': 7.22.11 '@changesets/types': 6.0.0 fs-extra: 7.0.1 human-id: 1.0.2 @@ -13833,7 +13421,7 @@ snapshots: '@coinbase/wallet-sdk@4.2.3': dependencies: - '@noble/hashes': 1.6.1 + '@noble/hashes': 1.5.0 clsx: 1.2.1 eventemitter3: 5.0.1 preact: 10.25.1 @@ -13900,7 +13488,7 @@ snapshots: '@types/node': 20.5.1 chalk: 4.1.2 cosmiconfig: 8.3.6(typescript@5.7.2) - cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.4.3))(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3))(typescript@5.7.2) + cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.7.2))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.7.2))(typescript@5.7.2) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -13956,7 +13544,7 @@ snapshots: '@confio/ics23@0.6.8': dependencies: - '@noble/hashes': 1.6.1 + '@noble/hashes': 1.5.0 protobufjs: 6.11.4 '@cosmjs/amino@0.31.3': @@ -13966,6 +13554,30 @@ snapshots: '@cosmjs/math': 0.31.3 '@cosmjs/utils': 0.31.3 + '@cosmjs/amino@0.32.4': + dependencies: + '@cosmjs/crypto': 0.32.4 + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/utils': 0.32.4 + + '@cosmjs/cosmwasm-stargate@0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3)': + dependencies: + '@cosmjs/amino': 0.32.4 + '@cosmjs/crypto': 0.32.4 + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/proto-signing': 0.32.4 + '@cosmjs/stargate': 0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@cosmjs/tendermint-rpc': 0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@cosmjs/utils': 0.32.4 + cosmjs-types: 0.9.0 + pako: 2.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + '@cosmjs/crypto@0.31.3': dependencies: '@cosmjs/encoding': 0.31.3 @@ -13976,12 +13588,28 @@ snapshots: elliptic: 6.6.1 libsodium-wrappers-sumo: 0.7.15 + '@cosmjs/crypto@0.32.4': + dependencies: + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/utils': 0.32.4 + '@noble/hashes': 1.5.0 + bn.js: 5.2.1 + elliptic: 6.6.1 + libsodium-wrappers-sumo: 0.7.15 + '@cosmjs/encoding@0.31.3': dependencies: base64-js: 1.5.1 bech32: 1.1.4 readonly-date: 1.0.0 + '@cosmjs/encoding@0.32.4': + dependencies: + base64-js: 1.5.1 + bech32: 1.1.4 + readonly-date: 1.0.0 + '@cosmjs/json-rpc@0.30.1': dependencies: '@cosmjs/stream': 0.30.1 @@ -13992,10 +13620,19 @@ snapshots: '@cosmjs/stream': 0.31.3 xstream: 11.14.0 + '@cosmjs/json-rpc@0.32.4': + dependencies: + '@cosmjs/stream': 0.32.4 + xstream: 11.14.0 + '@cosmjs/math@0.31.3': dependencies: bn.js: 5.2.1 + '@cosmjs/math@0.32.4': + dependencies: + bn.js: 5.2.1 + '@cosmjs/proto-signing@0.31.3': dependencies: '@cosmjs/amino': 0.31.3 @@ -14006,6 +13643,15 @@ snapshots: cosmjs-types: 0.8.0 long: 4.0.0 + '@cosmjs/proto-signing@0.32.4': + dependencies: + '@cosmjs/amino': 0.32.4 + '@cosmjs/crypto': 0.32.4 + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/utils': 0.32.4 + cosmjs-types: 0.9.0 + '@cosmjs/socket@0.31.3(bufferutil@4.0.8)(utf-8-validate@5.0.10)': dependencies: '@cosmjs/stream': 0.31.3 @@ -14026,6 +13672,16 @@ snapshots: - bufferutil - utf-8-validate + '@cosmjs/socket@0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3)': + dependencies: + '@cosmjs/stream': 0.32.4 + isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.3)) + ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.3) + xstream: 11.14.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + '@cosmjs/stargate@0.31.0-alpha.1(bufferutil@4.0.8)(utf-8-validate@6.0.3)': dependencies: '@confio/ics23': 0.6.8 @@ -14083,6 +13739,23 @@ snapshots: - debug - utf-8-validate + '@cosmjs/stargate@0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3)': + dependencies: + '@confio/ics23': 0.6.8 + '@cosmjs/amino': 0.32.4 + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/proto-signing': 0.32.4 + '@cosmjs/stream': 0.32.4 + '@cosmjs/tendermint-rpc': 0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@cosmjs/utils': 0.32.4 + cosmjs-types: 0.9.0 + xstream: 11.14.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + '@cosmjs/stream@0.30.1': dependencies: xstream: 11.14.0 @@ -14091,6 +13764,10 @@ snapshots: dependencies: xstream: 11.14.0 + '@cosmjs/stream@0.32.4': + dependencies: + xstream: 11.14.0 + '@cosmjs/tendermint-rpc@0.31.0-alpha.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)': dependencies: '@cosmjs/crypto': 0.31.3 @@ -14142,9 +13819,28 @@ snapshots: - debug - utf-8-validate - '@cosmjs/utils@0.31.3': {} - - '@cspotcode/source-map-support@0.8.1': + '@cosmjs/tendermint-rpc@0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3)': + dependencies: + '@cosmjs/crypto': 0.32.4 + '@cosmjs/encoding': 0.32.4 + '@cosmjs/json-rpc': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/socket': 0.32.4(bufferutil@4.0.8)(utf-8-validate@6.0.3) + '@cosmjs/stream': 0.32.4 + '@cosmjs/utils': 0.32.4 + axios: 1.7.9 + readonly-date: 1.0.0 + xstream: 11.14.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + + '@cosmjs/utils@0.31.3': {} + + '@cosmjs/utils@0.32.4': {} + + '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 @@ -14154,6 +13850,8 @@ snapshots: dependencies: '@noble/ciphers': 1.1.3 + '@emotion/hash@0.9.2': {} + '@emotion/use-insertion-effect-with-fallbacks@1.2.0(react@18.3.1)': dependencies: react: 18.3.1 @@ -14178,16 +13876,13 @@ snapshots: escape-string-regexp: 4.0.0 rollup-plugin-node-polyfills: 0.2.1 - '@esbuild/aix-ppc64@0.19.11': - optional: true - '@esbuild/aix-ppc64@0.19.12': optional: true - '@esbuild/aix-ppc64@0.20.2': + '@esbuild/aix-ppc64@0.21.5': optional: true - '@esbuild/aix-ppc64@0.21.5': + '@esbuild/aix-ppc64@0.23.1': optional: true '@esbuild/aix-ppc64@0.24.0': @@ -14199,16 +13894,13 @@ snapshots: '@esbuild/android-arm64@0.18.20': optional: true - '@esbuild/android-arm64@0.19.11': - optional: true - '@esbuild/android-arm64@0.19.12': optional: true - '@esbuild/android-arm64@0.20.2': + '@esbuild/android-arm64@0.21.5': optional: true - '@esbuild/android-arm64@0.21.5': + '@esbuild/android-arm64@0.23.1': optional: true '@esbuild/android-arm64@0.24.0': @@ -14220,16 +13912,13 @@ snapshots: '@esbuild/android-arm@0.18.20': optional: true - '@esbuild/android-arm@0.19.11': - optional: true - '@esbuild/android-arm@0.19.12': optional: true - '@esbuild/android-arm@0.20.2': + '@esbuild/android-arm@0.21.5': optional: true - '@esbuild/android-arm@0.21.5': + '@esbuild/android-arm@0.23.1': optional: true '@esbuild/android-arm@0.24.0': @@ -14241,16 +13930,13 @@ snapshots: '@esbuild/android-x64@0.18.20': optional: true - '@esbuild/android-x64@0.19.11': - optional: true - '@esbuild/android-x64@0.19.12': optional: true - '@esbuild/android-x64@0.20.2': + '@esbuild/android-x64@0.21.5': optional: true - '@esbuild/android-x64@0.21.5': + '@esbuild/android-x64@0.23.1': optional: true '@esbuild/android-x64@0.24.0': @@ -14262,16 +13948,13 @@ snapshots: '@esbuild/darwin-arm64@0.18.20': optional: true - '@esbuild/darwin-arm64@0.19.11': - optional: true - '@esbuild/darwin-arm64@0.19.12': optional: true - '@esbuild/darwin-arm64@0.20.2': + '@esbuild/darwin-arm64@0.21.5': optional: true - '@esbuild/darwin-arm64@0.21.5': + '@esbuild/darwin-arm64@0.23.1': optional: true '@esbuild/darwin-arm64@0.24.0': @@ -14283,16 +13966,13 @@ snapshots: '@esbuild/darwin-x64@0.18.20': optional: true - '@esbuild/darwin-x64@0.19.11': - optional: true - '@esbuild/darwin-x64@0.19.12': optional: true - '@esbuild/darwin-x64@0.20.2': + '@esbuild/darwin-x64@0.21.5': optional: true - '@esbuild/darwin-x64@0.21.5': + '@esbuild/darwin-x64@0.23.1': optional: true '@esbuild/darwin-x64@0.24.0': @@ -14304,16 +13984,13 @@ snapshots: '@esbuild/freebsd-arm64@0.18.20': optional: true - '@esbuild/freebsd-arm64@0.19.11': - optional: true - '@esbuild/freebsd-arm64@0.19.12': optional: true - '@esbuild/freebsd-arm64@0.20.2': + '@esbuild/freebsd-arm64@0.21.5': optional: true - '@esbuild/freebsd-arm64@0.21.5': + '@esbuild/freebsd-arm64@0.23.1': optional: true '@esbuild/freebsd-arm64@0.24.0': @@ -14325,16 +14002,13 @@ snapshots: '@esbuild/freebsd-x64@0.18.20': optional: true - '@esbuild/freebsd-x64@0.19.11': - optional: true - '@esbuild/freebsd-x64@0.19.12': optional: true - '@esbuild/freebsd-x64@0.20.2': + '@esbuild/freebsd-x64@0.21.5': optional: true - '@esbuild/freebsd-x64@0.21.5': + '@esbuild/freebsd-x64@0.23.1': optional: true '@esbuild/freebsd-x64@0.24.0': @@ -14346,16 +14020,13 @@ snapshots: '@esbuild/linux-arm64@0.18.20': optional: true - '@esbuild/linux-arm64@0.19.11': - optional: true - '@esbuild/linux-arm64@0.19.12': optional: true - '@esbuild/linux-arm64@0.20.2': + '@esbuild/linux-arm64@0.21.5': optional: true - '@esbuild/linux-arm64@0.21.5': + '@esbuild/linux-arm64@0.23.1': optional: true '@esbuild/linux-arm64@0.24.0': @@ -14367,16 +14038,13 @@ snapshots: '@esbuild/linux-arm@0.18.20': optional: true - '@esbuild/linux-arm@0.19.11': - optional: true - '@esbuild/linux-arm@0.19.12': optional: true - '@esbuild/linux-arm@0.20.2': + '@esbuild/linux-arm@0.21.5': optional: true - '@esbuild/linux-arm@0.21.5': + '@esbuild/linux-arm@0.23.1': optional: true '@esbuild/linux-arm@0.24.0': @@ -14388,16 +14056,13 @@ snapshots: '@esbuild/linux-ia32@0.18.20': optional: true - '@esbuild/linux-ia32@0.19.11': - optional: true - '@esbuild/linux-ia32@0.19.12': optional: true - '@esbuild/linux-ia32@0.20.2': + '@esbuild/linux-ia32@0.21.5': optional: true - '@esbuild/linux-ia32@0.21.5': + '@esbuild/linux-ia32@0.23.1': optional: true '@esbuild/linux-ia32@0.24.0': @@ -14409,16 +14074,13 @@ snapshots: '@esbuild/linux-loong64@0.18.20': optional: true - '@esbuild/linux-loong64@0.19.11': - optional: true - '@esbuild/linux-loong64@0.19.12': optional: true - '@esbuild/linux-loong64@0.20.2': + '@esbuild/linux-loong64@0.21.5': optional: true - '@esbuild/linux-loong64@0.21.5': + '@esbuild/linux-loong64@0.23.1': optional: true '@esbuild/linux-loong64@0.24.0': @@ -14430,16 +14092,13 @@ snapshots: '@esbuild/linux-mips64el@0.18.20': optional: true - '@esbuild/linux-mips64el@0.19.11': - optional: true - '@esbuild/linux-mips64el@0.19.12': optional: true - '@esbuild/linux-mips64el@0.20.2': + '@esbuild/linux-mips64el@0.21.5': optional: true - '@esbuild/linux-mips64el@0.21.5': + '@esbuild/linux-mips64el@0.23.1': optional: true '@esbuild/linux-mips64el@0.24.0': @@ -14451,16 +14110,13 @@ snapshots: '@esbuild/linux-ppc64@0.18.20': optional: true - '@esbuild/linux-ppc64@0.19.11': - optional: true - '@esbuild/linux-ppc64@0.19.12': optional: true - '@esbuild/linux-ppc64@0.20.2': + '@esbuild/linux-ppc64@0.21.5': optional: true - '@esbuild/linux-ppc64@0.21.5': + '@esbuild/linux-ppc64@0.23.1': optional: true '@esbuild/linux-ppc64@0.24.0': @@ -14472,16 +14128,13 @@ snapshots: '@esbuild/linux-riscv64@0.18.20': optional: true - '@esbuild/linux-riscv64@0.19.11': - optional: true - '@esbuild/linux-riscv64@0.19.12': optional: true - '@esbuild/linux-riscv64@0.20.2': + '@esbuild/linux-riscv64@0.21.5': optional: true - '@esbuild/linux-riscv64@0.21.5': + '@esbuild/linux-riscv64@0.23.1': optional: true '@esbuild/linux-riscv64@0.24.0': @@ -14493,16 +14146,13 @@ snapshots: '@esbuild/linux-s390x@0.18.20': optional: true - '@esbuild/linux-s390x@0.19.11': - optional: true - '@esbuild/linux-s390x@0.19.12': optional: true - '@esbuild/linux-s390x@0.20.2': + '@esbuild/linux-s390x@0.21.5': optional: true - '@esbuild/linux-s390x@0.21.5': + '@esbuild/linux-s390x@0.23.1': optional: true '@esbuild/linux-s390x@0.24.0': @@ -14514,16 +14164,13 @@ snapshots: '@esbuild/linux-x64@0.18.20': optional: true - '@esbuild/linux-x64@0.19.11': - optional: true - '@esbuild/linux-x64@0.19.12': optional: true - '@esbuild/linux-x64@0.20.2': + '@esbuild/linux-x64@0.21.5': optional: true - '@esbuild/linux-x64@0.21.5': + '@esbuild/linux-x64@0.23.1': optional: true '@esbuild/linux-x64@0.24.0': @@ -14535,21 +14182,21 @@ snapshots: '@esbuild/netbsd-x64@0.18.20': optional: true - '@esbuild/netbsd-x64@0.19.11': - optional: true - '@esbuild/netbsd-x64@0.19.12': optional: true - '@esbuild/netbsd-x64@0.20.2': + '@esbuild/netbsd-x64@0.21.5': optional: true - '@esbuild/netbsd-x64@0.21.5': + '@esbuild/netbsd-x64@0.23.1': optional: true '@esbuild/netbsd-x64@0.24.0': optional: true + '@esbuild/openbsd-arm64@0.23.1': + optional: true + '@esbuild/openbsd-arm64@0.24.0': optional: true @@ -14559,16 +14206,13 @@ snapshots: '@esbuild/openbsd-x64@0.18.20': optional: true - '@esbuild/openbsd-x64@0.19.11': - optional: true - '@esbuild/openbsd-x64@0.19.12': optional: true - '@esbuild/openbsd-x64@0.20.2': + '@esbuild/openbsd-x64@0.21.5': optional: true - '@esbuild/openbsd-x64@0.21.5': + '@esbuild/openbsd-x64@0.23.1': optional: true '@esbuild/openbsd-x64@0.24.0': @@ -14580,16 +14224,13 @@ snapshots: '@esbuild/sunos-x64@0.18.20': optional: true - '@esbuild/sunos-x64@0.19.11': - optional: true - '@esbuild/sunos-x64@0.19.12': optional: true - '@esbuild/sunos-x64@0.20.2': + '@esbuild/sunos-x64@0.21.5': optional: true - '@esbuild/sunos-x64@0.21.5': + '@esbuild/sunos-x64@0.23.1': optional: true '@esbuild/sunos-x64@0.24.0': @@ -14601,16 +14242,13 @@ snapshots: '@esbuild/win32-arm64@0.18.20': optional: true - '@esbuild/win32-arm64@0.19.11': - optional: true - '@esbuild/win32-arm64@0.19.12': optional: true - '@esbuild/win32-arm64@0.20.2': + '@esbuild/win32-arm64@0.21.5': optional: true - '@esbuild/win32-arm64@0.21.5': + '@esbuild/win32-arm64@0.23.1': optional: true '@esbuild/win32-arm64@0.24.0': @@ -14622,16 +14260,13 @@ snapshots: '@esbuild/win32-ia32@0.18.20': optional: true - '@esbuild/win32-ia32@0.19.11': - optional: true - '@esbuild/win32-ia32@0.19.12': optional: true - '@esbuild/win32-ia32@0.20.2': + '@esbuild/win32-ia32@0.21.5': optional: true - '@esbuild/win32-ia32@0.21.5': + '@esbuild/win32-ia32@0.23.1': optional: true '@esbuild/win32-ia32@0.24.0': @@ -14643,32 +14278,29 @@ snapshots: '@esbuild/win32-x64@0.18.20': optional: true - '@esbuild/win32-x64@0.19.11': - optional: true - '@esbuild/win32-x64@0.19.12': optional: true - '@esbuild/win32-x64@0.20.2': + '@esbuild/win32-x64@0.21.5': optional: true - '@esbuild/win32-x64@0.21.5': + '@esbuild/win32-x64@0.23.1': optional: true '@esbuild/win32-x64@0.24.0': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': + '@eslint-community/eslint-utils@4.4.1(eslint@8.57.1)': dependencies: - eslint: 8.57.0 + eslint: 8.57.1 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.8.0': {} + '@eslint-community/regexpp@4.12.1': {} '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.2 @@ -14679,7 +14311,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@8.57.0': {} + '@eslint/js@8.57.1': {} '@ethereumjs/common@3.2.0': dependencies: @@ -14975,22 +14607,22 @@ snapshots: '@floating-ui/utils@0.2.8': {} - '@gql.tada/cli-utils@1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.10.0)(typescript@5.4.3))(graphql@16.10.0)(typescript@5.4.3)': + '@gql.tada/cli-utils@1.6.2(@0no-co/graphqlsp@1.12.15(graphql@16.9.0)(typescript@5.7.2))(graphql@16.9.0)(typescript@5.7.2)': dependencies: - '@0no-co/graphqlsp': 1.12.16(graphql@16.10.0)(typescript@5.4.3) - '@gql.tada/internal': 1.0.8(graphql@16.10.0)(typescript@5.4.3) - graphql: 16.10.0 - typescript: 5.4.3 + '@0no-co/graphqlsp': 1.12.15(graphql@16.9.0)(typescript@5.7.2) + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.2) + graphql: 16.9.0 + typescript: 5.7.2 - '@gql.tada/internal@1.0.8(graphql@16.10.0)(typescript@5.4.3)': + '@gql.tada/internal@1.0.8(graphql@16.9.0)(typescript@5.7.2)': dependencies: - '@0no-co/graphql.web': 1.0.13(graphql@16.10.0) - graphql: 16.10.0 - typescript: 5.4.3 + '@0no-co/graphql.web': 1.0.8(graphql@16.9.0) + graphql: 16.9.0 + typescript: 5.7.2 - '@graphql-typed-document-node/core@3.2.0(graphql@16.10.0)': + '@graphql-typed-document-node/core@3.2.0(graphql@16.9.0)': dependencies: - graphql: 16.10.0 + graphql: 16.9.0 '@hapi/bourne@3.0.0': {} @@ -15014,45 +14646,28 @@ snapshots: dependencies: react-hook-form: 7.54.0(react@18.3.1) - '@humanwhocodes/config-array@0.11.14': + '@humanwhocodes/config-array@0.13.0': dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4 + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.4.0(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/object-schema@2.0.2': {} - - '@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5)': - dependencies: - '@babel/core': 7.24.0 - '@babel/generator': 7.23.6 - '@babel/parser': 7.24.0 - '@babel/traverse': 7.24.0 - '@babel/types': 7.24.0 - prettier: 3.2.5 - semver: 7.6.0 - optionalDependencies: - '@vue/compiler-sfc': 3.4.21 - transitivePeerDependencies: - - supports-color + '@humanwhocodes/object-schema@2.0.3': {} - '@ianvs/prettier-plugin-sort-imports@4.4.0(@vue/compiler-sfc@3.4.21)(prettier@3.2.5)': + '@ianvs/prettier-plugin-sort-imports@4.4.0(prettier@3.4.2)': dependencies: '@babel/generator': 7.26.3 '@babel/parser': 7.26.3 '@babel/traverse': 7.26.4 '@babel/types': 7.26.3 - prettier: 3.2.5 + prettier: 3.4.2 semver: 7.6.3 - optionalDependencies: - '@vue/compiler-sfc': 3.4.21 transitivePeerDependencies: - supports-color - optional: true '@inquirer/checkbox@1.5.2': dependencies: @@ -15226,13 +14841,13 @@ snapshots: '@types/yargs': 17.0.33 chalk: 4.1.2 - '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.4.3)(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: magic-string: 0.27.0 - react-docgen-typescript: 2.2.2(typescript@5.4.3) - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + react-docgen-typescript: 2.2.2(typescript@5.7.2) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 '@jridgewell/gen-mapping@0.3.5': dependencies: @@ -15250,8 +14865,6 @@ snapshots: '@jridgewell/trace-mapping': 0.3.25 optional: true - '@jridgewell/sourcemap-codec@1.4.15': {} - '@jridgewell/sourcemap-codec@1.5.0': {} '@jridgewell/trace-mapping@0.3.25': @@ -15304,6 +14917,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@metamask/eth-sig-util@4.0.1': + dependencies: + ethereumjs-abi: 0.6.8 + ethereumjs-util: 6.2.1 + ethjs-util: 0.1.6 + tweetnacl: 1.0.3 + tweetnacl-util: 0.15.1 + '@metamask/json-rpc-engine@7.3.3': dependencies: '@metamask/rpc-errors': 6.4.0 @@ -15371,7 +14992,7 @@ snapshots: bufferutil: 4.0.8 cross-fetch: 4.0.0 date-fns: 2.30.0 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) eciesjs: 0.4.12 eventemitter2: 6.4.9 readable-stream: 3.6.2 @@ -15395,7 +15016,7 @@ snapshots: '@paulmillr/qr': 0.2.1 bowser: 2.11.0 cross-fetch: 4.0.0 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) eciesjs: 0.4.12 eth-rpc-errors: 4.0.3 eventemitter2: 6.4.9 @@ -15418,7 +15039,7 @@ snapshots: dependencies: '@ethereumjs/tx': 4.2.0 '@types/debug': 4.1.12 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) semver: 7.6.3 superstruct: 1.0.4 transitivePeerDependencies: @@ -15431,7 +15052,7 @@ snapshots: '@noble/hashes': 1.6.1 '@scure/base': 1.2.1 '@types/debug': 4.1.12 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) pony-cause: 2.1.11 semver: 7.6.3 uuid: 9.0.1 @@ -15445,7 +15066,7 @@ snapshots: '@noble/hashes': 1.6.1 '@scure/base': 1.2.1 '@types/debug': 4.1.12 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) pony-cause: 2.1.11 semver: 7.6.3 uuid: 9.0.1 @@ -15497,13 +15118,61 @@ snapshots: '@motionone/dom': 10.18.0 tslib: 2.8.1 + '@mysten/bcs@1.1.0': + dependencies: + bs58: 6.0.0 + '@mysten/bcs@1.2.0': dependencies: bs58: 6.0.0 - '@mysten/sui@1.18.0(typescript@5.4.3)': + '@mysten/dapp-kit@0.14.43(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@graphql-typed-document-node/core': 3.2.0(graphql@16.10.0) + '@mysten/sui': 1.17.0(typescript@5.7.2) + '@mysten/wallet-standard': 0.13.19(typescript@5.7.2) + '@mysten/zksend': 0.12.9(typescript@5.7.2) + '@radix-ui/react-dialog': 1.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dropdown-menu': 2.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@tanstack/react-query': 5.62.7(react@18.3.1) + '@vanilla-extract/css': 1.15.5 + '@vanilla-extract/dynamic': 2.1.2 + '@vanilla-extract/recipes': 0.5.5(@vanilla-extract/css@1.15.5) + clsx: 2.1.1 + react: 18.3.1 + zustand: 4.5.5(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1) + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - '@types/react' + - '@types/react-dom' + - babel-plugin-macros + - immer + - react-dom + - typescript + + '@mysten/sui@1.11.0(typescript@5.7.2)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.9.0) + '@mysten/bcs': 1.1.0 + '@noble/curves': 1.6.0 + '@noble/hashes': 1.5.0 + '@scure/bip32': 1.6.0 + '@scure/bip39': 1.5.0 + '@suchipi/femver': 1.0.0 + bech32: 2.0.0 + gql.tada: 1.8.9(graphql@16.9.0)(typescript@5.7.2) + graphql: 16.9.0 + tweetnacl: 1.0.3 + valibot: 0.36.0 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - typescript + + '@mysten/sui@1.17.0(typescript@5.7.2)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.9.0) '@mysten/bcs': 1.2.0 '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 @@ -15512,10 +15181,32 @@ snapshots: '@simplewebauthn/typescript-types': 7.4.0 '@suchipi/femver': 1.0.0 bech32: 2.0.0 - gql.tada: 1.8.10(graphql@16.10.0)(typescript@5.4.3) - graphql: 16.10.0 + gql.tada: 1.8.9(graphql@16.9.0)(typescript@5.7.2) + graphql: 16.9.0 jose: 5.9.6 poseidon-lite: 0.2.1 + tweetnacl: 1.0.3 + valibot: 0.36.0 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - typescript + + '@mysten/wallet-standard@0.13.19(typescript@5.7.2)': + dependencies: + '@mysten/sui': 1.17.0(typescript@5.7.2) + '@wallet-standard/core': 1.0.3 + transitivePeerDependencies: + - '@gql.tada/svelte-support' + - '@gql.tada/vue-support' + - typescript + + '@mysten/zksend@0.12.9(typescript@5.7.2)': + dependencies: + '@mysten/sui': 1.17.0(typescript@5.7.2) + '@mysten/wallet-standard': 0.13.19(typescript@5.7.2) + mitt: 3.0.1 + nanostores: 0.10.3 valibot: 0.36.0 transitivePeerDependencies: - '@gql.tada/svelte-support' @@ -15568,18 +15259,20 @@ snapshots: '@noble/ciphers@1.1.3': {} - '@noble/curves@1.4.0': + '@noble/curves@1.4.2': dependencies: '@noble/hashes': 1.4.0 - '@noble/curves@1.4.2': + '@noble/curves@1.6.0': dependencies: - '@noble/hashes': 1.4.0 + '@noble/hashes': 1.5.0 '@noble/curves@1.7.0': dependencies: '@noble/hashes': 1.6.0 + '@noble/hashes@1.2.0': {} + '@noble/hashes@1.4.0': {} '@noble/hashes@1.5.0': {} @@ -15588,6 +15281,8 @@ snapshots: '@noble/hashes@1.6.1': {} + '@noble/secp256k1@1.7.1': {} + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -15602,6 +15297,81 @@ snapshots: '@nolyfill/is-core-module@1.0.39': {} + '@nomicfoundation/edr-darwin-arm64@0.6.5': {} + + '@nomicfoundation/edr-darwin-x64@0.6.5': {} + + '@nomicfoundation/edr-linux-arm64-gnu@0.6.5': {} + + '@nomicfoundation/edr-linux-arm64-musl@0.6.5': {} + + '@nomicfoundation/edr-linux-x64-gnu@0.6.5': {} + + '@nomicfoundation/edr-linux-x64-musl@0.6.5': {} + + '@nomicfoundation/edr-win32-x64-msvc@0.6.5': {} + + '@nomicfoundation/edr@0.6.5': + dependencies: + '@nomicfoundation/edr-darwin-arm64': 0.6.5 + '@nomicfoundation/edr-darwin-x64': 0.6.5 + '@nomicfoundation/edr-linux-arm64-gnu': 0.6.5 + '@nomicfoundation/edr-linux-arm64-musl': 0.6.5 + '@nomicfoundation/edr-linux-x64-gnu': 0.6.5 + '@nomicfoundation/edr-linux-x64-musl': 0.6.5 + '@nomicfoundation/edr-win32-x64-msvc': 0.6.5 + + '@nomicfoundation/ethereumjs-common@4.0.4': + dependencies: + '@nomicfoundation/ethereumjs-util': 9.0.4 + transitivePeerDependencies: + - c-kzg + + '@nomicfoundation/ethereumjs-rlp@5.0.4': {} + + '@nomicfoundation/ethereumjs-tx@5.0.4': + dependencies: + '@nomicfoundation/ethereumjs-common': 4.0.4 + '@nomicfoundation/ethereumjs-rlp': 5.0.4 + '@nomicfoundation/ethereumjs-util': 9.0.4 + ethereum-cryptography: 0.1.3 + + '@nomicfoundation/ethereumjs-util@9.0.4': + dependencies: + '@nomicfoundation/ethereumjs-rlp': 5.0.4 + ethereum-cryptography: 0.1.3 + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer@0.1.2': + optionalDependencies: + '@nomicfoundation/solidity-analyzer-darwin-arm64': 0.1.2 + '@nomicfoundation/solidity-analyzer-darwin-x64': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 + '@panva/hkdf@1.2.1': {} '@parcel/watcher-android-arm64@2.5.0': @@ -15730,6 +15500,15 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-arrow@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-collection@1.1.0(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) @@ -15742,6 +15521,18 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-collection@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-compose-refs@1.0.1(@types/react@18.2.21)(react@18.3.1)': dependencies: '@babel/runtime': 7.26.0 @@ -15790,6 +15581,28 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-dialog@1.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.2.21)(react@18.3.1) + aria-hidden: 1.2.4 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.2.21)(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-direction@1.1.0(@types/react@18.2.21)(react@18.3.1)': dependencies: react: 18.3.1 @@ -15809,6 +15622,19 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-dismissable-layer@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-dropdown-menu@2.1.1(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.0 @@ -15824,6 +15650,21 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-dropdown-menu@2.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-menu': 2.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-focus-guards@1.1.0(@types/react@18.2.21)(react@18.3.1)': dependencies: react: 18.3.1 @@ -15841,6 +15682,17 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-focus-scope@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-id@1.1.0(@types/react@18.2.21)(react@18.3.1)': dependencies: '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.2.21)(react@18.3.1) @@ -15874,6 +15726,32 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-menu@2.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.2.21)(react@18.3.1) + aria-hidden: 1.2.4 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.2.21)(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-popper@1.2.0(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -15892,6 +15770,24 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-popper@1.2.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-arrow': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-rect': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/rect': 1.1.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-portal@1.1.1(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -15902,6 +15798,16 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-portal@1.1.1(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-presence@1.1.0(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) @@ -15912,6 +15818,16 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-presence@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-primitive@1.0.3(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.26.0 @@ -15931,6 +15847,15 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-slot': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-roving-focus@1.1.0(@types/react-dom@18.2.7)(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.0 @@ -15948,6 +15873,23 @@ snapshots: '@types/react': 18.2.21 '@types/react-dom': 18.2.7 + '@radix-ui/react-roving-focus@1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.2.21))(@types/react@18.2.21)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.2.21)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.2.21)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + '@types/react-dom': 18.3.5(@types/react@18.2.21) + '@radix-ui/react-slot@1.0.2(@types/react@18.2.21)(react@18.3.1)': dependencies: '@babel/runtime': 7.26.0 @@ -16243,27 +16185,15 @@ snapshots: optionalDependencies: rollup: 4.28.1 - '@rollup/rollup-android-arm-eabi@4.13.0': - optional: true - '@rollup/rollup-android-arm-eabi@4.28.1': optional: true - '@rollup/rollup-android-arm64@4.13.0': - optional: true - '@rollup/rollup-android-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-arm64@4.13.0': - optional: true - '@rollup/rollup-darwin-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-x64@4.13.0': - optional: true - '@rollup/rollup-darwin-x64@4.28.1': optional: true @@ -16273,24 +16203,15 @@ snapshots: '@rollup/rollup-freebsd-x64@4.28.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.13.0': - optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.28.1': optional: true '@rollup/rollup-linux-arm-musleabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.13.0': - optional: true - '@rollup/rollup-linux-arm64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.13.0': - optional: true - '@rollup/rollup-linux-arm64-musl@4.28.1': optional: true @@ -16300,42 +16221,24 @@ snapshots: '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.13.0': - optional: true - '@rollup/rollup-linux-riscv64-gnu@4.28.1': optional: true '@rollup/rollup-linux-s390x-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.13.0': - optional: true - '@rollup/rollup-linux-x64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-musl@4.13.0': - optional: true - '@rollup/rollup-linux-x64-musl@4.28.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.13.0': - optional: true - '@rollup/rollup-win32-arm64-msvc@4.28.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.13.0': - optional: true - '@rollup/rollup-win32-ia32-msvc@4.28.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.13.0': - optional: true - '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true @@ -16343,9 +16246,9 @@ snapshots: '@rushstack/eslint-patch@1.10.4': {} - '@safe-global/safe-apps-provider@0.18.4(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)': + '@safe-global/safe-apps-provider@0.18.4(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)': dependencies: - '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) events: 3.3.0 transitivePeerDependencies: - bufferutil @@ -16353,10 +16256,10 @@ snapshots: - utf-8-validate - zod - '@safe-global/safe-apps-sdk@9.1.0(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)': + '@safe-global/safe-apps-sdk@9.1.0(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)': dependencies: '@safe-global/safe-gateway-typescript-sdk': 3.22.4 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) transitivePeerDependencies: - bufferutil - typescript @@ -16371,6 +16274,12 @@ snapshots: '@scure/base@1.2.1': {} + '@scure/bip32@1.1.5': + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/base': 1.1.9 + '@scure/bip32@1.4.0': dependencies: '@noble/curves': 1.4.2 @@ -16383,6 +16292,11 @@ snapshots: '@noble/hashes': 1.6.1 '@scure/base': 1.2.1 + '@scure/bip39@1.1.1': + dependencies: + '@noble/hashes': 1.2.0 + '@scure/base': 1.1.9 + '@scure/bip39@1.3.0': dependencies: '@noble/hashes': 1.4.0 @@ -16474,11 +16388,25 @@ snapshots: - encoding - supports-color + '@sentry/core@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + '@sentry/core@7.108.0': dependencies: '@sentry/types': 7.108.0 '@sentry/utils': 7.108.0 + '@sentry/hub@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + '@sentry/integrations@7.108.0': dependencies: '@sentry/core': 7.108.0 @@ -16486,6 +16414,12 @@ snapshots: '@sentry/utils': 7.108.0 localforage: 1.10.0 + '@sentry/minimal@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/types': 5.30.0 + tslib: 1.14.1 + '@sentry/nextjs@7.108.0(next@14.1.4(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@rollup/plugin-commonjs': 24.0.0(rollup@2.78.0) @@ -16507,6 +16441,20 @@ snapshots: - encoding - supports-color + '@sentry/node@5.30.0': + dependencies: + '@sentry/core': 5.30.0 + '@sentry/hub': 5.30.0 + '@sentry/tracing': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + cookie: 0.4.2 + https-proxy-agent: 5.0.1 + lru_map: 0.3.3 + tslib: 1.14.1 + transitivePeerDependencies: + - supports-color + '@sentry/node@7.108.0': dependencies: '@sentry-internal/tracing': 7.108.0 @@ -16530,8 +16478,23 @@ snapshots: '@sentry/types': 7.108.0 '@sentry/utils': 7.108.0 + '@sentry/tracing@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/types@5.30.0': {} + '@sentry/types@7.108.0': {} + '@sentry/utils@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + tslib: 1.14.1 + '@sentry/utils@7.108.0': dependencies: '@sentry/types': 7.108.0 @@ -16675,101 +16638,101 @@ snapshots: transitivePeerDependencies: - debug - '@storybook/addon-actions@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-actions@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 dequal: 2.0.3 polished: 4.3.1 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) uuid: 9.0.1 - '@storybook/addon-backgrounds@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-backgrounds@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 - '@storybook/addon-controls@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-controls@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 dequal: 2.0.3 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 - '@storybook/addon-docs@8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-docs@8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@mdx-js/react': 3.1.0(@types/react@18.2.21)(react@18.3.1) - '@storybook/blocks': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/react-dom-shim': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/blocks': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/react-dom-shim': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - '@storybook/addon-essentials@8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': - dependencies: - '@storybook/addon-actions': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-backgrounds': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-controls': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-docs': 8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-highlight': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-measure': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-outline': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-toolbars': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/addon-viewport': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + '@storybook/addon-essentials@8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': + dependencies: + '@storybook/addon-actions': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-backgrounds': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-controls': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-docs': 8.4.7(@types/react@18.2.21)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-highlight': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-measure': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-outline': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-toolbars': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/addon-viewport': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - '@storybook/addon-highlight@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-highlight@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) - '@storybook/addon-interactions@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-interactions@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/test': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/instrumenter': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/test': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) polished: 4.3.1 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 - '@storybook/addon-links@8.4.7(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-links@8.4.7(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/csf': 0.1.12 '@storybook/global': 5.0.0 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 optionalDependencies: react: 18.3.1 - '@storybook/addon-measure@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-measure@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) tiny-invariant: 1.3.3 - '@storybook/addon-outline@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-outline@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 - '@storybook/addon-toolbars@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-toolbars@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) - '@storybook/addon-viewport@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/addon-viewport@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: memoizerific: 1.11.3 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/addons@7.6.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: @@ -16780,23 +16743,23 @@ snapshots: - react - react-dom - '@storybook/blocks@8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/blocks@8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/csf': 0.1.12 '@storybook/icons': 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 optionalDependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/builder-vite@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0))': + '@storybook/builder-vite@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: - '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/csf-plugin': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) browser-assert: 1.2.1 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) ts-dedent: 2.2.0 - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) '@storybook/channels@7.6.17': dependencies: @@ -16811,19 +16774,19 @@ snapshots: dependencies: '@storybook/global': 5.0.0 - '@storybook/client-logger@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/client-logger@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) - '@storybook/components@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/components@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/core-events@7.6.17': dependencies: ts-dedent: 2.2.0 - '@storybook/core@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)': + '@storybook/core@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)': dependencies: '@storybook/csf': 0.1.12 better-opn: 3.0.2 @@ -16837,15 +16800,15 @@ snapshots: util: 0.12.5 ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) optionalDependencies: - prettier: 3.2.5 + prettier: 3.4.2 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - '@storybook/csf-plugin@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/csf-plugin@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) unplugin: 1.16.0 '@storybook/csf@0.1.12': @@ -16859,11 +16822,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/instrumenter@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/instrumenter@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/global': 5.0.0 '@vitest/utils': 2.1.8 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/manager-api@7.6.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: @@ -16885,9 +16848,9 @@ snapshots: - react - react-dom - '@storybook/manager-api@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/manager-api@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/preview-api@7.6.17': dependencies: @@ -16906,51 +16869,51 @@ snapshots: ts-dedent: 2.2.0 util-deprecate: 1.0.2 - '@storybook/preview-api@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/preview-api@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) - '@storybook/react-dom-shim@8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/react-dom-shim@8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) - '@storybook/react-vite@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.28.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(typescript@5.4.3)(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0))': + '@storybook/react-vite@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.28.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.4.2(typescript@5.4.3)(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.4.2(typescript@5.7.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@rollup/pluginutils': 5.1.3(rollup@4.28.1) - '@storybook/builder-vite': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0)) - '@storybook/react': 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(typescript@5.4.3) + '@storybook/builder-vite': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) + '@storybook/react': 8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(typescript@5.7.2) find-up: 5.0.0 magic-string: 0.30.15 react: 18.3.1 react-docgen: 7.1.0 react-dom: 18.3.1(react@18.3.1) resolve: 1.22.8 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) tsconfig-paths: 4.2.0 - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - '@storybook/test' - rollup - supports-color - typescript - '@storybook/react@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))(typescript@5.4.3)': + '@storybook/react@8.4.7(@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))(typescript@5.7.2)': dependencies: - '@storybook/components': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/components': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/preview-api': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/react-dom-shim': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - '@storybook/theming': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/manager-api': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/preview-api': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/react-dom-shim': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + '@storybook/theming': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) optionalDependencies: - '@storybook/test': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) - typescript: 5.4.3 + '@storybook/test': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) + typescript: 5.7.2 '@storybook/router@7.6.17': dependencies: @@ -16958,17 +16921,17 @@ snapshots: memoizerific: 1.11.3 qs: 6.13.1 - '@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/test@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: '@storybook/csf': 0.1.12 '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3)) + '@storybook/instrumenter': 8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3)) '@testing-library/dom': 10.4.0 '@testing-library/jest-dom': 6.5.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) '@vitest/expect': 2.0.5 '@vitest/spy': 2.0.5 - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/theming@7.6.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: @@ -16979,9 +16942,9 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/theming@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/theming@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@storybook/types@7.6.17': dependencies: @@ -16990,9 +16953,9 @@ snapshots: '@types/express': 4.17.21 file-system-cache: 2.3.0 - '@storybook/types@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3))': + '@storybook/types@8.4.7(storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3))': dependencies: - storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + storybook: 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) '@suchipi/femver@1.0.0': {} @@ -17040,12 +17003,12 @@ snapshots: '@svgr/babel-plugin-transform-react-native-svg': 7.0.0(@babel/core@7.26.0) '@svgr/babel-plugin-transform-svg-component': 7.0.0(@babel/core@7.26.0) - '@svgr/cli@7.0.0(typescript@5.4.3)': + '@svgr/cli@7.0.0(typescript@5.7.2)': dependencies: - '@svgr/core': 7.0.0(typescript@5.4.3) + '@svgr/core': 7.0.0(typescript@5.7.2) '@svgr/plugin-jsx': 7.0.0 - '@svgr/plugin-prettier': 7.0.0(@svgr/core@7.0.0(typescript@5.4.3)) - '@svgr/plugin-svgo': 7.0.0(@svgr/core@7.0.0(typescript@5.4.3))(typescript@5.4.3) + '@svgr/plugin-prettier': 7.0.0(@svgr/core@7.0.0(typescript@5.7.2)) + '@svgr/plugin-svgo': 7.0.0(@svgr/core@7.0.0(typescript@5.7.2))(typescript@5.7.2) camelcase: 6.3.0 chalk: 4.1.2 commander: 9.5.0 @@ -17055,19 +17018,19 @@ snapshots: - supports-color - typescript - '@svgr/core@7.0.0(typescript@5.4.3)': + '@svgr/core@7.0.0(typescript@5.7.2)': dependencies: '@babel/core': 7.26.0 '@svgr/babel-preset': 7.0.0(@babel/core@7.26.0) camelcase: 6.3.0 - cosmiconfig: 8.3.6(typescript@5.4.3) + cosmiconfig: 8.3.6(typescript@5.7.2) transitivePeerDependencies: - supports-color - typescript '@svgr/hast-util-to-babel-ast@7.0.0': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.25.7 entities: 4.5.0 '@svgr/plugin-jsx@7.0.0': @@ -17079,16 +17042,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@svgr/plugin-prettier@7.0.0(@svgr/core@7.0.0(typescript@5.4.3))': + '@svgr/plugin-prettier@7.0.0(@svgr/core@7.0.0(typescript@5.7.2))': dependencies: - '@svgr/core': 7.0.0(typescript@5.4.3) + '@svgr/core': 7.0.0(typescript@5.7.2) deepmerge: 4.3.1 prettier: 2.8.8 - '@svgr/plugin-svgo@7.0.0(@svgr/core@7.0.0(typescript@5.4.3))(typescript@5.4.3)': + '@svgr/plugin-svgo@7.0.0(@svgr/core@7.0.0(typescript@5.7.2))(typescript@5.7.2)': dependencies: - '@svgr/core': 7.0.0(typescript@5.4.3) - cosmiconfig: 8.3.6(typescript@5.4.3) + '@svgr/core': 7.0.0(typescript@5.7.2) + cosmiconfig: 8.3.6(typescript@5.7.2) deepmerge: 4.3.1 svgo: 3.3.2 transitivePeerDependencies: @@ -17449,13 +17412,13 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - '@tailwindcss/typography@0.5.15(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)))': + '@tailwindcss/typography@0.5.15(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)))': dependencies: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + tailwindcss: 3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) '@tanstack/query-core@5.62.7': {} @@ -17493,7 +17456,7 @@ snapshots: '@testing-library/dom@9.3.4': dependencies: - '@babel/code-frame': 7.26.2 + '@babel/code-frame': 7.25.7 '@babel/runtime': 7.26.0 '@types/aria-query': 5.0.4 aria-query: 5.1.3 @@ -17580,30 +17543,38 @@ snapshots: '@tsconfig/node16@1.0.4': {} - '@tsconfig/strictest@2.0.4': {} + '@tsconfig/strictest@2.0.5': {} '@types/aria-query@5.0.4': {} '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.25.7 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.25.7 + + '@types/bn.js@4.11.6': + dependencies: + '@types/node': 20.17.10 + + '@types/bn.js@5.1.6': + dependencies: + '@types/node': 20.17.10 '@types/body-parser@1.19.5': dependencies: @@ -17624,8 +17595,6 @@ snapshots: dependencies: '@types/estree': 1.0.6 - '@types/estree@1.0.5': {} - '@types/estree@1.0.6': {} '@types/express-serve-static-core@4.19.6': @@ -17679,7 +17648,7 @@ snapshots: expect: 29.7.0 pretty-format: 29.7.0 - '@types/json-schema@7.0.12': {} + '@types/json-schema@7.0.15': {} '@types/json5@0.0.29': {} @@ -17699,6 +17668,8 @@ snapshots: '@types/long@4.0.2': {} + '@types/lru-cache@5.1.1': {} + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 @@ -17707,8 +17678,6 @@ snapshots: '@types/mime@1.3.5': {} - '@types/minimist@1.2.2': {} - '@types/minimist@1.2.5': {} '@types/ms@0.7.34': {} @@ -17732,10 +17701,6 @@ snapshots: dependencies: undici-types: 5.26.5 - '@types/node@20.11.30': - dependencies: - undici-types: 5.26.5 - '@types/node@20.17.10': dependencies: undici-types: 6.19.8 @@ -17746,6 +17711,10 @@ snapshots: '@types/nprogress@0.2.3': {} + '@types/pbkdf2@3.1.2': + dependencies: + '@types/node': 20.17.10 + '@types/pg@8.6.6': dependencies: '@types/node': 20.17.10 @@ -17788,7 +17757,11 @@ snapshots: '@types/scheduler@0.23.0': {} - '@types/semver@7.5.1': {} + '@types/secp256k1@4.0.6': + dependencies: + '@types/node': 20.17.10 + + '@types/semver@7.5.8': {} '@types/send@0.17.4': dependencies: @@ -17835,36 +17808,36 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint@8.57.0)(typescript@5.4.3)': + '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2)': dependencies: - '@eslint-community/regexpp': 4.8.0 - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.3) + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.7.2) '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) + '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.1)(typescript@5.7.2) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.7.2) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.57.0 + debug: 4.4.0(supports-color@8.1.1) + eslint: 8.57.1 graphemer: 1.4.0 - ignore: 5.3.0 + ignore: 5.3.2 natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.4.3) + semver: 7.6.3 + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3)': + '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2)': dependencies: '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.3) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.7.2) '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.57.0 + debug: 4.4.0(supports-color@8.1.1) + eslint: 8.57.1 optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - supports-color @@ -17873,45 +17846,45 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - '@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.4.3)': + '@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.7.2)': dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.3) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) - debug: 4.3.4 - eslint: 8.57.0 - ts-api-utils: 1.0.3(typescript@5.4.3) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.7.2) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.7.2) + debug: 4.4.0(supports-color@8.1.1) + eslint: 8.57.1 + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - supports-color '@typescript-eslint/types@6.21.0': {} - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.3)': + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.7.2)': dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 + debug: 4.4.0(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.4.3) + semver: 7.6.3 + ts-api-utils: 1.4.3(typescript@5.7.2) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.3)': + '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.7.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.1 + '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.3) - eslint: 8.57.0 - semver: 7.5.4 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.7.2) + eslint: 8.57.1 + semver: 7.6.3 transitivePeerDependencies: - supports-color - typescript @@ -17921,14 +17894,39 @@ snapshots: '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 - '@ungap/structured-clone@1.2.0': {} - '@ungap/structured-clone@1.2.1': {} '@upstash/redis@1.25.1': dependencies: crypto-js: 4.2.0 + '@vanilla-extract/css@1.15.5': + dependencies: + '@emotion/hash': 0.9.2 + '@vanilla-extract/private': 1.0.6 + css-what: 6.1.0 + cssesc: 3.0.0 + csstype: 3.1.3 + dedent: 1.5.3 + deep-object-diff: 1.1.9 + deepmerge: 4.3.1 + lru-cache: 10.4.3 + media-query-parser: 2.0.2 + modern-ahocorasick: 1.0.1 + picocolors: 1.1.1 + transitivePeerDependencies: + - babel-plugin-macros + + '@vanilla-extract/dynamic@2.1.2': + dependencies: + '@vanilla-extract/private': 1.0.6 + + '@vanilla-extract/private@1.0.6': {} + + '@vanilla-extract/recipes@0.5.5(@vanilla-extract/css@1.15.5)': + dependencies: + '@vanilla-extract/css': 1.15.5 + '@vercel/kv@1.0.1': dependencies: '@upstash/redis': 1.25.1 @@ -17940,22 +17938,22 @@ snapshots: utf-8-validate: 6.0.3 ws: 8.14.2(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@vitejs/plugin-react@4.3.4(vite@5.2.6(@types/node@20.11.30)(terser@5.37.0))': + '@vitejs/plugin-react@4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@1.6.0(vitest@1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0))': + '@vitest/coverage-v8@1.6.0(vitest@1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 @@ -17966,7 +17964,7 @@ snapshots: std-env: 3.8.0 strip-literal: 2.1.1 test-exclude: 6.0.0 - vitest: 1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0) + vitest: 1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0) transitivePeerDependencies: - supports-color @@ -17976,11 +17974,11 @@ snapshots: '@vitest/utils': 1.2.1 chai: 4.5.0 - '@vitest/expect@1.4.0': + '@vitest/expect@1.6.0': dependencies: - '@vitest/spy': 1.4.0 - '@vitest/utils': 1.4.0 - chai: 4.4.1 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + chai: 4.5.0 '@vitest/expect@2.0.5': dependencies: @@ -18003,9 +18001,9 @@ snapshots: p-limit: 5.0.0 pathe: 1.1.2 - '@vitest/runner@1.4.0': + '@vitest/runner@1.6.0': dependencies: - '@vitest/utils': 1.4.0 + '@vitest/utils': 1.6.0 p-limit: 5.0.0 pathe: 1.1.2 @@ -18015,9 +18013,9 @@ snapshots: pathe: 1.1.2 pretty-format: 29.7.0 - '@vitest/snapshot@1.4.0': + '@vitest/snapshot@1.6.0': dependencies: - magic-string: 0.30.8 + magic-string: 0.30.15 pathe: 1.1.2 pretty-format: 29.7.0 @@ -18025,7 +18023,7 @@ snapshots: dependencies: tinyspy: 2.2.1 - '@vitest/spy@1.4.0': + '@vitest/spy@1.6.0': dependencies: tinyspy: 2.2.1 @@ -18040,7 +18038,7 @@ snapshots: loupe: 2.3.7 pretty-format: 29.7.0 - '@vitest/utils@1.4.0': + '@vitest/utils@1.6.0': dependencies: diff-sequences: 29.6.3 estree-walker: 3.0.3 @@ -18060,46 +18058,9 @@ snapshots: loupe: 3.1.2 tinyrainbow: 1.2.0 - '@vue/compiler-core@3.4.21': - dependencies: - '@babel/parser': 7.26.3 - '@vue/shared': 3.4.21 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - optional: true - - '@vue/compiler-dom@3.4.21': - dependencies: - '@vue/compiler-core': 3.4.21 - '@vue/shared': 3.4.21 - optional: true - - '@vue/compiler-sfc@3.4.21': - dependencies: - '@babel/parser': 7.26.3 - '@vue/compiler-core': 3.4.21 - '@vue/compiler-dom': 3.4.21 - '@vue/compiler-ssr': 3.4.21 - '@vue/shared': 3.4.21 - estree-walker: 2.0.2 - magic-string: 0.30.15 - postcss: 8.4.49 - source-map-js: 1.2.1 - optional: true - - '@vue/compiler-ssr@3.4.21': - dependencies: - '@vue/compiler-dom': 3.4.21 - '@vue/shared': 3.4.21 - optional: true - - '@vue/shared@3.4.21': - optional: true - - '@wagmi/cli@2.1.20(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)': + '@wagmi/cli@2.1.20(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)': dependencies: - abitype: 1.0.7(typescript@5.4.3)(zod@3.24.1) + abitype: 1.0.7(typescript@5.7.2)(zod@3.24.1) bundle-require: 4.2.1(esbuild@0.19.12) cac: 6.7.14 change-case: 5.4.4 @@ -18116,26 +18077,26 @@ snapshots: picocolors: 1.1.1 picomatch: 3.0.1 prettier: 3.4.2 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) zod: 3.24.1 optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - bufferutil - utf-8-validate - '@wagmi/connectors@5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.4.3)(utf-8-validate@6.0.3)(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))(zod@3.22.4)': + '@wagmi/connectors@5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.7.2)(utf-8-validate@6.0.3)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))(zod@3.24.1)': dependencies: '@coinbase/wallet-sdk': 4.2.3 '@metamask/sdk': 0.31.1(bufferutil@4.0.8)(utf-8-validate@6.0.3) - '@safe-global/safe-apps-provider': 0.18.4(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) - '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) - '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)) + '@safe-global/safe-apps-provider': 0.18.4(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) + '@safe-global/safe-apps-sdk': 9.1.0(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) + '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)) '@walletconnect/ethereum-provider': 2.17.0(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3) cbw-sdk: '@coinbase/wallet-sdk@3.9.3' - viem: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -18158,21 +18119,42 @@ snapshots: - utf-8-validate - zod - '@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))': + '@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))': dependencies: eventemitter3: 5.0.1 - mipd: 0.0.7(typescript@5.4.3) - viem: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + mipd: 0.0.7(typescript@5.7.2) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) zustand: 5.0.0(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.2.0(react@18.3.1)) optionalDependencies: '@tanstack/query-core': 5.62.7 - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - '@types/react' - immer - react - use-sync-external-store + '@wallet-standard/app@1.0.1': + dependencies: + '@wallet-standard/base': 1.0.1 + + '@wallet-standard/base@1.0.1': {} + + '@wallet-standard/core@1.0.3': + dependencies: + '@wallet-standard/app': 1.0.1 + '@wallet-standard/base': 1.0.1 + '@wallet-standard/features': 1.0.3 + '@wallet-standard/wallet': 1.0.1 + + '@wallet-standard/features@1.0.3': + dependencies: + '@wallet-standard/base': 1.0.1 + + '@wallet-standard/wallet@1.0.1': + dependencies: + '@wallet-standard/base': 1.0.1 + '@walletconnect/core@2.13.0(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@vercel/kv@1.0.1)(bufferutil@4.0.8)(utf-8-validate@6.0.3)': dependencies: '@walletconnect/heartbeat': 1.2.2 @@ -18462,7 +18444,7 @@ snapshots: '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 tslib: 1.14.1 - uint8arrays: 3.1.1 + uint8arrays: 3.1.0 '@walletconnect/safe-json@1.0.2': dependencies: @@ -18883,10 +18865,10 @@ snapshots: lit: 3.1.0 qrcode: 1.5.3 - '@web3modal/wagmi@4.2.3(g2jokmnp5dswp2ur2l5nmjfttq)': + '@web3modal/wagmi@4.2.3(tx2qcuguw7ip4pmbujlc3ml2am)': dependencies: - '@wagmi/connectors': 5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.4.3)(utf-8-validate@6.0.3)(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))(zod@3.22.4) - '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)) + '@wagmi/connectors': 5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.7.2)(utf-8-validate@6.0.3)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))(zod@3.24.1) + '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)) '@walletconnect/ethereum-provider': 2.13.0(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3) '@web3modal/polyfills': 4.2.3 '@web3modal/scaffold': 4.2.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(react@18.3.1) @@ -18894,7 +18876,7 @@ snapshots: '@web3modal/scaffold-utils': 4.2.3(@types/react@18.2.21)(react@18.3.1) '@web3modal/scaffold-vue': 4.2.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(react@18.3.1) '@web3modal/siwe': 4.2.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(react@18.3.1) - viem: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) optionalDependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -18929,24 +18911,9 @@ snapshots: jsonparse: 1.3.1 through: 2.3.8 - abitype@1.0.5(typescript@5.4.3)(zod@3.22.4): - optionalDependencies: - typescript: 5.4.3 - zod: 3.22.4 - - abitype@1.0.5(typescript@5.4.3)(zod@3.24.1): + abitype@1.0.7(typescript@5.7.2)(zod@3.24.1): optionalDependencies: - typescript: 5.4.3 - zod: 3.24.1 - - abitype@1.0.7(typescript@5.4.3)(zod@3.22.4): - optionalDependencies: - typescript: 5.4.3 - zod: 3.22.4 - - abitype@1.0.7(typescript@5.4.3)(zod@3.24.1): - optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 zod: 3.24.1 abort-controller@3.0.0: @@ -18962,21 +18929,19 @@ snapshots: dependencies: acorn: 8.14.0 - acorn-walk@8.3.2: {} - acorn-walk@8.3.4: dependencies: acorn: 8.14.0 - acorn@8.11.3: {} - acorn@8.14.0: {} + adm-zip@0.4.16: {} + aes-js@3.0.0: {} agent-base@6.0.2: dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -18984,6 +18949,11 @@ snapshots: dependencies: humanize-ms: 1.2.1 + aggregate-error@3.1.0: + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + ajv@6.12.6: dependencies: fast-deep-equal: 3.1.3 @@ -19001,15 +18971,19 @@ snapshots: anser@1.4.10: optional: true + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + ansi-colors@4.1.3: {} ansi-escapes@4.3.2: dependencies: type-fest: 0.21.3 - ansi-escapes@6.2.0: + ansi-escapes@7.0.0: dependencies: - type-fest: 3.13.1 + environment: 1.1.0 ansi-regex@5.0.1: {} @@ -19062,11 +19036,6 @@ snapshots: aria-query@5.3.2: {} - array-buffer-byte-length@1.0.0: - dependencies: - call-bind: 1.0.2 - is-array-buffer: 3.0.2 - array-buffer-byte-length@1.0.1: dependencies: call-bind: 1.0.8 @@ -19083,14 +19052,8 @@ snapshots: get-intrinsic: 1.2.5 is-string: 1.1.0 - array-union@1.0.2: - dependencies: - array-uniq: 1.0.3 - array-union@2.1.0: {} - array-uniq@1.0.3: {} - array.prototype.findlast@1.2.5: dependencies: call-bind: 1.0.8 @@ -19109,13 +19072,6 @@ snapshots: es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 - array.prototype.flat@1.3.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - array.prototype.flat@1.3.2: dependencies: call-bind: 1.0.8 @@ -19138,15 +19094,6 @@ snapshots: es-errors: 1.3.0 es-shim-unscopables: 1.0.2 - arraybuffer.prototype.slice@1.0.1: - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.2 - define-properties: 1.2.0 - get-intrinsic: 1.2.1 - is-array-buffer: 3.0.2 - is-shared-array-buffer: 1.0.2 - arraybuffer.prototype.slice@1.0.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -19189,7 +19136,7 @@ snapshots: dependencies: tslib: 2.8.1 - async@3.2.5: {} + async@3.2.6: {} asynckit@0.4.0: {} @@ -19201,18 +19148,16 @@ snapshots: dependencies: tslib: 2.8.1 - autoprefixer@10.4.20(postcss@8.4.38): + autoprefixer@10.4.20(postcss@8.4.49): dependencies: browserslist: 4.24.2 caniuse-lite: 1.0.30001687 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.4.38 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - available-typed-arrays@1.0.5: {} - available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 @@ -19221,7 +19166,7 @@ snapshots: axios@1.7.9: dependencies: - follow-redirects: 1.15.9 + follow-redirects: 1.15.9(debug@4.4.0) form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -19342,6 +19287,10 @@ snapshots: balanced-match@1.0.2: {} + base-x@3.0.10: + dependencies: + safe-buffer: 5.2.1 + base-x@5.0.0: {} base32.js@0.1.0: {} @@ -19366,6 +19315,8 @@ snapshots: blake3-wasm@2.1.5: {} + blakejs@1.2.1: {} + bn.js@4.12.1: {} bn.js@5.2.1: {} @@ -19374,6 +19325,17 @@ snapshots: bowser@2.11.0: {} + boxen@5.1.2: + dependencies: + ansi-align: 3.0.1 + camelcase: 6.3.0 + chalk: 4.1.2 + cli-boxes: 2.2.1 + string-width: 4.2.3 + type-fest: 0.20.2 + widest-line: 3.1.0 + wrap-ansi: 7.0.0 + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 @@ -19383,28 +19345,24 @@ snapshots: dependencies: balanced-match: 1.0.2 - braces@3.0.2: - dependencies: - fill-range: 7.0.1 - braces@3.0.3: dependencies: fill-range: 7.1.1 - breakword@1.0.6: - dependencies: - wcwidth: 1.0.1 - brorand@1.1.0: {} browser-assert@1.2.1: {} - browserslist@4.23.0: + browser-stdout@1.3.1: {} + + browserify-aes@1.2.0: dependencies: - caniuse-lite: 1.0.30001597 - electron-to-chromium: 1.4.704 - node-releases: 2.0.14 - update-browserslist-db: 1.0.13(browserslist@4.23.0) + buffer-xor: 1.0.3 + cipher-base: 1.0.6 + create-hash: 1.2.0 + evp_bytestokey: 1.0.3 + inherits: 2.0.4 + safe-buffer: 5.2.1 browserslist@4.24.2: dependencies: @@ -19413,10 +19371,20 @@ snapshots: node-releases: 2.0.19 update-browserslist-db: 1.1.1(browserslist@4.24.2) + bs58@4.0.1: + dependencies: + base-x: 3.0.10 + bs58@6.0.0: dependencies: base-x: 5.0.0 + bs58check@2.1.2: + dependencies: + bs58: 4.0.1 + create-hash: 1.2.0 + safe-buffer: 5.2.1 + bser@2.1.1: dependencies: node-int64: 0.4.0 @@ -19424,6 +19392,8 @@ snapshots: buffer-from@1.1.2: {} + buffer-xor@1.0.3: {} + buffer@6.0.3: dependencies: base64-js: 1.5.1 @@ -19468,11 +19438,6 @@ snapshots: es-errors: 1.3.0 function-bind: 1.1.2 - call-bind@1.0.2: - dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.1 - call-bind@1.0.8: dependencies: call-bind-apply-helpers: 1.0.1 @@ -19509,13 +19474,11 @@ snapshots: camelcase@7.0.1: {} - caniuse-lite@1.0.30001597: {} - caniuse-lite@1.0.30001687: {} capnp-ts@0.7.0: dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) tslib: 2.8.1 transitivePeerDependencies: - supports-color @@ -19524,16 +19487,6 @@ snapshots: ccount@2.0.1: {} - chai@4.4.1: - dependencies: - assertion-error: 1.1.0 - check-error: 1.0.3 - deep-eql: 4.1.3 - get-func-name: 2.0.2 - loupe: 2.3.7 - pathval: 1.1.1 - type-detect: 4.0.8 - chai@4.5.0: dependencies: assertion-error: 1.1.0 @@ -19632,19 +19585,25 @@ snapshots: - supports-color optional: true - ci-info@2.0.0: - optional: true - - ci-info@3.8.0: {} + ci-info@2.0.0: {} ci-info@3.9.0: {} + cipher-base@1.0.6: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + citty@0.1.6: dependencies: consola: 3.2.3 classnames@2.5.1: {} + clean-stack@2.2.0: {} + + cli-boxes@2.2.1: {} + cli-color@2.0.4: dependencies: d: 1.0.2 @@ -19653,9 +19612,9 @@ snapshots: memoizee: 0.4.17 timers-ext: 0.1.8 - cli-cursor@4.0.0: + cli-cursor@5.0.0: dependencies: - restore-cursor: 4.0.0 + restore-cursor: 5.1.0 cli-spinners@2.9.2: {} @@ -19680,6 +19639,12 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 6.2.0 + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + cliui@8.0.1: dependencies: string-width: 4.2.3 @@ -19692,8 +19657,6 @@ snapshots: kind-of: 6.0.3 shallow-clone: 3.0.1 - clone@1.0.4: {} - clsx@1.2.1: {} clsx@2.1.1: {} @@ -19728,12 +19691,13 @@ snapshots: comma-separated-tokens@2.0.3: {} + command-exists@1.2.9: {} + commander@10.0.1: {} commander@11.1.0: {} - commander@12.1.0: - optional: true + commander@12.1.0: {} commander@2.20.3: optional: true @@ -19742,6 +19706,8 @@ snapshots: commander@7.2.0: {} + commander@8.3.0: {} + commander@9.5.0: {} commondir@1.0.1: {} @@ -19807,6 +19773,8 @@ snapshots: cookie-es@1.2.2: {} + cookie@0.4.2: {} + cookie@0.5.0: {} cookie@0.7.2: {} @@ -19833,7 +19801,7 @@ snapshots: object-assign: 4.1.1 vary: 1.1.2 - cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.4.3))(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3))(typescript@5.7.2): + cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.7.2))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.7.2))(typescript@5.7.2): dependencies: '@types/node': 20.5.1 cosmiconfig: 8.3.6(typescript@5.7.2) @@ -19848,15 +19816,6 @@ snapshots: parse-json: 4.0.0 optional: true - cosmiconfig@8.3.6(typescript@5.4.3): - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - optionalDependencies: - typescript: 5.4.3 - cosmiconfig@8.3.6(typescript@5.7.2): dependencies: import-fresh: 3.3.0 @@ -19871,8 +19830,27 @@ snapshots: long: 4.0.0 protobufjs: 6.11.4 + cosmjs-types@0.9.0: {} + crc-32@1.2.2: {} + create-hash@1.2.0: + dependencies: + cipher-base: 1.0.6 + inherits: 2.0.4 + md5.js: 1.3.5 + ripemd160: 2.0.2 + sha.js: 2.4.11 + + create-hmac@1.1.7: + dependencies: + cipher-base: 1.0.6 + create-hash: 1.2.0 + inherits: 2.0.4 + ripemd160: 2.0.2 + safe-buffer: 5.2.1 + sha.js: 2.4.11 + create-require@1.1.1: {} cross-fetch@3.1.8: @@ -19887,18 +19865,6 @@ snapshots: transitivePeerDependencies: - encoding - cross-spawn@5.1.0: - dependencies: - lru-cache: 4.1.5 - shebang-command: 1.2.0 - which: 1.3.1 - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -19946,19 +19912,6 @@ snapshots: csstype@3.1.3: {} - csv-generate@3.4.3: {} - - csv-parse@4.16.3: {} - - csv-stringify@5.6.5: {} - - csv@5.5.3: - dependencies: - csv-generate: 3.4.3 - csv-parse: 4.16.3 - csv-stringify: 5.6.5 - stream-transform: 2.1.3 - culori@3.3.0: {} d@1.0.2: @@ -19966,12 +19919,12 @@ snapshots: es5-ext: 0.10.64 type: 2.7.3 - daisyui@4.12.20(postcss@8.4.38): + daisyui@4.12.20(postcss@8.4.49): dependencies: css-selector-tokenizer: 0.8.0 culori: 3.3.0 picocolors: 1.1.1 - postcss-js: 4.0.1(postcss@8.4.38) + postcss-js: 4.0.1(postcss@8.4.49) transitivePeerDependencies: - postcss @@ -20026,17 +19979,15 @@ snapshots: dependencies: ms: 2.1.3 - debug@4.3.4: - dependencies: - ms: 2.1.2 - debug@4.3.7: dependencies: ms: 2.1.3 - debug@4.4.0: + debug@4.4.0(supports-color@8.1.1): dependencies: ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 decamelize-keys@1.1.1: dependencies: @@ -20045,6 +19996,8 @@ snapshots: decamelize@1.2.0: {} + decamelize@4.0.0: {} + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 @@ -20057,6 +20010,8 @@ snapshots: dedent@0.7.0: {} + dedent@1.5.3: {} + deep-eql@4.1.3: dependencies: type-detect: 4.1.0 @@ -20088,11 +20043,9 @@ snapshots: deep-is@0.1.4: {} - deepmerge@4.3.1: {} + deep-object-diff@1.1.9: {} - defaults@1.0.4: - dependencies: - clone: 1.0.4 + deepmerge@4.3.1: {} defer-to-connect@2.0.1: {} @@ -20104,11 +20057,6 @@ snapshots: define-lazy-prop@2.0.0: {} - define-properties@1.2.0: - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - define-properties@1.2.1: dependencies: define-data-property: 1.1.4 @@ -20153,6 +20101,8 @@ snapshots: diff@4.0.2: {} + diff@5.2.0: {} + difflib@0.2.4: dependencies: heap: 0.2.7 @@ -20210,8 +20160,6 @@ snapshots: dotenv-expand@10.0.0: {} - dotenv@16.4.5: {} - dotenv@16.4.7: {} dotenv@8.6.0: {} @@ -20258,10 +20206,10 @@ snapshots: pg: 8.13.1 react: 18.3.1 - drizzle-zod@0.5.1(drizzle-orm@0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1))(zod@3.22.4): + drizzle-zod@0.5.1(drizzle-orm@0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1))(zod@3.24.1): dependencies: drizzle-orm: 0.29.5(@cloudflare/workers-types@4.20241205.0)(@neondatabase/serverless@0.7.2)(@types/pg@8.6.6)(@types/react@18.2.21)(@vercel/postgres@0.7.2)(pg@8.13.1)(react@18.3.1) - zod: 3.22.4 + zod: 3.24.1 dunder-proto@1.0.0: dependencies: @@ -20284,14 +20232,12 @@ snapshots: dependencies: '@ecies/ciphers': 0.2.2(@noble/ciphers@1.1.3) '@noble/ciphers': 1.1.3 - '@noble/curves': 1.7.0 - '@noble/hashes': 1.6.1 + '@noble/curves': 1.6.0 + '@noble/hashes': 1.5.0 ee-first@1.1.1: optional: true - electron-to-chromium@1.4.704: {} - electron-to-chromium@1.5.72: {} elliptic@6.5.4: @@ -20350,7 +20296,7 @@ snapshots: enhanced-resolve@5.17.1: dependencies: - graceful-fs: 4.2.11 + graceful-fs: 4.2.10 tapable: 2.2.1 enquirer@2.4.1: @@ -20360,8 +20306,12 @@ snapshots: entities@4.5.0: {} + env-paths@2.2.1: {} + env-paths@3.0.0: {} + environment@1.1.0: {} + error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 @@ -20371,48 +20321,6 @@ snapshots: stackframe: 1.3.4 optional: true - es-abstract@1.22.1: - dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.1 - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.1 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - is-array-buffer: 3.0.2 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.12.3 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 - safe-array-concat: 1.0.0 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.7 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.11 - es-abstract@1.23.5: dependencies: array-buffer-byte-length: 1.0.1 @@ -20500,32 +20408,16 @@ snapshots: dependencies: es-errors: 1.3.0 - es-set-tostringtag@2.0.1: - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - has-tostringtag: 1.0.0 - es-set-tostringtag@2.0.3: dependencies: get-intrinsic: 1.2.5 has-tostringtag: 1.0.2 hasown: 2.0.2 - es-shim-unscopables@1.0.0: - dependencies: - has: 1.0.3 - es-shim-unscopables@1.0.2: dependencies: hasown: 2.0.2 - es-to-primitive@1.2.1: - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 @@ -20559,14 +20451,14 @@ snapshots: esbuild-register@3.6.0(esbuild@0.19.12): dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.19.12 transitivePeerDependencies: - supports-color esbuild-register@3.6.0(esbuild@0.24.0): dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.24.0 transitivePeerDependencies: - supports-color @@ -20621,32 +20513,6 @@ snapshots: '@esbuild/win32-ia32': 0.18.20 '@esbuild/win32-x64': 0.18.20 - esbuild@0.19.11: - optionalDependencies: - '@esbuild/aix-ppc64': 0.19.11 - '@esbuild/android-arm': 0.19.11 - '@esbuild/android-arm64': 0.19.11 - '@esbuild/android-x64': 0.19.11 - '@esbuild/darwin-arm64': 0.19.11 - '@esbuild/darwin-x64': 0.19.11 - '@esbuild/freebsd-arm64': 0.19.11 - '@esbuild/freebsd-x64': 0.19.11 - '@esbuild/linux-arm': 0.19.11 - '@esbuild/linux-arm64': 0.19.11 - '@esbuild/linux-ia32': 0.19.11 - '@esbuild/linux-loong64': 0.19.11 - '@esbuild/linux-mips64el': 0.19.11 - '@esbuild/linux-ppc64': 0.19.11 - '@esbuild/linux-riscv64': 0.19.11 - '@esbuild/linux-s390x': 0.19.11 - '@esbuild/linux-x64': 0.19.11 - '@esbuild/netbsd-x64': 0.19.11 - '@esbuild/openbsd-x64': 0.19.11 - '@esbuild/sunos-x64': 0.19.11 - '@esbuild/win32-arm64': 0.19.11 - '@esbuild/win32-ia32': 0.19.11 - '@esbuild/win32-x64': 0.19.11 - esbuild@0.19.12: optionalDependencies: '@esbuild/aix-ppc64': 0.19.12 @@ -20673,32 +20539,6 @@ snapshots: '@esbuild/win32-ia32': 0.19.12 '@esbuild/win32-x64': 0.19.12 - esbuild@0.20.2: - optionalDependencies: - '@esbuild/aix-ppc64': 0.20.2 - '@esbuild/android-arm': 0.20.2 - '@esbuild/android-arm64': 0.20.2 - '@esbuild/android-x64': 0.20.2 - '@esbuild/darwin-arm64': 0.20.2 - '@esbuild/darwin-x64': 0.20.2 - '@esbuild/freebsd-arm64': 0.20.2 - '@esbuild/freebsd-x64': 0.20.2 - '@esbuild/linux-arm': 0.20.2 - '@esbuild/linux-arm64': 0.20.2 - '@esbuild/linux-ia32': 0.20.2 - '@esbuild/linux-loong64': 0.20.2 - '@esbuild/linux-mips64el': 0.20.2 - '@esbuild/linux-ppc64': 0.20.2 - '@esbuild/linux-riscv64': 0.20.2 - '@esbuild/linux-s390x': 0.20.2 - '@esbuild/linux-x64': 0.20.2 - '@esbuild/netbsd-x64': 0.20.2 - '@esbuild/openbsd-x64': 0.20.2 - '@esbuild/sunos-x64': 0.20.2 - '@esbuild/win32-arm64': 0.20.2 - '@esbuild/win32-ia32': 0.20.2 - '@esbuild/win32-x64': 0.20.2 - esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -20725,6 +20565,33 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.23.1: + optionalDependencies: + '@esbuild/aix-ppc64': 0.23.1 + '@esbuild/android-arm': 0.23.1 + '@esbuild/android-arm64': 0.23.1 + '@esbuild/android-x64': 0.23.1 + '@esbuild/darwin-arm64': 0.23.1 + '@esbuild/darwin-x64': 0.23.1 + '@esbuild/freebsd-arm64': 0.23.1 + '@esbuild/freebsd-x64': 0.23.1 + '@esbuild/linux-arm': 0.23.1 + '@esbuild/linux-arm64': 0.23.1 + '@esbuild/linux-ia32': 0.23.1 + '@esbuild/linux-loong64': 0.23.1 + '@esbuild/linux-mips64el': 0.23.1 + '@esbuild/linux-ppc64': 0.23.1 + '@esbuild/linux-riscv64': 0.23.1 + '@esbuild/linux-s390x': 0.23.1 + '@esbuild/linux-x64': 0.23.1 + '@esbuild/netbsd-x64': 0.23.1 + '@esbuild/openbsd-arm64': 0.23.1 + '@esbuild/openbsd-x64': 0.23.1 + '@esbuild/sunos-x64': 0.23.1 + '@esbuild/win32-arm64': 0.23.1 + '@esbuild/win32-ia32': 0.23.1 + '@esbuild/win32-x64': 0.23.1 + esbuild@0.24.0: optionalDependencies: '@esbuild/aix-ppc64': 0.24.0 @@ -20752,8 +20619,6 @@ snapshots: '@esbuild/win32-ia32': 0.24.0 '@esbuild/win32-x64': 0.24.0 - escalade@3.1.1: {} - escalade@3.2.0: {} escape-html@1.0.3: @@ -20765,21 +20630,21 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-next@14.2.20(eslint@8.57.0)(typescript@5.4.3): + eslint-config-next@14.2.20(eslint@8.57.1)(typescript@5.7.2): dependencies: '@next/eslint-plugin-next': 14.2.20 '@rushstack/eslint-patch': 1.10.4 - '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint@8.57.0)(typescript@5.4.3) - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.3) - eslint: 8.57.0 + '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint@8.57.1)(typescript@5.7.2) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.7.2) + eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.0) - eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.0) - eslint-plugin-react: 7.37.2(eslint@8.57.0) - eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1) + eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.1) + eslint-plugin-react: 7.37.2(eslint@8.57.1) + eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.1) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - eslint-import-resolver-webpack - eslint-plugin-import-x @@ -20793,34 +20658,34 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.0): + eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1): dependencies: '@nolyfill/is-core-module': 1.0.39 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) enhanced-resolve: 5.17.1 - eslint: 8.57.0 + eslint: 8.57.1 fast-glob: 3.3.2 get-tsconfig: 4.8.1 is-bun-module: 1.3.0 is-glob: 4.0.3 stable-hash: 0.0.4 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.3) - eslint: 8.57.0 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.7.2) + eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.0) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.1): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -20829,9 +20694,9 @@ snapshots: array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.57.0 + eslint: 8.57.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@8.57.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0)(eslint@8.57.1))(eslint@8.57.1) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -20843,13 +20708,13 @@ snapshots: string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.7.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.0): + eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.1): dependencies: aria-query: 5.3.2 array-includes: 3.1.8 @@ -20859,7 +20724,7 @@ snapshots: axobject-query: 4.1.0 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 - eslint: 8.57.0 + eslint: 8.57.1 hasown: 2.0.2 jsx-ast-utils: 3.3.5 language-tags: 1.0.9 @@ -20868,11 +20733,11 @@ snapshots: safe-regex-test: 1.0.3 string.prototype.includes: 2.0.1 - eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0): + eslint-plugin-react-hooks@5.0.0-canary-7118f5dd7-20230705(eslint@8.57.1): dependencies: - eslint: 8.57.0 + eslint: 8.57.1 - eslint-plugin-react@7.37.2(eslint@8.57.0): + eslint-plugin-react@7.37.2(eslint@8.57.1): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -20880,7 +20745,7 @@ snapshots: array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.0 - eslint: 8.57.0 + eslint: 8.57.1 estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -20901,34 +20766,34 @@ snapshots: eslint-visitor-keys@3.4.3: {} - eslint@8.57.0: + eslint@8.57.1: dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.8.0 + '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1) + '@eslint-community/regexpp': 4.12.1 '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 + '@eslint/js': 8.57.1 + '@humanwhocodes/config-array': 0.13.0 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 + '@ungap/structured-clone': 1.2.1 ajv: 6.12.6 chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 + cross-spawn: 7.0.6 + debug: 4.4.0(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 - esquery: 1.5.0 + esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.21.0 + globals: 13.24.0 graphemer: 1.4.0 - ignore: 5.3.0 + ignore: 5.3.2 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -20938,7 +20803,7 @@ snapshots: lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 - optionator: 0.9.3 + optionator: 0.9.4 strip-ansi: 6.0.1 text-table: 0.2.0 transitivePeerDependencies: @@ -20959,7 +20824,7 @@ snapshots: esprima@4.0.1: {} - esquery@1.5.0: + esquery@1.6.0: dependencies: estraverse: 5.3.0 @@ -21011,6 +20876,31 @@ snapshots: dependencies: fast-safe-stringify: 2.1.1 + ethereum-cryptography@0.1.3: + dependencies: + '@types/pbkdf2': 3.1.2 + '@types/secp256k1': 4.0.6 + blakejs: 1.2.1 + browserify-aes: 1.2.0 + bs58check: 2.1.2 + create-hash: 1.2.0 + create-hmac: 1.1.7 + hash.js: 1.1.7 + keccak: 3.0.4 + pbkdf2: 3.1.2 + randombytes: 2.1.0 + safe-buffer: 5.2.1 + scrypt-js: 3.0.1 + secp256k1: 4.0.4 + setimmediate: 1.0.5 + + ethereum-cryptography@1.2.0: + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/bip32': 1.1.5 + '@scure/bip39': 1.1.1 + ethereum-cryptography@2.2.1: dependencies: '@noble/curves': 1.4.2 @@ -21018,6 +20908,21 @@ snapshots: '@scure/bip32': 1.4.0 '@scure/bip39': 1.3.0 + ethereumjs-abi@0.6.8: + dependencies: + bn.js: 4.12.1 + ethereumjs-util: 6.2.1 + + ethereumjs-util@6.2.1: + dependencies: + '@types/bn.js': 4.11.6 + bn.js: 4.12.1 + create-hash: 1.2.0 + elliptic: 6.6.1 + ethereum-cryptography: 0.1.3 + ethjs-util: 0.1.6 + rlp: 2.2.7 + ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.3): dependencies: '@ethersproject/abi': 5.7.0 @@ -21054,6 +20959,11 @@ snapshots: - bufferutil - utf-8-validate + ethjs-util@0.1.6: + dependencies: + is-hex-prefixed: 1.0.0 + strip-hex-prefix: 1.0.0 + event-emitter@0.3.5: dependencies: d: 1.0.2 @@ -21079,6 +20989,11 @@ snapshots: eventsource@2.0.2: {} + evp_bytestokey@1.0.3: + dependencies: + md5.js: 1.3.5 + safe-buffer: 5.2.1 + execa@5.1.1: dependencies: cross-spawn: 7.0.6 @@ -21214,10 +21129,6 @@ snapshots: strip-outer: 1.0.1 trim-repeated: 1.0.0 - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -21265,11 +21176,6 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 - find-yarn-workspace-root2@1.2.16: - dependencies: - micromatch: 4.0.5 - pkg-dir: 4.2.0 - find-yarn-workspace-root@2.0.0: dependencies: micromatch: 4.0.8 @@ -21280,6 +21186,8 @@ snapshots: keyv: 4.5.4 rimraf: 3.0.2 + flat@5.0.2: {} + flatted@3.3.2: {} flow-enums-runtime@0.0.6: @@ -21288,17 +21196,14 @@ snapshots: flow-parser@0.256.0: optional: true - follow-redirects@1.15.9: {} + follow-redirects@1.15.9(debug@4.4.0): + optionalDependencies: + debug: 4.4.0(supports-color@8.1.1) for-each@0.3.3: dependencies: is-callable: 1.2.7 - foreground-child@3.1.1: - dependencies: - cross-spawn: 7.0.3 - signal-exit: 4.1.0 - foreground-child@3.3.0: dependencies: cross-spawn: 7.0.6 @@ -21325,6 +21230,8 @@ snapshots: dependencies: fetch-blob: 3.2.0 + fp-ts@1.19.3: {} + fraction.js@4.3.7: {} fresh@0.5.2: {} @@ -21333,7 +21240,7 @@ snapshots: fs-extra@11.1.1: dependencies: - graceful-fs: 4.2.11 + graceful-fs: 4.2.10 jsonfile: 6.1.0 universalify: 2.0.1 @@ -21370,8 +21277,6 @@ snapshots: fsevents@2.3.3: optional: true - function-bind@1.1.1: {} - function-bind@1.1.2: {} function.prototype.name@1.1.6: @@ -21393,13 +21298,6 @@ snapshots: get-func-name@2.0.2: {} - get-intrinsic@1.2.1: - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-proto: 1.0.1 - has-symbols: 1.0.3 - get-intrinsic@1.2.5: dependencies: call-bind-apply-helpers: 1.0.1 @@ -21427,34 +21325,25 @@ snapshots: get-stream@8.0.1: {} - get-symbol-description@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - get-symbol-description@1.0.2: dependencies: call-bind: 1.0.8 es-errors: 1.3.0 get-intrinsic: 1.2.5 - get-tsconfig@4.7.2: - dependencies: - resolve-pkg-maps: 1.0.0 - get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 - gh-pages@6.1.1: + gh-pages@6.2.0: dependencies: - async: 3.2.5 + async: 3.2.6 commander: 11.1.0 email-addresses: 5.0.0 filenamify: 4.3.0 find-cache-dir: 3.3.2 fs-extra: 11.2.0 - globby: 6.1.0 + globby: 11.1.0 git-raw-commits@2.0.11: dependencies: @@ -21482,14 +21371,6 @@ snapshots: minipass: 7.1.2 path-scurry: 1.11.1 - glob@10.3.7: - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.0 - minimatch: 9.0.3 - minipass: 7.0.3 - path-scurry: 1.10.1 - glob@10.4.5: dependencies: foreground-child: 3.3.0 @@ -21522,18 +21403,10 @@ snapshots: globals@11.12.0: {} - globals@13.21.0: - dependencies: - type-fest: 0.20.2 - globals@13.24.0: dependencies: type-fest: 0.20.2 - globalthis@1.0.3: - dependencies: - define-properties: 1.2.0 - globalthis@1.0.4: dependencies: define-properties: 1.2.1 @@ -21556,22 +21429,10 @@ snapshots: merge2: 1.4.1 slash: 4.0.0 - globby@6.1.0: - dependencies: - array-union: 1.0.2 - glob: 7.2.3 - object-assign: 4.1.1 - pify: 2.3.0 - pinkie-promise: 2.0.1 - goober@2.1.16(csstype@3.1.3): dependencies: csstype: 3.1.3 - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.1 - gopd@1.2.0: {} got@12.6.1: @@ -21588,13 +21449,13 @@ snapshots: p-cancelable: 3.0.0 responselike: 3.0.0 - gql.tada@1.8.10(graphql@16.10.0)(typescript@5.4.3): + gql.tada@1.8.9(graphql@16.9.0)(typescript@5.7.2): dependencies: - '@0no-co/graphql.web': 1.0.13(graphql@16.10.0) - '@0no-co/graphqlsp': 1.12.16(graphql@16.10.0)(typescript@5.4.3) - '@gql.tada/cli-utils': 1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.10.0)(typescript@5.4.3))(graphql@16.10.0)(typescript@5.4.3) - '@gql.tada/internal': 1.0.8(graphql@16.10.0)(typescript@5.4.3) - typescript: 5.4.3 + '@0no-co/graphql.web': 1.0.8(graphql@16.9.0) + '@0no-co/graphqlsp': 1.12.15(graphql@16.9.0)(typescript@5.7.2) + '@gql.tada/cli-utils': 1.6.2(@0no-co/graphqlsp@1.12.15(graphql@16.9.0)(typescript@5.7.2))(graphql@16.9.0)(typescript@5.7.2) + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.2) + typescript: 5.7.2 transitivePeerDependencies: - '@gql.tada/svelte-support' - '@gql.tada/vue-support' @@ -21604,11 +21465,9 @@ snapshots: graceful-fs@4.2.11: {} - grapheme-splitter@1.0.4: {} - graphemer@1.4.0: {} - graphql@16.10.0: {} + graphql@16.9.0: {} gzip-size@6.0.0: dependencies: @@ -21640,41 +21499,86 @@ snapshots: hard-rejection@2.1.0: {} + hardhat@2.22.17(bufferutil@4.0.8)(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2))(typescript@5.7.2)(utf-8-validate@6.0.3): + dependencies: + '@ethersproject/abi': 5.7.0 + '@metamask/eth-sig-util': 4.0.1 + '@nomicfoundation/edr': 0.6.5 + '@nomicfoundation/ethereumjs-common': 4.0.4 + '@nomicfoundation/ethereumjs-tx': 5.0.4 + '@nomicfoundation/ethereumjs-util': 9.0.4 + '@nomicfoundation/solidity-analyzer': 0.1.2 + '@sentry/node': 5.30.0 + '@types/bn.js': 5.1.6 + '@types/lru-cache': 5.1.1 + adm-zip: 0.4.16 + aggregate-error: 3.1.0 + ansi-escapes: 4.3.2 + boxen: 5.1.2 + chokidar: 4.0.1 + ci-info: 2.0.0 + debug: 4.4.0(supports-color@8.1.1) + enquirer: 2.4.1 + env-paths: 2.2.1 + ethereum-cryptography: 1.2.0 + ethereumjs-abi: 0.6.8 + find-up: 5.0.0 + fp-ts: 1.19.3 + fs-extra: 7.0.1 + immutable: 4.3.7 + io-ts: 1.10.4 + json-stream-stringify: 3.1.6 + keccak: 3.0.4 + lodash: 4.17.21 + mnemonist: 0.38.5 + mocha: 10.8.2 + p-map: 4.0.0 + picocolors: 1.1.1 + raw-body: 2.5.2 + resolve: 1.17.0 + semver: 6.3.1 + solc: 0.8.26(debug@4.4.0) + source-map-support: 0.5.21 + stacktrace-parser: 0.1.10 + tinyglobby: 0.2.10 + tsort: 0.0.1 + undici: 7.1.0 + uuid: 8.3.2 + ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.3) + optionalDependencies: + ts-node: 10.9.2(@types/node@20.17.10)(typescript@5.7.2) + typescript: 5.7.2 + transitivePeerDependencies: + - bufferutil + - c-kzg + - supports-color + - utf-8-validate + has-bigints@1.0.2: {} has-flag@3.0.0: {} has-flag@4.0.0: {} - has-property-descriptors@1.0.0: - dependencies: - get-intrinsic: 1.2.1 - has-property-descriptors@1.0.2: dependencies: es-define-property: 1.0.1 - has-proto@1.0.1: {} - has-proto@1.2.0: dependencies: dunder-proto: 1.0.0 - has-symbols@1.0.3: {} - has-symbols@1.1.0: {} - has-tostringtag@1.0.0: - dependencies: - has-symbols: 1.0.3 - has-tostringtag@1.0.2: dependencies: has-symbols: 1.1.0 - has@1.0.3: + hash-base@3.1.0: dependencies: - function-bind: 1.1.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + safe-buffer: 5.2.1 hash.js@1.1.7: dependencies: @@ -21719,6 +21623,8 @@ snapshots: property-information: 5.6.0 space-separated-tokens: 1.1.5 + he@1.2.0: {} + heap@0.2.7: {} hermes-estree@0.23.1: @@ -21793,7 +21699,7 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -21817,10 +21723,6 @@ snapshots: ieee754@1.2.1: {} - ignore@5.3.0: {} - - ignore@5.3.1: {} - ignore@5.3.2: {} image-size@1.1.1: @@ -21834,6 +21736,8 @@ snapshots: immutable@3.8.2: {} + immutable@4.3.7: {} + import-fresh@2.0.0: dependencies: caller-path: 2.0.0 @@ -21864,12 +21768,6 @@ snapshots: inline-style-parser@0.2.4: {} - internal-slot@1.0.5: - dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 - side-channel: 1.0.4 - internal-slot@1.0.7: dependencies: es-errors: 1.3.0 @@ -21880,6 +21778,10 @@ snapshots: dependencies: loose-envify: 1.4.0 + io-ts@1.10.4: + dependencies: + fp-ts: 1.19.3 + iron-webcrypto@1.2.1: {} is-alphabetical@1.0.4: {} @@ -21901,12 +21803,6 @@ snapshots: call-bind: 1.0.8 has-tostringtag: 1.0.2 - is-array-buffer@3.0.2: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - is-array-buffer@3.0.4: dependencies: call-bind: 1.0.8 @@ -21982,6 +21878,8 @@ snapshots: dependencies: is-extglob: 2.1.1 + is-hex-prefixed@1.0.0: {} + is-hexadecimal@1.0.4: {} is-hexadecimal@2.0.1: {} @@ -21992,8 +21890,6 @@ snapshots: is-map@2.0.3: {} - is-negative-zero@2.0.2: {} - is-negative-zero@2.0.3: {} is-number-object@1.1.0: @@ -22009,8 +21905,7 @@ snapshots: is-plain-obj@1.1.0: {} - is-plain-obj@2.1.0: - optional: true + is-plain-obj@2.1.0: {} is-plain-obj@4.1.0: {} @@ -22026,11 +21921,6 @@ snapshots: dependencies: '@types/estree': 1.0.6 - is-regex@1.1.4: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - is-regex@1.2.0: dependencies: call-bind: 1.0.8 @@ -22042,10 +21932,6 @@ snapshots: is-set@2.0.3: {} - is-shared-array-buffer@1.0.2: - dependencies: - call-bind: 1.0.2 - is-shared-array-buffer@1.0.3: dependencies: call-bind: 1.0.8 @@ -22054,10 +21940,6 @@ snapshots: is-stream@3.0.0: {} - is-string@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - is-string@1.1.0: dependencies: call-bind: 1.0.8 @@ -22067,10 +21949,6 @@ snapshots: dependencies: better-path-resolve: 1.0.0 - is-symbol@1.0.4: - dependencies: - has-symbols: 1.0.3 - is-symbol@1.1.0: dependencies: call-bind: 1.0.8 @@ -22081,14 +21959,12 @@ snapshots: dependencies: text-extensions: 1.9.0 - is-typed-array@1.1.12: - dependencies: - which-typed-array: 1.1.11 - is-typed-array@1.1.13: dependencies: which-typed-array: 1.1.16 + is-unicode-supported@0.1.0: {} + is-weakmap@2.0.2: {} is-weakref@1.0.2: @@ -22144,10 +22020,6 @@ snapshots: dependencies: ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.3) - isows@1.0.4(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3)): - dependencies: - ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3) - isows@1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)): dependencies: ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -22178,7 +22050,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -22200,12 +22072,6 @@ snapshots: itty-time@1.0.6: {} - jackspeak@2.3.0: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - jackspeak@2.3.6: dependencies: '@isaacs/cliui': 8.0.2 @@ -22326,8 +22192,6 @@ snapshots: js-tokens@4.0.0: {} - js-tokens@8.0.3: {} - js-tokens@9.0.1: {} js-yaml@3.14.1: @@ -22373,8 +22237,6 @@ snapshots: jsdoc-type-pratt-parser@4.1.0: {} - jsesc@2.5.2: {} - jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -22410,14 +22272,14 @@ snapshots: jsonify: 0.0.1 object-keys: 1.1.1 + json-stream-stringify@3.1.6: {} + json5@1.0.2: dependencies: minimist: 1.2.8 json5@2.2.3: {} - jsonc-parser@3.2.0: {} - jsonc-parser@3.3.1: {} jsonfile@4.0.0: @@ -22461,8 +22323,6 @@ snapshots: dependencies: graceful-fs: 4.2.10 - kleur@4.1.5: {} - language-subtag-registry@0.3.23: {} language-tags@1.0.9: @@ -22495,24 +22355,22 @@ snapshots: - supports-color optional: true - lilconfig@3.0.0: {} - lilconfig@3.1.3: {} lines-and-columns@1.2.4: {} - lint-staged@15.2.2: + lint-staged@15.2.11: dependencies: chalk: 5.3.0 - commander: 11.1.0 - debug: 4.3.4 + commander: 12.1.0 + debug: 4.4.0(supports-color@8.1.1) execa: 8.0.1 - lilconfig: 3.0.0 - listr2: 8.0.1 - micromatch: 4.0.5 + lilconfig: 3.1.3 + listr2: 8.2.5 + micromatch: 4.0.8 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.3.4 + yaml: 2.6.1 transitivePeerDependencies: - supports-color @@ -22537,13 +22395,13 @@ snapshots: untun: 0.1.3 uqr: 0.1.2 - listr2@8.0.1: + listr2@8.2.5: dependencies: cli-truncate: 4.0.0 colorette: 2.0.20 eventemitter3: 5.0.1 - log-update: 6.0.0 - rfdc: 1.3.0 + log-update: 6.1.0 + rfdc: 1.4.1 wrap-ansi: 9.0.0 lit-element@3.3.3: @@ -22580,18 +22438,6 @@ snapshots: load-tsconfig@0.2.5: {} - load-yaml-file@0.2.0: - dependencies: - graceful-fs: 4.2.11 - js-yaml: 3.14.1 - pify: 4.0.1 - strip-bom: 3.0.0 - - local-pkg@0.5.0: - dependencies: - mlly: 1.6.1 - pkg-types: 1.0.3 - local-pkg@0.5.1: dependencies: mlly: 1.7.3 @@ -22649,10 +22495,15 @@ snapshots: lodash@4.17.21: {} - log-update@6.0.0: + log-symbols@4.1.0: dependencies: - ansi-escapes: 6.2.0 - cli-cursor: 4.0.0 + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + log-update@6.1.0: + dependencies: + ansi-escapes: 7.0.0 + cli-cursor: 5.0.0 slice-ansi: 7.1.0 strip-ansi: 7.1.0 wrap-ansi: 9.0.0 @@ -22680,15 +22531,8 @@ snapshots: fault: 1.0.4 highlight.js: 10.7.3 - lru-cache@10.0.1: {} - lru-cache@10.4.3: {} - lru-cache@4.1.5: - dependencies: - pseudomap: 1.0.2 - yallist: 2.1.2 - lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -22701,6 +22545,8 @@ snapshots: dependencies: es5-ext: 0.10.64 + lru_map@0.3.3: {} + lucide-react@0.265.0(react@18.3.1): dependencies: react: 18.3.1 @@ -22725,14 +22571,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - magic-string@0.30.8: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - magicast@0.3.5: dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 source-map-js: 1.2.1 make-dir@2.1.0: @@ -22769,6 +22611,12 @@ snapshots: marky@1.2.5: optional: true + md5.js@1.3.5: + dependencies: + hash-base: 3.1.0 + inherits: 2.0.4 + safe-buffer: 5.2.1 + mdast-util-from-markdown@2.0.2: dependencies: '@types/mdast': 4.0.4 @@ -22862,6 +22710,10 @@ snapshots: mdn-data@2.0.30: {} + media-query-parser@2.0.2: + dependencies: + '@babel/runtime': 7.26.0 + media-typer@0.3.0: {} memoize-one@5.2.1: @@ -22882,19 +22734,7 @@ snapshots: dependencies: map-or-similar: 1.5.0 - meow@6.1.1: - dependencies: - '@types/minimist': 1.2.2 - camelcase-keys: 6.2.2 - decamelize-keys: 1.1.1 - hard-rejection: 2.1.0 - minimist-options: 4.1.0 - normalize-package-data: 2.5.0 - read-pkg-up: 7.0.1 - redent: 3.0.0 - trim-newlines: 3.0.1 - type-fest: 0.13.1 - yargs-parser: 18.1.3 + memorystream@0.3.1: {} meow@8.1.2: dependencies: @@ -23234,7 +23074,7 @@ snapshots: micromark@4.0.1: dependencies: '@types/debug': 4.1.12 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.2 @@ -23253,11 +23093,6 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -23277,6 +23112,8 @@ snapshots: mimic-fn@4.0.0: {} + mimic-function@5.0.1: {} + mimic-response@3.1.0: {} mimic-response@4.0.0: {} @@ -23338,15 +23175,13 @@ snapshots: minimist@1.2.8: {} - minipass@7.0.3: {} - minipass@7.1.2: {} - mipd@0.0.7(typescript@5.4.3): + mipd@0.0.7(typescript@5.7.2): optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 - mixme@0.5.9: {} + mitt@3.0.1: {} mkdirp@0.5.6: dependencies: @@ -23355,26 +23190,41 @@ snapshots: mkdirp@1.0.4: optional: true - mlly@1.4.1: + mlly@1.7.3: dependencies: - acorn: 8.11.3 + acorn: 8.14.0 pathe: 1.1.2 - pkg-types: 1.0.3 + pkg-types: 1.2.1 ufo: 1.5.4 - mlly@1.6.1: + mnemonist@0.38.5: dependencies: - acorn: 8.11.3 - pathe: 1.1.2 - pkg-types: 1.0.3 - ufo: 1.5.3 + obliterator: 2.0.4 - mlly@1.7.3: + mocha@10.8.2: dependencies: - acorn: 8.14.0 - pathe: 1.1.2 - pkg-types: 1.2.1 - ufo: 1.5.4 + ansi-colors: 4.1.3 + browser-stdout: 1.3.1 + chokidar: 3.6.0 + debug: 4.4.0(supports-color@8.1.1) + diff: 5.2.0 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 8.1.0 + he: 1.2.0 + js-yaml: 4.1.0 + log-symbols: 4.1.0 + minimatch: 5.1.6 + ms: 2.1.3 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.5.1 + yargs: 16.2.0 + yargs-parser: 20.2.9 + yargs-unparser: 2.0.0 + + modern-ahocorasick@1.0.1: {} motion@10.16.2: dependencies: @@ -23392,8 +23242,6 @@ snapshots: ms@2.0.0: optional: true - ms@2.1.2: {} - ms@2.1.3: {} multiformats@9.9.0: {} @@ -23408,14 +23256,14 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} - nanoid@3.3.8: {} nanospinner@1.2.2: dependencies: picocolors: 1.1.1 + nanostores@0.10.3: {} + natural-compare@1.4.0: {} negotiator@0.6.3: {} @@ -23476,6 +23324,8 @@ snapshots: node-addon-api@2.0.2: {} + node-addon-api@5.1.0: {} + node-addon-api@7.1.1: {} node-addon-api@8.3.0: @@ -23518,7 +23368,7 @@ snapshots: node-int64@0.4.0: optional: true - node-mocks-http@1.16.2(@types/express@4.17.21)(@types/node@20.11.30): + node-mocks-http@1.16.2(@types/express@4.17.21)(@types/node@20.17.10): dependencies: accepts: 1.3.8 content-disposition: 0.5.4 @@ -23532,9 +23382,7 @@ snapshots: type-is: 1.6.18 optionalDependencies: '@types/express': 4.17.21 - '@types/node': 20.11.30 - - node-releases@2.0.14: {} + '@types/node': 20.17.10 node-releases@2.0.19: {} @@ -23594,8 +23442,6 @@ snapshots: object-hash@3.0.0: {} - object-inspect@1.12.3: {} - object-inspect@1.13.3: {} object-is@1.1.6: @@ -23605,13 +23451,6 @@ snapshots: object-keys@1.1.1: {} - object.assign@4.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - has-symbols: 1.0.3 - object-keys: 1.1.1 - object.assign@4.1.5: dependencies: call-bind: 1.0.8 @@ -23644,6 +23483,8 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.0.0 + obliterator@2.0.4: {} + ofetch@1.4.1: dependencies: destr: 2.0.3 @@ -23678,6 +23519,10 @@ snapshots: dependencies: mimic-fn: 4.0.0 + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + open@7.4.2: dependencies: is-docker: 2.2.1 @@ -23689,7 +23534,7 @@ snapshots: is-docker: 2.2.1 is-wsl: 2.2.0 - openai@4.76.1(zod@3.22.4): + openai@4.76.1(zod@3.24.1): dependencies: '@types/node': 18.19.68 '@types/node-fetch': 2.6.12 @@ -23699,7 +23544,7 @@ snapshots: formdata-node: 4.4.1 node-fetch: 2.7.0 optionalDependencies: - zod: 3.22.4 + zod: 3.24.1 transitivePeerDependencies: - encoding @@ -23726,44 +23571,30 @@ snapshots: object-hash: 2.2.0 oidc-token-hash: 5.0.3 - optionator@0.9.3: + optionator@0.9.4: dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 + word-wrap: 1.2.5 os-tmpdir@1.0.2: {} outdent@0.5.0: {} - ox@0.1.2(typescript@5.4.3)(zod@3.22.4): - dependencies: - '@adraffy/ens-normalize': 1.11.0 - '@noble/curves': 1.7.0 - '@noble/hashes': 1.6.1 - '@scure/bip32': 1.6.0 - '@scure/bip39': 1.5.0 - abitype: 1.0.7(typescript@5.4.3)(zod@3.22.4) - eventemitter3: 5.0.1 - optionalDependencies: - typescript: 5.4.3 - transitivePeerDependencies: - - zod - - ox@0.1.2(typescript@5.4.3)(zod@3.24.1): + ox@0.1.2(typescript@5.7.2)(zod@3.24.1): dependencies: '@adraffy/ens-normalize': 1.11.0 '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 '@scure/bip32': 1.6.0 '@scure/bip39': 1.5.0 - abitype: 1.0.7(typescript@5.4.3)(zod@3.24.1) + abitype: 1.0.7(typescript@5.7.2)(zod@3.24.1) eventemitter3: 5.0.1 optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - zod @@ -23800,6 +23631,10 @@ snapshots: p-map@2.1.0: {} + p-map@4.0.0: + dependencies: + aggregate-error: 3.1.0 + p-try@2.2.0: {} package-json-from-dist@1.0.1: {} @@ -23811,6 +23646,10 @@ snapshots: registry-url: 6.0.1 semver: 7.6.3 + package-manager-detector@0.2.7: {} + + pako@2.1.0: {} + parent-module@1.0.1: dependencies: callsites: 3.1.0 @@ -23881,11 +23720,6 @@ snapshots: path-parse@1.0.7: {} - path-scurry@1.10.1: - dependencies: - lru-cache: 10.0.1 - minipass: 7.0.3 - path-scurry@1.11.1: dependencies: lru-cache: 10.4.3 @@ -23905,6 +23739,14 @@ snapshots: dependencies: through: 2.3.8 + pbkdf2@3.1.2: + dependencies: + create-hash: 1.2.0 + create-hmac: 1.1.7 + ripemd160: 2.0.2 + safe-buffer: 5.2.1 + sha.js: 2.4.11 + pg-cloudflare@1.1.1: optional: true @@ -23940,8 +23782,6 @@ snapshots: dependencies: split2: 4.2.0 - picocolors@1.0.0: {} - picocolors@1.1.1: {} picomatch@2.3.1: {} @@ -23960,12 +23800,6 @@ snapshots: pify@5.0.0: {} - pinkie-promise@2.0.1: - dependencies: - pinkie: 2.0.4 - - pinkie@2.0.4: {} - pino-abstract-transport@0.5.0: dependencies: duplexify: 4.1.3 @@ -23998,12 +23832,6 @@ snapshots: dependencies: find-up: 4.1.0 - pkg-types@1.0.3: - dependencies: - jsonc-parser: 3.2.0 - mlly: 1.4.1 - pathe: 1.1.2 - pkg-types@1.2.1: dependencies: confbox: 0.1.8 @@ -24037,31 +23865,26 @@ snapshots: read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.38): - dependencies: - camelcase-css: 2.0.1 - postcss: 8.4.38 - postcss-js@4.0.1(postcss@8.4.49): dependencies: camelcase-css: 2.0.1 postcss: 8.4.49 - postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)): + postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)): dependencies: lilconfig: 3.1.3 yaml: 2.6.1 optionalDependencies: postcss: 8.4.49 - ts-node: 10.9.2(@types/node@20.11.30)(typescript@5.4.3) + ts-node: 10.9.2(@types/node@20.17.10)(typescript@5.7.2) - postcss-load-config@6.0.1(jiti@2.4.1)(postcss@8.4.38)(tsx@4.7.1)(yaml@2.6.1): + postcss-load-config@6.0.1(jiti@2.4.1)(postcss@8.4.49)(tsx@4.19.2)(yaml@2.6.1): dependencies: lilconfig: 3.1.3 optionalDependencies: jiti: 2.4.1 - postcss: 8.4.38 - tsx: 4.7.1 + postcss: 8.4.49 + tsx: 4.19.2 yaml: 2.6.1 postcss-nested@6.2.0(postcss@8.4.49): @@ -24087,12 +23910,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - postcss@8.4.38: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.2.0 - postcss@8.4.49: dependencies: nanoid: 3.3.8 @@ -24116,31 +23933,16 @@ snapshots: preact@10.25.1: {} - preferred-pm@3.0.3: - dependencies: - find-up: 5.0.0 - find-yarn-workspace-root2: 1.2.16 - path-exists: 4.0.0 - which-pm: 2.0.0 - prelude-ls@1.2.1: {} - prettier-plugin-tailwindcss@0.5.14(@ianvs/prettier-plugin-sort-imports@4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5))(prettier@3.2.5): - dependencies: - prettier: 3.2.5 - optionalDependencies: - '@ianvs/prettier-plugin-sort-imports': 4.2.1(@vue/compiler-sfc@3.4.21)(prettier@3.2.5) - - prettier-plugin-tailwindcss@0.5.14(@ianvs/prettier-plugin-sort-imports@4.4.0(@vue/compiler-sfc@3.4.21)(prettier@3.2.5))(prettier@3.2.5): + prettier-plugin-tailwindcss@0.5.14(@ianvs/prettier-plugin-sort-imports@4.4.0(prettier@3.4.2))(prettier@3.4.2): dependencies: - prettier: 3.2.5 + prettier: 3.4.2 optionalDependencies: - '@ianvs/prettier-plugin-sort-imports': 4.4.0(@vue/compiler-sfc@3.4.21)(prettier@3.2.5) + '@ianvs/prettier-plugin-sort-imports': 4.4.0(prettier@3.4.2) prettier@2.8.8: {} - prettier@3.2.5: {} - prettier@3.4.2: {} pretty-format@27.5.1: @@ -24157,16 +23959,16 @@ snapshots: pretty-format@3.8.0: {} - pretty-quick@4.0.0(prettier@3.2.5): + pretty-quick@4.0.0(prettier@3.4.2): dependencies: execa: 5.1.1 find-up: 5.0.0 - ignore: 5.3.1 + ignore: 5.3.2 mri: 1.2.0 - picocolors: 1.0.0 + picocolors: 1.1.1 picomatch: 3.0.1 - prettier: 3.2.5 - tslib: 2.6.2 + prettier: 3.4.2 + tslib: 2.8.1 printable-characters@1.0.42: {} @@ -24240,8 +24042,6 @@ snapshots: dependencies: event-stream: 3.3.4 - pseudomap@1.0.2: {} - pump@3.0.2: dependencies: end-of-stream: 1.4.4 @@ -24344,15 +24144,15 @@ snapshots: - utf-8-validate optional: true - react-docgen-typescript@2.2.2(typescript@5.4.3): + react-docgen-typescript@2.2.2(typescript@5.7.2): dependencies: - typescript: 5.4.3 + typescript: 5.7.2 react-docgen@7.1.0: dependencies: '@babel/core': 7.26.0 - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 '@types/doctrine': 0.0.9 @@ -24644,8 +24444,6 @@ snapshots: regenerator-runtime@0.13.11: optional: true - regenerator-runtime@0.14.0: {} - regenerator-runtime@0.14.1: {} regenerator-transform@0.15.2: @@ -24653,12 +24451,6 @@ snapshots: '@babel/runtime': 7.26.0 optional: true - regexp.prototype.flags@1.5.0: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 - regexp.prototype.flags@1.5.3: dependencies: call-bind: 1.0.8 @@ -24741,6 +24533,10 @@ snapshots: resolve-pkg-maps@1.0.0: {} + resolve@1.17.0: + dependencies: + path-parse: 1.0.7 + resolve@1.22.8: dependencies: is-core-module: 2.15.1 @@ -24757,16 +24553,16 @@ snapshots: dependencies: lowercase-keys: 3.0.0 - restore-cursor@4.0.0: + restore-cursor@5.1.0: dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 + onetime: 7.0.0 + signal-exit: 4.1.0 ret@0.2.2: {} reusify@1.0.4: {} - rfdc@1.3.0: {} + rfdc@1.4.1: {} rimraf@2.6.3: dependencies: @@ -24781,9 +24577,18 @@ snapshots: dependencies: glob: 7.2.3 - rimraf@5.0.5: + rimraf@5.0.10: + dependencies: + glob: 10.4.5 + + ripemd160@2.0.2: + dependencies: + hash-base: 3.1.0 + inherits: 2.0.4 + + rlp@2.2.7: dependencies: - glob: 10.3.7 + bn.js: 5.2.1 rollup-plugin-inject@3.0.2: dependencies: @@ -24803,25 +24608,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - rollup@4.13.0: - dependencies: - '@types/estree': 1.0.5 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.13.0 - '@rollup/rollup-android-arm64': 4.13.0 - '@rollup/rollup-darwin-arm64': 4.13.0 - '@rollup/rollup-darwin-x64': 4.13.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.13.0 - '@rollup/rollup-linux-arm64-gnu': 4.13.0 - '@rollup/rollup-linux-arm64-musl': 4.13.0 - '@rollup/rollup-linux-riscv64-gnu': 4.13.0 - '@rollup/rollup-linux-x64-gnu': 4.13.0 - '@rollup/rollup-linux-x64-musl': 4.13.0 - '@rollup/rollup-win32-arm64-msvc': 4.13.0 - '@rollup/rollup-win32-ia32-msvc': 4.13.0 - '@rollup/rollup-win32-x64-msvc': 4.13.0 - fsevents: 2.3.3 - rollup@4.28.1: dependencies: '@types/estree': 1.0.6 @@ -24857,13 +24643,6 @@ snapshots: dependencies: tslib: 2.8.1 - safe-array-concat@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - has-symbols: 1.0.3 - isarray: 2.0.5 - safe-array-concat@1.1.2: dependencies: call-bind: 1.0.8 @@ -24875,12 +24654,6 @@ snapshots: safe-buffer@5.2.1: {} - safe-regex-test@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-regex: 1.1.4 - safe-regex-test@1.0.3: dependencies: call-bind: 1.0.8 @@ -24902,6 +24675,18 @@ snapshots: scrypt-js@3.0.1: {} + secp256k1@4.0.4: + dependencies: + elliptic: 6.6.1 + node-addon-api: 5.1.0 + node-gyp-build: 4.8.4 + + secp256k1@5.0.1: + dependencies: + elliptic: 6.6.1 + node-addon-api: 5.1.0 + node-gyp-build: 4.8.4 + selfsigned@2.4.1: dependencies: '@types/node-forge': 1.3.11 @@ -24915,10 +24700,6 @@ snapshots: dependencies: lru-cache: 6.0.0 - semver@7.6.0: - dependencies: - lru-cache: 6.0.0 - semver@7.6.3: {} send@0.19.0: @@ -24947,6 +24728,10 @@ snapshots: dependencies: type-fest: 0.20.2 + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + serve-static@1.16.2: dependencies: encodeurl: 2.0.0 @@ -24975,6 +24760,8 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + setimmediate@1.0.5: {} + setprototypeof@1.2.0: {} sha.js@2.4.11: @@ -24986,16 +24773,10 @@ snapshots: dependencies: kind-of: 6.0.3 - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 - shebang-regex@1.0.0: {} - shebang-regex@3.0.0: {} shell-quote@1.8.2: {} @@ -25009,12 +24790,6 @@ snapshots: short-unique-id@5.2.0: {} - side-channel@1.0.4: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - object-inspect: 1.12.3 - side-channel@1.0.6: dependencies: call-bind: 1.0.8 @@ -25052,14 +24827,7 @@ snapshots: ansi-styles: 6.2.1 is-fullwidth-code-point: 5.0.0 - smartwrap@2.0.2: - dependencies: - array.prototype.flat: 1.3.1 - breakword: 1.0.6 - grapheme-splitter: 1.0.4 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - yargs: 15.4.1 + smol-toml@1.3.1: {} socket.io-client@4.8.1(bufferutil@4.0.8)(utf-8-validate@6.0.3): dependencies: @@ -25084,12 +24852,22 @@ snapshots: node-gyp-build: 4.8.4 optional: true + solc@0.8.26(debug@4.4.0): + dependencies: + command-exists: 1.2.9 + commander: 8.3.0 + follow-redirects: 1.15.9(debug@4.4.0) + js-sha3: 0.8.0 + memorystream: 0.3.1 + semver: 5.7.2 + tmp: 0.0.33 + transitivePeerDependencies: + - debug + sonic-boom@2.8.0: dependencies: atomic-sleep: 1.0.0 - source-map-js@1.2.0: {} - source-map-js@1.2.1: {} source-map-support@0.5.21: @@ -25114,10 +24892,10 @@ snapshots: spawn-command@0.0.2: {} - spawndamnit@2.0.0: + spawndamnit@3.0.1: dependencies: - cross-spawn: 5.1.0 - signal-exit: 3.0.7 + cross-spawn: 7.0.6 + signal-exit: 4.1.0 spdx-correct@3.2.0: dependencies: @@ -25178,8 +24956,6 @@ snapshots: statuses@2.0.1: {} - std-env@3.7.0: {} - std-env@3.8.0: {} stop-iteration-iterator@1.0.0: @@ -25190,11 +24966,11 @@ snapshots: store2@2.14.3: {} - storybook@8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3): + storybook@8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3): dependencies: - '@storybook/core': 8.4.7(bufferutil@4.0.8)(prettier@3.2.5)(utf-8-validate@6.0.3) + '@storybook/core': 8.4.7(bufferutil@4.0.8)(prettier@3.4.2)(utf-8-validate@6.0.3) optionalDependencies: - prettier: 3.2.5 + prettier: 3.4.2 transitivePeerDependencies: - bufferutil - supports-color @@ -25206,10 +24982,6 @@ snapshots: stream-shift@1.0.3: {} - stream-transform@2.1.3: - dependencies: - mixme: 0.5.9 - streamsearch@1.1.0: {} strict-uri-encode@2.0.0: {} @@ -25262,12 +25034,6 @@ snapshots: define-properties: 1.2.1 es-abstract: 1.23.5 - string.prototype.trim@1.2.7: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.8 @@ -25275,24 +25041,12 @@ snapshots: es-abstract: 1.23.5 es-object-atoms: 1.0.0 - string.prototype.trimend@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - string.prototype.trimend@1.0.8: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 - string.prototype.trimstart@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - string.prototype.trimstart@1.0.8: dependencies: call-bind: 1.0.8 @@ -25326,6 +25080,10 @@ snapshots: strip-final-newline@3.0.0: {} + strip-hex-prefix@1.0.0: + dependencies: + is-hex-prefixed: 1.0.0 + strip-indent@3.0.0: dependencies: min-indent: 1.0.1 @@ -25342,10 +25100,6 @@ snapshots: dependencies: acorn: 8.14.0 - strip-literal@2.0.0: - dependencies: - js-tokens: 8.0.3 - strip-literal@2.1.1: dependencies: js-tokens: 9.0.1 @@ -25358,10 +25112,10 @@ snapshots: dependencies: inline-style-parser: 0.2.4 - styled-cva@0.2.4(typescript@5.4.3): + styled-cva@0.2.4(typescript@5.7.2): dependencies: clsx: 2.1.1 - typescript: 5.4.3 + typescript: 5.7.2 styled-jsx@5.1.1(@babel/core@7.26.0)(react@18.3.1): dependencies: @@ -25487,13 +25241,13 @@ snapshots: tailwind-merge@1.14.0: {} - tailwindcss-animate@1.0.7(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3))): + tailwindcss-animate@1.0.7(tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2))): dependencies: - tailwindcss: 3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + tailwindcss: 3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) tailwindcss-radix@2.9.0: {} - tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)): + tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -25512,7 +25266,7 @@ snapshots: postcss: 8.4.49 postcss-import: 15.1.0(postcss@8.4.49) postcss-js: 4.0.1(postcss@8.4.49) - postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3)) + postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2)) postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -25585,8 +25339,6 @@ snapshots: tiny-invariant@1.3.3: {} - tinybench@2.6.0: {} - tinybench@2.9.0: {} tinyexec@0.3.1: {} @@ -25596,8 +25348,6 @@ snapshots: fdir: 6.4.2(picomatch@4.0.2) picomatch: 4.0.2 - tinypool@0.8.2: {} - tinypool@0.8.4: {} tinyrainbow@1.2.0: {} @@ -25659,23 +25409,23 @@ snapshots: trough@2.2.0: {} - trpc-openapi@1.2.0(@trpc/server@11.0.0-next.320)(@types/express@4.17.21)(@types/node@20.11.30)(zod@3.22.4): + trpc-openapi@1.2.0(@trpc/server@11.0.0-next.320)(@types/express@4.17.21)(@types/node@20.17.10)(zod@3.24.1): dependencies: '@trpc/server': 11.0.0-next.320 co-body: 6.2.0 h3: 1.13.0 lodash.clonedeep: 4.5.0 - node-mocks-http: 1.16.2(@types/express@4.17.21)(@types/node@20.11.30) + node-mocks-http: 1.16.2(@types/express@4.17.21)(@types/node@20.17.10) openapi-types: 12.1.3 - zod: 3.22.4 - zod-to-json-schema: 3.23.5(zod@3.22.4) + zod: 3.24.1 + zod-to-json-schema: 3.23.5(zod@3.24.1) transitivePeerDependencies: - '@types/express' - '@types/node' - ts-api-utils@1.0.3(typescript@5.4.3): + ts-api-utils@1.4.3(typescript@5.7.2): dependencies: - typescript: 5.4.3 + typescript: 5.7.2 ts-dedent@2.2.0: {} @@ -25683,21 +25433,21 @@ snapshots: ts-mixer@6.0.4: {} - ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3): + ts-node@10.9.2(@types/node@20.17.10)(typescript@5.7.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.11.30 + '@types/node': 20.17.10 acorn: 8.14.0 acorn-walk: 8.3.4 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.4.3 + typescript: 5.7.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optional: true @@ -25753,21 +25503,21 @@ snapshots: tslib@1.14.1: {} - tslib@2.6.2: {} - tslib@2.8.1: {} - tsup@8.3.5(jiti@2.4.1)(postcss@8.4.38)(tsx@4.7.1)(typescript@5.4.3)(yaml@2.6.1): + tsort@0.0.1: {} + + tsup@8.3.5(jiti@2.4.1)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.7.2)(yaml@2.6.1): dependencies: bundle-require: 5.0.0(esbuild@0.24.0) cac: 6.7.14 chokidar: 4.0.1 consola: 3.2.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) esbuild: 0.24.0 joycon: 3.1.1 picocolors: 1.1.1 - postcss-load-config: 6.0.1(jiti@2.4.1)(postcss@8.4.38)(tsx@4.7.1)(yaml@2.6.1) + postcss-load-config: 6.0.1(jiti@2.4.1)(postcss@8.4.49)(tsx@4.19.2)(yaml@2.6.1) resolve-from: 5.0.0 rollup: 4.28.1 source-map: 0.8.0-beta.0 @@ -25776,57 +25526,49 @@ snapshots: tinyglobby: 0.2.10 tree-kill: 1.2.2 optionalDependencies: - postcss: 8.4.38 - typescript: 5.4.3 + postcss: 8.4.49 + typescript: 5.7.2 transitivePeerDependencies: - jiti - supports-color - tsx - yaml - tsx@4.7.1: + tsx@4.19.2: dependencies: - esbuild: 0.19.11 - get-tsconfig: 4.7.2 + esbuild: 0.23.1 + get-tsconfig: 4.8.1 optionalDependencies: fsevents: 2.3.3 - tty-table@4.2.1: - dependencies: - chalk: 4.1.2 - csv: 5.5.3 - kleur: 4.1.5 - smartwrap: 2.0.2 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - yargs: 17.7.2 - - turbo-darwin-64@1.13.0: + turbo-darwin-64@1.13.4: optional: true - turbo-darwin-arm64@1.13.0: + turbo-darwin-arm64@1.13.4: optional: true - turbo-linux-64@1.13.0: + turbo-linux-64@1.13.4: optional: true - turbo-linux-arm64@1.13.0: + turbo-linux-arm64@1.13.4: optional: true - turbo-windows-64@1.13.0: + turbo-windows-64@1.13.4: optional: true - turbo-windows-arm64@1.13.0: + turbo-windows-arm64@1.13.4: optional: true - turbo@1.13.0: + turbo@1.13.4: optionalDependencies: - turbo-darwin-64: 1.13.0 - turbo-darwin-arm64: 1.13.0 - turbo-linux-64: 1.13.0 - turbo-linux-arm64: 1.13.0 - turbo-windows-64: 1.13.0 - turbo-windows-arm64: 1.13.0 + turbo-darwin-64: 1.13.4 + turbo-darwin-arm64: 1.13.4 + turbo-linux-64: 1.13.4 + turbo-linux-arm64: 1.13.4 + turbo-windows-64: 1.13.4 + turbo-windows-arm64: 1.13.4 + + tweetnacl-util@0.15.1: {} tweetnacl@1.0.3: {} @@ -25834,12 +25576,11 @@ snapshots: dependencies: prelude-ls: 1.2.1 - type-detect@4.0.8: {} + type-detect@4.0.8: + optional: true type-detect@4.1.0: {} - type-fest@0.13.1: {} - type-fest@0.18.1: {} type-fest@0.20.2: {} @@ -25854,8 +25595,6 @@ snapshots: type-fest@2.19.0: {} - type-fest@3.13.1: {} - type-is@1.6.18: dependencies: media-typer: 0.3.0 @@ -25863,25 +25602,12 @@ snapshots: type@2.7.3: {} - typed-array-buffer@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.12 - typed-array-buffer@1.0.2: dependencies: call-bind: 1.0.8 es-errors: 1.3.0 is-typed-array: 1.1.13 - typed-array-byte-length@1.0.0: - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - typed-array-byte-length@1.0.1: dependencies: call-bind: 1.0.8 @@ -25890,14 +25616,6 @@ snapshots: has-proto: 1.2.0 is-typed-array: 1.1.13 - typed-array-byte-offset@1.0.0: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 @@ -25908,12 +25626,6 @@ snapshots: is-typed-array: 1.1.13 reflect.getprototypeof: 1.0.8 - typed-array-length@1.0.4: - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - is-typed-array: 1.1.12 - typed-array-length@1.0.7: dependencies: call-bind: 1.0.8 @@ -25923,13 +25635,13 @@ snapshots: possible-typed-array-names: 1.0.0 reflect.getprototypeof: 1.0.8 - typedoc@0.25.12(typescript@5.4.3): + typedoc@0.25.13(typescript@5.7.2): dependencies: lunr: 2.3.9 marked: 4.3.0 - minimatch: 9.0.3 + minimatch: 9.0.5 shiki: 0.14.7 - typescript: 5.4.3 + typescript: 5.7.2 types-ramda@0.29.10: dependencies: @@ -25939,12 +25651,8 @@ snapshots: dependencies: ts-toolbelt: 9.6.0 - typescript@5.4.3: {} - typescript@5.7.2: {} - ufo@1.5.3: {} - ufo@1.5.4: {} uint8arrays@3.1.0: @@ -25972,6 +25680,8 @@ snapshots: dependencies: '@fastify/busboy': 2.1.1 + undici@7.1.0: {} + unenv-nightly@2.0.0-20241204-140205-a5d5190: dependencies: defu: 6.1.4 @@ -26074,12 +25784,6 @@ snapshots: consola: 3.2.3 pathe: 1.1.2 - update-browserslist-db@1.0.13(browserslist@4.23.0): - dependencies: - browserslist: 4.23.0 - escalade: 3.1.1 - picocolors: 1.0.0 - update-browserslist-db@1.1.1(browserslist@4.24.2): dependencies: browserslist: 4.24.2 @@ -26118,6 +25822,10 @@ snapshots: dependencies: react: 18.3.1 + use-sync-external-store@1.2.2(react@18.3.1): + dependencies: + react: 18.3.1 + use-sync-external-store@1.4.0(react@18.3.1): dependencies: react: 18.3.1 @@ -26176,91 +25884,37 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4): - dependencies: - '@adraffy/ens-normalize': 1.10.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(typescript@5.4.3)(zod@3.22.4) - isows: 1.0.4(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3)) - webauthn-p256: 0.0.5 - ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3) - optionalDependencies: - typescript: 5.4.3 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - - viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1): - dependencies: - '@adraffy/ens-normalize': 1.10.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(typescript@5.4.3)(zod@3.24.1) - isows: 1.0.4(ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3)) - webauthn-p256: 0.0.5 - ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.3) - optionalDependencies: - typescript: 5.4.3 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - - viem@2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@5.0.10)(zod@3.24.1): + viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@5.0.10)(zod@3.24.1): dependencies: '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 '@scure/bip32': 1.6.0 '@scure/bip39': 1.5.0 - abitype: 1.0.7(typescript@5.4.3)(zod@3.24.1) + abitype: 1.0.7(typescript@5.7.2)(zod@3.24.1) isows: 1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)) - ox: 0.1.2(typescript@5.4.3)(zod@3.24.1) + ox: 0.1.2(typescript@5.7.2)(zod@3.24.1) webauthn-p256: 0.0.10 ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) optionalDependencies: - typescript: 5.4.3 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - - viem@2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4): - dependencies: - '@noble/curves': 1.7.0 - '@noble/hashes': 1.6.1 - '@scure/bip32': 1.6.0 - '@scure/bip39': 1.5.0 - abitype: 1.0.7(typescript@5.4.3)(zod@3.22.4) - isows: 1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.3)) - ox: 0.1.2(typescript@5.4.3)(zod@3.22.4) - webauthn-p256: 0.0.10 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) - optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - bufferutil - utf-8-validate - zod - viem@2.21.54(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.24.1): + viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1): dependencies: '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 '@scure/bip32': 1.6.0 '@scure/bip39': 1.5.0 - abitype: 1.0.7(typescript@5.4.3)(zod@3.24.1) + abitype: 1.0.7(typescript@5.7.2)(zod@3.24.1) isows: 1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.3)) - ox: 0.1.2(typescript@5.4.3)(zod@3.24.1) + ox: 0.1.2(typescript@5.7.2)(zod@3.24.1) webauthn-p256: 0.0.10 ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.3) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -26269,7 +25923,7 @@ snapshots: vite-node@1.2.1(@types/node@20.17.10)(terser@5.37.0): dependencies: cac: 6.7.14 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.1.1 vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) @@ -26284,60 +25938,24 @@ snapshots: - supports-color - terser - vite-node@1.4.0(@types/node@20.11.30)(terser@5.37.0): - dependencies: - cac: 6.7.14 - debug: 4.3.4 - pathe: 1.1.2 - picocolors: 1.0.0 - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - - vite-node@1.4.0(@types/node@20.17.10)(terser@5.37.0): + vite-node@1.6.0(@types/node@20.17.10)(terser@5.37.0): dependencies: cac: 6.7.14 - debug: 4.3.4 + debug: 4.4.0(supports-color@8.1.1) pathe: 1.1.2 - picocolors: 1.0.0 - vite: 5.2.6(@types/node@20.17.10)(terser@5.37.0) + picocolors: 1.1.1 + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - '@types/node' - less - lightningcss - sass + - sass-embedded - stylus - sugarss - supports-color - terser - vite@5.2.6(@types/node@20.11.30)(terser@5.37.0): - dependencies: - esbuild: 0.20.2 - postcss: 8.4.38 - rollup: 4.13.0 - optionalDependencies: - '@types/node': 20.11.30 - fsevents: 2.3.3 - terser: 5.37.0 - - vite@5.2.6(@types/node@20.17.10)(terser@5.37.0): - dependencies: - esbuild: 0.20.2 - postcss: 8.4.38 - rollup: 4.13.0 - optionalDependencies: - '@types/node': 20.17.10 - fsevents: 2.3.3 - terser: 5.37.0 - vite@5.4.11(@types/node@20.17.10)(terser@5.37.0): dependencies: esbuild: 0.21.5 @@ -26358,7 +25976,7 @@ snapshots: acorn-walk: 8.3.4 cac: 6.7.14 chai: 4.5.0 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) execa: 8.0.1 local-pkg: 0.5.1 magic-string: 0.30.15 @@ -26384,62 +26002,28 @@ snapshots: - supports-color - terser - vitest@1.4.0(@types/node@20.11.30)(happy-dom@13.10.1)(terser@5.37.0): - dependencies: - '@vitest/expect': 1.4.0 - '@vitest/runner': 1.4.0 - '@vitest/snapshot': 1.4.0 - '@vitest/spy': 1.4.0 - '@vitest/utils': 1.4.0 - acorn-walk: 8.3.2 - chai: 4.4.1 - debug: 4.3.4 - execa: 8.0.1 - local-pkg: 0.5.0 - magic-string: 0.30.8 - pathe: 1.1.2 - picocolors: 1.0.0 - std-env: 3.7.0 - strip-literal: 2.0.0 - tinybench: 2.6.0 - tinypool: 0.8.2 - vite: 5.2.6(@types/node@20.11.30)(terser@5.37.0) - vite-node: 1.4.0(@types/node@20.11.30)(terser@5.37.0) - why-is-node-running: 2.2.2 - optionalDependencies: - '@types/node': 20.11.30 - happy-dom: 13.10.1 - transitivePeerDependencies: - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - - vitest@1.4.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0): + vitest@1.6.0(@types/node@20.17.10)(happy-dom@13.10.1)(terser@5.37.0): dependencies: - '@vitest/expect': 1.4.0 - '@vitest/runner': 1.4.0 - '@vitest/snapshot': 1.4.0 - '@vitest/spy': 1.4.0 - '@vitest/utils': 1.4.0 - acorn-walk: 8.3.2 - chai: 4.4.1 - debug: 4.3.4 + '@vitest/expect': 1.6.0 + '@vitest/runner': 1.6.0 + '@vitest/snapshot': 1.6.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + acorn-walk: 8.3.4 + chai: 4.5.0 + debug: 4.4.0(supports-color@8.1.1) execa: 8.0.1 - local-pkg: 0.5.0 - magic-string: 0.30.8 + local-pkg: 0.5.1 + magic-string: 0.30.15 pathe: 1.1.2 - picocolors: 1.0.0 - std-env: 3.7.0 - strip-literal: 2.0.0 - tinybench: 2.6.0 - tinypool: 0.8.2 - vite: 5.2.6(@types/node@20.17.10)(terser@5.37.0) - vite-node: 1.4.0(@types/node@20.17.10)(terser@5.37.0) - why-is-node-running: 2.2.2 + picocolors: 1.1.1 + std-env: 3.8.0 + strip-literal: 2.1.1 + tinybench: 2.9.0 + tinypool: 0.8.4 + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) + vite-node: 1.6.0(@types/node@20.17.10)(terser@5.37.0) + why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.17.10 happy-dom: 13.10.1 @@ -26447,6 +26031,7 @@ snapshots: - less - lightningcss - sass + - sass-embedded - stylus - sugarss - supports-color @@ -26459,16 +26044,16 @@ snapshots: vscode-textmate@8.0.0: {} - wagmi@2.13.5(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@tanstack/query-core@5.62.7)(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(utf-8-validate@6.0.3)(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))(zod@3.22.4): + wagmi@2.13.5(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@tanstack/query-core@5.62.7)(@tanstack/react-query@5.62.7(react@18.3.1))(@types/react@18.2.21)(@vercel/kv@1.0.1)(bufferutil@4.0.8)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(utf-8-validate@6.0.3)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))(zod@3.24.1): dependencies: '@tanstack/react-query': 5.62.7(react@18.3.1) - '@wagmi/connectors': 5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.4.3)(utf-8-validate@6.0.3)(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4))(zod@3.22.4) - '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.4.3)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4)) + '@wagmi/connectors': 5.5.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.76.5(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(@types/react@18.2.21)(bufferutil@4.0.8)(react@18.3.1)(utf-8-validate@6.0.3)))(@types/react@18.2.21)(@vercel/kv@1.0.1)(@wagmi/core@2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)))(bufferutil@4.0.8)(react@18.3.1)(typescript@5.7.2)(utf-8-validate@6.0.3)(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1))(zod@3.24.1) + '@wagmi/core': 2.15.2(@tanstack/query-core@5.62.7)(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(typescript@5.7.2)(use-sync-external-store@1.2.0(react@18.3.1))(viem@2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1)) react: 18.3.1 use-sync-external-store: 1.2.0(react@18.3.1) - viem: 2.21.1(bufferutil@4.0.8)(typescript@5.4.3)(utf-8-validate@6.0.3)(zod@3.22.4) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.7.2)(utf-8-validate@6.0.3)(zod@3.24.1) optionalDependencies: - typescript: 5.4.3 + typescript: 5.7.2 transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -26497,10 +26082,6 @@ snapshots: makeerror: 1.0.12 optional: true - wcwidth@1.0.1: - dependencies: - defaults: 1.0.4 - web-streams-polyfill@3.3.3: {} web-streams-polyfill@4.0.0-beta.3: {} @@ -26513,11 +26094,6 @@ snapshots: '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 - webauthn-p256@0.0.5: - dependencies: - '@noble/curves': 1.4.0 - '@noble/hashes': 1.4.0 - webextension-polyfill@0.10.0: {} webidl-conversions@3.0.1: {} @@ -26600,19 +26176,6 @@ snapshots: which-module@2.0.1: {} - which-pm@2.0.0: - dependencies: - load-yaml-file: 0.2.0 - path-exists: 4.0.0 - - which-typed-array@1.1.11: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - which-typed-array@1.1.16: dependencies: available-typed-arrays: 1.0.7 @@ -26621,10 +26184,6 @@ snapshots: gopd: 1.2.0 has-tostringtag: 1.0.2 - which@1.3.1: - dependencies: - isexe: 2.0.0 - which@2.0.2: dependencies: isexe: 2.0.0 @@ -26633,15 +26192,16 @@ snapshots: dependencies: isexe: 2.0.0 - why-is-node-running@2.2.2: + why-is-node-running@2.3.0: dependencies: siginfo: 2.0.0 stackback: 0.0.2 - why-is-node-running@2.3.0: + widest-line@3.1.0: dependencies: - siginfo: 2.0.0 - stackback: 0.0.2 + string-width: 4.2.3 + + word-wrap@1.2.5: {} wordwrap@1.0.0: {} @@ -26653,6 +26213,8 @@ snapshots: '@cloudflare/workerd-linux-arm64': 1.20241205.0 '@cloudflare/workerd-windows-64': 1.20241205.0 + workerpool@6.5.1: {} + wrangler@3.95.0(@cloudflare/workers-types@4.20241205.0)(bufferutil@4.0.8)(utf-8-validate@6.0.3): dependencies: '@cloudflare/kv-asset-handler': 0.3.4 @@ -26784,14 +26346,10 @@ snapshots: y18n@5.0.8: {} - yallist@2.1.2: {} - yallist@3.1.1: {} yallist@4.0.0: {} - yaml@2.3.4: {} - yaml@2.6.1: {} yargs-parser@18.1.3: @@ -26803,6 +26361,13 @@ snapshots: yargs-parser@21.1.1: {} + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + yargs@15.4.1: dependencies: cliui: 6.0.0 @@ -26817,6 +26382,16 @@ snapshots: y18n: 4.0.3 yargs-parser: 18.1.3 + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + yargs@17.7.2: dependencies: cliui: 8.0.1 @@ -26841,14 +26416,22 @@ snapshots: zenscroll@4.0.2: {} - zod-to-json-schema@3.23.5(zod@3.22.4): + zod-to-json-schema@3.23.5(zod@3.24.1): dependencies: - zod: 3.22.4 + zod: 3.24.1 zod@3.22.4: {} zod@3.24.1: {} + zustand@4.5.5(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1): + dependencies: + use-sync-external-store: 1.2.2(react@18.3.1) + optionalDependencies: + '@types/react': 18.2.21 + immer: 10.1.1 + react: 18.3.1 + zustand@5.0.0(@types/react@18.2.21)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.2.0(react@18.3.1)): optionalDependencies: '@types/react': 18.2.21