diff --git a/package.json b/package.json index f155b95..ad60053 100644 --- a/package.json +++ b/package.json @@ -10,16 +10,16 @@ }, "dependencies": { "@coral-xyz/anchor": "^0.29.0", - "@helium/account-fetch-cache": "^0.6.38", - "@helium/account-fetch-cache-hooks": "^0.6.38", - "@helium/helium-react-hooks": "^0.6.38", + "@helium/account-fetch-cache": "^0.7.11", + "@helium/account-fetch-cache-hooks": "^0.7.11", + "@helium/helium-react-hooks": "^0.7.11", "@helium/modular-governance-hooks": "^0.0.8", "@helium/modular-governance-idls": "^0.0.8-next", "@helium/organization-sdk": "^0.0.8", - "@helium/spl-utils": "^0.6.38", + "@helium/spl-utils": "^0.7.11", "@helium/state-controller-sdk": "^0.0.8", - "@helium/voter-stake-registry-hooks": "^0.6.38", - "@helium/voter-stake-registry-sdk": "^0.6.38", + "@helium/voter-stake-registry-hooks": "^0.7.11", + "@helium/voter-stake-registry-sdk": "^0.7.11", "@hookform/resolvers": "^3.3.4", "@metaplex-foundation/mpl-token-metadata": "2.10.0", "@project-serum/anchor": "^0.26.0", @@ -62,11 +62,11 @@ }, "resolutions": { "@solana/web3.js": "^1.90.0", - "@helium/account-fetch-cache": "^0.6.38", - "@helium/account-fetch-cache-hooks": "^0.6.38", - "@helium/helium-react-hooks": "^0.6.38", - "@helium/voter-stake-registry-hooks": "^0.6.38", - "@helium/spl-utils": "^0.6.38", + "@helium/account-fetch-cache": "^0.7.11", + "@helium/account-fetch-cache-hooks": "^0.7.11", + "@helium/helium-react-hooks": "^0.7.11", + "@helium/voter-stake-registry-hooks": "^0.7.11", + "@helium/spl-utils": "^0.7.11", "@helium/modular-governance-hooks": "^0.0.8", "@solana/wallet-adapter-react": "^0.15.35" }, diff --git a/scripts/resolve-proposals.ts b/scripts/resolve-proposals.ts index 05327c5..4d5b35b 100644 --- a/scripts/resolve-proposals.ts +++ b/scripts/resolve-proposals.ts @@ -6,7 +6,7 @@ import { init as initState } from "@helium/state-controller-sdk"; import { init as initProposal } from "@helium/proposal-sdk"; import { AccountFetchCache, chunks } from "@helium/account-fetch-cache"; import { Transaction } from "@solana/web3.js"; -import { bulkSendTransactions } from "@helium/spl-utils"; +import { batchInstructionsToTxsWithPriorityFee, bulkSendTransactions } from "@helium/spl-utils"; export async function run(args: any = process.argv) { const yarg = yargs(args).options({ @@ -61,15 +61,7 @@ export async function run(args: any = process.argv) { }) .instruction() })) - - const txs = chunks(resolveIxs, 10).map((ixs) => { - const tx = new Transaction({ - feePayer: provider.wallet.publicKey - }) - tx.add(...ixs) - return tx - }) - + const txs = await batchInstructionsToTxsWithPriorityFee(provider, resolveIxs) await bulkSendTransactions(provider, txs) console.log("Done") } diff --git a/src/components/VoteOptions.tsx b/src/components/VoteOptions.tsx index c41c302..4a27a45 100644 --- a/src/components/VoteOptions.tsx +++ b/src/components/VoteOptions.tsx @@ -7,6 +7,8 @@ import React, { FC, useState } from "react"; import { VoteOption } from "./VoteOption"; import { toast } from "sonner"; import { WalletSignTransactionError } from "@solana/wallet-adapter-base"; +import { onInstructions } from "@/lib/utils"; +import { useAnchorProvider } from "@helium/helium-react-hooks"; export const VoteOptions: FC<{ choices?: VoteChoiceWithMeta[]; @@ -21,12 +23,16 @@ export const VoteOptions: FC<{ relinquishVote, loading: relinquishing, } = useRelinquishVote(proposalKey); + const provider = useAnchorProvider(); const handleVote = (choice: VoteChoiceWithMeta) => async () => { - if (canVote(choice.index)) { + if (canVote(choice.index) && provider) { try { setCurrVote(choice.index); - await vote({ choice: choice.index }); + await vote({ + choice: choice.index, + onInstructions: onInstructions(provider), + }); toast("Vote submitted"); } catch (e: any) { if (!(e instanceof WalletSignTransactionError)) { diff --git a/src/lib/utils.ts b/src/lib/utils.ts index c36f82a..3b48304 100644 --- a/src/lib/utils.ts +++ b/src/lib/utils.ts @@ -1,9 +1,13 @@ import { AnchorProvider } from "@coral-xyz/anchor"; import { init as initProp } from "@helium/proposal-sdk"; import { + HELIUM_COMMON_LUT, + HELIUM_COMMON_LUT_DEVNET, batchInstructionsToTxsWithPriorityFee, batchParallelInstructionsWithPriorityFee, + bulkSendTransactions, sendAndConfirmWithRetry, + toVersionedTx, } from "@helium/spl-utils"; import { PositionWithMeta } from "@helium/voter-stake-registry-hooks"; import { Mint } from "@solana/spl-token"; @@ -292,31 +296,59 @@ export const onInstructions = instructions, { basePriorityFee: 2, + extraSigners: sigs, + addressLookupTableAddresses: [ + provider.connection.rpcEndpoint.includes("test") + ? HELIUM_COMMON_LUT_DEVNET + : HELIUM_COMMON_LUT, + ], } ); + const asVersionedTx = transactions.map(toVersionedTx); + let i = 0; for (const tx of await provider.wallet.signAllTransactions( - transactions + asVersionedTx )) { + const draft = transactions[i]; sigs.forEach((sig) => { - if (tx.signatures.some((s) => s.publicKey.equals(sig.publicKey))) { - tx.partialSign(sig); + if (draft.signers?.some((s) => s.publicKey.equals(sig.publicKey))) { + tx.sign([sig]); } }); await sendAndConfirmWithRetry( provider.connection, - tx.serialize(), + Buffer.from(tx.serialize()), { skipPreflight: true, }, "confirmed" ); + i++; } } else { - await batchParallelInstructionsWithPriorityFee(provider, instructions, { - basePriorityFee: 2, - maxSignatureBatch: MAX_TRANSACTIONS_PER_SIGNATURE_BATCH, - }); + const transactions = await batchInstructionsToTxsWithPriorityFee( + provider, + instructions, + { + basePriorityFee: 2, + addressLookupTableAddresses: [ + provider.connection.rpcEndpoint.includes("test") + ? HELIUM_COMMON_LUT_DEVNET + : HELIUM_COMMON_LUT, + ], + } + ); + console.log("hehe") + + await bulkSendTransactions( + provider, + transactions, + undefined, + 5, + sigs, + MAX_TRANSACTIONS_PER_SIGNATURE_BATCH + ); } } }; diff --git a/yarn.lock b/yarn.lock index fb52b8f..dc36782 100644 --- a/yarn.lock +++ b/yarn.lock @@ -171,21 +171,21 @@ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.1.tgz#16308cea045f0fc777b6ff20a9f25474dd8293d2" integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q== -"@helium/account-fetch-cache-hooks@^0.5.0", "@helium/account-fetch-cache-hooks@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/account-fetch-cache-hooks/-/account-fetch-cache-hooks-0.6.38.tgz#cb7e89f2147e983a12fe209627627d02d3731671" - integrity sha512-PkKlmWYdB39wIV1tIQ749ExBO6Mn3pnRgH7tZcnf6x24iw+IjuSxycYBl8XEGU4Hfat+vTRsy5JdUm7FpSF/kQ== +"@helium/account-fetch-cache-hooks@^0.5.0", "@helium/account-fetch-cache-hooks@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/account-fetch-cache-hooks/-/account-fetch-cache-hooks-0.7.11.tgz#cc36cc403958de9b9f230bdd1adf2730b9dfd287" + integrity sha512-YoUacY5cQJStezTIw3sbmxxsuyH+P0VNtVVGnQ7jA3g+Y20BISWs/NOxf5w3cyAPscadUzTnqwGFiQ2isd9UTg== dependencies: - "@helium/account-fetch-cache" "^0.6.38" - "@solana/web3.js" "^1.78.4" + "@helium/account-fetch-cache" "^0.7.11" + "@solana/web3.js" "^1.78.8" react-async-hook "^4.0.0" -"@helium/account-fetch-cache@^0.5.0", "@helium/account-fetch-cache@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/account-fetch-cache/-/account-fetch-cache-0.6.38.tgz#7e7c55417e8db8b19babeea3e4eaafb5d9a4b0fd" - integrity sha512-mIOj35wWbdsxahiZEvmM9RE0/SzbrBD3CvNNsDQhxeX7wsb1J1sh/DOaH9BMgurs7LP0GtdocNaK3Y5hxnCKUA== +"@helium/account-fetch-cache@^0.5.0", "@helium/account-fetch-cache@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/account-fetch-cache/-/account-fetch-cache-0.7.11.tgz#5813509464214cbfbbe42040eb5a48a386e1eefd" + integrity sha512-5HPecniIyU/rcUc+Na7gqPRr352Dw8egrfgOzc24PdquVWvbJzrVwfcjrFL2PGEr858uTx0uIzbICrfsaMvEaQ== dependencies: - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" "@helium/address@^4.10.2": version "4.10.2" @@ -204,59 +204,59 @@ "@solana/spl-token" "^0.3.8" "@solana/web3.js" "^1.78.4" -"@helium/anchor-resolvers@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/anchor-resolvers/-/anchor-resolvers-0.6.38.tgz#77dfeff188f41caf88509f06edfa90a2595017ba" - integrity sha512-/4Tcm8xtxwC9j90D6HwmUytLuuA4CgCNy9dZeqyvbxpyhaHwkAiMiLOkR/CJ5JuWVmMwzRuOuKlmyOMp4HbQxg== +"@helium/anchor-resolvers@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/anchor-resolvers/-/anchor-resolvers-0.7.11.tgz#8e0612644129c4497dfa796c51e4db556aa43872" + integrity sha512-npHweI0lEO00bjLmOanCZXJkfC+cPn+JPNARsF5r42eJk0QL9HLxJJBaAwihpD3Q2xpyXhk1N306MMEgXRdTOQ== dependencies: "@solana/spl-token" "^0.3.8" - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" -"@helium/circuit-breaker-sdk@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/circuit-breaker-sdk/-/circuit-breaker-sdk-0.6.38.tgz#3ef90bf153b1064cfc3f8d1d29e11bfe3b6b7a08" - integrity sha512-mnRm5HKfGKY4VY4mYmVeyEkcKtAUsY+45h1bkrsdC/86+YT+y4/yNfv/u6G86lz0NqP7TihlJ1st6jy/cEo6NQ== +"@helium/circuit-breaker-sdk@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/circuit-breaker-sdk/-/circuit-breaker-sdk-0.7.11.tgz#032c4697bd7205423bc946371792c085cea5e31b" + integrity sha512-t7iNkNLKBL0uPkqK+gcrAzOLnL+w1gjbpcWQ4jVfRwmzQApmhwu15WKlO1NW+av/neZeCYtvD+bOqR69ASruVA== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/anchor-resolvers" "^0.6.38" - "@helium/idls" "^0.6.38" + "@helium/anchor-resolvers" "^0.7.11" + "@helium/idls" "^0.7.11" bn.js "^5.2.0" bs58 "^4.0.1" -"@helium/helium-react-hooks@^0.5.0", "@helium/helium-react-hooks@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/helium-react-hooks/-/helium-react-hooks-0.6.38.tgz#df2367ba9432268243286ce38a6353e601667bdd" - integrity sha512-lS9asrI5uqSwyrK76BbXyXvP6TQa24Ve8/IISr/GZl4WgIEcJ4Jhhk0d7qlIDXVweVWNRt9IjSCUSMf/uxm83g== +"@helium/helium-react-hooks@^0.5.0", "@helium/helium-react-hooks@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/helium-react-hooks/-/helium-react-hooks-0.7.11.tgz#1d67bf58906f9c8d02ee9e7cb064ba6fb1668f3b" + integrity sha512-BD3cjdxn+98h+Cm1Dy5duwAk2RmmxqMkLoRQKZTiXK7X91d80bS3bHep6XbPMGlvHFokyrCcITiWp/ivHRHLLw== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/account-fetch-cache" "^0.6.38" - "@helium/account-fetch-cache-hooks" "^0.6.38" + "@helium/account-fetch-cache" "^0.7.11" + "@helium/account-fetch-cache-hooks" "^0.7.11" "@solana/spl-token" "^0.3.8" - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" bs58 "^4.0.1" pako "^2.0.3" react-async-hook "^4.0.0" -"@helium/helium-sub-daos-sdk@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/helium-sub-daos-sdk/-/helium-sub-daos-sdk-0.6.38.tgz#7030fc3b93596ecbe9b6a52b160ed0280e0816b2" - integrity sha512-zY65OfyqnUyDc8EqLTPuZqmIsAlQRywpdQ/OaKrv511Rh3otG4GHH28K9PfvA4fr8Sw7JZVFA3+/tx9ZFUJy5Q== +"@helium/helium-sub-daos-sdk@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/helium-sub-daos-sdk/-/helium-sub-daos-sdk-0.7.11.tgz#eb59678610f9b5b8cdf7c4c7671ed23347acd517" + integrity sha512-37is9bYr0W/+4rqTInkaErYKQB72Fa53csXtZCYwRsDqhYWCXT/UvTyepr+Cyg/cHc70HcL/Cmrt/UFg1brH0w== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/anchor-resolvers" "^0.6.38" - "@helium/circuit-breaker-sdk" "^0.6.38" - "@helium/treasury-management-sdk" "^0.6.38" - "@helium/voter-stake-registry-sdk" "^0.6.38" + "@helium/anchor-resolvers" "^0.7.11" + "@helium/circuit-breaker-sdk" "^0.7.11" + "@helium/treasury-management-sdk" "^0.7.11" + "@helium/voter-stake-registry-sdk" "^0.7.11" bn.js "^5.2.0" bs58 "^4.0.1" -"@helium/idls@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/idls/-/idls-0.6.38.tgz#22121e1ca0a7c1be236c16b4724cecfdafd7eac9" - integrity sha512-kW3YDkH0U8kL2Ul5BOlL51oVbilGZN6Ivo4VZj9dPp+FY9YT1epVazf02bWzFHsis2WSNE+O+gGJfI+M8ZdcBQ== +"@helium/idls@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/idls/-/idls-0.7.11.tgz#90e73f3878f1326067784ae208ee753f2fce90c6" + integrity sha512-bZYDJpPMsDmB+Zm6ZmcHsuLkNOEw2Nf4xtQ8SWPglSoKwsXa8VB6P6cEtNavRVBfU1RBn3XQbGHuevvW5Yuq2g== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" bn.js "^5.2.0" borsh "^0.7.0" bs58 "^4.0.1" @@ -301,19 +301,19 @@ "@helium/anchor-resolvers" "^0.5.0" "@helium/modular-governance-idls" "^0.0.8" -"@helium/spl-utils@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/spl-utils/-/spl-utils-0.6.38.tgz#9e64164c84509e59607a31d5daeee2efc0d34831" - integrity sha512-7kMQHKq3a2o9/cQnTUeDQ+LMN9+qOZM5J4gt4eA2zTXac6OTGUN6nQDvLnyQTsvgUzzNHyQV+/Xh7/HPR+COQg== +"@helium/spl-utils@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/spl-utils/-/spl-utils-0.7.11.tgz#c217d6ec106ce8d2559f6b1a90cba9184223a7e6" + integrity sha512-4JsmePhEF+3ZO1NQx4Cev+G3pXUyfeW0GUeYArjUV524zpzlc5HvpU28BJg5OD1rNaQ2ZY8Vd+upy31hofrj8g== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/account-fetch-cache" "^0.6.38" + "@helium/account-fetch-cache" "^0.7.11" "@helium/address" "^4.10.2" - "@helium/anchor-resolvers" "^0.6.38" + "@helium/anchor-resolvers" "^0.7.11" "@metaplex-foundation/mpl-token-metadata" "^2.10.0" "@solana/spl-account-compression" "^0.1.7" "@solana/spl-token" "^0.3.8" - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" axios "^1.5.0" bn.js "^5.2.0" borsh "^0.7.0" @@ -328,47 +328,47 @@ "@helium/anchor-resolvers" "^0.5.0" "@helium/modular-governance-idls" "^0.0.8" -"@helium/treasury-management-sdk@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/treasury-management-sdk/-/treasury-management-sdk-0.6.38.tgz#2dd9c656fdeedc73553e1f64332c986d171c127b" - integrity sha512-PHXTecFw2pUyf1A3FsVazNyU+BLmv1lew+w+ng2GJ9HqGq2iyuiwRvUn9N10QC1/FtMeNwKS1Gdosy6VLYvYFQ== +"@helium/treasury-management-sdk@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/treasury-management-sdk/-/treasury-management-sdk-0.7.11.tgz#1f2a86b6590f633a2908304bce7bdfde4a0d972b" + integrity sha512-LvUJIPhJSEoJTNcsq8vOIYRSMVlrNte3hFPib9d5ur48PTehKHfUdNG9YAOX3UhbD8xSsIFgwe+ZgcZOFHYJbw== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/anchor-resolvers" "^0.6.38" - "@helium/circuit-breaker-sdk" "^0.6.38" - "@helium/idls" "^0.6.38" + "@helium/anchor-resolvers" "^0.7.11" + "@helium/circuit-breaker-sdk" "^0.7.11" + "@helium/idls" "^0.7.11" bn.js "^5.2.0" bs58 "^4.0.1" -"@helium/voter-stake-registry-hooks@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/voter-stake-registry-hooks/-/voter-stake-registry-hooks-0.6.38.tgz#6f08566f118dbc354a3fa97d7e654f10f7d6ca92" - integrity sha512-jBLe4ycztuM9okzEFkMSl1ebSLx0sIh6DavTVRBXcrj1jlIua1Uy4cO83w31AszNgEa8pRkM44iZxTwWDjQ+6A== +"@helium/voter-stake-registry-hooks@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/voter-stake-registry-hooks/-/voter-stake-registry-hooks-0.7.11.tgz#57c8ed321db235c756f3ccd59cc1dd259e05409a" + integrity sha512-rsI6ATu7VMjDnaBhaD51BuEbx3ADhQjtlxJzvPdrYK41DwGDMEPbt54qDYfB6+v5EhKAmdWIryOO6bCPt6G6rg== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/account-fetch-cache" "^0.6.38" - "@helium/account-fetch-cache-hooks" "^0.6.38" - "@helium/circuit-breaker-sdk" "^0.6.38" - "@helium/helium-react-hooks" "^0.6.38" - "@helium/helium-sub-daos-sdk" "^0.6.38" + "@helium/account-fetch-cache" "^0.7.11" + "@helium/account-fetch-cache-hooks" "^0.7.11" + "@helium/circuit-breaker-sdk" "^0.7.11" + "@helium/helium-react-hooks" "^0.7.11" + "@helium/helium-sub-daos-sdk" "^0.7.11" "@helium/modular-governance-hooks" "^0.0.8" - "@helium/spl-utils" "^0.6.38" - "@helium/voter-stake-registry-sdk" "^0.6.38" + "@helium/spl-utils" "^0.7.11" + "@helium/voter-stake-registry-sdk" "^0.7.11" "@solana/wallet-adapter-base" "^0.9.22" "@solana/wallet-adapter-react" "^0.15.32" - "@solana/web3.js" "^1.78.4" + "@solana/web3.js" "^1.78.8" axios "^1.3.6" bs58 "^4.0.1" react-async-hook "^4.0.0" -"@helium/voter-stake-registry-sdk@^0.6.38": - version "0.6.38" - resolved "https://registry.yarnpkg.com/@helium/voter-stake-registry-sdk/-/voter-stake-registry-sdk-0.6.38.tgz#1b92d7cf80da25fb560151c4b421ab21ae7b5333" - integrity sha512-GV771AdMoLYQvixMHYaxy8RSZmMwYOOXoljcMKOgi7M3rv0CJUg+MIUCi4bS+7KJh14ZR/mX2+YkS0bBYVasEg== +"@helium/voter-stake-registry-sdk@^0.7.11": + version "0.7.11" + resolved "https://registry.yarnpkg.com/@helium/voter-stake-registry-sdk/-/voter-stake-registry-sdk-0.7.11.tgz#70f75d7407dfac089266b902129a9f748db7fd13" + integrity sha512-1YqH/yYibFE5dTbn8/M8eaHdiP/oYDfU6WLBJg7mmlXsxxyxRaS2t33LTdTAVv8SUwC6pBxm/0LHg4ZRXCdrDw== dependencies: "@coral-xyz/anchor" "^0.28.0" - "@helium/anchor-resolvers" "^0.6.38" - "@helium/idls" "^0.6.38" + "@helium/anchor-resolvers" "^0.7.11" + "@helium/idls" "^0.7.11" "@metaplex-foundation/mpl-token-metadata" "^2.10.0" "@solana/spl-token" "^0.3.8" bn.js "^5.2.0" @@ -1138,7 +1138,7 @@ "@solana/wallet-standard-core" "^1.1.1" "@solana/wallet-standard-wallet-adapter" "^1.1.2" -"@solana/web3.js@^1.32.0", "@solana/web3.js@^1.56.2", "@solana/web3.js@^1.66.2", "@solana/web3.js@^1.68.0", "@solana/web3.js@^1.73.2", "@solana/web3.js@^1.78.4", "@solana/web3.js@^1.90.0": +"@solana/web3.js@^1.32.0", "@solana/web3.js@^1.56.2", "@solana/web3.js@^1.66.2", "@solana/web3.js@^1.68.0", "@solana/web3.js@^1.73.2", "@solana/web3.js@^1.78.4", "@solana/web3.js@^1.78.8", "@solana/web3.js@^1.90.0": version "1.91.0" resolved "https://registry.yarnpkg.com/@solana/web3.js/-/web3.js-1.91.0.tgz#a763b0fcca0fa005adce3d02f3a4b6d1b84eccb7" integrity sha512-iqOL9RjNra0TM9BbQWxBRUcZUiNmCJJO+vXLp0GiELUJhbNAoE/K6OV6s+gNEsC13dslvKtfA4mmzRnZNWXtIQ==