From 483de079266f70f8d62209cbcff957c35c053b2d Mon Sep 17 00:00:00 2001 From: r0wdy1 <103738251+r0wdy1@users.noreply.github.com> Date: Tue, 22 Oct 2024 16:33:14 +0300 Subject: [PATCH] Feature/dec sequencer (#261) (#269) * Feature/dec sequencer (#261) * support for new Fee model * bump library version (#268) --------- Co-authored-by: Max Alekseenko --- .gitignore | 2 +- package.json | 2 +- src/config/index.js | 130 +++++++++++++++++-------- src/contexts/ZkAccountContext/index.js | 12 +-- src/contexts/ZkAccountContext/zp.js | 1 + src/providers/Web3Provider.js | 60 +++++++----- yarn.lock | 96 +++++++++--------- 7 files changed, 179 insertions(+), 124 deletions(-) diff --git a/.gitignore b/.gitignore index 4d29575d..de3d0171 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,7 @@ # production /build - +.vscode # misc .DS_Store .env.local diff --git a/package.json b/package.json index 20cd0f70..61730faa 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "wagmi": "^0.12.1", "web-vitals": "^1.0.1", "webpack": "^5.70.0", - "zkbob-client-js": "5.5.0" + "zkbob-client-js": "6.0.0" }, "scripts": { "start": "react-app-rewired start", diff --git a/src/config/index.js b/src/config/index.js index 1d3c3b54..fa685750 100644 --- a/src/config/index.js +++ b/src/config/index.js @@ -28,13 +28,15 @@ const config = { }], addressPrefix: 'zkbob_polygon', paymentContractAddress: '0x76a911E76fC78F39e73cE0c532F8866ac28Dfe43', + parameters:'prod', closingDate: '2025-02-01T00:00:00Z', }, 'BOB2USDC-optimism': { chainId: 10, poolAddress: '0x1CA8C2B9B20E18e86d5b9a72370fC6c91814c97C', tokenAddress: '0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85', - relayerUrls: ['https://relayer-optimism.zkbob.com/'], + // relayerUrls: ['https://relayer-optimism.zkbob.com/'], + proxyUrls: ["https://proxy1.zkbob.com", "https://proxy2.zkbob.com"], delegatedProverUrls: [], coldStorageConfigPath: '', tokenSymbol: 'USDC', @@ -49,6 +51,7 @@ const config = { }], addressPrefix: 'zkbob_optimism', paymentContractAddress: '0x860513FbdC4B6B2B210e1D393BE244F1d0b1Babd', + parameters:'prod' }, 'WETH-optimism': { chainId: 10, @@ -69,6 +72,7 @@ const config = { ddSubgraph: 'zkbob-eth-optimism', addressPrefix: 'zkbob_optimism_eth', paymentContractAddress: '0x7a8006Ea0Dda93C56E60187Bd55109AbfF486c6F', + parameters:'prod' }, 'USDT-tron': { chainId: 728126428, @@ -84,6 +88,7 @@ const config = { minTxAmount: 50000n, // 0.05 USDT addressPrefix: 'zkbob_tron', isTron: true, + parameters:'prod' }, }, chains: { @@ -91,7 +96,7 @@ const config = { rpcUrls: ['https://rpc.ankr.com/polygon', 'https://polygon-rpc.com', 'https://polygon-mainnet.g.alchemy.com/v2/fnUqqB1tThPuSpM33VFm26wqXISKPS2n'], }, '10': { - rpcUrls: ['https://rpc.ankr.com/optimism', 'https://opt-mainnet.g.alchemy.com/v2/fnUqqB1tThPuSpM33VFm26wqXISKPS2n','https://optimism-mainnet.infura.io/v3/9a94d181b23846209f01161dcd0f9ad6'], + rpcUrls: ['https://mainnet.optimism.io','https://optimism.llamarpc.com','https://optimism.gateway.tenderly.co'], }, '728126428': { @@ -99,34 +104,49 @@ const config = { external: "https://tron.zkbob.com/" }, }, - snarkParams: process.env.REACT_APP_HOSTING === 'netlify' ? { - transferParamsUrl: 'https://r2.zkbob.com/transfer_params_22022023.bin', - transferVkUrl: 'https://r2.zkbob.com/transfer_verification_key_22022023.json', - } : { - transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', - transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', - }, + "snarkParamsSet": { + "prod": process.env.REACT_APP_HOSTING === 'netlify' ? { + transferParamsUrl: 'https://r2.zkbob.com/transfer_params_22022023.bin', + transferVkUrl: 'https://r2.zkbob.com/transfer_verification_key_22022023.json', + } : { + transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', + transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', + }, + "prod-arweave": { + transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', + transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', + } + } }, + // snarkParams: process.env.REACT_APP_HOSTING === 'netlify' ? { + // transferParamsUrl: 'https://r2.zkbob.com/transfer_params_22022023.bin', + // transferVkUrl: 'https://r2.zkbob.com/transfer_verification_key_22022023.json', + // } : { + // transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', + // transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', + // }, + // }, dev: { - defaultPool: 'USDC-goerli', + defaultPool: 'zkbob_sepolia', pools: { - // 'BOB-sepolia': { - // chainId: 11155111, - // poolAddress: '0x3bd088C19960A8B5d72E4e01847791BD0DD1C9E6', - // tokenAddress: '0x2C74B18e2f84B78ac67428d0c7a9898515f0c46f', - // relayerUrls: ['https://relayer.thgkjlr.website/'], - // delegatedProverUrls: ['https://prover-staging.thgkjlr.website/'], - // coldStorageConfigPath: 'https://r2-staging.zkbob.com/coldstorage/coldstorage.cfg', - // kycUrls: { - // status: 'https://api-stage.knowyourcat.id/v1/%s/categories?category=BABTokenBOB', - // homepage: 'https://stage.knowyourcat.id/address/%s/BABTokenBOB', - // }, - // tokenSymbol: 'BOB', - // tokenDecimals: 18, - // feeDecimals: 2, - // depositScheme: 'permit', - // addressPrefix: 'zkbob_sepolia', - // }, + 'zkbob_sepolia': { + chainId: 11155111, + poolAddress: '0x77f3D9Fb578a0F2B300347fb3Cd302dFd7eedf93', + tokenAddress: '0x2C74B18e2f84B78ac67428d0c7a9898515f0c46f', + proxyUrls: ['https://sepolia-decentralized-relayer.thgkjlr.website'], + delegatedProverUrls: ['https://prover-staging.thgkjlr.website/'], + coldStorageConfigPath: 'https://r2-staging.zkbob.com/coldstorage/coldstorage.cfg', + kycUrls: { + status: 'https://api-stage.knowyourcat.id/v1/%s/categories?category=BABTokenBOB', + homepage: 'https://stage.knowyourcat.id/address/%s/BABTokenBOB', + }, + tokenSymbol: 'BOB', + tokenDecimals: 18, + feeDecimals: 2, + depositScheme: 'permit', + addressPrefix: 'zkbob_sepolia', + parameters:'staging' + }, 'BOB2USDC-goerli': { chainId: 5, poolAddress: '0x49661694a71B3Dab9F25E86D5df2809B170c56E6', @@ -144,20 +164,23 @@ const config = { prevTokenSymbol: 'BOB', }], addressPrefix: 'zkbob_goerli', + parameters:'staging' }, - 'USDC-goerli': { - chainId: 5, - poolAddress: '0xCF6446Deb67b2b56604657C67DAF54f884412531', - tokenAddress: '0x28B531401Ee3f17521B3772c13EAF3f86C2Fe780', - relayerUrls: ['https://goerli-usdc-relayer.thgkjlr.website'], + 'USDC-OP-tenderly': { + chainId: 10, + parameters: "prod", + poolAddress: "0x1CA8C2B9B20E18e86d5b9a72370fC6c91814c97C", + tokenAddress: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85", delegatedProverUrls: [], + proxyUrls: ["https://sepolia-proxy.zkbob.evgen.space", "https://sepolia-decentralized-relayer.thgkjlr.website"], coldStorageConfigPath: '', tokenSymbol: 'USDC', tokenDecimals: 6, feeDecimals: 2, - depositScheme: 'usdc-polygon', + depositScheme: 'usdc', + parameters: 'prod-arweave', minTxAmount: 50000n, // 0.05 USDC - addressPrefix: 'zkbob_goerli_usdc', + addressPrefix: 'zkbob_optimism', }, // 'BOB-op-goerli': { // chainId: 420, @@ -186,6 +209,7 @@ const config = { minTxAmount: 1000000n, // 0.001 ETH ddSubgraph: 'zkbob-eth-goerli', addressPrefix: 'zkbob_goerli_eth', + parameters:'staging' }, 'USDT-nile': { chainId: 3448148188, @@ -201,6 +225,7 @@ const config = { minTxAmount: 50000n, // 0.05 USDT addressPrefix: 'zkbob_nile', isTron: true, + parameters:'staging' }, 'USDT-nile-guard': { chainId: 3448148188, @@ -216,11 +241,29 @@ const config = { minTxAmount: 50000n, // 0.05 USDT addressPrefix: 'zkbob_nile_g', isTron: true, + parameters:'staging' }, }, + "snarkParamsSet": { + "prod": process.env.REACT_APP_HOSTING === 'netlify' ? { + transferParamsUrl: 'https://r2.zkbob.com/transfer_params_22022023.bin', + transferVkUrl: 'https://r2.zkbob.com/transfer_verification_key_22022023.json', + } : { + transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', + transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', + }, + "staging": { + transferParamsUrl: 'https://r2-staging.zkbob.com/transfer_params_20022023.bin', + transferVkUrl: 'https://r2-staging.zkbob.com/transfer_verification_key_20022023.json' + }, + "prod-arweave": { + transferParamsUrl: 'https://5tqpkqtbrkd5ookgni4yydvxgsnaazxl53pdgymjgkiaqwb56lzq.arweave.net/7OD1QmGKh9c5Rmo5jA63NJoAZuvu3jNhiTKQCFg98vM', + transferVkUrl: 'https://rhm3gvehfvhrnll2cuuem2s77hruahjgifqctaw7ld2z37ehpcta.arweave.net/idmzVIctTxatehUoRmpf-eNAHSZBYCmC31j1nfyHeKY', + } + }, chains: { '11155111': { - rpcUrls: ['https://sepolia.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161'], + rpcUrls: ['https://sepolia.infura.io/v3/9a94d181b23846209f01161dcd0f9ad6'], }, '5': { rpcUrls: ['https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161'] @@ -232,19 +275,28 @@ const config = { rpcUrls: ['https://nile.trongrid.io'], external: "https://deploy-preview-250--shimmering-douhua-023cc6.netlify.app" }, + '10': { + rpcUrls:["https://virtual.optimism.rpc.tenderly.co/fb1a77c3-e7f5-4622-aee5-85025a99a658"] + }, }, - snarkParams: { - transferParamsUrl: 'https://r2-staging.zkbob.com/transfer_params_20022023.bin', - transferVkUrl: 'https://r2-staging.zkbob.com/transfer_verification_key_20022023.json' - }, + // snarkParams: { + // transferParamsUrl: 'https://r2-staging.zkbob.com/transfer_params_20022023.bin', + // transferVkUrl: 'https://r2-staging.zkbob.com/transfer_verification_key_20022023.json' + // }, extraPrefixes: [ { poolId: 16776968, prefix: 'zkbob_nile_g', name: 'USDT on Nile testnet (MPC guard contracts)', }, + { + poolId: 16776969, + prefix: 'zkbob_sepolia', + name: 'Bob Pool on Sepolia with decentralized relayer', + }, ], } + }; export default config[process.env.REACT_APP_CONFIG || 'dev']; diff --git a/src/contexts/ZkAccountContext/index.js b/src/contexts/ZkAccountContext/index.js index f802015f..7018c86f 100644 --- a/src/contexts/ZkAccountContext/index.js +++ b/src/contexts/ZkAccountContext/index.js @@ -290,8 +290,8 @@ export const ZkAccountContextProvider = ({ children }) => { if (!zkClient) return; let version = null; try { - const data = await zkClient.getRelayerVersion(); - version = data.ref; + // const data = await zkClient.getRelayerVersion(); + version = "TODO"; } catch (error) { console.error(error); Sentry.captureException(error, { tags: { method: 'ZkAccountContext.loadRelayerVersion' } }); @@ -437,19 +437,19 @@ export const ZkAccountContextProvider = ({ children }) => { } if (!zkAccount) { let atomicTxFee = await zkClient.atomicTxFee(txType); - atomicTxFee = await fromShieldedAmount(atomicTxFee); + atomicTxFee = await fromShieldedAmount(atomicTxFee.total); return { fee: atomicTxFee, numberOfTxs: 1, insufficientFunds: false, directDepositFee }; } const shieldedAmounts = await Promise.all(amounts.map(async amount => await toShieldedAmount(amount))); const shieldedAmountToConvert = await toShieldedAmount(amountToConvert); const { - total, + fee, txCnt, insufficientFunds, relayerFee, - } = await zkClient.feeEstimate(shieldedAmounts, txType, shieldedAmountToConvert, false); + } = await zkClient.feeEstimate(shieldedAmounts, txType, shieldedAmountToConvert, false); return { - fee: await fromShieldedAmount(total), + fee: await fromShieldedAmount(fee.total), numberOfTxs: txCnt, insufficientFunds, relayerFee, diff --git a/src/contexts/ZkAccountContext/zp.js b/src/contexts/ZkAccountContext/zp.js index d69ff9ae..a66a7df0 100644 --- a/src/contexts/ZkAccountContext/zp.js +++ b/src/contexts/ZkAccountContext/zp.js @@ -14,6 +14,7 @@ const createClient = (currentPoolAlias, supportId, callback) => { snarkParams: config.snarkParams, extraPrefixes: config.extraPrefixes, supportId, + snarkParamsSet:config.snarkParamsSet }, currentPoolAlias, callback, diff --git a/src/providers/Web3Provider.js b/src/providers/Web3Provider.js index ab33fd94..5f5b8daf 100644 --- a/src/providers/Web3Provider.js +++ b/src/providers/Web3Provider.js @@ -1,41 +1,47 @@ import { WagmiConfig, configureChains, createClient } from 'wagmi'; -import { publicProvider } from 'wagmi/providers/public'; import { jsonRpcProvider } from 'wagmi/providers/jsonRpc'; +import { publicProvider } from '@wagmi/core/providers/public' import { sepolia, polygon, goerli, optimism, optimismGoerli } from 'wagmi/chains'; import { InjectedConnector } from 'wagmi/connectors/injected'; import { WalletConnectConnector } from 'wagmi/connectors/walletConnect'; +import config from '../config' + +const getRpcByPriority = (priority) => { + + return (chain) => { + if(!Object.keys(config.chains).find((chainId) => chainId == chain.id)){ + return publicProvider(chain); + } + + const selectedChain = config.chains[chain.id]; + const len = selectedChain?.rpcUrls.length; + let res; + if (len > priority-1) + { + res = ({http: selectedChain.rpcUrls[priority]}) + } else { + res = ({http: selectedChain.rpcUrls[priority%len]}) //if config is shorter than current prioirity (up to 3) , we just wrap and start from the beginning + }; + return res; + } + +} + +const networks = process.env.REACT_APP_CONFIG === 'dev' ? [sepolia, goerli, optimismGoerli, optimism] : [polygon, optimism]; +console.log('networks', networks) const { chains, provider, webSocketProvider } = configureChains( - process.env.REACT_APP_CONFIG === 'dev' ? [sepolia, goerli, optimismGoerli] : [polygon, optimism], + networks, [ jsonRpcProvider({ priority: 0, - rpc: chain => { - if (chain.id === optimism.id) { - return ({ http: 'https://rpc.ankr.com/optimism' }); - } - if (chain.id === sepolia.id) { - return ({ http: 'https://sepolia.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161' }); - } - if (chain.id === polygon.id) { - return ({ http: 'https://rpc.ankr.com/polygon' }); - } - return null; - } - }), - publicProvider({ priority: 1 }), + rpc: getRpcByPriority(0)}), + jsonRpcProvider({priority:1, + rpc: getRpcByPriority(1)}), jsonRpcProvider({priority:2, - rpc: chain => { - if (chain.id == optimism.id) { - return ({http: 'https://optimism-mainnet.infura.io/v3/9a94d181b23846209f01161dcd0f9ad6'}) - } - } }), - jsonRpcProvider({priority:3, - rpc: chain => { - if (chain.id == optimism.id) { - return ({http: 'https://opt-mainnet.g.alchemy.com/v2/fnUqqB1tThPuSpM33VFm26wqXISKPS2n'}) - } - } }), + rpc: getRpcByPriority(2)}), + jsonRpcProvider({priority:3, + rpc: getRpcByPriority(3)}) ], ); diff --git a/yarn.lock b/yarn.lock index c4ebb3b0..7bc24a24 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7758,20 +7758,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001317: - version "1.0.30001319" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001319.tgz#eb4da4eb3ecdd409f7ba1907820061d56096e88f" - integrity sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw== - -caniuse-lite@^1.0.30001400: - version "1.0.30001434" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001434.tgz#ec1ec1cfb0a93a34a0600d37903853030520a4e5" - integrity sha512-aOBHrLmTQw//WFa2rcF1If9fa3ypkC1wzqqiKHgfdrXTWcU8C4gKVZT77eQAPWN1APys3+uQ0Df07rKauXGEYA== - -caniuse-lite@^1.0.30001503: - version "1.0.30001512" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001512.tgz#7450843fb581c39f290305a83523c7a9ef0d4cb4" - integrity sha512-2S9nK0G/mE+jasCUsMPlARhRCts1ebcp2Ji8Y8PWi4NDE1iRdLCnEPHkEfeBrGC45L4isBx5ur3IQ6yTE2mRZw== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001317, caniuse-lite@^1.0.30001400, caniuse-lite@^1.0.30001503: + version "1.0.30001668" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz" + integrity sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw== capital-case@^1.0.4: version "1.0.4" @@ -9314,11 +9304,6 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== -err-code@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" - integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== - error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -12783,15 +12768,15 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -libzkbob-rs-wasm-web-mt@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/libzkbob-rs-wasm-web-mt/-/libzkbob-rs-wasm-web-mt-1.6.0.tgz#9437cdd240fb1ac47e6e3fbc7e34f45ade5af19e" - integrity sha512-nAfmUh8ZrQ5WfEc3v7+vWWRWjOy3uFWn/LRdIce7zmnq1t8X91MD+RgnPcHxbgDpz5eGpSn5V/OSc3XYPwm9aw== +libzkbob-rs-wasm-web-mt@1.7.0-beta5: + version "1.7.0-beta5" + resolved "https://registry.yarnpkg.com/libzkbob-rs-wasm-web-mt/-/libzkbob-rs-wasm-web-mt-1.7.0-beta5.tgz#93584d0ee373589d218e442f91a0ae95fe27716d" + integrity sha512-6Nnn+sLSzaX381d/EHbmhGMzVCMJk/BwULcvwHECcI1XAtsUITvaWVP+I/Kd6y0clQVlLWUQVaiOyNo5XJ//8w== -libzkbob-rs-wasm-web@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/libzkbob-rs-wasm-web/-/libzkbob-rs-wasm-web-1.6.0.tgz#050887671fb1af20adb22a144e95e06c59e42460" - integrity sha512-Mtpc/pqutA2tUzb8nir7Ec2oXTSPbYvjf969QsJKcdJR/JmCGbv1gmylxjVdL7QnAUTH3ldt0jj5CU8v8X6yzw== +libzkbob-rs-wasm-web@1.7.0-beta5: + version "1.7.0-beta5" + resolved "https://registry.yarnpkg.com/libzkbob-rs-wasm-web/-/libzkbob-rs-wasm-web-1.7.0-beta5.tgz#60bf40d7db925ac2307b60dcba7285e3d79fa678" + integrity sha512-J3jbZYiyhr2JLTk4F1y5fC0V5qMkLBQARrbG/A+5B+MqijxyZOHE2ePE55LLH55bdY0eTTabKvxIaYYdsuUw3w== lie@3.1.1: version "3.1.1" @@ -14895,14 +14880,6 @@ progress@^2.0.0, progress@^2.0.3: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -promise-retry@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" - integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== - dependencies: - err-code "^2.0.2" - retry "^0.12.0" - promise-throttle@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/promise-throttle/-/promise-throttle-1.1.2.tgz#8a59d0424b6f9673aa8405c8b6bd4b5e4f7f71db" @@ -15861,11 +15838,6 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== - retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -16561,7 +16533,7 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -16579,6 +16551,15 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" @@ -16658,7 +16639,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -16686,6 +16667,13 @@ strip-ansi@^5.1.0: dependencies: ansi-regex "^4.1.0" +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^7.0.0, strip-ansi@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" @@ -18710,7 +18698,7 @@ workerpool@6.2.1: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -18736,6 +18724,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" @@ -19015,10 +19012,10 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -zkbob-client-js@5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/zkbob-client-js/-/zkbob-client-js-5.5.0.tgz#b5811083680b47562cb5fa7de8a789d8c216fed5" - integrity sha512-KJlQ6T1iy3uyZP/BbGwQSuK8zqsw1VUcMz3aSVrqMU9hgEbOUa18vF4U6IUELMsahw4QfPE/1W0lwAYmyNZShA== +zkbob-client-js@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/zkbob-client-js/-/zkbob-client-js-6.0.0.tgz#9663bad16b60aae644f3fd6e133c8fe88d69fb14" + integrity sha512-xF+B6adXvi8Sg4P6stYy5mM/+5IKMCwJ1GEYgEYXYfE9KnnM9yXL84SatHMQD8AXtbi/yg3i3y4vyyzckRHy+w== dependencies: "@ethereumjs/util" "^8.0.2" "@graphprotocol/client-cli" "3.0.0" @@ -19031,9 +19028,8 @@ zkbob-client-js@5.5.0: graphql "16.7.1" hdwallet-babyjub "^0.0.2" idb "^7.0.0" - libzkbob-rs-wasm-web "1.6.0" - libzkbob-rs-wasm-web-mt "1.6.0" - promise-retry "^2.0.1" + libzkbob-rs-wasm-web "1.7.0-beta5" + libzkbob-rs-wasm-web-mt "1.7.0-beta5" promise-throttle "^1.1.2" regenerator-runtime "^0.13.9" tronweb "^5.3.0"