diff --git a/.github/workflows/docs-check.yml b/.github/workflows/docs-check.yml new file mode 100644 index 0000000..35076c6 --- /dev/null +++ b/.github/workflows/docs-check.yml @@ -0,0 +1,31 @@ +name: docs-check + +on: + pull_request: + push: + branches: [main] + +jobs: + code-blocks: + name: Check doc code blocks + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: yarn + - run: yarn install --frozen-lockfile + - run: yarn check-docs + + build: + name: Build site + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + cache: yarn + - run: yarn install --frozen-lockfile + - run: yarn build diff --git a/package.json b/package.json index dc82d5b..70182a9 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "docusaurus": "docusaurus", "start": "docusaurus start", "build": "docusaurus build && node scripts/fix-markdown-links.js", + "check-docs": "node scripts/check-docs-code.mjs", "swizzle": "docusaurus swizzle", "deploy": "docusaurus deploy", "clear": "docusaurus clear", @@ -30,8 +31,16 @@ "@docusaurus/faster": "3.10.1", "@docusaurus/module-type-aliases": "3.10.1", "@tailwindcss/postcss": "^4.3.1", + "@types/node": "^26.1.0", + "abstractionkit": "0.4.0", + "dotenv": "^17.4.2", + "ethers": "^6.17.0", + "safe-recovery-service-sdk": "^0.0.4", + "siwe": "^3.0.0", "tailwindcss": "^4.3.1", - "typescript": "^6.0.3" + "typescript": "^6.0.3", + "viem": "^2.54.2", + "wagmi": "^3.6.21" }, "browserslist": { "production": [ diff --git a/scripts/check-docs-code.mjs b/scripts/check-docs-code.mjs new file mode 100644 index 0000000..e8a1e8f --- /dev/null +++ b/scripts/check-docs-code.mjs @@ -0,0 +1,199 @@ +#!/usr/bin/env node +/** + * Static checker for code blocks in the docs. + * + * - ```json blocks must parse with JSON.parse + * - ```ts / ```typescript / ```tsx blocks must typecheck with tsc --noEmit + * against the pinned abstractionkit version in devDependencies + * + * Nothing is executed: no network, no keys, no chain. This catches references + * to renamed SDK methods, wrong field names, syntax errors, and invalid JSON. + * + * Escape hatches: + * - Put `` on its own line directly above a fence to + * exempt that one block (use for intentionally elided snippets). + * - Pre-existing failures live in scripts/docs-check-baseline.json, keyed by a + * hash of the block's content. CI fails only on NEW failures. Fixing a block + * changes its hash, so fixed blocks leave the baseline automatically; run + * with --update-baseline to rewrite the file (also prunes stale entries). + */ + +import { createHash } from "node:crypto"; +import { execFileSync } from "node:child_process"; +import fs from "node:fs"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), ".."); +const docsDir = path.join(repoRoot, "docs"); +const baselinePath = path.join(repoRoot, "scripts", "docs-check-baseline.json"); +const tmpDir = path.join(repoRoot, "node_modules", ".cache", "docs-check"); +const updateBaseline = process.argv.includes("--update-baseline"); + +const TS_LANGS = new Set(["ts", "typescript", "tsx"]); +const SKIP_MARKER = //; + +// ---------------------------------------------------------------- extraction + +function* walk(dir) { + for (const entry of fs.readdirSync(dir, { withFileTypes: true })) { + const full = path.join(dir, entry.name); + if (entry.isDirectory()) yield* walk(full); + else if (/\.mdx?$/.test(entry.name)) yield full; + } +} + +function extractBlocks(filePath) { + const lines = fs.readFileSync(filePath, "utf8").split("\n"); + const blocks = []; + let open = null; // { lang, indent, startLine, content: [] } + for (let i = 0; i < lines.length; i++) { + const line = lines[i]; + if (open) { + if (line.slice(open.indent.length).trimEnd() === "```" || line.trim() === "```") { + blocks.push({ ...open, content: open.content.join("\n") }); + open = null; + } else { + open.content.push(line.startsWith(open.indent) ? line.slice(open.indent.length) : line); + } + continue; + } + const fence = line.match(/^(\s*)```(\w+)/); + if (!fence) continue; + const skip = i > 0 && SKIP_MARKER.test(lines[i - 1]); + const lang = fence[2].toLowerCase(); + if (!skip && (lang === "json" || TS_LANGS.has(lang))) { + open = { lang, indent: fence[1], startLine: i + 2, content: [] }; + } else { + // still consume the fence so nested content is not re-scanned + open = { lang: null, indent: fence[1], startLine: i + 2, content: [] }; + } + } + return blocks.filter((b) => b.lang !== null); +} + +function blockHash(lang, content) { + return createHash("sha256").update(`${lang}\n${content}`).digest("hex").slice(0, 12); +} + +// ------------------------------------------------------------------- checks + +const failures = []; // { file, line, hash, lang, message } +const tsBlocks = []; // { scratchFile, docFile, startLine, hash } + +fs.rmSync(tmpDir, { recursive: true, force: true }); +fs.mkdirSync(tmpDir, { recursive: true }); + +let total = 0; +for (const file of walk(docsDir)) { + const rel = path.relative(repoRoot, file); + for (const block of extractBlocks(file)) { + total++; + const hash = blockHash(block.lang, block.content); + if (block.lang === "json") { + try { + JSON.parse(block.content); + } catch (err) { + failures.push({ file: rel, line: block.startLine, hash, lang: "json", message: err.message }); + } + } else { + const ext = block.lang === "tsx" ? "tsx" : "ts"; + const scratchFile = path.join(tmpDir, `block-${tsBlocks.length}.${ext}`); + // `export {}` makes the block a module: imports and top-level await work, + // and declarations cannot collide across blocks. + fs.writeFileSync(scratchFile, `${block.content}\nexport {};\n`); + tsBlocks.push({ scratchFile, docFile: rel, startLine: block.startLine, hash }); + } + } +} + +function runTsc(files, configName) { + const tsconfig = { + compilerOptions: { + target: "ES2022", + module: "ESNext", + moduleResolution: "Bundler", + jsx: "react-jsx", + lib: ["ES2022", "DOM"], + types: ["node"], + strict: false, + noEmit: true, + skipLibCheck: true, + esModuleInterop: true, + }, + files, + }; + const configPath = path.join(tmpDir, configName); + fs.writeFileSync(configPath, JSON.stringify(tsconfig, null, 2)); + let output = ""; + try { + execFileSync("npx", ["tsc", "-p", configPath, "--pretty", "false"], { + cwd: repoRoot, + encoding: "utf8", + maxBuffer: 64 * 1024 * 1024, + }); + } catch (err) { + output = `${err.stdout ?? ""}${err.stderr ?? ""}`; + } + const errors = new Map(); // scratchFile -> [{ line, message }] + for (const line of output.split("\n")) { + const m = line.match(/^(.*?)\((\d+),(\d+)\): (error TS\d+: .*)$/); + if (!m) continue; + const file = path.resolve(repoRoot, m[1]); + const entry = errors.get(file) ?? []; + entry.push({ line: Number(m[2]), message: m[4] }); + errors.set(file, entry); + } + return errors; +} + +if (tsBlocks.length > 0) { + // Two passes: when any file in the program has syntax errors, tsc skips + // semantic checking for the whole program. Pass 1 catches syntax failures; + // pass 2 re-checks the syntactically clean blocks for semantic errors. + const pass1 = runTsc(tsBlocks.map((b) => b.scratchFile), "tsconfig.json"); + const cleanFiles = tsBlocks.map((b) => b.scratchFile).filter((f) => !pass1.has(f)); + const pass2 = cleanFiles.length > 0 ? runTsc(cleanFiles, "tsconfig-pass2.json") : new Map(); + + for (const block of tsBlocks) { + const errors = pass1.get(block.scratchFile) ?? pass2.get(block.scratchFile); + if (!errors) continue; + failures.push({ + file: block.docFile, + line: block.startLine + errors[0].line - 1, + hash: block.hash, + lang: "ts", + message: errors + .map((e) => `L${block.startLine + e.line - 1}: ${e.message}`) + .join("\n "), + }); + } +} + +// ----------------------------------------------------------------- baseline + +const baseline = fs.existsSync(baselinePath) ? JSON.parse(fs.readFileSync(baselinePath, "utf8")) : {}; +const failingHashes = new Set(failures.map((f) => f.hash)); +const newFailures = failures.filter((f) => !(f.hash in baseline)); +const staleEntries = Object.keys(baseline).filter((h) => !failingHashes.has(h)); + +if (updateBaseline) { + const next = {}; + for (const f of failures) next[f.hash] = `${f.file}:${f.line} (${f.lang})`; + fs.writeFileSync(baselinePath, JSON.stringify(next, null, 2) + "\n"); + console.log(`Baseline rewritten: ${failures.length} known failure(s).`); + process.exit(0); +} + +console.log(`Checked ${total} code block(s): ${total - failures.length} pass, ${failures.length - newFailures.length} baselined, ${newFailures.length} new failure(s).`); +if (staleEntries.length > 0) { + console.log(`${staleEntries.length} baseline entr(ies) no longer fail; run --update-baseline to prune.`); +} + +if (newFailures.length > 0) { + console.error("\nNew failures (fix the block, or add `` above the fence for intentional elision):\n"); + for (const f of newFailures) { + console.error(` ${f.file}:${f.line} [${f.lang}] (${f.hash})\n ${f.message}\n`); + } + process.exit(1); +} diff --git a/scripts/docs-check-baseline.json b/scripts/docs-check-baseline.json new file mode 100644 index 0000000..3ca304a --- /dev/null +++ b/scripts/docs-check-baseline.json @@ -0,0 +1,394 @@ +{ + "16b0d09bf9e1": "docs/instagas/6-batch-sponsor-transactions.mdx:109 (json)", + "086b9c1722ed": "docs/instagas/6-batch-sponsor-transactions.mdx:240 (json)", + "28363a0c7951": "docs/instagas/6-batch-sponsor-transactions.mdx:246 (json)", + "a9d845cc91f1": "docs/instagas/6-batch-sponsor-transactions.mdx:293 (json)", + "c9d6b377b7c4": "docs/instagas/6-batch-sponsor-transactions.mdx:299 (json)", + "620ecf52b327": "docs/instagas/6-batch-sponsor-transactions.mdx:306 (json)", + "78476227a5e2": "docs/instagas/6-batch-sponsor-transactions.mdx:359 (json)", + "5090811f59ce": "docs/instagas/6-batch-sponsor-transactions.mdx:365 (json)", + "0b908395b817": "docs/instagas/6-batch-sponsor-transactions.mdx:422 (json)", + "b5d0a7e344f6": "docs/instagas/6-batch-sponsor-transactions.mdx:428 (json)", + "657302758367": "docs/instagas/6-batch-sponsor-transactions.mdx:446 (json)", + "2d7118daf5c5": "docs/wallet/bundler/2-rpc-methods.mdx:28 (json)", + "f031f24e808a": "docs/wallet/bundler/2-rpc-methods.mdx:683 (json)", + "84353408f21d": "docs/wallet/bundler/2-rpc-methods.mdx:105 (json)", + "0d87cd3d3997": "docs/wallet/bundler/2-rpc-methods.mdx:764 (json)", + "228e9de965a2": "docs/wallet/bundler/2-rpc-methods.mdx:782 (json)", + "68546c9f4614": "docs/wallet/bundler/2-rpc-methods.mdx:1118 (json)", + "258988c1f6ac": "docs/wallet/bundler/2-rpc-methods.mdx:1128 (json)", + "b5fc520f28de": "docs/wallet/bundler/2-rpc-methods.mdx:1099 (json)", + "e1f84ba66c34": "docs/wallet/bundler/2-rpc-methods.mdx:1162 (json)", + "1df769781c13": "docs/wallet/bundler/2-rpc-methods.mdx:313 (json)", + "8f9b729bc893": "docs/wallet/bundler/2-rpc-methods.mdx:404 (json)", + "7adb3fb533ba": "docs/wallet/bundler/2-rpc-methods.mdx:649 (json)", + "f1277ecb9510": "docs/wallet/bundler/2-rpc-methods.mdx:728 (json)", + "b995de7bd28b": "docs/wallet/bundler/2-rpc-methods.mdx:963 (json)", + "bba4fe2f61eb": "docs/wallet/bundler/2-rpc-methods.mdx:988 (json)", + "d60778f5586f": "docs/wallet/bundler/2-rpc-methods.mdx:1000 (json)", + "f48aa482a547": "docs/wallet/bundler/2-rpc-methods.mdx:1026 (json)", + "da7e947ba479": "docs/wallet/bundler/2-rpc-methods.mdx:1043 (json)", + "890a2ba3029f": "docs/wallet/bundler/2-rpc-methods.mdx:1185 (json)", + "6b6c387c87bf": "docs/wallet/paymaster/0-rpc-methods.mdx:1676 (json)", + "ee3e06133119": "docs/wallet/paymaster/0-rpc-methods.mdx:926 (json)", + "023d9901a4a6": "docs/wallet/paymaster/0-rpc-methods.mdx:1792 (json)", + "9d6cd3771359": "docs/wallet/paymaster/0-rpc-methods.mdx:1052 (json)", + "956832604a80": "docs/wallet/paymaster/0-rpc-methods.mdx:321 (json)", + "a819f27a9d39": "docs/wallet/paymaster/0-rpc-methods.mdx:1109 (json)", + "30df3f67b0c8": "docs/wallet/paymaster/0-rpc-methods.mdx:1940 (json)", + "c13f9a888312": "docs/wallet/paymaster/0-rpc-methods.mdx:468 (json)", + "37b3faa7c270": "docs/wallet/paymaster/0-rpc-methods.mdx:1987 (json)", + "3956ea309038": "docs/wallet/paymaster/0-rpc-methods.mdx:2063 (json)", + "4f513593b2c9": "docs/wallet/paymaster/0-rpc-methods.mdx:1333 (json)", + "eef0a27342d1": "docs/wallet/paymaster/0-rpc-methods.mdx:602 (json)", + "f685b609f422": "docs/wallet/paymaster/0-rpc-methods.mdx:1391 (json)", + "ba130dc59c48": "docs/wallet/paymaster/0-rpc-methods.mdx:2236 (json)", + "f37e03f9572b": "docs/wallet/paymaster/0-rpc-methods.mdx:1519 (json)", + "c20bb44e8578": "docs/wallet/paymaster/0-rpc-methods.mdx:782 (json)", + "1fcb16b03935": "docs/wallet/paymaster/0-rpc-methods.mdx:1571 (json)", + "61a0f7e492cf": "docs/wallet/paymaster/0-rpc-methods.mdx:1077 (json)", + "daf135975651": "docs/wallet/paymaster/0-rpc-methods.mdx:1960 (json)", + "f2fde11f82a7": "docs/wallet/paymaster/0-rpc-methods.mdx:1358 (json)", + "c6420710a83e": "docs/wallet/paymaster/0-rpc-methods.mdx:1538 (json)", + "0bcf0b1e81dc": "docs/wallet/paymaster/0-rpc-methods.mdx:1682 (json)", + "b4f15bc4a27d": "docs/wallet/paymaster/0-rpc-methods.mdx:1719 (json)", + "44c5931313aa": "docs/wallet/paymaster/0-rpc-methods.mdx:1798 (json)", + "40023effad99": "docs/wallet/paymaster/0-rpc-methods.mdx:1820 (json)", + "356c465b784c": "docs/wallet/paymaster/0-rpc-methods.mdx:1848 (json)", + "bdb1c0084427": "docs/wallet/paymaster/0-rpc-methods.mdx:2069 (json)", + "6a75f3d29bce": "docs/wallet/paymaster/0-rpc-methods.mdx:2089 (json)", + "b1d25b6288fe": "docs/wallet/paymaster/0-rpc-methods.mdx:2287 (json)", + "f29b73629829": "docs/wallet/paymaster/0-rpc-methods.mdx:2242 (json)", + "7586bf5aeec5": "docs/wallet/paymaster/0-rpc-methods.mdx:2258 (json)", + "7846cd4b49e6": "docs/wallet/recovery/2-ux-api.mdx:93 (json)", + "1ec826f7ad1c": "docs/wallet/recovery/2-ux-api.mdx:154 (json)", + "50c96899ab3e": "docs/wallet/recovery/2-ux-api.mdx:234 (json)", + "5b05db1025be": "docs/wallet/recovery/2-ux-api.mdx:296 (json)", + "63c55cd5f1d1": "docs/wallet/recovery/2-ux-api.mdx:304 (json)", + "a805f5f8fa8b": "docs/wallet/recovery/2-ux-api.mdx:346 (json)", + "b943c2db152b": "docs/wallet/recovery/2-ux-api.mdx:382 (json)", + "25478475473e": "docs/wallet/recovery/2-ux-api.mdx:416 (json)", + "2d557c1a74f5": "docs/wallet/recovery/2-ux-api.mdx:450 (json)", + "0eb3625b95a1": "docs/wallet/recovery/2-ux-api.mdx:467 (json)", + "8abf4adc03a7": "docs/wallet/recovery/2-ux-api.mdx:496 (json)", + "88010cc6d2d3": "docs/wallet/recovery/2-ux-api.mdx:509 (json)", + "84622f0e901e": "docs/wallet/recovery/2-ux-api.mdx:527 (json)", + "e1430c88bf19": "docs/wallet/recovery/2-ux-api.mdx:571 (json)", + "3bd6fe96d4c2": "docs/wallet/recovery/3-auth-api.mdx:90 (json)", + "d795e4e84c7f": "docs/wallet/recovery/3-auth-api.mdx:107 (json)", + "a0ece90e25ed": "docs/wallet/recovery/3-auth-api.mdx:144 (json)", + "ea77341bee72": "docs/wallet/recovery/3-auth-api.mdx:156 (json)", + "10c2c2c240f3": "docs/wallet/recovery/3-auth-api.mdx:178 (json)", + "47275dd7d129": "docs/wallet/recovery/3-auth-api.mdx:189 (json)", + "c18ac35ed28a": "docs/wallet/recovery/3-auth-api.mdx:218 (json)", + "b337263be736": "docs/wallet/recovery/3-auth-api.mdx:256 (json)", + "d6b0ac374d29": "docs/wallet/recovery/3-auth-api.mdx:300 (json)", + "f6a46ded481f": "docs/account-abstraction/7702/2-delegation.md:50 (ts)", + "b9993e5650f0": "docs/account-abstraction/7702/2-delegation.md:73 (ts)", + "8b278a158b83": "docs/account-abstraction/7702/2-delegation.md:91 (ts)", + "a3f1a0805d7a": "docs/account-abstraction/7702/2-delegation.md:118 (ts)", + "af8e139299dd": "docs/instagas/6-batch-sponsor-transactions.mdx:162 (ts)", + "20f9f44dedc5": "docs/instagas/6-batch-sponsor-transactions.mdx:212 (ts)", + "b90b8ecb0371": "docs/wallet/abstractionkit/1.bundler.mdx:45 (ts)", + "688d114c10ac": "docs/wallet/abstractionkit/1.bundler.mdx:61 (ts)", + "388dad000ac1": "docs/wallet/abstractionkit/1.bundler.mdx:170 (ts)", + "b34435363761": "docs/wallet/abstractionkit/1.bundler.mdx:199 (ts)", + "ff9498ea9fe1": "docs/wallet/abstractionkit/1.bundler.mdx:227 (ts)", + "2bedba7e312f": "docs/wallet/abstractionkit/1.bundler.mdx:306 (ts)", + "b41555d6cc1e": "docs/wallet/abstractionkit/1.bundler.mdx:368 (ts)", + "e6a5536e3c16": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:166 (ts)", + "256bace347fc": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:197 (ts)", + "25f9450c0c8c": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:221 (ts)", + "378a82e4745b": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:239 (ts)", + "39639d0d5cbc": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:277 (ts)", + "eb8e3412a9f7": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:390 (ts)", + "b76f1ff20139": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:335 (ts)", + "1e3f669b8059": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:368 (ts)", + "e582d5faba27": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:396 (ts)", + "efd365c43c68": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:425 (ts)", + "7276d77d3981": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:452 (ts)", + "12f9e860f7f3": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:489 (ts)", + "e35b8710ae77": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:523 (ts)", + "93585156a6d3": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:539 (ts)", + "d2ecb46acc18": "docs/wallet/abstractionkit/10-simple-7702-account-v09.mdx:557 (ts)", + "3654981fe386": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:95 (ts)", + "c97d778fd129": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:198 (ts)", + "ce4b86ec8092": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:220 (ts)", + "8a27f7fbf77d": "docs/wallet/abstractionkit/12-calibur-account.mdx:358 (ts)", + "4d5dbf2f5e5f": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:278 (ts)", + "14afdf5ce2a3": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:311 (ts)", + "7e0f2a4ffcfa": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:339 (ts)", + "afe61a3ad342": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:362 (ts)", + "8fefc88cdfe8": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:424 (ts)", + "cf2625889e8a": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:522 (ts)", + "5393a58cb56c": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:546 (ts)", + "7409b4887572": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:577 (ts)", + "a670bc336f42": "docs/wallet/abstractionkit/11-simple-7702-account-v08.mdx:605 (ts)", + "498cbef60b17": "docs/wallet/abstractionkit/12-calibur-account.mdx:157 (ts)", + "02de6f9359be": "docs/wallet/abstractionkit/12-calibur-account.mdx:226 (ts)", + "97468803bc85": "docs/wallet/abstractionkit/12-calibur-account.mdx:272 (ts)", + "c3bb31eeae50": "docs/wallet/abstractionkit/12-calibur-account.mdx:320 (ts)", + "a10b9bfe5f23": "docs/wallet/abstractionkit/12-calibur-account.mdx:438 (ts)", + "b7003631b8f1": "docs/wallet/abstractionkit/12-calibur-account.mdx:473 (ts)", + "0e45237bd1f7": "docs/wallet/abstractionkit/12-calibur-account.mdx:554 (ts)", + "25e7b4cd929b": "docs/wallet/abstractionkit/12-calibur-account.mdx:592 (ts)", + "0d4d402174cd": "docs/wallet/abstractionkit/12-calibur-account.mdx:634 (ts)", + "e5e935cb6043": "docs/wallet/abstractionkit/12-calibur-account.mdx:704 (ts)", + "058d573fe73c": "docs/wallet/abstractionkit/12-calibur-account.mdx:739 (ts)", + "5683b65372f3": "docs/wallet/abstractionkit/12-calibur-account.mdx:771 (ts)", + "4055e0eb6565": "docs/wallet/abstractionkit/12-calibur-account.mdx:808 (ts)", + "607c83bc4227": "docs/wallet/abstractionkit/12-calibur-account.mdx:842 (ts)", + "c1cc425d8f7b": "docs/wallet/abstractionkit/12-calibur-account.mdx:878 (ts)", + "d7fa117781fe": "docs/wallet/abstractionkit/12-calibur-account.mdx:913 (ts)", + "170347d725a8": "docs/wallet/abstractionkit/12-calibur-account.mdx:1032 (ts)", + "0e0ac3675592": "docs/wallet/abstractionkit/12-calibur-account.mdx:1068 (ts)", + "d84b3c445f97": "docs/wallet/abstractionkit/12-calibur-account.mdx:1100 (ts)", + "5207599f5b26": "docs/wallet/abstractionkit/12-calibur-account.mdx:1138 (ts)", + "51c5ab670753": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:54 (ts)", + "401db5e14d2b": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:113 (ts)", + "8c1e24bc86a1": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:223 (ts)", + "4dc98be81f46": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:260 (ts)", + "d9d56f74c979": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:270 (ts)", + "48719de0e09d": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:295 (ts)", + "261d9079efda": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:342 (ts)", + "283379ca3717": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:354 (ts)", + "7b8f70fff773": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:446 (ts)", + "af9d25fd678b": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:482 (ts)", + "fdc09379ff8c": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:520 (ts)", + "62dff0fef38b": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:574 (ts)", + "76d7dba7a046": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:598 (ts)", + "a72d85bf15b9": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:613 (ts)", + "42e87d780d83": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:635 (ts)", + "276119e88f09": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:669 (ts)", + "8b023faf39ac": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:676 (ts)", + "2b36339a20d0": "docs/wallet/abstractionkit/13-safe-unified-account.mdx:702 (ts)", + "50b6ff9645b1": "docs/wallet/abstractionkit/14-external-signers.mdx:22 (ts)", + "4945b2e672a4": "docs/wallet/abstractionkit/14-external-signers.mdx:61 (ts)", + "4647e99e151f": "docs/wallet/abstractionkit/14-external-signers.mdx:86 (ts)", + "e405c3c8e3eb": "docs/wallet/abstractionkit/14-external-signers.mdx:104 (ts)", + "d723ceb0e9ff": "docs/wallet/abstractionkit/14-external-signers.mdx:132 (ts)", + "54c83b1a2f22": "docs/wallet/abstractionkit/14-external-signers.mdx:146 (ts)", + "21ac68b615e7": "docs/wallet/abstractionkit/14-external-signers.mdx:156 (ts)", + "dbc135219d66": "docs/wallet/abstractionkit/14-external-signers.mdx:171 (ts)", + "5ffa7fad9ea1": "docs/wallet/abstractionkit/14-external-signers.mdx:191 (ts)", + "415ad2cfad3e": "docs/wallet/abstractionkit/14-external-signers.mdx:215 (ts)", + "c1de27a64c34": "docs/wallet/abstractionkit/3.paymaster.mdx:86 (ts)", + "c0bec50c21c6": "docs/wallet/abstractionkit/3.paymaster.mdx:112 (ts)", + "71ec52c320dc": "docs/wallet/abstractionkit/3.paymaster.mdx:196 (ts)", + "7faeae6bc3b3": "docs/wallet/abstractionkit/3.paymaster.mdx:240 (ts)", + "d613f8bc8d7c": "docs/wallet/abstractionkit/3.paymaster.mdx:272 (ts)", + "f7aec0f37182": "docs/wallet/abstractionkit/3.paymaster.mdx:315 (ts)", + "d4188302dca0": "docs/wallet/abstractionkit/3.paymaster.mdx:390 (ts)", + "c3d96147eee2": "docs/wallet/abstractionkit/3.paymaster.mdx:615 (ts)", + "e349c1ef2851": "docs/wallet/abstractionkit/3.paymaster.mdx:635 (ts)", + "69ba4c972b63": "docs/wallet/abstractionkit/4.utilities.mdx:74 (ts)", + "6707d9ab3b47": "docs/wallet/abstractionkit/4.utilities.mdx:100 (ts)", + "e6f2ea9136a0": "docs/wallet/abstractionkit/4.utilities.mdx:125 (ts)", + "8c4a9334cfef": "docs/wallet/abstractionkit/4.utilities.mdx:181 (ts)", + "b735deff0092": "docs/wallet/abstractionkit/4.utilities.mdx:228 (ts)", + "cd5eb2ec66f5": "docs/wallet/abstractionkit/4.utilities.mdx:333 (ts)", + "0ca557ae0f16": "docs/wallet/abstractionkit/4.utilities.mdx:366 (ts)", + "7249b747cb47": "docs/wallet/abstractionkit/4.utilities.mdx:426 (ts)", + "c971f3fa1077": "docs/wallet/abstractionkit/4.utilities.mdx:466 (ts)", + "a5012b1f8701": "docs/wallet/abstractionkit/4.utilities.mdx:640 (ts)", + "91034b5d60ad": "docs/wallet/abstractionkit/4.utilities.mdx:672 (ts)", + "2cf7dedaaa27": "docs/wallet/abstractionkit/4.utilities.mdx:709 (ts)", + "6b4c629ecf4a": "docs/wallet/abstractionkit/4.utilities.mdx:750 (ts)", + "24a655bce9a2": "docs/wallet/abstractionkit/4.utilities.mdx:822 (ts)", + "74a432edb3fa": "docs/wallet/abstractionkit/4.utilities.mdx:859 (ts)", + "1cecf8a1b02d": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:89 (ts)", + "49c8412a7607": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:192 (ts)", + "3bd285feec8c": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:208 (ts)", + "a50281bbbf4c": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:359 (ts)", + "7d630fa09866": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:405 (ts)", + "943cb3bc7a69": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:404 (ts)", + "7d40b3d929ad": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:488 (ts)", + "fcfa837ecfe0": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:559 (ts)", + "f39e89cb89b1": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:591 (ts)", + "4201cc55d576": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:709 (ts)", + "07af00e534e1": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:769 (ts)", + "7800ce46d9df": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:830 (ts)", + "33b608c63921": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:897 (ts)", + "4fb01c2fe091": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:938 (ts)", + "99f8f7e18157": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:960 (ts)", + "792d73ee6c2d": "docs/wallet/abstractionkit/7-safe-account-v2.mdx:1097 (ts)", + "4974bbe7d2d5": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:165 (ts)", + "f7638eb84d67": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:336 (ts)", + "efe375476204": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:384 (ts)", + "f4b4bc6f375f": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:639 (ts)", + "b046462a6c69": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:699 (ts)", + "1dcca0614f86": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:760 (ts)", + "756cec803915": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:827 (ts)", + "a7dec13b56d3": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:875 (ts)", + "b333af8c12c5": "docs/wallet/abstractionkit/8-safe-account-v3.mdx:897 (ts)", + "ea856ad39c01": "docs/wallet/abstractionkit/9-simple-7702-account.mdx:53 (ts)", + "54eadf45393a": "docs/wallet/api/authenticated-endpoints.md:59 (ts)", + "57f095b23b9f": "docs/wallet/bundler/2-rpc-methods.mdx:810 (ts)", + "254bc1849521": "docs/wallet/guides/0-getting-started.mdx:178 (ts)", + "a1658827daf9": "docs/wallet/guides/0-getting-started.mdx:208 (ts)", + "ebe4f801294b": "docs/wallet/guides/0-getting-started.mdx:238 (ts)", + "a0bd1e4a85fd": "docs/wallet/guides/0-getting-started.mdx:258 (ts)", + "76dfb7e73fe9": "docs/wallet/guides/0-getting-started.mdx:273 (ts)", + "8c649aef9fac": "docs/wallet/guides/0-getting-started.mdx:286 (ts)", + "c698af79b84d": "docs/wallet/guides/1-send-gasless-tx.mdx:65 (ts)", + "8608046bc5bd": "docs/wallet/guides/1-send-gasless-tx.mdx:177 (ts)", + "697623f07082": "docs/wallet/guides/10-getting-started-calibur.mdx:118 (ts)", + "592b6937c2b5": "docs/wallet/guides/10-getting-started-calibur.mdx:134 (ts)", + "f2fff9166522": "docs/wallet/guides/10-getting-started-calibur.mdx:155 (ts)", + "043e5562b210": "docs/wallet/guides/10-getting-started-calibur.mdx:182 (ts)", + "0b65072267f2": "docs/wallet/guides/10-getting-started-calibur.mdx:196 (ts)", + "27741d7b8aad": "docs/wallet/guides/10-getting-started-calibur.mdx:217 (ts)", + "af2dafa59c4d": "docs/wallet/guides/10-getting-started-calibur.mdx:257 (ts)", + "8957e6e2940b": "docs/wallet/guides/11-calibur-passkeys.mdx:100 (ts)", + "e04055b6397a": "docs/wallet/guides/11-calibur-passkeys.mdx:114 (ts)", + "cdbe3e4b0466": "docs/wallet/guides/11-calibur-passkeys.mdx:139 (ts)", + "1d544b0fcc08": "docs/wallet/guides/11-calibur-passkeys.mdx:226 (ts)", + "8415939528c4": "docs/wallet/guides/11-calibur-passkeys.mdx:257 (ts)", + "f98dfbde1a1c": "docs/wallet/guides/11-calibur-passkeys.mdx:301 (ts)", + "218e80824d85": "docs/wallet/guides/11-calibur-passkeys.mdx:330 (ts)", + "029226a01b06": "docs/wallet/guides/12-calibur-key-management.mdx:80 (ts)", + "e83e91fb2b28": "docs/wallet/guides/12-calibur-key-management.mdx:141 (ts)", + "e1ba22d6c0be": "docs/wallet/guides/12-calibur-key-management.mdx:150 (ts)", + "1035ef4556fc": "docs/wallet/guides/12-calibur-key-management.mdx:164 (ts)", + "c5f0dd3cef03": "docs/wallet/guides/12-calibur-key-management.mdx:229 (ts)", + "9d0e195fdb2b": "docs/wallet/guides/12-calibur-key-management.mdx:286 (ts)", + "bfed50302916": "docs/wallet/guides/12-calibur-key-management.mdx:348 (ts)", + "01ded8f0ba5e": "docs/wallet/guides/12-calibur-key-management.mdx:399 (ts)", + "c12c16b0a786": "docs/wallet/guides/2-pay-gas-in-erc20.mdx:73 (ts)", + "70df41743160": "docs/wallet/guides/3-multisig.mdx:83 (ts)", + "30f53072236a": "docs/wallet/guides/3-multisig.mdx:98 (ts)", + "3adba571a3eb": "docs/wallet/guides/3-multisig.mdx:263 (ts)", + "1f1546b00487": "docs/wallet/guides/3-multisig.mdx:294 (ts)", + "5e2d7e8a942a": "docs/wallet/guides/3-multisig.mdx:325 (ts)", + "c521f7fc4d34": "docs/wallet/guides/4-signing.mdx:51 (ts)", + "2b000546732d": "docs/wallet/guides/4-signing.mdx:96 (ts)", + "19e0695a40f6": "docs/wallet/guides/5-authentication.mdx:79 (ts)", + "93f2128fdd08": "docs/wallet/guides/5-authentication.mdx:94 (ts)", + "c1e2c0b9dd24": "docs/wallet/guides/5-authentication.mdx:127 (ts)", + "ba2477ea2203": "docs/wallet/guides/5-authentication.mdx:143 (ts)", + "4b73cd652a9f": "docs/wallet/guides/5-authentication.mdx:172 (ts)", + "f5d6982d63af": "docs/wallet/guides/5-authentication.mdx:187 (ts)", + "9f0e7d6a47b1": "docs/wallet/guides/5-authentication.mdx:227 (ts)", + "bde0633cc4d2": "docs/wallet/guides/5-authentication.mdx:246 (ts)", + "35f3592d7f21": "docs/wallet/guides/6-getting-started-eip-7702.mdx:113 (ts)", + "647e8d7d95e3": "docs/wallet/guides/6-getting-started-eip-7702.mdx:148 (ts)", + "598fe19523e9": "docs/wallet/guides/6-getting-started-eip-7702.mdx:171 (ts)", + "f89dc328a838": "docs/wallet/guides/6-getting-started-eip-7702.mdx:193 (ts)", + "36cee95bf9fc": "docs/wallet/guides/6-getting-started-eip-7702.mdx:208 (ts)", + "430bae7a3f52": "docs/wallet/guides/6-getting-started-eip-7702.mdx:218 (ts)", + "40b7101d75cb": "docs/wallet/guides/6-getting-started-eip-7702.mdx:226 (ts)", + "582e438b9d30": "docs/wallet/guides/6-getting-started-eip-7702.mdx:276 (ts)", + "02012ae1c653": "docs/wallet/guides/7-send-gasless-eip-7702.mdx:50 (ts)", + "ba917977ce3d": "docs/wallet/guides/8-pay-gas-in-erc20-eip-7702.mdx:26 (ts)", + "cada242c490b": "docs/wallet/guides/9-simulate-transaction.mdx:47 (ts)", + "3d3238330c50": "docs/wallet/guides/9-simulate-transaction.mdx:61 (ts)", + "d94831bc443c": "docs/wallet/guides/chain-abstraction-getting-started.md:153 (ts)", + "745f22fafb49": "docs/wallet/guides/chain-abstraction-getting-started.md:191 (ts)", + "b688c69f162c": "docs/wallet/guides/chain-abstraction-getting-started.md:207 (ts)", + "aa59d6fc50a9": "docs/wallet/guides/chain-abstraction-getting-started.md:230 (ts)", + "1a1baf759f19": "docs/wallet/guides/chain-abstraction-getting-started.md:261 (ts)", + "7ff69d5edebf": "docs/wallet/guides/chain-abstraction-getting-started.md:279 (ts)", + "c27578861243": "docs/wallet/guides/chain-abstraction-getting-started.md:355 (ts)", + "9cd7ce7c220a": "docs/wallet/guides/magic.mdx:63 (ts)", + "6ed33d9800ad": "docs/wallet/guides/magic.mdx:75 (ts)", + "532238c02a51": "docs/wallet/guides/magic.mdx:106 (ts)", + "0046c2f9678d": "docs/wallet/guides/magic.mdx:147 (ts)", + "e0a6e520fff6": "docs/wallet/guides/magic.mdx:171 (ts)", + "f4753bfd8717": "docs/wallet/guides/turnkey.mdx:190 (ts)", + "562e3b1a3e42": "docs/wallet/guides/turnkey.mdx:204 (ts)", + "bb28f30a1e67": "docs/wallet/guides/onchain-identifiers.mdx:18 (ts)", + "f3badb9281ae": "docs/wallet/guides/onchain-identifiers.mdx:37 (ts)", + "c851ac886041": "docs/wallet/guides/onchain-identifiers.mdx:45 (ts)", + "576097c1d1c0": "docs/wallet/guides/onchain-identifiers.mdx:58 (ts)", + "d5cc31239245": "docs/wallet/guides/onchain-identifiers.mdx:86 (ts)", + "4700348becca": "docs/wallet/guides/recovery-with-google-using-lit.mdx:42 (ts)", + "5abff758ef6c": "docs/wallet/guides/recovery-with-google-using-lit.mdx:65 (ts)", + "cae925b59445": "docs/wallet/guides/recovery-with-google-using-lit.mdx:100 (ts)", + "89d7141af02d": "docs/wallet/guides/recovery-with-google-using-lit.mdx:124 (ts)", + "273d52211082": "docs/wallet/guides/recovery-with-google-using-lit.mdx:140 (ts)", + "fde7bcdb9172": "docs/wallet/guides/recovery-with-google-using-lit.mdx:192 (ts)", + "e761b4443f9d": "docs/wallet/guides/recovery-with-google-using-lit.mdx:203 (ts)", + "8099b9e46200": "docs/wallet/guides/recovery-with-google-using-lit.mdx:229 (ts)", + "7340dc7e8452": "docs/wallet/guides/recovery-with-google-using-lit.mdx:239 (ts)", + "fafcf3e402aa": "docs/wallet/guides/recovery-with-google-using-lit.mdx:255 (ts)", + "c15fa7406a43": "docs/wallet/guides/turnkey.mdx:69 (ts)", + "a814b48c4bf6": "docs/wallet/guides/turnkey.mdx:81 (ts)", + "4c321e822ce9": "docs/wallet/guides/turnkey.mdx:104 (ts)", + "81394a32f32e": "docs/wallet/guides/turnkey.mdx:143 (ts)", + "ebc5b4bf4d96": "docs/wallet/intro.mdx:24 (ts)", + "6921f3721e73": "docs/wallet/plugins/0-passkeys.mdx:149 (ts)", + "0cce1bb979f2": "docs/wallet/plugins/0-passkeys.mdx:169 (ts)", + "42e4a9216833": "docs/wallet/plugins/0-passkeys.mdx:182 (ts)", + "c4dc6f8ee0d6": "docs/wallet/plugins/0-passkeys.mdx:192 (ts)", + "5a62a724192f": "docs/wallet/plugins/0-passkeys.mdx:221 (ts)", + "0c19af18a565": "docs/wallet/plugins/0-passkeys.mdx:256 (ts)", + "7d112aa5faae": "docs/wallet/plugins/0-passkeys.mdx:272 (ts)", + "8166fb8f385d": "docs/wallet/plugins/0-passkeys.mdx:285 (ts)", + "c18e38b9e6ae": "docs/wallet/plugins/0-passkeys.mdx:310 (ts)", + "8d7452bcae47": "docs/wallet/plugins/0-passkeys.mdx:325 (ts)", + "ac859edbd755": "docs/wallet/plugins/0-passkeys.mdx:364 (ts)", + "5b8eaf2a47f3": "docs/wallet/plugins/0-passkeys.mdx:385 (ts)", + "7f09aad72ad5": "docs/wallet/plugins/0-passkeys.mdx:397 (ts)", + "5f327d39e895": "docs/wallet/plugins/0-passkeys.mdx:409 (ts)", + "c661963c4867": "docs/wallet/plugins/0-passkeys.mdx:426 (ts)", + "ba693933cb67": "docs/wallet/plugins/0-passkeys.mdx:455 (ts)", + "f76d14129bcc": "docs/wallet/plugins/0-passkeys.mdx:465 (ts)", + "57256c523fbf": "docs/wallet/plugins/0-passkeys.mdx:481 (ts)", + "20cf0e4a3dd5": "docs/wallet/plugins/0-passkeys.mdx:507 (ts)", + "17a56415e648": "docs/wallet/plugins/0-passkeys.mdx:530 (ts)", + "9b5f86fcb543": "docs/wallet/plugins/2-allowance.mdx:108 (ts)", + "4ccf7701ba7e": "docs/wallet/plugins/2-allowance.mdx:118 (ts)", + "c10f956c7048": "docs/wallet/plugins/2-allowance.mdx:130 (ts)", + "49a4b81c97a3": "docs/wallet/plugins/2-allowance.mdx:142 (ts)", + "cd06ff677179": "docs/wallet/plugins/2-allowance.mdx:157 (ts)", + "60a7f27893cd": "docs/wallet/plugins/2-allowance.mdx:180 (ts)", + "c30ccd4b1e2d": "docs/wallet/plugins/2-allowance.mdx:201 (ts)", + "792174d52833": "docs/wallet/plugins/2-recovery-module-reference.mdx:73 (ts)", + "fdb9124ef469": "docs/wallet/plugins/2-recovery-module-reference.mdx:84 (ts)", + "888d04dd5de3": "docs/wallet/plugins/2-recovery-module-reference.mdx:93 (ts)", + "bdfd7800bfd7": "docs/wallet/plugins/3-how-to-add-a-guardian.mdx:74 (ts)", + "7d3d6792a3a6": "docs/wallet/plugins/4-allowance-migration.mdx:38 (ts)", + "690c943a019b": "docs/wallet/plugins/4-allowance-migration.mdx:58 (ts)", + "f330e722a89c": "docs/wallet/plugins/4-allowance-migration.mdx:67 (ts)", + "5549241d9eb9": "docs/wallet/plugins/4-allowance-migration.mdx:78 (ts)", + "8dd51b88a0a0": "docs/wallet/plugins/4-allowance-migration.mdx:92 (ts)", + "9133ae8115b2": "docs/wallet/plugins/4-allowance-migration.mdx:104 (ts)", + "3ad48b59a713": "docs/wallet/plugins/4-recovery-flow-guide.mdx:127 (ts)", + "0eb65c832d5f": "docs/wallet/plugins/4-recovery-flow-guide.mdx:156 (ts)", + "4f5411626abb": "docs/wallet/plugins/4-recovery-flow-guide.mdx:175 (ts)", + "20623e44368c": "docs/wallet/plugins/4-recovery-flow-guide.mdx:194 (ts)", + "eeeaba4021df": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:214 (ts)", + "fd9a89af010e": "docs/wallet/plugins/4-recovery-flow-guide.mdx:246 (ts)", + "ee272addbe4f": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:117 (ts)", + "972191a0d54c": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:128 (ts)", + "29352ddbece9": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:147 (ts)", + "4d66eb4050f9": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:164 (ts)", + "e13f46e4bd34": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:191 (ts)", + "eabd8432ec01": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:203 (ts)", + "5ce237e526ce": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:217 (ts)", + "974fbc98e23d": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:239 (ts)", + "a5aa8b6e3be0": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:263 (ts)", + "57641b0edaf3": "docs/wallet/plugins/5-recovery-alerts-guide.mdx:291 (ts)", + "42ce523f4028": "docs/wallet/plugins/6-add-candide-guardian.mdx:93 (ts)", + "a43af517c82f": "docs/wallet/plugins/6-add-candide-guardian.mdx:103 (ts)", + "f1a286412f0a": "docs/wallet/plugins/6-add-candide-guardian.mdx:128 (ts)", + "9e8a1885e8a0": "docs/wallet/plugins/6-add-candide-guardian.mdx:167 (ts)", + "1ff3bf31d80e": "docs/wallet/plugins/6-add-candide-guardian.mdx:209 (ts)", + "6a0dec64abe3": "docs/wallet/plugins/6-add-candide-guardian.mdx:224 (ts)", + "72833f01cf3c": "docs/wallet/plugins/6-add-candide-guardian.mdx:246 (ts)", + "1c2694b69cb6": "docs/wallet/plugins/6-add-candide-guardian.mdx:277 (ts)", + "3fe56aa38c6d": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:104 (ts)", + "c2f6a627db38": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:120 (ts)", + "d5f2d272f179": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:137 (ts)", + "cc6ad139ba33": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:156 (ts)", + "40ed53c507a9": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:177 (ts)", + "25b523986a35": "docs/wallet/plugins/7-recover-account-candide-guardian.mdx:199 (ts)", + "39f374e05768": "docs/wallet/plugins/8-recovery-service-sdk-reference.mdx:95 (ts)", + "aab9e6cc6101": "docs/wallet/plugins/8-recovery-service-sdk-reference.mdx:108 (ts)", + "929d4f24bb15": "docs/wallet/plugins/8-recovery-service-sdk-reference.mdx:269 (ts)", + "d3a566c288eb": "docs/wallet/plugins/8-recovery-service-sdk-reference.mdx:695 (ts)", + "dfd8e4cfb172": "docs/wallet/recovery/3-auth-api.mdx:338 (ts)", + "47f2ec35a7d3": "docs/wallet/recovery/3-auth-api.mdx:365 (ts)", + "32240d3c3283": "docs/wallet/technical-reference/chain-nuances.mdx:16 (ts)", + "9aec6e9ccd3a": "docs/wallet/technical-reference/chain-nuances.mdx:39 (ts)" +} diff --git a/yarn.lock b/yarn.lock index 8ebba08..528bf5f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,11 @@ # yarn lockfile v1 +"@adraffy/ens-normalize@1.11.1", "@adraffy/ens-normalize@^1.11.0": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.1.tgz#6c2d657d4b2dfb37f8ea811dcb3e60843d4ac24a" + integrity sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ== + "@algolia/abtesting@1.17.0": version "1.17.0" resolved "https://registry.yarnpkg.com/@algolia/abtesting/-/abtesting-1.17.0.tgz#d1c5cb798852b7d61225935ecca3efcef042cf20" @@ -2976,11 +2981,47 @@ dependencies: "@tybys/wasm-util" "^0.10.3" +"@noble/ciphers@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@noble/ciphers/-/ciphers-1.3.0.tgz#f64b8ff886c240e644e5573c097f86e5b43676dc" + integrity sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw== + +"@noble/curves@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.2.0.tgz#92d7e12e4e49b23105a2555c6984d41733d65c35" + integrity sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw== + dependencies: + "@noble/hashes" "1.3.2" + +"@noble/curves@1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.1.tgz#9654a0bc6c13420ae252ddcf975eaf0f58f0a35c" + integrity sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/curves@^1.2.0", "@noble/curves@~1.9.0": + version "1.9.7" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.7.tgz#79d04b4758a43e4bca2cbdc62e7771352fa6b951" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/hashes@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.2.tgz#6f26dbc8fbc7205873ce3cee2f690eba0d421b39" + integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ== + "@noble/hashes@1.4.0": version "1.4.0" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== +"@noble/hashes@1.8.0", "@noble/hashes@^1.1.2", "@noble/hashes@^1.3.2", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== + "@node-rs/jieba-android-arm-eabi@1.10.4": version "1.10.4" resolved "https://registry.yarnpkg.com/@node-rs/jieba-android-arm-eabi/-/jieba-android-arm-eabi-1.10.4.tgz#c8c0be3895f01c86a0138cbb1b2228d0895c6854" @@ -3330,6 +3371,28 @@ resolved "https://registry.yarnpkg.com/@saucelabs/theme-github-codeblock/-/theme-github-codeblock-0.3.0.tgz#7936bc6aa97a15f2483ac143df4918c8d2baf5f0" integrity sha512-+8xWxBfN+I8StJ0QXERMbGf+BHwRXHWV3mFl9uDayXERiZ/rR93d0nAS3s9s/rKjqh/YSm/4dThEkBNBLnGs4Q== +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + +"@scure/bip32@1.7.0", "@scure/bip32@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.7.0.tgz#b8683bab172369f988f1589640e53c4606984219" + integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== + dependencies: + "@noble/curves" "~1.9.0" + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + +"@scure/bip39@1.6.0", "@scure/bip39@^1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.6.0.tgz#475970ace440d7be87a6086cbee77cb8f1a684f9" + integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== + dependencies: + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + "@sideway/address@^4.1.5": version "4.1.5" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5" @@ -3389,6 +3452,39 @@ micromark-util-character "^1.1.0" micromark-util-symbol "^1.0.1" +"@spruceid/siwe-parser@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@spruceid/siwe-parser/-/siwe-parser-3.0.0.tgz#8af48683d77aed6dbd1abf541e1b064dc64be10e" + integrity sha512-Y92k63ilw/8jH9Ry4G2e7lQd0jZAvb0d/Q7ssSD0D9mp/Zt2aCXIc3g0ny9yhplpAx1QXHsMz/JJptHK/zDGdw== + dependencies: + "@noble/hashes" "^1.1.2" + apg-js "^4.4.0" + +"@stablelib/binary@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/binary/-/binary-1.0.1.tgz#c5900b94368baf00f811da5bdb1610963dfddf7f" + integrity sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q== + dependencies: + "@stablelib/int" "^1.0.1" + +"@stablelib/int@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/int/-/int-1.0.1.tgz#75928cc25d59d73d75ae361f02128588c15fd008" + integrity sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w== + +"@stablelib/random@^1.0.1": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@stablelib/random/-/random-1.0.2.tgz#2dece393636489bf7e19c51229dd7900eddf742c" + integrity sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w== + dependencies: + "@stablelib/binary" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/wipe@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/wipe/-/wipe-1.0.1.tgz#d21401f1d59ade56a62e139462a97f104ed19a36" + integrity sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg== + "@svgr/babel-plugin-add-jsx-attribute@8.0.0": version "8.0.0" resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz#4001f5d5dd87fa13303e36ee106e3ff3a7eb8b22" @@ -4214,11 +4310,25 @@ dependencies: undici-types "~7.19.0" +"@types/node@22.7.5": + version "22.7.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.5.tgz#cfde981727a7ab3611a481510b473ae54442b92b" + integrity sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ== + dependencies: + undici-types "~6.19.2" + "@types/node@^17.0.5": version "17.0.45" resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.45.tgz#2c0fafd78705e7a18b7906b5201a522719dc5190" integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw== +"@types/node@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-26.1.0.tgz#aa85f0727fc5611347091c478341c63650903439" + integrity sha512-O0A1G3xPGy4w7AgQdAQYUlQ+BKk2Oovw8eRpofyp5KdBZULnbe+WqaOVNrm705SHphCiG4XHsACrSmPu1f+Kgw== + dependencies: + undici-types "~8.3.0" + "@types/prismjs@^1.26.0": version "1.26.5" resolved "https://registry.yarnpkg.com/@types/prismjs/-/prismjs-1.26.5.tgz#72499abbb4c4ec9982446509d2f14fb8483869d6" @@ -4372,6 +4482,20 @@ d3-selection "^3.0.0" d3-transition "^3.0.1" +"@wagmi/connectors@8.0.20": + version "8.0.20" + resolved "https://registry.yarnpkg.com/@wagmi/connectors/-/connectors-8.0.20.tgz#c722f7971e088ffdc848c41c003d050e50c8e4b7" + integrity sha512-c6BRWBJ2bnYq/Spxpc7H/mdnlZ90CPSEZ4NKCin3gM8yRwqkI4J1BzSXF1jAoHO0QjME1rajGGQKrCli3tV3hw== + +"@wagmi/core@3.5.5": + version "3.5.5" + resolved "https://registry.yarnpkg.com/@wagmi/core/-/core-3.5.5.tgz#adb9b896d8de05875c09b84b7d2c023d0a0870e8" + integrity sha512-JEJAwo25p9c52JwQs1WunqANPs4PjJ+eepDLXvQJ390vEXsBexYdCDmsPPcYZaGpk0Umx0w85U1ruRodXusMzg== + dependencies: + eventemitter3 "5.0.1" + mipd "0.0.7" + zustand "5.0.0" + "@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": version "1.14.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6" @@ -4503,6 +4627,31 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +abitype@1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.2.3.tgz#bec3e09dea97d99ef6c719140bee663a329ad1f4" + integrity sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg== + +abitype@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.2.4.tgz#8aab72949bcad4107031862ae998e5bd20eec76e" + integrity sha512-dpKH+N27vRjarMVTFFkeY445VTKftzGWpL0FiT7xmVmzQRKazZexzC5uHG0f6XKsVLAuUlndnbGau6lRejClxg== + +abstractionkit@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/abstractionkit/-/abstractionkit-0.4.0.tgz#496d24b9f2c63dc5a9089c52786cad70e8226aa4" + integrity sha512-eOVHBEDHEMTxyLUzxfTJtxrIEnhbhCMlESZw+FW+0Wo1HlwfTIf+S8gxlRF8vMk9K/jiYxEmxeDFObfVtZsYFA== + dependencies: + "@noble/curves" "^1.2.0" + "@noble/hashes" "^1.3.2" + +abstractionkit@^0.2.30: + version "0.2.41" + resolved "https://registry.yarnpkg.com/abstractionkit/-/abstractionkit-0.2.41.tgz#8bfe29222bdb07bdfd3ae9c1557a4e608ac168cc" + integrity sha512-JtPggNDOzP1IRi+S4YNbSss66GmVbeIoelAeEBskRRs+6MGpLOF+kiweLMtV7i+P632Qx9KzNpnX5modF6xheg== + dependencies: + ethers "^6.13.2" + accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -4538,6 +4687,11 @@ address@^1.0.1: resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== +aes-js@4.0.0-beta.5: + version "4.0.0-beta.5" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-4.0.0-beta.5.tgz#8d2452c52adedebc3a3e28465d858c11ca315873" + integrity sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q== + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -4666,6 +4820,11 @@ anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" +apg-js@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/apg-js/-/apg-js-4.4.0.tgz#09dcecab0731fbde233b9f2352fdd2d07e56b2cf" + integrity sha512-fefmXFknJmtgtNEXfPwZKYkMFX4Fyeyz+fNF6JWp87biGOPslJbCBVU158zvKRZfHBKnJDy8CMM40oLFGkXT8Q== + arg@^5.0.0: version "5.0.2" resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" @@ -5899,6 +6058,11 @@ dagre-d3-es@7.0.14: d3 "^7.9.0" lodash-es "^4.17.21" +data-uri-to-buffer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz#d8feb2b2881e6a4f58c2e08acfd0e2834e26222e" + integrity sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A== + dayjs@^1.11.19: version "1.11.20" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.20.tgz#88d919fd639dc991415da5f4cb6f1b6650811938" @@ -6148,6 +6312,11 @@ dot-prop@^6.0.1: dependencies: is-obj "^2.0.0" +dotenv@^17.4.2: + version "17.4.2" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-17.4.2.tgz#c07e54a746e11eba021dd9e1047ced5afdc1c034" + integrity sha512-nI4U3TottKAcAD9LLud4Cb7b2QztQMUEfHbvhTH09bqXTxnSie8WnjPALV/WMCrJZ6UV/qHJ6L03OqO3LcdYZw== + dunder-proto@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" @@ -6436,6 +6605,19 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +ethers@^6.13.2, ethers@^6.17.0: + version "6.17.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-6.17.0.tgz#ad85ee1fc45fe2d95cb1e21c4e3ff9f7f1b093cc" + integrity sha512-BpyrpIPJ3ydEVow8zGaz1DuPS7YU8DcWxuBnY9a0UA/lvAPwrMr+EPXsfrul628SRaekPNeIM4UFh/91GWZang== + dependencies: + "@adraffy/ens-normalize" "1.11.1" + "@noble/curves" "1.2.0" + "@noble/hashes" "1.3.2" + "@types/node" "22.7.5" + aes-js "4.0.0-beta.5" + tslib "2.7.0" + ws "8.21.0" + eval@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85" @@ -6444,6 +6626,11 @@ eval@^0.1.8: "@types/node" "*" require-like ">= 0.1.1" +eventemitter3@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== + eventemitter3@^4.0.0, eventemitter3@^4.0.4: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -6572,6 +6759,14 @@ feed@^4.2.2: dependencies: xml-js "^1.6.11" +fetch-blob@^3.1.2, fetch-blob@^3.1.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9" + integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ== + dependencies: + node-domexception "^1.0.0" + web-streams-polyfill "^3.0.3" + figures@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -6643,6 +6838,13 @@ format@^0.2.0: resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== +formdata-polyfill@^4.0.10: + version "4.0.10" + resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423" + integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g== + dependencies: + fetch-blob "^3.1.2" + forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -7638,6 +7840,19 @@ isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== +isomorphic-unfetch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-4.0.2.tgz#5fc04eeb1053b7b702278e2cf7a3f246cb3a9214" + integrity sha512-1Yd+CF/7al18/N2BDbsLBcp6RO3tucSW+jcLq24dqdX5MNbCNTw1z4BsGsp4zNmjr/Izm2cs/cEqZPp4kvWSCA== + dependencies: + node-fetch "^3.2.0" + unfetch "^5.0.0" + +isows@1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.7.tgz#1c06400b7eed216fbba3bcbd68f12490fc342915" + integrity sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg== + jest-util@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" @@ -8847,6 +9062,11 @@ minimist@^1.2.0: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +mipd@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mipd/-/mipd-0.0.7.tgz#bb5559e21fa18dc3d9fe1c08902ef14b7ce32fd9" + integrity sha512-aAPZPNDQ3uMTdKbuO2YmAw2TxLHO0moa4YKAyETM/DTj5FloZo+a+8tU+iv4GmW+sOxKLSRwcSFuczk+Cpt6fg== + mlly@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.4.tgz#3d7295ea2358ec7a271eaa5d000a0f84febe100f" @@ -8923,6 +9143,11 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" +node-domexception@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" + integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== + node-emoji@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.2.0.tgz#1d000e3c76e462577895be1b436f4aa2d6760eb0" @@ -8933,6 +9158,15 @@ node-emoji@^2.1.0: emojilib "^2.4.0" skin-tone "^2.0.0" +node-fetch@^3.2.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.2.tgz#d1e889bacdf733b4ff3b2b243eb7a12866a0b78b" + integrity sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA== + dependencies: + data-uri-to-buffer "^4.0.0" + fetch-blob "^3.1.4" + formdata-polyfill "^4.0.10" + node-releases@^2.0.36: version "2.0.38" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.38.tgz#791569b9e4424a044e12c3abfad418ed83ce9947" @@ -9050,6 +9284,20 @@ opener@^1.5.2: resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== +ox@0.14.29: + version "0.14.29" + resolved "https://registry.yarnpkg.com/ox/-/ox-0.14.29.tgz#58a72876630f5e0fd85eae980f8a50d50eb994d8" + integrity sha512-M5j87Ec4V99MQdRct/g09eWXW60g6zhHTUs1lr4deUtrPDnezBdCJTgKd7pxqTpSZBFveV0ALi9jMMuT1qKyNg== + dependencies: + "@adraffy/ens-normalize" "^1.11.0" + "@noble/ciphers" "^1.3.0" + "@noble/curves" "1.9.1" + "@noble/hashes" "^1.8.0" + "@scure/bip32" "^1.7.0" + "@scure/bip39" "^1.6.0" + abitype "^1.2.3" + eventemitter3 "5.0.1" + p-cancelable@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" @@ -10513,6 +10761,15 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-recovery-service-sdk@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/safe-recovery-service-sdk/-/safe-recovery-service-sdk-0.0.4.tgz#ef6996e466d3bf0f7f8be1e6f589655733f65f0d" + integrity sha512-9eM4F9mCOiwC4XblZM+m7EWKCOE+UroYAnTDJyBRuKce+xdAD/KjNL9G0Sj+vEXZwWuf5wAYZCq+0UjeCILsIg== + dependencies: + abstractionkit "^0.2.30" + isomorphic-unfetch "^4.0.2" + siwe "^3.0.0" + "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -10772,6 +11029,14 @@ sitemap@^7.1.1: arg "^5.0.0" sax "^1.2.4" +siwe@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/siwe/-/siwe-3.0.0.tgz#0508c3fca521c476a07d907a9b5b96a03c27c0f2" + integrity sha512-P2/ry7dHYJA6JJ5+veS//Gn2XDwNb3JMvuD6xiXX8L/PJ1SNVD4a3a8xqEbmANx+7kNQcD8YAh1B9bNKKvRy/g== + dependencies: + "@spruceid/siwe-parser" "^3.0.0" + "@stablelib/random" "^1.0.1" + skin-tone@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/skin-tone/-/skin-tone-2.0.0.tgz#4e3933ab45c0d4f4f781745d64b9f4c208e41237" @@ -11161,6 +11426,11 @@ ts-dedent@^2.2.0: resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.2.0.tgz#39e4bd297cd036292ae2394eb3412be63f563bb5" integrity sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ== +tslib@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" @@ -11223,16 +11493,31 @@ ufo@^1.6.3: resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.6.3.tgz#799666e4e88c122a9659805e30b9dc071c3aed4f" integrity sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q== +undici-types@~6.19.2: + version "6.19.8" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" + integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== + undici-types@~7.19.0: version "7.19.2" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.19.2.tgz#1b67fc26d0f157a0cba3a58a5b5c1e2276b8ba2a" integrity sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg== +undici-types@~8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-8.3.0.tgz#44e9fc9f3244648cdea35e4f9bb2d681e9410809" + integrity sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ== + undici@^7.19.0: version "7.25.0" resolved "https://registry.yarnpkg.com/undici/-/undici-7.25.0.tgz#7d72fc429a0421769ca2966fd07cac875c85b781" integrity sha512-xXnp4kTyor2Zq+J1FfPI6Eq3ew5h6Vl0F/8d9XU5zZQf1tX9s2Su1/3PiMmUANFULpmksxkClamIZcaUqryHsQ== +unfetch@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-5.0.0.tgz#8a5b6e5779ebe4dde0049f7d7a81d4a1af99d142" + integrity sha512-3xM2c89siXg0nHvlmYsQ2zkLASvVMBisZm5lF3gFDqfF2xonNStDJyMpvaOBe0a1Edxmqrf2E0HBdmy9QyZaeg== + unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" @@ -11397,6 +11682,11 @@ url-loader@^4.1.1: mime-types "^2.1.27" schema-utils "^3.0.0" +use-sync-external-store@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz#adbc795d8eeb47029963016cefdf89dc799fcebc" + integrity sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw== + util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -11461,6 +11751,20 @@ vfile@^6.0.0, vfile@^6.0.1: "@types/unist" "^3.0.0" vfile-message "^4.0.0" +viem@^2.54.2: + version "2.54.2" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.54.2.tgz#a52d83321deb5d5b0fb3dbfa5aa24306d8cbe753" + integrity sha512-o0+5dEAUekBMTbixXy2mKbSDPnwsCJ+8+mOeMBDjkuS9iM4fcr3yKUWb2zlOy2NKInkg3anl1W11sxYspLiXig== + dependencies: + "@noble/curves" "1.9.1" + "@noble/hashes" "1.8.0" + "@scure/bip32" "1.7.0" + "@scure/bip39" "1.6.0" + abitype "1.2.3" + isows "1.0.7" + ox "0.14.29" + ws "8.21.0" + vscode-jsonrpc@8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz#f43dfa35fb51e763d17cd94dcca0c9458f35abf9" @@ -11496,6 +11800,15 @@ vscode-uri@~3.1.0: resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.1.0.tgz#dd09ec5a66a38b5c3fffc774015713496d14e09c" integrity sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ== +wagmi@^3.6.21: + version "3.6.21" + resolved "https://registry.yarnpkg.com/wagmi/-/wagmi-3.6.21.tgz#dc86f01789ab0a9620e474fbdda0726ba6b5c692" + integrity sha512-ao/Zb4Uz1KJvFNpo13DVeWo4eMkNb06RU1uk/xHm+PTGURwP2NHAysZx/CHCV2WS2b1f9MlhYgSCiI5shx5vUA== + dependencies: + "@wagmi/connectors" "8.0.20" + "@wagmi/core" "3.5.5" + use-sync-external-store "1.4.0" + watchpack@^2.5.1: version "2.5.1" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.5.1.tgz#dd38b601f669e0cbf567cb802e75cead82cde102" @@ -11516,6 +11829,11 @@ web-namespaces@^2.0.0: resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== +web-streams-polyfill@^3.0.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz#2073b91a2fdb1fbfbd401e7de0ac9f8214cecb4b" + integrity sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw== + webpack-bundle-analyzer@^4.10.2: version "4.10.2" resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd" @@ -11730,6 +12048,11 @@ write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +ws@8.21.0: + version "8.21.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.21.0.tgz#012e413fc07429945121b0c153158c4343086951" + integrity sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g== + ws@^7.3.1: version "7.5.10" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" @@ -11769,6 +12092,11 @@ yocto-queue@^1.0.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.2.tgz#3e09c95d3f1aa89a58c114c99223edf639152c00" integrity sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ== +zustand@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/zustand/-/zustand-5.0.0.tgz#71f8aaecf185592a3ba2743d7516607361899da9" + integrity sha512-LE+VcmbartOPM+auOjCCLQOsQ05zUTp8RkgwRzefUk+2jISdMMFnxvyTjA4YNWr5ZGXYbVsEMZosttuxUBkojQ== + zwitch@^2.0.0, zwitch@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7"