From 9c7cde326298887f8a60f27a3ef8f8375b300412 Mon Sep 17 00:00:00 2001 From: Dimitri POSTOLOV Date: Mon, 1 Aug 2022 15:52:42 +0200 Subject: [PATCH 1/5] fix --- examples/docs/src/theme.config.js | 1 - examples/swr-site/middleware.js | 3 +- examples/swr-site/pages/404.mdx | 5 + examples/swr-site/pages/500.mdx | 5 + .../swr-site/pages/docs/404-500.en-US.mdx | 57 ++ examples/swr-site/pages/docs/meta.en-US.json | 3 +- examples/swr-site/pages/meta.en-US.json | 9 + examples/swr-site/pages/meta.es-ES.json | 9 + examples/swr-site/pages/meta.ja.json | 9 + examples/swr-site/pages/meta.ko.json | 9 + examples/swr-site/pages/meta.ru.json | 9 + examples/swr-site/pages/meta.zh-CN.json | 9 + .../__snapshots__/normalize-page.spec.ts.snap | 862 ++++-------------- .../__test__/normalize-page.spec.ts | 67 ++ .../nextra-theme-docs/src/components/index.ts | 2 + .../src/components/not-found.tsx | 8 + .../src/components/server-side-error.tsx | 8 + .../src/components/sidebar.tsx | 146 ++- .../nextra-theme-docs/src/components/toc.tsx | 43 +- packages/nextra-theme-docs/src/constants.tsx | 42 +- packages/nextra-theme-docs/src/index.tsx | 17 +- packages/nextra-theme-docs/src/styles.css | 4 - packages/nextra-theme-docs/src/types.ts | 4 + .../src/utils/get-git-issue-url.ts | 27 + .../src/utils/normalize-pages.tsx | 86 +- packages/nextra/src/locales.ts | 4 +- 26 files changed, 555 insertions(+), 893 deletions(-) create mode 100644 examples/swr-site/pages/404.mdx create mode 100644 examples/swr-site/pages/500.mdx create mode 100644 examples/swr-site/pages/docs/404-500.en-US.mdx create mode 100644 packages/nextra-theme-docs/src/components/not-found.tsx create mode 100644 packages/nextra-theme-docs/src/components/server-side-error.tsx create mode 100644 packages/nextra-theme-docs/src/utils/get-git-issue-url.ts diff --git a/examples/docs/src/theme.config.js b/examples/docs/src/theme.config.js index 069360ae85..c5243485ce 100644 --- a/examples/docs/src/theme.config.js +++ b/examples/docs/src/theme.config.js @@ -65,7 +65,6 @@ export default { unstable_faviconGlyph: '✦', prevLinks: true, nextLinks: true, - floatTOC: true, footer: true, footerEditLink: 'Edit this page on GitHub', footerText: `MIT ${new Date().getFullYear()} © Nextra.`, diff --git a/examples/swr-site/middleware.js b/examples/swr-site/middleware.js index 5f1a4e3d52..38011cf766 100644 --- a/examples/swr-site/middleware.js +++ b/examples/swr-site/middleware.js @@ -1,2 +1 @@ -import { locales } from "nextra/locales"; -export const middleware = locales; +export { locales as middleware } from "nextra/locales"; diff --git a/examples/swr-site/pages/404.mdx b/examples/swr-site/pages/404.mdx new file mode 100644 index 0000000000..3f2fcd41e6 --- /dev/null +++ b/examples/swr-site/pages/404.mdx @@ -0,0 +1,5 @@ +import { NotFoundPage } from 'nextra-theme-docs' + +# 404 - This page could not be found + + diff --git a/examples/swr-site/pages/500.mdx b/examples/swr-site/pages/500.mdx new file mode 100644 index 0000000000..6893466874 --- /dev/null +++ b/examples/swr-site/pages/500.mdx @@ -0,0 +1,5 @@ +import { ServerSideErrorPage } from 'nextra-theme-docs' + +# 500 - Internal Server Error + + diff --git a/examples/swr-site/pages/docs/404-500.en-US.mdx b/examples/swr-site/pages/docs/404-500.en-US.mdx new file mode 100644 index 0000000000..ecd104bb1a --- /dev/null +++ b/examples/swr-site/pages/docs/404-500.en-US.mdx @@ -0,0 +1,57 @@ +# 404 / 500 pages + +Nextra support custom `404.mdx`/`500.mdx` pages. + +## 404 + +To add `/404` page import `NotFoundPage`: + +```mdx filename="pages/404.mdx" +import { NotFoundPage } from 'nextra-theme-docs' + +# 404 - This page could not be found + + +``` + +[Click to try `/404` page.](/this-page-not-exist-trust-me) + +## 500 + +To add `/500` page import `ServerSideErrorPage`: + +```mdx filename="pages/500.mdx" +import { ServerSideErrorPage } from 'nextra-theme-docs' + +# 500 - Internal Server Error + + +``` + +[Click to try `/500` page.](/500) + +## Customize Theme Config Options + +Also, you can customize following options: + +```ts +// ... +notFoundLink?: ReactNode | FC +notFoundLabels?: string +serverSideErrorLink?: ReactNode | FC +serverSideErrorLabels?: string +``` + +## Customize Layout + +```json filename="meta.json" +"404": { + "type": "page" +}, +"500": { + "type":"page", + "theme": { + "layout": "full" + } +} +``` diff --git a/examples/swr-site/pages/docs/meta.en-US.json b/examples/swr-site/pages/docs/meta.en-US.json index ad214a69a2..4d16884a55 100644 --- a/examples/swr-site/pages/docs/meta.en-US.json +++ b/examples/swr-site/pages/docs/meta.en-US.json @@ -40,5 +40,6 @@ "type": "page", "newWindow": true }, - "scroll-with-dynamic-height": "Scroll With Dynamic Height" + "scroll-with-dynamic-height": "Scroll With Dynamic Height", + "404-500": "404/500 Custom Error Pages" } diff --git a/examples/swr-site/pages/meta.en-US.json b/examples/swr-site/pages/meta.en-US.json index 54a1b23a4e..3070c1ff20 100644 --- a/examples/swr-site/pages/meta.en-US.json +++ b/examples/swr-site/pages/meta.en-US.json @@ -55,5 +55,14 @@ "href": "https://github.com/shuding/nextra", "type": "page", "newWindow": true + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/examples/swr-site/pages/meta.es-ES.json b/examples/swr-site/pages/meta.es-ES.json index 9c453c3dbd..5bbe355ef5 100644 --- a/examples/swr-site/pages/meta.es-ES.json +++ b/examples/swr-site/pages/meta.es-ES.json @@ -15,5 +15,14 @@ "blog": { "title": "Blog", "type": "page" + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/examples/swr-site/pages/meta.ja.json b/examples/swr-site/pages/meta.ja.json index 0e5acafdac..40d1f6b935 100644 --- a/examples/swr-site/pages/meta.ja.json +++ b/examples/swr-site/pages/meta.ja.json @@ -15,5 +15,14 @@ "blog": { "title": "ブログ", "type": "page" + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/examples/swr-site/pages/meta.ko.json b/examples/swr-site/pages/meta.ko.json index 93921f9a2e..e14d609417 100644 --- a/examples/swr-site/pages/meta.ko.json +++ b/examples/swr-site/pages/meta.ko.json @@ -15,5 +15,14 @@ "blog": { "title": "블로그", "type": "page" + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/examples/swr-site/pages/meta.ru.json b/examples/swr-site/pages/meta.ru.json index 416a2f309a..197884c8dd 100644 --- a/examples/swr-site/pages/meta.ru.json +++ b/examples/swr-site/pages/meta.ru.json @@ -15,5 +15,14 @@ "blog": { "title": "Блог", "type": "page" + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/examples/swr-site/pages/meta.zh-CN.json b/examples/swr-site/pages/meta.zh-CN.json index 2df372785f..4a74642f89 100644 --- a/examples/swr-site/pages/meta.zh-CN.json +++ b/examples/swr-site/pages/meta.zh-CN.json @@ -15,5 +15,14 @@ "blog": { "title": "博客", "type": "page" + }, + "404": { + "type": "page" + }, + "500": { + "type":"page", + "theme": { + "layout": "full" + } } } diff --git a/packages/nextra-theme-docs/__test__/__snapshots__/normalize-page.spec.ts.snap b/packages/nextra-theme-docs/__test__/__snapshots__/normalize-page.spec.ts.snap index 2faa6bc6b1..c16473abb3 100644 --- a/packages/nextra-theme-docs/__test__/__snapshots__/normalize-page.spec.ts.snap +++ b/packages/nextra-theme-docs/__test__/__snapshots__/normalize-page.spec.ts.snap @@ -1,5 +1,165 @@ // Vitest Snapshot v1 +exports[`normalize-page > /404 page 1`] = ` +{ + "activeIndex": 0, + "activePath": [], + "activeThemeContext": { + "breadcrumb": true, + "footer": true, + "layout": "default", + "navbar": true, + "pagination": true, + "sidebar": true, + "toc": true, + "typesetting": "default", + }, + "activeType": undefined, + "directories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "docsDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "flatDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "flatDocsDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "topLevelNavbarItems": [], +} +`; + +exports[`normalize-page > /500 page 1`] = ` +{ + "activeIndex": 0, + "activePath": [ + { + "name": "500", + "route": "/500", + "theme": { + "layout": "raw", + }, + "title": "500", + "type": "page", + }, + ], + "activeThemeContext": { + "breadcrumb": true, + "footer": true, + "layout": "raw", + "navbar": true, + "pagination": true, + "sidebar": true, + "toc": true, + "typesetting": "default", + }, + "activeType": "page", + "directories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "docsDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "flatDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "flatDocsDirectories": [ + { + "name": "index", + "route": "/", + "title": "Introduction", + "type": "doc", + }, + { + "name": "get-started", + "route": "/get-started", + "title": "Get Started", + "type": "doc", + }, + ], + "topLevelNavbarItems": [], +} +`; + exports[`normalize-page > en-US getting-started 1`] = ` { "activeIndex": 0, @@ -7,8 +167,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -16,8 +174,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -25,8 +181,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -34,8 +188,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -43,8 +195,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -52,8 +202,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -61,8 +209,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -70,8 +216,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -79,8 +223,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -88,8 +230,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -97,8 +237,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -106,8 +244,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -115,8 +251,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -124,8 +258,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -133,8 +265,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -144,8 +274,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -153,8 +281,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -162,8 +288,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -171,15 +295,12 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "Advanced", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -187,15 +308,12 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "Docs", "type": "nav", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -218,8 +336,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -227,8 +343,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -236,8 +350,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -245,8 +357,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -254,8 +364,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -263,8 +371,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -272,8 +378,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -281,8 +385,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -290,8 +392,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -299,8 +399,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -308,8 +406,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -317,8 +413,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -326,8 +420,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -335,8 +427,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -344,8 +434,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -355,8 +443,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -364,8 +450,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -373,8 +457,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -382,15 +464,12 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "Advanced", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -398,7 +477,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "Docs", @@ -407,12 +485,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -420,12 +496,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -433,12 +507,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -446,12 +518,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -459,12 +529,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -472,7 +540,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "examples", "route": "/examples", "title": "Examples", @@ -481,12 +548,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -494,7 +559,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "blog", "route": "/blog", "title": "Blog", @@ -504,8 +568,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "docsDirectories": [], "flatDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -513,8 +575,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -522,8 +582,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -531,8 +589,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -540,8 +596,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -549,8 +603,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -558,8 +610,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -567,8 +617,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -576,8 +624,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -585,8 +631,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -594,8 +638,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -603,8 +645,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -612,8 +652,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -621,8 +659,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -630,8 +666,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -639,8 +673,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -648,8 +680,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -657,8 +687,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -666,8 +694,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -675,12 +701,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -688,12 +712,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -701,12 +723,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -714,12 +734,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -727,12 +745,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -740,12 +756,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -755,8 +769,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` ], "flatDocsDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -764,8 +776,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -773,8 +783,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -782,8 +790,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -791,8 +797,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -800,8 +804,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -809,8 +811,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -818,8 +818,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -827,8 +825,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -836,8 +832,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -845,8 +839,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -854,8 +846,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -863,8 +853,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -872,8 +860,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -881,8 +867,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -890,8 +874,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -899,8 +881,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -908,8 +888,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -917,8 +895,6 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -926,12 +902,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -939,12 +913,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -952,12 +924,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -965,12 +935,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -978,12 +946,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -991,12 +957,10 @@ exports[`normalize-page > en-US getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -1013,7 +977,6 @@ exports[`normalize-page > en-US home 1`] = ` "activeIndex": 0, "activePath": [ { - "children": undefined, "frontMatter": { "title": "React Hooks for Data Fetching", }, @@ -1040,8 +1003,6 @@ exports[`normalize-page > en-US home 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -1049,8 +1010,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -1058,8 +1017,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -1067,8 +1024,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -1076,8 +1031,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -1085,8 +1038,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -1094,8 +1045,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -1103,8 +1052,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -1112,8 +1059,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -1121,8 +1066,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -1130,8 +1073,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -1139,8 +1080,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -1148,8 +1087,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -1157,8 +1094,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -1166,8 +1101,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -1177,8 +1110,6 @@ exports[`normalize-page > en-US home 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -1186,8 +1117,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -1195,8 +1124,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -1204,15 +1131,12 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "Advanced", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -1220,7 +1144,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "Docs", @@ -1229,12 +1152,10 @@ exports[`normalize-page > en-US home 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -1242,12 +1163,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -1255,12 +1174,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -1268,12 +1185,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -1281,12 +1196,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -1294,7 +1207,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "examples", "route": "/examples", "title": "Examples", @@ -1303,12 +1215,10 @@ exports[`normalize-page > en-US home 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -1316,7 +1226,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "blog", "route": "/blog", "title": "Blog", @@ -1326,8 +1235,6 @@ exports[`normalize-page > en-US home 1`] = ` "docsDirectories": [], "flatDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -1335,8 +1242,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -1344,8 +1249,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -1353,8 +1256,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -1362,8 +1263,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -1371,8 +1270,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -1380,8 +1277,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -1389,8 +1284,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -1398,8 +1291,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -1407,8 +1298,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -1416,8 +1305,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -1425,8 +1312,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -1434,8 +1319,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -1443,8 +1326,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -1452,8 +1333,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -1461,8 +1340,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -1470,8 +1347,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -1479,8 +1354,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -1488,8 +1361,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -1497,12 +1368,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -1510,12 +1379,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -1523,12 +1390,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -1536,12 +1401,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -1549,12 +1412,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -1562,12 +1423,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -1577,8 +1436,6 @@ exports[`normalize-page > en-US home 1`] = ` ], "flatDocsDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "getting-started", "route": "/docs/getting-started", @@ -1586,8 +1443,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "options", "route": "/docs/options", @@ -1595,8 +1450,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "global-configuration", "route": "/docs/global-configuration", @@ -1604,8 +1457,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "data-fetching", "route": "/docs/data-fetching", @@ -1613,8 +1464,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/docs/error-handling", @@ -1622,8 +1471,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "revalidation", "route": "/docs/revalidation", @@ -1631,8 +1478,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -1640,8 +1485,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "arguments", "route": "/docs/arguments", @@ -1649,8 +1492,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "mutation", "route": "/docs/mutation", @@ -1658,8 +1499,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "pagination", "route": "/docs/pagination", @@ -1667,8 +1506,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "prefetching", "route": "/docs/prefetching", @@ -1676,8 +1513,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -1685,8 +1520,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -1694,8 +1527,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "suspense", "route": "/docs/suspense", @@ -1703,8 +1534,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "middleware", "route": "/docs/middleware", @@ -1712,8 +1541,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "cache", "route": "/docs/advanced/cache", @@ -1721,8 +1548,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "performance", "route": "/docs/advanced/performance", @@ -1730,8 +1555,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "react-native", "route": "/docs/advanced/react-native", @@ -1739,8 +1562,6 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "change-log", "route": "/docs/change-log", @@ -1748,12 +1569,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Basic Usage", }, - "hidden": undefined, "locale": "en-US", "name": "basic", "route": "/examples/basic", @@ -1761,12 +1580,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Authentication", }, - "hidden": undefined, "locale": "en-US", "name": "auth", "route": "/examples/auth", @@ -1774,12 +1591,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Infinite Loading", }, - "hidden": undefined, "locale": "en-US", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -1787,12 +1602,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Error Handling", }, - "hidden": undefined, "locale": "en-US", "name": "error-handling", "route": "/examples/error-handling", @@ -1800,12 +1613,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -1813,12 +1624,10 @@ exports[`normalize-page > en-US home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "Almost 2 years ago we open sourced SWR, the tiny data-fetching React library that people love. Today we are reaching another milestone: the 1.0 version of SWR.", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "en-US", "name": "swr-v1", "route": "/blog/swr-v1", @@ -1837,8 +1646,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -1846,8 +1653,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -1855,8 +1660,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -1864,8 +1667,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -1873,8 +1674,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -1882,8 +1681,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -1891,8 +1688,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -1900,8 +1695,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -1909,8 +1702,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -1918,8 +1709,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -1927,8 +1716,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -1936,8 +1723,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -1945,8 +1730,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -1954,8 +1737,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -1963,8 +1744,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -1974,8 +1753,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -1983,8 +1760,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -1992,8 +1767,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -2001,15 +1774,12 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "高级", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -2017,15 +1787,12 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "文档", "type": "nav", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -2048,8 +1815,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -2057,8 +1822,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -2066,8 +1829,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -2075,8 +1836,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -2084,8 +1843,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -2093,8 +1850,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -2102,8 +1857,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -2111,8 +1864,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -2120,8 +1871,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -2129,8 +1878,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -2138,8 +1885,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -2147,8 +1892,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -2156,8 +1899,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -2165,8 +1906,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -2174,8 +1913,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -2185,8 +1922,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -2194,8 +1929,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -2203,8 +1936,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -2212,15 +1943,12 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "高级", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -2228,7 +1956,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "文档", @@ -2237,12 +1964,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -2250,12 +1975,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -2263,12 +1986,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -2276,12 +1997,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -2289,12 +2008,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -2302,7 +2019,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "examples", "route": "/examples", "title": "示例", @@ -2311,12 +2027,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", @@ -2324,7 +2038,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "blog", "route": "/blog", "title": "博客", @@ -2334,8 +2047,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "docsDirectories": [], "flatDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -2343,8 +2054,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -2352,8 +2061,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -2361,8 +2068,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -2370,8 +2075,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -2379,8 +2082,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -2388,8 +2089,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -2397,8 +2096,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -2406,8 +2103,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -2415,8 +2110,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -2424,8 +2117,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -2433,8 +2124,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -2442,8 +2131,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -2451,8 +2138,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -2460,8 +2145,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -2469,8 +2152,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -2478,8 +2159,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -2487,8 +2166,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -2496,8 +2173,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -2505,12 +2180,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -2518,12 +2191,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -2531,12 +2202,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -2544,12 +2213,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -2557,12 +2224,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -2570,12 +2235,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", @@ -2585,8 +2248,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` ], "flatDocsDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -2594,8 +2255,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -2603,8 +2262,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -2612,8 +2269,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -2621,8 +2276,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -2630,8 +2283,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -2639,8 +2290,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -2648,8 +2297,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -2657,8 +2304,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -2666,8 +2311,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -2675,8 +2318,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -2684,8 +2325,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -2693,8 +2332,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -2702,8 +2339,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -2711,8 +2346,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -2720,8 +2353,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -2729,8 +2360,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -2738,8 +2367,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -2747,8 +2374,6 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -2756,12 +2381,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -2769,12 +2392,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -2782,12 +2403,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -2795,12 +2414,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -2808,12 +2425,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -2821,12 +2436,10 @@ exports[`normalize-page > zh-CN getting-started 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", @@ -2843,7 +2456,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "activeIndex": 0, "activePath": [ { - "children": undefined, "frontMatter": { "title": "用于数据请求的 React Hooks 库", }, @@ -2870,8 +2482,6 @@ exports[`normalize-page > zh-CN home 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -2879,8 +2489,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -2888,8 +2496,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -2897,8 +2503,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -2906,8 +2510,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -2915,8 +2517,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -2924,8 +2524,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -2933,8 +2531,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -2942,8 +2538,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -2951,8 +2545,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -2960,8 +2552,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -2969,8 +2559,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -2978,8 +2566,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -2987,8 +2573,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -2996,8 +2580,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -3007,8 +2589,6 @@ exports[`normalize-page > zh-CN home 1`] = ` { "children": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -3016,8 +2596,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -3025,8 +2603,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -3034,15 +2610,12 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "advanced", "route": "/docs/advanced", "title": "高级", "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -3050,7 +2623,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "docs", "route": "/docs", "title": "文档", @@ -3059,12 +2631,10 @@ exports[`normalize-page > zh-CN home 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -3072,12 +2642,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -3085,12 +2653,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -3098,12 +2664,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -3111,12 +2675,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -3124,7 +2686,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "examples", "route": "/examples", "title": "示例", @@ -3133,12 +2694,10 @@ exports[`normalize-page > zh-CN home 1`] = ` { "children": [ { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", @@ -3146,7 +2705,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, ], - "hidden": undefined, "name": "blog", "route": "/blog", "title": "博客", @@ -3156,8 +2714,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "docsDirectories": [], "flatDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -3165,8 +2721,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -3174,8 +2728,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -3183,8 +2735,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -3192,8 +2742,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -3201,8 +2749,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -3210,8 +2756,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -3219,8 +2763,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -3228,8 +2770,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -3237,8 +2777,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -3246,8 +2784,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -3255,8 +2791,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -3264,8 +2798,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -3273,8 +2805,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -3282,8 +2812,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -3291,8 +2819,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -3300,8 +2826,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -3309,8 +2833,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -3318,8 +2840,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -3327,12 +2847,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -3340,12 +2858,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -3353,12 +2869,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -3366,12 +2880,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -3379,12 +2891,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -3392,12 +2902,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", @@ -3407,8 +2915,6 @@ exports[`normalize-page > zh-CN home 1`] = ` ], "flatDocsDirectories": [ { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "getting-started", "route": "/docs/getting-started", @@ -3416,8 +2922,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "options", "route": "/docs/options", @@ -3425,8 +2929,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "global-configuration", "route": "/docs/global-configuration", @@ -3434,8 +2936,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "data-fetching", "route": "/docs/data-fetching", @@ -3443,8 +2943,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/docs/error-handling", @@ -3452,8 +2950,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "revalidation", "route": "/docs/revalidation", @@ -3461,8 +2957,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "conditional-fetching", "route": "/docs/conditional-fetching", @@ -3470,8 +2964,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "arguments", "route": "/docs/arguments", @@ -3479,8 +2971,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "mutation", "route": "/docs/mutation", @@ -3488,8 +2978,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "pagination", "route": "/docs/pagination", @@ -3497,8 +2985,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "prefetching", "route": "/docs/prefetching", @@ -3506,8 +2992,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "with-nextjs", "route": "/docs/with-nextjs", @@ -3515,8 +2999,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "en-US", "name": "typescript", "route": "/docs/typescript", @@ -3524,8 +3006,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "suspense", "route": "/docs/suspense", @@ -3533,8 +3013,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "middleware", "route": "/docs/middleware", @@ -3542,8 +3020,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "cache", "route": "/docs/advanced/cache", @@ -3551,8 +3027,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "performance", "route": "/docs/advanced/performance", @@ -3560,8 +3034,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "react-native", "route": "/docs/advanced/react-native", @@ -3569,8 +3041,6 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, - "hidden": undefined, "locale": "zh-CN", "name": "change-log", "route": "/docs/change-log", @@ -3578,12 +3048,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "基本用法", }, - "hidden": undefined, "locale": "zh-CN", "name": "basic", "route": "/examples/basic", @@ -3591,12 +3059,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "身份验证", }, - "hidden": undefined, "locale": "zh-CN", "name": "auth", "route": "/examples/auth", @@ -3604,12 +3070,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "无限加载", }, - "hidden": undefined, "locale": "zh-CN", "name": "infinite-loading", "route": "/examples/infinite-loading", @@ -3617,12 +3081,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "错误处理", }, - "hidden": undefined, "locale": "zh-CN", "name": "error-handling", "route": "/examples/error-handling", @@ -3630,12 +3092,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "full": true, "title": "Next.js SSR", }, - "hidden": undefined, "locale": "en-US", "name": "ssr", "route": "/examples/ssr", @@ -3643,12 +3103,10 @@ exports[`normalize-page > zh-CN home 1`] = ` "type": "doc", }, { - "children": undefined, "frontMatter": { "description": "大约两年前,我们开源了 SWR,大家喜爱的小型数据请求 React 库。今天,我们迎来了另一个里程碑:SWR 1.0 版本发布。", "image": "https://assets.vercel.com/image/upload/v1630059453/swr/v1.png", }, - "hidden": undefined, "locale": "zh-CN", "name": "swr-v1", "route": "/blog/swr-v1", diff --git a/packages/nextra-theme-docs/__test__/normalize-page.spec.ts b/packages/nextra-theme-docs/__test__/normalize-page.spec.ts index 02b1ce84e4..c310f919ba 100644 --- a/packages/nextra-theme-docs/__test__/normalize-page.spec.ts +++ b/packages/nextra-theme-docs/__test__/normalize-page.spec.ts @@ -1,6 +1,7 @@ import { describe, it, expect } from 'vitest' import { cnPageMap, usPageMap } from './__fixture__/pageMap' import normalizePages from '../src/utils/normalize-pages' + const defaultLocale = 'en-US' describe('normalize-page', () => { @@ -47,4 +48,70 @@ describe('normalize-page', () => { }) expect(result).toMatchSnapshot() }) + + it('/404 page', () => { + const data = { + list: [ + { name: '404', route: '/404', locale: '' }, + { name: 'get-started', route: '/get-started', locale: '' }, + { name: 'index', route: '/', locale: '' }, + { + name: 'meta.json', + locale: '', + meta: { + '404': { + type: 'page', + theme: { + layout: 'full' + } + }, + index: { + title: 'Introduction' + }, + 'get-started': { + title: 'Get Started' + } + } + } + ], + locale: 'en-US', + defaultLocale: 'en-US', + route: '/500ddd' + } + const result = normalizePages(data) + expect(result).toMatchSnapshot() + }) + + it('/500 page', () => { + const data = { + list: [ + { name: '500', route: '/500', locale: '' }, + { name: 'get-started', route: '/get-started', locale: '' }, + { name: 'index', route: '/', locale: '' }, + { + name: 'meta.json', + locale: '', + meta: { + '500': { + type: 'page', + theme: { + layout: 'raw' + } + }, + index: { + title: 'Introduction' + }, + 'get-started': { + title: 'Get Started' + } + } + } + ], + locale: 'en-US', + defaultLocale: 'en-US', + route: '/500' + } + const result = normalizePages(data) + expect(result).toMatchSnapshot() + }) }) diff --git a/packages/nextra-theme-docs/src/components/index.ts b/packages/nextra-theme-docs/src/components/index.ts index 5e48fc61d9..f27a472b87 100644 --- a/packages/nextra-theme-docs/src/components/index.ts +++ b/packages/nextra-theme-docs/src/components/index.ts @@ -10,8 +10,10 @@ export { Head } from './head' export { LocaleSwitch } from './locale-switch' export { NavLinks } from './nav-links' export { Navbar } from './navbar' +export { NotFoundPage } from './not-found' export { Search } from './search' export { Select } from './select' +export { ServerSideErrorPage } from './server-side-error' export { Sidebar } from './sidebar' export { Tabs, Tab } from './tabs' export { ThemeSwitch } from './theme-switch' diff --git a/packages/nextra-theme-docs/src/components/not-found.tsx b/packages/nextra-theme-docs/src/components/not-found.tsx new file mode 100644 index 0000000000..e0bf59fb66 --- /dev/null +++ b/packages/nextra-theme-docs/src/components/not-found.tsx @@ -0,0 +1,8 @@ +import React from 'react' +import { useConfig } from '../config' +import { renderComponent } from '../utils/render' + +export function NotFoundPage() { + const config = useConfig() + return

{renderComponent(config.notFoundLink)}

+} diff --git a/packages/nextra-theme-docs/src/components/server-side-error.tsx b/packages/nextra-theme-docs/src/components/server-side-error.tsx new file mode 100644 index 0000000000..b554a77190 --- /dev/null +++ b/packages/nextra-theme-docs/src/components/server-side-error.tsx @@ -0,0 +1,8 @@ +import React from 'react' +import { useConfig } from '../config' +import { renderComponent } from '../utils/render' + +export function ServerSideErrorPage() { + const config = useConfig() + return

{renderComponent(config.serverSideErrorLink)}

+} diff --git a/packages/nextra-theme-docs/src/components/sidebar.tsx b/packages/nextra-theme-docs/src/components/sidebar.tsx index f1f28e7481..9fac54a9d6 100644 --- a/packages/nextra-theme-docs/src/components/sidebar.tsx +++ b/packages/nextra-theme-docs/src/components/sidebar.tsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect, useMemo, ReactElement } from 'react' +import React, { useState, useEffect, useMemo, ReactElement, memo } from 'react' import cn from 'clsx' import Slugger from 'github-slugger' import { useRouter } from 'next/router' @@ -28,18 +28,18 @@ interface FolderProps { anchors: string[] } -const Folder = React.memo(FolderImpl) +const Folder = memo(FolderImpl) function FolderImpl({ item, anchors }: FolderProps) { const { asPath, locale = DEFAULT_LOCALE } = useRouter() const routeOriginal = getFSRoute(asPath, locale) - const route = routeOriginal.split('#')[0] + const [route] = routeOriginal.split('#') const active = [route, route + '/'].includes(item.route + '/') const activeRouteInside = active || route.startsWith(item.route + '/') const { defaultMenuCollapsed } = useMenuContext() const open = - typeof TreeState[item.route] !== 'undefined' + TreeState[item.route] !== undefined ? TreeState[item.route] : active || activeRouteInside || !defaultMenuCollapsed @@ -55,7 +55,7 @@ function FolderImpl({ item, anchors }: FolderProps) { const link = ( { const clickedToggleIcon = ['svg', 'path'].includes( (e.target as HTMLElement).tagName.toLowerCase() @@ -64,7 +64,7 @@ function FolderImpl({ item, anchors }: FolderProps) { e.preventDefault() } if ((item as Item).withIndexPage) { - // If it's focused, we toggle it. Otherwise always open it. + // If it's focused, we toggle it. Otherwise, always open it. if (active || clickedToggleIcon) { TreeState[item.route] = !open } else { @@ -79,17 +79,15 @@ function FolderImpl({ item, anchors }: FolderProps) { rerender({}) }} > - - {item.title} - path]:origin-center [&>path]:transition-transform', - open && '[&>path]:rotate-90' - )} - /> - + {item.title} + path]:origin-center [&>path]:transition-transform', + open && '[&>path]:rotate-90' + )} + /> ) @@ -147,20 +145,17 @@ interface SeparatorProps { topLevel: boolean } -function Separator({ title, topLevel }: SeparatorProps) { - const hasTitle = title !== undefined - +function Separator({ title, topLevel }: SeparatorProps): ReactElement { const { sidebarSubtitle } = useConfig() - return (
  • - {hasTitle ? ( + {title ? (
    {sidebarSubtitle ? renderComponent(sidebarSubtitle, { title }) @@ -191,71 +186,43 @@ function File({ item, anchors, topLevel }: FileProps): ReactElement { return } - if (anchors?.length) { - if (active) { - let activeIndex = 0 - const anchorInfo = anchors.map((text, i) => { - const slug = slugger.slug(text) - if (activeAnchor[slug]?.isActive) { - activeIndex = i - } - return { text, slug } - }) - - return ( -
  • - { - setMenu(false) - }} - > - {item.title} - - -
  • - ) - } - } - return ( -
  • +
  • { setMenu(false) }} > {item.title} + {active && anchors.length > 0 && ( + + )}
  • ) } @@ -311,16 +278,16 @@ export function Sidebar({ includePlaceholder }: SideBarProps): ReactElement { const config = useConfig() + const { menu } = useMenuContext() const anchors = useMemo( () => headings .filter(v => v.children && v.depth === 2 && v.type === 'heading') - .map(v => getHeadingText(v)) + .map(getHeadingText) .filter(Boolean), [headings] ) - const { menu } = useMenuContext() useEffect(() => { if (menu) { document.body.classList.add('overflow-hidden', 'md:overflow-auto') @@ -373,21 +340,17 @@ export function Sidebar({
    @@ -413,10 +376,7 @@ export function Sidebar({