Skip to content

chore(deps): update dependency @rainbow-me/rainbowkit to v2.2.11 - #1604

Open
renovate[bot] wants to merge 1 commit into
sepoliafrom
renovate/rainbow-me-rainbowkit-2.x-lockfile
Open

chore(deps): update dependency @rainbow-me/rainbowkit to v2.2.11#1604
renovate[bot] wants to merge 1 commit into
sepoliafrom
renovate/rainbow-me-rainbowkit-2.x-lockfile

Conversation

@renovate

@renovate renovate Bot commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@rainbow-me/rainbowkit (source) 2.1.52.2.11 age confidence

Release Notes

rainbow-me/rainbowkit (@​rainbow-me/rainbowkit)

v2.2.11

Compare Source

Patch Changes
  • a40b1f4: Migrate the Base connector to canonical base naming, while preserving backwards-compatible aliases baseAccount and coinbaseWallet.

  • 3672dc6: Added Anchorage Digital wallet support with the anchorageDigitalWallet wallet connector.

  • 1043d88: Added MeCo Wallet support with mecoWallet wallet connector.

  • f52657f: Exposed RainbowKitProviderProps and WalletButtonRendererProps as public type exports to support Custom Wallet Button scenarios.

  • 4f2de17: Fixed a crash that could occur when selecting a wallet while multiple browser wallet extensions were installed and the specific injected wallet was missing. Wallet-specific injected connectors now bind only to their matching provider instead of falling back to available defaults.

  • bc4625c: Fix recent transaction tracking so failed transactions no longer prevent an app's own transaction receipt wait from settling.

  • 25c4c2b: Improved SSR safety to prevent WalletConnect initialization warnings and mitigate localStorage API availability changes in Node.js v25 and above.

  • f52657f: Fixed useWindowSize triggering a state update after unmount, which could surface as a React warning.

  • eb4251d: The AuthenticationAdapter.createMessage API can now return a promise, so dApps can fetch or construct a custom SIWE message asynchronously. This enables server-side SIWE message creation before prompting the wallet, while preserving existing synchronous behavior.

    See the server-side message creation docs for guidance.

  • b0f6d52: fix: harden useCoolMode against malicious wallet icon URLs

    The cool mode particle animation built image elements via innerHTML, which
    parses its input as HTML. A malicious EIP-6963 wallet could supply a crafted
    icon URL containing injected attributes (e.g. onerror) that would execute
    in the dApp's origin when a user interacts with the wallet button.

    Switched to document.createElement('img') with property assignment so the
    icon value is always treated as a plain URL rather than markup.

  • f2523a9: Updated MetaMask wallet icon

v2.2.10

Compare Source

Patch Changes
  • e74f604: Improve UI on the mobile connect flow to hint to users that they can horizontally scroll to see additional wallet connectors

  • eb72c37: Fix Gemini wallet connector to use icon instead of icons in appMetadata

  • e58367e: Fix mobile visibility for Coin98, CLV, SafePal, Frontier, and BeraSig wallets.

  • b7b7b43: Rename the Argent wallet connector to readyWallet

  • 507f583: Add additional wallet flags to isMetaMask() to detect impersonating providers.

  • 16963de: Add ctrlWallet wallet connector to replace xdefiWallet. XDEFI Wallet has been rebranded to CTRL Wallet.

  • 6c745a5: Disable third-party connector telemetry by default for user privacy. h/t @​TimDaub

    To opt-in to WalletConnect analytics:

    With getDefaultConfig:

    const config = getDefaultConfig({
      /** ... **/
      walletConnectParameters: {
        telemetryEnabled: true,
      },
    });

    To opt-in to Base Account telemetry:

    baseAccount.preference = {
      telemetry: true,
    };

    To opt-in to MetaMask analytics:

    metaMaskWallet.enableAnalytics = true;

v2.2.9

Compare Source

Patch Changes
  • e52ca05: Add baseAccount wallet connector, replacing coinbaseWallet in the default wallet list

  • 1e67f0d: Improved detection for nova wallet provider

  • d92a6c7: Fixed type compatibility for connect() parameters in Wagmi ^2.17.0

  • 0b9052c: Add binance wallet chrome extension download url

  • b34d6c1: Added portoWallet.

  • 66bcc18: Universal Profiles wallet connector

  • fe0496e: Added Gemini Wallet support

    Added Gemini Wallet as a supported wallet connector with proper icon and configuration.

  • 5698ade: fix monad logo in rainbowkit package and include monad testnet in the example

  • 1520f59: Fixed unintended forwarding of the errorCorrection prop to SVG elements used by the QRCode component to prevent React warning.

v2.2.8

Compare Source

Patch Changes
  • f542876: The metaMaskWallet wallet connector now utilizes the MetaMask SDK for more reliable, faster connections on mobile

v2.2.7

Compare Source

Patch Changes
  • a147620: Fixed error handling when connect requests are rejected on mobile.
  • 10090d2: Mitigated WalletConnect Core is already initialized warnings that began appearing with recent distributions of Wagmi and WalletConnect.
  • 50c7f13: Added missing rdns metadata for wallet connectors that now support EIP-6963.
  • 15ddd4a: Improved QR Code error correction and rendering with cuer

v2.2.6

Compare Source

Patch Changes
  • 624a38a: The coinbaseWallet connector now supports additional SDK configuration options to enable Paymasters and Sub Accounts for your dapp.

    import { coinbaseWallet } from "@rainbow-me/rainbowkit/wallets";
    
    // Configure Paymaster for gas sponsorship
    coinbaseWallet.paymasterUrls = {
      [base.id]: "...",
    };
    
    // Enable Sub Accounts
    coinbaseWallet.subAccounts = {
      enableAutoSubAccounts: true,
      defaultSpendLimits: {
        // ...
      },
    };
  • f6ad6aa: Added support for Superposition chain

v2.2.5

Compare Source

Patch Changes
  • 3d73508: Added ZilPay Wallet support with zilPayWallet wallet connector
  • c5a9cc1: Fixed SVG encoding in wallet connector icons for Cool Mode
  • 8515fd3: Resolved a warning for mismatched dApp url metadata on recent versions of WalletConnect
  • 5b54649: MEW Wallet now supports WalletConnect on mobile
  • 03ae0d0: Added xPortal Wallet support with xPortalWallet wallet connector

v2.2.4

Compare Source

Patch Changes
  • f5a7cec: Added support for Unichain
  • a765cfc: Added support for ApeChain, Berachain, Degen, Gravity, Ink, Linea, and Sanko
  • 9c9c491: Added Backpack support with backpackWallet wallet connector
  • f89eb92: Improved support for the Binance Wallet dApp browser
  • a765cfc: Updated icons for Arbitrum, Blast, Gnosis, Scroll, and zkSync
  • e4547b8: Added icon for HyperEVM chain

v2.2.3

Compare Source

Patch Changes
  • b5a7878: Updated OP Mainnet branding

v2.2.2

Compare Source

Patch Changes

v2.2.1

Compare Source

Patch Changes
  • 3469982: Added Wigwam support with wigwamWallet wallet connector
  • 0c6af55: Added icon for Flow chain
  • 5b8e146: Added de-DE and de locale support for the German language.
  • 9dd23d9: Added BeraSig support with berasigWallet wallet connector
  • 7fceab8: Added ms-MY and ms locale support for the Malay language.

v2.2.0

Compare Source

Minor Changes
  • f02bced: The Authentication API now supports ERC-1271 and ERC-6492 for smart contract signature verification to enable Sign-in with Ethereum for Smart Contract Wallets, including Coinbase Smart Wallet and Argent.

    We have also deprecated the siwe and ethers peer dependencies in favor of viem/siwe to make RainbowKit even more seamless.

    No changes are necessary for dApps that don't rely on the Authentication API.

    Follow the appropriate steps below to migrate.

    NextAuth Authentication

    1. Remove siwe and ethers
    npm uninstall siwe ethers
    1. Upgrade RainbowKit, rainbowkit-siwe-next-auth, and viem
    npm i @rainbow-me/rainbowkit@^2.2.0 rainbow-me/rainbowkit-siwe-next-auth@^0.5.0 viem@^2.12.0
    1. Create a Public Client

    This allows viem to verify smart contract signatures.

    const config = getDefaultConfig({
      /* your config */
    });
    + const publicClient = config.getClient().extend(publicActions);
    1. Adjust your authorize implementation in /api/auth/[...nextauth].ts
    - import { SiweMessage } from 'siwe';
    + import {
    +   type SiweMessage,
    +   parseSiweMessage,
    +   validateSiweMessage,
    + } from 'viem/siwe';
    
    export function getAuthOptions(req: IncomingMessage): NextAuthOptions {
      const providers = [
        CredentialsProvider({
          async authorize(credentials: any) {
    
    -       const siwe = new SiweMessage(
    -         JSON.parse(credentials?.message || '{}'),
    -       );
    +       const siweMessage = parseSiweMessage(
    +         credentials?.message,
    +       ) as SiweMessage;
    
    +       if (!validateSiweMessage({
    +         address: siweMessage?.address,
    +         message: siweMessage,
    +       })) {
    +         return null;
    +       }
    
            /* ... */
    
    -       await siwe.verify({ signature: credentials?.signature || '' });
    +       const valid = await publicClient.verifyMessage({
    +         address: siweMessage?.address,
    +         message: credentials?.message,
    +         signature: credentials?.signature,
    +       });
    
    +       if (!valid) {
    +         return null;
    +       }
          },
          /* ... */
        })
      ]
    }

    Reference the with-next-siwe-next-auth example for more guidance.

    Custom Authentication

    1. Remove siwe and ethers
    npm uninstall siwe ethers
    1. Upgrade RainbowKit and viem
    npm i @rainbow-me/rainbowkit@^2.2.0 viem@^2.12.0
    1. Create a Public Client

    This allows viem to verify smart contract signatures.

    const config = getDefaultConfig({
      /* your config */
    });
    
    + const publicClient = config.getClient().extend(publicActions);
    1. Adjust your createAuthenticationAdapter implementation
    - import { SiweMessage } from 'siwe';
    + import { createSiweMessage } from 'viem/siwe';
    
    createAuthenticationAdapter({
      getNonce: async () => {
        const response = await fetch('/api/nonce');
        return await response.text();
      },
    
      createMessage: ({ nonce, address, chainId }) => {
    -   return new SiweMessage({
    +   return createSiweMessage({
          domain: window.location.host,
          address,
          statement: 'Sign in with Ethereum to the app.',
          uri: window.location.origin,
          version: '1',
          chainId,
          nonce,
        });
      },
    
    - getMessageBody: ({ message }) => {
    -   return message.prepareMessage();
    - },
    
      /* ... */
    })
    1. Adopt generateSiweNonce
    - import { generateNonce } from 'siwe';
    + import { generateSiweNonce } from 'viem/siwe';
    
    - req.session.nonce = generateNonce();
    + req.session.nonce = generateSiweNonce();
    1. Adopt parseSiweMessage and verifyMessage if your Verify handler
    - import { SiweMessage } from 'siwe';
    + import { parseSiweMessage, type SiweMessage } from 'viem/siwe';
    
    const { message, signature } = req.body;
    - const siweMessage = new SiweMessage(message);
    - const { success, error, data } = await siweMessage.verify({
    -  signature,
    - });
    + const siweMessage = parseSiweMessage(message) as SiweMessage;
    + const success = await publicClient.verifyMessage({
    +   address: siweMessage.address,
    +   message,
    +   signature,
    + });
    
    - if (!success) throw error;
    + if (!success) throw new Error('Invalid signature.');
    
    - if (data.nonce !== req.session.nonce)
    + if (siweMessage.nonce !== req.session.nonce)
    +   return res.status(422).json({ message: 'Invalid nonce.' });

    Reference the with-next-siwe-iron-session example for more guidance.

v2.1.7

Compare Source

Patch Changes
  • 4014d80: Added vi-VN and vi locale support for the Vietnamese language.
  • f93cd0e: Added ParaSwap Wallet support with paraSwapWallet wallet connector
  • 6393498: Added Best Wallet support with bestWallet wallet connector

v2.1.6

Compare Source

Patch Changes
  • 63d8386: Added Valora support with valoraWallet wallet connector
  • 8d9a4e6: Fixed an issue where some options in the "Get Wallet" flow would appear as a blank page, or lack a back button to return to the Connect flow.
  • d46637a: Added safeWallet wallet connector to getDefaultConfig by default to improve the Safe Wallet app browser connection flow with a Safe button included by default in the wallet list

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@vercel

vercel Bot commented Aug 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
frontends Error Error Aug 10, 2026 4:00pm

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants