From cb33120a9192c796aa183a6b61063e27d4a21177 Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 20:28:55 +0530 Subject: [PATCH 1/6] feat: sitemap, canonical tags, robots.txt and a real 404 Every page now declares one absolute address on docs.zerodev.app. og:url was a fixed https://zerodev.app on all 249 pages; it follows the canonical now. The v5.3.x set credits its current equivalent, derived from the redirect table rather than a hand-written map, so the two cannot drift. The 20 unmaintained @zerodev/waas pages carry noindex. scripts/sitemap.mjs runs after the build and reads the built HTML, so the sitemap can never contradict what a page declares: 135 of 246 pages, with 22 redirected, 20 noindex and 69 old-version duplicates left out. Moves VersionWarning.tsx and the three shared snippets out of docs/pages, which vocs was turning into pages of their own. --- .../v5_3_x => components}/VersionWarning.tsx | 0 .../shared/mutation-result.mdx | 0 .../shared/query-result.mdx | 0 .../shared/social-login-setup.mdx | 0 docs/pages/advanced/migration.mdx | 2 + .../advanced/react-hooks/use-balance.mdx | 2 +- .../react-hooks/use-create-basic-session.mdx | 2 +- .../use-create-kernelclient-eoa.mdx | 2 +- .../use-create-kernelclient-passkey.mdx | 2 +- .../use-create-kernelclient-social.mdx | 2 +- .../react-hooks/use-create-session.mdx | 2 +- .../use-disconnect-kernelclient.mdx | 2 +- .../advanced/react-hooks/use-kernelclient.mdx | 2 +- .../use-send-transaction-with-session.mdx | 2 +- .../react-hooks/use-send-transaction.mdx | 2 +- .../use-send-useroperation-with-session.mdx | 2 +- .../react-hooks/use-send-useroperation.mdx | 2 +- .../react-hooks/use-session-kernelclient.mdx | 2 +- .../react-hooks/use-set-kernelclient.mdx | 2 +- .../advanced/react-hooks/use-switch-chain.mdx | 2 +- docs/pages/onboarding/social-login.mdx | 2 +- .../sdk/v5_3_x/advanced/chain-abstraction.mdx | 2 +- docs/pages/sdk/v5_3_x/advanced/defi.mdx | 2 +- .../v5_3_x/advanced/fallback-providers.mdx | 2 +- .../pages/sdk/v5_3_x/advanced/key-storage.mdx | 2 +- .../v5_3_x/advanced/multi-chain-signing.mdx | 2 +- docs/pages/sdk/v5_3_x/advanced/multisig.mdx | 2 +- .../sdk/v5_3_x/advanced/parallel-orders.mdx | 2 +- docs/pages/sdk/v5_3_x/advanced/passkeys.mdx | 2 +- docs/pages/sdk/v5_3_x/advanced/recovery.mdx | 2 +- .../sdk/v5_3_x/advanced/session-keys.mdx | 2 +- .../sdk/v5_3_x/advanced/social-login.mdx | 4 +- .../v5_3_x/advanced/supported-base-tokens.mdx | 2 +- .../v5_3_x/advanced/supported-defi-tokens.mdx | 2 +- .../sdk/v5_3_x/advanced/wallet-connect.mdx | 2 +- .../v5_3_x/core-api/batch-transactions.mdx | 2 +- .../sdk/v5_3_x/core-api/create-account.mdx | 2 +- .../sdk/v5_3_x/core-api/delegatecall.mdx | 2 +- .../sdk/v5_3_x/core-api/deploy-contract.mdx | 2 +- .../v5_3_x/core-api/pay-gas-with-erc20s.mdx | 2 +- .../sdk/v5_3_x/core-api/send-transactions.mdx | 2 +- .../sdk/v5_3_x/core-api/sign-and-verify.mdx | 2 +- .../pages/sdk/v5_3_x/core-api/sponsor-gas.mdx | 2 +- .../sdk/v5_3_x/core-api/using-plugins.mdx | 2 +- docs/pages/sdk/v5_3_x/faqs/audits.mdx | 2 +- docs/pages/sdk/v5_3_x/faqs/chains.mdx | 2 +- docs/pages/sdk/v5_3_x/faqs/debug-userop.mdx | 2 +- .../pages/sdk/v5_3_x/faqs/use-with-ethers.mdx | 2 +- .../pages/sdk/v5_3_x/faqs/use-with-gelato.mdx | 2 +- .../sdk/v5_3_x/faqs/use-with-react-native.mdx | 2 +- .../sdk/v5_3_x/getting-started/migration.mdx | 2 +- .../sdk/v5_3_x/getting-started/quickstart.mdx | 2 +- .../getting-started/tutorial-passkeys.mdx | 2 +- .../sdk/v5_3_x/getting-started/tutorial.mdx | 2 +- docs/pages/sdk/v5_3_x/index.mdx | 2 +- docs/pages/sdk/v5_3_x/infra/coinbase.mdx | 2 +- docs/pages/sdk/v5_3_x/infra/intro.mdx | 2 +- docs/pages/sdk/v5_3_x/infra/pimlico.mdx | 2 +- docs/pages/sdk/v5_3_x/infra/zerodev.mdx | 2 +- .../v5_3_x/permissions/1-click-trading.mdx | 2 +- .../permissions/actions/build-your-own.mdx | 2 +- docs/pages/sdk/v5_3_x/permissions/intro.mdx | 2 +- .../permissions/policies/build-your-own.mdx | 2 +- .../sdk/v5_3_x/permissions/policies/call.mdx | 2 +- .../sdk/v5_3_x/permissions/policies/gas.mdx | 2 +- .../permissions/policies/rate-limit.mdx | 2 +- .../v5_3_x/permissions/policies/signature.mdx | 2 +- .../sdk/v5_3_x/permissions/policies/sudo.mdx | 2 +- .../v5_3_x/permissions/policies/timestamp.mdx | 2 +- .../permissions/signers/build-your-own.mdx | 2 +- .../sdk/v5_3_x/permissions/signers/ecdsa.mdx | 2 +- .../v5_3_x/permissions/signers/multisig.mdx | 2 +- .../v5_3_x/permissions/signers/passkeys.mdx | 2 +- .../permissions/transaction-automation.mdx | 2 +- docs/pages/sdk/v5_3_x/presets/intro.mdx | 2 +- docs/pages/sdk/v5_3_x/presets/zerodev.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/arcana.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/capsule.mdx | 2 +- .../sdk/v5_3_x/signers/custom-signer.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/dfns.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/dynamic.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/eoa.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/fireblocks.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/intro.mdx | 2 +- .../pages/sdk/v5_3_x/signers/lit-protocol.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/magic.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/particle.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/portal.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/privy.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/turnkey.mdx | 2 +- docs/pages/sdk/v5_3_x/signers/web3auth.mdx | 2 +- docs/public/404.html | 111 ++++++++++++++++++ docs/public/robots.txt | 19 +++ package.json | 2 +- scripts/check-redirects.mjs | 12 ++ scripts/sitemap.mjs | 99 ++++++++++++++++ vocs.config.tsx | 65 +++++++--- 97 files changed, 382 insertions(+), 102 deletions(-) rename docs/{pages/sdk/v5_3_x => components}/VersionWarning.tsx (100%) rename docs/{pages => components}/shared/mutation-result.mdx (100%) rename docs/{pages => components}/shared/query-result.mdx (100%) rename docs/{pages => components}/shared/social-login-setup.mdx (100%) create mode 100644 docs/public/404.html create mode 100644 docs/public/robots.txt create mode 100644 scripts/sitemap.mjs diff --git a/docs/pages/sdk/v5_3_x/VersionWarning.tsx b/docs/components/VersionWarning.tsx similarity index 100% rename from docs/pages/sdk/v5_3_x/VersionWarning.tsx rename to docs/components/VersionWarning.tsx diff --git a/docs/pages/shared/mutation-result.mdx b/docs/components/shared/mutation-result.mdx similarity index 100% rename from docs/pages/shared/mutation-result.mdx rename to docs/components/shared/mutation-result.mdx diff --git a/docs/pages/shared/query-result.mdx b/docs/components/shared/query-result.mdx similarity index 100% rename from docs/pages/shared/query-result.mdx rename to docs/components/shared/query-result.mdx diff --git a/docs/pages/shared/social-login-setup.mdx b/docs/components/shared/social-login-setup.mdx similarity index 100% rename from docs/pages/shared/social-login-setup.mdx rename to docs/components/shared/social-login-setup.mdx diff --git a/docs/pages/advanced/migration.mdx b/docs/pages/advanced/migration.mdx index a2ef7daf..d5d1d9b3 100644 --- a/docs/pages/advanced/migration.mdx +++ b/docs/pages/advanced/migration.mdx @@ -35,6 +35,8 @@ In version **5.4.x** of the `@zerodev/sdk`, we've migrated to using `viem@2.18.x This guide will help you migrate your codebase to be compatible with the new version. +Still on 5.3.x? The [v5.3.x documentation](/sdk/v5_3_x) stays online for reference. + ### Update dependencies 1. **Remove the `permissionless` package**: diff --git a/docs/pages/advanced/react-hooks/use-balance.mdx b/docs/pages/advanced/react-hooks/use-balance.mdx index 447018c3..4370ea8e 100644 --- a/docs/pages/advanced/react-hooks/use-balance.mdx +++ b/docs/pages/advanced/react-hooks/use-balance.mdx @@ -1,4 +1,4 @@ -import QueryResult from "../../shared/query-result.mdx" +import QueryResult from "@components/shared/query-result.mdx" # useBalance [Hook for getting balance of kernel account] diff --git a/docs/pages/advanced/react-hooks/use-create-basic-session.mdx b/docs/pages/advanced/react-hooks/use-create-basic-session.mdx index 4e629ceb..60c818d5 100644 --- a/docs/pages/advanced/react-hooks/use-create-basic-session.mdx +++ b/docs/pages/advanced/react-hooks/use-create-basic-session.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useCreateBasicSession [Hook for creating session for kernel v2 account] diff --git a/docs/pages/advanced/react-hooks/use-create-kernelclient-eoa.mdx b/docs/pages/advanced/react-hooks/use-create-kernelclient-eoa.mdx index 4729e6a7..910f9a69 100644 --- a/docs/pages/advanced/react-hooks/use-create-kernelclient-eoa.mdx +++ b/docs/pages/advanced/react-hooks/use-create-kernelclient-eoa.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useCreateKernelClientEOA [Hook for creating kernel client with EOA] diff --git a/docs/pages/advanced/react-hooks/use-create-kernelclient-passkey.mdx b/docs/pages/advanced/react-hooks/use-create-kernelclient-passkey.mdx index cb4a6658..3c6f1043 100644 --- a/docs/pages/advanced/react-hooks/use-create-kernelclient-passkey.mdx +++ b/docs/pages/advanced/react-hooks/use-create-kernelclient-passkey.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useCreateKernelClientPasskey [Hook for creating kernel client with Passkey] diff --git a/docs/pages/advanced/react-hooks/use-create-kernelclient-social.mdx b/docs/pages/advanced/react-hooks/use-create-kernelclient-social.mdx index b00f7322..8336d311 100644 --- a/docs/pages/advanced/react-hooks/use-create-kernelclient-social.mdx +++ b/docs/pages/advanced/react-hooks/use-create-kernelclient-social.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useCreateKernelClientSocial [Hook for creating a kernel client with social login integration] diff --git a/docs/pages/advanced/react-hooks/use-create-session.mdx b/docs/pages/advanced/react-hooks/use-create-session.mdx index 05caf43c..4cf9f3f0 100644 --- a/docs/pages/advanced/react-hooks/use-create-session.mdx +++ b/docs/pages/advanced/react-hooks/use-create-session.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useCreateSession [Hook for creating session for kernel v3 account] diff --git a/docs/pages/advanced/react-hooks/use-disconnect-kernelclient.mdx b/docs/pages/advanced/react-hooks/use-disconnect-kernelclient.mdx index 08640084..eac758bb 100644 --- a/docs/pages/advanced/react-hooks/use-disconnect-kernelclient.mdx +++ b/docs/pages/advanced/react-hooks/use-disconnect-kernelclient.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useDisconnectKernelClient [Hook for disconnecting kernel account client] diff --git a/docs/pages/advanced/react-hooks/use-kernelclient.mdx b/docs/pages/advanced/react-hooks/use-kernelclient.mdx index 6dc91bf8..ec45a709 100644 --- a/docs/pages/advanced/react-hooks/use-kernelclient.mdx +++ b/docs/pages/advanced/react-hooks/use-kernelclient.mdx @@ -1,4 +1,4 @@ -import QueryResult from "../../shared/query-result.mdx" +import QueryResult from "@components/shared/query-result.mdx" # useKernelClient [Hook for getting kernel account client] diff --git a/docs/pages/advanced/react-hooks/use-send-transaction-with-session.mdx b/docs/pages/advanced/react-hooks/use-send-transaction-with-session.mdx index 98d864a2..63be83f2 100644 --- a/docs/pages/advanced/react-hooks/use-send-transaction-with-session.mdx +++ b/docs/pages/advanced/react-hooks/use-send-transaction-with-session.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSendTransactionWithSession [Hooks for sending transactions with session keys] diff --git a/docs/pages/advanced/react-hooks/use-send-transaction.mdx b/docs/pages/advanced/react-hooks/use-send-transaction.mdx index 00d06d8f..c4f93a41 100644 --- a/docs/pages/advanced/react-hooks/use-send-transaction.mdx +++ b/docs/pages/advanced/react-hooks/use-send-transaction.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSendTransaction [Hook for sending transaction] diff --git a/docs/pages/advanced/react-hooks/use-send-useroperation-with-session.mdx b/docs/pages/advanced/react-hooks/use-send-useroperation-with-session.mdx index 0be5d956..741b0a52 100644 --- a/docs/pages/advanced/react-hooks/use-send-useroperation-with-session.mdx +++ b/docs/pages/advanced/react-hooks/use-send-useroperation-with-session.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSendUserOperationWithSession [Hooks for sending user operation with session keys] diff --git a/docs/pages/advanced/react-hooks/use-send-useroperation.mdx b/docs/pages/advanced/react-hooks/use-send-useroperation.mdx index 8bfa859b..105af9ed 100644 --- a/docs/pages/advanced/react-hooks/use-send-useroperation.mdx +++ b/docs/pages/advanced/react-hooks/use-send-useroperation.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSendUserOperation [Hook for sending user operation] diff --git a/docs/pages/advanced/react-hooks/use-session-kernelclient.mdx b/docs/pages/advanced/react-hooks/use-session-kernelclient.mdx index 85164f89..55c62588 100644 --- a/docs/pages/advanced/react-hooks/use-session-kernelclient.mdx +++ b/docs/pages/advanced/react-hooks/use-session-kernelclient.mdx @@ -1,4 +1,4 @@ -import QueryResult from "../../shared/query-result.mdx" +import QueryResult from "@components/shared/query-result.mdx" # useSessionKernelClient [Hook for getting kernel account client with session plugin] diff --git a/docs/pages/advanced/react-hooks/use-set-kernelclient.mdx b/docs/pages/advanced/react-hooks/use-set-kernelclient.mdx index 738b3b3e..c97fedcd 100644 --- a/docs/pages/advanced/react-hooks/use-set-kernelclient.mdx +++ b/docs/pages/advanced/react-hooks/use-set-kernelclient.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSetKernelClient [Hook for setting kernel account client] diff --git a/docs/pages/advanced/react-hooks/use-switch-chain.mdx b/docs/pages/advanced/react-hooks/use-switch-chain.mdx index 032c61c0..2a8aef82 100644 --- a/docs/pages/advanced/react-hooks/use-switch-chain.mdx +++ b/docs/pages/advanced/react-hooks/use-switch-chain.mdx @@ -1,4 +1,4 @@ -import MutationResult from '../../shared/mutation-result.mdx' +import MutationResult from "@components/shared/mutation-result.mdx" # useSwitchChain [Hook for switching chain] diff --git a/docs/pages/onboarding/social-login.mdx b/docs/pages/onboarding/social-login.mdx index fbe9b1a6..e77f3d6b 100644 --- a/docs/pages/onboarding/social-login.mdx +++ b/docs/pages/onboarding/social-login.mdx @@ -1,4 +1,4 @@ -import SocialLoginSetup from '../shared/social-login-setup.mdx' +import SocialLoginSetup from "@components/shared/social-login-setup.mdx" # Social Login [Social login allows users to authenticate using their existing social media accounts such as Google or Facebook.] diff --git a/docs/pages/sdk/v5_3_x/advanced/chain-abstraction.mdx b/docs/pages/sdk/v5_3_x/advanced/chain-abstraction.mdx index ff705247..80878481 100644 --- a/docs/pages/sdk/v5_3_x/advanced/chain-abstraction.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/chain-abstraction.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/defi.mdx b/docs/pages/sdk/v5_3_x/advanced/defi.mdx index 70438893..1e4d97ec 100644 --- a/docs/pages/sdk/v5_3_x/advanced/defi.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/defi.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/fallback-providers.mdx b/docs/pages/sdk/v5_3_x/advanced/fallback-providers.mdx index 9f0b486e..73b623c7 100644 --- a/docs/pages/sdk/v5_3_x/advanced/fallback-providers.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/fallback-providers.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/key-storage.mdx b/docs/pages/sdk/v5_3_x/advanced/key-storage.mdx index bbb5bb0e..56e57c16 100644 --- a/docs/pages/sdk/v5_3_x/advanced/key-storage.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/key-storage.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/multi-chain-signing.mdx b/docs/pages/sdk/v5_3_x/advanced/multi-chain-signing.mdx index 410790cf..9b316e19 100644 --- a/docs/pages/sdk/v5_3_x/advanced/multi-chain-signing.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/multi-chain-signing.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/multisig.mdx b/docs/pages/sdk/v5_3_x/advanced/multisig.mdx index 194576c4..50e8e648 100644 --- a/docs/pages/sdk/v5_3_x/advanced/multisig.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/multisig.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/parallel-orders.mdx b/docs/pages/sdk/v5_3_x/advanced/parallel-orders.mdx index 7f9a0abf..106a11af 100644 --- a/docs/pages/sdk/v5_3_x/advanced/parallel-orders.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/parallel-orders.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/passkeys.mdx b/docs/pages/sdk/v5_3_x/advanced/passkeys.mdx index c6bf245d..0e18495d 100644 --- a/docs/pages/sdk/v5_3_x/advanced/passkeys.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/passkeys.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/recovery.mdx b/docs/pages/sdk/v5_3_x/advanced/recovery.mdx index 8f21a554..2d6c34a7 100644 --- a/docs/pages/sdk/v5_3_x/advanced/recovery.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/recovery.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/session-keys.mdx b/docs/pages/sdk/v5_3_x/advanced/session-keys.mdx index 6ec4b4fd..01f8b5be 100644 --- a/docs/pages/sdk/v5_3_x/advanced/session-keys.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/session-keys.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/social-login.mdx b/docs/pages/sdk/v5_3_x/advanced/social-login.mdx index 98690470..da13da48 100644 --- a/docs/pages/sdk/v5_3_x/advanced/social-login.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/social-login.mdx @@ -1,6 +1,6 @@ -import SocialLoginSetup from '../../../shared/social-login-setup.mdx' +import SocialLoginSetup from "@components/shared/social-login-setup.mdx" -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/supported-base-tokens.mdx b/docs/pages/sdk/v5_3_x/advanced/supported-base-tokens.mdx index f1d4c8a3..0c2ab9a8 100644 --- a/docs/pages/sdk/v5_3_x/advanced/supported-base-tokens.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/supported-base-tokens.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/supported-defi-tokens.mdx b/docs/pages/sdk/v5_3_x/advanced/supported-defi-tokens.mdx index f4b8cd95..88c0008e 100644 --- a/docs/pages/sdk/v5_3_x/advanced/supported-defi-tokens.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/supported-defi-tokens.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/advanced/wallet-connect.mdx b/docs/pages/sdk/v5_3_x/advanced/wallet-connect.mdx index ec1fb784..3a7fd5a2 100644 --- a/docs/pages/sdk/v5_3_x/advanced/wallet-connect.mdx +++ b/docs/pages/sdk/v5_3_x/advanced/wallet-connect.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/batch-transactions.mdx b/docs/pages/sdk/v5_3_x/core-api/batch-transactions.mdx index 6f9e03ab..96b22987 100644 --- a/docs/pages/sdk/v5_3_x/core-api/batch-transactions.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/batch-transactions.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/create-account.mdx b/docs/pages/sdk/v5_3_x/core-api/create-account.mdx index 8199f214..1aecf3b5 100644 --- a/docs/pages/sdk/v5_3_x/core-api/create-account.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/create-account.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/delegatecall.mdx b/docs/pages/sdk/v5_3_x/core-api/delegatecall.mdx index 8f69b35c..1d84cbae 100644 --- a/docs/pages/sdk/v5_3_x/core-api/delegatecall.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/delegatecall.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/deploy-contract.mdx b/docs/pages/sdk/v5_3_x/core-api/deploy-contract.mdx index 724a0a49..3588cf09 100644 --- a/docs/pages/sdk/v5_3_x/core-api/deploy-contract.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/deploy-contract.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/pay-gas-with-erc20s.mdx b/docs/pages/sdk/v5_3_x/core-api/pay-gas-with-erc20s.mdx index 1c196c77..2d6b88a8 100644 --- a/docs/pages/sdk/v5_3_x/core-api/pay-gas-with-erc20s.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/pay-gas-with-erc20s.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/send-transactions.mdx b/docs/pages/sdk/v5_3_x/core-api/send-transactions.mdx index 147b25f0..6acd6aca 100644 --- a/docs/pages/sdk/v5_3_x/core-api/send-transactions.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/send-transactions.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/sign-and-verify.mdx b/docs/pages/sdk/v5_3_x/core-api/sign-and-verify.mdx index a6b839cf..a6cd0344 100644 --- a/docs/pages/sdk/v5_3_x/core-api/sign-and-verify.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/sign-and-verify.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/sponsor-gas.mdx b/docs/pages/sdk/v5_3_x/core-api/sponsor-gas.mdx index 8510cb4c..0a8ce89d 100644 --- a/docs/pages/sdk/v5_3_x/core-api/sponsor-gas.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/sponsor-gas.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/core-api/using-plugins.mdx b/docs/pages/sdk/v5_3_x/core-api/using-plugins.mdx index 0f70d6ad..07bc50bb 100644 --- a/docs/pages/sdk/v5_3_x/core-api/using-plugins.mdx +++ b/docs/pages/sdk/v5_3_x/core-api/using-plugins.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/audits.mdx b/docs/pages/sdk/v5_3_x/faqs/audits.mdx index 30107382..27d8c54b 100644 --- a/docs/pages/sdk/v5_3_x/faqs/audits.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/audits.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/chains.mdx b/docs/pages/sdk/v5_3_x/faqs/chains.mdx index 61ba6e7b..9e64857e 100644 --- a/docs/pages/sdk/v5_3_x/faqs/chains.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/chains.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/debug-userop.mdx b/docs/pages/sdk/v5_3_x/faqs/debug-userop.mdx index c016fdcb..4cacb064 100644 --- a/docs/pages/sdk/v5_3_x/faqs/debug-userop.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/debug-userop.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/use-with-ethers.mdx b/docs/pages/sdk/v5_3_x/faqs/use-with-ethers.mdx index 34207bce..3276d42d 100644 --- a/docs/pages/sdk/v5_3_x/faqs/use-with-ethers.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/use-with-ethers.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/use-with-gelato.mdx b/docs/pages/sdk/v5_3_x/faqs/use-with-gelato.mdx index 4a2ba319..5ad3034d 100644 --- a/docs/pages/sdk/v5_3_x/faqs/use-with-gelato.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/use-with-gelato.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/faqs/use-with-react-native.mdx b/docs/pages/sdk/v5_3_x/faqs/use-with-react-native.mdx index 275eea26..2444fb7f 100644 --- a/docs/pages/sdk/v5_3_x/faqs/use-with-react-native.mdx +++ b/docs/pages/sdk/v5_3_x/faqs/use-with-react-native.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/getting-started/migration.mdx b/docs/pages/sdk/v5_3_x/getting-started/migration.mdx index d7edd563..8e009648 100644 --- a/docs/pages/sdk/v5_3_x/getting-started/migration.mdx +++ b/docs/pages/sdk/v5_3_x/getting-started/migration.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/getting-started/quickstart.mdx b/docs/pages/sdk/v5_3_x/getting-started/quickstart.mdx index be4963f3..727ed1f5 100644 --- a/docs/pages/sdk/v5_3_x/getting-started/quickstart.mdx +++ b/docs/pages/sdk/v5_3_x/getting-started/quickstart.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/getting-started/tutorial-passkeys.mdx b/docs/pages/sdk/v5_3_x/getting-started/tutorial-passkeys.mdx index 8ea47dc3..6c326cce 100644 --- a/docs/pages/sdk/v5_3_x/getting-started/tutorial-passkeys.mdx +++ b/docs/pages/sdk/v5_3_x/getting-started/tutorial-passkeys.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/getting-started/tutorial.mdx b/docs/pages/sdk/v5_3_x/getting-started/tutorial.mdx index 3601bb74..7151c1bb 100644 --- a/docs/pages/sdk/v5_3_x/getting-started/tutorial.mdx +++ b/docs/pages/sdk/v5_3_x/getting-started/tutorial.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/index.mdx b/docs/pages/sdk/v5_3_x/index.mdx index 735742b1..f29a8d0f 100644 --- a/docs/pages/sdk/v5_3_x/index.mdx +++ b/docs/pages/sdk/v5_3_x/index.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "./VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/infra/coinbase.mdx b/docs/pages/sdk/v5_3_x/infra/coinbase.mdx index f5da7939..e390617f 100644 --- a/docs/pages/sdk/v5_3_x/infra/coinbase.mdx +++ b/docs/pages/sdk/v5_3_x/infra/coinbase.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/infra/intro.mdx b/docs/pages/sdk/v5_3_x/infra/intro.mdx index da23c12d..c9476f69 100644 --- a/docs/pages/sdk/v5_3_x/infra/intro.mdx +++ b/docs/pages/sdk/v5_3_x/infra/intro.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/infra/pimlico.mdx b/docs/pages/sdk/v5_3_x/infra/pimlico.mdx index 7e89a5d9..5b2deed4 100644 --- a/docs/pages/sdk/v5_3_x/infra/pimlico.mdx +++ b/docs/pages/sdk/v5_3_x/infra/pimlico.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/infra/zerodev.mdx b/docs/pages/sdk/v5_3_x/infra/zerodev.mdx index cbaa42d7..36bba83c 100644 --- a/docs/pages/sdk/v5_3_x/infra/zerodev.mdx +++ b/docs/pages/sdk/v5_3_x/infra/zerodev.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/1-click-trading.mdx b/docs/pages/sdk/v5_3_x/permissions/1-click-trading.mdx index 0a1ebb6f..75b10789 100644 --- a/docs/pages/sdk/v5_3_x/permissions/1-click-trading.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/1-click-trading.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/actions/build-your-own.mdx b/docs/pages/sdk/v5_3_x/permissions/actions/build-your-own.mdx index 5ee3d440..f6aeaca6 100644 --- a/docs/pages/sdk/v5_3_x/permissions/actions/build-your-own.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/actions/build-your-own.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/intro.mdx b/docs/pages/sdk/v5_3_x/permissions/intro.mdx index 219e03eb..816e491c 100644 --- a/docs/pages/sdk/v5_3_x/permissions/intro.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/intro.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/build-your-own.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/build-your-own.mdx index 5b7b0aa3..d659dea0 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/build-your-own.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/build-your-own.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/call.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/call.mdx index 7fe8c6fa..656033f5 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/call.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/call.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/gas.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/gas.mdx index ca160f83..ebd375e4 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/gas.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/gas.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/rate-limit.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/rate-limit.mdx index 6688266e..713d5eb1 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/rate-limit.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/rate-limit.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/signature.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/signature.mdx index 3c612067..5aabaafd 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/signature.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/signature.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/sudo.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/sudo.mdx index f979e098..b840b5df 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/sudo.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/sudo.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/policies/timestamp.mdx b/docs/pages/sdk/v5_3_x/permissions/policies/timestamp.mdx index f3c6ab0d..26d5f4f4 100644 --- a/docs/pages/sdk/v5_3_x/permissions/policies/timestamp.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/policies/timestamp.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/signers/build-your-own.mdx b/docs/pages/sdk/v5_3_x/permissions/signers/build-your-own.mdx index b5fbe3f3..3c6f23ef 100644 --- a/docs/pages/sdk/v5_3_x/permissions/signers/build-your-own.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/signers/build-your-own.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/signers/ecdsa.mdx b/docs/pages/sdk/v5_3_x/permissions/signers/ecdsa.mdx index e595122c..06ff1d10 100644 --- a/docs/pages/sdk/v5_3_x/permissions/signers/ecdsa.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/signers/ecdsa.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/signers/multisig.mdx b/docs/pages/sdk/v5_3_x/permissions/signers/multisig.mdx index e8e87ab2..c0ae677e 100644 --- a/docs/pages/sdk/v5_3_x/permissions/signers/multisig.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/signers/multisig.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/signers/passkeys.mdx b/docs/pages/sdk/v5_3_x/permissions/signers/passkeys.mdx index ea404d2d..dec0da5e 100644 --- a/docs/pages/sdk/v5_3_x/permissions/signers/passkeys.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/signers/passkeys.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/permissions/transaction-automation.mdx b/docs/pages/sdk/v5_3_x/permissions/transaction-automation.mdx index b8dacae7..5570562a 100644 --- a/docs/pages/sdk/v5_3_x/permissions/transaction-automation.mdx +++ b/docs/pages/sdk/v5_3_x/permissions/transaction-automation.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/presets/intro.mdx b/docs/pages/sdk/v5_3_x/presets/intro.mdx index dd1e5bad..5cab881d 100644 --- a/docs/pages/sdk/v5_3_x/presets/intro.mdx +++ b/docs/pages/sdk/v5_3_x/presets/intro.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/presets/zerodev.mdx b/docs/pages/sdk/v5_3_x/presets/zerodev.mdx index 3b069a6b..d234f1a5 100644 --- a/docs/pages/sdk/v5_3_x/presets/zerodev.mdx +++ b/docs/pages/sdk/v5_3_x/presets/zerodev.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/arcana.mdx b/docs/pages/sdk/v5_3_x/signers/arcana.mdx index a6ed7439..285fed71 100644 --- a/docs/pages/sdk/v5_3_x/signers/arcana.mdx +++ b/docs/pages/sdk/v5_3_x/signers/arcana.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/capsule.mdx b/docs/pages/sdk/v5_3_x/signers/capsule.mdx index 3f05cae4..2d4a93db 100644 --- a/docs/pages/sdk/v5_3_x/signers/capsule.mdx +++ b/docs/pages/sdk/v5_3_x/signers/capsule.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/custom-signer.mdx b/docs/pages/sdk/v5_3_x/signers/custom-signer.mdx index 975b376f..f0c05ee3 100644 --- a/docs/pages/sdk/v5_3_x/signers/custom-signer.mdx +++ b/docs/pages/sdk/v5_3_x/signers/custom-signer.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/dfns.mdx b/docs/pages/sdk/v5_3_x/signers/dfns.mdx index a3234fe2..289ef3fe 100644 --- a/docs/pages/sdk/v5_3_x/signers/dfns.mdx +++ b/docs/pages/sdk/v5_3_x/signers/dfns.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/dynamic.mdx b/docs/pages/sdk/v5_3_x/signers/dynamic.mdx index 620c61cf..ec9f48c8 100644 --- a/docs/pages/sdk/v5_3_x/signers/dynamic.mdx +++ b/docs/pages/sdk/v5_3_x/signers/dynamic.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/eoa.mdx b/docs/pages/sdk/v5_3_x/signers/eoa.mdx index ab74ec1c..884aee00 100644 --- a/docs/pages/sdk/v5_3_x/signers/eoa.mdx +++ b/docs/pages/sdk/v5_3_x/signers/eoa.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/fireblocks.mdx b/docs/pages/sdk/v5_3_x/signers/fireblocks.mdx index 1435381d..684c5676 100644 --- a/docs/pages/sdk/v5_3_x/signers/fireblocks.mdx +++ b/docs/pages/sdk/v5_3_x/signers/fireblocks.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/intro.mdx b/docs/pages/sdk/v5_3_x/signers/intro.mdx index be6cd6b7..4f432439 100644 --- a/docs/pages/sdk/v5_3_x/signers/intro.mdx +++ b/docs/pages/sdk/v5_3_x/signers/intro.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/lit-protocol.mdx b/docs/pages/sdk/v5_3_x/signers/lit-protocol.mdx index ae330d46..b4bcbcbc 100644 --- a/docs/pages/sdk/v5_3_x/signers/lit-protocol.mdx +++ b/docs/pages/sdk/v5_3_x/signers/lit-protocol.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/magic.mdx b/docs/pages/sdk/v5_3_x/signers/magic.mdx index 27edf8a2..8d6dcc9f 100644 --- a/docs/pages/sdk/v5_3_x/signers/magic.mdx +++ b/docs/pages/sdk/v5_3_x/signers/magic.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/particle.mdx b/docs/pages/sdk/v5_3_x/signers/particle.mdx index a14e085c..a82b3b74 100644 --- a/docs/pages/sdk/v5_3_x/signers/particle.mdx +++ b/docs/pages/sdk/v5_3_x/signers/particle.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/portal.mdx b/docs/pages/sdk/v5_3_x/signers/portal.mdx index df6e382e..cf97dbca 100644 --- a/docs/pages/sdk/v5_3_x/signers/portal.mdx +++ b/docs/pages/sdk/v5_3_x/signers/portal.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/privy.mdx b/docs/pages/sdk/v5_3_x/signers/privy.mdx index ac16d666..4f198069 100644 --- a/docs/pages/sdk/v5_3_x/signers/privy.mdx +++ b/docs/pages/sdk/v5_3_x/signers/privy.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/turnkey.mdx b/docs/pages/sdk/v5_3_x/signers/turnkey.mdx index 50d1b33c..b71c95fe 100644 --- a/docs/pages/sdk/v5_3_x/signers/turnkey.mdx +++ b/docs/pages/sdk/v5_3_x/signers/turnkey.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/pages/sdk/v5_3_x/signers/web3auth.mdx b/docs/pages/sdk/v5_3_x/signers/web3auth.mdx index 09f6842b..25ecdc35 100644 --- a/docs/pages/sdk/v5_3_x/signers/web3auth.mdx +++ b/docs/pages/sdk/v5_3_x/signers/web3auth.mdx @@ -1,4 +1,4 @@ -import VersionWarning from "../VersionWarning" +import VersionWarning from "@components/VersionWarning" diff --git a/docs/public/404.html b/docs/public/404.html new file mode 100644 index 00000000..fe2ef648 --- /dev/null +++ b/docs/public/404.html @@ -0,0 +1,111 @@ + + + + + + + Page not found – ZeroDev + + + + +
+

404

+

That page has moved or no longer exists.

+

+ The documentation was reorganised. Most old links redirect + automatically, so this one points at a page that was retired without a + replacement. +

+ +
+ + diff --git a/docs/public/robots.txt b/docs/public/robots.txt new file mode 100644 index 00000000..5147ec8c --- /dev/null +++ b/docs/public/robots.txt @@ -0,0 +1,19 @@ +User-agent: * +Allow: / + +User-agent: GPTBot +Allow: / + +User-agent: Claude-Web +Allow: / + +User-agent: Anthropic-AI +Allow: / + +User-agent: ChatGPT-User +Allow: / + +User-agent: Google-Extended +Allow: / + +Sitemap: https://docs.zerodev.app/sitemap.xml diff --git a/package.json b/package.json index c29f06e0..53a53230 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "type": "module", "scripts": { "dev": "vocs dev", - "build": "vocs build", + "build": "vocs build && node scripts/sitemap.mjs", "start": "node server.mjs", "preview": "vocs preview", "check:redirects": "node scripts/check-redirects.mjs", diff --git a/scripts/check-redirects.mjs b/scripts/check-redirects.mjs index 0334ceb9..d3875502 100644 --- a/scripts/check-redirects.mjs +++ b/scripts/check-redirects.mjs @@ -84,6 +84,18 @@ for (const { from, to } of redirects) { } } +// The v5.3.x canonical tags are derived from this table: /sdk/v5_3_x/x credits +// whatever /sdk/x redirects to. A page that stops mapping falls back to +// crediting itself, and quietly competes with its current equivalent again. +// The set's index page has no equivalent and is excluded on purpose. +for (const route of ROUTES) { + if (!route.startsWith("/sdk/v5_3_x/")) continue; + const current = resolveRedirect(route.replace("/sdk/v5_3_x", "/sdk")); + if (!current?.startsWith("/")) { + errors.push(`${route} has no current page to credit, so its canonical falls back to itself`); + } +} + for (const [prefix, target] of PREFIX) { if (!ROUTES.has(stripTrailingSlash(target))) { errors.push(`prefix ${prefix} -> ${target} (no such page)`); diff --git a/scripts/sitemap.mjs b/scripts/sitemap.mjs new file mode 100644 index 00000000..d70aec13 --- /dev/null +++ b/scripts/sitemap.mjs @@ -0,0 +1,99 @@ +// Writes docs/dist/sitemap.xml after `vocs build`. +// +// The list is derived from the built HTML rather than from the page sources, so +// the sitemap can never disagree with what the pages themselves declare. A page +// is listed only when it asks to be indexed: no noindex, and a canonical tag +// pointing at itself. Everything else is a duplicate or a dead end, and Google +// treats a sitemap entry that contradicts the page as an error. + +import { readdirSync, readFileSync, statSync, writeFileSync } from "node:fs"; +import { join } from "node:path"; +import { fileURLToPath } from "node:url"; + +import { resolveRedirect, stripTrailingSlash } from "../resolve-redirect.js"; + +export const ORIGIN = "https://docs.zerodev.app"; + +const ROOT = fileURLToPath(new URL("..", import.meta.url)); +const DIST = join(ROOT, "docs", "dist"); + +// Under this many characters of visible text a page has nothing to rank for. +const MIN_TEXT = 50; + +function pages(dir, prefix = "") { + const out = []; + for (const entry of readdirSync(dir)) { + const full = join(dir, entry); + if (statSync(full).isDirectory()) out.push(...pages(full, `${prefix}/${entry}`)); + else if (entry === "index.html") out.push([prefix || "/", full]); + } + return out; +} + +const textOf = (html) => + html + .replace(/<(script|style)\b[^>]*>[\s\S]*?<\/\1>/gi, "") + .replace(/<[^>]+>/g, " ") + .replace(/\s+/g, " ") + .trim(); + +const tag = (html, re) => html.match(re)?.[1] ?? null; + +export function sitemapEntries() { + const skipped = { redirected: 0, noindex: 0, duplicate: 0, empty: 0 }; + const urls = []; + + for (const [route, file] of pages(DIST)) { + // .vocs holds the search index, not pages. + if (route.startsWith("/.")) continue; + + if (resolveRedirect(route)) { + skipped.redirected++; + continue; + } + + const html = readFileSync(file, "utf8"); + + if (/]+name=["']robots["'][^>]+noindex/i.test(html)) { + skipped.noindex++; + continue; + } + + const canonical = tag(html, /]+rel=["']canonical["'][^>]+href=["']([^"']+)["']/i); + if (canonical && stripTrailingSlash(canonical) !== stripTrailingSlash(ORIGIN + route)) { + skipped.duplicate++; + continue; + } + + if (textOf(html).length < MIN_TEXT) { + skipped.empty++; + continue; + } + + urls.push(route === "/" ? `${ORIGIN}/` : ORIGIN + route); + } + + return { urls: urls.sort(), skipped }; +} + +function main() { + const { urls, skipped } = sitemapEntries(); + + const xml = [ + '', + '', + ...urls.map((u) => ` ${u}`), + "", + "", + ].join("\n"); + + writeFileSync(join(DIST, "sitemap.xml"), xml); + + const dropped = Object.entries(skipped) + .filter(([, n]) => n) + .map(([k, n]) => `${n} ${k}`) + .join(", "); + console.log(`sitemap.xml: ${urls.length} urls${dropped ? ` (skipped ${dropped})` : ""}`); +} + +if (process.argv[1] === fileURLToPath(import.meta.url)) main(); diff --git a/vocs.config.tsx b/vocs.config.tsx index 7c0bc7e5..8ed5f3b0 100644 --- a/vocs.config.tsx +++ b/vocs.config.tsx @@ -12,6 +12,34 @@ const componentsDir = resolve(process.cwd(), "docs/components"); dotenv.config(); +// Every page declares one address, and the host is always docs.zerodev.app. +// The same content is also served on new-docs.zerodev.app; an absolute +// canonical makes that copy credit this site instead of competing with it. A +// path-only canonical would resolve against whichever host served the page, +// which is no fix at all. +const ORIGIN = "https://docs.zerodev.app"; + +// The v5.3.x set stays live for readers still on that SDK, but each page +// credits its current equivalent so the two versions stop competing. +// +// The mapping is derived, not hand-written: /sdk/v5_3_x/x is the old version of +// /sdk/x, and every /sdk/x already has a target in the redirect table that was +// checked page by page. Deriving it means the two can never drift apart. +// check:redirects fails if a page stops mapping. +function canonicalPath(path: string) { + if (!path.startsWith("/sdk/v5_3_x")) return path; + const current = resolveRedirect(path.replace("/sdk/v5_3_x", "/sdk")); + // An off-site target cannot be a canonical, and the set's index page has no + // equivalent. Both fall back to crediting themselves. + return current?.startsWith("/") ? current : path; +} + +// @zerodev/waas has had no release in about two years. The pages stay so old +// links still resolve, but they must not compete in search or teach an +// interface with no future. +const isUnmaintained = (path: string) => + path.startsWith("/advanced/react-hooks/"); + export default defineConfig({ iconUrl: "/favicon.ico", logoUrl: { @@ -85,20 +113,29 @@ export default defineConfig({ title: "ZeroDev", titleTemplate: "%s – ZeroDev", description: "The most powerful smart account.", - head: ( - <> - - - - - - ), + head({ path }) { + const canonical = ORIGIN + canonicalPath(path); + return ( + <> + + + {/* Was a fixed https://zerodev.app on all 249 pages, which told every + crawler and every share preview that the whole site was one URL. */} + + + {isUnmaintained(path) && ( + + )} + + + ); + }, // Pillars (Getting Started, Onboarding, Onramp, Smart Account, Advanced, // API & Tooling) are rendered by the `inject-pillar-bar` Vite plugin // below as a separate horizontal bar BELOW this top nav. Only utility links From 3c2f316d50af1d1876bf40253708a1b0e5e324cc Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 20:29:49 +0530 Subject: [PATCH 2/6] chore: drop the v5.3.x pointer from the migration guide --- docs/pages/advanced/migration.mdx | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/pages/advanced/migration.mdx b/docs/pages/advanced/migration.mdx index d5d1d9b3..a2ef7daf 100644 --- a/docs/pages/advanced/migration.mdx +++ b/docs/pages/advanced/migration.mdx @@ -35,8 +35,6 @@ In version **5.4.x** of the `@zerodev/sdk`, we've migrated to using `viem@2.18.x This guide will help you migrate your codebase to be compatible with the new version. -Still on 5.3.x? The [v5.3.x documentation](/sdk/v5_3_x) stays online for reference. - ### Update dependencies 1. **Remove the `permissionless` package**: From 0e2da824e074f9efc8423f6fab6113ee8bd0feed Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 20:56:50 +0530 Subject: [PATCH 3/6] fix: emit only the head tags vocs does not already emit The head block was a JSX element, and vocs checks typeof head === object before it checks for an element, so it took the path-prefix-map branch and rendered nothing. og:type, og:title and og:url never reached a page. Keeping our own og:type/og:title/og:description now would duplicate the per-page ones vocs emits, so drop them and keep the canonical, og:url and the noindex flag. Also records why /global-address takes two hops: a Cloudflare rule answers it before the request reaches this server. --- redirects.config.js | 7 +++++++ vocs.config.tsx | 23 +++++++++++------------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/redirects.config.js b/redirects.config.js index 09e2c486..1af27a93 100644 --- a/redirects.config.js +++ b/redirects.config.js @@ -125,6 +125,13 @@ export const redirects = [ { from: "/recovery-flow/portal", to: "/advanced/account-recovery/portal" }, // Smart Routing Address (and global-address duplicate) + // + // /global-address never reaches this server: a Cloudflare rule answers it + // first with a 301 to /smart-routing-address, which this table then sends on, + // so a reader takes two hops. The rule below is the target we want, and it + // takes effect the moment that Cloudflare rule is removed (DES-24). Confirmed + // on production: that response carries no `x-render-origin-server` header, + // while every rule we own does. { from: "/smart-routing-address", to: "/onramp/smart-routing-address/quickstart" }, { from: "/global-address", to: "/onramp/smart-routing-address/quickstart" }, diff --git a/vocs.config.tsx b/vocs.config.tsx index 8ed5f3b0..98db84c6 100644 --- a/vocs.config.tsx +++ b/vocs.config.tsx @@ -113,26 +113,25 @@ export default defineConfig({ title: "ZeroDev", titleTemplate: "%s – ZeroDev", description: "The most powerful smart account.", + // Must stay a function. Vocs tests `typeof head === "object"` before it + // tests for an element, and a JSX element is an object, so it took the + // "map of path prefix to element" branch, found no key matching the route + // and rendered nothing. The og:type, og:title and og:description that used + // to sit here never reached a single page; vocs emits its own, per page, + // from `title` and `description` above. Only the tags vocs does not emit + // belong here. head({ path }) { const canonical = ORIGIN + canonicalPath(path); return ( <> - - - {/* Was a fixed https://zerodev.app on all 249 pages, which told every - crawler and every share preview that the whole site was one URL. */} - + {/* Vocs only emits og:url when `baseUrl` is set, and setting that also + emits a tag that would change how every relative link + resolves. Cheaper to write the tag directly. */} + {isUnmaintained(path) && ( )} - ); }, From 9f044677cd12de37a76c9758223474c95a0f9f50 Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 21:05:12 +0530 Subject: [PATCH 4/6] feat: fall back to a site description where a page has none 72 of the 135 indexable pages carry no description, so Google writes its own snippet and a shared link previews bare. Vocs only emits one when the page supplies it, through frontmatter or the bracketed suffix on the H1. Collects the routes that already have one and fills only the gap, so no page ends up with two. A stopgap: one description across 72 pages is weak, and each page still needs its own (DES-25). --- vocs.config.tsx | 57 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/vocs.config.tsx b/vocs.config.tsx index 98db84c6..504288d2 100644 --- a/vocs.config.tsx +++ b/vocs.config.tsx @@ -1,4 +1,5 @@ -import { resolve } from "node:path"; +import { readFileSync, readdirSync } from "node:fs"; +import { join, resolve } from "node:path"; import { defineConfig } from "vocs"; import dotenv from "dotenv"; import { resolveRedirect } from "./resolve-redirect.js"; @@ -40,6 +41,54 @@ function canonicalPath(path: string) { const isUnmaintained = (path: string) => path.startsWith("/advanced/react-hooks/"); +// The copy that sat in the dead og:description tag below. It never reached a +// page, so this is the first time it ships. +const SITE_DESCRIPTION = + "Build a Web3 experience that feels like Web2, using account abstraction through ZeroDev. Say goodbye to gas, seed phrases, transaction prompts, and more."; + +// Vocs emits a description only when the page's own frontmatter carries one, +// and 72 of the 135 indexable pages do not, so they ship with no description +// and no og:description at all. Google then writes its own snippet, and a +// shared link previews bare. +// +// This is a stopgap, not a fix: one description repeated across 72 pages is +// weak, and Google may still write its own. Each page needs its own (DES-25). +// Collect the routes that already have one, so the fallback never doubles up +// with the tag vocs emits. +const PAGES_DIR = resolve(process.cwd(), "docs/pages"); + +// Vocs reads a description from two places: `description:` in the frontmatter, +// or a bracketed suffix on the H1, as in `# Social Login [Social login lets +// users sign in with...]`. Miss the second and a page gets two descriptions. +// The trailing-bracket test excludes a markdown link, which is `[text](url)`. +function hasDescription(src: string) { + const close = src.startsWith("---") ? src.indexOf("\n---", 3) : -1; + if (close > 0 && /^description:\s*\S/m.test(src.slice(3, close))) return true; + const h1 = src.match(/^#[^#\n].*$/m)?.[0]; + return Boolean(h1 && /\[[^\]]+\]\s*$/.test(h1)); +} + +function routesWithDescription(dir = PAGES_DIR, prefix = "") { + const out = new Set(); + for (const entry of readdirSync(dir, { withFileTypes: true })) { + const full = join(dir, entry.name); + if (entry.isDirectory()) { + for (const r of routesWithDescription(full, `${prefix}/${entry.name}`)) { + out.add(r); + } + continue; + } + if (!/\.mdx?$/.test(entry.name)) continue; + const src = readFileSync(full, "utf8"); + if (!hasDescription(src)) continue; + const name = entry.name.replace(/\.mdx?$/, ""); + out.add(name === "index" ? prefix || "/" : `${prefix}/${name}`); + } + return out; +} + +const HAS_DESCRIPTION = routesWithDescription(); + export default defineConfig({ iconUrl: "/favicon.ico", logoUrl: { @@ -129,6 +178,12 @@ export default defineConfig({ emits a tag that would change how every relative link resolves. Cheaper to write the tag directly. */} + {!HAS_DESCRIPTION.has(path) && ( + <> + + + + )} {isUnmaintained(path) && ( )} From 365b7077b626b1c88e42d5e4d23f086821c30dca Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 21:06:32 +0530 Subject: [PATCH 5/6] chore: point the code comments at the right tickets --- redirects.config.js | 2 +- vocs.config.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/redirects.config.js b/redirects.config.js index 1af27a93..4ccaf737 100644 --- a/redirects.config.js +++ b/redirects.config.js @@ -129,7 +129,7 @@ export const redirects = [ // /global-address never reaches this server: a Cloudflare rule answers it // first with a 301 to /smart-routing-address, which this table then sends on, // so a reader takes two hops. The rule below is the target we want, and it - // takes effect the moment that Cloudflare rule is removed (DES-24). Confirmed + // takes effect the moment that Cloudflare rule is removed (DES-25). Confirmed // on production: that response carries no `x-render-origin-server` header, // while every rule we own does. { from: "/smart-routing-address", to: "/onramp/smart-routing-address/quickstart" }, diff --git a/vocs.config.tsx b/vocs.config.tsx index 504288d2..3bd6bafd 100644 --- a/vocs.config.tsx +++ b/vocs.config.tsx @@ -52,7 +52,7 @@ const SITE_DESCRIPTION = // shared link previews bare. // // This is a stopgap, not a fix: one description repeated across 72 pages is -// weak, and Google may still write its own. Each page needs its own (DES-25). +// weak, and Google may still write its own. Each page needs its own (DES-24). // Collect the routes that already have one, so the fallback never doubles up // with the tag vocs emits. const PAGES_DIR = resolve(process.cwd(), "docs/pages"); From 25750b333217d6022bd8f53195466824bf073417 Mon Sep 17 00:00:00 2001 From: Jayesh Bhole <54071350+jayeshbhole@users.noreply.github.com> Date: Tue, 1 Sep 2026 21:12:28 +0530 Subject: [PATCH 6/6] fix: fail the sitemap build when a page has no canonical A page with no canonical tag was listed, which contradicts the rule the script states and hides the exact regression that already happened once: vocs drops the whole head config silently. Also trims the comments and drops the ticket numbers. --- docs/public/404.html | 5 ++- redirects.config.js | 9 ++---- scripts/check-redirects.mjs | 13 +++----- scripts/sitemap.mjs | 44 +++++++++++++++++++------- vocs.config.tsx | 61 ++++++++++++------------------------- 5 files changed, 62 insertions(+), 70 deletions(-) diff --git a/docs/public/404.html b/docs/public/404.html index fe2ef648..777ebdec 100644 --- a/docs/public/404.html +++ b/docs/public/404.html @@ -7,9 +7,8 @@ Page not found – ZeroDev