[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-metamask-troubleshoot-connection":3,"mdc--vde3jp-key":32,"related-org-metamask-troubleshoot-connection":7560,"related-repo-metamask-troubleshoot-connection":7720},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":22,"repoUrl":23,"updatedAt":24,"license":25,"forks":22,"topics":26,"repo":27,"sourceUrl":30,"mdContent":31},"troubleshoot-connection","diagnose MetaMask Connect SDK connection issues","Diagnose and fix common MetaMask Connect SDK connection failures, transport issues, and runtime errors",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"metamask","MetaMask","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fmetamask.png",[12,16,19],{"name":13,"slug":14,"type":15},"Web3","web3","tag",{"name":17,"slug":18,"type":15},"Ethereum","ethereum",{"name":20,"slug":21,"type":15},"Debugging","debugging",2,"https:\u002F\u002Fgithub.com\u002FMetaMask\u002Fmetamask-connect-cursor-plugin","2026-07-13T06:12:05.326072",null,[],{"repoUrl":23,"stars":22,"forks":22,"topics":28,"description":29},[],"Cursor plugin for building dApps with the MetaMask Connect SDK — skills, rules, and agents for EVM, Solana, and multichain integrations","https:\u002F\u002Fgithub.com\u002FMetaMask\u002Fmetamask-connect-cursor-plugin\u002Ftree\u002FHEAD\u002Fskills\u002Ftroubleshoot-connection","---\nname: troubleshoot-connection\ndescription: Diagnose and fix common MetaMask Connect SDK connection failures, transport issues, and runtime errors\n---\n# Troubleshoot MetaMask Connect Issues\n\n## When to use\n\nUse this skill when:\n- A connection attempt hangs, fails, or produces an unexpected error\n- React Native apps crash on import or at runtime with missing polyfill errors\n- QR codes don't appear or deeplinks don't open MetaMask Mobile\n- Solana wallet adapter doesn't detect MetaMask\n- Sessions are lost after page reload or disconnect behaves unexpectedly\n- You need a systematic checklist to verify a MetaMask Connect integration\n\n## Symptom -> Cause -> Fix Reference\n\n---\n\n### 1. Connection hangs \u002F nothing happens after `connect()`\n\n**Cause A:** Extension not detected but `preferExtension` is `true` (the default). The SDK falls through to MetaMask Wallet Protocol (MWP) but no QR code is rendered because headless mode is on and there is no `display_uri` listener.\n\n**Fix:** Register a `display_uri` event listener to render the QR code URI before calling `connect()`\n\n**Cause B:** A concurrent `connect()` call is already in progress over MWP.\n\n**Fix:** Guard against double-clicking. Wrap `connect()` in a loading-state check and match on the `\"Existing connection is pending\"` error message — on MWP this error has **no numeric code**. (`-32002` only appears on the extension transport.)\n\n---\n\n### 2. User rejected request (code `4001`)\n\n**Cause:** The user clicked \"Reject\" in MetaMask. This is normal behavior.\n\n**Fix:** Handle gracefully — show a retry button. Do not treat this as an application error or log it to error-tracking services:\n\n```typescript\ntry {\n  await client.connect({ chainIds: ['0x1'] });\n} catch (err) {\n  if (err.code === 4001) {\n    \u002F\u002F User rejected — show retry UI\n    return;\n  }\n  throw err;\n}\n```\n\n---\n\n### 3. Connection already pending (code `-32002`)\n\n**Cause:** A previous `connect()` call has not yet resolved (the user may still have the MetaMask approval dialog open on mobile).\n\n**Fix:** Show a message like \"Check MetaMask Mobile to approve the connection.\" Do **not** call `connect()` again — the original promise will resolve once the user acts.\n\n---\n\n### 4. Chain not configured in `supportedNetworks`\n\n**Cause:** An RPC request was made on a chain whose CAIP scope is missing from `api.supportedNetworks`. This error is thrown by the EIP-1193 provider's `request()` path for the *active* chain's node-routed reads — not by `connect()` (which only checks `chainIds` is non-empty) and not by `wallet_switchEthereumChain` (forwarded to the wallet).\n\n**Fix:** Add every chain the dApp needs to `supportedNetworks` with a valid RPC URL:\n\n```typescript\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp' },\n  api: {\n    supportedNetworks: {\n      ...getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY', chainIds: ['0x1', '0x89', '0xaa36a7'] }),\n      '0xa4b1': 'https:\u002F\u002Farb1.arbitrum.io\u002Frpc',\n    },\n  },\n});\n```\n\n---\n\n### 5. `Cannot find variable: Buffer` \u002F `Buffer is not defined` (React Native)\n\n**Cause:** A dependency loaded before `@metamask\u002Fconnect-multichain` uses `Buffer`. The connect package self-polyfills Buffer via its React Native entry point, but peer dependencies like `eciesjs` may execute first.\n\n**Fix:** Add this to `polyfills.ts` and import it early (after `react-native-get-random-values`, before other imports):\n\n```typescript\nimport { Buffer } from 'buffer';\nglobal.Buffer = Buffer;\n```\n\n---\n\n### 6. `Cannot find variable: Event` \u002F `CustomEvent is not defined` (React Native)\n\n**Cause:** wagmi dispatches DOM events internally, and React Native does not provide `Event`\u002F`CustomEvent` globals. The `@metamask\u002Fconnect-*` packages themselves never construct DOM events (they use `eventemitter3`) — this error only occurs when wagmi (or another DOM-dependent library) is in the stack.\n\n**Fix:** If you use wagmi in React Native, add standalone class polyfills in `polyfills.ts`. Do **not** `extends Event` — that references the very global that is missing:\n\n```typescript\nclass EventPolyfill {\n  type: string;\n  constructor(type: string) {\n    this.type = type;\n  }\n}\n\nclass CustomEventPolyfill extends EventPolyfill {\n  detail: any;\n  constructor(type: string, options?: { detail?: any }) {\n    super(type);\n    this.detail = options?.detail;\n  }\n}\n\nglobal.Event = EventPolyfill as any;\nglobal.CustomEvent = CustomEventPolyfill as any;\n```\n\nIf you are not using wagmi and still see this error, the source is another dependency — not the MetaMask Connect SDK.\n\n---\n\n### 7. Deeplinks not opening MetaMask app (React Native)\n\n**Cause:** The `mobile.preferredOpenLink` callback is not configured.\n\n**Fix:** Pass a function that calls `Linking.openURL`:\n\n```typescript\nimport { Linking } from 'react-native';\n\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp', url: 'https:\u002F\u002Fmydapp.com' },\n  mobile: {\n    preferredOpenLink: (deeplink: string) => Linking.openURL(deeplink),\n  },\n});\n```\n\n---\n\n### 8. App crashes on import of SDK (React Native)\n\n**Cause:** Metro bundler cannot resolve Node.js built-in modules (`stream`, `crypto`, `http`, `https`, `os`, `url`, `assert`, `events`, etc.) that SDK dependencies reference.\n\n**Fix:** Add `extraNodeModules` shims in `metro.config.js`:\n\n```javascript\nconst { getDefaultConfig, mergeConfig } = require('@react-native\u002Fmetro-config');\nconst path = require('path');\n\n\u002F\u002F src\u002Fempty-module.js: `module.exports = {};`\n\u002F\u002F Only `stream` needs a real shim — the other Node built-ins are referenced\n\u002F\u002F by transitive deps but never called at runtime in React Native.\nconst emptyModule = path.resolve(__dirname, 'src', 'empty-module.js');\n\nconst config = {\n  resolver: {\n    extraNodeModules: {\n      stream: require.resolve('readable-stream'),\n      crypto: emptyModule,\n      http: emptyModule,\n      https: emptyModule,\n      net: emptyModule,\n      tls: emptyModule,\n      zlib: emptyModule,\n      os: emptyModule,\n      dns: emptyModule,\n      assert: emptyModule,\n      url: emptyModule,\n      path: emptyModule,\n      fs: emptyModule,\n    },\n  },\n};\n\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), config);\n```\n\nInstall the corresponding shim packages via `npm install`.\n\n---\n\n### 9. `crypto.getRandomValues is not a function` (React Native)\n\n**Cause:** `react-native-get-random-values` is either not installed or not imported as the very first import.\n\n**Fix:** Import it as the **first line** of your entry file — before any other import:\n\n```typescript\nimport 'react-native-get-random-values';\n\u002F\u002F all other imports follow\n```\n\n---\n\n### 10. MetaMask wallet not appearing in Solana wallet adapter\n\n**Cause A:** `createSolanaClient` was never called (or was called only inside a component that hasn't mounted). Note that registration happens ~1 second *after* the factory resolves, and the wallet adapter discovers late registrations automatically — so a briefly empty wallet list right after startup is normal.\n\n**Fix:** Call client creation once in your bootstrap. Rendering does not need to block on it:\n\n```typescript\nimport { createSolanaClient } from '@metamask\u002Fconnect-solana';\n\n\u002F\u002F Kick off client creation — no need to await before rendering;\n\u002F\u002F the wallet registers via the wallet-standard register event (~1s later)\nvoid createSolanaClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n});\n\nconst root = createRoot(document.getElementById('root')!);\nroot.render(\u003CApp \u002F>);\n```\n\n**Cause B:** The `wallets` prop on `WalletProvider` is not an empty array. MetaMask uses the wallet-standard auto-discovery protocol and must **not** be listed manually.\n\n**Fix:** Always pass `wallets={[]}`:\n\n```tsx\n\u003CWalletProvider wallets={[]} autoConnect>\n  \u003CWalletModalProvider>\n    \u003CApp \u002F>\n  \u003C\u002FWalletModalProvider>\n\u003C\u002FWalletProvider>\n```\n\n---\n\n### 11. Solana devnet \u002F testnet not working\n\n**Cause:** The SDK models mainnet, devnet, and testnet Solana scopes, but a given cluster's availability depends on the connected MetaMask build\u002Fversion — and public cluster RPC endpoints are frequently rate-limited or flaky.\n\n**Fix:** Confirm the connected wallet actually granted the devnet\u002Ftestnet scope (inspect `session.sessionScopes`), and don't assume a non-mainnet cluster is present — handle the connection error. If the scope is granted but reads fail, the issue is likely an unreliable RPC endpoint; use a dedicated provider instead of the public default:\n\n```typescript\n\u002F\u002F Public endpoints can be rate-limited or unavailable — use a dedicated RPC:\nconst endpoint = 'https:\u002F\u002Fapi.devnet.solana.com'; \u002F\u002F or your own Infura \u002FHelius \u002F QuickNode \u002F Alchemy URL\n```\n\n---\n\n### 12. Session lost after page reload\n\n**Cause:** The app is not re-deriving UI state after the automatic session restore. The EVM client syncs any persisted session **before** `createEVMClient` resolves, then re-emits `connect`\u002F`accountsChanged` on the provider. (The EIP-1193 provider never emits `wallet_sessionChanged` — that event exists only on the multichain client.)\n\n**Fix:** Check the cached state right after client creation, and subscribe to the provider events:\n\n```typescript\nconst client = await createEVMClient({ \u002F* ... *\u002F });\n\n\u002F\u002F Synchronous check — a restored session is already reflected here\nconst account = client.getAccount();\nif (account) {\n  updateUI([account], client.getChainId());\n}\n\nconst provider = client.getProvider();\nprovider.on('connect', ({ accounts, chainId }) => updateUI(accounts, chainId));\nprovider.on('accountsChanged', (accounts) => updateUI(accounts, client.getChainId()));\n```\n\nIf you use the multichain client directly, listen there instead: `client.on('wallet_sessionChanged', (session) => session?.sessionScopes ...)`.\n\nDo not call `connect()` again immediately on page load if a session already exists.\n\n---\n\n### 13. `disconnect()` doesn't fully disconnect\n\n**Cause:** Disconnect behavior differs by client. On the **multichain** client (`createMultichainClient`), `disconnect(scopes)` with specific CAIP scopes only revokes those scopes; `disconnect()` with no arguments revokes all. On the **EVM** client (`createEVMClient`), `disconnect()` takes **no arguments** and revokes only `eip155:*` scopes. On the **Solana** client (`createSolanaClient`), `disconnect()` takes no arguments and revokes only the Solana scopes.\n\n**Fix:** To fully terminate a multichain session, call the multichain client's `disconnect()` with no arguments:\n\n```typescript\n\u002F\u002F Multichain client — partial revoke (only the specified scope)\nawait multichainClient.disconnect(['eip155:1']);\n\n\u002F\u002F Multichain client — full disconnect (all scopes)\nawait multichainClient.disconnect();\n\n\u002F\u002F EVM client — revokes eip155 scopes only (no scope argument)\nawait evmClient.disconnect();\n```\n\n---\n\n### 14. QR code not appearing\n\n**Cause A:** Headless mode is enabled but no `display_uri` listener is registered. The SDK generates the URI but has nowhere to render it.\n\n**Fix:** Register a `displayUri` handler (or a provider `display_uri` listener) **before** calling `connect()`. The EVM client itself has no `.on()` method:\n\n```typescript\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n  api: { supportedNetworks: getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY' }) },\n  ui: { headless: true },\n  eventHandlers: {\n    displayUri: (uri) => renderQrCode(uri), \u002F\u002F your QR rendering logic\n  },\n});\n\n\u002F\u002F Equivalent: client.getProvider().on('display_uri', renderQrCode);\n\nawait client.connect({ chainIds: ['0x1'] });\n```\n\n**Cause B:** The extension is detected and the SDK uses the extension transport instead of MWP. No QR is generated because none is needed.\n\n**Fix:** Force the MWP\u002FQR flow by disabling extension preference:\n\n```typescript\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n  api: { supportedNetworks: getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY' }) },\n  ui: { preferExtension: false },\n});\n```\n\n---\n\n### 15. Extension transport used but want mobile QR\n\n**Cause:** `preferExtension` defaults to `true`. When the MetaMask browser extension is installed, the SDK always prefers it.\n\n**Fix:** Set `ui.preferExtension = false`:\n\n```typescript\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n  api: { supportedNetworks: getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY' }) },\n  ui: { preferExtension: false },\n});\n```\n\n---\n\n### 16. QR code modal blocked by dapp `Content-Security-Policy`\n\n**Cause:** Older versions of the QR modal created a `blob:` URL for the embedded MetaMask icon. If the host page's CSP `connect-src` directive did not include `blob:`, the `XMLHttpRequest` used to build the blob was rejected and the QR image failed to render.\n\n**Fix:** Upgrade to `@metamask\u002Fconnect-multichain ^0.12.1` and `@metamask\u002Fmultichain-ui ^0.4.1` (shipped in connect-monorepo `v30.0.0`). The icon is now embedded as a `data:` URI and `saveAsBlob: false` is set in the QR image options, so no `connect-src blob:` entry is needed:\n\n```bash\nnpm install @metamask\u002Fconnect-multichain@^0.12.1 @metamask\u002Fmultichain-ui@^0.4.1\n# or update @metamask\u002Fconnect-evm to ^0.11.2 \u002F @metamask\u002Fconnect-solana to ^0.8.1\n# which pin the fixed multichain version transitively\n```\n\n---\n\n### 17. `eth_coinbase` returns an array \u002F inconsistent account responses\n\n**Cause:** Before `@metamask\u002Fconnect-evm` 1.3.1, the SDK's intercepted EIP-1193 account requests returned the same accounts array for both `eth_requestAccounts` and `eth_coinbase`. Per spec, `eth_coinbase` should return a single address (`Address`), not an array.\n\n**Fix:** Upgrade to `@metamask\u002Fconnect-evm` ^1.3.1 (connect-monorepo `v35.0.0`). After upgrade, `eth_requestAccounts` resolves to `Address[]` and `eth_coinbase` resolves to the currently selected account (`Address`). Update any code that destructured `eth_coinbase` as an array:\n\n```typescript\nconst accounts = await provider.request({ method: 'eth_requestAccounts' });\nconst coinbase = await provider.request({ method: 'eth_coinbase' });\n\nconsole.log(accounts[0]); \u002F\u002F selected account\nconsole.log(coinbase);    \u002F\u002F same address as accounts[0] — a string, NOT an array\n```\n\n```bash\nnpm install @metamask\u002Fconnect-evm@^1.3.1\n```\n\n---\n\n### 18. `wallet_switchEthereumChain` masks `Unrecognized chain ID` with `No chain configuration found.`\n\n**Cause:** Before `@metamask\u002Fconnect-evm` 1.2.0, calling `client.switchChain({ chainId })` without a `chainConfiguration` fallback (or invoking `wallet_switchEthereumChain` directly) replaced the wallet's original `Unrecognized chain ID` error with the wrapper message `No chain configuration found.`, hiding the underlying `4902` code from the dapp.\n\n**Fix:** Upgrade to `@metamask\u002Fconnect-evm` ^1.2.0 (connect-monorepo `v33.0.0`). The original wallet error (EIP-1193 code `4902`) is now forwarded to the dapp. Handle it explicitly — either retry with a `chainConfiguration` fallback or call `wallet_addEthereumChain`:\n\n```typescript\ntry {\n  await client.switchChain({ chainId: '0xa4b1' });\n} catch (err) {\n  if ((err as { code?: number }).code === 4902) {\n    await client.switchChain({\n      chainId: '0xa4b1',\n      chainConfiguration: {\n        chainId: '0xa4b1',\n        chainName: 'Arbitrum One',\n        rpcUrls: ['https:\u002F\u002Farb1.arbitrum.io\u002Frpc'],\n        nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },\n      },\n    });\n    return;\n  }\n  throw err;\n}\n```\n\nDo not pattern-match on the legacy `\"No chain configuration found\"` string — that branch will never fire after the upgrade.\n\n---\n\n### 19. Analytics `_rejected` count looks artificially high \u002F `wallet_unauthorized` mis-classified\n\n**Cause:** Before `@metamask\u002Fconnect-multichain` 0.14.0, the `isRejectionError` helper that drives the `mmconnect_wallet_action_rejected` analytics event treated EIP-1193 `4100 Unauthorized` (a CAIP-25 permission denial) as a user rejection, matched any error message containing the bare substring `\"user\"` (catching unrelated phrases like Account Abstraction's `\"user operation reverted\"`), and masked wallet-side codes behind the router's transport-boundary wrapper (`code: 53`).\n\n**Fix:** Upgrade to `@metamask\u002Fconnect-multichain` ^0.14.0 (connect-monorepo `v34.0.0`). The classifier now:\n\n- Unwraps `RPCInvokeMethodErr` so wallet-side codes survive the router boundary\n- No longer counts `4100 wallet_unauthorized` as a rejection — it's a permission denial, surfaced under `mmconnect_wallet_action_failed` instead\n- Narrows the substring match to four explicit phrases: `\"user rejected\"`, `\"user denied\"`, `\"user cancelled\"`, `\"user canceled\"`\n\nNet effect: `_rejected` becomes more precise, and `_failed` picks up everything `4100` was previously hiding. Update analytics dashboards \u002F alerts that compared `_rejected` counts across the 0.13.x → 0.14.0 boundary — expect `_rejected` to drop and `_failed` to rise without an underlying behavior change.\n\nThe same release adds three optional companion fields on `mmconnect_wallet_action_failed` and `mmconnect_connection_failed`:\n\n- `failure_reason` — coarse classifier (transport timeout, transport disconnect, EIP-1193 wallet errors `4100` \u002F `4200` \u002F `4902`, JSON-RPC wallet errors `-32601` \u002F `-32602` \u002F `-32603` and `-32000…-32099`, or `unknown`)\n- `error_code` — raw wallet-side JSON-RPC \u002F EIP-1193 code (e.g. `4001`, `-32603`)\n- `error_message_sample` — sanitised, 200-char-max preview of the original error message (wallet addresses, hex blobs, URLs, and large decimal numbers scrubbed)\n\nUse these for finer triage in analytics consumers:\n\n```bash\nnpm install @metamask\u002Fconnect-multichain@^0.14.0\n# or update @metamask\u002Fconnect-evm to ^1.3.0 \u002F @metamask\u002Fconnect-solana to ^1.1.0\n# which pin the fixed multichain version transitively\n```\n\n---\n\n### 20. Module-not-found \u002F peer-version warning for `@metamask\u002Fconnect-multichain` after upgrading to `connect-evm` 2.0.0 or `connect-solana` 2.0.0\n\n**Cause:** You are on the 2.0.0 releases of `@metamask\u002Fconnect-evm`\u002F`@metamask\u002Fconnect-solana`, which (only in that version) made `@metamask\u002Fconnect-multichain` a **peer dependency** that was not installed transitively. 2.1.0 reverted this — `@metamask\u002Fconnect-multichain` is a regular dependency again. If a wrong or duplicate version is resolved, the SDK logs a runtime warning about a version mismatch or duplicate `@metamask\u002Fconnect-multichain` resolutions.\n\n**Fix:** Add it explicitly to your own `dependencies`:\n\n```bash\nnpm install @metamask\u002Fconnect-multichain@^1.0.0\n```\n\n- Ensure a **single** `@metamask\u002Fconnect-multichain` resolves in your tree — `npm ls @metamask\u002Fconnect-multichain` (or `yarn why` \u002F `pnpm why`) should show one `1.x` version. Deduplicate (e.g. `npm dedupe`) if two copies appear, since duplicate resolutions trigger the runtime warning and can break singleton\u002Fsession sharing.\n- `@metamask\u002Fconnect-multichain` is now a stable 1.0 package following strict semver, so `^1.0.0` is safe for all current ecosystem packages.\n\n---\n\n### 21. MMConnect provider shows up twice in wallet discovery, or the wrong provider is selected\n\n**Cause:** Since `@metamask\u002Fconnect-evm` 2.0.0, the MMConnect-managed EIP-1193 provider is announced through EIP-6963 **by default** (when native MetaMask hasn't already announced). If your app also announces a provider manually, or a discovery library (RainbowKit \u002F ConnectKit \u002F Web3Modal \u002F wagmi) re-announces, you can end up with a duplicate MetaMask-style entry.\n\n**Fix:**\n\n- Pass `skipAutoAnnounce: true` to `createEVMClient()` to suppress the automatic announcement when you want to control discovery yourself, then call `client.announceProvider()` exactly when you need to surface it.\n- Do **not** manually re-emit `eip6963:announceProvider` for the MMConnect provider in addition to the SDK — let the SDK own it, or use `skipAutoAnnounce` + `announceProvider()`, not both.\n- Note the SDK restricts EIP-6963 extension detection to native MetaMask RDNS values, so the MMConnect-managed provider will not be mistaken for — or select — the browser-extension transport.\n\n---\n\n## Diagnostic Checklist\n\nRun through this checklist when any MetaMask Connect integration is misbehaving:\n\n- [ ] **`supportedNetworks` has valid RPC URLs** — every chain the dApp uses must have an entry with a reachable URL\n- [ ] **Chain IDs are hex strings for EVM** — use `'0x1'` not `1` or `'1'`\n- [ ] **Polyfills loaded (React Native)** — `react-native-get-random-values` is first entry-file import (required for RN \u003C 0.72); `window` shim present (required for all); `Event`\u002F`CustomEvent` shims present **only if using wagmi**; `Buffer` set as safety net for peer deps\n- [ ] **`preferredOpenLink` set (React Native)** — required for deeplinks to open MetaMask Mobile\n- [ ] **Import order correct** — polyfills before SDK imports; `react-native-get-random-values` is the very first import\n- [ ] **Error codes handled in catch blocks** — at minimum handle `4001` (user rejected) and `-32002` (pending)\n- [ ] **Client not recreated per render** — call `createEVMClient` \u002F `createMultichainClient` \u002F `createSolanaClient` once; the shared multichain core is the singleton (its options merge), but each `create*Client` call still returns a fresh wrapper\n- [ ] **`display_uri` listener registered before `connect()`** — required in headless mode for QR codes\n- [ ] **Solana `wallets` prop is `[]`** — MetaMask uses wallet-standard discovery, not manual registration\n- [ ] **Solana network availability checked** — mainnet\u002Fdevnet\u002Ftestnet scopes are all modeled by the SDK; don't assume a non-mainnet cluster is available on the connected wallet — handle connection errors\n- [ ] **Analytics consumers use `failure_reason` \u002F `error_code` \u002F `error_message_sample`** — for `mmconnect_wallet_action_failed` \u002F `mmconnect_connection_failed` triage (added in `@metamask\u002Fconnect-multichain` 0.14.0); expect `_rejected` counts to drop and `_failed` counts to rise after upgrading past 0.13.x\n\n## Important Notes\n\n- Always check the **error code** first — it tells you the category of failure before you need to inspect the message.\n- Use typed error classes from `@metamask\u002Fconnect-multichain` for granular `instanceof` checks: `RPCInvokeMethodErr` (wallet errors from `invokeMethod` — original wallet code on `rpcCode`, revert data on `rpcData`), `RPCHttpErr` \u002F `RPCReadonlyResponseErr` \u002F `RPCReadonlyRequestErr` (RPC-node-routed read calls).\n- The underlying multichain core is a **singleton**: `createMultichainClient` merges options into the shared core, and `createEVMClient` \u002F `createSolanaClient` build chain-specific wrappers on top of it. Each `create*Client` call returns a fresh wrapper, so call it once at startup and reuse — do not wrap it in a React component render cycle.\n- **Extension detection is synchronous** but **MWP connection is asynchronous** — if the extension is not installed, expect the flow to involve QR scanning or deeplinks with noticeable latency.\n- In React Native, **import order matters critically**. `react-native-get-random-values` must be the very first import in the entry file (not inside `polyfills.ts`). The connect-* packages do not use DOM `Event`\u002F`CustomEvent` — those polyfills are only needed when also using wagmi. `@metamask\u002Fconnect-multichain` self-polyfills `Buffer` but set `global.Buffer` early as a safety net for peer deps.\n- When debugging, enable `debug: true` in the client options to get verbose console output from the SDK internals.\n",{"data":33,"body":34},{"name":4,"description":6},{"type":35,"children":36},"root",[37,46,53,59,94,100,104,118,153,175,192,231,234,248,258,267,510,513,525,541,564,567,579,635,651,964,967,989,1022,1047,1127,1130,1150,1191,1221,1620,1625,1628,1634,1651,1667,1916,1919,1925,1992,2016,2675,2687,2690,2703,2718,2734,2772,2775,2781,2804,2813,3104,3134,3150,3267,3270,3276,3285,3302,3356,3359,3365,3410,3419,3816,3828,3840,3843,3857,3949,3965,4113,4116,4122,4138,4182,4570,4579,4588,4812,4815,4821,4843,4859,5080,5083,5095,5135,5192,5240,5243,5257,5303,5361,5591,5614,5617,5644,5704,5748,6231,6244,6247,6269,6332,6355,6424,6473,6491,6595,6600,6638,6641,6670,6720,6736,6759,6837,6840,6846,6869,6876,6948,6951,6957,6962,7331,7337,7554],{"type":38,"tag":39,"props":40,"children":42},"element","h1",{"id":41},"troubleshoot-metamask-connect-issues",[43],{"type":44,"value":45},"text","Troubleshoot MetaMask Connect Issues",{"type":38,"tag":47,"props":48,"children":50},"h2",{"id":49},"when-to-use",[51],{"type":44,"value":52},"When to use",{"type":38,"tag":54,"props":55,"children":56},"p",{},[57],{"type":44,"value":58},"Use this skill when:",{"type":38,"tag":60,"props":61,"children":62},"ul",{},[63,69,74,79,84,89],{"type":38,"tag":64,"props":65,"children":66},"li",{},[67],{"type":44,"value":68},"A connection attempt hangs, fails, or produces an unexpected error",{"type":38,"tag":64,"props":70,"children":71},{},[72],{"type":44,"value":73},"React Native apps crash on import or at runtime with missing polyfill errors",{"type":38,"tag":64,"props":75,"children":76},{},[77],{"type":44,"value":78},"QR codes don't appear or deeplinks don't open MetaMask Mobile",{"type":38,"tag":64,"props":80,"children":81},{},[82],{"type":44,"value":83},"Solana wallet adapter doesn't detect MetaMask",{"type":38,"tag":64,"props":85,"children":86},{},[87],{"type":44,"value":88},"Sessions are lost after page reload or disconnect behaves unexpectedly",{"type":38,"tag":64,"props":90,"children":91},{},[92],{"type":44,"value":93},"You need a systematic checklist to verify a MetaMask Connect integration",{"type":38,"tag":47,"props":95,"children":97},{"id":96},"symptom-cause-fix-reference",[98],{"type":44,"value":99},"Symptom -> Cause -> Fix Reference",{"type":38,"tag":101,"props":102,"children":103},"hr",{},[],{"type":38,"tag":105,"props":106,"children":108},"h3",{"id":107},"_1-connection-hangs-nothing-happens-after-connect",[109,111],{"type":44,"value":110},"1. Connection hangs \u002F nothing happens after ",{"type":38,"tag":112,"props":113,"children":115},"code",{"className":114},[],[116],{"type":44,"value":117},"connect()",{"type":38,"tag":54,"props":119,"children":120},{},[121,127,129,135,137,143,145,151],{"type":38,"tag":122,"props":123,"children":124},"strong",{},[125],{"type":44,"value":126},"Cause A:",{"type":44,"value":128}," Extension not detected but ",{"type":38,"tag":112,"props":130,"children":132},{"className":131},[],[133],{"type":44,"value":134},"preferExtension",{"type":44,"value":136}," is ",{"type":38,"tag":112,"props":138,"children":140},{"className":139},[],[141],{"type":44,"value":142},"true",{"type":44,"value":144}," (the default). The SDK falls through to MetaMask Wallet Protocol (MWP) but no QR code is rendered because headless mode is on and there is no ",{"type":38,"tag":112,"props":146,"children":148},{"className":147},[],[149],{"type":44,"value":150},"display_uri",{"type":44,"value":152}," listener.",{"type":38,"tag":54,"props":154,"children":155},{},[156,161,163,168,170],{"type":38,"tag":122,"props":157,"children":158},{},[159],{"type":44,"value":160},"Fix:",{"type":44,"value":162}," Register a ",{"type":38,"tag":112,"props":164,"children":166},{"className":165},[],[167],{"type":44,"value":150},{"type":44,"value":169}," event listener to render the QR code URI before calling ",{"type":38,"tag":112,"props":171,"children":173},{"className":172},[],[174],{"type":44,"value":117},{"type":38,"tag":54,"props":176,"children":177},{},[178,183,185,190],{"type":38,"tag":122,"props":179,"children":180},{},[181],{"type":44,"value":182},"Cause B:",{"type":44,"value":184}," A concurrent ",{"type":38,"tag":112,"props":186,"children":188},{"className":187},[],[189],{"type":44,"value":117},{"type":44,"value":191}," call is already in progress over MWP.",{"type":38,"tag":54,"props":193,"children":194},{},[195,199,201,206,208,214,216,221,223,229],{"type":38,"tag":122,"props":196,"children":197},{},[198],{"type":44,"value":160},{"type":44,"value":200}," Guard against double-clicking. Wrap ",{"type":38,"tag":112,"props":202,"children":204},{"className":203},[],[205],{"type":44,"value":117},{"type":44,"value":207}," in a loading-state check and match on the ",{"type":38,"tag":112,"props":209,"children":211},{"className":210},[],[212],{"type":44,"value":213},"\"Existing connection is pending\"",{"type":44,"value":215}," error message — on MWP this error has ",{"type":38,"tag":122,"props":217,"children":218},{},[219],{"type":44,"value":220},"no numeric code",{"type":44,"value":222},". (",{"type":38,"tag":112,"props":224,"children":226},{"className":225},[],[227],{"type":44,"value":228},"-32002",{"type":44,"value":230}," only appears on the extension transport.)",{"type":38,"tag":101,"props":232,"children":233},{},[],{"type":38,"tag":105,"props":235,"children":237},{"id":236},"_2-user-rejected-request-code-4001",[238,240,246],{"type":44,"value":239},"2. User rejected request (code ",{"type":38,"tag":112,"props":241,"children":243},{"className":242},[],[244],{"type":44,"value":245},"4001",{"type":44,"value":247},")",{"type":38,"tag":54,"props":249,"children":250},{},[251,256],{"type":38,"tag":122,"props":252,"children":253},{},[254],{"type":44,"value":255},"Cause:",{"type":44,"value":257}," The user clicked \"Reject\" in MetaMask. This is normal behavior.",{"type":38,"tag":54,"props":259,"children":260},{},[261,265],{"type":38,"tag":122,"props":262,"children":263},{},[264],{"type":44,"value":160},{"type":44,"value":266}," Handle gracefully — show a retry button. Do not treat this as an application error or log it to error-tracking services:",{"type":38,"tag":268,"props":269,"children":274},"pre",{"className":270,"code":271,"language":272,"meta":273,"style":273},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","try {\n  await client.connect({ chainIds: ['0x1'] });\n} catch (err) {\n  if (err.code === 4001) {\n    \u002F\u002F User rejected — show retry UI\n    return;\n  }\n  throw err;\n}\n","typescript","",[275],{"type":38,"tag":112,"props":276,"children":277},{"__ignoreMap":273},[278,296,381,404,451,461,474,483,501],{"type":38,"tag":279,"props":280,"children":283},"span",{"class":281,"line":282},"line",1,[284,290],{"type":38,"tag":279,"props":285,"children":287},{"style":286},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[288],{"type":44,"value":289},"try",{"type":38,"tag":279,"props":291,"children":293},{"style":292},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[294],{"type":44,"value":295}," {\n",{"type":38,"tag":279,"props":297,"children":298},{"class":281,"line":22},[299,304,310,315,321,327,332,337,342,347,352,358,362,367,372,376],{"type":38,"tag":279,"props":300,"children":301},{"style":286},[302],{"type":44,"value":303},"  await",{"type":38,"tag":279,"props":305,"children":307},{"style":306},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[308],{"type":44,"value":309}," client",{"type":38,"tag":279,"props":311,"children":312},{"style":292},[313],{"type":44,"value":314},".",{"type":38,"tag":279,"props":316,"children":318},{"style":317},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[319],{"type":44,"value":320},"connect",{"type":38,"tag":279,"props":322,"children":324},{"style":323},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[325],{"type":44,"value":326},"(",{"type":38,"tag":279,"props":328,"children":329},{"style":292},[330],{"type":44,"value":331},"{",{"type":38,"tag":279,"props":333,"children":334},{"style":323},[335],{"type":44,"value":336}," chainIds",{"type":38,"tag":279,"props":338,"children":339},{"style":292},[340],{"type":44,"value":341},":",{"type":38,"tag":279,"props":343,"children":344},{"style":323},[345],{"type":44,"value":346}," [",{"type":38,"tag":279,"props":348,"children":349},{"style":292},[350],{"type":44,"value":351},"'",{"type":38,"tag":279,"props":353,"children":355},{"style":354},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[356],{"type":44,"value":357},"0x1",{"type":38,"tag":279,"props":359,"children":360},{"style":292},[361],{"type":44,"value":351},{"type":38,"tag":279,"props":363,"children":364},{"style":323},[365],{"type":44,"value":366},"] ",{"type":38,"tag":279,"props":368,"children":369},{"style":292},[370],{"type":44,"value":371},"}",{"type":38,"tag":279,"props":373,"children":374},{"style":323},[375],{"type":44,"value":247},{"type":38,"tag":279,"props":377,"children":378},{"style":292},[379],{"type":44,"value":380},";\n",{"type":38,"tag":279,"props":382,"children":384},{"class":281,"line":383},3,[385,389,394,399],{"type":38,"tag":279,"props":386,"children":387},{"style":292},[388],{"type":44,"value":371},{"type":38,"tag":279,"props":390,"children":391},{"style":286},[392],{"type":44,"value":393}," catch",{"type":38,"tag":279,"props":395,"children":396},{"style":306},[397],{"type":44,"value":398}," (err) ",{"type":38,"tag":279,"props":400,"children":401},{"style":292},[402],{"type":44,"value":403},"{\n",{"type":38,"tag":279,"props":405,"children":407},{"class":281,"line":406},4,[408,413,418,423,427,431,436,442,447],{"type":38,"tag":279,"props":409,"children":410},{"style":286},[411],{"type":44,"value":412},"  if",{"type":38,"tag":279,"props":414,"children":415},{"style":323},[416],{"type":44,"value":417}," (",{"type":38,"tag":279,"props":419,"children":420},{"style":306},[421],{"type":44,"value":422},"err",{"type":38,"tag":279,"props":424,"children":425},{"style":292},[426],{"type":44,"value":314},{"type":38,"tag":279,"props":428,"children":429},{"style":306},[430],{"type":44,"value":112},{"type":38,"tag":279,"props":432,"children":433},{"style":292},[434],{"type":44,"value":435}," ===",{"type":38,"tag":279,"props":437,"children":439},{"style":438},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[440],{"type":44,"value":441}," 4001",{"type":38,"tag":279,"props":443,"children":444},{"style":323},[445],{"type":44,"value":446},") ",{"type":38,"tag":279,"props":448,"children":449},{"style":292},[450],{"type":44,"value":403},{"type":38,"tag":279,"props":452,"children":454},{"class":281,"line":453},5,[455],{"type":38,"tag":279,"props":456,"children":458},{"style":457},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[459],{"type":44,"value":460},"    \u002F\u002F User rejected — show retry UI\n",{"type":38,"tag":279,"props":462,"children":464},{"class":281,"line":463},6,[465,470],{"type":38,"tag":279,"props":466,"children":467},{"style":286},[468],{"type":44,"value":469},"    return",{"type":38,"tag":279,"props":471,"children":472},{"style":292},[473],{"type":44,"value":380},{"type":38,"tag":279,"props":475,"children":477},{"class":281,"line":476},7,[478],{"type":38,"tag":279,"props":479,"children":480},{"style":292},[481],{"type":44,"value":482},"  }\n",{"type":38,"tag":279,"props":484,"children":486},{"class":281,"line":485},8,[487,492,497],{"type":38,"tag":279,"props":488,"children":489},{"style":286},[490],{"type":44,"value":491},"  throw",{"type":38,"tag":279,"props":493,"children":494},{"style":306},[495],{"type":44,"value":496}," err",{"type":38,"tag":279,"props":498,"children":499},{"style":292},[500],{"type":44,"value":380},{"type":38,"tag":279,"props":502,"children":504},{"class":281,"line":503},9,[505],{"type":38,"tag":279,"props":506,"children":507},{"style":292},[508],{"type":44,"value":509},"}\n",{"type":38,"tag":101,"props":511,"children":512},{},[],{"type":38,"tag":105,"props":514,"children":516},{"id":515},"_3-connection-already-pending-code-32002",[517,519,524],{"type":44,"value":518},"3. Connection already pending (code ",{"type":38,"tag":112,"props":520,"children":522},{"className":521},[],[523],{"type":44,"value":228},{"type":44,"value":247},{"type":38,"tag":54,"props":526,"children":527},{},[528,532,534,539],{"type":38,"tag":122,"props":529,"children":530},{},[531],{"type":44,"value":255},{"type":44,"value":533}," A previous ",{"type":38,"tag":112,"props":535,"children":537},{"className":536},[],[538],{"type":44,"value":117},{"type":44,"value":540}," call has not yet resolved (the user may still have the MetaMask approval dialog open on mobile).",{"type":38,"tag":54,"props":542,"children":543},{},[544,548,550,555,557,562],{"type":38,"tag":122,"props":545,"children":546},{},[547],{"type":44,"value":160},{"type":44,"value":549}," Show a message like \"Check MetaMask Mobile to approve the connection.\" Do ",{"type":38,"tag":122,"props":551,"children":552},{},[553],{"type":44,"value":554},"not",{"type":44,"value":556}," call ",{"type":38,"tag":112,"props":558,"children":560},{"className":559},[],[561],{"type":44,"value":117},{"type":44,"value":563}," again — the original promise will resolve once the user acts.",{"type":38,"tag":101,"props":565,"children":566},{},[],{"type":38,"tag":105,"props":568,"children":570},{"id":569},"_4-chain-not-configured-in-supportednetworks",[571,573],{"type":44,"value":572},"4. Chain not configured in ",{"type":38,"tag":112,"props":574,"children":576},{"className":575},[],[577],{"type":44,"value":578},"supportedNetworks",{"type":38,"tag":54,"props":580,"children":581},{},[582,586,588,594,596,602,604,610,612,617,619,625,627,633],{"type":38,"tag":122,"props":583,"children":584},{},[585],{"type":44,"value":255},{"type":44,"value":587}," An RPC request was made on a chain whose CAIP scope is missing from ",{"type":38,"tag":112,"props":589,"children":591},{"className":590},[],[592],{"type":44,"value":593},"api.supportedNetworks",{"type":44,"value":595},". This error is thrown by the EIP-1193 provider's ",{"type":38,"tag":112,"props":597,"children":599},{"className":598},[],[600],{"type":44,"value":601},"request()",{"type":44,"value":603}," path for the ",{"type":38,"tag":605,"props":606,"children":607},"em",{},[608],{"type":44,"value":609},"active",{"type":44,"value":611}," chain's node-routed reads — not by ",{"type":38,"tag":112,"props":613,"children":615},{"className":614},[],[616],{"type":44,"value":117},{"type":44,"value":618}," (which only checks ",{"type":38,"tag":112,"props":620,"children":622},{"className":621},[],[623],{"type":44,"value":624},"chainIds",{"type":44,"value":626}," is non-empty) and not by ",{"type":38,"tag":112,"props":628,"children":630},{"className":629},[],[631],{"type":44,"value":632},"wallet_switchEthereumChain",{"type":44,"value":634}," (forwarded to the wallet).",{"type":38,"tag":54,"props":636,"children":637},{},[638,642,644,649],{"type":38,"tag":122,"props":639,"children":640},{},[641],{"type":44,"value":160},{"type":44,"value":643}," Add every chain the dApp needs to ",{"type":38,"tag":112,"props":645,"children":647},{"className":646},[],[648],{"type":44,"value":578},{"type":44,"value":650}," with a valid RPC URL:",{"type":38,"tag":268,"props":652,"children":654},{"className":270,"code":653,"language":272,"meta":273,"style":273},"const client = await createEVMClient({\n  dapp: { name: 'My DApp' },\n  api: {\n    supportedNetworks: {\n      ...getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY', chainIds: ['0x1', '0x89', '0xaa36a7'] }),\n      '0xa4b1': 'https:\u002F\u002Farb1.arbitrum.io\u002Frpc',\n    },\n  },\n});\n",[655],{"type":38,"tag":112,"props":656,"children":657},{"__ignoreMap":273},[658,695,740,756,772,895,933,941,949],{"type":38,"tag":279,"props":659,"children":660},{"class":281,"line":282},[661,667,672,677,682,687,691],{"type":38,"tag":279,"props":662,"children":664},{"style":663},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[665],{"type":44,"value":666},"const",{"type":38,"tag":279,"props":668,"children":669},{"style":306},[670],{"type":44,"value":671}," client ",{"type":38,"tag":279,"props":673,"children":674},{"style":292},[675],{"type":44,"value":676},"=",{"type":38,"tag":279,"props":678,"children":679},{"style":286},[680],{"type":44,"value":681}," await",{"type":38,"tag":279,"props":683,"children":684},{"style":317},[685],{"type":44,"value":686}," createEVMClient",{"type":38,"tag":279,"props":688,"children":689},{"style":306},[690],{"type":44,"value":326},{"type":38,"tag":279,"props":692,"children":693},{"style":292},[694],{"type":44,"value":403},{"type":38,"tag":279,"props":696,"children":697},{"class":281,"line":22},[698,703,707,712,717,721,726,731,735],{"type":38,"tag":279,"props":699,"children":700},{"style":323},[701],{"type":44,"value":702},"  dapp",{"type":38,"tag":279,"props":704,"children":705},{"style":292},[706],{"type":44,"value":341},{"type":38,"tag":279,"props":708,"children":709},{"style":292},[710],{"type":44,"value":711}," {",{"type":38,"tag":279,"props":713,"children":714},{"style":323},[715],{"type":44,"value":716}," name",{"type":38,"tag":279,"props":718,"children":719},{"style":292},[720],{"type":44,"value":341},{"type":38,"tag":279,"props":722,"children":723},{"style":292},[724],{"type":44,"value":725}," '",{"type":38,"tag":279,"props":727,"children":728},{"style":354},[729],{"type":44,"value":730},"My DApp",{"type":38,"tag":279,"props":732,"children":733},{"style":292},[734],{"type":44,"value":351},{"type":38,"tag":279,"props":736,"children":737},{"style":292},[738],{"type":44,"value":739}," },\n",{"type":38,"tag":279,"props":741,"children":742},{"class":281,"line":383},[743,748,752],{"type":38,"tag":279,"props":744,"children":745},{"style":323},[746],{"type":44,"value":747},"  api",{"type":38,"tag":279,"props":749,"children":750},{"style":292},[751],{"type":44,"value":341},{"type":38,"tag":279,"props":753,"children":754},{"style":292},[755],{"type":44,"value":295},{"type":38,"tag":279,"props":757,"children":758},{"class":281,"line":406},[759,764,768],{"type":38,"tag":279,"props":760,"children":761},{"style":323},[762],{"type":44,"value":763},"    supportedNetworks",{"type":38,"tag":279,"props":765,"children":766},{"style":292},[767],{"type":44,"value":341},{"type":38,"tag":279,"props":769,"children":770},{"style":292},[771],{"type":44,"value":295},{"type":38,"tag":279,"props":773,"children":774},{"class":281,"line":453},[775,780,785,789,793,798,802,806,811,815,820,824,828,832,836,840,844,848,852,857,861,865,869,874,878,882,886,890],{"type":38,"tag":279,"props":776,"children":777},{"style":292},[778],{"type":44,"value":779},"      ...",{"type":38,"tag":279,"props":781,"children":782},{"style":317},[783],{"type":44,"value":784},"getInfuraRpcUrls",{"type":38,"tag":279,"props":786,"children":787},{"style":306},[788],{"type":44,"value":326},{"type":38,"tag":279,"props":790,"children":791},{"style":292},[792],{"type":44,"value":331},{"type":38,"tag":279,"props":794,"children":795},{"style":323},[796],{"type":44,"value":797}," infuraApiKey",{"type":38,"tag":279,"props":799,"children":800},{"style":292},[801],{"type":44,"value":341},{"type":38,"tag":279,"props":803,"children":804},{"style":292},[805],{"type":44,"value":725},{"type":38,"tag":279,"props":807,"children":808},{"style":354},[809],{"type":44,"value":810},"YOUR_INFURA_KEY",{"type":38,"tag":279,"props":812,"children":813},{"style":292},[814],{"type":44,"value":351},{"type":38,"tag":279,"props":816,"children":817},{"style":292},[818],{"type":44,"value":819},",",{"type":38,"tag":279,"props":821,"children":822},{"style":323},[823],{"type":44,"value":336},{"type":38,"tag":279,"props":825,"children":826},{"style":292},[827],{"type":44,"value":341},{"type":38,"tag":279,"props":829,"children":830},{"style":306},[831],{"type":44,"value":346},{"type":38,"tag":279,"props":833,"children":834},{"style":292},[835],{"type":44,"value":351},{"type":38,"tag":279,"props":837,"children":838},{"style":354},[839],{"type":44,"value":357},{"type":38,"tag":279,"props":841,"children":842},{"style":292},[843],{"type":44,"value":351},{"type":38,"tag":279,"props":845,"children":846},{"style":292},[847],{"type":44,"value":819},{"type":38,"tag":279,"props":849,"children":850},{"style":292},[851],{"type":44,"value":725},{"type":38,"tag":279,"props":853,"children":854},{"style":354},[855],{"type":44,"value":856},"0x89",{"type":38,"tag":279,"props":858,"children":859},{"style":292},[860],{"type":44,"value":351},{"type":38,"tag":279,"props":862,"children":863},{"style":292},[864],{"type":44,"value":819},{"type":38,"tag":279,"props":866,"children":867},{"style":292},[868],{"type":44,"value":725},{"type":38,"tag":279,"props":870,"children":871},{"style":354},[872],{"type":44,"value":873},"0xaa36a7",{"type":38,"tag":279,"props":875,"children":876},{"style":292},[877],{"type":44,"value":351},{"type":38,"tag":279,"props":879,"children":880},{"style":306},[881],{"type":44,"value":366},{"type":38,"tag":279,"props":883,"children":884},{"style":292},[885],{"type":44,"value":371},{"type":38,"tag":279,"props":887,"children":888},{"style":306},[889],{"type":44,"value":247},{"type":38,"tag":279,"props":891,"children":892},{"style":292},[893],{"type":44,"value":894},",\n",{"type":38,"tag":279,"props":896,"children":897},{"class":281,"line":463},[898,903,908,912,916,920,925,929],{"type":38,"tag":279,"props":899,"children":900},{"style":292},[901],{"type":44,"value":902},"      '",{"type":38,"tag":279,"props":904,"children":905},{"style":323},[906],{"type":44,"value":907},"0xa4b1",{"type":38,"tag":279,"props":909,"children":910},{"style":292},[911],{"type":44,"value":351},{"type":38,"tag":279,"props":913,"children":914},{"style":292},[915],{"type":44,"value":341},{"type":38,"tag":279,"props":917,"children":918},{"style":292},[919],{"type":44,"value":725},{"type":38,"tag":279,"props":921,"children":922},{"style":354},[923],{"type":44,"value":924},"https:\u002F\u002Farb1.arbitrum.io\u002Frpc",{"type":38,"tag":279,"props":926,"children":927},{"style":292},[928],{"type":44,"value":351},{"type":38,"tag":279,"props":930,"children":931},{"style":292},[932],{"type":44,"value":894},{"type":38,"tag":279,"props":934,"children":935},{"class":281,"line":476},[936],{"type":38,"tag":279,"props":937,"children":938},{"style":292},[939],{"type":44,"value":940},"    },\n",{"type":38,"tag":279,"props":942,"children":943},{"class":281,"line":485},[944],{"type":38,"tag":279,"props":945,"children":946},{"style":292},[947],{"type":44,"value":948},"  },\n",{"type":38,"tag":279,"props":950,"children":951},{"class":281,"line":503},[952,956,960],{"type":38,"tag":279,"props":953,"children":954},{"style":292},[955],{"type":44,"value":371},{"type":38,"tag":279,"props":957,"children":958},{"style":306},[959],{"type":44,"value":247},{"type":38,"tag":279,"props":961,"children":962},{"style":292},[963],{"type":44,"value":380},{"type":38,"tag":101,"props":965,"children":966},{},[],{"type":38,"tag":105,"props":968,"children":970},{"id":969},"_5-cannot-find-variable-buffer-buffer-is-not-defined-react-native",[971,973,979,981,987],{"type":44,"value":972},"5. ",{"type":38,"tag":112,"props":974,"children":976},{"className":975},[],[977],{"type":44,"value":978},"Cannot find variable: Buffer",{"type":44,"value":980}," \u002F ",{"type":38,"tag":112,"props":982,"children":984},{"className":983},[],[985],{"type":44,"value":986},"Buffer is not defined",{"type":44,"value":988}," (React Native)",{"type":38,"tag":54,"props":990,"children":991},{},[992,996,998,1004,1006,1012,1014,1020],{"type":38,"tag":122,"props":993,"children":994},{},[995],{"type":44,"value":255},{"type":44,"value":997}," A dependency loaded before ",{"type":38,"tag":112,"props":999,"children":1001},{"className":1000},[],[1002],{"type":44,"value":1003},"@metamask\u002Fconnect-multichain",{"type":44,"value":1005}," uses ",{"type":38,"tag":112,"props":1007,"children":1009},{"className":1008},[],[1010],{"type":44,"value":1011},"Buffer",{"type":44,"value":1013},". The connect package self-polyfills Buffer via its React Native entry point, but peer dependencies like ",{"type":38,"tag":112,"props":1015,"children":1017},{"className":1016},[],[1018],{"type":44,"value":1019},"eciesjs",{"type":44,"value":1021}," may execute first.",{"type":38,"tag":54,"props":1023,"children":1024},{},[1025,1029,1031,1037,1039,1045],{"type":38,"tag":122,"props":1026,"children":1027},{},[1028],{"type":44,"value":160},{"type":44,"value":1030}," Add this to ",{"type":38,"tag":112,"props":1032,"children":1034},{"className":1033},[],[1035],{"type":44,"value":1036},"polyfills.ts",{"type":44,"value":1038}," and import it early (after ",{"type":38,"tag":112,"props":1040,"children":1042},{"className":1041},[],[1043],{"type":44,"value":1044},"react-native-get-random-values",{"type":44,"value":1046},", before other imports):",{"type":38,"tag":268,"props":1048,"children":1050},{"className":270,"code":1049,"language":272,"meta":273,"style":273},"import { Buffer } from 'buffer';\nglobal.Buffer = Buffer;\n",[1051],{"type":38,"tag":112,"props":1052,"children":1053},{"__ignoreMap":273},[1054,1098],{"type":38,"tag":279,"props":1055,"children":1056},{"class":281,"line":282},[1057,1062,1066,1071,1076,1081,1085,1090,1094],{"type":38,"tag":279,"props":1058,"children":1059},{"style":286},[1060],{"type":44,"value":1061},"import",{"type":38,"tag":279,"props":1063,"children":1064},{"style":292},[1065],{"type":44,"value":711},{"type":38,"tag":279,"props":1067,"children":1068},{"style":306},[1069],{"type":44,"value":1070}," Buffer",{"type":38,"tag":279,"props":1072,"children":1073},{"style":292},[1074],{"type":44,"value":1075}," }",{"type":38,"tag":279,"props":1077,"children":1078},{"style":286},[1079],{"type":44,"value":1080}," from",{"type":38,"tag":279,"props":1082,"children":1083},{"style":292},[1084],{"type":44,"value":725},{"type":38,"tag":279,"props":1086,"children":1087},{"style":354},[1088],{"type":44,"value":1089},"buffer",{"type":38,"tag":279,"props":1091,"children":1092},{"style":292},[1093],{"type":44,"value":351},{"type":38,"tag":279,"props":1095,"children":1096},{"style":292},[1097],{"type":44,"value":380},{"type":38,"tag":279,"props":1099,"children":1100},{"class":281,"line":22},[1101,1106,1110,1115,1119,1123],{"type":38,"tag":279,"props":1102,"children":1103},{"style":306},[1104],{"type":44,"value":1105},"global",{"type":38,"tag":279,"props":1107,"children":1108},{"style":292},[1109],{"type":44,"value":314},{"type":38,"tag":279,"props":1111,"children":1112},{"style":306},[1113],{"type":44,"value":1114},"Buffer ",{"type":38,"tag":279,"props":1116,"children":1117},{"style":292},[1118],{"type":44,"value":676},{"type":38,"tag":279,"props":1120,"children":1121},{"style":306},[1122],{"type":44,"value":1070},{"type":38,"tag":279,"props":1124,"children":1125},{"style":292},[1126],{"type":44,"value":380},{"type":38,"tag":101,"props":1128,"children":1129},{},[],{"type":38,"tag":105,"props":1131,"children":1133},{"id":1132},"_6-cannot-find-variable-event-customevent-is-not-defined-react-native",[1134,1136,1142,1143,1149],{"type":44,"value":1135},"6. ",{"type":38,"tag":112,"props":1137,"children":1139},{"className":1138},[],[1140],{"type":44,"value":1141},"Cannot find variable: Event",{"type":44,"value":980},{"type":38,"tag":112,"props":1144,"children":1146},{"className":1145},[],[1147],{"type":44,"value":1148},"CustomEvent is not defined",{"type":44,"value":988},{"type":38,"tag":54,"props":1151,"children":1152},{},[1153,1157,1159,1165,1167,1173,1175,1181,1183,1189],{"type":38,"tag":122,"props":1154,"children":1155},{},[1156],{"type":44,"value":255},{"type":44,"value":1158}," wagmi dispatches DOM events internally, and React Native does not provide ",{"type":38,"tag":112,"props":1160,"children":1162},{"className":1161},[],[1163],{"type":44,"value":1164},"Event",{"type":44,"value":1166},"\u002F",{"type":38,"tag":112,"props":1168,"children":1170},{"className":1169},[],[1171],{"type":44,"value":1172},"CustomEvent",{"type":44,"value":1174}," globals. The ",{"type":38,"tag":112,"props":1176,"children":1178},{"className":1177},[],[1179],{"type":44,"value":1180},"@metamask\u002Fconnect-*",{"type":44,"value":1182}," packages themselves never construct DOM events (they use ",{"type":38,"tag":112,"props":1184,"children":1186},{"className":1185},[],[1187],{"type":44,"value":1188},"eventemitter3",{"type":44,"value":1190},") — this error only occurs when wagmi (or another DOM-dependent library) is in the stack.",{"type":38,"tag":54,"props":1192,"children":1193},{},[1194,1198,1200,1205,1207,1211,1213,1219],{"type":38,"tag":122,"props":1195,"children":1196},{},[1197],{"type":44,"value":160},{"type":44,"value":1199}," If you use wagmi in React Native, add standalone class polyfills in ",{"type":38,"tag":112,"props":1201,"children":1203},{"className":1202},[],[1204],{"type":44,"value":1036},{"type":44,"value":1206},". Do ",{"type":38,"tag":122,"props":1208,"children":1209},{},[1210],{"type":44,"value":554},{"type":44,"value":1212}," ",{"type":38,"tag":112,"props":1214,"children":1216},{"className":1215},[],[1217],{"type":44,"value":1218},"extends Event",{"type":44,"value":1220}," — that references the very global that is missing:",{"type":38,"tag":268,"props":1222,"children":1224},{"className":270,"code":1223,"language":272,"meta":273,"style":273},"class EventPolyfill {\n  type: string;\n  constructor(type: string) {\n    this.type = type;\n  }\n}\n\nclass CustomEventPolyfill extends EventPolyfill {\n  detail: any;\n  constructor(type: string, options?: { detail?: any }) {\n    super(type);\n    this.detail = options?.detail;\n  }\n}\n\nglobal.Event = EventPolyfill as any;\nglobal.CustomEvent = CustomEventPolyfill as any;\n",[1225],{"type":38,"tag":112,"props":1226,"children":1227},{"__ignoreMap":273},[1228,1246,1267,1301,1327,1334,1341,1350,1375,1396,1460,1485,1519,1527,1535,1543,1582],{"type":38,"tag":279,"props":1229,"children":1230},{"class":281,"line":282},[1231,1236,1242],{"type":38,"tag":279,"props":1232,"children":1233},{"style":663},[1234],{"type":44,"value":1235},"class",{"type":38,"tag":279,"props":1237,"children":1239},{"style":1238},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[1240],{"type":44,"value":1241}," EventPolyfill",{"type":38,"tag":279,"props":1243,"children":1244},{"style":292},[1245],{"type":44,"value":295},{"type":38,"tag":279,"props":1247,"children":1248},{"class":281,"line":22},[1249,1254,1258,1263],{"type":38,"tag":279,"props":1250,"children":1251},{"style":323},[1252],{"type":44,"value":1253},"  type",{"type":38,"tag":279,"props":1255,"children":1256},{"style":292},[1257],{"type":44,"value":341},{"type":38,"tag":279,"props":1259,"children":1260},{"style":1238},[1261],{"type":44,"value":1262}," string",{"type":38,"tag":279,"props":1264,"children":1265},{"style":292},[1266],{"type":44,"value":380},{"type":38,"tag":279,"props":1268,"children":1269},{"class":281,"line":383},[1270,1275,1279,1285,1289,1293,1297],{"type":38,"tag":279,"props":1271,"children":1272},{"style":663},[1273],{"type":44,"value":1274},"  constructor",{"type":38,"tag":279,"props":1276,"children":1277},{"style":292},[1278],{"type":44,"value":326},{"type":38,"tag":279,"props":1280,"children":1282},{"style":1281},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[1283],{"type":44,"value":1284},"type",{"type":38,"tag":279,"props":1286,"children":1287},{"style":292},[1288],{"type":44,"value":341},{"type":38,"tag":279,"props":1290,"children":1291},{"style":1238},[1292],{"type":44,"value":1262},{"type":38,"tag":279,"props":1294,"children":1295},{"style":292},[1296],{"type":44,"value":247},{"type":38,"tag":279,"props":1298,"children":1299},{"style":292},[1300],{"type":44,"value":295},{"type":38,"tag":279,"props":1302,"children":1303},{"class":281,"line":406},[1304,1309,1313,1318,1323],{"type":38,"tag":279,"props":1305,"children":1306},{"style":292},[1307],{"type":44,"value":1308},"    this.",{"type":38,"tag":279,"props":1310,"children":1311},{"style":306},[1312],{"type":44,"value":1284},{"type":38,"tag":279,"props":1314,"children":1315},{"style":292},[1316],{"type":44,"value":1317}," =",{"type":38,"tag":279,"props":1319,"children":1320},{"style":306},[1321],{"type":44,"value":1322}," type",{"type":38,"tag":279,"props":1324,"children":1325},{"style":292},[1326],{"type":44,"value":380},{"type":38,"tag":279,"props":1328,"children":1329},{"class":281,"line":453},[1330],{"type":38,"tag":279,"props":1331,"children":1332},{"style":292},[1333],{"type":44,"value":482},{"type":38,"tag":279,"props":1335,"children":1336},{"class":281,"line":463},[1337],{"type":38,"tag":279,"props":1338,"children":1339},{"style":292},[1340],{"type":44,"value":509},{"type":38,"tag":279,"props":1342,"children":1343},{"class":281,"line":476},[1344],{"type":38,"tag":279,"props":1345,"children":1347},{"emptyLinePlaceholder":1346},true,[1348],{"type":44,"value":1349},"\n",{"type":38,"tag":279,"props":1351,"children":1352},{"class":281,"line":485},[1353,1357,1362,1367,1371],{"type":38,"tag":279,"props":1354,"children":1355},{"style":663},[1356],{"type":44,"value":1235},{"type":38,"tag":279,"props":1358,"children":1359},{"style":1238},[1360],{"type":44,"value":1361}," CustomEventPolyfill",{"type":38,"tag":279,"props":1363,"children":1364},{"style":663},[1365],{"type":44,"value":1366}," extends",{"type":38,"tag":279,"props":1368,"children":1369},{"style":1238},[1370],{"type":44,"value":1241},{"type":38,"tag":279,"props":1372,"children":1373},{"style":292},[1374],{"type":44,"value":295},{"type":38,"tag":279,"props":1376,"children":1377},{"class":281,"line":503},[1378,1383,1387,1392],{"type":38,"tag":279,"props":1379,"children":1380},{"style":323},[1381],{"type":44,"value":1382},"  detail",{"type":38,"tag":279,"props":1384,"children":1385},{"style":292},[1386],{"type":44,"value":341},{"type":38,"tag":279,"props":1388,"children":1389},{"style":1238},[1390],{"type":44,"value":1391}," any",{"type":38,"tag":279,"props":1393,"children":1394},{"style":292},[1395],{"type":44,"value":380},{"type":38,"tag":279,"props":1397,"children":1399},{"class":281,"line":1398},10,[1400,1404,1408,1412,1416,1420,1424,1429,1434,1438,1443,1447,1451,1456],{"type":38,"tag":279,"props":1401,"children":1402},{"style":663},[1403],{"type":44,"value":1274},{"type":38,"tag":279,"props":1405,"children":1406},{"style":292},[1407],{"type":44,"value":326},{"type":38,"tag":279,"props":1409,"children":1410},{"style":1281},[1411],{"type":44,"value":1284},{"type":38,"tag":279,"props":1413,"children":1414},{"style":292},[1415],{"type":44,"value":341},{"type":38,"tag":279,"props":1417,"children":1418},{"style":1238},[1419],{"type":44,"value":1262},{"type":38,"tag":279,"props":1421,"children":1422},{"style":292},[1423],{"type":44,"value":819},{"type":38,"tag":279,"props":1425,"children":1426},{"style":1281},[1427],{"type":44,"value":1428}," options",{"type":38,"tag":279,"props":1430,"children":1431},{"style":292},[1432],{"type":44,"value":1433},"?:",{"type":38,"tag":279,"props":1435,"children":1436},{"style":292},[1437],{"type":44,"value":711},{"type":38,"tag":279,"props":1439,"children":1440},{"style":323},[1441],{"type":44,"value":1442}," detail",{"type":38,"tag":279,"props":1444,"children":1445},{"style":292},[1446],{"type":44,"value":1433},{"type":38,"tag":279,"props":1448,"children":1449},{"style":1238},[1450],{"type":44,"value":1391},{"type":38,"tag":279,"props":1452,"children":1453},{"style":292},[1454],{"type":44,"value":1455}," })",{"type":38,"tag":279,"props":1457,"children":1458},{"style":292},[1459],{"type":44,"value":295},{"type":38,"tag":279,"props":1461,"children":1463},{"class":281,"line":1462},11,[1464,1469,1473,1477,1481],{"type":38,"tag":279,"props":1465,"children":1466},{"style":306},[1467],{"type":44,"value":1468},"    super",{"type":38,"tag":279,"props":1470,"children":1471},{"style":323},[1472],{"type":44,"value":326},{"type":38,"tag":279,"props":1474,"children":1475},{"style":306},[1476],{"type":44,"value":1284},{"type":38,"tag":279,"props":1478,"children":1479},{"style":323},[1480],{"type":44,"value":247},{"type":38,"tag":279,"props":1482,"children":1483},{"style":292},[1484],{"type":44,"value":380},{"type":38,"tag":279,"props":1486,"children":1488},{"class":281,"line":1487},12,[1489,1493,1498,1502,1506,1511,1515],{"type":38,"tag":279,"props":1490,"children":1491},{"style":292},[1492],{"type":44,"value":1308},{"type":38,"tag":279,"props":1494,"children":1495},{"style":306},[1496],{"type":44,"value":1497},"detail",{"type":38,"tag":279,"props":1499,"children":1500},{"style":292},[1501],{"type":44,"value":1317},{"type":38,"tag":279,"props":1503,"children":1504},{"style":306},[1505],{"type":44,"value":1428},{"type":38,"tag":279,"props":1507,"children":1508},{"style":292},[1509],{"type":44,"value":1510},"?.",{"type":38,"tag":279,"props":1512,"children":1513},{"style":306},[1514],{"type":44,"value":1497},{"type":38,"tag":279,"props":1516,"children":1517},{"style":292},[1518],{"type":44,"value":380},{"type":38,"tag":279,"props":1520,"children":1522},{"class":281,"line":1521},13,[1523],{"type":38,"tag":279,"props":1524,"children":1525},{"style":292},[1526],{"type":44,"value":482},{"type":38,"tag":279,"props":1528,"children":1530},{"class":281,"line":1529},14,[1531],{"type":38,"tag":279,"props":1532,"children":1533},{"style":292},[1534],{"type":44,"value":509},{"type":38,"tag":279,"props":1536,"children":1538},{"class":281,"line":1537},15,[1539],{"type":38,"tag":279,"props":1540,"children":1541},{"emptyLinePlaceholder":1346},[1542],{"type":44,"value":1349},{"type":38,"tag":279,"props":1544,"children":1546},{"class":281,"line":1545},16,[1547,1551,1555,1560,1564,1569,1574,1578],{"type":38,"tag":279,"props":1548,"children":1549},{"style":306},[1550],{"type":44,"value":1105},{"type":38,"tag":279,"props":1552,"children":1553},{"style":292},[1554],{"type":44,"value":314},{"type":38,"tag":279,"props":1556,"children":1557},{"style":306},[1558],{"type":44,"value":1559},"Event ",{"type":38,"tag":279,"props":1561,"children":1562},{"style":292},[1563],{"type":44,"value":676},{"type":38,"tag":279,"props":1565,"children":1566},{"style":306},[1567],{"type":44,"value":1568}," EventPolyfill ",{"type":38,"tag":279,"props":1570,"children":1571},{"style":286},[1572],{"type":44,"value":1573},"as",{"type":38,"tag":279,"props":1575,"children":1576},{"style":1238},[1577],{"type":44,"value":1391},{"type":38,"tag":279,"props":1579,"children":1580},{"style":292},[1581],{"type":44,"value":380},{"type":38,"tag":279,"props":1583,"children":1585},{"class":281,"line":1584},17,[1586,1590,1594,1599,1603,1608,1612,1616],{"type":38,"tag":279,"props":1587,"children":1588},{"style":306},[1589],{"type":44,"value":1105},{"type":38,"tag":279,"props":1591,"children":1592},{"style":292},[1593],{"type":44,"value":314},{"type":38,"tag":279,"props":1595,"children":1596},{"style":306},[1597],{"type":44,"value":1598},"CustomEvent ",{"type":38,"tag":279,"props":1600,"children":1601},{"style":292},[1602],{"type":44,"value":676},{"type":38,"tag":279,"props":1604,"children":1605},{"style":306},[1606],{"type":44,"value":1607}," CustomEventPolyfill ",{"type":38,"tag":279,"props":1609,"children":1610},{"style":286},[1611],{"type":44,"value":1573},{"type":38,"tag":279,"props":1613,"children":1614},{"style":1238},[1615],{"type":44,"value":1391},{"type":38,"tag":279,"props":1617,"children":1618},{"style":292},[1619],{"type":44,"value":380},{"type":38,"tag":54,"props":1621,"children":1622},{},[1623],{"type":44,"value":1624},"If you are not using wagmi and still see this error, the source is another dependency — not the MetaMask Connect SDK.",{"type":38,"tag":101,"props":1626,"children":1627},{},[],{"type":38,"tag":105,"props":1629,"children":1631},{"id":1630},"_7-deeplinks-not-opening-metamask-app-react-native",[1632],{"type":44,"value":1633},"7. Deeplinks not opening MetaMask app (React Native)",{"type":38,"tag":54,"props":1635,"children":1636},{},[1637,1641,1643,1649],{"type":38,"tag":122,"props":1638,"children":1639},{},[1640],{"type":44,"value":255},{"type":44,"value":1642}," The ",{"type":38,"tag":112,"props":1644,"children":1646},{"className":1645},[],[1647],{"type":44,"value":1648},"mobile.preferredOpenLink",{"type":44,"value":1650}," callback is not configured.",{"type":38,"tag":54,"props":1652,"children":1653},{},[1654,1658,1660,1666],{"type":38,"tag":122,"props":1655,"children":1656},{},[1657],{"type":44,"value":160},{"type":44,"value":1659}," Pass a function that calls ",{"type":38,"tag":112,"props":1661,"children":1663},{"className":1662},[],[1664],{"type":44,"value":1665},"Linking.openURL",{"type":44,"value":341},{"type":38,"tag":268,"props":1668,"children":1670},{"className":270,"code":1669,"language":272,"meta":273,"style":273},"import { Linking } from 'react-native';\n\nconst client = await createEVMClient({\n  dapp: { name: 'My DApp', url: 'https:\u002F\u002Fmydapp.com' },\n  mobile: {\n    preferredOpenLink: (deeplink: string) => Linking.openURL(deeplink),\n  },\n});\n",[1671],{"type":38,"tag":112,"props":1672,"children":1673},{"__ignoreMap":273},[1674,1715,1722,1753,1818,1834,1894,1901],{"type":38,"tag":279,"props":1675,"children":1676},{"class":281,"line":282},[1677,1681,1685,1690,1694,1698,1702,1707,1711],{"type":38,"tag":279,"props":1678,"children":1679},{"style":286},[1680],{"type":44,"value":1061},{"type":38,"tag":279,"props":1682,"children":1683},{"style":292},[1684],{"type":44,"value":711},{"type":38,"tag":279,"props":1686,"children":1687},{"style":306},[1688],{"type":44,"value":1689}," Linking",{"type":38,"tag":279,"props":1691,"children":1692},{"style":292},[1693],{"type":44,"value":1075},{"type":38,"tag":279,"props":1695,"children":1696},{"style":286},[1697],{"type":44,"value":1080},{"type":38,"tag":279,"props":1699,"children":1700},{"style":292},[1701],{"type":44,"value":725},{"type":38,"tag":279,"props":1703,"children":1704},{"style":354},[1705],{"type":44,"value":1706},"react-native",{"type":38,"tag":279,"props":1708,"children":1709},{"style":292},[1710],{"type":44,"value":351},{"type":38,"tag":279,"props":1712,"children":1713},{"style":292},[1714],{"type":44,"value":380},{"type":38,"tag":279,"props":1716,"children":1717},{"class":281,"line":22},[1718],{"type":38,"tag":279,"props":1719,"children":1720},{"emptyLinePlaceholder":1346},[1721],{"type":44,"value":1349},{"type":38,"tag":279,"props":1723,"children":1724},{"class":281,"line":383},[1725,1729,1733,1737,1741,1745,1749],{"type":38,"tag":279,"props":1726,"children":1727},{"style":663},[1728],{"type":44,"value":666},{"type":38,"tag":279,"props":1730,"children":1731},{"style":306},[1732],{"type":44,"value":671},{"type":38,"tag":279,"props":1734,"children":1735},{"style":292},[1736],{"type":44,"value":676},{"type":38,"tag":279,"props":1738,"children":1739},{"style":286},[1740],{"type":44,"value":681},{"type":38,"tag":279,"props":1742,"children":1743},{"style":317},[1744],{"type":44,"value":686},{"type":38,"tag":279,"props":1746,"children":1747},{"style":306},[1748],{"type":44,"value":326},{"type":38,"tag":279,"props":1750,"children":1751},{"style":292},[1752],{"type":44,"value":403},{"type":38,"tag":279,"props":1754,"children":1755},{"class":281,"line":406},[1756,1760,1764,1768,1772,1776,1780,1784,1788,1792,1797,1801,1805,1810,1814],{"type":38,"tag":279,"props":1757,"children":1758},{"style":323},[1759],{"type":44,"value":702},{"type":38,"tag":279,"props":1761,"children":1762},{"style":292},[1763],{"type":44,"value":341},{"type":38,"tag":279,"props":1765,"children":1766},{"style":292},[1767],{"type":44,"value":711},{"type":38,"tag":279,"props":1769,"children":1770},{"style":323},[1771],{"type":44,"value":716},{"type":38,"tag":279,"props":1773,"children":1774},{"style":292},[1775],{"type":44,"value":341},{"type":38,"tag":279,"props":1777,"children":1778},{"style":292},[1779],{"type":44,"value":725},{"type":38,"tag":279,"props":1781,"children":1782},{"style":354},[1783],{"type":44,"value":730},{"type":38,"tag":279,"props":1785,"children":1786},{"style":292},[1787],{"type":44,"value":351},{"type":38,"tag":279,"props":1789,"children":1790},{"style":292},[1791],{"type":44,"value":819},{"type":38,"tag":279,"props":1793,"children":1794},{"style":323},[1795],{"type":44,"value":1796}," url",{"type":38,"tag":279,"props":1798,"children":1799},{"style":292},[1800],{"type":44,"value":341},{"type":38,"tag":279,"props":1802,"children":1803},{"style":292},[1804],{"type":44,"value":725},{"type":38,"tag":279,"props":1806,"children":1807},{"style":354},[1808],{"type":44,"value":1809},"https:\u002F\u002Fmydapp.com",{"type":38,"tag":279,"props":1811,"children":1812},{"style":292},[1813],{"type":44,"value":351},{"type":38,"tag":279,"props":1815,"children":1816},{"style":292},[1817],{"type":44,"value":739},{"type":38,"tag":279,"props":1819,"children":1820},{"class":281,"line":453},[1821,1826,1830],{"type":38,"tag":279,"props":1822,"children":1823},{"style":323},[1824],{"type":44,"value":1825},"  mobile",{"type":38,"tag":279,"props":1827,"children":1828},{"style":292},[1829],{"type":44,"value":341},{"type":38,"tag":279,"props":1831,"children":1832},{"style":292},[1833],{"type":44,"value":295},{"type":38,"tag":279,"props":1835,"children":1836},{"class":281,"line":463},[1837,1842,1846,1850,1855,1859,1863,1867,1872,1876,1880,1885,1890],{"type":38,"tag":279,"props":1838,"children":1839},{"style":317},[1840],{"type":44,"value":1841},"    preferredOpenLink",{"type":38,"tag":279,"props":1843,"children":1844},{"style":292},[1845],{"type":44,"value":341},{"type":38,"tag":279,"props":1847,"children":1848},{"style":292},[1849],{"type":44,"value":417},{"type":38,"tag":279,"props":1851,"children":1852},{"style":1281},[1853],{"type":44,"value":1854},"deeplink",{"type":38,"tag":279,"props":1856,"children":1857},{"style":292},[1858],{"type":44,"value":341},{"type":38,"tag":279,"props":1860,"children":1861},{"style":1238},[1862],{"type":44,"value":1262},{"type":38,"tag":279,"props":1864,"children":1865},{"style":292},[1866],{"type":44,"value":247},{"type":38,"tag":279,"props":1868,"children":1869},{"style":663},[1870],{"type":44,"value":1871}," =>",{"type":38,"tag":279,"props":1873,"children":1874},{"style":306},[1875],{"type":44,"value":1689},{"type":38,"tag":279,"props":1877,"children":1878},{"style":292},[1879],{"type":44,"value":314},{"type":38,"tag":279,"props":1881,"children":1882},{"style":317},[1883],{"type":44,"value":1884},"openURL",{"type":38,"tag":279,"props":1886,"children":1887},{"style":306},[1888],{"type":44,"value":1889},"(deeplink)",{"type":38,"tag":279,"props":1891,"children":1892},{"style":292},[1893],{"type":44,"value":894},{"type":38,"tag":279,"props":1895,"children":1896},{"class":281,"line":476},[1897],{"type":38,"tag":279,"props":1898,"children":1899},{"style":292},[1900],{"type":44,"value":948},{"type":38,"tag":279,"props":1902,"children":1903},{"class":281,"line":485},[1904,1908,1912],{"type":38,"tag":279,"props":1905,"children":1906},{"style":292},[1907],{"type":44,"value":371},{"type":38,"tag":279,"props":1909,"children":1910},{"style":306},[1911],{"type":44,"value":247},{"type":38,"tag":279,"props":1913,"children":1914},{"style":292},[1915],{"type":44,"value":380},{"type":38,"tag":101,"props":1917,"children":1918},{},[],{"type":38,"tag":105,"props":1920,"children":1922},{"id":1921},"_8-app-crashes-on-import-of-sdk-react-native",[1923],{"type":44,"value":1924},"8. App crashes on import of SDK (React Native)",{"type":38,"tag":54,"props":1926,"children":1927},{},[1928,1932,1934,1940,1942,1948,1949,1955,1956,1962,1963,1969,1970,1976,1977,1983,1984,1990],{"type":38,"tag":122,"props":1929,"children":1930},{},[1931],{"type":44,"value":255},{"type":44,"value":1933}," Metro bundler cannot resolve Node.js built-in modules (",{"type":38,"tag":112,"props":1935,"children":1937},{"className":1936},[],[1938],{"type":44,"value":1939},"stream",{"type":44,"value":1941},", ",{"type":38,"tag":112,"props":1943,"children":1945},{"className":1944},[],[1946],{"type":44,"value":1947},"crypto",{"type":44,"value":1941},{"type":38,"tag":112,"props":1950,"children":1952},{"className":1951},[],[1953],{"type":44,"value":1954},"http",{"type":44,"value":1941},{"type":38,"tag":112,"props":1957,"children":1959},{"className":1958},[],[1960],{"type":44,"value":1961},"https",{"type":44,"value":1941},{"type":38,"tag":112,"props":1964,"children":1966},{"className":1965},[],[1967],{"type":44,"value":1968},"os",{"type":44,"value":1941},{"type":38,"tag":112,"props":1971,"children":1973},{"className":1972},[],[1974],{"type":44,"value":1975},"url",{"type":44,"value":1941},{"type":38,"tag":112,"props":1978,"children":1980},{"className":1979},[],[1981],{"type":44,"value":1982},"assert",{"type":44,"value":1941},{"type":38,"tag":112,"props":1985,"children":1987},{"className":1986},[],[1988],{"type":44,"value":1989},"events",{"type":44,"value":1991},", etc.) that SDK dependencies reference.",{"type":38,"tag":54,"props":1993,"children":1994},{},[1995,1999,2001,2007,2009,2015],{"type":38,"tag":122,"props":1996,"children":1997},{},[1998],{"type":44,"value":160},{"type":44,"value":2000}," Add ",{"type":38,"tag":112,"props":2002,"children":2004},{"className":2003},[],[2005],{"type":44,"value":2006},"extraNodeModules",{"type":44,"value":2008}," shims in ",{"type":38,"tag":112,"props":2010,"children":2012},{"className":2011},[],[2013],{"type":44,"value":2014},"metro.config.js",{"type":44,"value":341},{"type":38,"tag":268,"props":2017,"children":2021},{"className":2018,"code":2019,"language":2020,"meta":273,"style":273},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const { getDefaultConfig, mergeConfig } = require('@react-native\u002Fmetro-config');\nconst path = require('path');\n\n\u002F\u002F src\u002Fempty-module.js: `module.exports = {};`\n\u002F\u002F Only `stream` needs a real shim — the other Node built-ins are referenced\n\u002F\u002F by transitive deps but never called at runtime in React Native.\nconst emptyModule = path.resolve(__dirname, 'src', 'empty-module.js');\n\nconst config = {\n  resolver: {\n    extraNodeModules: {\n      stream: require.resolve('readable-stream'),\n      crypto: emptyModule,\n      http: emptyModule,\n      https: emptyModule,\n      net: emptyModule,\n      tls: emptyModule,\n      zlib: emptyModule,\n      os: emptyModule,\n      dns: emptyModule,\n      assert: emptyModule,\n      url: emptyModule,\n      path: emptyModule,\n      fs: emptyModule,\n    },\n  },\n};\n\nmodule.exports = mergeConfig(getDefaultConfig(__dirname), config);\n","javascript",[2022],{"type":38,"tag":112,"props":2023,"children":2024},{"__ignoreMap":273},[2025,2088,2133,2140,2148,2156,2164,2241,2248,2268,2284,2300,2349,2370,2390,2410,2430,2450,2471,2492,2513,2534,2555,2576,2597,2605,2613,2622,2630],{"type":38,"tag":279,"props":2026,"children":2027},{"class":281,"line":282},[2028,2032,2036,2041,2045,2050,2054,2058,2063,2067,2071,2076,2080,2084],{"type":38,"tag":279,"props":2029,"children":2030},{"style":663},[2031],{"type":44,"value":666},{"type":38,"tag":279,"props":2033,"children":2034},{"style":292},[2035],{"type":44,"value":711},{"type":38,"tag":279,"props":2037,"children":2038},{"style":306},[2039],{"type":44,"value":2040}," getDefaultConfig",{"type":38,"tag":279,"props":2042,"children":2043},{"style":292},[2044],{"type":44,"value":819},{"type":38,"tag":279,"props":2046,"children":2047},{"style":306},[2048],{"type":44,"value":2049}," mergeConfig ",{"type":38,"tag":279,"props":2051,"children":2052},{"style":292},[2053],{"type":44,"value":371},{"type":38,"tag":279,"props":2055,"children":2056},{"style":292},[2057],{"type":44,"value":1317},{"type":38,"tag":279,"props":2059,"children":2060},{"style":317},[2061],{"type":44,"value":2062}," require",{"type":38,"tag":279,"props":2064,"children":2065},{"style":306},[2066],{"type":44,"value":326},{"type":38,"tag":279,"props":2068,"children":2069},{"style":292},[2070],{"type":44,"value":351},{"type":38,"tag":279,"props":2072,"children":2073},{"style":354},[2074],{"type":44,"value":2075},"@react-native\u002Fmetro-config",{"type":38,"tag":279,"props":2077,"children":2078},{"style":292},[2079],{"type":44,"value":351},{"type":38,"tag":279,"props":2081,"children":2082},{"style":306},[2083],{"type":44,"value":247},{"type":38,"tag":279,"props":2085,"children":2086},{"style":292},[2087],{"type":44,"value":380},{"type":38,"tag":279,"props":2089,"children":2090},{"class":281,"line":22},[2091,2095,2100,2104,2108,2112,2116,2121,2125,2129],{"type":38,"tag":279,"props":2092,"children":2093},{"style":663},[2094],{"type":44,"value":666},{"type":38,"tag":279,"props":2096,"children":2097},{"style":306},[2098],{"type":44,"value":2099}," path ",{"type":38,"tag":279,"props":2101,"children":2102},{"style":292},[2103],{"type":44,"value":676},{"type":38,"tag":279,"props":2105,"children":2106},{"style":317},[2107],{"type":44,"value":2062},{"type":38,"tag":279,"props":2109,"children":2110},{"style":306},[2111],{"type":44,"value":326},{"type":38,"tag":279,"props":2113,"children":2114},{"style":292},[2115],{"type":44,"value":351},{"type":38,"tag":279,"props":2117,"children":2118},{"style":354},[2119],{"type":44,"value":2120},"path",{"type":38,"tag":279,"props":2122,"children":2123},{"style":292},[2124],{"type":44,"value":351},{"type":38,"tag":279,"props":2126,"children":2127},{"style":306},[2128],{"type":44,"value":247},{"type":38,"tag":279,"props":2130,"children":2131},{"style":292},[2132],{"type":44,"value":380},{"type":38,"tag":279,"props":2134,"children":2135},{"class":281,"line":383},[2136],{"type":38,"tag":279,"props":2137,"children":2138},{"emptyLinePlaceholder":1346},[2139],{"type":44,"value":1349},{"type":38,"tag":279,"props":2141,"children":2142},{"class":281,"line":406},[2143],{"type":38,"tag":279,"props":2144,"children":2145},{"style":457},[2146],{"type":44,"value":2147},"\u002F\u002F src\u002Fempty-module.js: `module.exports = {};`\n",{"type":38,"tag":279,"props":2149,"children":2150},{"class":281,"line":453},[2151],{"type":38,"tag":279,"props":2152,"children":2153},{"style":457},[2154],{"type":44,"value":2155},"\u002F\u002F Only `stream` needs a real shim — the other Node built-ins are referenced\n",{"type":38,"tag":279,"props":2157,"children":2158},{"class":281,"line":463},[2159],{"type":38,"tag":279,"props":2160,"children":2161},{"style":457},[2162],{"type":44,"value":2163},"\u002F\u002F by transitive deps but never called at runtime in React Native.\n",{"type":38,"tag":279,"props":2165,"children":2166},{"class":281,"line":476},[2167,2171,2176,2180,2185,2189,2194,2199,2203,2207,2212,2216,2220,2224,2229,2233,2237],{"type":38,"tag":279,"props":2168,"children":2169},{"style":663},[2170],{"type":44,"value":666},{"type":38,"tag":279,"props":2172,"children":2173},{"style":306},[2174],{"type":44,"value":2175}," emptyModule ",{"type":38,"tag":279,"props":2177,"children":2178},{"style":292},[2179],{"type":44,"value":676},{"type":38,"tag":279,"props":2181,"children":2182},{"style":306},[2183],{"type":44,"value":2184}," path",{"type":38,"tag":279,"props":2186,"children":2187},{"style":292},[2188],{"type":44,"value":314},{"type":38,"tag":279,"props":2190,"children":2191},{"style":317},[2192],{"type":44,"value":2193},"resolve",{"type":38,"tag":279,"props":2195,"children":2196},{"style":306},[2197],{"type":44,"value":2198},"(__dirname",{"type":38,"tag":279,"props":2200,"children":2201},{"style":292},[2202],{"type":44,"value":819},{"type":38,"tag":279,"props":2204,"children":2205},{"style":292},[2206],{"type":44,"value":725},{"type":38,"tag":279,"props":2208,"children":2209},{"style":354},[2210],{"type":44,"value":2211},"src",{"type":38,"tag":279,"props":2213,"children":2214},{"style":292},[2215],{"type":44,"value":351},{"type":38,"tag":279,"props":2217,"children":2218},{"style":292},[2219],{"type":44,"value":819},{"type":38,"tag":279,"props":2221,"children":2222},{"style":292},[2223],{"type":44,"value":725},{"type":38,"tag":279,"props":2225,"children":2226},{"style":354},[2227],{"type":44,"value":2228},"empty-module.js",{"type":38,"tag":279,"props":2230,"children":2231},{"style":292},[2232],{"type":44,"value":351},{"type":38,"tag":279,"props":2234,"children":2235},{"style":306},[2236],{"type":44,"value":247},{"type":38,"tag":279,"props":2238,"children":2239},{"style":292},[2240],{"type":44,"value":380},{"type":38,"tag":279,"props":2242,"children":2243},{"class":281,"line":485},[2244],{"type":38,"tag":279,"props":2245,"children":2246},{"emptyLinePlaceholder":1346},[2247],{"type":44,"value":1349},{"type":38,"tag":279,"props":2249,"children":2250},{"class":281,"line":503},[2251,2255,2260,2264],{"type":38,"tag":279,"props":2252,"children":2253},{"style":663},[2254],{"type":44,"value":666},{"type":38,"tag":279,"props":2256,"children":2257},{"style":306},[2258],{"type":44,"value":2259}," config ",{"type":38,"tag":279,"props":2261,"children":2262},{"style":292},[2263],{"type":44,"value":676},{"type":38,"tag":279,"props":2265,"children":2266},{"style":292},[2267],{"type":44,"value":295},{"type":38,"tag":279,"props":2269,"children":2270},{"class":281,"line":1398},[2271,2276,2280],{"type":38,"tag":279,"props":2272,"children":2273},{"style":323},[2274],{"type":44,"value":2275},"  resolver",{"type":38,"tag":279,"props":2277,"children":2278},{"style":292},[2279],{"type":44,"value":341},{"type":38,"tag":279,"props":2281,"children":2282},{"style":292},[2283],{"type":44,"value":295},{"type":38,"tag":279,"props":2285,"children":2286},{"class":281,"line":1462},[2287,2292,2296],{"type":38,"tag":279,"props":2288,"children":2289},{"style":323},[2290],{"type":44,"value":2291},"    extraNodeModules",{"type":38,"tag":279,"props":2293,"children":2294},{"style":292},[2295],{"type":44,"value":341},{"type":38,"tag":279,"props":2297,"children":2298},{"style":292},[2299],{"type":44,"value":295},{"type":38,"tag":279,"props":2301,"children":2302},{"class":281,"line":1487},[2303,2308,2312,2316,2320,2324,2328,2332,2337,2341,2345],{"type":38,"tag":279,"props":2304,"children":2305},{"style":323},[2306],{"type":44,"value":2307},"      stream",{"type":38,"tag":279,"props":2309,"children":2310},{"style":292},[2311],{"type":44,"value":341},{"type":38,"tag":279,"props":2313,"children":2314},{"style":306},[2315],{"type":44,"value":2062},{"type":38,"tag":279,"props":2317,"children":2318},{"style":292},[2319],{"type":44,"value":314},{"type":38,"tag":279,"props":2321,"children":2322},{"style":317},[2323],{"type":44,"value":2193},{"type":38,"tag":279,"props":2325,"children":2326},{"style":306},[2327],{"type":44,"value":326},{"type":38,"tag":279,"props":2329,"children":2330},{"style":292},[2331],{"type":44,"value":351},{"type":38,"tag":279,"props":2333,"children":2334},{"style":354},[2335],{"type":44,"value":2336},"readable-stream",{"type":38,"tag":279,"props":2338,"children":2339},{"style":292},[2340],{"type":44,"value":351},{"type":38,"tag":279,"props":2342,"children":2343},{"style":306},[2344],{"type":44,"value":247},{"type":38,"tag":279,"props":2346,"children":2347},{"style":292},[2348],{"type":44,"value":894},{"type":38,"tag":279,"props":2350,"children":2351},{"class":281,"line":1521},[2352,2357,2361,2366],{"type":38,"tag":279,"props":2353,"children":2354},{"style":323},[2355],{"type":44,"value":2356},"      crypto",{"type":38,"tag":279,"props":2358,"children":2359},{"style":292},[2360],{"type":44,"value":341},{"type":38,"tag":279,"props":2362,"children":2363},{"style":306},[2364],{"type":44,"value":2365}," emptyModule",{"type":38,"tag":279,"props":2367,"children":2368},{"style":292},[2369],{"type":44,"value":894},{"type":38,"tag":279,"props":2371,"children":2372},{"class":281,"line":1529},[2373,2378,2382,2386],{"type":38,"tag":279,"props":2374,"children":2375},{"style":323},[2376],{"type":44,"value":2377},"      http",{"type":38,"tag":279,"props":2379,"children":2380},{"style":292},[2381],{"type":44,"value":341},{"type":38,"tag":279,"props":2383,"children":2384},{"style":306},[2385],{"type":44,"value":2365},{"type":38,"tag":279,"props":2387,"children":2388},{"style":292},[2389],{"type":44,"value":894},{"type":38,"tag":279,"props":2391,"children":2392},{"class":281,"line":1537},[2393,2398,2402,2406],{"type":38,"tag":279,"props":2394,"children":2395},{"style":323},[2396],{"type":44,"value":2397},"      https",{"type":38,"tag":279,"props":2399,"children":2400},{"style":292},[2401],{"type":44,"value":341},{"type":38,"tag":279,"props":2403,"children":2404},{"style":306},[2405],{"type":44,"value":2365},{"type":38,"tag":279,"props":2407,"children":2408},{"style":292},[2409],{"type":44,"value":894},{"type":38,"tag":279,"props":2411,"children":2412},{"class":281,"line":1545},[2413,2418,2422,2426],{"type":38,"tag":279,"props":2414,"children":2415},{"style":323},[2416],{"type":44,"value":2417},"      net",{"type":38,"tag":279,"props":2419,"children":2420},{"style":292},[2421],{"type":44,"value":341},{"type":38,"tag":279,"props":2423,"children":2424},{"style":306},[2425],{"type":44,"value":2365},{"type":38,"tag":279,"props":2427,"children":2428},{"style":292},[2429],{"type":44,"value":894},{"type":38,"tag":279,"props":2431,"children":2432},{"class":281,"line":1584},[2433,2438,2442,2446],{"type":38,"tag":279,"props":2434,"children":2435},{"style":323},[2436],{"type":44,"value":2437},"      tls",{"type":38,"tag":279,"props":2439,"children":2440},{"style":292},[2441],{"type":44,"value":341},{"type":38,"tag":279,"props":2443,"children":2444},{"style":306},[2445],{"type":44,"value":2365},{"type":38,"tag":279,"props":2447,"children":2448},{"style":292},[2449],{"type":44,"value":894},{"type":38,"tag":279,"props":2451,"children":2453},{"class":281,"line":2452},18,[2454,2459,2463,2467],{"type":38,"tag":279,"props":2455,"children":2456},{"style":323},[2457],{"type":44,"value":2458},"      zlib",{"type":38,"tag":279,"props":2460,"children":2461},{"style":292},[2462],{"type":44,"value":341},{"type":38,"tag":279,"props":2464,"children":2465},{"style":306},[2466],{"type":44,"value":2365},{"type":38,"tag":279,"props":2468,"children":2469},{"style":292},[2470],{"type":44,"value":894},{"type":38,"tag":279,"props":2472,"children":2474},{"class":281,"line":2473},19,[2475,2480,2484,2488],{"type":38,"tag":279,"props":2476,"children":2477},{"style":323},[2478],{"type":44,"value":2479},"      os",{"type":38,"tag":279,"props":2481,"children":2482},{"style":292},[2483],{"type":44,"value":341},{"type":38,"tag":279,"props":2485,"children":2486},{"style":306},[2487],{"type":44,"value":2365},{"type":38,"tag":279,"props":2489,"children":2490},{"style":292},[2491],{"type":44,"value":894},{"type":38,"tag":279,"props":2493,"children":2495},{"class":281,"line":2494},20,[2496,2501,2505,2509],{"type":38,"tag":279,"props":2497,"children":2498},{"style":323},[2499],{"type":44,"value":2500},"      dns",{"type":38,"tag":279,"props":2502,"children":2503},{"style":292},[2504],{"type":44,"value":341},{"type":38,"tag":279,"props":2506,"children":2507},{"style":306},[2508],{"type":44,"value":2365},{"type":38,"tag":279,"props":2510,"children":2511},{"style":292},[2512],{"type":44,"value":894},{"type":38,"tag":279,"props":2514,"children":2516},{"class":281,"line":2515},21,[2517,2522,2526,2530],{"type":38,"tag":279,"props":2518,"children":2519},{"style":323},[2520],{"type":44,"value":2521},"      assert",{"type":38,"tag":279,"props":2523,"children":2524},{"style":292},[2525],{"type":44,"value":341},{"type":38,"tag":279,"props":2527,"children":2528},{"style":306},[2529],{"type":44,"value":2365},{"type":38,"tag":279,"props":2531,"children":2532},{"style":292},[2533],{"type":44,"value":894},{"type":38,"tag":279,"props":2535,"children":2537},{"class":281,"line":2536},22,[2538,2543,2547,2551],{"type":38,"tag":279,"props":2539,"children":2540},{"style":323},[2541],{"type":44,"value":2542},"      url",{"type":38,"tag":279,"props":2544,"children":2545},{"style":292},[2546],{"type":44,"value":341},{"type":38,"tag":279,"props":2548,"children":2549},{"style":306},[2550],{"type":44,"value":2365},{"type":38,"tag":279,"props":2552,"children":2553},{"style":292},[2554],{"type":44,"value":894},{"type":38,"tag":279,"props":2556,"children":2558},{"class":281,"line":2557},23,[2559,2564,2568,2572],{"type":38,"tag":279,"props":2560,"children":2561},{"style":323},[2562],{"type":44,"value":2563},"      path",{"type":38,"tag":279,"props":2565,"children":2566},{"style":292},[2567],{"type":44,"value":341},{"type":38,"tag":279,"props":2569,"children":2570},{"style":306},[2571],{"type":44,"value":2365},{"type":38,"tag":279,"props":2573,"children":2574},{"style":292},[2575],{"type":44,"value":894},{"type":38,"tag":279,"props":2577,"children":2579},{"class":281,"line":2578},24,[2580,2585,2589,2593],{"type":38,"tag":279,"props":2581,"children":2582},{"style":323},[2583],{"type":44,"value":2584},"      fs",{"type":38,"tag":279,"props":2586,"children":2587},{"style":292},[2588],{"type":44,"value":341},{"type":38,"tag":279,"props":2590,"children":2591},{"style":306},[2592],{"type":44,"value":2365},{"type":38,"tag":279,"props":2594,"children":2595},{"style":292},[2596],{"type":44,"value":894},{"type":38,"tag":279,"props":2598,"children":2600},{"class":281,"line":2599},25,[2601],{"type":38,"tag":279,"props":2602,"children":2603},{"style":292},[2604],{"type":44,"value":940},{"type":38,"tag":279,"props":2606,"children":2608},{"class":281,"line":2607},26,[2609],{"type":38,"tag":279,"props":2610,"children":2611},{"style":292},[2612],{"type":44,"value":948},{"type":38,"tag":279,"props":2614,"children":2616},{"class":281,"line":2615},27,[2617],{"type":38,"tag":279,"props":2618,"children":2619},{"style":292},[2620],{"type":44,"value":2621},"};\n",{"type":38,"tag":279,"props":2623,"children":2625},{"class":281,"line":2624},28,[2626],{"type":38,"tag":279,"props":2627,"children":2628},{"emptyLinePlaceholder":1346},[2629],{"type":44,"value":1349},{"type":38,"tag":279,"props":2631,"children":2633},{"class":281,"line":2632},29,[2634,2639,2643,2648,2652,2657,2662,2666,2671],{"type":38,"tag":279,"props":2635,"children":2636},{"style":292},[2637],{"type":44,"value":2638},"module.exports",{"type":38,"tag":279,"props":2640,"children":2641},{"style":292},[2642],{"type":44,"value":1317},{"type":38,"tag":279,"props":2644,"children":2645},{"style":317},[2646],{"type":44,"value":2647}," mergeConfig",{"type":38,"tag":279,"props":2649,"children":2650},{"style":306},[2651],{"type":44,"value":326},{"type":38,"tag":279,"props":2653,"children":2654},{"style":317},[2655],{"type":44,"value":2656},"getDefaultConfig",{"type":38,"tag":279,"props":2658,"children":2659},{"style":306},[2660],{"type":44,"value":2661},"(__dirname)",{"type":38,"tag":279,"props":2663,"children":2664},{"style":292},[2665],{"type":44,"value":819},{"type":38,"tag":279,"props":2667,"children":2668},{"style":306},[2669],{"type":44,"value":2670}," config)",{"type":38,"tag":279,"props":2672,"children":2673},{"style":292},[2674],{"type":44,"value":380},{"type":38,"tag":54,"props":2676,"children":2677},{},[2678,2680,2686],{"type":44,"value":2679},"Install the corresponding shim packages via ",{"type":38,"tag":112,"props":2681,"children":2683},{"className":2682},[],[2684],{"type":44,"value":2685},"npm install",{"type":44,"value":314},{"type":38,"tag":101,"props":2688,"children":2689},{},[],{"type":38,"tag":105,"props":2691,"children":2693},{"id":2692},"_9-cryptogetrandomvalues-is-not-a-function-react-native",[2694,2696,2702],{"type":44,"value":2695},"9. ",{"type":38,"tag":112,"props":2697,"children":2699},{"className":2698},[],[2700],{"type":44,"value":2701},"crypto.getRandomValues is not a function",{"type":44,"value":988},{"type":38,"tag":54,"props":2704,"children":2705},{},[2706,2710,2711,2716],{"type":38,"tag":122,"props":2707,"children":2708},{},[2709],{"type":44,"value":255},{"type":44,"value":1212},{"type":38,"tag":112,"props":2712,"children":2714},{"className":2713},[],[2715],{"type":44,"value":1044},{"type":44,"value":2717}," is either not installed or not imported as the very first import.",{"type":38,"tag":54,"props":2719,"children":2720},{},[2721,2725,2727,2732],{"type":38,"tag":122,"props":2722,"children":2723},{},[2724],{"type":44,"value":160},{"type":44,"value":2726}," Import it as the ",{"type":38,"tag":122,"props":2728,"children":2729},{},[2730],{"type":44,"value":2731},"first line",{"type":44,"value":2733}," of your entry file — before any other import:",{"type":38,"tag":268,"props":2735,"children":2737},{"className":270,"code":2736,"language":272,"meta":273,"style":273},"import 'react-native-get-random-values';\n\u002F\u002F all other imports follow\n",[2738],{"type":38,"tag":112,"props":2739,"children":2740},{"__ignoreMap":273},[2741,2764],{"type":38,"tag":279,"props":2742,"children":2743},{"class":281,"line":282},[2744,2748,2752,2756,2760],{"type":38,"tag":279,"props":2745,"children":2746},{"style":286},[2747],{"type":44,"value":1061},{"type":38,"tag":279,"props":2749,"children":2750},{"style":292},[2751],{"type":44,"value":725},{"type":38,"tag":279,"props":2753,"children":2754},{"style":354},[2755],{"type":44,"value":1044},{"type":38,"tag":279,"props":2757,"children":2758},{"style":292},[2759],{"type":44,"value":351},{"type":38,"tag":279,"props":2761,"children":2762},{"style":292},[2763],{"type":44,"value":380},{"type":38,"tag":279,"props":2765,"children":2766},{"class":281,"line":22},[2767],{"type":38,"tag":279,"props":2768,"children":2769},{"style":457},[2770],{"type":44,"value":2771},"\u002F\u002F all other imports follow\n",{"type":38,"tag":101,"props":2773,"children":2774},{},[],{"type":38,"tag":105,"props":2776,"children":2778},{"id":2777},"_10-metamask-wallet-not-appearing-in-solana-wallet-adapter",[2779],{"type":44,"value":2780},"10. MetaMask wallet not appearing in Solana wallet adapter",{"type":38,"tag":54,"props":2782,"children":2783},{},[2784,2788,2789,2795,2797,2802],{"type":38,"tag":122,"props":2785,"children":2786},{},[2787],{"type":44,"value":126},{"type":44,"value":1212},{"type":38,"tag":112,"props":2790,"children":2792},{"className":2791},[],[2793],{"type":44,"value":2794},"createSolanaClient",{"type":44,"value":2796}," was never called (or was called only inside a component that hasn't mounted). Note that registration happens ~1 second ",{"type":38,"tag":605,"props":2798,"children":2799},{},[2800],{"type":44,"value":2801},"after",{"type":44,"value":2803}," the factory resolves, and the wallet adapter discovers late registrations automatically — so a briefly empty wallet list right after startup is normal.",{"type":38,"tag":54,"props":2805,"children":2806},{},[2807,2811],{"type":38,"tag":122,"props":2808,"children":2809},{},[2810],{"type":44,"value":160},{"type":44,"value":2812}," Call client creation once in your bootstrap. Rendering does not need to block on it:",{"type":38,"tag":268,"props":2814,"children":2816},{"className":270,"code":2815,"language":272,"meta":273,"style":273},"import { createSolanaClient } from '@metamask\u002Fconnect-solana';\n\n\u002F\u002F Kick off client creation — no need to await before rendering;\n\u002F\u002F the wallet registers via the wallet-standard register event (~1s later)\nvoid createSolanaClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n});\n\nconst root = createRoot(document.getElementById('root')!);\nroot.render(\u003CApp \u002F>);\n",[2817],{"type":38,"tag":112,"props":2818,"children":2819},{"__ignoreMap":273},[2820,2861,2868,2876,2884,2904,2979,2994,3001,3069],{"type":38,"tag":279,"props":2821,"children":2822},{"class":281,"line":282},[2823,2827,2831,2836,2840,2844,2848,2853,2857],{"type":38,"tag":279,"props":2824,"children":2825},{"style":286},[2826],{"type":44,"value":1061},{"type":38,"tag":279,"props":2828,"children":2829},{"style":292},[2830],{"type":44,"value":711},{"type":38,"tag":279,"props":2832,"children":2833},{"style":306},[2834],{"type":44,"value":2835}," createSolanaClient",{"type":38,"tag":279,"props":2837,"children":2838},{"style":292},[2839],{"type":44,"value":1075},{"type":38,"tag":279,"props":2841,"children":2842},{"style":286},[2843],{"type":44,"value":1080},{"type":38,"tag":279,"props":2845,"children":2846},{"style":292},[2847],{"type":44,"value":725},{"type":38,"tag":279,"props":2849,"children":2850},{"style":354},[2851],{"type":44,"value":2852},"@metamask\u002Fconnect-solana",{"type":38,"tag":279,"props":2854,"children":2855},{"style":292},[2856],{"type":44,"value":351},{"type":38,"tag":279,"props":2858,"children":2859},{"style":292},[2860],{"type":44,"value":380},{"type":38,"tag":279,"props":2862,"children":2863},{"class":281,"line":22},[2864],{"type":38,"tag":279,"props":2865,"children":2866},{"emptyLinePlaceholder":1346},[2867],{"type":44,"value":1349},{"type":38,"tag":279,"props":2869,"children":2870},{"class":281,"line":383},[2871],{"type":38,"tag":279,"props":2872,"children":2873},{"style":457},[2874],{"type":44,"value":2875},"\u002F\u002F Kick off client creation — no need to await before rendering;\n",{"type":38,"tag":279,"props":2877,"children":2878},{"class":281,"line":406},[2879],{"type":38,"tag":279,"props":2880,"children":2881},{"style":457},[2882],{"type":44,"value":2883},"\u002F\u002F the wallet registers via the wallet-standard register event (~1s later)\n",{"type":38,"tag":279,"props":2885,"children":2886},{"class":281,"line":453},[2887,2892,2896,2900],{"type":38,"tag":279,"props":2888,"children":2889},{"style":292},[2890],{"type":44,"value":2891},"void",{"type":38,"tag":279,"props":2893,"children":2894},{"style":317},[2895],{"type":44,"value":2835},{"type":38,"tag":279,"props":2897,"children":2898},{"style":306},[2899],{"type":44,"value":326},{"type":38,"tag":279,"props":2901,"children":2902},{"style":292},[2903],{"type":44,"value":403},{"type":38,"tag":279,"props":2905,"children":2906},{"class":281,"line":463},[2907,2911,2915,2919,2923,2927,2931,2935,2939,2943,2947,2951,2956,2960,2965,2969,2974],{"type":38,"tag":279,"props":2908,"children":2909},{"style":323},[2910],{"type":44,"value":702},{"type":38,"tag":279,"props":2912,"children":2913},{"style":292},[2914],{"type":44,"value":341},{"type":38,"tag":279,"props":2916,"children":2917},{"style":292},[2918],{"type":44,"value":711},{"type":38,"tag":279,"props":2920,"children":2921},{"style":323},[2922],{"type":44,"value":716},{"type":38,"tag":279,"props":2924,"children":2925},{"style":292},[2926],{"type":44,"value":341},{"type":38,"tag":279,"props":2928,"children":2929},{"style":292},[2930],{"type":44,"value":725},{"type":38,"tag":279,"props":2932,"children":2933},{"style":354},[2934],{"type":44,"value":730},{"type":38,"tag":279,"props":2936,"children":2937},{"style":292},[2938],{"type":44,"value":351},{"type":38,"tag":279,"props":2940,"children":2941},{"style":292},[2942],{"type":44,"value":819},{"type":38,"tag":279,"props":2944,"children":2945},{"style":323},[2946],{"type":44,"value":1796},{"type":38,"tag":279,"props":2948,"children":2949},{"style":292},[2950],{"type":44,"value":341},{"type":38,"tag":279,"props":2952,"children":2953},{"style":306},[2954],{"type":44,"value":2955}," window",{"type":38,"tag":279,"props":2957,"children":2958},{"style":292},[2959],{"type":44,"value":314},{"type":38,"tag":279,"props":2961,"children":2962},{"style":306},[2963],{"type":44,"value":2964},"location",{"type":38,"tag":279,"props":2966,"children":2967},{"style":292},[2968],{"type":44,"value":314},{"type":38,"tag":279,"props":2970,"children":2971},{"style":306},[2972],{"type":44,"value":2973},"href ",{"type":38,"tag":279,"props":2975,"children":2976},{"style":292},[2977],{"type":44,"value":2978},"},\n",{"type":38,"tag":279,"props":2980,"children":2981},{"class":281,"line":476},[2982,2986,2990],{"type":38,"tag":279,"props":2983,"children":2984},{"style":292},[2985],{"type":44,"value":371},{"type":38,"tag":279,"props":2987,"children":2988},{"style":306},[2989],{"type":44,"value":247},{"type":38,"tag":279,"props":2991,"children":2992},{"style":292},[2993],{"type":44,"value":380},{"type":38,"tag":279,"props":2995,"children":2996},{"class":281,"line":485},[2997],{"type":38,"tag":279,"props":2998,"children":2999},{"emptyLinePlaceholder":1346},[3000],{"type":44,"value":1349},{"type":38,"tag":279,"props":3002,"children":3003},{"class":281,"line":503},[3004,3008,3013,3017,3022,3027,3031,3036,3040,3044,3048,3052,3056,3061,3065],{"type":38,"tag":279,"props":3005,"children":3006},{"style":663},[3007],{"type":44,"value":666},{"type":38,"tag":279,"props":3009,"children":3010},{"style":306},[3011],{"type":44,"value":3012}," root ",{"type":38,"tag":279,"props":3014,"children":3015},{"style":292},[3016],{"type":44,"value":676},{"type":38,"tag":279,"props":3018,"children":3019},{"style":317},[3020],{"type":44,"value":3021}," createRoot",{"type":38,"tag":279,"props":3023,"children":3024},{"style":306},[3025],{"type":44,"value":3026},"(document",{"type":38,"tag":279,"props":3028,"children":3029},{"style":292},[3030],{"type":44,"value":314},{"type":38,"tag":279,"props":3032,"children":3033},{"style":317},[3034],{"type":44,"value":3035},"getElementById",{"type":38,"tag":279,"props":3037,"children":3038},{"style":306},[3039],{"type":44,"value":326},{"type":38,"tag":279,"props":3041,"children":3042},{"style":292},[3043],{"type":44,"value":351},{"type":38,"tag":279,"props":3045,"children":3046},{"style":354},[3047],{"type":44,"value":35},{"type":38,"tag":279,"props":3049,"children":3050},{"style":292},[3051],{"type":44,"value":351},{"type":38,"tag":279,"props":3053,"children":3054},{"style":306},[3055],{"type":44,"value":247},{"type":38,"tag":279,"props":3057,"children":3058},{"style":292},[3059],{"type":44,"value":3060},"!",{"type":38,"tag":279,"props":3062,"children":3063},{"style":306},[3064],{"type":44,"value":247},{"type":38,"tag":279,"props":3066,"children":3067},{"style":292},[3068],{"type":44,"value":380},{"type":38,"tag":279,"props":3070,"children":3071},{"class":281,"line":1398},[3072,3076,3080,3085,3090,3095,3100],{"type":38,"tag":279,"props":3073,"children":3074},{"style":306},[3075],{"type":44,"value":35},{"type":38,"tag":279,"props":3077,"children":3078},{"style":292},[3079],{"type":44,"value":314},{"type":38,"tag":279,"props":3081,"children":3082},{"style":317},[3083],{"type":44,"value":3084},"render",{"type":38,"tag":279,"props":3086,"children":3087},{"style":306},[3088],{"type":44,"value":3089},"(\u003C",{"type":38,"tag":279,"props":3091,"children":3092},{"style":1238},[3093],{"type":44,"value":3094},"App",{"type":38,"tag":279,"props":3096,"children":3097},{"style":306},[3098],{"type":44,"value":3099}," \u002F>)",{"type":38,"tag":279,"props":3101,"children":3102},{"style":292},[3103],{"type":44,"value":380},{"type":38,"tag":54,"props":3105,"children":3106},{},[3107,3111,3112,3118,3120,3126,3128,3132],{"type":38,"tag":122,"props":3108,"children":3109},{},[3110],{"type":44,"value":182},{"type":44,"value":1642},{"type":38,"tag":112,"props":3113,"children":3115},{"className":3114},[],[3116],{"type":44,"value":3117},"wallets",{"type":44,"value":3119}," prop on ",{"type":38,"tag":112,"props":3121,"children":3123},{"className":3122},[],[3124],{"type":44,"value":3125},"WalletProvider",{"type":44,"value":3127}," is not an empty array. MetaMask uses the wallet-standard auto-discovery protocol and must ",{"type":38,"tag":122,"props":3129,"children":3130},{},[3131],{"type":44,"value":554},{"type":44,"value":3133}," be listed manually.",{"type":38,"tag":54,"props":3135,"children":3136},{},[3137,3141,3143,3149],{"type":38,"tag":122,"props":3138,"children":3139},{},[3140],{"type":44,"value":160},{"type":44,"value":3142}," Always pass ",{"type":38,"tag":112,"props":3144,"children":3146},{"className":3145},[],[3147],{"type":44,"value":3148},"wallets={[]}",{"type":44,"value":341},{"type":38,"tag":268,"props":3151,"children":3155},{"className":3152,"code":3153,"language":3154,"meta":273,"style":273},"language-tsx shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003CWalletProvider wallets={[]} autoConnect>\n  \u003CWalletModalProvider>\n    \u003CApp \u002F>\n  \u003C\u002FWalletModalProvider>\n\u003C\u002FWalletProvider>\n","tsx",[3156],{"type":38,"tag":112,"props":3157,"children":3158},{"__ignoreMap":273},[3159,3201,3218,3235,3251],{"type":38,"tag":279,"props":3160,"children":3161},{"class":281,"line":282},[3162,3167,3171,3176,3181,3186,3191,3196],{"type":38,"tag":279,"props":3163,"children":3164},{"style":292},[3165],{"type":44,"value":3166},"\u003C",{"type":38,"tag":279,"props":3168,"children":3169},{"style":1238},[3170],{"type":44,"value":3125},{"type":38,"tag":279,"props":3172,"children":3173},{"style":663},[3174],{"type":44,"value":3175}," wallets",{"type":38,"tag":279,"props":3177,"children":3178},{"style":292},[3179],{"type":44,"value":3180},"={",{"type":38,"tag":279,"props":3182,"children":3183},{"style":306},[3184],{"type":44,"value":3185},"[]",{"type":38,"tag":279,"props":3187,"children":3188},{"style":292},[3189],{"type":44,"value":3190},"} ",{"type":38,"tag":279,"props":3192,"children":3193},{"style":663},[3194],{"type":44,"value":3195},"autoConnect",{"type":38,"tag":279,"props":3197,"children":3198},{"style":292},[3199],{"type":44,"value":3200},">\n",{"type":38,"tag":279,"props":3202,"children":3203},{"class":281,"line":22},[3204,3209,3214],{"type":38,"tag":279,"props":3205,"children":3206},{"style":292},[3207],{"type":44,"value":3208},"  \u003C",{"type":38,"tag":279,"props":3210,"children":3211},{"style":1238},[3212],{"type":44,"value":3213},"WalletModalProvider",{"type":38,"tag":279,"props":3215,"children":3216},{"style":292},[3217],{"type":44,"value":3200},{"type":38,"tag":279,"props":3219,"children":3220},{"class":281,"line":383},[3221,3226,3230],{"type":38,"tag":279,"props":3222,"children":3223},{"style":292},[3224],{"type":44,"value":3225},"    \u003C",{"type":38,"tag":279,"props":3227,"children":3228},{"style":1238},[3229],{"type":44,"value":3094},{"type":38,"tag":279,"props":3231,"children":3232},{"style":292},[3233],{"type":44,"value":3234}," \u002F>\n",{"type":38,"tag":279,"props":3236,"children":3237},{"class":281,"line":406},[3238,3243,3247],{"type":38,"tag":279,"props":3239,"children":3240},{"style":292},[3241],{"type":44,"value":3242},"  \u003C\u002F",{"type":38,"tag":279,"props":3244,"children":3245},{"style":1238},[3246],{"type":44,"value":3213},{"type":38,"tag":279,"props":3248,"children":3249},{"style":292},[3250],{"type":44,"value":3200},{"type":38,"tag":279,"props":3252,"children":3253},{"class":281,"line":453},[3254,3259,3263],{"type":38,"tag":279,"props":3255,"children":3256},{"style":292},[3257],{"type":44,"value":3258},"\u003C\u002F",{"type":38,"tag":279,"props":3260,"children":3261},{"style":1238},[3262],{"type":44,"value":3125},{"type":38,"tag":279,"props":3264,"children":3265},{"style":292},[3266],{"type":44,"value":3200},{"type":38,"tag":101,"props":3268,"children":3269},{},[],{"type":38,"tag":105,"props":3271,"children":3273},{"id":3272},"_11-solana-devnet-testnet-not-working",[3274],{"type":44,"value":3275},"11. Solana devnet \u002F testnet not working",{"type":38,"tag":54,"props":3277,"children":3278},{},[3279,3283],{"type":38,"tag":122,"props":3280,"children":3281},{},[3282],{"type":44,"value":255},{"type":44,"value":3284}," The SDK models mainnet, devnet, and testnet Solana scopes, but a given cluster's availability depends on the connected MetaMask build\u002Fversion — and public cluster RPC endpoints are frequently rate-limited or flaky.",{"type":38,"tag":54,"props":3286,"children":3287},{},[3288,3292,3294,3300],{"type":38,"tag":122,"props":3289,"children":3290},{},[3291],{"type":44,"value":160},{"type":44,"value":3293}," Confirm the connected wallet actually granted the devnet\u002Ftestnet scope (inspect ",{"type":38,"tag":112,"props":3295,"children":3297},{"className":3296},[],[3298],{"type":44,"value":3299},"session.sessionScopes",{"type":44,"value":3301},"), and don't assume a non-mainnet cluster is present — handle the connection error. If the scope is granted but reads fail, the issue is likely an unreliable RPC endpoint; use a dedicated provider instead of the public default:",{"type":38,"tag":268,"props":3303,"children":3305},{"className":270,"code":3304,"language":272,"meta":273,"style":273},"\u002F\u002F Public endpoints can be rate-limited or unavailable — use a dedicated RPC:\nconst endpoint = 'https:\u002F\u002Fapi.devnet.solana.com'; \u002F\u002F or your own Infura \u002FHelius \u002F QuickNode \u002F Alchemy URL\n",[3306],{"type":38,"tag":112,"props":3307,"children":3308},{"__ignoreMap":273},[3309,3317],{"type":38,"tag":279,"props":3310,"children":3311},{"class":281,"line":282},[3312],{"type":38,"tag":279,"props":3313,"children":3314},{"style":457},[3315],{"type":44,"value":3316},"\u002F\u002F Public endpoints can be rate-limited or unavailable — use a dedicated RPC:\n",{"type":38,"tag":279,"props":3318,"children":3319},{"class":281,"line":22},[3320,3324,3329,3333,3337,3342,3346,3351],{"type":38,"tag":279,"props":3321,"children":3322},{"style":663},[3323],{"type":44,"value":666},{"type":38,"tag":279,"props":3325,"children":3326},{"style":306},[3327],{"type":44,"value":3328}," endpoint ",{"type":38,"tag":279,"props":3330,"children":3331},{"style":292},[3332],{"type":44,"value":676},{"type":38,"tag":279,"props":3334,"children":3335},{"style":292},[3336],{"type":44,"value":725},{"type":38,"tag":279,"props":3338,"children":3339},{"style":354},[3340],{"type":44,"value":3341},"https:\u002F\u002Fapi.devnet.solana.com",{"type":38,"tag":279,"props":3343,"children":3344},{"style":292},[3345],{"type":44,"value":351},{"type":38,"tag":279,"props":3347,"children":3348},{"style":292},[3349],{"type":44,"value":3350},";",{"type":38,"tag":279,"props":3352,"children":3353},{"style":457},[3354],{"type":44,"value":3355}," \u002F\u002F or your own Infura \u002FHelius \u002F QuickNode \u002F Alchemy URL\n",{"type":38,"tag":101,"props":3357,"children":3358},{},[],{"type":38,"tag":105,"props":3360,"children":3362},{"id":3361},"_12-session-lost-after-page-reload",[3363],{"type":44,"value":3364},"12. Session lost after page reload",{"type":38,"tag":54,"props":3366,"children":3367},{},[3368,3372,3374,3379,3380,3386,3388,3393,3394,3400,3402,3408],{"type":38,"tag":122,"props":3369,"children":3370},{},[3371],{"type":44,"value":255},{"type":44,"value":3373}," The app is not re-deriving UI state after the automatic session restore. The EVM client syncs any persisted session ",{"type":38,"tag":122,"props":3375,"children":3376},{},[3377],{"type":44,"value":3378},"before",{"type":44,"value":1212},{"type":38,"tag":112,"props":3381,"children":3383},{"className":3382},[],[3384],{"type":44,"value":3385},"createEVMClient",{"type":44,"value":3387}," resolves, then re-emits ",{"type":38,"tag":112,"props":3389,"children":3391},{"className":3390},[],[3392],{"type":44,"value":320},{"type":44,"value":1166},{"type":38,"tag":112,"props":3395,"children":3397},{"className":3396},[],[3398],{"type":44,"value":3399},"accountsChanged",{"type":44,"value":3401}," on the provider. (The EIP-1193 provider never emits ",{"type":38,"tag":112,"props":3403,"children":3405},{"className":3404},[],[3406],{"type":44,"value":3407},"wallet_sessionChanged",{"type":44,"value":3409}," — that event exists only on the multichain client.)",{"type":38,"tag":54,"props":3411,"children":3412},{},[3413,3417],{"type":38,"tag":122,"props":3414,"children":3415},{},[3416],{"type":44,"value":160},{"type":44,"value":3418}," Check the cached state right after client creation, and subscribe to the provider events:",{"type":38,"tag":268,"props":3420,"children":3422},{"className":270,"code":3421,"language":272,"meta":273,"style":273},"const client = await createEVMClient({ \u002F* ... *\u002F });\n\n\u002F\u002F Synchronous check — a restored session is already reflected here\nconst account = client.getAccount();\nif (account) {\n  updateUI([account], client.getChainId());\n}\n\nconst provider = client.getProvider();\nprovider.on('connect', ({ accounts, chainId }) => updateUI(accounts, chainId));\nprovider.on('accountsChanged', (accounts) => updateUI(accounts, client.getChainId()));\n",[3423],{"type":38,"tag":112,"props":3424,"children":3425},{"__ignoreMap":273},[3426,3474,3481,3489,3527,3544,3593,3600,3607,3644,3731],{"type":38,"tag":279,"props":3427,"children":3428},{"class":281,"line":282},[3429,3433,3437,3441,3445,3449,3453,3457,3462,3466,3470],{"type":38,"tag":279,"props":3430,"children":3431},{"style":663},[3432],{"type":44,"value":666},{"type":38,"tag":279,"props":3434,"children":3435},{"style":306},[3436],{"type":44,"value":671},{"type":38,"tag":279,"props":3438,"children":3439},{"style":292},[3440],{"type":44,"value":676},{"type":38,"tag":279,"props":3442,"children":3443},{"style":286},[3444],{"type":44,"value":681},{"type":38,"tag":279,"props":3446,"children":3447},{"style":317},[3448],{"type":44,"value":686},{"type":38,"tag":279,"props":3450,"children":3451},{"style":306},[3452],{"type":44,"value":326},{"type":38,"tag":279,"props":3454,"children":3455},{"style":292},[3456],{"type":44,"value":331},{"type":38,"tag":279,"props":3458,"children":3459},{"style":457},[3460],{"type":44,"value":3461}," \u002F* ... *\u002F",{"type":38,"tag":279,"props":3463,"children":3464},{"style":292},[3465],{"type":44,"value":1075},{"type":38,"tag":279,"props":3467,"children":3468},{"style":306},[3469],{"type":44,"value":247},{"type":38,"tag":279,"props":3471,"children":3472},{"style":292},[3473],{"type":44,"value":380},{"type":38,"tag":279,"props":3475,"children":3476},{"class":281,"line":22},[3477],{"type":38,"tag":279,"props":3478,"children":3479},{"emptyLinePlaceholder":1346},[3480],{"type":44,"value":1349},{"type":38,"tag":279,"props":3482,"children":3483},{"class":281,"line":383},[3484],{"type":38,"tag":279,"props":3485,"children":3486},{"style":457},[3487],{"type":44,"value":3488},"\u002F\u002F Synchronous check — a restored session is already reflected here\n",{"type":38,"tag":279,"props":3490,"children":3491},{"class":281,"line":406},[3492,3496,3501,3505,3509,3513,3518,3523],{"type":38,"tag":279,"props":3493,"children":3494},{"style":663},[3495],{"type":44,"value":666},{"type":38,"tag":279,"props":3497,"children":3498},{"style":306},[3499],{"type":44,"value":3500}," account ",{"type":38,"tag":279,"props":3502,"children":3503},{"style":292},[3504],{"type":44,"value":676},{"type":38,"tag":279,"props":3506,"children":3507},{"style":306},[3508],{"type":44,"value":309},{"type":38,"tag":279,"props":3510,"children":3511},{"style":292},[3512],{"type":44,"value":314},{"type":38,"tag":279,"props":3514,"children":3515},{"style":317},[3516],{"type":44,"value":3517},"getAccount",{"type":38,"tag":279,"props":3519,"children":3520},{"style":306},[3521],{"type":44,"value":3522},"()",{"type":38,"tag":279,"props":3524,"children":3525},{"style":292},[3526],{"type":44,"value":380},{"type":38,"tag":279,"props":3528,"children":3529},{"class":281,"line":453},[3530,3535,3540],{"type":38,"tag":279,"props":3531,"children":3532},{"style":286},[3533],{"type":44,"value":3534},"if",{"type":38,"tag":279,"props":3536,"children":3537},{"style":306},[3538],{"type":44,"value":3539}," (account) ",{"type":38,"tag":279,"props":3541,"children":3542},{"style":292},[3543],{"type":44,"value":403},{"type":38,"tag":279,"props":3545,"children":3546},{"class":281,"line":463},[3547,3552,3557,3562,3567,3571,3575,3579,3584,3589],{"type":38,"tag":279,"props":3548,"children":3549},{"style":317},[3550],{"type":44,"value":3551},"  updateUI",{"type":38,"tag":279,"props":3553,"children":3554},{"style":323},[3555],{"type":44,"value":3556},"([",{"type":38,"tag":279,"props":3558,"children":3559},{"style":306},[3560],{"type":44,"value":3561},"account",{"type":38,"tag":279,"props":3563,"children":3564},{"style":323},[3565],{"type":44,"value":3566},"]",{"type":38,"tag":279,"props":3568,"children":3569},{"style":292},[3570],{"type":44,"value":819},{"type":38,"tag":279,"props":3572,"children":3573},{"style":306},[3574],{"type":44,"value":309},{"type":38,"tag":279,"props":3576,"children":3577},{"style":292},[3578],{"type":44,"value":314},{"type":38,"tag":279,"props":3580,"children":3581},{"style":317},[3582],{"type":44,"value":3583},"getChainId",{"type":38,"tag":279,"props":3585,"children":3586},{"style":323},[3587],{"type":44,"value":3588},"())",{"type":38,"tag":279,"props":3590,"children":3591},{"style":292},[3592],{"type":44,"value":380},{"type":38,"tag":279,"props":3594,"children":3595},{"class":281,"line":476},[3596],{"type":38,"tag":279,"props":3597,"children":3598},{"style":292},[3599],{"type":44,"value":509},{"type":38,"tag":279,"props":3601,"children":3602},{"class":281,"line":485},[3603],{"type":38,"tag":279,"props":3604,"children":3605},{"emptyLinePlaceholder":1346},[3606],{"type":44,"value":1349},{"type":38,"tag":279,"props":3608,"children":3609},{"class":281,"line":503},[3610,3614,3619,3623,3627,3631,3636,3640],{"type":38,"tag":279,"props":3611,"children":3612},{"style":663},[3613],{"type":44,"value":666},{"type":38,"tag":279,"props":3615,"children":3616},{"style":306},[3617],{"type":44,"value":3618}," provider ",{"type":38,"tag":279,"props":3620,"children":3621},{"style":292},[3622],{"type":44,"value":676},{"type":38,"tag":279,"props":3624,"children":3625},{"style":306},[3626],{"type":44,"value":309},{"type":38,"tag":279,"props":3628,"children":3629},{"style":292},[3630],{"type":44,"value":314},{"type":38,"tag":279,"props":3632,"children":3633},{"style":317},[3634],{"type":44,"value":3635},"getProvider",{"type":38,"tag":279,"props":3637,"children":3638},{"style":306},[3639],{"type":44,"value":3522},{"type":38,"tag":279,"props":3641,"children":3642},{"style":292},[3643],{"type":44,"value":380},{"type":38,"tag":279,"props":3645,"children":3646},{"class":281,"line":1398},[3647,3652,3656,3661,3665,3669,3673,3677,3681,3686,3691,3695,3700,3704,3708,3713,3718,3722,3727],{"type":38,"tag":279,"props":3648,"children":3649},{"style":306},[3650],{"type":44,"value":3651},"provider",{"type":38,"tag":279,"props":3653,"children":3654},{"style":292},[3655],{"type":44,"value":314},{"type":38,"tag":279,"props":3657,"children":3658},{"style":317},[3659],{"type":44,"value":3660},"on",{"type":38,"tag":279,"props":3662,"children":3663},{"style":306},[3664],{"type":44,"value":326},{"type":38,"tag":279,"props":3666,"children":3667},{"style":292},[3668],{"type":44,"value":351},{"type":38,"tag":279,"props":3670,"children":3671},{"style":354},[3672],{"type":44,"value":320},{"type":38,"tag":279,"props":3674,"children":3675},{"style":292},[3676],{"type":44,"value":351},{"type":38,"tag":279,"props":3678,"children":3679},{"style":292},[3680],{"type":44,"value":819},{"type":38,"tag":279,"props":3682,"children":3683},{"style":292},[3684],{"type":44,"value":3685}," ({",{"type":38,"tag":279,"props":3687,"children":3688},{"style":1281},[3689],{"type":44,"value":3690}," accounts",{"type":38,"tag":279,"props":3692,"children":3693},{"style":292},[3694],{"type":44,"value":819},{"type":38,"tag":279,"props":3696,"children":3697},{"style":1281},[3698],{"type":44,"value":3699}," chainId",{"type":38,"tag":279,"props":3701,"children":3702},{"style":292},[3703],{"type":44,"value":1455},{"type":38,"tag":279,"props":3705,"children":3706},{"style":663},[3707],{"type":44,"value":1871},{"type":38,"tag":279,"props":3709,"children":3710},{"style":317},[3711],{"type":44,"value":3712}," updateUI",{"type":38,"tag":279,"props":3714,"children":3715},{"style":306},[3716],{"type":44,"value":3717},"(accounts",{"type":38,"tag":279,"props":3719,"children":3720},{"style":292},[3721],{"type":44,"value":819},{"type":38,"tag":279,"props":3723,"children":3724},{"style":306},[3725],{"type":44,"value":3726}," chainId))",{"type":38,"tag":279,"props":3728,"children":3729},{"style":292},[3730],{"type":44,"value":380},{"type":38,"tag":279,"props":3732,"children":3733},{"class":281,"line":1462},[3734,3738,3742,3746,3750,3754,3758,3762,3766,3770,3775,3779,3783,3787,3791,3795,3799,3803,3807,3812],{"type":38,"tag":279,"props":3735,"children":3736},{"style":306},[3737],{"type":44,"value":3651},{"type":38,"tag":279,"props":3739,"children":3740},{"style":292},[3741],{"type":44,"value":314},{"type":38,"tag":279,"props":3743,"children":3744},{"style":317},[3745],{"type":44,"value":3660},{"type":38,"tag":279,"props":3747,"children":3748},{"style":306},[3749],{"type":44,"value":326},{"type":38,"tag":279,"props":3751,"children":3752},{"style":292},[3753],{"type":44,"value":351},{"type":38,"tag":279,"props":3755,"children":3756},{"style":354},[3757],{"type":44,"value":3399},{"type":38,"tag":279,"props":3759,"children":3760},{"style":292},[3761],{"type":44,"value":351},{"type":38,"tag":279,"props":3763,"children":3764},{"style":292},[3765],{"type":44,"value":819},{"type":38,"tag":279,"props":3767,"children":3768},{"style":292},[3769],{"type":44,"value":417},{"type":38,"tag":279,"props":3771,"children":3772},{"style":1281},[3773],{"type":44,"value":3774},"accounts",{"type":38,"tag":279,"props":3776,"children":3777},{"style":292},[3778],{"type":44,"value":247},{"type":38,"tag":279,"props":3780,"children":3781},{"style":663},[3782],{"type":44,"value":1871},{"type":38,"tag":279,"props":3784,"children":3785},{"style":317},[3786],{"type":44,"value":3712},{"type":38,"tag":279,"props":3788,"children":3789},{"style":306},[3790],{"type":44,"value":3717},{"type":38,"tag":279,"props":3792,"children":3793},{"style":292},[3794],{"type":44,"value":819},{"type":38,"tag":279,"props":3796,"children":3797},{"style":306},[3798],{"type":44,"value":309},{"type":38,"tag":279,"props":3800,"children":3801},{"style":292},[3802],{"type":44,"value":314},{"type":38,"tag":279,"props":3804,"children":3805},{"style":317},[3806],{"type":44,"value":3583},{"type":38,"tag":279,"props":3808,"children":3809},{"style":306},[3810],{"type":44,"value":3811},"()))",{"type":38,"tag":279,"props":3813,"children":3814},{"style":292},[3815],{"type":44,"value":380},{"type":38,"tag":54,"props":3817,"children":3818},{},[3819,3821,3827],{"type":44,"value":3820},"If you use the multichain client directly, listen there instead: ",{"type":38,"tag":112,"props":3822,"children":3824},{"className":3823},[],[3825],{"type":44,"value":3826},"client.on('wallet_sessionChanged', (session) => session?.sessionScopes ...)",{"type":44,"value":314},{"type":38,"tag":54,"props":3829,"children":3830},{},[3831,3833,3838],{"type":44,"value":3832},"Do not call ",{"type":38,"tag":112,"props":3834,"children":3836},{"className":3835},[],[3837],{"type":44,"value":117},{"type":44,"value":3839}," again immediately on page load if a session already exists.",{"type":38,"tag":101,"props":3841,"children":3842},{},[],{"type":38,"tag":105,"props":3844,"children":3846},{"id":3845},"_13-disconnect-doesnt-fully-disconnect",[3847,3849,3855],{"type":44,"value":3848},"13. ",{"type":38,"tag":112,"props":3850,"children":3852},{"className":3851},[],[3853],{"type":44,"value":3854},"disconnect()",{"type":44,"value":3856}," doesn't fully disconnect",{"type":38,"tag":54,"props":3858,"children":3859},{},[3860,3864,3866,3871,3873,3879,3881,3887,3889,3894,3896,3901,3902,3907,3908,3913,3915,3920,3922,3928,3930,3935,3936,3941,3942,3947],{"type":38,"tag":122,"props":3861,"children":3862},{},[3863],{"type":44,"value":255},{"type":44,"value":3865}," Disconnect behavior differs by client. On the ",{"type":38,"tag":122,"props":3867,"children":3868},{},[3869],{"type":44,"value":3870},"multichain",{"type":44,"value":3872}," client (",{"type":38,"tag":112,"props":3874,"children":3876},{"className":3875},[],[3877],{"type":44,"value":3878},"createMultichainClient",{"type":44,"value":3880},"), ",{"type":38,"tag":112,"props":3882,"children":3884},{"className":3883},[],[3885],{"type":44,"value":3886},"disconnect(scopes)",{"type":44,"value":3888}," with specific CAIP scopes only revokes those scopes; ",{"type":38,"tag":112,"props":3890,"children":3892},{"className":3891},[],[3893],{"type":44,"value":3854},{"type":44,"value":3895}," with no arguments revokes all. On the ",{"type":38,"tag":122,"props":3897,"children":3898},{},[3899],{"type":44,"value":3900},"EVM",{"type":44,"value":3872},{"type":38,"tag":112,"props":3903,"children":3905},{"className":3904},[],[3906],{"type":44,"value":3385},{"type":44,"value":3880},{"type":38,"tag":112,"props":3909,"children":3911},{"className":3910},[],[3912],{"type":44,"value":3854},{"type":44,"value":3914}," takes ",{"type":38,"tag":122,"props":3916,"children":3917},{},[3918],{"type":44,"value":3919},"no arguments",{"type":44,"value":3921}," and revokes only ",{"type":38,"tag":112,"props":3923,"children":3925},{"className":3924},[],[3926],{"type":44,"value":3927},"eip155:*",{"type":44,"value":3929}," scopes. On the ",{"type":38,"tag":122,"props":3931,"children":3932},{},[3933],{"type":44,"value":3934},"Solana",{"type":44,"value":3872},{"type":38,"tag":112,"props":3937,"children":3939},{"className":3938},[],[3940],{"type":44,"value":2794},{"type":44,"value":3880},{"type":38,"tag":112,"props":3943,"children":3945},{"className":3944},[],[3946],{"type":44,"value":3854},{"type":44,"value":3948}," takes no arguments and revokes only the Solana scopes.",{"type":38,"tag":54,"props":3950,"children":3951},{},[3952,3956,3958,3963],{"type":38,"tag":122,"props":3953,"children":3954},{},[3955],{"type":44,"value":160},{"type":44,"value":3957}," To fully terminate a multichain session, call the multichain client's ",{"type":38,"tag":112,"props":3959,"children":3961},{"className":3960},[],[3962],{"type":44,"value":3854},{"type":44,"value":3964}," with no arguments:",{"type":38,"tag":268,"props":3966,"children":3968},{"className":270,"code":3967,"language":272,"meta":273,"style":273},"\u002F\u002F Multichain client — partial revoke (only the specified scope)\nawait multichainClient.disconnect(['eip155:1']);\n\n\u002F\u002F Multichain client — full disconnect (all scopes)\nawait multichainClient.disconnect();\n\n\u002F\u002F EVM client — revokes eip155 scopes only (no scope argument)\nawait evmClient.disconnect();\n",[3969],{"type":38,"tag":112,"props":3970,"children":3971},{"__ignoreMap":273},[3972,3980,4028,4035,4043,4070,4077,4085],{"type":38,"tag":279,"props":3973,"children":3974},{"class":281,"line":282},[3975],{"type":38,"tag":279,"props":3976,"children":3977},{"style":457},[3978],{"type":44,"value":3979},"\u002F\u002F Multichain client — partial revoke (only the specified scope)\n",{"type":38,"tag":279,"props":3981,"children":3982},{"class":281,"line":22},[3983,3988,3993,3997,4002,4006,4010,4015,4019,4024],{"type":38,"tag":279,"props":3984,"children":3985},{"style":286},[3986],{"type":44,"value":3987},"await",{"type":38,"tag":279,"props":3989,"children":3990},{"style":306},[3991],{"type":44,"value":3992}," multichainClient",{"type":38,"tag":279,"props":3994,"children":3995},{"style":292},[3996],{"type":44,"value":314},{"type":38,"tag":279,"props":3998,"children":3999},{"style":317},[4000],{"type":44,"value":4001},"disconnect",{"type":38,"tag":279,"props":4003,"children":4004},{"style":306},[4005],{"type":44,"value":3556},{"type":38,"tag":279,"props":4007,"children":4008},{"style":292},[4009],{"type":44,"value":351},{"type":38,"tag":279,"props":4011,"children":4012},{"style":354},[4013],{"type":44,"value":4014},"eip155:1",{"type":38,"tag":279,"props":4016,"children":4017},{"style":292},[4018],{"type":44,"value":351},{"type":38,"tag":279,"props":4020,"children":4021},{"style":306},[4022],{"type":44,"value":4023},"])",{"type":38,"tag":279,"props":4025,"children":4026},{"style":292},[4027],{"type":44,"value":380},{"type":38,"tag":279,"props":4029,"children":4030},{"class":281,"line":383},[4031],{"type":38,"tag":279,"props":4032,"children":4033},{"emptyLinePlaceholder":1346},[4034],{"type":44,"value":1349},{"type":38,"tag":279,"props":4036,"children":4037},{"class":281,"line":406},[4038],{"type":38,"tag":279,"props":4039,"children":4040},{"style":457},[4041],{"type":44,"value":4042},"\u002F\u002F Multichain client — full disconnect (all scopes)\n",{"type":38,"tag":279,"props":4044,"children":4045},{"class":281,"line":453},[4046,4050,4054,4058,4062,4066],{"type":38,"tag":279,"props":4047,"children":4048},{"style":286},[4049],{"type":44,"value":3987},{"type":38,"tag":279,"props":4051,"children":4052},{"style":306},[4053],{"type":44,"value":3992},{"type":38,"tag":279,"props":4055,"children":4056},{"style":292},[4057],{"type":44,"value":314},{"type":38,"tag":279,"props":4059,"children":4060},{"style":317},[4061],{"type":44,"value":4001},{"type":38,"tag":279,"props":4063,"children":4064},{"style":306},[4065],{"type":44,"value":3522},{"type":38,"tag":279,"props":4067,"children":4068},{"style":292},[4069],{"type":44,"value":380},{"type":38,"tag":279,"props":4071,"children":4072},{"class":281,"line":463},[4073],{"type":38,"tag":279,"props":4074,"children":4075},{"emptyLinePlaceholder":1346},[4076],{"type":44,"value":1349},{"type":38,"tag":279,"props":4078,"children":4079},{"class":281,"line":476},[4080],{"type":38,"tag":279,"props":4081,"children":4082},{"style":457},[4083],{"type":44,"value":4084},"\u002F\u002F EVM client — revokes eip155 scopes only (no scope argument)\n",{"type":38,"tag":279,"props":4086,"children":4087},{"class":281,"line":485},[4088,4092,4097,4101,4105,4109],{"type":38,"tag":279,"props":4089,"children":4090},{"style":286},[4091],{"type":44,"value":3987},{"type":38,"tag":279,"props":4093,"children":4094},{"style":306},[4095],{"type":44,"value":4096}," evmClient",{"type":38,"tag":279,"props":4098,"children":4099},{"style":292},[4100],{"type":44,"value":314},{"type":38,"tag":279,"props":4102,"children":4103},{"style":317},[4104],{"type":44,"value":4001},{"type":38,"tag":279,"props":4106,"children":4107},{"style":306},[4108],{"type":44,"value":3522},{"type":38,"tag":279,"props":4110,"children":4111},{"style":292},[4112],{"type":44,"value":380},{"type":38,"tag":101,"props":4114,"children":4115},{},[],{"type":38,"tag":105,"props":4117,"children":4119},{"id":4118},"_14-qr-code-not-appearing",[4120],{"type":44,"value":4121},"14. QR code not appearing",{"type":38,"tag":54,"props":4123,"children":4124},{},[4125,4129,4131,4136],{"type":38,"tag":122,"props":4126,"children":4127},{},[4128],{"type":44,"value":126},{"type":44,"value":4130}," Headless mode is enabled but no ",{"type":38,"tag":112,"props":4132,"children":4134},{"className":4133},[],[4135],{"type":44,"value":150},{"type":44,"value":4137}," listener is registered. The SDK generates the URI but has nowhere to render it.",{"type":38,"tag":54,"props":4139,"children":4140},{},[4141,4145,4146,4152,4154,4159,4161,4165,4167,4172,4174,4180],{"type":38,"tag":122,"props":4142,"children":4143},{},[4144],{"type":44,"value":160},{"type":44,"value":162},{"type":38,"tag":112,"props":4147,"children":4149},{"className":4148},[],[4150],{"type":44,"value":4151},"displayUri",{"type":44,"value":4153}," handler (or a provider ",{"type":38,"tag":112,"props":4155,"children":4157},{"className":4156},[],[4158],{"type":44,"value":150},{"type":44,"value":4160}," listener) ",{"type":38,"tag":122,"props":4162,"children":4163},{},[4164],{"type":44,"value":3378},{"type":44,"value":4166}," calling ",{"type":38,"tag":112,"props":4168,"children":4170},{"className":4169},[],[4171],{"type":44,"value":117},{"type":44,"value":4173},". The EVM client itself has no ",{"type":38,"tag":112,"props":4175,"children":4177},{"className":4176},[],[4178],{"type":44,"value":4179},".on()",{"type":44,"value":4181}," method:",{"type":38,"tag":268,"props":4183,"children":4185},{"className":270,"code":4184,"language":272,"meta":273,"style":273},"const client = await createEVMClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n  api: { supportedNetworks: getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY' }) },\n  ui: { headless: true },\n  eventHandlers: {\n    displayUri: (uri) => renderQrCode(uri), \u002F\u002F your QR rendering logic\n  },\n});\n\n\u002F\u002F Equivalent: client.getProvider().on('display_uri', renderQrCode);\n\nawait client.connect({ chainIds: ['0x1'] });\n",[4186],{"type":38,"tag":112,"props":4187,"children":4188},{"__ignoreMap":273},[4189,4220,4291,4360,4395,4411,4459,4466,4481,4488,4496,4503],{"type":38,"tag":279,"props":4190,"children":4191},{"class":281,"line":282},[4192,4196,4200,4204,4208,4212,4216],{"type":38,"tag":279,"props":4193,"children":4194},{"style":663},[4195],{"type":44,"value":666},{"type":38,"tag":279,"props":4197,"children":4198},{"style":306},[4199],{"type":44,"value":671},{"type":38,"tag":279,"props":4201,"children":4202},{"style":292},[4203],{"type":44,"value":676},{"type":38,"tag":279,"props":4205,"children":4206},{"style":286},[4207],{"type":44,"value":681},{"type":38,"tag":279,"props":4209,"children":4210},{"style":317},[4211],{"type":44,"value":686},{"type":38,"tag":279,"props":4213,"children":4214},{"style":306},[4215],{"type":44,"value":326},{"type":38,"tag":279,"props":4217,"children":4218},{"style":292},[4219],{"type":44,"value":403},{"type":38,"tag":279,"props":4221,"children":4222},{"class":281,"line":22},[4223,4227,4231,4235,4239,4243,4247,4251,4255,4259,4263,4267,4271,4275,4279,4283,4287],{"type":38,"tag":279,"props":4224,"children":4225},{"style":323},[4226],{"type":44,"value":702},{"type":38,"tag":279,"props":4228,"children":4229},{"style":292},[4230],{"type":44,"value":341},{"type":38,"tag":279,"props":4232,"children":4233},{"style":292},[4234],{"type":44,"value":711},{"type":38,"tag":279,"props":4236,"children":4237},{"style":323},[4238],{"type":44,"value":716},{"type":38,"tag":279,"props":4240,"children":4241},{"style":292},[4242],{"type":44,"value":341},{"type":38,"tag":279,"props":4244,"children":4245},{"style":292},[4246],{"type":44,"value":725},{"type":38,"tag":279,"props":4248,"children":4249},{"style":354},[4250],{"type":44,"value":730},{"type":38,"tag":279,"props":4252,"children":4253},{"style":292},[4254],{"type":44,"value":351},{"type":38,"tag":279,"props":4256,"children":4257},{"style":292},[4258],{"type":44,"value":819},{"type":38,"tag":279,"props":4260,"children":4261},{"style":323},[4262],{"type":44,"value":1796},{"type":38,"tag":279,"props":4264,"children":4265},{"style":292},[4266],{"type":44,"value":341},{"type":38,"tag":279,"props":4268,"children":4269},{"style":306},[4270],{"type":44,"value":2955},{"type":38,"tag":279,"props":4272,"children":4273},{"style":292},[4274],{"type":44,"value":314},{"type":38,"tag":279,"props":4276,"children":4277},{"style":306},[4278],{"type":44,"value":2964},{"type":38,"tag":279,"props":4280,"children":4281},{"style":292},[4282],{"type":44,"value":314},{"type":38,"tag":279,"props":4284,"children":4285},{"style":306},[4286],{"type":44,"value":2973},{"type":38,"tag":279,"props":4288,"children":4289},{"style":292},[4290],{"type":44,"value":2978},{"type":38,"tag":279,"props":4292,"children":4293},{"class":281,"line":383},[4294,4298,4302,4306,4311,4315,4320,4324,4328,4332,4336,4340,4344,4348,4352,4356],{"type":38,"tag":279,"props":4295,"children":4296},{"style":323},[4297],{"type":44,"value":747},{"type":38,"tag":279,"props":4299,"children":4300},{"style":292},[4301],{"type":44,"value":341},{"type":38,"tag":279,"props":4303,"children":4304},{"style":292},[4305],{"type":44,"value":711},{"type":38,"tag":279,"props":4307,"children":4308},{"style":323},[4309],{"type":44,"value":4310}," supportedNetworks",{"type":38,"tag":279,"props":4312,"children":4313},{"style":292},[4314],{"type":44,"value":341},{"type":38,"tag":279,"props":4316,"children":4317},{"style":317},[4318],{"type":44,"value":4319}," getInfuraRpcUrls",{"type":38,"tag":279,"props":4321,"children":4322},{"style":306},[4323],{"type":44,"value":326},{"type":38,"tag":279,"props":4325,"children":4326},{"style":292},[4327],{"type":44,"value":331},{"type":38,"tag":279,"props":4329,"children":4330},{"style":323},[4331],{"type":44,"value":797},{"type":38,"tag":279,"props":4333,"children":4334},{"style":292},[4335],{"type":44,"value":341},{"type":38,"tag":279,"props":4337,"children":4338},{"style":292},[4339],{"type":44,"value":725},{"type":38,"tag":279,"props":4341,"children":4342},{"style":354},[4343],{"type":44,"value":810},{"type":38,"tag":279,"props":4345,"children":4346},{"style":292},[4347],{"type":44,"value":351},{"type":38,"tag":279,"props":4349,"children":4350},{"style":292},[4351],{"type":44,"value":1075},{"type":38,"tag":279,"props":4353,"children":4354},{"style":306},[4355],{"type":44,"value":446},{"type":38,"tag":279,"props":4357,"children":4358},{"style":292},[4359],{"type":44,"value":2978},{"type":38,"tag":279,"props":4361,"children":4362},{"class":281,"line":406},[4363,4368,4372,4376,4381,4385,4391],{"type":38,"tag":279,"props":4364,"children":4365},{"style":323},[4366],{"type":44,"value":4367},"  ui",{"type":38,"tag":279,"props":4369,"children":4370},{"style":292},[4371],{"type":44,"value":341},{"type":38,"tag":279,"props":4373,"children":4374},{"style":292},[4375],{"type":44,"value":711},{"type":38,"tag":279,"props":4377,"children":4378},{"style":323},[4379],{"type":44,"value":4380}," headless",{"type":38,"tag":279,"props":4382,"children":4383},{"style":292},[4384],{"type":44,"value":341},{"type":38,"tag":279,"props":4386,"children":4388},{"style":4387},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[4389],{"type":44,"value":4390}," true",{"type":38,"tag":279,"props":4392,"children":4393},{"style":292},[4394],{"type":44,"value":739},{"type":38,"tag":279,"props":4396,"children":4397},{"class":281,"line":453},[4398,4403,4407],{"type":38,"tag":279,"props":4399,"children":4400},{"style":323},[4401],{"type":44,"value":4402},"  eventHandlers",{"type":38,"tag":279,"props":4404,"children":4405},{"style":292},[4406],{"type":44,"value":341},{"type":38,"tag":279,"props":4408,"children":4409},{"style":292},[4410],{"type":44,"value":295},{"type":38,"tag":279,"props":4412,"children":4413},{"class":281,"line":463},[4414,4419,4423,4427,4432,4436,4440,4445,4450,4454],{"type":38,"tag":279,"props":4415,"children":4416},{"style":317},[4417],{"type":44,"value":4418},"    displayUri",{"type":38,"tag":279,"props":4420,"children":4421},{"style":292},[4422],{"type":44,"value":341},{"type":38,"tag":279,"props":4424,"children":4425},{"style":292},[4426],{"type":44,"value":417},{"type":38,"tag":279,"props":4428,"children":4429},{"style":1281},[4430],{"type":44,"value":4431},"uri",{"type":38,"tag":279,"props":4433,"children":4434},{"style":292},[4435],{"type":44,"value":247},{"type":38,"tag":279,"props":4437,"children":4438},{"style":663},[4439],{"type":44,"value":1871},{"type":38,"tag":279,"props":4441,"children":4442},{"style":317},[4443],{"type":44,"value":4444}," renderQrCode",{"type":38,"tag":279,"props":4446,"children":4447},{"style":306},[4448],{"type":44,"value":4449},"(uri)",{"type":38,"tag":279,"props":4451,"children":4452},{"style":292},[4453],{"type":44,"value":819},{"type":38,"tag":279,"props":4455,"children":4456},{"style":457},[4457],{"type":44,"value":4458}," \u002F\u002F your QR rendering logic\n",{"type":38,"tag":279,"props":4460,"children":4461},{"class":281,"line":476},[4462],{"type":38,"tag":279,"props":4463,"children":4464},{"style":292},[4465],{"type":44,"value":948},{"type":38,"tag":279,"props":4467,"children":4468},{"class":281,"line":485},[4469,4473,4477],{"type":38,"tag":279,"props":4470,"children":4471},{"style":292},[4472],{"type":44,"value":371},{"type":38,"tag":279,"props":4474,"children":4475},{"style":306},[4476],{"type":44,"value":247},{"type":38,"tag":279,"props":4478,"children":4479},{"style":292},[4480],{"type":44,"value":380},{"type":38,"tag":279,"props":4482,"children":4483},{"class":281,"line":503},[4484],{"type":38,"tag":279,"props":4485,"children":4486},{"emptyLinePlaceholder":1346},[4487],{"type":44,"value":1349},{"type":38,"tag":279,"props":4489,"children":4490},{"class":281,"line":1398},[4491],{"type":38,"tag":279,"props":4492,"children":4493},{"style":457},[4494],{"type":44,"value":4495},"\u002F\u002F Equivalent: client.getProvider().on('display_uri', renderQrCode);\n",{"type":38,"tag":279,"props":4497,"children":4498},{"class":281,"line":1462},[4499],{"type":38,"tag":279,"props":4500,"children":4501},{"emptyLinePlaceholder":1346},[4502],{"type":44,"value":1349},{"type":38,"tag":279,"props":4504,"children":4505},{"class":281,"line":1487},[4506,4510,4514,4518,4522,4526,4530,4534,4538,4542,4546,4550,4554,4558,4562,4566],{"type":38,"tag":279,"props":4507,"children":4508},{"style":286},[4509],{"type":44,"value":3987},{"type":38,"tag":279,"props":4511,"children":4512},{"style":306},[4513],{"type":44,"value":309},{"type":38,"tag":279,"props":4515,"children":4516},{"style":292},[4517],{"type":44,"value":314},{"type":38,"tag":279,"props":4519,"children":4520},{"style":317},[4521],{"type":44,"value":320},{"type":38,"tag":279,"props":4523,"children":4524},{"style":306},[4525],{"type":44,"value":326},{"type":38,"tag":279,"props":4527,"children":4528},{"style":292},[4529],{"type":44,"value":331},{"type":38,"tag":279,"props":4531,"children":4532},{"style":323},[4533],{"type":44,"value":336},{"type":38,"tag":279,"props":4535,"children":4536},{"style":292},[4537],{"type":44,"value":341},{"type":38,"tag":279,"props":4539,"children":4540},{"style":306},[4541],{"type":44,"value":346},{"type":38,"tag":279,"props":4543,"children":4544},{"style":292},[4545],{"type":44,"value":351},{"type":38,"tag":279,"props":4547,"children":4548},{"style":354},[4549],{"type":44,"value":357},{"type":38,"tag":279,"props":4551,"children":4552},{"style":292},[4553],{"type":44,"value":351},{"type":38,"tag":279,"props":4555,"children":4556},{"style":306},[4557],{"type":44,"value":366},{"type":38,"tag":279,"props":4559,"children":4560},{"style":292},[4561],{"type":44,"value":371},{"type":38,"tag":279,"props":4563,"children":4564},{"style":306},[4565],{"type":44,"value":247},{"type":38,"tag":279,"props":4567,"children":4568},{"style":292},[4569],{"type":44,"value":380},{"type":38,"tag":54,"props":4571,"children":4572},{},[4573,4577],{"type":38,"tag":122,"props":4574,"children":4575},{},[4576],{"type":44,"value":182},{"type":44,"value":4578}," The extension is detected and the SDK uses the extension transport instead of MWP. No QR is generated because none is needed.",{"type":38,"tag":54,"props":4580,"children":4581},{},[4582,4586],{"type":38,"tag":122,"props":4583,"children":4584},{},[4585],{"type":44,"value":160},{"type":44,"value":4587}," Force the MWP\u002FQR flow by disabling extension preference:",{"type":38,"tag":268,"props":4589,"children":4591},{"className":270,"code":4590,"language":272,"meta":273,"style":273},"const client = await createEVMClient({\n  dapp: { name: 'My DApp', url: window.location.href },\n  api: { supportedNetworks: getInfuraRpcUrls({ infuraApiKey: 'YOUR_INFURA_KEY' }) },\n  ui: { preferExtension: false },\n});\n",[4592],{"type":38,"tag":112,"props":4593,"children":4594},{"__ignoreMap":273},[4595,4626,4697,4764,4797],{"type":38,"tag":279,"props":4596,"children":4597},{"class":281,"line":282},[4598,4602,4606,4610,4614,4618,4622],{"type":38,"tag":279,"props":4599,"children":4600},{"style":663},[4601],{"type":44,"value":666},{"type":38,"tag":279,"props":4603,"children":4604},{"style":306},[4605],{"type":44,"value":671},{"type":38,"tag":279,"props":4607,"children":4608},{"style":292},[4609],{"type":44,"value":676},{"type":38,"tag":279,"props":4611,"children":4612},{"style":286},[4613],{"type":44,"value":681},{"type":38,"tag":279,"props":4615,"children":4616},{"style":317},[4617],{"type":44,"value":686},{"type":38,"tag":279,"props":4619,"children":4620},{"style":306},[4621],{"type":44,"value":326},{"type":38,"tag":279,"props":4623,"children":4624},{"style":292},[4625],{"type":44,"value":403},{"type":38,"tag":279,"props":4627,"children":4628},{"class":281,"line":22},[4629,4633,4637,4641,4645,4649,4653,4657,4661,4665,4669,4673,4677,4681,4685,4689,4693],{"type":38,"tag":279,"props":4630,"children":4631},{"style":323},[4632],{"type":44,"value":702},{"type":38,"tag":279,"props":4634,"children":4635},{"style":292},[4636],{"type":44,"value":341},{"type":38,"tag":279,"props":4638,"children":4639},{"style":292},[4640],{"type":44,"value":711},{"type":38,"tag":279,"props":4642,"children":4643},{"style":323},[4644],{"type":44,"value":716},{"type":38,"tag":279,"props":4646,"children":4647},{"style":292},[4648],{"type":44,"value":341},{"type":38,"tag":279,"props":4650,"children":4651},{"style":292},[4652],{"type":44,"value":725},{"type":38,"tag":279,"props":4654,"children":4655},{"style":354},[4656],{"type":44,"value":730},{"type":38,"tag":279,"props":4658,"children":4659},{"style":292},[4660],{"type":44,"value":351},{"type":38,"tag":279,"props":4662,"children":4663},{"style":292},[4664],{"type":44,"value":819},{"type":38,"tag":279,"props":4666,"children":4667},{"style":323},[4668],{"type":44,"value":1796},{"type":38,"tag":279,"props":4670,"children":4671},{"style":292},[4672],{"type":44,"value":341},{"type":38,"tag":279,"props":4674,"children":4675},{"style":306},[4676],{"type":44,"value":2955},{"type":38,"tag":279,"props":4678,"children":4679},{"style":292},[4680],{"type":44,"value":314},{"type":38,"tag":279,"props":4682,"children":4683},{"style":306},[4684],{"type":44,"value":2964},{"type":38,"tag":279,"props":4686,"children":4687},{"style":292},[4688],{"type":44,"value":314},{"type":38,"tag":279,"props":4690,"children":4691},{"style":306},[4692],{"type":44,"value":2973},{"type":38,"tag":279,"props":4694,"children":4695},{"style":292},[4696],{"type":44,"value":2978},{"type":38,"tag":279,"props":4698,"children":4699},{"class":281,"line":383},[4700,4704,4708,4712,4716,4720,4724,4728,4732,4736,4740,4744,4748,4752,4756,4760],{"type":38,"tag":279,"props":4701,"children":4702},{"style":323},[4703],{"type":44,"value":747},{"type":38,"tag":279,"props":4705,"children":4706},{"style":292},[4707],{"type":44,"value":341},{"type":38,"tag":279,"props":4709,"children":4710},{"style":292},[4711],{"type":44,"value":711},{"type":38,"tag":279,"props":4713,"children":4714},{"style":323},[4715],{"type":44,"value":4310},{"type":38,"tag":279,"props":4717,"children":4718},{"style":292},[4719],{"type":44,"value":341},{"type":38,"tag":279,"props":4721,"children":4722},{"style":317},[4723],{"type":44,"value":4319},{"type":38,"tag":279,"props":4725,"children":4726},{"style":306},[4727],{"type":44,"value":326},{"type":38,"tag":279,"props":4729,"children":4730},{"style":292},[4731],{"type":44,"value":331},{"type":38,"tag":279,"props":4733,"children":4734},{"style":323},[4735],{"type":44,"value":797},{"type":38,"tag":279,"props":4737,"children":4738},{"style":292},[4739],{"type":44,"value":341},{"type":38,"tag":279,"props":4741,"children":4742},{"style":292},[4743],{"type":44,"value":725},{"type":38,"tag":279,"props":4745,"children":4746},{"style":354},[4747],{"type":44,"value":810},{"type":38,"tag":279,"props":4749,"children":4750},{"style":292},[4751],{"type":44,"value":351},{"type":38,"tag":279,"props":4753,"children":4754},{"style":292},[4755],{"type":44,"value":1075},{"type":38,"tag":279,"props":4757,"children":4758},{"style":306},[4759],{"type":44,"value":446},{"type":38,"tag":279,"props":4761,"children":4762},{"style":292},[4763],{"type":44,"value":2978},{"type":38,"tag":279,"props":4765,"children":4766},{"class":281,"line":406},[4767,4771,4775,4779,4784,4788,4793],{"type":38,"tag":279,"props":4768,"children":4769},{"style":323},[4770],{"type":44,"value":4367},{"type":38,"tag":279,"props":4772,"children":4773},{"style":292},[4774],{"type":44,"value":341},{"type":38,"tag":279,"props":4776,"children":4777},{"style":292},[4778],{"type":44,"value":711},{"type":38,"tag":279,"props":4780,"children":4781},{"style":323},[4782],{"type":44,"value":4783}," preferExtension",{"type":38,"tag":279,"props":4785,"children":4786},{"style":292},[4787],{"type":44,"value":341},{"type":38,"tag":279,"props":4789,"children":4790},{"style":4387},[4791],{"type":44,"value":4792}," false",{"type":38,"tag":279,"props":4794,"children":4795},{"style":292},[4796],{"type":44,"value":739},{"type":38,"tag":279,"props":4798,"children":4799},{"class":281,"line":453},[4800,4804,4808],{"type":38,"tag":279,"props":4801,"children":4802},{"style":292},[4803],{"type":44,"value":371},{"type":38,"tag":279,"props":4805,"children":4806},{"style":306},[4807],{"type":44,"value":247},{"type":38,"tag":279,"props":4809,"children":4810},{"style":292},[4811],{"type":44,"value":380},{"type":38,"tag":101,"props":4813,"children":4814},{},[],{"type":38,"tag":105,"props":4816,"children":4818},{"id":4817},"_15-extension-transport-used-but-want-mobile-qr",[4819],{"type":44,"value":4820},"15. Extension transport used but want mobile QR",{"type":38,"tag":54,"props":4822,"children":4823},{},[4824,4828,4829,4834,4836,4841],{"type":38,"tag":122,"props":4825,"children":4826},{},[4827],{"type":44,"value":255},{"type":44,"value":1212},{"type":38,"tag":112,"props":4830,"children":4832},{"className":4831},[],[4833],{"type":44,"value":134},{"type":44,"value":4835}," defaults to ",{"type":38,"tag":112,"props":4837,"children":4839},{"className":4838},[],[4840],{"type":44,"value":142},{"type":44,"value":4842},". When the MetaMask browser extension is installed, the SDK always prefers it.",{"type":38,"tag":54,"props":4844,"children":4845},{},[4846,4850,4852,4858],{"type":38,"tag":122,"props":4847,"children":4848},{},[4849],{"type":44,"value":160},{"type":44,"value":4851}," Set ",{"type":38,"tag":112,"props":4853,"children":4855},{"className":4854},[],[4856],{"type":44,"value":4857},"ui.preferExtension = false",{"type":44,"value":341},{"type":38,"tag":268,"props":4860,"children":4861},{"className":270,"code":4590,"language":272,"meta":273,"style":273},[4862],{"type":38,"tag":112,"props":4863,"children":4864},{"__ignoreMap":273},[4865,4896,4967,5034,5065],{"type":38,"tag":279,"props":4866,"children":4867},{"class":281,"line":282},[4868,4872,4876,4880,4884,4888,4892],{"type":38,"tag":279,"props":4869,"children":4870},{"style":663},[4871],{"type":44,"value":666},{"type":38,"tag":279,"props":4873,"children":4874},{"style":306},[4875],{"type":44,"value":671},{"type":38,"tag":279,"props":4877,"children":4878},{"style":292},[4879],{"type":44,"value":676},{"type":38,"tag":279,"props":4881,"children":4882},{"style":286},[4883],{"type":44,"value":681},{"type":38,"tag":279,"props":4885,"children":4886},{"style":317},[4887],{"type":44,"value":686},{"type":38,"tag":279,"props":4889,"children":4890},{"style":306},[4891],{"type":44,"value":326},{"type":38,"tag":279,"props":4893,"children":4894},{"style":292},[4895],{"type":44,"value":403},{"type":38,"tag":279,"props":4897,"children":4898},{"class":281,"line":22},[4899,4903,4907,4911,4915,4919,4923,4927,4931,4935,4939,4943,4947,4951,4955,4959,4963],{"type":38,"tag":279,"props":4900,"children":4901},{"style":323},[4902],{"type":44,"value":702},{"type":38,"tag":279,"props":4904,"children":4905},{"style":292},[4906],{"type":44,"value":341},{"type":38,"tag":279,"props":4908,"children":4909},{"style":292},[4910],{"type":44,"value":711},{"type":38,"tag":279,"props":4912,"children":4913},{"style":323},[4914],{"type":44,"value":716},{"type":38,"tag":279,"props":4916,"children":4917},{"style":292},[4918],{"type":44,"value":341},{"type":38,"tag":279,"props":4920,"children":4921},{"style":292},[4922],{"type":44,"value":725},{"type":38,"tag":279,"props":4924,"children":4925},{"style":354},[4926],{"type":44,"value":730},{"type":38,"tag":279,"props":4928,"children":4929},{"style":292},[4930],{"type":44,"value":351},{"type":38,"tag":279,"props":4932,"children":4933},{"style":292},[4934],{"type":44,"value":819},{"type":38,"tag":279,"props":4936,"children":4937},{"style":323},[4938],{"type":44,"value":1796},{"type":38,"tag":279,"props":4940,"children":4941},{"style":292},[4942],{"type":44,"value":341},{"type":38,"tag":279,"props":4944,"children":4945},{"style":306},[4946],{"type":44,"value":2955},{"type":38,"tag":279,"props":4948,"children":4949},{"style":292},[4950],{"type":44,"value":314},{"type":38,"tag":279,"props":4952,"children":4953},{"style":306},[4954],{"type":44,"value":2964},{"type":38,"tag":279,"props":4956,"children":4957},{"style":292},[4958],{"type":44,"value":314},{"type":38,"tag":279,"props":4960,"children":4961},{"style":306},[4962],{"type":44,"value":2973},{"type":38,"tag":279,"props":4964,"children":4965},{"style":292},[4966],{"type":44,"value":2978},{"type":38,"tag":279,"props":4968,"children":4969},{"class":281,"line":383},[4970,4974,4978,4982,4986,4990,4994,4998,5002,5006,5010,5014,5018,5022,5026,5030],{"type":38,"tag":279,"props":4971,"children":4972},{"style":323},[4973],{"type":44,"value":747},{"type":38,"tag":279,"props":4975,"children":4976},{"style":292},[4977],{"type":44,"value":341},{"type":38,"tag":279,"props":4979,"children":4980},{"style":292},[4981],{"type":44,"value":711},{"type":38,"tag":279,"props":4983,"children":4984},{"style":323},[4985],{"type":44,"value":4310},{"type":38,"tag":279,"props":4987,"children":4988},{"style":292},[4989],{"type":44,"value":341},{"type":38,"tag":279,"props":4991,"children":4992},{"style":317},[4993],{"type":44,"value":4319},{"type":38,"tag":279,"props":4995,"children":4996},{"style":306},[4997],{"type":44,"value":326},{"type":38,"tag":279,"props":4999,"children":5000},{"style":292},[5001],{"type":44,"value":331},{"type":38,"tag":279,"props":5003,"children":5004},{"style":323},[5005],{"type":44,"value":797},{"type":38,"tag":279,"props":5007,"children":5008},{"style":292},[5009],{"type":44,"value":341},{"type":38,"tag":279,"props":5011,"children":5012},{"style":292},[5013],{"type":44,"value":725},{"type":38,"tag":279,"props":5015,"children":5016},{"style":354},[5017],{"type":44,"value":810},{"type":38,"tag":279,"props":5019,"children":5020},{"style":292},[5021],{"type":44,"value":351},{"type":38,"tag":279,"props":5023,"children":5024},{"style":292},[5025],{"type":44,"value":1075},{"type":38,"tag":279,"props":5027,"children":5028},{"style":306},[5029],{"type":44,"value":446},{"type":38,"tag":279,"props":5031,"children":5032},{"style":292},[5033],{"type":44,"value":2978},{"type":38,"tag":279,"props":5035,"children":5036},{"class":281,"line":406},[5037,5041,5045,5049,5053,5057,5061],{"type":38,"tag":279,"props":5038,"children":5039},{"style":323},[5040],{"type":44,"value":4367},{"type":38,"tag":279,"props":5042,"children":5043},{"style":292},[5044],{"type":44,"value":341},{"type":38,"tag":279,"props":5046,"children":5047},{"style":292},[5048],{"type":44,"value":711},{"type":38,"tag":279,"props":5050,"children":5051},{"style":323},[5052],{"type":44,"value":4783},{"type":38,"tag":279,"props":5054,"children":5055},{"style":292},[5056],{"type":44,"value":341},{"type":38,"tag":279,"props":5058,"children":5059},{"style":4387},[5060],{"type":44,"value":4792},{"type":38,"tag":279,"props":5062,"children":5063},{"style":292},[5064],{"type":44,"value":739},{"type":38,"tag":279,"props":5066,"children":5067},{"class":281,"line":453},[5068,5072,5076],{"type":38,"tag":279,"props":5069,"children":5070},{"style":292},[5071],{"type":44,"value":371},{"type":38,"tag":279,"props":5073,"children":5074},{"style":306},[5075],{"type":44,"value":247},{"type":38,"tag":279,"props":5077,"children":5078},{"style":292},[5079],{"type":44,"value":380},{"type":38,"tag":101,"props":5081,"children":5082},{},[],{"type":38,"tag":105,"props":5084,"children":5086},{"id":5085},"_16-qr-code-modal-blocked-by-dapp-content-security-policy",[5087,5089],{"type":44,"value":5088},"16. QR code modal blocked by dapp ",{"type":38,"tag":112,"props":5090,"children":5092},{"className":5091},[],[5093],{"type":44,"value":5094},"Content-Security-Policy",{"type":38,"tag":54,"props":5096,"children":5097},{},[5098,5102,5104,5110,5112,5118,5120,5125,5127,5133],{"type":38,"tag":122,"props":5099,"children":5100},{},[5101],{"type":44,"value":255},{"type":44,"value":5103}," Older versions of the QR modal created a ",{"type":38,"tag":112,"props":5105,"children":5107},{"className":5106},[],[5108],{"type":44,"value":5109},"blob:",{"type":44,"value":5111}," URL for the embedded MetaMask icon. If the host page's CSP ",{"type":38,"tag":112,"props":5113,"children":5115},{"className":5114},[],[5116],{"type":44,"value":5117},"connect-src",{"type":44,"value":5119}," directive did not include ",{"type":38,"tag":112,"props":5121,"children":5123},{"className":5122},[],[5124],{"type":44,"value":5109},{"type":44,"value":5126},", the ",{"type":38,"tag":112,"props":5128,"children":5130},{"className":5129},[],[5131],{"type":44,"value":5132},"XMLHttpRequest",{"type":44,"value":5134}," used to build the blob was rejected and the QR image failed to render.",{"type":38,"tag":54,"props":5136,"children":5137},{},[5138,5142,5144,5150,5152,5158,5160,5166,5168,5174,5176,5182,5184,5190],{"type":38,"tag":122,"props":5139,"children":5140},{},[5141],{"type":44,"value":160},{"type":44,"value":5143}," Upgrade to ",{"type":38,"tag":112,"props":5145,"children":5147},{"className":5146},[],[5148],{"type":44,"value":5149},"@metamask\u002Fconnect-multichain ^0.12.1",{"type":44,"value":5151}," and ",{"type":38,"tag":112,"props":5153,"children":5155},{"className":5154},[],[5156],{"type":44,"value":5157},"@metamask\u002Fmultichain-ui ^0.4.1",{"type":44,"value":5159}," (shipped in connect-monorepo ",{"type":38,"tag":112,"props":5161,"children":5163},{"className":5162},[],[5164],{"type":44,"value":5165},"v30.0.0",{"type":44,"value":5167},"). The icon is now embedded as a ",{"type":38,"tag":112,"props":5169,"children":5171},{"className":5170},[],[5172],{"type":44,"value":5173},"data:",{"type":44,"value":5175}," URI and ",{"type":38,"tag":112,"props":5177,"children":5179},{"className":5178},[],[5180],{"type":44,"value":5181},"saveAsBlob: false",{"type":44,"value":5183}," is set in the QR image options, so no ",{"type":38,"tag":112,"props":5185,"children":5187},{"className":5186},[],[5188],{"type":44,"value":5189},"connect-src blob:",{"type":44,"value":5191}," entry is needed:",{"type":38,"tag":268,"props":5193,"children":5197},{"className":5194,"code":5195,"language":5196,"meta":273,"style":273},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install @metamask\u002Fconnect-multichain@^0.12.1 @metamask\u002Fmultichain-ui@^0.4.1\n# or update @metamask\u002Fconnect-evm to ^0.11.2 \u002F @metamask\u002Fconnect-solana to ^0.8.1\n# which pin the fixed multichain version transitively\n","bash",[5198],{"type":38,"tag":112,"props":5199,"children":5200},{"__ignoreMap":273},[5201,5224,5232],{"type":38,"tag":279,"props":5202,"children":5203},{"class":281,"line":282},[5204,5209,5214,5219],{"type":38,"tag":279,"props":5205,"children":5206},{"style":1238},[5207],{"type":44,"value":5208},"npm",{"type":38,"tag":279,"props":5210,"children":5211},{"style":354},[5212],{"type":44,"value":5213}," install",{"type":38,"tag":279,"props":5215,"children":5216},{"style":354},[5217],{"type":44,"value":5218}," @metamask\u002Fconnect-multichain@^0.12.1",{"type":38,"tag":279,"props":5220,"children":5221},{"style":354},[5222],{"type":44,"value":5223}," @metamask\u002Fmultichain-ui@^0.4.1\n",{"type":38,"tag":279,"props":5225,"children":5226},{"class":281,"line":22},[5227],{"type":38,"tag":279,"props":5228,"children":5229},{"style":457},[5230],{"type":44,"value":5231},"# or update @metamask\u002Fconnect-evm to ^0.11.2 \u002F @metamask\u002Fconnect-solana to ^0.8.1\n",{"type":38,"tag":279,"props":5233,"children":5234},{"class":281,"line":383},[5235],{"type":38,"tag":279,"props":5236,"children":5237},{"style":457},[5238],{"type":44,"value":5239},"# which pin the fixed multichain version transitively\n",{"type":38,"tag":101,"props":5241,"children":5242},{},[],{"type":38,"tag":105,"props":5244,"children":5246},{"id":5245},"_17-eth_coinbase-returns-an-array-inconsistent-account-responses",[5247,5249,5255],{"type":44,"value":5248},"17. ",{"type":38,"tag":112,"props":5250,"children":5252},{"className":5251},[],[5253],{"type":44,"value":5254},"eth_coinbase",{"type":44,"value":5256}," returns an array \u002F inconsistent account responses",{"type":38,"tag":54,"props":5258,"children":5259},{},[5260,5264,5266,5272,5274,5280,5281,5286,5288,5293,5295,5301],{"type":38,"tag":122,"props":5261,"children":5262},{},[5263],{"type":44,"value":255},{"type":44,"value":5265}," Before ",{"type":38,"tag":112,"props":5267,"children":5269},{"className":5268},[],[5270],{"type":44,"value":5271},"@metamask\u002Fconnect-evm",{"type":44,"value":5273}," 1.3.1, the SDK's intercepted EIP-1193 account requests returned the same accounts array for both ",{"type":38,"tag":112,"props":5275,"children":5277},{"className":5276},[],[5278],{"type":44,"value":5279},"eth_requestAccounts",{"type":44,"value":5151},{"type":38,"tag":112,"props":5282,"children":5284},{"className":5283},[],[5285],{"type":44,"value":5254},{"type":44,"value":5287},". Per spec, ",{"type":38,"tag":112,"props":5289,"children":5291},{"className":5290},[],[5292],{"type":44,"value":5254},{"type":44,"value":5294}," should return a single address (",{"type":38,"tag":112,"props":5296,"children":5298},{"className":5297},[],[5299],{"type":44,"value":5300},"Address",{"type":44,"value":5302},"), not an array.",{"type":38,"tag":54,"props":5304,"children":5305},{},[5306,5310,5311,5316,5318,5324,5326,5331,5333,5339,5340,5345,5347,5352,5354,5359],{"type":38,"tag":122,"props":5307,"children":5308},{},[5309],{"type":44,"value":160},{"type":44,"value":5143},{"type":38,"tag":112,"props":5312,"children":5314},{"className":5313},[],[5315],{"type":44,"value":5271},{"type":44,"value":5317}," ^1.3.1 (connect-monorepo ",{"type":38,"tag":112,"props":5319,"children":5321},{"className":5320},[],[5322],{"type":44,"value":5323},"v35.0.0",{"type":44,"value":5325},"). After upgrade, ",{"type":38,"tag":112,"props":5327,"children":5329},{"className":5328},[],[5330],{"type":44,"value":5279},{"type":44,"value":5332}," resolves to ",{"type":38,"tag":112,"props":5334,"children":5336},{"className":5335},[],[5337],{"type":44,"value":5338},"Address[]",{"type":44,"value":5151},{"type":38,"tag":112,"props":5341,"children":5343},{"className":5342},[],[5344],{"type":44,"value":5254},{"type":44,"value":5346}," resolves to the currently selected account (",{"type":38,"tag":112,"props":5348,"children":5350},{"className":5349},[],[5351],{"type":44,"value":5300},{"type":44,"value":5353},"). Update any code that destructured ",{"type":38,"tag":112,"props":5355,"children":5357},{"className":5356},[],[5358],{"type":44,"value":5254},{"type":44,"value":5360}," as an array:",{"type":38,"tag":268,"props":5362,"children":5364},{"className":270,"code":5363,"language":272,"meta":273,"style":273},"const accounts = await provider.request({ method: 'eth_requestAccounts' });\nconst coinbase = await provider.request({ method: 'eth_coinbase' });\n\nconsole.log(accounts[0]); \u002F\u002F selected account\nconsole.log(coinbase);    \u002F\u002F same address as accounts[0] — a string, NOT an array\n",[5365],{"type":38,"tag":112,"props":5366,"children":5367},{"__ignoreMap":273},[5368,5443,5515,5522,5562],{"type":38,"tag":279,"props":5369,"children":5370},{"class":281,"line":282},[5371,5375,5380,5384,5388,5393,5397,5402,5406,5410,5415,5419,5423,5427,5431,5435,5439],{"type":38,"tag":279,"props":5372,"children":5373},{"style":663},[5374],{"type":44,"value":666},{"type":38,"tag":279,"props":5376,"children":5377},{"style":306},[5378],{"type":44,"value":5379}," accounts ",{"type":38,"tag":279,"props":5381,"children":5382},{"style":292},[5383],{"type":44,"value":676},{"type":38,"tag":279,"props":5385,"children":5386},{"style":286},[5387],{"type":44,"value":681},{"type":38,"tag":279,"props":5389,"children":5390},{"style":306},[5391],{"type":44,"value":5392}," provider",{"type":38,"tag":279,"props":5394,"children":5395},{"style":292},[5396],{"type":44,"value":314},{"type":38,"tag":279,"props":5398,"children":5399},{"style":317},[5400],{"type":44,"value":5401},"request",{"type":38,"tag":279,"props":5403,"children":5404},{"style":306},[5405],{"type":44,"value":326},{"type":38,"tag":279,"props":5407,"children":5408},{"style":292},[5409],{"type":44,"value":331},{"type":38,"tag":279,"props":5411,"children":5412},{"style":323},[5413],{"type":44,"value":5414}," method",{"type":38,"tag":279,"props":5416,"children":5417},{"style":292},[5418],{"type":44,"value":341},{"type":38,"tag":279,"props":5420,"children":5421},{"style":292},[5422],{"type":44,"value":725},{"type":38,"tag":279,"props":5424,"children":5425},{"style":354},[5426],{"type":44,"value":5279},{"type":38,"tag":279,"props":5428,"children":5429},{"style":292},[5430],{"type":44,"value":351},{"type":38,"tag":279,"props":5432,"children":5433},{"style":292},[5434],{"type":44,"value":1075},{"type":38,"tag":279,"props":5436,"children":5437},{"style":306},[5438],{"type":44,"value":247},{"type":38,"tag":279,"props":5440,"children":5441},{"style":292},[5442],{"type":44,"value":380},{"type":38,"tag":279,"props":5444,"children":5445},{"class":281,"line":22},[5446,5450,5455,5459,5463,5467,5471,5475,5479,5483,5487,5491,5495,5499,5503,5507,5511],{"type":38,"tag":279,"props":5447,"children":5448},{"style":663},[5449],{"type":44,"value":666},{"type":38,"tag":279,"props":5451,"children":5452},{"style":306},[5453],{"type":44,"value":5454}," coinbase ",{"type":38,"tag":279,"props":5456,"children":5457},{"style":292},[5458],{"type":44,"value":676},{"type":38,"tag":279,"props":5460,"children":5461},{"style":286},[5462],{"type":44,"value":681},{"type":38,"tag":279,"props":5464,"children":5465},{"style":306},[5466],{"type":44,"value":5392},{"type":38,"tag":279,"props":5468,"children":5469},{"style":292},[5470],{"type":44,"value":314},{"type":38,"tag":279,"props":5472,"children":5473},{"style":317},[5474],{"type":44,"value":5401},{"type":38,"tag":279,"props":5476,"children":5477},{"style":306},[5478],{"type":44,"value":326},{"type":38,"tag":279,"props":5480,"children":5481},{"style":292},[5482],{"type":44,"value":331},{"type":38,"tag":279,"props":5484,"children":5485},{"style":323},[5486],{"type":44,"value":5414},{"type":38,"tag":279,"props":5488,"children":5489},{"style":292},[5490],{"type":44,"value":341},{"type":38,"tag":279,"props":5492,"children":5493},{"style":292},[5494],{"type":44,"value":725},{"type":38,"tag":279,"props":5496,"children":5497},{"style":354},[5498],{"type":44,"value":5254},{"type":38,"tag":279,"props":5500,"children":5501},{"style":292},[5502],{"type":44,"value":351},{"type":38,"tag":279,"props":5504,"children":5505},{"style":292},[5506],{"type":44,"value":1075},{"type":38,"tag":279,"props":5508,"children":5509},{"style":306},[5510],{"type":44,"value":247},{"type":38,"tag":279,"props":5512,"children":5513},{"style":292},[5514],{"type":44,"value":380},{"type":38,"tag":279,"props":5516,"children":5517},{"class":281,"line":383},[5518],{"type":38,"tag":279,"props":5519,"children":5520},{"emptyLinePlaceholder":1346},[5521],{"type":44,"value":1349},{"type":38,"tag":279,"props":5523,"children":5524},{"class":281,"line":406},[5525,5530,5534,5539,5544,5549,5553,5557],{"type":38,"tag":279,"props":5526,"children":5527},{"style":306},[5528],{"type":44,"value":5529},"console",{"type":38,"tag":279,"props":5531,"children":5532},{"style":292},[5533],{"type":44,"value":314},{"type":38,"tag":279,"props":5535,"children":5536},{"style":317},[5537],{"type":44,"value":5538},"log",{"type":38,"tag":279,"props":5540,"children":5541},{"style":306},[5542],{"type":44,"value":5543},"(accounts[",{"type":38,"tag":279,"props":5545,"children":5546},{"style":438},[5547],{"type":44,"value":5548},"0",{"type":38,"tag":279,"props":5550,"children":5551},{"style":306},[5552],{"type":44,"value":4023},{"type":38,"tag":279,"props":5554,"children":5555},{"style":292},[5556],{"type":44,"value":3350},{"type":38,"tag":279,"props":5558,"children":5559},{"style":457},[5560],{"type":44,"value":5561}," \u002F\u002F selected account\n",{"type":38,"tag":279,"props":5563,"children":5564},{"class":281,"line":453},[5565,5569,5573,5577,5582,5586],{"type":38,"tag":279,"props":5566,"children":5567},{"style":306},[5568],{"type":44,"value":5529},{"type":38,"tag":279,"props":5570,"children":5571},{"style":292},[5572],{"type":44,"value":314},{"type":38,"tag":279,"props":5574,"children":5575},{"style":317},[5576],{"type":44,"value":5538},{"type":38,"tag":279,"props":5578,"children":5579},{"style":306},[5580],{"type":44,"value":5581},"(coinbase)",{"type":38,"tag":279,"props":5583,"children":5584},{"style":292},[5585],{"type":44,"value":3350},{"type":38,"tag":279,"props":5587,"children":5588},{"style":457},[5589],{"type":44,"value":5590},"    \u002F\u002F same address as accounts[0] — a string, NOT an array\n",{"type":38,"tag":268,"props":5592,"children":5594},{"className":5194,"code":5593,"language":5196,"meta":273,"style":273},"npm install @metamask\u002Fconnect-evm@^1.3.1\n",[5595],{"type":38,"tag":112,"props":5596,"children":5597},{"__ignoreMap":273},[5598],{"type":38,"tag":279,"props":5599,"children":5600},{"class":281,"line":282},[5601,5605,5609],{"type":38,"tag":279,"props":5602,"children":5603},{"style":1238},[5604],{"type":44,"value":5208},{"type":38,"tag":279,"props":5606,"children":5607},{"style":354},[5608],{"type":44,"value":5213},{"type":38,"tag":279,"props":5610,"children":5611},{"style":354},[5612],{"type":44,"value":5613}," @metamask\u002Fconnect-evm@^1.3.1\n",{"type":38,"tag":101,"props":5615,"children":5616},{},[],{"type":38,"tag":105,"props":5618,"children":5620},{"id":5619},"_18-wallet_switchethereumchain-masks-unrecognized-chain-id-with-no-chain-configuration-found",[5621,5623,5628,5630,5636,5638],{"type":44,"value":5622},"18. ",{"type":38,"tag":112,"props":5624,"children":5626},{"className":5625},[],[5627],{"type":44,"value":632},{"type":44,"value":5629}," masks ",{"type":38,"tag":112,"props":5631,"children":5633},{"className":5632},[],[5634],{"type":44,"value":5635},"Unrecognized chain ID",{"type":44,"value":5637}," with ",{"type":38,"tag":112,"props":5639,"children":5641},{"className":5640},[],[5642],{"type":44,"value":5643},"No chain configuration found.",{"type":38,"tag":54,"props":5645,"children":5646},{},[5647,5651,5652,5657,5659,5665,5667,5673,5675,5680,5682,5687,5689,5694,5696,5702],{"type":38,"tag":122,"props":5648,"children":5649},{},[5650],{"type":44,"value":255},{"type":44,"value":5265},{"type":38,"tag":112,"props":5653,"children":5655},{"className":5654},[],[5656],{"type":44,"value":5271},{"type":44,"value":5658}," 1.2.0, calling ",{"type":38,"tag":112,"props":5660,"children":5662},{"className":5661},[],[5663],{"type":44,"value":5664},"client.switchChain({ chainId })",{"type":44,"value":5666}," without a ",{"type":38,"tag":112,"props":5668,"children":5670},{"className":5669},[],[5671],{"type":44,"value":5672},"chainConfiguration",{"type":44,"value":5674}," fallback (or invoking ",{"type":38,"tag":112,"props":5676,"children":5678},{"className":5677},[],[5679],{"type":44,"value":632},{"type":44,"value":5681}," directly) replaced the wallet's original ",{"type":38,"tag":112,"props":5683,"children":5685},{"className":5684},[],[5686],{"type":44,"value":5635},{"type":44,"value":5688}," error with the wrapper message ",{"type":38,"tag":112,"props":5690,"children":5692},{"className":5691},[],[5693],{"type":44,"value":5643},{"type":44,"value":5695},", hiding the underlying ",{"type":38,"tag":112,"props":5697,"children":5699},{"className":5698},[],[5700],{"type":44,"value":5701},"4902",{"type":44,"value":5703}," code from the dapp.",{"type":38,"tag":54,"props":5705,"children":5706},{},[5707,5711,5712,5717,5719,5725,5727,5732,5734,5739,5741,5747],{"type":38,"tag":122,"props":5708,"children":5709},{},[5710],{"type":44,"value":160},{"type":44,"value":5143},{"type":38,"tag":112,"props":5713,"children":5715},{"className":5714},[],[5716],{"type":44,"value":5271},{"type":44,"value":5718}," ^1.2.0 (connect-monorepo ",{"type":38,"tag":112,"props":5720,"children":5722},{"className":5721},[],[5723],{"type":44,"value":5724},"v33.0.0",{"type":44,"value":5726},"). The original wallet error (EIP-1193 code ",{"type":38,"tag":112,"props":5728,"children":5730},{"className":5729},[],[5731],{"type":44,"value":5701},{"type":44,"value":5733},") is now forwarded to the dapp. Handle it explicitly — either retry with a ",{"type":38,"tag":112,"props":5735,"children":5737},{"className":5736},[],[5738],{"type":44,"value":5672},{"type":44,"value":5740}," fallback or call ",{"type":38,"tag":112,"props":5742,"children":5744},{"className":5743},[],[5745],{"type":44,"value":5746},"wallet_addEthereumChain",{"type":44,"value":341},{"type":38,"tag":268,"props":5749,"children":5751},{"className":270,"code":5750,"language":272,"meta":273,"style":273},"try {\n  await client.switchChain({ chainId: '0xa4b1' });\n} catch (err) {\n  if ((err as { code?: number }).code === 4902) {\n    await client.switchChain({\n      chainId: '0xa4b1',\n      chainConfiguration: {\n        chainId: '0xa4b1',\n        chainName: 'Arbitrum One',\n        rpcUrls: ['https:\u002F\u002Farb1.arbitrum.io\u002Frpc'],\n        nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },\n      },\n    });\n    return;\n  }\n  throw err;\n}\n",[5752],{"type":38,"tag":112,"props":5753,"children":5754},{"__ignoreMap":273},[5755,5766,5826,5845,5917,5945,5973,5989,6017,6046,6082,6167,6175,6191,6202,6209,6224],{"type":38,"tag":279,"props":5756,"children":5757},{"class":281,"line":282},[5758,5762],{"type":38,"tag":279,"props":5759,"children":5760},{"style":286},[5761],{"type":44,"value":289},{"type":38,"tag":279,"props":5763,"children":5764},{"style":292},[5765],{"type":44,"value":295},{"type":38,"tag":279,"props":5767,"children":5768},{"class":281,"line":22},[5769,5773,5777,5781,5786,5790,5794,5798,5802,5806,5810,5814,5818,5822],{"type":38,"tag":279,"props":5770,"children":5771},{"style":286},[5772],{"type":44,"value":303},{"type":38,"tag":279,"props":5774,"children":5775},{"style":306},[5776],{"type":44,"value":309},{"type":38,"tag":279,"props":5778,"children":5779},{"style":292},[5780],{"type":44,"value":314},{"type":38,"tag":279,"props":5782,"children":5783},{"style":317},[5784],{"type":44,"value":5785},"switchChain",{"type":38,"tag":279,"props":5787,"children":5788},{"style":323},[5789],{"type":44,"value":326},{"type":38,"tag":279,"props":5791,"children":5792},{"style":292},[5793],{"type":44,"value":331},{"type":38,"tag":279,"props":5795,"children":5796},{"style":323},[5797],{"type":44,"value":3699},{"type":38,"tag":279,"props":5799,"children":5800},{"style":292},[5801],{"type":44,"value":341},{"type":38,"tag":279,"props":5803,"children":5804},{"style":292},[5805],{"type":44,"value":725},{"type":38,"tag":279,"props":5807,"children":5808},{"style":354},[5809],{"type":44,"value":907},{"type":38,"tag":279,"props":5811,"children":5812},{"style":292},[5813],{"type":44,"value":351},{"type":38,"tag":279,"props":5815,"children":5816},{"style":292},[5817],{"type":44,"value":1075},{"type":38,"tag":279,"props":5819,"children":5820},{"style":323},[5821],{"type":44,"value":247},{"type":38,"tag":279,"props":5823,"children":5824},{"style":292},[5825],{"type":44,"value":380},{"type":38,"tag":279,"props":5827,"children":5828},{"class":281,"line":383},[5829,5833,5837,5841],{"type":38,"tag":279,"props":5830,"children":5831},{"style":292},[5832],{"type":44,"value":371},{"type":38,"tag":279,"props":5834,"children":5835},{"style":286},[5836],{"type":44,"value":393},{"type":38,"tag":279,"props":5838,"children":5839},{"style":306},[5840],{"type":44,"value":398},{"type":38,"tag":279,"props":5842,"children":5843},{"style":292},[5844],{"type":44,"value":403},{"type":38,"tag":279,"props":5846,"children":5847},{"class":281,"line":406},[5848,5852,5857,5861,5866,5870,5875,5879,5884,5888,5892,5896,5900,5904,5909,5913],{"type":38,"tag":279,"props":5849,"children":5850},{"style":286},[5851],{"type":44,"value":412},{"type":38,"tag":279,"props":5853,"children":5854},{"style":323},[5855],{"type":44,"value":5856}," ((",{"type":38,"tag":279,"props":5858,"children":5859},{"style":306},[5860],{"type":44,"value":422},{"type":38,"tag":279,"props":5862,"children":5863},{"style":286},[5864],{"type":44,"value":5865}," as",{"type":38,"tag":279,"props":5867,"children":5868},{"style":292},[5869],{"type":44,"value":711},{"type":38,"tag":279,"props":5871,"children":5872},{"style":323},[5873],{"type":44,"value":5874}," code",{"type":38,"tag":279,"props":5876,"children":5877},{"style":292},[5878],{"type":44,"value":1433},{"type":38,"tag":279,"props":5880,"children":5881},{"style":1238},[5882],{"type":44,"value":5883}," number",{"type":38,"tag":279,"props":5885,"children":5886},{"style":292},[5887],{"type":44,"value":1075},{"type":38,"tag":279,"props":5889,"children":5890},{"style":323},[5891],{"type":44,"value":247},{"type":38,"tag":279,"props":5893,"children":5894},{"style":292},[5895],{"type":44,"value":314},{"type":38,"tag":279,"props":5897,"children":5898},{"style":306},[5899],{"type":44,"value":112},{"type":38,"tag":279,"props":5901,"children":5902},{"style":292},[5903],{"type":44,"value":435},{"type":38,"tag":279,"props":5905,"children":5906},{"style":438},[5907],{"type":44,"value":5908}," 4902",{"type":38,"tag":279,"props":5910,"children":5911},{"style":323},[5912],{"type":44,"value":446},{"type":38,"tag":279,"props":5914,"children":5915},{"style":292},[5916],{"type":44,"value":403},{"type":38,"tag":279,"props":5918,"children":5919},{"class":281,"line":453},[5920,5925,5929,5933,5937,5941],{"type":38,"tag":279,"props":5921,"children":5922},{"style":286},[5923],{"type":44,"value":5924},"    await",{"type":38,"tag":279,"props":5926,"children":5927},{"style":306},[5928],{"type":44,"value":309},{"type":38,"tag":279,"props":5930,"children":5931},{"style":292},[5932],{"type":44,"value":314},{"type":38,"tag":279,"props":5934,"children":5935},{"style":317},[5936],{"type":44,"value":5785},{"type":38,"tag":279,"props":5938,"children":5939},{"style":323},[5940],{"type":44,"value":326},{"type":38,"tag":279,"props":5942,"children":5943},{"style":292},[5944],{"type":44,"value":403},{"type":38,"tag":279,"props":5946,"children":5947},{"class":281,"line":463},[5948,5953,5957,5961,5965,5969],{"type":38,"tag":279,"props":5949,"children":5950},{"style":323},[5951],{"type":44,"value":5952},"      chainId",{"type":38,"tag":279,"props":5954,"children":5955},{"style":292},[5956],{"type":44,"value":341},{"type":38,"tag":279,"props":5958,"children":5959},{"style":292},[5960],{"type":44,"value":725},{"type":38,"tag":279,"props":5962,"children":5963},{"style":354},[5964],{"type":44,"value":907},{"type":38,"tag":279,"props":5966,"children":5967},{"style":292},[5968],{"type":44,"value":351},{"type":38,"tag":279,"props":5970,"children":5971},{"style":292},[5972],{"type":44,"value":894},{"type":38,"tag":279,"props":5974,"children":5975},{"class":281,"line":476},[5976,5981,5985],{"type":38,"tag":279,"props":5977,"children":5978},{"style":323},[5979],{"type":44,"value":5980},"      chainConfiguration",{"type":38,"tag":279,"props":5982,"children":5983},{"style":292},[5984],{"type":44,"value":341},{"type":38,"tag":279,"props":5986,"children":5987},{"style":292},[5988],{"type":44,"value":295},{"type":38,"tag":279,"props":5990,"children":5991},{"class":281,"line":485},[5992,5997,6001,6005,6009,6013],{"type":38,"tag":279,"props":5993,"children":5994},{"style":323},[5995],{"type":44,"value":5996},"        chainId",{"type":38,"tag":279,"props":5998,"children":5999},{"style":292},[6000],{"type":44,"value":341},{"type":38,"tag":279,"props":6002,"children":6003},{"style":292},[6004],{"type":44,"value":725},{"type":38,"tag":279,"props":6006,"children":6007},{"style":354},[6008],{"type":44,"value":907},{"type":38,"tag":279,"props":6010,"children":6011},{"style":292},[6012],{"type":44,"value":351},{"type":38,"tag":279,"props":6014,"children":6015},{"style":292},[6016],{"type":44,"value":894},{"type":38,"tag":279,"props":6018,"children":6019},{"class":281,"line":503},[6020,6025,6029,6033,6038,6042],{"type":38,"tag":279,"props":6021,"children":6022},{"style":323},[6023],{"type":44,"value":6024},"        chainName",{"type":38,"tag":279,"props":6026,"children":6027},{"style":292},[6028],{"type":44,"value":341},{"type":38,"tag":279,"props":6030,"children":6031},{"style":292},[6032],{"type":44,"value":725},{"type":38,"tag":279,"props":6034,"children":6035},{"style":354},[6036],{"type":44,"value":6037},"Arbitrum One",{"type":38,"tag":279,"props":6039,"children":6040},{"style":292},[6041],{"type":44,"value":351},{"type":38,"tag":279,"props":6043,"children":6044},{"style":292},[6045],{"type":44,"value":894},{"type":38,"tag":279,"props":6047,"children":6048},{"class":281,"line":1398},[6049,6054,6058,6062,6066,6070,6074,6078],{"type":38,"tag":279,"props":6050,"children":6051},{"style":323},[6052],{"type":44,"value":6053},"        rpcUrls",{"type":38,"tag":279,"props":6055,"children":6056},{"style":292},[6057],{"type":44,"value":341},{"type":38,"tag":279,"props":6059,"children":6060},{"style":323},[6061],{"type":44,"value":346},{"type":38,"tag":279,"props":6063,"children":6064},{"style":292},[6065],{"type":44,"value":351},{"type":38,"tag":279,"props":6067,"children":6068},{"style":354},[6069],{"type":44,"value":924},{"type":38,"tag":279,"props":6071,"children":6072},{"style":292},[6073],{"type":44,"value":351},{"type":38,"tag":279,"props":6075,"children":6076},{"style":323},[6077],{"type":44,"value":3566},{"type":38,"tag":279,"props":6079,"children":6080},{"style":292},[6081],{"type":44,"value":894},{"type":38,"tag":279,"props":6083,"children":6084},{"class":281,"line":1462},[6085,6090,6094,6098,6102,6106,6110,6115,6119,6123,6128,6132,6136,6141,6145,6149,6154,6158,6163],{"type":38,"tag":279,"props":6086,"children":6087},{"style":323},[6088],{"type":44,"value":6089},"        nativeCurrency",{"type":38,"tag":279,"props":6091,"children":6092},{"style":292},[6093],{"type":44,"value":341},{"type":38,"tag":279,"props":6095,"children":6096},{"style":292},[6097],{"type":44,"value":711},{"type":38,"tag":279,"props":6099,"children":6100},{"style":323},[6101],{"type":44,"value":716},{"type":38,"tag":279,"props":6103,"children":6104},{"style":292},[6105],{"type":44,"value":341},{"type":38,"tag":279,"props":6107,"children":6108},{"style":292},[6109],{"type":44,"value":725},{"type":38,"tag":279,"props":6111,"children":6112},{"style":354},[6113],{"type":44,"value":6114},"Ether",{"type":38,"tag":279,"props":6116,"children":6117},{"style":292},[6118],{"type":44,"value":351},{"type":38,"tag":279,"props":6120,"children":6121},{"style":292},[6122],{"type":44,"value":819},{"type":38,"tag":279,"props":6124,"children":6125},{"style":323},[6126],{"type":44,"value":6127}," symbol",{"type":38,"tag":279,"props":6129,"children":6130},{"style":292},[6131],{"type":44,"value":341},{"type":38,"tag":279,"props":6133,"children":6134},{"style":292},[6135],{"type":44,"value":725},{"type":38,"tag":279,"props":6137,"children":6138},{"style":354},[6139],{"type":44,"value":6140},"ETH",{"type":38,"tag":279,"props":6142,"children":6143},{"style":292},[6144],{"type":44,"value":351},{"type":38,"tag":279,"props":6146,"children":6147},{"style":292},[6148],{"type":44,"value":819},{"type":38,"tag":279,"props":6150,"children":6151},{"style":323},[6152],{"type":44,"value":6153}," decimals",{"type":38,"tag":279,"props":6155,"children":6156},{"style":292},[6157],{"type":44,"value":341},{"type":38,"tag":279,"props":6159,"children":6160},{"style":438},[6161],{"type":44,"value":6162}," 18",{"type":38,"tag":279,"props":6164,"children":6165},{"style":292},[6166],{"type":44,"value":739},{"type":38,"tag":279,"props":6168,"children":6169},{"class":281,"line":1487},[6170],{"type":38,"tag":279,"props":6171,"children":6172},{"style":292},[6173],{"type":44,"value":6174},"      },\n",{"type":38,"tag":279,"props":6176,"children":6177},{"class":281,"line":1521},[6178,6183,6187],{"type":38,"tag":279,"props":6179,"children":6180},{"style":292},[6181],{"type":44,"value":6182},"    }",{"type":38,"tag":279,"props":6184,"children":6185},{"style":323},[6186],{"type":44,"value":247},{"type":38,"tag":279,"props":6188,"children":6189},{"style":292},[6190],{"type":44,"value":380},{"type":38,"tag":279,"props":6192,"children":6193},{"class":281,"line":1529},[6194,6198],{"type":38,"tag":279,"props":6195,"children":6196},{"style":286},[6197],{"type":44,"value":469},{"type":38,"tag":279,"props":6199,"children":6200},{"style":292},[6201],{"type":44,"value":380},{"type":38,"tag":279,"props":6203,"children":6204},{"class":281,"line":1537},[6205],{"type":38,"tag":279,"props":6206,"children":6207},{"style":292},[6208],{"type":44,"value":482},{"type":38,"tag":279,"props":6210,"children":6211},{"class":281,"line":1545},[6212,6216,6220],{"type":38,"tag":279,"props":6213,"children":6214},{"style":286},[6215],{"type":44,"value":491},{"type":38,"tag":279,"props":6217,"children":6218},{"style":306},[6219],{"type":44,"value":496},{"type":38,"tag":279,"props":6221,"children":6222},{"style":292},[6223],{"type":44,"value":380},{"type":38,"tag":279,"props":6225,"children":6226},{"class":281,"line":1584},[6227],{"type":38,"tag":279,"props":6228,"children":6229},{"style":292},[6230],{"type":44,"value":509},{"type":38,"tag":54,"props":6232,"children":6233},{},[6234,6236,6242],{"type":44,"value":6235},"Do not pattern-match on the legacy ",{"type":38,"tag":112,"props":6237,"children":6239},{"className":6238},[],[6240],{"type":44,"value":6241},"\"No chain configuration found\"",{"type":44,"value":6243}," string — that branch will never fire after the upgrade.",{"type":38,"tag":101,"props":6245,"children":6246},{},[],{"type":38,"tag":105,"props":6248,"children":6250},{"id":6249},"_19-analytics-_rejected-count-looks-artificially-high-wallet_unauthorized-mis-classified",[6251,6253,6259,6261,6267],{"type":44,"value":6252},"19. Analytics ",{"type":38,"tag":112,"props":6254,"children":6256},{"className":6255},[],[6257],{"type":44,"value":6258},"_rejected",{"type":44,"value":6260}," count looks artificially high \u002F ",{"type":38,"tag":112,"props":6262,"children":6264},{"className":6263},[],[6265],{"type":44,"value":6266},"wallet_unauthorized",{"type":44,"value":6268}," mis-classified",{"type":38,"tag":54,"props":6270,"children":6271},{},[6272,6276,6277,6282,6284,6290,6292,6298,6300,6306,6308,6314,6316,6322,6324,6330],{"type":38,"tag":122,"props":6273,"children":6274},{},[6275],{"type":44,"value":255},{"type":44,"value":5265},{"type":38,"tag":112,"props":6278,"children":6280},{"className":6279},[],[6281],{"type":44,"value":1003},{"type":44,"value":6283}," 0.14.0, the ",{"type":38,"tag":112,"props":6285,"children":6287},{"className":6286},[],[6288],{"type":44,"value":6289},"isRejectionError",{"type":44,"value":6291}," helper that drives the ",{"type":38,"tag":112,"props":6293,"children":6295},{"className":6294},[],[6296],{"type":44,"value":6297},"mmconnect_wallet_action_rejected",{"type":44,"value":6299}," analytics event treated EIP-1193 ",{"type":38,"tag":112,"props":6301,"children":6303},{"className":6302},[],[6304],{"type":44,"value":6305},"4100 Unauthorized",{"type":44,"value":6307}," (a CAIP-25 permission denial) as a user rejection, matched any error message containing the bare substring ",{"type":38,"tag":112,"props":6309,"children":6311},{"className":6310},[],[6312],{"type":44,"value":6313},"\"user\"",{"type":44,"value":6315}," (catching unrelated phrases like Account Abstraction's ",{"type":38,"tag":112,"props":6317,"children":6319},{"className":6318},[],[6320],{"type":44,"value":6321},"\"user operation reverted\"",{"type":44,"value":6323},"), and masked wallet-side codes behind the router's transport-boundary wrapper (",{"type":38,"tag":112,"props":6325,"children":6327},{"className":6326},[],[6328],{"type":44,"value":6329},"code: 53",{"type":44,"value":6331},").",{"type":38,"tag":54,"props":6333,"children":6334},{},[6335,6339,6340,6345,6347,6353],{"type":38,"tag":122,"props":6336,"children":6337},{},[6338],{"type":44,"value":160},{"type":44,"value":5143},{"type":38,"tag":112,"props":6341,"children":6343},{"className":6342},[],[6344],{"type":44,"value":1003},{"type":44,"value":6346}," ^0.14.0 (connect-monorepo ",{"type":38,"tag":112,"props":6348,"children":6350},{"className":6349},[],[6351],{"type":44,"value":6352},"v34.0.0",{"type":44,"value":6354},"). The classifier now:",{"type":38,"tag":60,"props":6356,"children":6357},{},[6358,6371,6392],{"type":38,"tag":64,"props":6359,"children":6360},{},[6361,6363,6369],{"type":44,"value":6362},"Unwraps ",{"type":38,"tag":112,"props":6364,"children":6366},{"className":6365},[],[6367],{"type":44,"value":6368},"RPCInvokeMethodErr",{"type":44,"value":6370}," so wallet-side codes survive the router boundary",{"type":38,"tag":64,"props":6372,"children":6373},{},[6374,6376,6382,6384,6390],{"type":44,"value":6375},"No longer counts ",{"type":38,"tag":112,"props":6377,"children":6379},{"className":6378},[],[6380],{"type":44,"value":6381},"4100 wallet_unauthorized",{"type":44,"value":6383}," as a rejection — it's a permission denial, surfaced under ",{"type":38,"tag":112,"props":6385,"children":6387},{"className":6386},[],[6388],{"type":44,"value":6389},"mmconnect_wallet_action_failed",{"type":44,"value":6391}," instead",{"type":38,"tag":64,"props":6393,"children":6394},{},[6395,6397,6403,6404,6410,6411,6417,6418],{"type":44,"value":6396},"Narrows the substring match to four explicit phrases: ",{"type":38,"tag":112,"props":6398,"children":6400},{"className":6399},[],[6401],{"type":44,"value":6402},"\"user rejected\"",{"type":44,"value":1941},{"type":38,"tag":112,"props":6405,"children":6407},{"className":6406},[],[6408],{"type":44,"value":6409},"\"user denied\"",{"type":44,"value":1941},{"type":38,"tag":112,"props":6412,"children":6414},{"className":6413},[],[6415],{"type":44,"value":6416},"\"user cancelled\"",{"type":44,"value":1941},{"type":38,"tag":112,"props":6419,"children":6421},{"className":6420},[],[6422],{"type":44,"value":6423},"\"user canceled\"",{"type":38,"tag":54,"props":6425,"children":6426},{},[6427,6429,6434,6436,6442,6444,6450,6452,6457,6459,6464,6466,6471],{"type":44,"value":6428},"Net effect: ",{"type":38,"tag":112,"props":6430,"children":6432},{"className":6431},[],[6433],{"type":44,"value":6258},{"type":44,"value":6435}," becomes more precise, and ",{"type":38,"tag":112,"props":6437,"children":6439},{"className":6438},[],[6440],{"type":44,"value":6441},"_failed",{"type":44,"value":6443}," picks up everything ",{"type":38,"tag":112,"props":6445,"children":6447},{"className":6446},[],[6448],{"type":44,"value":6449},"4100",{"type":44,"value":6451}," was previously hiding. Update analytics dashboards \u002F alerts that compared ",{"type":38,"tag":112,"props":6453,"children":6455},{"className":6454},[],[6456],{"type":44,"value":6258},{"type":44,"value":6458}," counts across the 0.13.x → 0.14.0 boundary — expect ",{"type":38,"tag":112,"props":6460,"children":6462},{"className":6461},[],[6463],{"type":44,"value":6258},{"type":44,"value":6465}," to drop and ",{"type":38,"tag":112,"props":6467,"children":6469},{"className":6468},[],[6470],{"type":44,"value":6441},{"type":44,"value":6472}," to rise without an underlying behavior change.",{"type":38,"tag":54,"props":6474,"children":6475},{},[6476,6478,6483,6484,6490],{"type":44,"value":6477},"The same release adds three optional companion fields on ",{"type":38,"tag":112,"props":6479,"children":6481},{"className":6480},[],[6482],{"type":44,"value":6389},{"type":44,"value":5151},{"type":38,"tag":112,"props":6485,"children":6487},{"className":6486},[],[6488],{"type":44,"value":6489},"mmconnect_connection_failed",{"type":44,"value":341},{"type":38,"tag":60,"props":6492,"children":6493},{},[6494,6561,6584],{"type":38,"tag":64,"props":6495,"children":6496},{},[6497,6503,6505,6510,6511,6517,6518,6523,6525,6531,6532,6538,6539,6545,6546,6552,6554,6560],{"type":38,"tag":112,"props":6498,"children":6500},{"className":6499},[],[6501],{"type":44,"value":6502},"failure_reason",{"type":44,"value":6504}," — coarse classifier (transport timeout, transport disconnect, EIP-1193 wallet errors ",{"type":38,"tag":112,"props":6506,"children":6508},{"className":6507},[],[6509],{"type":44,"value":6449},{"type":44,"value":980},{"type":38,"tag":112,"props":6512,"children":6514},{"className":6513},[],[6515],{"type":44,"value":6516},"4200",{"type":44,"value":980},{"type":38,"tag":112,"props":6519,"children":6521},{"className":6520},[],[6522],{"type":44,"value":5701},{"type":44,"value":6524},", JSON-RPC wallet errors ",{"type":38,"tag":112,"props":6526,"children":6528},{"className":6527},[],[6529],{"type":44,"value":6530},"-32601",{"type":44,"value":980},{"type":38,"tag":112,"props":6533,"children":6535},{"className":6534},[],[6536],{"type":44,"value":6537},"-32602",{"type":44,"value":980},{"type":38,"tag":112,"props":6540,"children":6542},{"className":6541},[],[6543],{"type":44,"value":6544},"-32603",{"type":44,"value":5151},{"type":38,"tag":112,"props":6547,"children":6549},{"className":6548},[],[6550],{"type":44,"value":6551},"-32000…-32099",{"type":44,"value":6553},", or ",{"type":38,"tag":112,"props":6555,"children":6557},{"className":6556},[],[6558],{"type":44,"value":6559},"unknown",{"type":44,"value":247},{"type":38,"tag":64,"props":6562,"children":6563},{},[6564,6570,6572,6577,6578,6583],{"type":38,"tag":112,"props":6565,"children":6567},{"className":6566},[],[6568],{"type":44,"value":6569},"error_code",{"type":44,"value":6571}," — raw wallet-side JSON-RPC \u002F EIP-1193 code (e.g. ",{"type":38,"tag":112,"props":6573,"children":6575},{"className":6574},[],[6576],{"type":44,"value":245},{"type":44,"value":1941},{"type":38,"tag":112,"props":6579,"children":6581},{"className":6580},[],[6582],{"type":44,"value":6544},{"type":44,"value":247},{"type":38,"tag":64,"props":6585,"children":6586},{},[6587,6593],{"type":38,"tag":112,"props":6588,"children":6590},{"className":6589},[],[6591],{"type":44,"value":6592},"error_message_sample",{"type":44,"value":6594}," — sanitised, 200-char-max preview of the original error message (wallet addresses, hex blobs, URLs, and large decimal numbers scrubbed)",{"type":38,"tag":54,"props":6596,"children":6597},{},[6598],{"type":44,"value":6599},"Use these for finer triage in analytics consumers:",{"type":38,"tag":268,"props":6601,"children":6603},{"className":5194,"code":6602,"language":5196,"meta":273,"style":273},"npm install @metamask\u002Fconnect-multichain@^0.14.0\n# or update @metamask\u002Fconnect-evm to ^1.3.0 \u002F @metamask\u002Fconnect-solana to ^1.1.0\n# which pin the fixed multichain version transitively\n",[6604],{"type":38,"tag":112,"props":6605,"children":6606},{"__ignoreMap":273},[6607,6623,6631],{"type":38,"tag":279,"props":6608,"children":6609},{"class":281,"line":282},[6610,6614,6618],{"type":38,"tag":279,"props":6611,"children":6612},{"style":1238},[6613],{"type":44,"value":5208},{"type":38,"tag":279,"props":6615,"children":6616},{"style":354},[6617],{"type":44,"value":5213},{"type":38,"tag":279,"props":6619,"children":6620},{"style":354},[6621],{"type":44,"value":6622}," @metamask\u002Fconnect-multichain@^0.14.0\n",{"type":38,"tag":279,"props":6624,"children":6625},{"class":281,"line":22},[6626],{"type":38,"tag":279,"props":6627,"children":6628},{"style":457},[6629],{"type":44,"value":6630},"# or update @metamask\u002Fconnect-evm to ^1.3.0 \u002F @metamask\u002Fconnect-solana to ^1.1.0\n",{"type":38,"tag":279,"props":6632,"children":6633},{"class":281,"line":383},[6634],{"type":38,"tag":279,"props":6635,"children":6636},{"style":457},[6637],{"type":44,"value":5239},{"type":38,"tag":101,"props":6639,"children":6640},{},[],{"type":38,"tag":105,"props":6642,"children":6644},{"id":6643},"_20-module-not-found-peer-version-warning-for-metamaskconnect-multichain-after-upgrading-to-connect-evm-200-or-connect-solana-200",[6645,6647,6652,6654,6660,6662,6668],{"type":44,"value":6646},"20. Module-not-found \u002F peer-version warning for ",{"type":38,"tag":112,"props":6648,"children":6650},{"className":6649},[],[6651],{"type":44,"value":1003},{"type":44,"value":6653}," after upgrading to ",{"type":38,"tag":112,"props":6655,"children":6657},{"className":6656},[],[6658],{"type":44,"value":6659},"connect-evm",{"type":44,"value":6661}," 2.0.0 or ",{"type":38,"tag":112,"props":6663,"children":6665},{"className":6664},[],[6666],{"type":44,"value":6667},"connect-solana",{"type":44,"value":6669}," 2.0.0",{"type":38,"tag":54,"props":6671,"children":6672},{},[6673,6677,6679,6684,6685,6690,6692,6697,6699,6704,6706,6711,6713,6718],{"type":38,"tag":122,"props":6674,"children":6675},{},[6676],{"type":44,"value":255},{"type":44,"value":6678}," You are on the 2.0.0 releases of ",{"type":38,"tag":112,"props":6680,"children":6682},{"className":6681},[],[6683],{"type":44,"value":5271},{"type":44,"value":1166},{"type":38,"tag":112,"props":6686,"children":6688},{"className":6687},[],[6689],{"type":44,"value":2852},{"type":44,"value":6691},", which (only in that version) made ",{"type":38,"tag":112,"props":6693,"children":6695},{"className":6694},[],[6696],{"type":44,"value":1003},{"type":44,"value":6698}," a ",{"type":38,"tag":122,"props":6700,"children":6701},{},[6702],{"type":44,"value":6703},"peer dependency",{"type":44,"value":6705}," that was not installed transitively. 2.1.0 reverted this — ",{"type":38,"tag":112,"props":6707,"children":6709},{"className":6708},[],[6710],{"type":44,"value":1003},{"type":44,"value":6712}," is a regular dependency again. If a wrong or duplicate version is resolved, the SDK logs a runtime warning about a version mismatch or duplicate ",{"type":38,"tag":112,"props":6714,"children":6716},{"className":6715},[],[6717],{"type":44,"value":1003},{"type":44,"value":6719}," resolutions.",{"type":38,"tag":54,"props":6721,"children":6722},{},[6723,6727,6729,6735],{"type":38,"tag":122,"props":6724,"children":6725},{},[6726],{"type":44,"value":160},{"type":44,"value":6728}," Add it explicitly to your own ",{"type":38,"tag":112,"props":6730,"children":6732},{"className":6731},[],[6733],{"type":44,"value":6734},"dependencies",{"type":44,"value":341},{"type":38,"tag":268,"props":6737,"children":6739},{"className":5194,"code":6738,"language":5196,"meta":273,"style":273},"npm install @metamask\u002Fconnect-multichain@^1.0.0\n",[6740],{"type":38,"tag":112,"props":6741,"children":6742},{"__ignoreMap":273},[6743],{"type":38,"tag":279,"props":6744,"children":6745},{"class":281,"line":282},[6746,6750,6754],{"type":38,"tag":279,"props":6747,"children":6748},{"style":1238},[6749],{"type":44,"value":5208},{"type":38,"tag":279,"props":6751,"children":6752},{"style":354},[6753],{"type":44,"value":5213},{"type":38,"tag":279,"props":6755,"children":6756},{"style":354},[6757],{"type":44,"value":6758}," @metamask\u002Fconnect-multichain@^1.0.0\n",{"type":38,"tag":60,"props":6760,"children":6761},{},[6762,6819],{"type":38,"tag":64,"props":6763,"children":6764},{},[6765,6767,6772,6773,6778,6780,6786,6788,6794,6795,6801,6803,6809,6811,6817],{"type":44,"value":6766},"Ensure a ",{"type":38,"tag":122,"props":6768,"children":6769},{},[6770],{"type":44,"value":6771},"single",{"type":44,"value":1212},{"type":38,"tag":112,"props":6774,"children":6776},{"className":6775},[],[6777],{"type":44,"value":1003},{"type":44,"value":6779}," resolves in your tree — ",{"type":38,"tag":112,"props":6781,"children":6783},{"className":6782},[],[6784],{"type":44,"value":6785},"npm ls @metamask\u002Fconnect-multichain",{"type":44,"value":6787}," (or ",{"type":38,"tag":112,"props":6789,"children":6791},{"className":6790},[],[6792],{"type":44,"value":6793},"yarn why",{"type":44,"value":980},{"type":38,"tag":112,"props":6796,"children":6798},{"className":6797},[],[6799],{"type":44,"value":6800},"pnpm why",{"type":44,"value":6802},") should show one ",{"type":38,"tag":112,"props":6804,"children":6806},{"className":6805},[],[6807],{"type":44,"value":6808},"1.x",{"type":44,"value":6810}," version. Deduplicate (e.g. ",{"type":38,"tag":112,"props":6812,"children":6814},{"className":6813},[],[6815],{"type":44,"value":6816},"npm dedupe",{"type":44,"value":6818},") if two copies appear, since duplicate resolutions trigger the runtime warning and can break singleton\u002Fsession sharing.",{"type":38,"tag":64,"props":6820,"children":6821},{},[6822,6827,6829,6835],{"type":38,"tag":112,"props":6823,"children":6825},{"className":6824},[],[6826],{"type":44,"value":1003},{"type":44,"value":6828}," is now a stable 1.0 package following strict semver, so ",{"type":38,"tag":112,"props":6830,"children":6832},{"className":6831},[],[6833],{"type":44,"value":6834},"^1.0.0",{"type":44,"value":6836}," is safe for all current ecosystem packages.",{"type":38,"tag":101,"props":6838,"children":6839},{},[],{"type":38,"tag":105,"props":6841,"children":6843},{"id":6842},"_21-mmconnect-provider-shows-up-twice-in-wallet-discovery-or-the-wrong-provider-is-selected",[6844],{"type":44,"value":6845},"21. MMConnect provider shows up twice in wallet discovery, or the wrong provider is selected",{"type":38,"tag":54,"props":6847,"children":6848},{},[6849,6853,6855,6860,6862,6867],{"type":38,"tag":122,"props":6850,"children":6851},{},[6852],{"type":44,"value":255},{"type":44,"value":6854}," Since ",{"type":38,"tag":112,"props":6856,"children":6858},{"className":6857},[],[6859],{"type":44,"value":5271},{"type":44,"value":6861}," 2.0.0, the MMConnect-managed EIP-1193 provider is announced through EIP-6963 ",{"type":38,"tag":122,"props":6863,"children":6864},{},[6865],{"type":44,"value":6866},"by default",{"type":44,"value":6868}," (when native MetaMask hasn't already announced). If your app also announces a provider manually, or a discovery library (RainbowKit \u002F ConnectKit \u002F Web3Modal \u002F wagmi) re-announces, you can end up with a duplicate MetaMask-style entry.",{"type":38,"tag":54,"props":6870,"children":6871},{},[6872],{"type":38,"tag":122,"props":6873,"children":6874},{},[6875],{"type":44,"value":160},{"type":38,"tag":60,"props":6877,"children":6878},{},[6879,6908,6943],{"type":38,"tag":64,"props":6880,"children":6881},{},[6882,6884,6890,6892,6898,6900,6906],{"type":44,"value":6883},"Pass ",{"type":38,"tag":112,"props":6885,"children":6887},{"className":6886},[],[6888],{"type":44,"value":6889},"skipAutoAnnounce: true",{"type":44,"value":6891}," to ",{"type":38,"tag":112,"props":6893,"children":6895},{"className":6894},[],[6896],{"type":44,"value":6897},"createEVMClient()",{"type":44,"value":6899}," to suppress the automatic announcement when you want to control discovery yourself, then call ",{"type":38,"tag":112,"props":6901,"children":6903},{"className":6902},[],[6904],{"type":44,"value":6905},"client.announceProvider()",{"type":44,"value":6907}," exactly when you need to surface it.",{"type":38,"tag":64,"props":6909,"children":6910},{},[6911,6913,6917,6919,6925,6927,6933,6935,6941],{"type":44,"value":6912},"Do ",{"type":38,"tag":122,"props":6914,"children":6915},{},[6916],{"type":44,"value":554},{"type":44,"value":6918}," manually re-emit ",{"type":38,"tag":112,"props":6920,"children":6922},{"className":6921},[],[6923],{"type":44,"value":6924},"eip6963:announceProvider",{"type":44,"value":6926}," for the MMConnect provider in addition to the SDK — let the SDK own it, or use ",{"type":38,"tag":112,"props":6928,"children":6930},{"className":6929},[],[6931],{"type":44,"value":6932},"skipAutoAnnounce",{"type":44,"value":6934}," + ",{"type":38,"tag":112,"props":6936,"children":6938},{"className":6937},[],[6939],{"type":44,"value":6940},"announceProvider()",{"type":44,"value":6942},", not both.",{"type":38,"tag":64,"props":6944,"children":6945},{},[6946],{"type":44,"value":6947},"Note the SDK restricts EIP-6963 extension detection to native MetaMask RDNS values, so the MMConnect-managed provider will not be mistaken for — or select — the browser-extension transport.",{"type":38,"tag":101,"props":6949,"children":6950},{},[],{"type":38,"tag":47,"props":6952,"children":6954},{"id":6953},"diagnostic-checklist",[6955],{"type":44,"value":6956},"Diagnostic Checklist",{"type":38,"tag":54,"props":6958,"children":6959},{},[6960],{"type":44,"value":6961},"Run through this checklist when any MetaMask Connect integration is misbehaving:",{"type":38,"tag":60,"props":6963,"children":6966},{"className":6964},[6965],"contains-task-list",[6967,6990,7027,7084,7105,7127,7156,7198,7223,7250,7265],{"type":38,"tag":64,"props":6968,"children":6971},{"className":6969},[6970],"task-list-item",[6972,6977,6978,6988],{"type":38,"tag":6973,"props":6974,"children":6976},"input",{"disabled":1346,"type":6975},"checkbox",[],{"type":44,"value":1212},{"type":38,"tag":122,"props":6979,"children":6980},{},[6981,6986],{"type":38,"tag":112,"props":6982,"children":6984},{"className":6983},[],[6985],{"type":44,"value":578},{"type":44,"value":6987}," has valid RPC URLs",{"type":44,"value":6989}," — every chain the dApp uses must have an entry with a reachable URL",{"type":38,"tag":64,"props":6991,"children":6993},{"className":6992},[6970],[6994,6997,6998,7003,7005,7011,7013,7019,7021],{"type":38,"tag":6973,"props":6995,"children":6996},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":6999,"children":7000},{},[7001],{"type":44,"value":7002},"Chain IDs are hex strings for EVM",{"type":44,"value":7004}," — use ",{"type":38,"tag":112,"props":7006,"children":7008},{"className":7007},[],[7009],{"type":44,"value":7010},"'0x1'",{"type":44,"value":7012}," not ",{"type":38,"tag":112,"props":7014,"children":7016},{"className":7015},[],[7017],{"type":44,"value":7018},"1",{"type":44,"value":7020}," or ",{"type":38,"tag":112,"props":7022,"children":7024},{"className":7023},[],[7025],{"type":44,"value":7026},"'1'",{"type":38,"tag":64,"props":7028,"children":7030},{"className":7029},[6970],[7031,7034,7035,7040,7042,7047,7049,7055,7057,7062,7063,7068,7070,7075,7077,7082],{"type":38,"tag":6973,"props":7032,"children":7033},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7036,"children":7037},{},[7038],{"type":44,"value":7039},"Polyfills loaded (React Native)",{"type":44,"value":7041}," — ",{"type":38,"tag":112,"props":7043,"children":7045},{"className":7044},[],[7046],{"type":44,"value":1044},{"type":44,"value":7048}," is first entry-file import (required for RN \u003C 0.72); ",{"type":38,"tag":112,"props":7050,"children":7052},{"className":7051},[],[7053],{"type":44,"value":7054},"window",{"type":44,"value":7056}," shim present (required for all); ",{"type":38,"tag":112,"props":7058,"children":7060},{"className":7059},[],[7061],{"type":44,"value":1164},{"type":44,"value":1166},{"type":38,"tag":112,"props":7064,"children":7066},{"className":7065},[],[7067],{"type":44,"value":1172},{"type":44,"value":7069}," shims present ",{"type":38,"tag":122,"props":7071,"children":7072},{},[7073],{"type":44,"value":7074},"only if using wagmi",{"type":44,"value":7076},"; ",{"type":38,"tag":112,"props":7078,"children":7080},{"className":7079},[],[7081],{"type":44,"value":1011},{"type":44,"value":7083}," set as safety net for peer deps",{"type":38,"tag":64,"props":7085,"children":7087},{"className":7086},[6970],[7088,7091,7092,7103],{"type":38,"tag":6973,"props":7089,"children":7090},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7093,"children":7094},{},[7095,7101],{"type":38,"tag":112,"props":7096,"children":7098},{"className":7097},[],[7099],{"type":44,"value":7100},"preferredOpenLink",{"type":44,"value":7102}," set (React Native)",{"type":44,"value":7104}," — required for deeplinks to open MetaMask Mobile",{"type":38,"tag":64,"props":7106,"children":7108},{"className":7107},[6970],[7109,7112,7113,7118,7120,7125],{"type":38,"tag":6973,"props":7110,"children":7111},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7114,"children":7115},{},[7116],{"type":44,"value":7117},"Import order correct",{"type":44,"value":7119}," — polyfills before SDK imports; ",{"type":38,"tag":112,"props":7121,"children":7123},{"className":7122},[],[7124],{"type":44,"value":1044},{"type":44,"value":7126}," is the very first import",{"type":38,"tag":64,"props":7128,"children":7130},{"className":7129},[6970],[7131,7134,7135,7140,7142,7147,7149,7154],{"type":38,"tag":6973,"props":7132,"children":7133},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7136,"children":7137},{},[7138],{"type":44,"value":7139},"Error codes handled in catch blocks",{"type":44,"value":7141}," — at minimum handle ",{"type":38,"tag":112,"props":7143,"children":7145},{"className":7144},[],[7146],{"type":44,"value":245},{"type":44,"value":7148}," (user rejected) and ",{"type":38,"tag":112,"props":7150,"children":7152},{"className":7151},[],[7153],{"type":44,"value":228},{"type":44,"value":7155}," (pending)",{"type":38,"tag":64,"props":7157,"children":7159},{"className":7158},[6970],[7160,7163,7164,7169,7171,7176,7177,7182,7183,7188,7190,7196],{"type":38,"tag":6973,"props":7161,"children":7162},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7165,"children":7166},{},[7167],{"type":44,"value":7168},"Client not recreated per render",{"type":44,"value":7170}," — call ",{"type":38,"tag":112,"props":7172,"children":7174},{"className":7173},[],[7175],{"type":44,"value":3385},{"type":44,"value":980},{"type":38,"tag":112,"props":7178,"children":7180},{"className":7179},[],[7181],{"type":44,"value":3878},{"type":44,"value":980},{"type":38,"tag":112,"props":7184,"children":7186},{"className":7185},[],[7187],{"type":44,"value":2794},{"type":44,"value":7189}," once; the shared multichain core is the singleton (its options merge), but each ",{"type":38,"tag":112,"props":7191,"children":7193},{"className":7192},[],[7194],{"type":44,"value":7195},"create*Client",{"type":44,"value":7197}," call still returns a fresh wrapper",{"type":38,"tag":64,"props":7199,"children":7201},{"className":7200},[6970],[7202,7205,7206,7221],{"type":38,"tag":6973,"props":7203,"children":7204},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7207,"children":7208},{},[7209,7214,7216],{"type":38,"tag":112,"props":7210,"children":7212},{"className":7211},[],[7213],{"type":44,"value":150},{"type":44,"value":7215}," listener registered before ",{"type":38,"tag":112,"props":7217,"children":7219},{"className":7218},[],[7220],{"type":44,"value":117},{"type":44,"value":7222}," — required in headless mode for QR codes",{"type":38,"tag":64,"props":7224,"children":7226},{"className":7225},[6970],[7227,7230,7231,7248],{"type":38,"tag":6973,"props":7228,"children":7229},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7232,"children":7233},{},[7234,7236,7241,7243],{"type":44,"value":7235},"Solana ",{"type":38,"tag":112,"props":7237,"children":7239},{"className":7238},[],[7240],{"type":44,"value":3117},{"type":44,"value":7242}," prop is ",{"type":38,"tag":112,"props":7244,"children":7246},{"className":7245},[],[7247],{"type":44,"value":3185},{"type":44,"value":7249}," — MetaMask uses wallet-standard discovery, not manual registration",{"type":38,"tag":64,"props":7251,"children":7253},{"className":7252},[6970],[7254,7257,7258,7263],{"type":38,"tag":6973,"props":7255,"children":7256},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7259,"children":7260},{},[7261],{"type":44,"value":7262},"Solana network availability checked",{"type":44,"value":7264}," — mainnet\u002Fdevnet\u002Ftestnet scopes are all modeled by the SDK; don't assume a non-mainnet cluster is available on the connected wallet — handle connection errors",{"type":38,"tag":64,"props":7266,"children":7268},{"className":7267},[6970],[7269,7272,7273,7295,7297,7302,7303,7308,7310,7315,7317,7322,7324,7329],{"type":38,"tag":6973,"props":7270,"children":7271},{"disabled":1346,"type":6975},[],{"type":44,"value":1212},{"type":38,"tag":122,"props":7274,"children":7275},{},[7276,7278,7283,7284,7289,7290],{"type":44,"value":7277},"Analytics consumers use ",{"type":38,"tag":112,"props":7279,"children":7281},{"className":7280},[],[7282],{"type":44,"value":6502},{"type":44,"value":980},{"type":38,"tag":112,"props":7285,"children":7287},{"className":7286},[],[7288],{"type":44,"value":6569},{"type":44,"value":980},{"type":38,"tag":112,"props":7291,"children":7293},{"className":7292},[],[7294],{"type":44,"value":6592},{"type":44,"value":7296}," — for ",{"type":38,"tag":112,"props":7298,"children":7300},{"className":7299},[],[7301],{"type":44,"value":6389},{"type":44,"value":980},{"type":38,"tag":112,"props":7304,"children":7306},{"className":7305},[],[7307],{"type":44,"value":6489},{"type":44,"value":7309}," triage (added in ",{"type":38,"tag":112,"props":7311,"children":7313},{"className":7312},[],[7314],{"type":44,"value":1003},{"type":44,"value":7316}," 0.14.0); expect ",{"type":38,"tag":112,"props":7318,"children":7320},{"className":7319},[],[7321],{"type":44,"value":6258},{"type":44,"value":7323}," counts to drop and ",{"type":38,"tag":112,"props":7325,"children":7327},{"className":7326},[],[7328],{"type":44,"value":6441},{"type":44,"value":7330}," counts to rise after upgrading past 0.13.x",{"type":38,"tag":47,"props":7332,"children":7334},{"id":7333},"important-notes",[7335],{"type":44,"value":7336},"Important Notes",{"type":38,"tag":60,"props":7338,"children":7339},{},[7340,7352,7424,7463,7480,7541],{"type":38,"tag":64,"props":7341,"children":7342},{},[7343,7345,7350],{"type":44,"value":7344},"Always check the ",{"type":38,"tag":122,"props":7346,"children":7347},{},[7348],{"type":44,"value":7349},"error code",{"type":44,"value":7351}," first — it tells you the category of failure before you need to inspect the message.",{"type":38,"tag":64,"props":7353,"children":7354},{},[7355,7357,7362,7364,7370,7372,7377,7379,7385,7387,7393,7395,7401,7402,7408,7409,7415,7416,7422],{"type":44,"value":7356},"Use typed error classes from ",{"type":38,"tag":112,"props":7358,"children":7360},{"className":7359},[],[7361],{"type":44,"value":1003},{"type":44,"value":7363}," for granular ",{"type":38,"tag":112,"props":7365,"children":7367},{"className":7366},[],[7368],{"type":44,"value":7369},"instanceof",{"type":44,"value":7371}," checks: ",{"type":38,"tag":112,"props":7373,"children":7375},{"className":7374},[],[7376],{"type":44,"value":6368},{"type":44,"value":7378}," (wallet errors from ",{"type":38,"tag":112,"props":7380,"children":7382},{"className":7381},[],[7383],{"type":44,"value":7384},"invokeMethod",{"type":44,"value":7386}," — original wallet code on ",{"type":38,"tag":112,"props":7388,"children":7390},{"className":7389},[],[7391],{"type":44,"value":7392},"rpcCode",{"type":44,"value":7394},", revert data on ",{"type":38,"tag":112,"props":7396,"children":7398},{"className":7397},[],[7399],{"type":44,"value":7400},"rpcData",{"type":44,"value":3880},{"type":38,"tag":112,"props":7403,"children":7405},{"className":7404},[],[7406],{"type":44,"value":7407},"RPCHttpErr",{"type":44,"value":980},{"type":38,"tag":112,"props":7410,"children":7412},{"className":7411},[],[7413],{"type":44,"value":7414},"RPCReadonlyResponseErr",{"type":44,"value":980},{"type":38,"tag":112,"props":7417,"children":7419},{"className":7418},[],[7420],{"type":44,"value":7421},"RPCReadonlyRequestErr",{"type":44,"value":7423}," (RPC-node-routed read calls).",{"type":38,"tag":64,"props":7425,"children":7426},{},[7427,7429,7434,7436,7441,7443,7448,7449,7454,7456,7461],{"type":44,"value":7428},"The underlying multichain core is a ",{"type":38,"tag":122,"props":7430,"children":7431},{},[7432],{"type":44,"value":7433},"singleton",{"type":44,"value":7435},": ",{"type":38,"tag":112,"props":7437,"children":7439},{"className":7438},[],[7440],{"type":44,"value":3878},{"type":44,"value":7442}," merges options into the shared core, and ",{"type":38,"tag":112,"props":7444,"children":7446},{"className":7445},[],[7447],{"type":44,"value":3385},{"type":44,"value":980},{"type":38,"tag":112,"props":7450,"children":7452},{"className":7451},[],[7453],{"type":44,"value":2794},{"type":44,"value":7455}," build chain-specific wrappers on top of it. Each ",{"type":38,"tag":112,"props":7457,"children":7459},{"className":7458},[],[7460],{"type":44,"value":7195},{"type":44,"value":7462}," call returns a fresh wrapper, so call it once at startup and reuse — do not wrap it in a React component render cycle.",{"type":38,"tag":64,"props":7464,"children":7465},{},[7466,7471,7473,7478],{"type":38,"tag":122,"props":7467,"children":7468},{},[7469],{"type":44,"value":7470},"Extension detection is synchronous",{"type":44,"value":7472}," but ",{"type":38,"tag":122,"props":7474,"children":7475},{},[7476],{"type":44,"value":7477},"MWP connection is asynchronous",{"type":44,"value":7479}," — if the extension is not installed, expect the flow to involve QR scanning or deeplinks with noticeable latency.",{"type":38,"tag":64,"props":7481,"children":7482},{},[7483,7485,7490,7492,7497,7499,7504,7506,7511,7512,7517,7519,7524,7526,7531,7533,7539],{"type":44,"value":7484},"In React Native, ",{"type":38,"tag":122,"props":7486,"children":7487},{},[7488],{"type":44,"value":7489},"import order matters critically",{"type":44,"value":7491},". ",{"type":38,"tag":112,"props":7493,"children":7495},{"className":7494},[],[7496],{"type":44,"value":1044},{"type":44,"value":7498}," must be the very first import in the entry file (not inside ",{"type":38,"tag":112,"props":7500,"children":7502},{"className":7501},[],[7503],{"type":44,"value":1036},{"type":44,"value":7505},"). The connect-* packages do not use DOM ",{"type":38,"tag":112,"props":7507,"children":7509},{"className":7508},[],[7510],{"type":44,"value":1164},{"type":44,"value":1166},{"type":38,"tag":112,"props":7513,"children":7515},{"className":7514},[],[7516],{"type":44,"value":1172},{"type":44,"value":7518}," — those polyfills are only needed when also using wagmi. ",{"type":38,"tag":112,"props":7520,"children":7522},{"className":7521},[],[7523],{"type":44,"value":1003},{"type":44,"value":7525}," self-polyfills ",{"type":38,"tag":112,"props":7527,"children":7529},{"className":7528},[],[7530],{"type":44,"value":1011},{"type":44,"value":7532}," but set ",{"type":38,"tag":112,"props":7534,"children":7536},{"className":7535},[],[7537],{"type":44,"value":7538},"global.Buffer",{"type":44,"value":7540}," early as a safety net for peer deps.",{"type":38,"tag":64,"props":7542,"children":7543},{},[7544,7546,7552],{"type":44,"value":7545},"When debugging, enable ",{"type":38,"tag":112,"props":7547,"children":7549},{"className":7548},[],[7550],{"type":44,"value":7551},"debug: true",{"type":44,"value":7553}," in the client options to get verbose console output from the SDK internals.",{"type":38,"tag":7555,"props":7556,"children":7557},"style",{},[7558],{"type":44,"value":7559},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":7561,"total":2607},[7562,7582,7596,7608,7617,7627,7642,7658,7673,7684,7694,7704],{"slug":7563,"name":7563,"fn":7564,"description":7565,"org":7566,"tags":7567,"stars":7579,"repoUrl":7580,"updatedAt":7581},"smart-accounts-kit","build dApps with MetaMask Smart Accounts","Build dApps with MetaMask Smart Accounts Kit — ERC-4337 smart accounts, delegations, and Advanced Permissions (ERC-7715)",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7568,7571,7574,7575,7578],{"name":7569,"slug":7570,"type":15},"API Development","api-development",{"name":7572,"slug":7573,"type":15},"Auth","auth",{"name":17,"slug":18,"type":15},{"name":7576,"slug":7577,"type":15},"Permissions","permissions",{"name":13,"slug":14,"type":15},54,"https:\u002F\u002Fgithub.com\u002FMetaMask\u002Fsmart-accounts-kit","2026-07-13T06:11:32.8327",{"slug":7583,"name":7583,"fn":7584,"description":7585,"org":7586,"tags":7587,"stars":7579,"repoUrl":7580,"updatedAt":7595},"x402-payments","build x402 payment flows","Build x402 payment flows using MetaMask Smart Accounts Kit, machine to machine payments over HTTP with ERC-7710 delegations and ERC-7715 Advanced Permissions",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7588,7589,7592,7593],{"name":7569,"slug":7570,"type":15},{"name":7590,"slug":7591,"type":15},"Payments","payments",{"name":13,"slug":14,"type":15},{"name":7594,"slug":7594,"type":15},"x402","2026-07-13T06:11:30.877136",{"slug":7597,"name":7597,"fn":7598,"description":7599,"org":7600,"tags":7601,"stars":503,"repoUrl":7606,"updatedAt":7607},"discovery","discover and use services","Use the discovery tools to find and use services through a service matcher. Do not rely on prior knowledge of services, providers, or APIs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7602,7603],{"name":7569,"slug":7570,"type":15},{"name":7604,"slug":7605,"type":15},"Search","search","https:\u002F\u002Fgithub.com\u002FMetaMask\u002Focap-kernel","2026-07-13T06:12:37.024095",{"slug":8,"name":8,"fn":7609,"description":7610,"org":7611,"tags":7612,"stars":503,"repoUrl":7606,"updatedAt":7616},"interact with MetaMask wallet capabilities","Use the MetaMask tools to request and interact with wallet capabilities from the MetaMask capability vendor.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7613,7614,7615],{"name":7569,"slug":7570,"type":15},{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},"2026-07-13T06:12:33.955806",{"slug":7618,"name":7618,"fn":7619,"description":7620,"org":7621,"tags":7622,"stars":503,"repoUrl":7606,"updatedAt":7626},"wallet","manage wallet balances and transactions","Use the wallet tools for all balance, send, and sign operations. Supports both ETH and ERC-20 tokens. The away wallet operates autonomously after setup — the home device does not need to be online.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7623,7624,7625],{"name":17,"slug":18,"type":15},{"name":7590,"slug":7591,"type":15},{"name":13,"slug":14,"type":15},"2026-07-13T06:12:35.380244",{"slug":7628,"name":7628,"fn":7629,"description":7630,"org":7631,"tags":7632,"stars":476,"repoUrl":7640,"updatedAt":7641},"metamask-connect","integrate MetaMask into dApps","Build dApps that integrate MetaMask via the MetaMask Connect SDK — EVM (@metamask\u002Fconnect-evm), Solana (@metamask\u002Fconnect-solana), and multichain (@metamask\u002Fconnect-multichain), plus the wagmi metaMask() connector. Covers client setup across browser\u002FReact\u002FReact Native, connecting, signing messages, sending transactions, multichain invokeMethod across CAIP-2 scopes, migrating from @metamask\u002Fsdk, and troubleshooting connection\u002Fpolyfill issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7633,7634,7635,7637,7639],{"name":7569,"slug":7570,"type":15},{"name":17,"slug":18,"type":15},{"name":3934,"slug":7636,"type":15},"solana",{"name":7638,"slug":7638,"type":15},"wagmi",{"name":13,"slug":14,"type":15},"https:\u002F\u002Fgithub.com\u002FMetaMask\u002Fconnect-monorepo","2026-07-13T06:11:34.445665",{"slug":7643,"name":7643,"fn":7644,"description":7645,"org":7646,"tags":7647,"stars":453,"repoUrl":7656,"updatedAt":7657},"metamask-agent-wallet","manage blockchain wallets and transactions","Use when the user asks anything about blockchain wallets, transactions, signing, token transfers, supported chains, wallet balances, perpetual futures trading, prediction markets, token swaps, cross-chain bridges, market data, token discovery, decoding EVM calldata, DeFi earn\u002Fyield vaults, or authentication via the MetaMask Agentic CLI; also when an HTTP request returns 402 Payment Required (x402) or the agent needs to pay for a paywalled API, endpoint, file, or resource over HTTP. Single entry point for all mm CLI operations.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7648,7651,7654,7655],{"name":7649,"slug":7650,"type":15},"Blockchain","blockchain",{"name":7652,"slug":7653,"type":15},"DeFi","defi",{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},"https:\u002F\u002Fgithub.com\u002FMetaMask\u002Fagent-skills","2026-08-01T05:45:07.976522",{"slug":7659,"name":7659,"fn":7660,"description":7661,"org":7662,"tags":7663,"stars":22,"repoUrl":23,"updatedAt":7672},"migrate-from-sdk","migrate MetaMask SDK to connect-evm and connect-solana","Migrate from @metamask\u002Fsdk to @metamask\u002Fconnect-evm, @metamask\u002Fconnect-multichain, and @metamask\u002Fconnect-solana with step-by-step package, API, and configuration changes",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7664,7665,7668,7671],{"name":17,"slug":18,"type":15},{"name":7666,"slug":7667,"type":15},"Migration","migration",{"name":7669,"slug":7670,"type":15},"SDK","sdk",{"name":13,"slug":14,"type":15},"2026-07-13T06:11:46.427441",{"slug":7674,"name":7674,"fn":7675,"description":7676,"org":7677,"tags":7678,"stars":22,"repoUrl":23,"updatedAt":7683},"migrate-wagmi-metamask-connector","migrate wagmi apps to MetaMask connector","Migrate a wagmi app from @metamask\u002Fsdk to the new @metamask\u002Fconnect-evm connector (wagmi PR",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7679,7680,7681,7682],{"name":17,"slug":18,"type":15},{"name":7666,"slug":7667,"type":15},{"name":7638,"slug":7638,"type":15},{"name":13,"slug":14,"type":15},"2026-07-13T06:12:23.110706",{"slug":7685,"name":7685,"fn":7686,"description":7687,"org":7688,"tags":7689,"stars":22,"repoUrl":23,"updatedAt":7693},"send-evm-transaction","send EVM transactions with MetaMask","Send ETH and contract transactions with MetaMask using eth_sendTransaction via the EIP-1193 provider, gas estimation, receipt polling, and the connectWith shortcut",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7690,7691,7692],{"name":7569,"slug":7570,"type":15},{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},"2026-07-13T06:11:56.866623",{"slug":7695,"name":7695,"fn":7696,"description":7697,"org":7698,"tags":7699,"stars":22,"repoUrl":23,"updatedAt":7703},"send-solana-transaction","send Solana transactions via MetaMask","Build and send a Solana transaction using MetaMask Connect. Covers both the React wallet-adapter approach (sendTransaction) and the vanilla browser approach (signAndSendTransaction wallet-standard feature).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7700,7701,7702],{"name":7590,"slug":7591,"type":15},{"name":3934,"slug":7636,"type":15},{"name":13,"slug":14,"type":15},"2026-07-13T06:12:03.942378",{"slug":7705,"name":7705,"fn":7706,"description":7707,"org":7708,"tags":7709,"stars":22,"repoUrl":23,"updatedAt":7719},"setup-evm-browser-app","scaffold EVM browser applications with MetaMask","Scaffold a vanilla JS\u002FTS browser app with MetaMask EVM integration using createEVMClient, EIP-1193 provider event listeners, RPC methods, and chain switching with chainConfiguration fallback",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7710,7711,7714,7716,7718],{"name":17,"slug":18,"type":15},{"name":7712,"slug":7713,"type":15},"Frontend","frontend",{"name":7715,"slug":2020,"type":15},"JavaScript",{"name":7717,"slug":272,"type":15},"TypeScript",{"name":13,"slug":14,"type":15},"2026-07-13T06:12:01.334051",{"items":7721,"total":2452},[7722,7729,7736,7742,7748,7756,7770],{"slug":7659,"name":7659,"fn":7660,"description":7661,"org":7723,"tags":7724,"stars":22,"repoUrl":23,"updatedAt":7672},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7725,7726,7727,7728],{"name":17,"slug":18,"type":15},{"name":7666,"slug":7667,"type":15},{"name":7669,"slug":7670,"type":15},{"name":13,"slug":14,"type":15},{"slug":7674,"name":7674,"fn":7675,"description":7676,"org":7730,"tags":7731,"stars":22,"repoUrl":23,"updatedAt":7683},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7732,7733,7734,7735],{"name":17,"slug":18,"type":15},{"name":7666,"slug":7667,"type":15},{"name":7638,"slug":7638,"type":15},{"name":13,"slug":14,"type":15},{"slug":7685,"name":7685,"fn":7686,"description":7687,"org":7737,"tags":7738,"stars":22,"repoUrl":23,"updatedAt":7693},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7739,7740,7741],{"name":7569,"slug":7570,"type":15},{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"slug":7695,"name":7695,"fn":7696,"description":7697,"org":7743,"tags":7744,"stars":22,"repoUrl":23,"updatedAt":7703},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7745,7746,7747],{"name":7590,"slug":7591,"type":15},{"name":3934,"slug":7636,"type":15},{"name":13,"slug":14,"type":15},{"slug":7705,"name":7705,"fn":7706,"description":7707,"org":7749,"tags":7750,"stars":22,"repoUrl":23,"updatedAt":7719},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7751,7752,7753,7754,7755],{"name":17,"slug":18,"type":15},{"name":7712,"slug":7713,"type":15},{"name":7715,"slug":2020,"type":15},{"name":7717,"slug":272,"type":15},{"name":13,"slug":14,"type":15},{"slug":7757,"name":7757,"fn":7758,"description":7759,"org":7760,"tags":7761,"stars":22,"repoUrl":23,"updatedAt":7769},"setup-evm-react-app","scaffold React apps with MetaMask integration","Scaffold a React app with MetaMask EVM integration using createEVMClient, useState\u002FuseEffect\u002FuseRef patterns, provider.request calls, chain switching, and error handling",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7762,7763,7764,7765,7768],{"name":7569,"slug":7570,"type":15},{"name":17,"slug":18,"type":15},{"name":7712,"slug":7713,"type":15},{"name":7766,"slug":7767,"type":15},"React","react",{"name":13,"slug":14,"type":15},"2026-07-13T06:11:52.764143",{"slug":7771,"name":7771,"fn":7772,"description":7773,"org":7774,"tags":7775,"stars":22,"repoUrl":23,"updatedAt":7783},"setup-evm-react-native-app","scaffold React Native apps with MetaMask","Scaffold a React Native app with MetaMask EVM integration including required polyfills, metro.config.js shims, import order constraints, mobile deeplinks, and a full component example",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7776,7777,7780,7782],{"name":17,"slug":18,"type":15},{"name":7778,"slug":7779,"type":15},"Mobile","mobile",{"name":7781,"slug":1706,"type":15},"React Native",{"name":13,"slug":14,"type":15},"2026-07-13T06:12:11.764689"]