From 2ae76b8a77c349674a578a6a9435d134fbdedf9f Mon Sep 17 00:00:00 2001 From: Valentin Politov Date: Thu, 23 Mar 2023 03:58:30 +0200 Subject: [PATCH] feat: TypeScript --- components/{authors.js => authors.tsx} | 9 +- components/blog-index.js | 36 - components/blog-index.tsx | 39 + components/diagrams/{cache.js => cache.tsx} | 8 +- .../diagrams/{infinite.js => infinite.tsx} | 8 +- .../{pagination.js => pagination.tsx} | 8 +- .../diagrams/{welcome.js => welcome.tsx} | 8 +- components/features.js | 51 - components/features.module.css | 45 - components/features.tsx | 52 + ...ckend-agnostic.js => backend-agnostic.tsx} | 5 +- .../icons/{lightweight.js => lightweight.tsx} | 3 +- .../icons/{pagination.js => pagination.tsx} | 3 +- .../icons/{realtime.js => realtime.tsx} | 3 +- .../{remote-local.js => remote-local.tsx} | 3 +- ...strategies.js => rendering-strategies.tsx} | 5 +- .../icons/{suspense.js => suspense.tsx} | 3 +- .../icons/{typescript.js => typescript.tsx} | 3 +- components/{logo.js => logo.tsx} | 5 +- ...{use-locales-map.js => use-locales-map.ts} | 43 +- components/{vercel.js => vercel.tsx} | 7 +- components/{video.js => video.tsx} | 19 +- jsconfig.json | 5 - middleware.js => middleware.ts | 0 next-env.d.ts | 5 + next.config.js | 19 +- package.json | 6 +- pages/{_app.js => _app.tsx} | 3 +- pages/{_document.js => _document.tsx} | 6 +- pnpm-lock.yaml | 953 +++++++++--------- tailwind.config.js | 6 +- theme.config.js => theme.config.tsx | 20 +- translations/{svgs.js => svgs.ts} | 30 +- translations/{text.js => text.ts} | 51 +- tsconfig.json | 20 + types.ts | 23 + 36 files changed, 804 insertions(+), 709 deletions(-) rename components/{authors.js => authors.tsx} (67%) delete mode 100644 components/blog-index.js create mode 100644 components/blog-index.tsx rename components/diagrams/{cache.js => cache.tsx} (78%) rename components/diagrams/{infinite.js => infinite.tsx} (80%) rename components/diagrams/{pagination.js => pagination.tsx} (91%) rename components/diagrams/{welcome.js => welcome.tsx} (81%) delete mode 100644 components/features.js delete mode 100644 components/features.module.css create mode 100644 components/features.tsx rename components/icons/{backend-agnostic.js => backend-agnostic.tsx} (83%) rename components/icons/{lightweight.js => lightweight.tsx} (80%) rename components/icons/{pagination.js => pagination.tsx} (78%) rename components/icons/{realtime.js => realtime.tsx} (77%) rename components/icons/{remote-local.js => remote-local.tsx} (81%) rename components/icons/{rendering-strategies.js => rendering-strategies.tsx} (76%) rename components/icons/{suspense.js => suspense.tsx} (79%) rename components/icons/{typescript.js => typescript.tsx} (83%) rename components/{logo.js => logo.tsx} (86%) rename components/{use-locales-map.js => use-locales-map.ts} (51%) rename components/{vercel.js => vercel.tsx} (86%) rename components/{video.js => video.tsx} (83%) delete mode 100644 jsconfig.json rename middleware.js => middleware.ts (100%) create mode 100644 next-env.d.ts rename pages/{_app.js => _app.tsx} (59%) rename pages/{_document.js => _document.tsx} (69%) rename theme.config.js => theme.config.tsx (90%) rename translations/{svgs.js => svgs.ts} (98%) rename translations/{text.js => text.ts} (72%) create mode 100644 tsconfig.json create mode 100644 types.ts diff --git a/components/authors.js b/components/authors.tsx similarity index 67% rename from components/authors.js rename to components/authors.tsx index 1305ff7a..092825bf 100644 --- a/components/authors.js +++ b/components/authors.tsx @@ -1,4 +1,8 @@ -export default function Authors({ date, children, by = "by" }) { +export default function Authors({ + date, + children, + by = "by", +}: React.PropsWithChildren<{ date: string; by?: string }>) { return (
{date} {by} {children} @@ -6,14 +10,13 @@ export default function Authors({ date, children, by = "by" }) { ); } -export function Author({ name, link }) { +export function Author({ name, link }: { name: string; link: string }) { return ( {name} diff --git a/components/blog-index.js b/components/blog-index.js deleted file mode 100644 index e1bb7bfe..00000000 --- a/components/blog-index.js +++ /dev/null @@ -1,36 +0,0 @@ -import { getPagesUnderRoute } from "nextra/context"; -import Link from "next/link"; - -export default function BlogIndex({ more = "Read more" }) { - return getPagesUnderRoute("/blog").map((page) => { - return ( -
-

- - {page.meta?.title || page.frontMatter?.title || page.name} - -

-

- {page.frontMatter?.description}{" "} - - - {more + " →"} - - -

- {page.frontMatter?.date ? ( -

- {page.frontMatter.date} -

- ) : null} -
- ); - }); -} diff --git a/components/blog-index.tsx b/components/blog-index.tsx new file mode 100644 index 00000000..1fac467c --- /dev/null +++ b/components/blog-index.tsx @@ -0,0 +1,39 @@ +import type { FrontMatter, Page } from "nextra"; +import { getPagesUnderRoute } from "nextra/context"; +import Link from "next/link"; + +export default function BlogIndex({ more = "Read more" }: { more?: string }) { + return getPagesUnderRoute("/blog").map( + (page: Page & { frontMatter?: FrontMatter }) => { + return ( +
+

+ + {page.meta?.title || page.frontMatter?.title || page.name} + +

+

+ {page.frontMatter?.description}{" "} + + + {more + " →"} + + +

+ {page.frontMatter?.date ? ( +

+ {page.frontMatter.date} +

+ ) : null} +
+ ); + } + ); +} diff --git a/components/diagrams/cache.js b/components/diagrams/cache.tsx similarity index 78% rename from components/diagrams/cache.js rename to components/diagrams/cache.tsx index e0c0e350..46600cc3 100644 --- a/components/diagrams/cache.js +++ b/components/diagrams/cache.tsx @@ -1,11 +1,15 @@ import useLocalesMap from "../use-locales-map"; import { diagramCachePathsMap } from "../../translations/svgs"; -export const Cache = () => { +export const Cache: React.FC> = ({ + className, + ...props +}) => { const paths = useLocalesMap(diagramCachePathsMap); + const cn = [className, "invert-on-dark"].filter(Boolean).join(" "); return ( - + diff --git a/components/diagrams/infinite.js b/components/diagrams/infinite.tsx similarity index 80% rename from components/diagrams/infinite.js rename to components/diagrams/infinite.tsx index 45d04a11..bbb84dc3 100644 --- a/components/diagrams/infinite.js +++ b/components/diagrams/infinite.tsx @@ -1,11 +1,15 @@ import useLocalesMap from "../use-locales-map"; import { diagramInfinitePathMap } from "../../translations/svgs"; -export const Infinite = () => { +export const Infinite: React.FC> = ({ + className, + ...props +}) => { const path = useLocalesMap(diagramInfinitePathMap); + const cn = [className, "invert-on-dark"].filter(Boolean).join(" "); return ( - + { +export const Pagination: React.FC> = ({ + className, + ...props +}) => { const paths = useLocalesMap(diagramPaginationPathsMap); + const cn = [className, "invert-on-dark"].filter(Boolean).join(" "); return ( - + { +export const Welcome: React.FC> = ({ + className, + ...props +}) => { const path = useLocalesMap(diagramWelcomePathMap); + const cn = [className, "invert-on-dark"].filter(Boolean).join(" "); return ( - + - {icon} -

{text}

-
- ); -} - -/** @type {{ key: string; icon: React.FC }[]} */ -const FEATURES_LIST = [ - { key: "lightweight", icon: }, - { key: "realtime", icon: }, - { key: "suspense", icon: }, - { key: "pagination", icon: }, - { key: "backendAgnostic", icon: }, - { key: "renderingStrategies", icon: }, - { key: "typescript", icon: }, - { key: "remoteLocal", icon: }, -]; - -export default function Features() { - const keyId = useId(); - const title = useLocalesMap(titleMap); - const features = useLocalesMap(featuresMap); - - return ( -
-

{title}

-
- {FEATURES_LIST.map(({ key, icon }) => ( - - ))} -
-
- ); -} diff --git a/components/features.module.css b/components/features.module.css deleted file mode 100644 index d3395d90..00000000 --- a/components/features.module.css +++ /dev/null @@ -1,45 +0,0 @@ -.features { - display: grid; - grid-template-columns: 1fr 1fr 1fr 1fr; - gap: 1rem 2rem; - margin: 2.5rem 0 2rem; -} -.feature { - align-items: center; - display: inline-flex; -} -.feature h4 { - margin: 0 0 0 0.5rem; - font-weight: 700; - font-size: 1.1rem; - white-space: nowrap; -} -@media (max-width: 860px) { - .features { - gap: 1rem 0.5rem; - } - .feature { - padding-left: 0; - justify-content: center; - } - .feature svg { - width: 20px; - } - .feature h4 { - font-size: 0.9rem; - } -} -@media (max-width: 660px) { - .features { - grid-template-columns: 1fr 1fr; - } -} -@media (max-width: 370px) { - .feature h4 { - font-size: 0.8rem; - } - .feature svg { - width: 16px; - stroke-width: 2.5px; - } -} diff --git a/components/features.tsx b/components/features.tsx new file mode 100644 index 00000000..c43f1c55 --- /dev/null +++ b/components/features.tsx @@ -0,0 +1,52 @@ +import { useId } from "react"; +import useLocalesMap from "./use-locales-map"; +import { type FeatureKey, featuresMap, titleMap } from "../translations/text"; + +import BackendAgnosticIcon from "./icons/backend-agnostic"; +import LightweightIcon from "./icons/lightweight"; +import PaginationIcon from "./icons/pagination"; +import RealtimeIcon from "./icons/realtime"; +import RemoteLocalIcon from "./icons/remote-local"; +import RenderingStrategiesIcon from "./icons/rendering-strategies"; +import SuspenseIcon from "./icons/suspense"; +import TypeScriptIcon from "./icons/typescript"; + +type Icon = React.FC>; + +const FEATURE_ICONS: Record = { + lightweight: LightweightIcon, + realtime: RealtimeIcon, + suspense: SuspenseIcon, + pagination: PaginationIcon, + backendAgnostic: BackendAgnosticIcon, + renderingStrategies: RenderingStrategiesIcon, + typescript: TypeScriptIcon, + remoteLocal: RemoteLocalIcon, +}; + +export default function Features() { + const componentId = useId(); + const title = useLocalesMap(titleMap); + const features = useLocalesMap(featuresMap); + + return ( +
+

{title}

+
+ {Object.entries(FEATURE_ICONS).map( + ([key, FeatureIcon]: [FeatureKey, Icon]) => ( +
+ +

+ {features[key]} +

+
+ ) + )} +
+
+ ); +} diff --git a/components/icons/backend-agnostic.js b/components/icons/backend-agnostic.tsx similarity index 83% rename from components/icons/backend-agnostic.js rename to components/icons/backend-agnostic.tsx index 588819de..2708cee9 100644 --- a/components/icons/backend-agnostic.js +++ b/components/icons/backend-agnostic.tsx @@ -1,4 +1,6 @@ -export default function BackendAgnosticIcon() { +export default function BackendAgnosticIcon( + props: React.SVGProps +) { return ( diff --git a/components/icons/lightweight.js b/components/icons/lightweight.tsx similarity index 80% rename from components/icons/lightweight.js rename to components/icons/lightweight.tsx index 89217c79..a35aaad3 100644 --- a/components/icons/lightweight.js +++ b/components/icons/lightweight.tsx @@ -1,4 +1,4 @@ -export default function LightweightIcon() { +export default function LightweightIcon(props: React.SVGProps) { return ( diff --git a/components/icons/pagination.js b/components/icons/pagination.tsx similarity index 78% rename from components/icons/pagination.js rename to components/icons/pagination.tsx index a1442c22..c274adca 100644 --- a/components/icons/pagination.js +++ b/components/icons/pagination.tsx @@ -1,4 +1,4 @@ -export default function PaginationIcon() { +export default function PaginationIcon(props: React.SVGProps) { return ( diff --git a/components/icons/realtime.js b/components/icons/realtime.tsx similarity index 77% rename from components/icons/realtime.js rename to components/icons/realtime.tsx index b876be6f..c06c3c4f 100644 --- a/components/icons/realtime.js +++ b/components/icons/realtime.tsx @@ -1,4 +1,4 @@ -export default function RealtimeIcon() { +export default function RealtimeIcon(props: React.SVGProps) { return ( diff --git a/components/icons/remote-local.js b/components/icons/remote-local.tsx similarity index 81% rename from components/icons/remote-local.js rename to components/icons/remote-local.tsx index 1cce29e4..becaaed6 100644 --- a/components/icons/remote-local.js +++ b/components/icons/remote-local.tsx @@ -1,4 +1,4 @@ -export default function RemoteLocalIcon() { +export default function RemoteLocalIcon(props: React.SVGProps) { return ( diff --git a/components/icons/rendering-strategies.js b/components/icons/rendering-strategies.tsx similarity index 76% rename from components/icons/rendering-strategies.js rename to components/icons/rendering-strategies.tsx index 99da48ff..f28a4586 100644 --- a/components/icons/rendering-strategies.js +++ b/components/icons/rendering-strategies.tsx @@ -1,4 +1,6 @@ -export default function RenderingStrategiesIcon() { +export default function RenderingStrategiesIcon( + props: React.SVGProps +) { return ( diff --git a/components/icons/suspense.js b/components/icons/suspense.tsx similarity index 79% rename from components/icons/suspense.js rename to components/icons/suspense.tsx index 6b24bd6e..9a44aff3 100644 --- a/components/icons/suspense.js +++ b/components/icons/suspense.tsx @@ -1,4 +1,4 @@ -export default function SuspenseIcon() { +export default function SuspenseIcon(props: React.SVGProps) { return ( diff --git a/components/icons/typescript.js b/components/icons/typescript.tsx similarity index 83% rename from components/icons/typescript.js rename to components/icons/typescript.tsx index 72ca39a0..505e39b0 100644 --- a/components/icons/typescript.js +++ b/components/icons/typescript.tsx @@ -1,4 +1,4 @@ -export default function TypescriptIcon() { +export default function TypescriptIcon(props: React.SVGProps) { return ( diff --git a/components/logo.js b/components/logo.tsx similarity index 86% rename from components/logo.js rename to components/logo.tsx index 61ac3652..adbfa33e 100644 --- a/components/logo.js +++ b/components/logo.tsx @@ -1,6 +1,6 @@ -export default function Logo({ height }) { +export default function Logo(props: React.SVGProps) { return ( - + ); } - diff --git a/components/use-locales-map.js b/components/use-locales-map.ts similarity index 51% rename from components/use-locales-map.js rename to components/use-locales-map.ts index cfc01ef5..86b71e37 100644 --- a/components/use-locales-map.js +++ b/components/use-locales-map.ts @@ -1,17 +1,9 @@ import { useRouter } from "next/router"; +import { LocalesMap, TypedNextRouter } from "../types"; + +export default function useLocalesMap(localesMap: LocalesMap): T { + const { locale, defaultLocale } = useRouter() as TypedNextRouter; -/** - * @typedef {"en-US"} DefaultLocale - * @typedef {DefaultLocale | "zh-CN" | "es-ES" | "pt-BR" | "ja" | "ko" | "ru"} Locale - * @typedef {{locale?: Locale | undefined; locales?: Locale[] | undefined; defaultLocale?: DefaultLocale | undefined}} TypedRouter - * @typedef {Omit & TypedRouter} NextRouter - * @template T - * @type {(localesMap: Record) => T} - */ -export default function useLocalesMap(localesMap) { - /** @type {NextRouter} */ - const router = useRouter(); - const { locale, defaultLocale } = router; if (!localesMap) { throw new Error("Pass a locales map as argument to useLocalesMap"); } @@ -35,31 +27,24 @@ export default function useLocalesMap(localesMap) { ); } - if (["string", "number", "symbol"].includes(typeof localesMap[defaultLocale])) { - return localesMap[locale] || localesMap[defaultLocale]; + if ( + ["string", "number", "symbol"].includes(typeof localesMap[defaultLocale]) + ) { + return (localesMap[locale] as T) ?? localesMap[defaultLocale]; } - const target = JSON.parse(JSON.stringify(localesMap[defaultLocale])); + const target: T = JSON.parse(JSON.stringify(localesMap[defaultLocale])); return mergeDeep(target, localesMap[locale]); } -/** - * Simple object check. - * @param {any} item - * @returns {boolean} - */ -function isObject(item) { +export function isObject(item: any): boolean { return item && typeof item === "object" && !Array.isArray(item); } -/** - * Deep merge two objects. - * @template T - * @param {Record} target - * @param {Record} sources - * @returns {Record} - */ -function mergeDeep(target, ...sources) { +export function mergeDeep = {}>( + target: T, + ...sources: Partial[] +): T { if (!sources.length) return target; const source = sources.shift(); diff --git a/components/vercel.js b/components/vercel.tsx similarity index 86% rename from components/vercel.js rename to components/vercel.tsx index ed6c3371..87af2e47 100644 --- a/components/vercel.js +++ b/components/vercel.tsx @@ -1,6 +1,9 @@ -export default function Vercel({ height = 20 }) { +export default function Vercel({ + height = 20, + ...props +}: React.SVGProps) { return ( - + (); - const setRefs = useCallback( + const setRefs = useCallback<(node?: HTMLVideoElement) => void>( (node) => { // Ref's from useRef needs to have the node assigned to `current` videoRef.current = node; @@ -66,4 +75,4 @@ export default function Video({ src, caption, ratio, className = "" }) { )} ); -}; +} diff --git a/jsconfig.json b/jsconfig.json deleted file mode 100644 index b639b0f8..00000000 --- a/jsconfig.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": "." - } -} \ No newline at end of file diff --git a/middleware.js b/middleware.ts similarity index 100% rename from middleware.js rename to middleware.ts diff --git a/next-env.d.ts b/next-env.d.ts new file mode 100644 index 00000000..4f11a03d --- /dev/null +++ b/next-env.d.ts @@ -0,0 +1,5 @@ +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/next.config.js b/next.config.js index 4dd22e08..3ea1e188 100644 --- a/next.config.js +++ b/next.config.js @@ -1,14 +1,16 @@ -const withNextra = require("nextra")({ +/** @type {import('nextra').NextraConfig} */ +const nextraConfig = { theme: "nextra-theme-docs", - themeConfig: "./theme.config.js", + themeConfig: "./theme.config.tsx", staticImage: true, flexsearch: { codeblocks: false, }, defaultShowCopyCode: true, -}); +}; -module.exports = withNextra({ +/** @type {import('next').NextConfig} */ +const nextConfig = { i18n: { locales: ["en-US", "zh-CN", "es-ES", "pt-BR", "ja", "ko", "ru"], defaultLocale: "en-US", @@ -63,4 +65,11 @@ module.exports = withNextra({ ]; }, reactStrictMode: true, -}); +}; + +/** @type {import('nextra').Nextra} */ +const nextra = require("nextra"); + +const withNextra = nextra(nextraConfig); + +module.exports = withNextra(nextConfig); diff --git a/package.json b/package.json index cc0164a8..94c92bd8 100644 --- a/package.json +++ b/package.json @@ -23,9 +23,13 @@ "react-intersection-observer": "^9.4.3" }, "devDependencies": { + "@types/node": "^18.15.11", + "@types/react": "^18.0.35", + "@types/react-dom": "^18.0.11", "autoprefixer": "^10.4.14", "postcss": "^8.4.21", - "tailwindcss": "^3.2.7" + "tailwindcss": "^3.2.7", + "typescript": "^5.0.4" }, "prettier": { "embeddedLanguageFormatting": "off", diff --git a/pages/_app.js b/pages/_app.tsx similarity index 59% rename from pages/_app.js rename to pages/_app.tsx index fd5f2517..ee8ab9d6 100644 --- a/pages/_app.js +++ b/pages/_app.tsx @@ -1,7 +1,8 @@ import "../styles.css"; import { Analytics } from "@vercel/analytics/react"; +import type { AppProps } from "next/app"; -export default function Nextra({ Component, pageProps }) { +export default function Nextra({ Component, pageProps }: AppProps) { return ( <> diff --git a/pages/_document.js b/pages/_document.tsx similarity index 69% rename from pages/_document.js rename to pages/_document.tsx index 63b12c43..47622f02 100644 --- a/pages/_document.js +++ b/pages/_document.tsx @@ -1,5 +1,5 @@ -import React from 'react' -import Document, { Html, Head, Main, NextScript } from 'next/document' +import React from "react"; +import Document, { Html, Head, Main, NextScript } from "next/document"; import { SkipNavLink } from "nextra-theme-docs"; class MyDocument extends Document { @@ -17,4 +17,4 @@ class MyDocument extends Document { } } -export default MyDocument +export default MyDocument; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ed099a81..f365cfb0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,6 +1,9 @@ lockfileVersion: 5.4 specifiers: + '@types/node': ^18.15.11 + '@types/react': ^18.0.35 + '@types/react-dom': ^18.0.11 '@vercel/analytics': ^0.1.11 autoprefixer: ^10.4.14 focus-visible: ^5.2.0 @@ -13,6 +16,7 @@ specifiers: react-dom: ^18.2.0 react-intersection-observer: ^9.4.3 tailwindcss: ^3.2.7 + typescript: ^5.0.4 dependencies: '@vercel/analytics': 0.1.11_react@18.2.0 @@ -26,17 +30,21 @@ dependencies: react-intersection-observer: 9.4.3_react@18.2.0 devDependencies: + '@types/node': 18.15.11 + '@types/react': 18.0.35 + '@types/react-dom': 18.0.11 autoprefixer: 10.4.14_postcss@8.4.21 postcss: 8.4.21 tailwindcss: 3.2.7_postcss@8.4.21 + typescript: 5.0.4 packages: - /@babel/runtime/7.16.7: - resolution: {integrity: sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==} + /@babel/runtime/7.21.0: + resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.9 + regenerator-runtime: 0.13.11 dev: false /@headlessui/react/1.7.13_biqbaboplfbrettd7655fr4n2y: @@ -55,22 +63,22 @@ packages: resolution: {integrity: sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==} dependencies: '@types/estree-jsx': 1.0.0 - '@types/mdx': 2.0.1 - estree-util-build-jsx: 2.0.0 - estree-util-is-identifier-name: 2.0.0 - estree-util-to-js: 1.1.0 - estree-walker: 3.0.1 - hast-util-to-estree: 2.0.2 + '@types/mdx': 2.0.3 + estree-util-build-jsx: 2.2.2 + estree-util-is-identifier-name: 2.1.0 + estree-util-to-js: 1.2.0 + estree-walker: 3.0.3 + hast-util-to-estree: 2.3.2 markdown-extensions: 1.1.1 - periscopic: 3.0.4 - remark-mdx: 2.0.0 + periscopic: 3.1.0 + remark-mdx: 2.3.0 remark-parse: 10.0.1 remark-rehype: 10.1.0 - unified: 10.1.1 - unist-util-position-from-estree: 1.1.1 - unist-util-stringify-position: 3.0.0 - unist-util-visit: 4.1.1 - vfile: 5.3.6 + unified: 10.1.2 + unist-util-position-from-estree: 1.1.2 + unist-util-stringify-position: 3.0.3 + unist-util-visit: 4.1.2 + vfile: 5.3.7 transitivePeerDependencies: - supports-color dev: false @@ -80,8 +88,8 @@ packages: peerDependencies: react: '>=16' dependencies: - '@types/mdx': 2.0.1 - '@types/react': 17.0.38 + '@types/mdx': 2.0.3 + '@types/react': 18.0.35 react: 18.2.0 dev: false @@ -340,7 +348,7 @@ packages: engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.13.0 + fastq: 1.15.0 dev: true /@popperjs/core/2.11.6: @@ -350,13 +358,13 @@ packages: /@swc/helpers/0.4.14: resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} dependencies: - tslib: 2.4.0 + tslib: 2.5.0 dev: false /@types/acorn/4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 0.0.50 + '@types/estree': 1.0.0 dev: false /@types/debug/4.1.7: @@ -365,24 +373,14 @@ packages: '@types/ms': 0.7.31 dev: false - /@types/estree-jsx/0.0.1: - resolution: {integrity: sha512-gcLAYiMfQklDCPjQegGn0TBAn9it05ISEsEhlKQUddIk7o2XDokOcTN7HBO8tznM0D9dGezvHEfRZBfZf6me0A==} - dependencies: - '@types/estree': 0.0.50 - dev: false - /@types/estree-jsx/1.0.0: resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} dependencies: - '@types/estree': 0.0.50 - dev: false - - /@types/estree/0.0.46: - resolution: {integrity: sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==} + '@types/estree': 1.0.0 dev: false - /@types/estree/0.0.50: - resolution: {integrity: sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==} + /@types/estree/1.0.0: + resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==} dev: false /@types/hast/2.3.4: @@ -399,43 +397,42 @@ packages: resolution: {integrity: sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==} dev: false - /@types/mdast/3.0.10: - resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==} + /@types/mdast/3.0.11: + resolution: {integrity: sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==} dependencies: '@types/unist': 2.0.6 dev: false - /@types/mdurl/1.0.2: - resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==} - dev: false - - /@types/mdx/2.0.1: - resolution: {integrity: sha512-JPEv4iAl0I+o7g8yVWDwk30es8mfVrjkvh5UeVR2sYPpZCK44vrAPsbJpIS+rJAUxLgaSAMKTEH5Vn5qd9XsrQ==} + /@types/mdx/2.0.3: + resolution: {integrity: sha512-IgHxcT3RC8LzFLhKwP3gbMPeaK7BM9eBH46OdapPA7yvuIUJ8H6zHZV53J8hGZcTSnt95jANt+rTBNUUc22ACQ==} dev: false /@types/ms/0.7.31: resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} dev: false - /@types/parse5/6.0.3: - resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} - dev: false + /@types/node/18.15.11: + resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==} + dev: true - /@types/prop-types/15.7.4: - resolution: {integrity: sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==} - dev: false + /@types/prop-types/15.7.5: + resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - /@types/react/17.0.38: - resolution: {integrity: sha512-SI92X1IA+FMnP3qM5m4QReluXzhcmovhZnLNm3pyeQlooi02qI7sLiepEYqT678uNiyc25XfCqxREFpy3W7YhQ==} + /@types/react-dom/18.0.11: + resolution: {integrity: sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==} dependencies: - '@types/prop-types': 15.7.4 - '@types/scheduler': 0.16.2 - csstype: 3.0.10 - dev: false + '@types/react': 18.0.35 + dev: true - /@types/scheduler/0.16.2: - resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} - dev: false + /@types/react/18.0.35: + resolution: {integrity: sha512-6Laome31HpetaIUGFWl1VQ3mdSImwxtFZ39rh059a1MNnKGqBpC88J6NJ8n/Is3Qx7CefDGLgf/KhN/sYCf7ag==} + dependencies: + '@types/prop-types': 15.7.5 + '@types/scheduler': 0.16.3 + csstype: 3.1.2 + + /@types/scheduler/0.16.3: + resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==} /@types/unist/2.0.6: resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} @@ -449,12 +446,12 @@ packages: react: 18.2.0 dev: false - /acorn-jsx/5.3.2_acorn@8.7.0: + /acorn-jsx/5.3.2_acorn@8.8.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 8.7.0 + acorn: 8.8.2 dev: false /acorn-node/1.8.2: @@ -476,8 +473,8 @@ packages: hasBin: true dev: true - /acorn/8.7.0: - resolution: {integrity: sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==} + /acorn/8.8.2: + resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} hasBin: true dev: false @@ -493,8 +490,8 @@ packages: color-convert: 1.9.3 dev: false - /anymatch/3.1.2: - resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + /anymatch/3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 @@ -523,8 +520,8 @@ packages: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: false - /astring/1.8.1: - resolution: {integrity: sha512-Aj3mbwVzj7Vve4I/v2JYOPFkCGM2YS7OqQTNSxmUR+LECRpokuPgAYghePgr6SALDo5bD5DlfbSaYjOzGJZOLQ==} + /astring/1.8.4: + resolution: {integrity: sha512-97a+l2LBU3Op3bBQEff79i/E4jMD2ZLFD8rHx9B6mXyB2uQwhJQYfiDqUwtfjF4QA1F2qs//N6Cw8LetMbQjcw==} hasBin: true dev: false @@ -536,7 +533,7 @@ packages: postcss: ^8.1.0 dependencies: browserslist: 4.21.5 - caniuse-lite: 1.0.30001464 + caniuse-lite: 1.0.30001469 fraction.js: 4.2.0 normalize-range: 0.1.2 picocolors: 1.0.0 @@ -565,8 +562,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001464 - electron-to-chromium: 1.4.284 + caniuse-lite: 1.0.30001469 + electron-to-chromium: 1.4.336 node-releases: 2.0.10 update-browserslist-db: 1.0.10_browserslist@4.21.5 dev: true @@ -576,8 +573,8 @@ packages: engines: {node: '>= 6'} dev: true - /caniuse-lite/1.0.30001464: - resolution: {integrity: sha512-oww27MtUmusatpRpCGSOneQk2/l5czXANDSFvsc7VuOQ86s3ANhZetpwXNf1zY/zdfP63Xvjz325DAdAoES13g==} + /caniuse-lite/1.0.30001469: + resolution: {integrity: sha512-Rcp7221ScNqQPP3W+lVOYDyjdR6dC+neEQCttoNr5bAyz54AboB4iwpnWgyi8P4YUsPybVzT4LgWiBbI3drL4g==} /ccount/2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -600,8 +597,8 @@ packages: resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} dev: false - /character-entities/2.0.1: - resolution: {integrity: sha512-OzmutCf2Kmc+6DrFrrPS8/tDh2+DpnrfzdICHWhcVC9eOd0N1PXmQEE1a8iM4IziIAG+8tmTq3K+oo0ubH6RRQ==} + /character-entities/2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} dev: false /character-reference-invalid/2.0.1: @@ -612,7 +609,7 @@ packages: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} dependencies: - anymatch: 3.1.2 + anymatch: 3.1.3 braces: 3.0.2 glob-parent: 5.1.2 is-binary-path: 2.1.0 @@ -654,8 +651,8 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true - /comma-separated-tokens/2.0.2: - resolution: {integrity: sha512-G5yTt3KQN4Yn7Yk4ed73hlZ1evrFKXeUW3086p3PRFNp7m2vIjI6Pg+Kgb+oyzhd9F2qdcoj67+y3SdxL5XWsg==} + /comma-separated-tokens/2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} dev: false /commander/8.3.0: @@ -663,8 +660,8 @@ packages: engines: {node: '>= 12'} dev: false - /compute-scroll-into-view/2.0.3: - resolution: {integrity: sha512-mj/AjC7WqXeVlUB6zUq5Qrivb6et0kyasDQcbCWLDusYUqaXng+BfOnhCdRqPOa5/dWNn5e9+u40H6w2BYRdNQ==} + /compute-scroll-into-view/3.0.0: + resolution: {integrity: sha512-Yk1An4qzo5++Cu6peT9PsmRKIU8tALpmdoE09n//AfGQFcPfx21/tMGMsmKYmLJWaBJrGOJ5Jz5hoU+7cZZUWQ==} dev: false /cross-spawn/5.1.0: @@ -681,12 +678,11 @@ packages: hasBin: true dev: true - /csstype/3.0.10: - resolution: {integrity: sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==} - dev: false + /csstype/3.1.2: + resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} - /debug/4.3.3: - resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==} + /debug/4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -697,18 +693,18 @@ packages: ms: 2.1.2 dev: false - /decode-named-character-reference/1.0.1: - resolution: {integrity: sha512-YV/0HQHreRwKb7uBopyIkLG17jG6Sv2qUchk9qSoVJ2f+flwRsPNBO0hAnjt6mTNYUT+vw9Gy2ihXg4sUWPi2w==} + /decode-named-character-reference/1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} dependencies: - character-entities: 2.0.1 + character-entities: 2.0.2 dev: false - /defined/1.0.0: - resolution: {integrity: sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==} + /defined/1.0.1: + resolution: {integrity: sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==} dev: true - /dequal/2.0.2: - resolution: {integrity: sha512-q9K8BlJVxK7hQYqa6XISGmBZbtQQWVXSrRrWreHC94rMt1QL/Impruc+7p2CYSYuVIUr+YCt6hjrs1kkdJRTug==} + /dequal/2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} dev: false @@ -718,16 +714,16 @@ packages: hasBin: true dependencies: acorn-node: 1.8.2 - defined: 1.0.0 - minimist: 1.2.7 + defined: 1.0.1 + minimist: 1.2.8 dev: true /didyoumean/1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} dev: true - /diff/5.0.0: - resolution: {integrity: sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==} + /diff/5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} engines: {node: '>=0.3.1'} dev: false @@ -735,8 +731,8 @@ packages: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} dev: true - /electron-to-chromium/1.4.284: - resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==} + /electron-to-chromium/1.4.336: + resolution: {integrity: sha512-yLaoSY/ngjgRpEGU4ueeW0vlj456idQBn74r6s1yutoOIadvd7rwt05TGenPj0PoetJ5pEHomVkmfTdIgqPfJw==} dev: true /escalade/3.1.1: @@ -760,29 +756,29 @@ packages: hasBin: true dev: false - /estree-util-attach-comments/2.0.0: - resolution: {integrity: sha512-kT9YVRvlt2ewPp9BazfIIgXMGsXOEpOm57bK8aa4F3eOEndMml2JAETjWaG3SZYHmC6axSNIzHGY718dYwIuVg==} + /estree-util-attach-comments/2.1.1: + resolution: {integrity: sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==} dependencies: - '@types/estree': 0.0.46 + '@types/estree': 1.0.0 dev: false - /estree-util-build-jsx/2.0.0: - resolution: {integrity: sha512-d49hPGqBCJF/bF06g1Ywg7zjH1mrrUdPPrixBlKBxcX4WvMYlUUJ8BkrwlzWc8/fm6XqGgk5jilhgeZBDEGwOQ==} + /estree-util-build-jsx/2.2.2: + resolution: {integrity: sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==} dependencies: - '@types/estree-jsx': 0.0.1 - estree-util-is-identifier-name: 2.0.0 - estree-walker: 3.0.1 + '@types/estree-jsx': 1.0.0 + estree-util-is-identifier-name: 2.1.0 + estree-walker: 3.0.3 dev: false - /estree-util-is-identifier-name/2.0.0: - resolution: {integrity: sha512-aXXZFVMnBBDRP81vS4YtAYJ0hUkgEsXea7lNKWCOeaAquGb1Jm2rcONPB5fpzwgbNxulTvrWuKnp9UElUGAKeQ==} + /estree-util-is-identifier-name/2.1.0: + resolution: {integrity: sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==} dev: false - /estree-util-to-js/1.1.0: - resolution: {integrity: sha512-490lbfCcpLk+ofK6HCgqDfYs4KAfq6QVvDw3+Bm1YoKRgiOjKiKYGAVQE1uwh7zVxBgWhqp4FDtp5SqunpUk1A==} + /estree-util-to-js/1.2.0: + resolution: {integrity: sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==} dependencies: '@types/estree-jsx': 1.0.0 - astring: 1.8.1 + astring: 1.8.4 source-map: 0.7.4 dev: false @@ -793,15 +789,17 @@ packages: is-plain-obj: 3.0.0 dev: false - /estree-util-visit/1.1.0: - resolution: {integrity: sha512-3lXJ4Us9j8TUif9cWcQy81t9p5OLasnDuuhrFiqb+XstmKC1d1LmrQWYsY49/9URcfHE64mPypDBaNK9NwWDPQ==} + /estree-util-visit/1.2.1: + resolution: {integrity: sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==} dependencies: - '@types/estree-jsx': 0.0.1 + '@types/estree-jsx': 1.0.0 '@types/unist': 2.0.6 dev: false - /estree-walker/3.0.1: - resolution: {integrity: sha512-woY0RUD87WzMBUiZLx8NsYr23N5BKsOMZHhu2hoNRVh6NXGfoiT1KOL8G3UHlJAnEDGmfa5ubNA/AacfG+Kb0g==} + /estree-walker/3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + dependencies: + '@types/estree': 1.0.0 dev: false /execa/0.8.0: @@ -813,7 +811,7 @@ packages: is-stream: 1.1.0 npm-run-path: 2.0.2 p-finally: 1.0.0 - signal-exit: 3.0.6 + signal-exit: 3.0.7 strip-eof: 1.0.0 dev: false @@ -839,8 +837,8 @@ packages: micromatch: 4.0.5 dev: true - /fastq/1.13.0: - resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} + /fastq/1.15.0: + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} dependencies: reusify: 1.0.4 dev: true @@ -852,8 +850,8 @@ packages: to-regex-range: 5.0.1 dev: true - /flexsearch/0.7.21: - resolution: {integrity: sha512-W7cHV7Hrwjid6lWmy0IhsWDFQboWSng25U3VVywpHOTJnnAZNPScog67G+cVpeX9f7yDD21ih0WDrMMT+JoaYg==} + /flexsearch/0.7.31: + resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==} dev: false /focus-visible/5.2.0: @@ -912,8 +910,8 @@ packages: is-glob: 4.0.3 dev: true - /graceful-fs/4.2.10: - resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} + /graceful-fs/4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: false /gray-matter/4.0.3: @@ -947,73 +945,74 @@ packages: type-fest: 1.4.0 dev: false - /hast-util-from-parse5/7.1.0: - resolution: {integrity: sha512-m8yhANIAccpU4K6+121KpPP55sSl9/samzQSQGpb0mTExcNh2WlvjtMwSWFhg6uqD4Rr6Nfa8N6TMypQM51rzQ==} + /hast-util-from-parse5/7.1.2: + resolution: {integrity: sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==} dependencies: '@types/hast': 2.3.4 - '@types/parse5': 6.0.3 '@types/unist': 2.0.6 - hastscript: 7.1.0 - property-information: 6.1.1 - vfile: 5.3.6 - vfile-location: 4.0.1 + hastscript: 7.2.0 + property-information: 6.2.0 + vfile: 5.3.7 + vfile-location: 4.1.0 web-namespaces: 2.0.1 dev: false - /hast-util-is-element/2.1.2: - resolution: {integrity: sha512-thjnlGAnwP8ef/GSO1Q8BfVk2gundnc2peGQqEg2kUt/IqesiGg/5mSwN2fE7nLzy61pg88NG6xV+UrGOrx9EA==} + /hast-util-is-element/2.1.3: + resolution: {integrity: sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA==} dependencies: '@types/hast': 2.3.4 '@types/unist': 2.0.6 dev: false - /hast-util-parse-selector/3.1.0: - resolution: {integrity: sha512-AyjlI2pTAZEOeu7GeBPZhROx0RHBnydkQIXlhnFzDi0qfXTmGUWoCYZtomHbrdrheV4VFUlPcfJ6LMF5T6sQzg==} + /hast-util-parse-selector/3.1.1: + resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} dependencies: '@types/hast': 2.3.4 dev: false - /hast-util-to-estree/2.0.2: - resolution: {integrity: sha512-UQrZVeBj6A9od0lpFvqHKNSH9zvDrNoyWKbveu1a2oSCXEDUI+3bnd6BoiQLPnLrcXXn/jzJ6y9hmJTTlvf8lQ==} + /hast-util-to-estree/2.3.2: + resolution: {integrity: sha512-YYDwATNdnvZi3Qi84iatPIl1lWpXba1MeNrNbDfJfVzEBZL8uUmtR7mt7bxKBC8kuAuvb0bkojXYZzsNHyHCLg==} dependencies: - '@types/estree-jsx': 0.0.1 + '@types/estree': 1.0.0 + '@types/estree-jsx': 1.0.0 '@types/hast': 2.3.4 '@types/unist': 2.0.6 - comma-separated-tokens: 2.0.2 - estree-util-attach-comments: 2.0.0 - estree-util-is-identifier-name: 2.0.0 - hast-util-whitespace: 2.0.0 - mdast-util-mdx-expression: 1.1.1 - mdast-util-mdxjs-esm: 1.1.1 - property-information: 6.1.1 - space-separated-tokens: 2.0.1 - style-to-object: 0.3.0 - unist-util-position: 4.0.1 - zwitch: 2.0.2 + comma-separated-tokens: 2.0.3 + estree-util-attach-comments: 2.1.1 + estree-util-is-identifier-name: 2.1.0 + hast-util-whitespace: 2.0.1 + mdast-util-mdx-expression: 1.3.2 + mdast-util-mdxjs-esm: 1.3.1 + property-information: 6.2.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.1 + unist-util-position: 4.0.4 + zwitch: 2.0.4 transitivePeerDependencies: - supports-color dev: false - /hast-util-to-text/3.1.1: - resolution: {integrity: sha512-7S3mOBxACy8syL45hCn3J7rHqYaXkxRfsX6LXEU5Shz4nt4GxdjtMUtG+T6G/ZLUHd7kslFAf14kAN71bz30xA==} + /hast-util-to-text/3.1.2: + resolution: {integrity: sha512-tcllLfp23dJJ+ju5wCCZHVpzsQQ43+moJbqVX3jNWPB7z/KFC4FyZD6R7y94cHL6MQ33YtMZL8Z0aIXXI4XFTw==} dependencies: '@types/hast': 2.3.4 - hast-util-is-element: 2.1.2 - unist-util-find-after: 4.0.0 + '@types/unist': 2.0.6 + hast-util-is-element: 2.1.3 + unist-util-find-after: 4.0.1 dev: false - /hast-util-whitespace/2.0.0: - resolution: {integrity: sha512-Pkw+xBHuV6xFeJprJe2BBEoDV+AvQySaz3pPDRUs5PNZEMQjpXJJueqrpcHIXxnWTcAGi/UOCgVShlkY6kLoqg==} + /hast-util-whitespace/2.0.1: + resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} dev: false - /hastscript/7.1.0: - resolution: {integrity: sha512-uBjaTTLN0MkCZxY/R2fWUOcu7FRtUVzKRO5P/RAfgsu3yFiMB1JWCO4AjeVkgHxAira1f2UecHK5WfS9QurlWA==} + /hastscript/7.2.0: + resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} dependencies: '@types/hast': 2.3.4 - comma-separated-tokens: 2.0.2 - hast-util-parse-selector: 3.1.0 - property-information: 6.1.1 - space-separated-tokens: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 3.1.1 + property-information: 6.2.0 + space-separated-tokens: 2.0.2 dev: false /inline-style-parser/0.1.1: @@ -1093,15 +1092,15 @@ packages: engines: {node: '>=10'} dev: false - /is-plain-obj/4.0.0: - resolution: {integrity: sha512-NXRbBtUdBioI73y/HmOhogw/U5msYPC9DAtGkJXeFcFWSFZw0mCUsPxk/snTuJHzNKA8kLBK4rH97RMB1BfCXw==} + /is-plain-obj/4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} dev: false - /is-reference/3.0.0: - resolution: {integrity: sha512-Eo1W3wUoHWoCoVM4GVl/a+K0IgiqE5aIo4kJABFyMum1ZORlPkC+UC357sSQUL5w5QCE5kCC9upl75b7+7CY/Q==} + /is-reference/3.0.1: + resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} dependencies: - '@types/estree': 0.0.50 + '@types/estree': 1.0.0 dev: false /is-ssh/1.4.0: @@ -1168,13 +1167,13 @@ packages: engines: {node: '>=0.10.0'} dev: false - /kleur/4.1.4: - resolution: {integrity: sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==} + /kleur/4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} dev: false - /lilconfig/2.0.6: - resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==} + /lilconfig/2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} dev: true @@ -1182,8 +1181,8 @@ packages: resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} dev: false - /longest-streak/3.0.1: - resolution: {integrity: sha512-cHlYSUpL2s7Fb3394mYxwTYj8niTaNHUCLr0qdiCXQfSjfuA7CKofpX2uSwEfFDQ0EB7JcnMnm+GjbqqoinYYg==} + /longest-streak/3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} dev: false /loose-envify/1.4.0: @@ -1205,184 +1204,209 @@ packages: engines: {node: '>=0.10.0'} dev: false - /markdown-table/3.0.2: - resolution: {integrity: sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA==} + /markdown-table/3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} dev: false /match-sorter/6.3.1: resolution: {integrity: sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==} dependencies: - '@babel/runtime': 7.16.7 + '@babel/runtime': 7.21.0 remove-accents: 0.4.2 dev: false - /mdast-util-definitions/5.1.0: - resolution: {integrity: sha512-5hcR7FL2EuZ4q6lLMUK5w4lHT2H3vqL9quPvYZ/Ku5iifrirfMHiGdhxdXMUbUkDmz5I+TYMd7nbaxUhbQkfpQ==} + /mdast-util-definitions/5.1.2: + resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} dependencies: - '@types/mdast': 3.0.10 + '@types/mdast': 3.0.11 '@types/unist': 2.0.6 - unist-util-visit: 3.1.0 + unist-util-visit: 4.1.2 dev: false - /mdast-util-find-and-replace/2.1.0: - resolution: {integrity: sha512-1w1jbqAd13oU78QPBf5223+xB+37ecNtQ1JElq2feWols5oEYAl+SgNDnOZipe7NfLemoEt362yUS15/wip4mw==} + /mdast-util-find-and-replace/2.2.2: + resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==} dependencies: + '@types/mdast': 3.0.11 escape-string-regexp: 5.0.0 - unist-util-is: 5.1.1 - unist-util-visit-parents: 4.1.1 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 dev: false - /mdast-util-from-markdown/1.2.0: - resolution: {integrity: sha512-iZJyyvKD1+K7QX1b5jXdE7Sc5dtoTry1vzV28UZZe8Z1xVnB/czKntJ7ZAkG0tANqRnBF6p3p7GpU1y19DTf2Q==} + /mdast-util-from-markdown/1.3.0: + resolution: {integrity: sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==} dependencies: - '@types/mdast': 3.0.10 + '@types/mdast': 3.0.11 '@types/unist': 2.0.6 - decode-named-character-reference: 1.0.1 - mdast-util-to-string: 3.1.0 - micromark: 3.0.10 + decode-named-character-reference: 1.0.2 + mdast-util-to-string: 3.1.1 + micromark: 3.1.0 micromark-util-decode-numeric-character-reference: 1.0.0 micromark-util-decode-string: 1.0.2 micromark-util-normalize-identifier: 1.0.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - unist-util-stringify-position: 3.0.0 - uvu: 0.5.3 + unist-util-stringify-position: 3.0.3 + uvu: 0.5.6 transitivePeerDependencies: - supports-color dev: false - /mdast-util-gfm-autolink-literal/1.0.2: - resolution: {integrity: sha512-FzopkOd4xTTBeGXhXSBU0OCDDh5lUj2rd+HQqG92Ld+jL4lpUfgX2AT2OHAVP9aEeDKp7G92fuooSZcYJA3cRg==} + /mdast-util-gfm-autolink-literal/1.0.3: + resolution: {integrity: sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==} dependencies: - '@types/mdast': 3.0.10 + '@types/mdast': 3.0.11 ccount: 2.0.1 - mdast-util-find-and-replace: 2.1.0 + mdast-util-find-and-replace: 2.2.2 micromark-util-character: 1.1.0 dev: false - /mdast-util-gfm-footnote/1.0.0: - resolution: {integrity: sha512-qeg9YoS2YYP6OBmMyUFxKXb6BLwAsbGidIxgwDAXHIMYZQhIwe52L9BSJs+zP29Jp5nSERPkmG3tSwAN23/ZbQ==} + /mdast-util-gfm-footnote/1.0.2: + resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-to-markdown: 1.3.0 + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 micromark-util-normalize-identifier: 1.0.0 - unist-util-visit: 4.1.1 dev: false - /mdast-util-gfm-strikethrough/1.0.0: - resolution: {integrity: sha512-gM9ipBUdRxYa6Yq1Hd8Otg6jEn/dRxFZ1F9ZX4QHosHOexLGqNZO2dh0A+YFbUEd10RcKjnjb4jOfJJzoXXUew==} + /mdast-util-gfm-strikethrough/1.0.3: + resolution: {integrity: sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-to-markdown: 1.3.0 + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 dev: false - /mdast-util-gfm-table/1.0.2: - resolution: {integrity: sha512-pPekvCTChFBF8uCq8bVyQwar8NBU/TaXIy44jj/UzmjMgPBHIa1B1ge8a0JVgzhqgXQAMvGT+PgiKlicdLGfDQ==} + /mdast-util-gfm-table/1.0.7: + resolution: {integrity: sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==} dependencies: - markdown-table: 3.0.2 - mdast-util-to-markdown: 1.3.0 + '@types/mdast': 3.0.11 + markdown-table: 3.0.3 + mdast-util-from-markdown: 1.3.0 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color dev: false - /mdast-util-gfm-task-list-item/1.0.0: - resolution: {integrity: sha512-dwkzOTjQe8JCCHVE3Cb0pLHTYLudf7t9WCAnb20jI8/dW+VHjgWhjtIUVA3oigNkssgjEwX+i+3XesUdCnXGyA==} + /mdast-util-gfm-task-list-item/1.0.2: + resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-to-markdown: 1.3.0 + '@types/mdast': 3.0.11 + mdast-util-to-markdown: 1.5.0 dev: false - /mdast-util-gfm/2.0.0: - resolution: {integrity: sha512-wMwejlTN3EQADPFuvxe8lmGsay3+f6gSJKdAHR6KBJzpcxvsjJSILB9K6u6G7eQLC7iOTyVIHYGui9uBc9r1Tg==} + /mdast-util-gfm/2.0.2: + resolution: {integrity: sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==} dependencies: - mdast-util-gfm-autolink-literal: 1.0.2 - mdast-util-gfm-footnote: 1.0.0 - mdast-util-gfm-strikethrough: 1.0.0 - mdast-util-gfm-table: 1.0.2 - mdast-util-gfm-task-list-item: 1.0.0 + mdast-util-from-markdown: 1.3.0 + mdast-util-gfm-autolink-literal: 1.0.3 + mdast-util-gfm-footnote: 1.0.2 + mdast-util-gfm-strikethrough: 1.0.3 + mdast-util-gfm-table: 1.0.7 + mdast-util-gfm-task-list-item: 1.0.2 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color dev: false - /mdast-util-math/2.0.1: - resolution: {integrity: sha512-ZZtjyRwobsiVg4bY0Q5CzAZztpbjRIA7ZlMMb0PNkwTXOnJTUoHvzBhVG95LIuek5Mlj1l2P+jBvWviqW7G+0A==} + /mdast-util-math/2.0.2: + resolution: {integrity: sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==} dependencies: - '@types/mdast': 3.0.10 - longest-streak: 3.0.1 - mdast-util-to-markdown: 1.3.0 + '@types/mdast': 3.0.11 + longest-streak: 3.1.0 + mdast-util-to-markdown: 1.5.0 dev: false - /mdast-util-mdx-expression/1.1.1: - resolution: {integrity: sha512-RDLRkBFmBKCJl6/fQdxxKL2BqNtoPFoNBmQAlj5ZNKOijIWRKjdhPkeufsUOaexLj+78mhJc+L7d1MYka8/LdQ==} + /mdast-util-mdx-expression/1.3.2: + resolution: {integrity: sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==} dependencies: - '@types/estree-jsx': 0.0.1 + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.0 + mdast-util-to-markdown: 1.5.0 + transitivePeerDependencies: + - supports-color dev: false - /mdast-util-mdx-jsx/2.0.1: - resolution: {integrity: sha512-oPC7/smPBf7vxnvIYH5y3fPo2lw1rdrswFfSb4i0GTAXRUQv7JUU/t/hbp07dgGdUFTSDOHm5DNamhNg/s2Hrg==} + /mdast-util-mdx-jsx/2.1.2: + resolution: {integrity: sha512-o9vBCYQK5ZLGEj3tCGISJGjvafyHRVJlZmfJzSE7xjiogSzIeph/Z4zMY65q4WGRMezQBeAwPlrdymDYYYx0tA==} dependencies: - '@types/estree-jsx': 0.0.1 + '@types/estree-jsx': 1.0.0 '@types/hast': 2.3.4 - '@types/mdast': 3.0.10 + '@types/mdast': 3.0.11 + '@types/unist': 2.0.6 ccount: 2.0.1 - mdast-util-to-markdown: 1.3.0 - parse-entities: 4.0.0 - stringify-entities: 4.0.2 - unist-util-remove-position: 4.0.1 - unist-util-stringify-position: 3.0.0 - vfile-message: 3.1.0 + mdast-util-from-markdown: 1.3.0 + mdast-util-to-markdown: 1.5.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-remove-position: 4.0.2 + unist-util-stringify-position: 3.0.3 + vfile-message: 3.1.4 + transitivePeerDependencies: + - supports-color dev: false - /mdast-util-mdx/2.0.0: - resolution: {integrity: sha512-M09lW0CcBT1VrJUaF/PYxemxxHa7SLDHdSn94Q9FhxjCQfuW7nMAWKWimTmA3OyDMSTH981NN1csW1X+HPSluw==} + /mdast-util-mdx/2.0.1: + resolution: {integrity: sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==} dependencies: - mdast-util-mdx-expression: 1.1.1 - mdast-util-mdx-jsx: 2.0.1 - mdast-util-mdxjs-esm: 1.1.1 + mdast-util-from-markdown: 1.3.0 + mdast-util-mdx-expression: 1.3.2 + mdast-util-mdx-jsx: 2.1.2 + mdast-util-mdxjs-esm: 1.3.1 + mdast-util-to-markdown: 1.5.0 transitivePeerDependencies: - supports-color dev: false - /mdast-util-mdxjs-esm/1.1.1: - resolution: {integrity: sha512-IpHNNMubCt6ue2FIQasx1ByvETglnqc7A3XvIc0Yyql1hNI73SEGa044dZG6jeJQE8boBdTn8nxs3DjQLvVN1w==} + /mdast-util-mdxjs-esm/1.3.1: + resolution: {integrity: sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==} dependencies: - '@types/estree-jsx': 0.0.1 - '@types/mdast': 3.0.10 - mdast-util-from-markdown: 1.2.0 - mdast-util-to-markdown: 1.3.0 + '@types/estree-jsx': 1.0.0 + '@types/hast': 2.3.4 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.0 + mdast-util-to-markdown: 1.5.0 transitivePeerDependencies: - supports-color dev: false - /mdast-util-to-hast/12.1.0: - resolution: {integrity: sha512-dHfCt9Yh05AXEeghoziB3DjJV8oCIKdQmBJOPoAT1NlgMDBy+/MQn7Pxfq0jI8YRO1IfzcnmA/OU3FVVn/E5Sg==} + /mdast-util-phrasing/3.0.1: + resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==} + dependencies: + '@types/mdast': 3.0.11 + unist-util-is: 5.2.1 + dev: false + + /mdast-util-to-hast/12.3.0: + resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} dependencies: '@types/hast': 2.3.4 - '@types/mdast': 3.0.10 - '@types/mdurl': 1.0.2 - mdast-util-definitions: 5.1.0 - mdurl: 1.0.1 - micromark-util-sanitize-uri: 1.0.0 - unist-builder: 3.0.0 - unist-util-generated: 2.0.0 - unist-util-position: 4.0.1 - unist-util-visit: 4.1.1 + '@types/mdast': 3.0.11 + mdast-util-definitions: 5.1.2 + micromark-util-sanitize-uri: 1.1.0 + trim-lines: 3.0.1 + unist-util-generated: 2.0.1 + unist-util-position: 4.0.4 + unist-util-visit: 4.1.2 dev: false - /mdast-util-to-markdown/1.3.0: - resolution: {integrity: sha512-6tUSs4r+KK4JGTTiQ7FfHmVOaDrLQJPmpjD6wPMlHGUVXoG9Vjc3jIeP+uyBWRf8clwB2blM+W7+KrlMYQnftA==} + /mdast-util-to-markdown/1.5.0: + resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==} dependencies: - '@types/mdast': 3.0.10 + '@types/mdast': 3.0.11 '@types/unist': 2.0.6 - longest-streak: 3.0.1 - mdast-util-to-string: 3.1.0 + longest-streak: 3.1.0 + mdast-util-phrasing: 3.0.1 + mdast-util-to-string: 3.1.1 micromark-util-decode-string: 1.0.2 - unist-util-visit: 4.1.1 - zwitch: 2.0.2 - dev: false - - /mdast-util-to-string/3.1.0: - resolution: {integrity: sha512-n4Vypz/DZgwo0iMHLQL49dJzlp7YtAJP+N07MZHpjPf/5XJuHUWstviF4Mn2jEiR/GNmtnRRqnwsXExk3igfFA==} + unist-util-visit: 4.1.2 + zwitch: 2.0.4 dev: false - /mdurl/1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} + /mdast-util-to-string/3.1.1: + resolution: {integrity: sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==} + dependencies: + '@types/mdast': 3.0.11 dev: false /merge2/1.4.1: @@ -1393,7 +1417,7 @@ packages: /micromark-core-commonmark/1.0.6: resolution: {integrity: sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==} dependencies: - decode-named-character-reference: 1.0.1 + decode-named-character-reference: 1.0.2 micromark-factory-destination: 1.0.0 micromark-factory-label: 1.0.2 micromark-factory-space: 1.0.0 @@ -1402,35 +1426,36 @@ packages: micromark-util-character: 1.1.0 micromark-util-chunked: 1.0.0 micromark-util-classify-character: 1.0.0 - micromark-util-html-tag-name: 1.0.0 + micromark-util-html-tag-name: 1.1.0 micromark-util-normalize-identifier: 1.0.0 micromark-util-resolve-all: 1.0.0 micromark-util-subtokenize: 1.0.2 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-extension-gfm-autolink-literal/1.0.3: resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==} dependencies: micromark-util-character: 1.1.0 - micromark-util-sanitize-uri: 1.0.0 + micromark-util-sanitize-uri: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false - /micromark-extension-gfm-footnote/1.0.3: - resolution: {integrity: sha512-bn62pC5y39rIo2g1RqZk1NhF7T7cJLuJlbevunQz41U0iPVCdVOFASe5/L1kke+DFKSgfCRhv24+o42cZ1+ADw==} + /micromark-extension-gfm-footnote/1.0.4: + resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==} dependencies: micromark-core-commonmark: 1.0.6 micromark-factory-space: 1.0.0 micromark-util-character: 1.1.0 micromark-util-normalize-identifier: 1.0.0 - micromark-util-sanitize-uri: 1.0.0 + micromark-util-sanitize-uri: 1.1.0 micromark-util-symbol: 1.0.1 - uvu: 0.5.3 + micromark-util-types: 1.0.2 + uvu: 0.5.6 dev: false /micromark-extension-gfm-strikethrough/1.0.4: @@ -1441,7 +1466,7 @@ packages: micromark-util-resolve-all: 1.0.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-extension-gfm-table/1.0.5: @@ -1451,7 +1476,7 @@ packages: micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-extension-gfm-tagfilter/1.0.1: @@ -1467,14 +1492,14 @@ packages: micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-extension-gfm/2.0.1: resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==} dependencies: micromark-extension-gfm-autolink-literal: 1.0.3 - micromark-extension-gfm-footnote: 1.0.3 + micromark-extension-gfm-footnote: 1.0.4 micromark-extension-gfm-strikethrough: 1.0.4 micromark-extension-gfm-table: 1.0.5 micromark-extension-gfm-tagfilter: 1.0.1 @@ -1492,33 +1517,33 @@ packages: micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false - /micromark-extension-mdx-expression/1.0.3: - resolution: {integrity: sha512-TjYtjEMszWze51NJCZmhv7MEBcgYRgb3tJeMAJ+HQCAaZHHRBaDCccqQzGizR/H4ODefP44wRTgOn2vE5I6nZA==} + /micromark-extension-mdx-expression/1.0.4: + resolution: {integrity: sha512-TCgLxqW6ReQ3AJgtj1P0P+8ZThBTloLbeb7jNaqr6mCOLDpxUiBFE/9STgooMZttEwOQu5iEcCCa3ZSDhY9FGw==} dependencies: - micromark-factory-mdx-expression: 1.0.5 + micromark-factory-mdx-expression: 1.0.7 micromark-factory-space: 1.0.0 micromark-util-character: 1.1.0 - micromark-util-events-to-acorn: 1.0.4 + micromark-util-events-to-acorn: 1.2.1 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false - /micromark-extension-mdx-jsx/1.0.2: - resolution: {integrity: sha512-MBppeDuXEBIL1uo4B/bL5eJ1q3m5pXzdzIWpOnJuzzBZF+S+9zbb5WnS2K/LEVQeoyiLzOuoteU4SFPuGJhhWw==} + /micromark-extension-mdx-jsx/1.0.3: + resolution: {integrity: sha512-VfA369RdqUISF0qGgv2FfV7gGjHDfn9+Qfiv5hEwpyr1xscRj/CiVRkU7rywGFCO7JwJ5L0e7CJz60lY52+qOA==} dependencies: '@types/acorn': 4.0.6 - estree-util-is-identifier-name: 2.0.0 - micromark-factory-mdx-expression: 1.0.5 + estree-util-is-identifier-name: 2.1.0 + micromark-factory-mdx-expression: 1.0.7 micromark-factory-space: 1.0.0 micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 - vfile-message: 3.1.0 + uvu: 0.5.6 + vfile-message: 3.1.4 dev: false /micromark-extension-mdx-md/1.0.0: @@ -1527,28 +1552,28 @@ packages: micromark-util-types: 1.0.2 dev: false - /micromark-extension-mdxjs-esm/1.0.2: - resolution: {integrity: sha512-bIaxblNIM+CCaJvp3L/V+168l79iuNmxEiTU6i3vB0YuDW+rumV64BFMxvhfRDxaJxQE1zD5vTPdyLBbW4efGA==} + /micromark-extension-mdxjs-esm/1.0.3: + resolution: {integrity: sha512-2N13ol4KMoxb85rdDwTAC6uzs8lMX0zeqpcyx7FhS7PxXomOnLactu8WI8iBNXW8AVyea3KIJd/1CKnUmwrK9A==} dependencies: micromark-core-commonmark: 1.0.6 micromark-util-character: 1.1.0 - micromark-util-events-to-acorn: 1.0.4 + micromark-util-events-to-acorn: 1.2.1 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - unist-util-position-from-estree: 1.1.1 - uvu: 0.5.3 - vfile-message: 3.1.0 + unist-util-position-from-estree: 1.1.2 + uvu: 0.5.6 + vfile-message: 3.1.4 dev: false /micromark-extension-mdxjs/1.0.0: resolution: {integrity: sha512-TZZRZgeHvtgm+IhtgC2+uDMR7h8eTKF0QUX9YsgoL9+bADBpBY6SiLvWqnBlLbCEevITmTqmEuY3FoxMKVs1rQ==} dependencies: - acorn: 8.7.0 - acorn-jsx: 5.3.2_acorn@8.7.0 - micromark-extension-mdx-expression: 1.0.3 - micromark-extension-mdx-jsx: 1.0.2 + acorn: 8.8.2 + acorn-jsx: 5.3.2_acorn@8.8.2 + micromark-extension-mdx-expression: 1.0.4 + micromark-extension-mdx-jsx: 1.0.3 micromark-extension-mdx-md: 1.0.0 - micromark-extension-mdxjs-esm: 1.0.2 + micromark-extension-mdxjs-esm: 1.0.3 micromark-util-combine-extensions: 1.0.0 micromark-util-types: 1.0.2 dev: false @@ -1567,20 +1592,20 @@ packages: micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false - /micromark-factory-mdx-expression/1.0.5: - resolution: {integrity: sha512-1DSMCBeCUj4m01P8uYbNWvOsv+FtpDTcBUcDCdE06sENTBX54lndRs9neWOgsNWfLDm2EzCyNKiUaoJ+mWa/WA==} + /micromark-factory-mdx-expression/1.0.7: + resolution: {integrity: sha512-QAdFbkQagTZ/eKb8zDGqmjvgevgJH3+aQpvvKrXWxNJp3o8/l2cAbbrBd0E04r0Gx6nssPpqWIjnbHFvZu5qsQ==} dependencies: micromark-factory-space: 1.0.0 micromark-util-character: 1.1.0 - micromark-util-events-to-acorn: 1.0.4 + micromark-util-events-to-acorn: 1.2.1 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - unist-util-position-from-estree: 1.1.1 - uvu: 0.5.3 - vfile-message: 3.1.0 + unist-util-position-from-estree: 1.1.2 + uvu: 0.5.6 + vfile-message: 3.1.4 dev: false /micromark-factory-space/1.0.0: @@ -1597,7 +1622,7 @@ packages: micromark-util-character: 1.1.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-factory-whitespace/1.0.0: @@ -1646,7 +1671,7 @@ packages: /micromark-util-decode-string/1.0.2: resolution: {integrity: sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==} dependencies: - decode-named-character-reference: 1.0.1 + decode-named-character-reference: 1.0.2 micromark-util-character: 1.1.0 micromark-util-decode-numeric-character-reference: 1.0.0 micromark-util-symbol: 1.0.1 @@ -1656,19 +1681,20 @@ packages: resolution: {integrity: sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==} dev: false - /micromark-util-events-to-acorn/1.0.4: - resolution: {integrity: sha512-dpo8ecREK5s/KMph7jJ46RLM6g7N21CMc9LAJQbDLdbQnTpijigkSJPTIfLXZ+h5wdXlcsQ+b6ufAE9v76AdgA==} + /micromark-util-events-to-acorn/1.2.1: + resolution: {integrity: sha512-mkg3BaWlw6ZTkQORrKVBW4o9ICXPxLtGz51vml5mQpKFdo9vqIX68CAx5JhTOdjQyAHH7JFmm4rh8toSPQZUmg==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 0.0.50 - estree-util-visit: 1.1.0 + '@types/estree': 1.0.0 + estree-util-visit: 1.2.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 - vfile-message: 3.1.0 + uvu: 0.5.6 + vfile-location: 4.1.0 + vfile-message: 3.1.4 dev: false - /micromark-util-html-tag-name/1.0.0: - resolution: {integrity: sha512-NenEKIshW2ZI/ERv9HtFNsrn3llSPZtY337LID/24WeLqMzeZhBEE6BQ0vS2ZBjshm5n40chKtJ3qjAbVV8S0g==} + /micromark-util-html-tag-name/1.1.0: + resolution: {integrity: sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==} dev: false /micromark-util-normalize-identifier/1.0.0: @@ -1683,8 +1709,8 @@ packages: micromark-util-types: 1.0.2 dev: false - /micromark-util-sanitize-uri/1.0.0: - resolution: {integrity: sha512-cCxvBKlmac4rxCGx6ejlIviRaMKZc0fWm5HdCHEeDWRSkn44l6NdYVRyU+0nT1XC72EQJMZV8IPHF+jTr56lAg==} + /micromark-util-sanitize-uri/1.1.0: + resolution: {integrity: sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==} dependencies: micromark-util-character: 1.1.0 micromark-util-encode: 1.0.1 @@ -1697,7 +1723,7 @@ packages: micromark-util-chunked: 1.0.0 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 dev: false /micromark-util-symbol/1.0.1: @@ -1708,12 +1734,12 @@ packages: resolution: {integrity: sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==} dev: false - /micromark/3.0.10: - resolution: {integrity: sha512-ryTDy6UUunOXy2HPjelppgJ2sNfcPz1pLlMdA6Rz9jPzhLikWXv/irpWV/I2jd68Uhmny7hHxAlAhk4+vWggpg==} + /micromark/3.1.0: + resolution: {integrity: sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==} dependencies: '@types/debug': 4.1.7 - debug: 4.3.3 - decode-named-character-reference: 1.0.1 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 micromark-core-commonmark: 1.0.6 micromark-factory-space: 1.0.0 micromark-util-character: 1.1.0 @@ -1723,11 +1749,11 @@ packages: micromark-util-encode: 1.0.1 micromark-util-normalize-identifier: 1.0.0 micromark-util-resolve-all: 1.0.0 - micromark-util-sanitize-uri: 1.0.0 + micromark-util-sanitize-uri: 1.1.0 micromark-util-subtokenize: 1.0.2 micromark-util-symbol: 1.0.1 micromark-util-types: 1.0.2 - uvu: 0.5.3 + uvu: 0.5.6 transitivePeerDependencies: - supports-color dev: false @@ -1740,8 +1766,8 @@ packages: picomatch: 2.3.1 dev: true - /minimist/1.2.7: - resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} + /minimist/1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: true /mri/1.2.0: @@ -1758,8 +1784,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - /next-mdx-remote/4.3.0_biqbaboplfbrettd7655fr4n2y: - resolution: {integrity: sha512-fbxkY03pM2Wx5bDNTVKpYD5Hx3QVZGH+6xDtVIxlxXz4HTifP1yI2DrkDvxXbTz0SYGIbluRMIW81IOOa8pigA==} + /next-mdx-remote/4.4.1_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-1BvyXaIou6xy3XoNF4yaMZUCb6vD2GTAa5ciOa6WoO+gAUTYsb1K4rI/HSC2ogAWLrb/7VSV52skz07vOzmqIQ==} engines: {node: '>=14', npm: '>=7'} peerDependencies: react: '>=16.x <=18.x' @@ -1769,7 +1795,7 @@ packages: '@mdx-js/react': 2.3.0_react@18.2.0 react: 18.2.0 react-dom: 18.2.0_react@18.2.0 - vfile: 5.3.6 + vfile: 5.3.7 vfile-matter: 3.0.1 transitivePeerDependencies: - supports-color @@ -1822,7 +1848,7 @@ packages: dependencies: '@next/env': 13.2.4 '@swc/helpers': 0.4.14 - caniuse-lite: 1.0.30001464 + caniuse-lite: 1.0.30001469 postcss: 8.4.14 react: 18.2.0 react-dom: 18.2.0_react@18.2.0 @@ -1857,7 +1883,7 @@ packages: '@headlessui/react': 1.7.13_biqbaboplfbrettd7655fr4n2y '@popperjs/core': 2.11.6 clsx: 1.2.1 - flexsearch: 0.7.21 + flexsearch: 0.7.31 focus-visible: 5.2.0 git-url-parse: 13.1.0 intersection-observer: 0.12.2 @@ -1868,8 +1894,8 @@ packages: nextra: 2.2.19_ld2jel3hspngo3u5lti2kgl2sq react: 18.2.0 react-dom: 18.2.0_react@18.2.0 - scroll-into-view-if-needed: 3.0.3 - zod: 3.20.2 + scroll-into-view-if-needed: 3.0.6 + zod: 3.21.4 dev: false /nextra/2.2.19_ld2jel3hspngo3u5lti2kgl2sq: @@ -1883,12 +1909,12 @@ packages: '@mdx-js/react': 2.3.0_react@18.2.0 '@napi-rs/simple-git': 0.1.8 github-slugger: 2.0.0 - graceful-fs: 4.2.10 + graceful-fs: 4.2.11 gray-matter: 4.0.3 katex: 0.16.4 lodash.get: 4.4.2 next: 13.2.4_biqbaboplfbrettd7655fr4n2y - next-mdx-remote: 4.3.0_biqbaboplfbrettd7655fr4n2y + next-mdx-remote: 4.4.1_biqbaboplfbrettd7655fr4n2y p-limit: 3.1.0 react: 18.2.0 react-dom: 18.2.0_react@18.2.0 @@ -1901,7 +1927,7 @@ packages: slash: 3.0.0 title: 3.5.3 unist-util-remove: 3.1.1 - unist-util-visit: 4.1.1 + unist-util-visit: 4.1.2 transitivePeerDependencies: - supports-color dev: false @@ -1944,14 +1970,14 @@ packages: yocto-queue: 0.1.0 dev: false - /parse-entities/4.0.0: - resolution: {integrity: sha512-5nk9Fn03x3rEhGaX1FU6IDwG/k+GxLXlFAkgrbM1asuAFl3BhdQWvASaIsmwWypRNcZKHPYnIuOSfIWEyEQnPQ==} + /parse-entities/4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} dependencies: '@types/unist': 2.0.6 - character-entities: 2.0.1 + character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 - decode-named-character-reference: 1.0.1 + decode-named-character-reference: 1.0.2 is-alphanumerical: 2.0.1 is-decimal: 2.0.1 is-hexadecimal: 2.0.1 @@ -1986,11 +2012,12 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /periscopic/3.0.4: - resolution: {integrity: sha512-SFx68DxCv0Iyo6APZuw/AKewkkThGwssmU0QWtTlvov3VAtPX+QJ4CadwSaz8nrT5jPIuxdvJWB4PnD2KNDxQg==} + /periscopic/3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} dependencies: - estree-walker: 3.0.1 - is-reference: 3.0.0 + '@types/estree': 1.0.0 + estree-walker: 3.0.3 + is-reference: 3.0.1 dev: false /picocolors/1.0.0: @@ -2018,11 +2045,11 @@ packages: resolve: 1.22.1 dev: true - /postcss-js/4.0.0_postcss@8.4.21: - resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==} + /postcss-js/4.0.1_postcss@8.4.21: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: - postcss: ^8.3.3 + postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 postcss: 8.4.21 @@ -2040,7 +2067,7 @@ packages: ts-node: optional: true dependencies: - lilconfig: 2.0.6 + lilconfig: 2.1.0 postcss: 8.4.21 yaml: 1.10.2 dev: true @@ -2085,8 +2112,8 @@ packages: source-map-js: 1.0.2 dev: true - /property-information/6.1.1: - resolution: {integrity: sha512-hrzC564QIl0r0vy4l6MvRLhafmUowhO/O3KgVSoXIbbA2Sz4j8HGpJc6T2cubRVwMwpdiG/vKGfhT4IixmKN9w==} + /property-information/6.2.0: + resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} dev: false /protocols/2.0.1: @@ -2148,8 +2175,8 @@ packages: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} dev: false - /regenerator-runtime/0.13.9: - resolution: {integrity: sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==} + /regenerator-runtime/0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} dev: false /rehype-katex/6.0.2: @@ -2157,21 +2184,21 @@ packages: dependencies: '@types/hast': 2.3.4 '@types/katex': 0.11.1 - hast-util-to-text: 3.1.1 + hast-util-to-text: 3.1.2 katex: 0.15.6 rehype-parse: 8.0.4 - unified: 10.1.1 - unist-util-remove-position: 4.0.1 - unist-util-visit: 4.1.1 + unified: 10.1.2 + unist-util-remove-position: 4.0.2 + unist-util-visit: 4.1.2 dev: false /rehype-parse/8.0.4: resolution: {integrity: sha512-MJJKONunHjoTh4kc3dsM1v3C9kGrrxvA3U8PxZlP2SjH8RNUSrb+lF7Y0KVaUDnGH2QZ5vAn7ulkiajM9ifuqg==} dependencies: '@types/hast': 2.3.4 - hast-util-from-parse5: 7.1.0 + hast-util-from-parse5: 7.1.2 parse5: 6.0.1 - unified: 10.1.1 + unified: 10.1.2 dev: false /rehype-pretty-code/0.9.3_shiki@0.14.1: @@ -2188,25 +2215,27 @@ packages: /remark-gfm/3.0.1: resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-gfm: 2.0.0 + '@types/mdast': 3.0.11 + mdast-util-gfm: 2.0.2 micromark-extension-gfm: 2.0.1 - unified: 10.1.1 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color dev: false /remark-math/5.1.1: resolution: {integrity: sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-math: 2.0.1 + '@types/mdast': 3.0.11 + mdast-util-math: 2.0.2 micromark-extension-math: 2.0.2 - unified: 10.1.1 + unified: 10.1.2 dev: false - /remark-mdx/2.0.0: - resolution: {integrity: sha512-TDnjSv77Oynf+K1deGWZPKSwh3/9hykVAxVm9enAw6BmicCGklREET8s19KYnjGsNPms0pNDJLmp+bnHDVItAQ==} + /remark-mdx/2.3.0: + resolution: {integrity: sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==} dependencies: - mdast-util-mdx: 2.0.0 + mdast-util-mdx: 2.0.1 micromark-extension-mdxjs: 1.0.0 transitivePeerDependencies: - supports-color @@ -2215,9 +2244,9 @@ packages: /remark-parse/10.0.1: resolution: {integrity: sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==} dependencies: - '@types/mdast': 3.0.10 - mdast-util-from-markdown: 1.2.0 - unified: 10.1.1 + '@types/mdast': 3.0.11 + mdast-util-from-markdown: 1.3.0 + unified: 10.1.2 transitivePeerDependencies: - supports-color dev: false @@ -2225,7 +2254,7 @@ packages: /remark-reading-time/2.0.1: resolution: {integrity: sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==} dependencies: - estree-util-is-identifier-name: 2.0.0 + estree-util-is-identifier-name: 2.1.0 estree-util-value-to-estree: 1.3.0 reading-time: 1.5.0 unist-util-visit: 3.1.0 @@ -2235,9 +2264,9 @@ packages: resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} dependencies: '@types/hast': 2.3.4 - '@types/mdast': 3.0.10 - mdast-util-to-hast: 12.1.0 - unified: 10.1.1 + '@types/mdast': 3.0.11 + mdast-util-to-hast: 12.3.0 + unified: 10.1.2 dev: false /remove-accents/0.4.2: @@ -2264,8 +2293,8 @@ packages: queue-microtask: 1.2.3 dev: true - /sade/1.8.0: - resolution: {integrity: sha512-NRfCA8AVYuAA7Hu8bs18od6J4BdcXXwOv6OJuNgwbw8LcLK8JKwaM3WckLZ+MGyPJUS/ivVgK3twltrOIJJnug==} + /sade/1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} engines: {node: '>=6'} dependencies: mri: 1.2.0 @@ -2277,10 +2306,10 @@ packages: loose-envify: 1.4.0 dev: false - /scroll-into-view-if-needed/3.0.3: - resolution: {integrity: sha512-QoCH0lVw0tbA7Rl6sToH7e1tO3n95Oi6JgBgC8hEpNNZUC91MfasJ/4E1ZdbzGueNDZ+Y7ObfRaelKUgTyPbJA==} + /scroll-into-view-if-needed/3.0.6: + resolution: {integrity: sha512-x+CW0kOzlFNOnseF0DBr0AJ5m+TgGmSOdEZwyiZW0gV87XBvxQKw5A8DvFFgabznA68XqLgVX+PwPX8OzsFvRA==} dependencies: - compute-scroll-into-view: 2.0.3 + compute-scroll-into-view: 3.0.0 dev: false /section-matter/1.0.0: @@ -2312,8 +2341,8 @@ packages: vscode-textmate: 8.0.0 dev: false - /signal-exit/3.0.6: - resolution: {integrity: sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==} + /signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: false /slash/3.0.0: @@ -2325,7 +2354,7 @@ packages: resolution: {integrity: sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==} engines: {node: '>=12'} dependencies: - is-plain-obj: 4.0.0 + is-plain-obj: 4.1.0 dev: false /source-map-js/1.0.2: @@ -2337,16 +2366,16 @@ packages: engines: {node: '>= 8'} dev: false - /space-separated-tokens/2.0.1: - resolution: {integrity: sha512-ekwEbFp5aqSPKaqeY1PGrlGQxPNaq+Cnx4+bE2D8sciBQrHpbwoBbawqTN2+6jPs9IdWxxiUcN0K2pkczD3zmw==} + /space-separated-tokens/2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} dev: false /sprintf-js/1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: false - /stringify-entities/4.0.2: - resolution: {integrity: sha512-MTxTVcEkorNtBbNpoFJPEh0kKdM6+QbMjLbaxmvaPMmayOXdr/AIVIIJX7FReUVweRBFJfZepK4A4AKgwuFpMQ==} + /stringify-entities/4.0.3: + resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} dependencies: character-entities-html4: 2.1.0 character-entities-legacy: 3.0.0 @@ -2362,8 +2391,8 @@ packages: engines: {node: '>=0.10.0'} dev: false - /style-to-object/0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} + /style-to-object/0.4.1: + resolution: {integrity: sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==} dependencies: inline-style-parser: 0.1.1 dev: false @@ -2413,14 +2442,14 @@ packages: fast-glob: 3.2.12 glob-parent: 6.0.2 is-glob: 4.0.3 - lilconfig: 2.0.6 + lilconfig: 2.1.0 micromatch: 4.0.5 normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.0.0 postcss: 8.4.21 postcss-import: 14.1.0_postcss@8.4.21 - postcss-js: 4.0.0_postcss@8.4.21 + postcss-js: 4.0.1_postcss@8.4.21 postcss-load-config: 3.1.4_postcss@8.4.21 postcss-nested: 6.0.0_postcss@8.4.21 postcss-selector-parser: 6.0.11 @@ -2453,12 +2482,16 @@ packages: is-number: 7.0.0 dev: true - /trough/2.0.2: - resolution: {integrity: sha512-FnHq5sTMxC0sk957wHDzRnemFnNBvt/gSY99HzK8F7UP5WAbvP70yX5bd7CjEQkN+TjdxwI7g7lJ6podqrG2/w==} + /trim-lines/3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + dev: false + + /trough/2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: false - /tslib/2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + /tslib/2.5.0: + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} dev: false /type-fest/1.4.0: @@ -2466,66 +2499,70 @@ packages: engines: {node: '>=10'} dev: false - /unified/10.1.1: - resolution: {integrity: sha512-v4ky1+6BN9X3pQrOdkFIPWAaeDsHPE1svRDxq7YpTc2plkIqFMwukfqM+l0ewpP9EfwARlt9pPFAeWYhHm8X9w==} + /typescript/5.0.4: + resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} + engines: {node: '>=12.20'} + hasBin: true + dev: true + + /unified/10.1.2: + resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} dependencies: '@types/unist': 2.0.6 bail: 2.0.2 extend: 3.0.2 is-buffer: 2.0.5 - is-plain-obj: 4.0.0 - trough: 2.0.2 - vfile: 5.3.6 - dev: false - - /unist-builder/3.0.0: - resolution: {integrity: sha512-GFxmfEAa0vi9i5sd0R2kcrI9ks0r82NasRq5QHh2ysGngrc6GiqD5CDf1FjPenY4vApmFASBIIlk/jj5J5YbmQ==} - dependencies: - '@types/unist': 2.0.6 + is-plain-obj: 4.1.0 + trough: 2.1.0 + vfile: 5.3.7 dev: false - /unist-util-find-after/4.0.0: - resolution: {integrity: sha512-gfpsxKQde7atVF30n5Gff2fQhAc4/HTOV4CvkXpTg9wRfQhZWdXitpyXHWB6YcYgnsxLx+4gGHeVjCTAAp9sjw==} + /unist-util-find-after/4.0.1: + resolution: {integrity: sha512-QO/PuPMm2ERxC6vFXEPtmAutOopy5PknD+Oq64gGwxKtk4xwo9Z97t9Av1obPmGU0IyTa6EKYUfTrK2QJS3Ozw==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 + unist-util-is: 5.2.1 dev: false - /unist-util-generated/2.0.0: - resolution: {integrity: sha512-TiWE6DVtVe7Ye2QxOVW9kqybs6cZexNwTwSMVgkfjEReqy/xwGpAXb99OxktoWwmL+Z+Epb0Dn8/GNDYP1wnUw==} + /unist-util-generated/2.0.1: + resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==} dev: false - /unist-util-is/5.1.1: - resolution: {integrity: sha512-F5CZ68eYzuSvJjGhCLPL3cYx45IxkqXSetCcRgUXtbcm50X2L9oOWQlfUfDdAf+6Pd27YDblBfdtmsThXmwpbQ==} + /unist-util-is/5.2.1: + resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} + dependencies: + '@types/unist': 2.0.6 dev: false - /unist-util-position-from-estree/1.1.1: - resolution: {integrity: sha512-xtoY50b5+7IH8tFbkw64gisG9tMSpxDjhX9TmaJJae/XuxQ9R/Kc8Nv1eOsf43Gt4KV/LkriMy9mptDr7XLcaw==} + /unist-util-position-from-estree/1.1.2: + resolution: {integrity: sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==} dependencies: '@types/unist': 2.0.6 dev: false - /unist-util-position/4.0.1: - resolution: {integrity: sha512-mgy/zI9fQ2HlbOtTdr2w9lhVaiFUHWQnZrFF2EUoVOqtAUdzqMtNiD99qA5a1IcjWVR8O6aVYE9u7Z2z1v0SQA==} + /unist-util-position/4.0.4: + resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} + dependencies: + '@types/unist': 2.0.6 dev: false - /unist-util-remove-position/4.0.1: - resolution: {integrity: sha512-0yDkppiIhDlPrfHELgB+NLQD5mfjup3a8UYclHruTJWmY74je8g+CIFr79x5f6AkmzSwlvKLbs63hC0meOMowQ==} + /unist-util-remove-position/4.0.2: + resolution: {integrity: sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==} dependencies: '@types/unist': 2.0.6 - unist-util-visit: 4.1.1 + unist-util-visit: 4.1.2 dev: false /unist-util-remove/3.1.1: resolution: {integrity: sha512-kfCqZK5YVY5yEa89tvpl7KnBBHu2c6CzMkqHUrlOqaRgGOMp0sMvwWOVrbAtj03KhovQB7i96Gda72v/EFE0vw==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 - unist-util-visit-parents: 5.1.1 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 dev: false - /unist-util-stringify-position/3.0.0: - resolution: {integrity: sha512-SdfAl8fsDclywZpfMDTVDxA2V7LjtRDTOFd44wUJamgl6OlVngsqWjxvermMYf60elWHbxhuRCZml7AnuXCaSA==} + /unist-util-stringify-position/3.0.3: + resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} dependencies: '@types/unist': 2.0.6 dev: false @@ -2534,30 +2571,30 @@ packages: resolution: {integrity: sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 + unist-util-is: 5.2.1 dev: false - /unist-util-visit-parents/5.1.1: - resolution: {integrity: sha512-gks4baapT/kNRaWxuGkl5BIhoanZo7sC/cUT/JToSRNL1dYoXRFl75d++NkjYk4TAu2uv2Px+l8guMajogeuiw==} + /unist-util-visit-parents/5.1.3: + resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 + unist-util-is: 5.2.1 dev: false /unist-util-visit/3.1.0: resolution: {integrity: sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 + unist-util-is: 5.2.1 unist-util-visit-parents: 4.1.1 dev: false - /unist-util-visit/4.1.1: - resolution: {integrity: sha512-n9KN3WV9k4h1DxYR1LoajgN93wpEi/7ZplVe02IoB4gH5ctI1AaF2670BLHQYbwj+pY83gFtyeySFiyMHJklrg==} + /unist-util-visit/4.1.2: + resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} dependencies: '@types/unist': 2.0.6 - unist-util-is: 5.1.1 - unist-util-visit-parents: 5.1.1 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 dev: false /update-browserslist-db/1.0.10_browserslist@4.21.5: @@ -2575,22 +2612,22 @@ packages: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} dev: true - /uvu/0.5.3: - resolution: {integrity: sha512-brFwqA3FXzilmtnIyJ+CxdkInkY/i4ErvP7uV0DnUVxQcQ55reuHphorpF+tZoVHK2MniZ/VJzI7zJQoc9T9Yw==} + /uvu/0.5.6: + resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} engines: {node: '>=8'} hasBin: true dependencies: - dequal: 2.0.2 - diff: 5.0.0 - kleur: 4.1.4 - sade: 1.8.0 + dequal: 2.0.3 + diff: 5.1.0 + kleur: 4.1.5 + sade: 1.8.1 dev: false - /vfile-location/4.0.1: - resolution: {integrity: sha512-JDxPlTbZrZCQXogGheBHjbRWjESSPEak770XwWPfw5mTc1v1nWGLB/apzZxsx8a0SJVfF8HK8ql8RD308vXRUw==} + /vfile-location/4.1.0: + resolution: {integrity: sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==} dependencies: '@types/unist': 2.0.6 - vfile: 5.3.6 + vfile: 5.3.7 dev: false /vfile-matter/3.0.1: @@ -2601,20 +2638,20 @@ packages: js-yaml: 4.1.0 dev: false - /vfile-message/3.1.0: - resolution: {integrity: sha512-4QJbBk+DkPEhBXq3f260xSaWtjE4gPKOfulzfMFF8ZNwaPZieWsg3iVlcmF04+eebzpcpeXOOFMfrYzJHVYg+g==} + /vfile-message/3.1.4: + resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} dependencies: '@types/unist': 2.0.6 - unist-util-stringify-position: 3.0.0 + unist-util-stringify-position: 3.0.3 dev: false - /vfile/5.3.6: - resolution: {integrity: sha512-ADBsmerdGBs2WYckrLBEmuETSPyTD4TuLxTrw0DvjirxW1ra4ZwkbzG8ndsv3Q57smvHxo677MHaQrY9yxH8cA==} + /vfile/5.3.7: + resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} dependencies: '@types/unist': 2.0.6 is-buffer: 2.0.5 - unist-util-stringify-position: 3.0.0 - vfile-message: 3.1.0 + unist-util-stringify-position: 3.0.3 + vfile-message: 3.1.4 dev: false /vscode-oniguruma/1.7.0: @@ -2655,10 +2692,10 @@ packages: engines: {node: '>=10'} dev: false - /zod/3.20.2: - resolution: {integrity: sha512-1MzNQdAvO+54H+EaK5YpyEy0T+Ejo/7YLHS93G3RnYWh5gaotGHwGeN/ZO687qEDU2y4CdStQYXVHIgrUl5UVQ==} + /zod/3.21.4: + resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} dev: false - /zwitch/2.0.2: - resolution: {integrity: sha512-JZxotl7SxAJH0j7dN4pxsTV6ZLXoLdGME+PsjkL/DaBrVryK9kTGq06GfKrwcSOqypP+fdXGoCHE36b99fWVoA==} + /zwitch/2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} dev: false diff --git a/tailwind.config.js b/tailwind.config.js index f06956f9..bd2e5b72 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -1,7 +1,7 @@ module.exports = { content: [ - "./components/**/*.js", - "./pages/**/*.{md,mdx}", - "./theme.config.js", + "./components/**/*.{js,jsx,ts,tsx}", + "./pages/**/*.{md,mdx,js,jsx,ts,tsx}", + "./theme.config.tsx", ], }; diff --git a/theme.config.js b/theme.config.tsx similarity index 90% rename from theme.config.js rename to theme.config.tsx index 7acbfc0d..71abaef0 100644 --- a/theme.config.js +++ b/theme.config.tsx @@ -1,5 +1,5 @@ import { useRouter } from "next/router"; -import { useConfig } from "nextra-theme-docs"; +import { type DocsThemeConfig, useConfig } from "nextra-theme-docs"; import Logo from "./components/logo"; import Vercel from "./components/vercel"; import useLocalesMap from "./components/use-locales-map"; @@ -15,8 +15,7 @@ import { titleMap, } from "./translations/text"; -/** @type {import('nextra-theme-docs').DocsThemeConfig} */ -const themeConfig = { +const themeConfig: DocsThemeConfig = { project: { link: "https://github.com/vercel/swr", }, @@ -28,16 +27,25 @@ const themeConfig = { }, toc: { float: true, - title: () => useLocalesMap(tableOfContentsTitleMap), + title: () => { + const title = useLocalesMap(tableOfContentsTitleMap); + return <>{title}; + }, }, search: { placeholder: () => useLocalesMap(searchPlaceholderMap), }, editLink: { - text: () => useLocalesMap(editTextMap), + text: () => { + const editText = useLocalesMap(editTextMap); + return <>{editText}; + }, }, feedback: { - content: () => useLocalesMap(feedbackLinkMap), + content: () => { + const feedback = useLocalesMap(feedbackLinkMap); + return <>{feedback}; + }, }, logo: () => { const title = useLocalesMap(titleMap); diff --git a/translations/svgs.js b/translations/svgs.ts similarity index 98% rename from translations/svgs.js rename to translations/svgs.ts index 711e7251..d43a59a2 100644 --- a/translations/svgs.js +++ b/translations/svgs.ts @@ -1,10 +1,15 @@ -/** - * @typedef {"en-US"} DefaultLocale - * @typedef {DefaultLocale | "zh-CN" | "es-ES" | "pt-BR" | "ja" | "ko" | "ru"} Locale - */ +import type { LocalesMap } from "../types"; -/** @type {Readonly>} */ -export const diagramCachePathsMap = { +type DiagramCachePathKey = + | "defaultCacheProvider" + | "firstCacheProvider" + | "secondCacheProvider" + | "leftSWRHooks" + | "rightSWRHooks"; + +export const diagramCachePathsMap: LocalesMap< + Record +> = { "en-US": { defaultCacheProvider: "M26.6 32c2.8 0 4.5-1.8 4.5-4.7 0-3-1.7-4.8-4.4-4.8h-3.2V32h3zm-1.7-1.2v-7h1.7c2 0 3.1 1.2 3.1 3.5 0 2.2-1 3.5-3.2 3.5h-1.6zM35.8 32c1.5 0 2.6-.7 3-1.9l-1.4-.2c-.2.7-.8 1-1.6 1-1.2 0-2-.8-2-2.1h5v-.5c0-2.6-1.5-3.6-3.1-3.6-2 0-3.3 1.5-3.3 3.7s1.3 3.6 3.4 3.6zm-2-4.3c0-1 .7-1.8 1.9-1.8 1 0 1.7.8 1.7 1.8h-3.6zm9.8-2.9h-1.5v-.6c0-.7.3-1 1-1l.6.1.3-1.1-1.2-.2c-1 0-2 .7-2 2v.8h-1.2V26h1.1v6h1.4v-6h1.5v-1zm3.2 7.3c1.2 0 1.9-.6 2.1-1.2h.1v1h1.3v-4.7c0-2-1.6-2.5-2.7-2.5-1.3 0-2.5.5-3 1.8l1.4.3c.2-.5.7-1 1.6-1 .9 0 1.4.5 1.4 1.3 0 .5-.6.5-1.8.7-1.4.1-2.8.5-2.8 2.1 0 1.4 1.1 2.2 2.4 2.2zm.3-1.2c-.7 0-1.3-.3-1.3-1s.7-1 1.5-1c.4-.2 1.5-.3 1.7-.5v1c0 .8-.7 1.5-1.9 1.5zm9.5-2c0 1.3-.9 1.8-1.7 1.8-.8 0-1.4-.6-1.4-1.5v-4.4h-1.4v4.5c0 1.8 1 2.7 2.3 2.7 1.1 0 1.8-.6 2.2-1.3V32H58v-7h-1.4v4zm4.6-6.5h-1.4V32h1.4v-9.5zm5 2.4h-1.4v-1.7h-1.4V25h-1v1h1v4.2c0 1.3 1 2 2.1 1.9l.9-.2-.3-1.1h-.4c-.5 0-.9 0-.9-.9V26h1.5v-1zm12.9.7c-.4-2-2-3.2-4-3.2-2.4 0-4.2 1.8-4.2 4.9 0 3 1.8 4.8 4.3 4.8 2 0 3.6-1.3 3.9-3.1h-1.5c-.2 1.2-1.2 1.8-2.4 1.8-1.6 0-2.9-1.2-2.9-3.5s1.2-3.6 2.9-3.6c1.2 0 2.2.7 2.4 2h1.5zm3.6 6.6c1.1 0 1.8-.6 2-1.2h.1v1h1.4v-4.7c0-2-1.7-2.5-2.8-2.5-1.3 0-2.5.5-3 1.8l1.4.3c.2-.5.7-1 1.6-1 1 0 1.4.5 1.4 1.3 0 .5-.5.5-1.8.7-1.4.1-2.7.5-2.7 2.1 0 1.4 1 2.2 2.4 2.2zM83 31c-.8 0-1.4-.3-1.4-1s.7-1 1.5-1c.4-.2 1.5-.3 1.7-.5v1c0 .8-.7 1.5-1.8 1.5zm8 1.1c1.6 0 2.7-1 2.8-2.3h-1.3c-.2.7-.8 1.2-1.6 1.2-1.1 0-1.9-1-1.9-2.5 0-1.6.8-2.5 2-2.5.8 0 1.3.5 1.5 1.2h1.3c-.1-1.4-1.3-2.4-2.9-2.4-2 0-3.3 1.5-3.3 3.7 0 2.1 1.3 3.6 3.3 3.6zm5.6-4.3c0-1.1.7-1.8 1.7-1.8s1.5.6 1.5 1.7V32h1.4v-4.5c0-1.8-1-2.7-2.4-2.7-1.1 0-1.8.5-2.1 1.3v-3.6h-1.5V32h1.4v-4.2zm9.5 4.3c1.5 0 2.6-.7 3-1.9l-1.4-.2c-.2.7-.8 1-1.6 1-1.2 0-2-.8-2-2.1h5v-.5c0-2.6-1.5-3.6-3.1-3.6-2 0-3.3 1.5-3.3 3.7s1.3 3.6 3.4 3.6zm-2-4.3c0-1 .7-1.8 1.9-1.8 1 0 1.7.8 1.7 1.8h-3.6zm10 4.2h1.4v-3.3h2c2.1 0 3.2-1.3 3.2-3 0-1.8-1-3.2-3.3-3.2h-3.3V32zm1.4-4.5v-3.7h1.8c1.4 0 2 .7 2 1.8 0 1-.6 1.9-2 1.9h-1.8zm6.7 4.5h1.4v-4.3c0-1 .7-1.6 1.7-1.6h.7v-1.3h-.6c-.8 0-1.5.5-1.8 1.2v-1h-1.4v7zm7.6.1c2 0 3.4-1.4 3.4-3.6s-1.4-3.7-3.4-3.7-3.3 1.5-3.3 3.7 1.3 3.6 3.3 3.6zm0-1.1c-1.3 0-1.9-1.2-1.9-2.5 0-1.4.6-2.5 2-2.5 1.3 0 1.9 1.1 1.9 2.5 0 1.3-.6 2.5-2 2.5zm10.6-6H139l-1.8 5.4h-.1l-1.8-5.5h-1.5l2.6 7.1h1.5l2.5-7zm1.3 7h1.4v-7h-1.4v7zm.7-8.2c.4 0 .8-.4.8-.8 0-.5-.4-.8-.8-.8-.5 0-.9.3-.9.8 0 .4.4.8.9.8zm5.1 8.3c1.3 0 1.8-.8 2-1.2h.2V32h1.3v-9.5h-1.4v3.6c-.3-.5-.8-1.3-2-1.3-1.8 0-3 1.4-3 3.7 0 2.3 1.2 3.6 2.9 3.6zm.3-1.1c-1.2 0-1.9-1.1-1.9-2.5 0-1.5.7-2.5 2-2.5 1.1 0 1.8 1 1.8 2.5 0 1.4-.7 2.5-1.9 2.5zm8.2 1c1.5 0 2.6-.7 3-1.9l-1.4-.2c-.2.7-.8 1-1.6 1-1.2 0-2-.8-2-2.1h5v-.5c0-2.6-1.5-3.6-3.1-3.6-2 0-3.3 1.5-3.3 3.7s1.3 3.6 3.4 3.6zm-2-4.3c0-1 .8-1.8 1.9-1.8 1 0 1.8.8 1.8 1.8H154zm6.5 4.2h1.4v-4.3c0-1 .7-1.6 1.7-1.6h.7v-1.3h-.6c-.8 0-1.5.5-1.8 1.2v-1h-1.4v7z", @@ -31,15 +36,17 @@ export const diagramCachePathsMap = { }, }; -/** @type {Readonly>} */ -export const diagramInfinitePathMap = { +export const diagramInfinitePathMap: LocalesMap = { "en-US": "M354.49 309H359.761V307.866H355.807V300.273H354.49V309ZM363.918 309.132C365.763 309.132 366.969 307.781 366.969 305.757C366.969 303.72 365.763 302.369 363.918 302.369C362.073 302.369 360.867 303.72 360.867 305.757C360.867 307.781 362.073 309.132 363.918 309.132ZM363.923 308.062C362.717 308.062 362.154 307.01 362.154 305.753C362.154 304.5 362.717 303.435 363.923 303.435C365.12 303.435 365.683 304.5 365.683 305.753C365.683 307.01 365.12 308.062 363.923 308.062ZM370.297 309.145C371.379 309.145 371.988 308.595 372.231 308.105H372.282V309H373.527V304.653C373.527 302.749 372.027 302.369 370.987 302.369C369.802 302.369 368.711 302.847 368.285 304.04L369.483 304.312C369.67 303.848 370.147 303.401 371.004 303.401C371.826 303.401 372.248 303.831 372.248 304.572V304.602C372.248 305.067 371.771 305.058 370.595 305.195C369.355 305.339 368.085 305.663 368.085 307.151C368.085 308.438 369.052 309.145 370.297 309.145ZM370.574 308.122C369.853 308.122 369.333 307.798 369.333 307.168C369.333 306.486 369.939 306.243 370.676 306.145C371.089 306.089 372.069 305.979 372.252 305.795V306.639C372.252 307.415 371.635 308.122 370.574 308.122ZM377.674 309.128C378.867 309.128 379.336 308.399 379.566 307.982H379.673V309H380.917V300.273H379.643V303.516H379.566C379.336 303.111 378.901 302.369 377.683 302.369C376.102 302.369 374.938 303.618 374.938 305.74C374.938 307.858 376.085 309.128 377.674 309.128ZM377.955 308.041C376.817 308.041 376.225 307.04 376.225 305.727C376.225 304.428 376.805 303.452 377.955 303.452C379.067 303.452 379.664 304.359 379.664 305.727C379.664 307.104 379.055 308.041 377.955 308.041ZM386.013 300.273V309H387.266V302.68H387.347L389.921 308.987H390.961L393.535 302.685H393.616V309H394.869V300.273H393.271L390.492 307.057H390.39L387.612 300.273H386.013ZM399.438 309.132C401.283 309.132 402.489 307.781 402.489 305.757C402.489 303.72 401.283 302.369 399.438 302.369C397.593 302.369 396.387 303.72 396.387 305.757C396.387 307.781 397.593 309.132 399.438 309.132ZM399.442 308.062C398.236 308.062 397.674 307.01 397.674 305.753C397.674 304.5 398.236 303.435 399.442 303.435C400.64 303.435 401.202 304.5 401.202 305.753C401.202 307.01 400.64 308.062 399.442 308.062ZM403.911 309H405.185V305.003C405.185 304.146 405.846 303.528 406.749 303.528C407.013 303.528 407.312 303.575 407.414 303.605V302.386C407.286 302.369 407.035 302.357 406.873 302.357C406.106 302.357 405.45 302.791 405.211 303.494H405.143V302.455H403.911V309ZM411.103 309.132C412.531 309.132 413.541 308.429 413.831 307.364L412.625 307.146C412.395 307.764 411.841 308.08 411.116 308.08C410.025 308.08 409.292 307.372 409.258 306.111H413.912V305.659C413.912 303.294 412.497 302.369 411.014 302.369C409.19 302.369 407.988 303.759 407.988 305.77C407.988 307.803 409.173 309.132 411.103 309.132ZM409.262 305.156C409.314 304.227 409.987 303.422 411.022 303.422C412.011 303.422 412.659 304.155 412.663 305.156H409.262Z", ru: "M348.367 302.76c0-.453-.166-.813-.498-1.078-.328-.27-.791-.405-1.389-.405-.5 0-.919.139-1.259.416-.336.274-.504.614-.504 1.02h-1.125c0-.453.123-.859.369-1.219.25-.359.598-.639 1.043-.838.445-.203.937-.304 1.476-.304.954 0 1.694.214 2.221.644.528.426.791 1.02.791 1.781 0 .395-.121.754-.363 1.078-.242.325-.58.581-1.014.768 1.004.336 1.506 1.002 1.506 1.998 0 .766-.285 1.373-.855 1.822-.571.45-1.332.674-2.286.674-.566 0-1.082-.099-1.546-.299-.461-.203-.821-.49-1.079-.861-.257-.371-.386-.812-.386-1.324h1.125c0 .449.177.824.533 1.125.355.297.807.445 1.353.445.614 0 1.102-.142 1.465-.428.367-.285.551-.662.551-1.13 0-1-.619-1.51-1.857-1.53h-1.055v-.926h1.049c.57-.011 1.002-.14 1.295-.386.293-.246.439-.594.439-1.043ZM354.859 309c-.062-.125-.113-.348-.152-.668-.504.523-1.105.785-1.805.785-.625 0-1.138-.176-1.541-.527-.398-.356-.597-.805-.597-1.348 0-.66.25-1.172.75-1.535.504-.367 1.211-.551 2.121-.551h1.054v-.498c0-.379-.113-.679-.339-.902-.227-.227-.561-.34-1.002-.34-.387 0-.711.098-.973.293-.262.195-.393.432-.393.709h-1.089c0-.316.111-.621.334-.914.226-.297.531-.531.914-.703.386-.172.81-.258 1.271-.258.731 0 1.303.184 1.717.551.414.363.629.865.644 1.506v2.918c0 .582.075 1.044.223 1.388V309h-1.137Zm-1.798-.826c.339 0 .662-.088.966-.264.305-.176.526-.404.662-.685v-1.301h-.849c-1.328 0-1.992.388-1.992 1.166 0 .34.113.605.34.797.226.191.517.287.873.287ZM361.568 303.557h-2.923V309h-1.09v-6.34h4.013v.897ZM367.867 305.9c0 .965-.221 1.743-.662 2.332-.441.59-1.039.885-1.793.885-.769 0-1.375-.244-1.816-.732v3.053h-1.084v-8.778h.99l.053.703c.441-.547 1.054-.82 1.84-.82.761 0 1.363.287 1.804.861.446.575.668 1.373.668 2.397v.099Zm-1.084-.123c0-.715-.152-1.279-.457-1.693-.305-.414-.722-.621-1.254-.621-.656 0-1.148.291-1.476.873v3.029c.324.578.82.867 1.488.867.52 0 .932-.205 1.236-.615.309-.414.463-1.027.463-1.84ZM371.254 307.412l1.476-4.752h1.161l-2.549 7.319c-.395 1.054-1.022 1.582-1.881 1.582l-.205-.018-.404-.076v-.879l.293.023c.367 0 .652-.074.855-.222.207-.149.377-.42.51-.815l.24-.644-2.262-6.27h1.184l1.582 4.752ZM378.35 304.395c0-.297-.114-.532-.34-.704-.227-.175-.537-.263-.932-.263-.383 0-.703.099-.961.299-.254.199-.381.433-.381.703h-1.078c0-.551.231-1.002.692-1.354.461-.351 1.037-.527 1.728-.527.742 0 1.32.16 1.734.48.415.317.622.77.622 1.36 0 .285-.086.547-.258.785-.172.238-.416.428-.733.568.739.25 1.108.742 1.108 1.477 0 .582-.225 1.043-.674 1.383-.449.339-1.049.509-1.799.509-.73 0-1.334-.177-1.81-.533-.473-.359-.709-.844-.709-1.453h1.078c0 .309.136.574.41.797.277.219.621.328 1.031.328.414 0 .748-.096 1.002-.287.254-.192.381-.44.381-.744 0-.356-.107-.61-.322-.762-.211-.156-.541-.234-.991-.234h-1.084v-.914h1.178c.738-.02 1.108-.325 1.108-.914ZM385.059 302.66h1.084V309h-1.084v-4.623L382.135 309h-1.084v-6.34h1.084v4.629l2.924-4.629ZM392.594 303.539h-2.127V309h-1.084v-5.461h-2.086v-.879h5.297v.879ZM394.832 304.846h1.647c.718.008 1.287.195 1.705.562.418.367.627.865.627 1.494 0 .633-.215 1.141-.645 1.524-.43.383-1.008.574-1.734.574h-2.684v-6.34h1.084v2.186Zm0 .884v2.385h1.611c.407 0 .721-.103.944-.31.222-.211.334-.498.334-.862 0-.351-.11-.638-.328-.861-.215-.227-.518-.344-.909-.352h-1.652ZM405.771 309.117c-.859 0-1.558-.281-2.097-.844-.539-.566-.809-1.322-.809-2.267v-.199c0-.629.119-1.19.358-1.682.242-.496.578-.883 1.007-1.16.434-.281.903-.422 1.407-.422.824 0 1.465.271 1.922.814.457.543.685 1.321.685 2.332v.452h-4.295c.016.625.197 1.13.545 1.517.352.383.797.574 1.336.574.383 0 .707-.078.973-.234.265-.156.498-.363.697-.621l.662.516c-.531.816-1.328 1.224-2.391 1.224Zm-.134-5.683c-.438 0-.805.16-1.102.48-.297.316-.48.762-.551 1.336h3.176v-.082c-.031-.551-.18-.977-.445-1.277-.266-.305-.625-.457-1.078-.457ZM410.623 302.66v5.455h2.32v-5.455h1.084v5.455h2.315v-5.455h1.09v5.455h.89l-.105 2.766h-.973V309h-7.711v-6.34h1.09ZM422.131 309.117c-.86 0-1.559-.281-2.098-.844-.539-.566-.808-1.322-.808-2.267v-.199c0-.629.119-1.19.357-1.682.242-.496.578-.883 1.008-1.16.433-.281.902-.422 1.406-.422.824 0 1.465.271 1.922.814.457.543.686 1.321.686 2.332v.452h-4.295c.015.625.197 1.13.545 1.517.351.383.796.574 1.335.574.383 0 .707-.078.973-.234.266-.156.498-.363.697-.621l.662.516c-.531.816-1.328 1.224-2.39 1.224Zm-.135-5.683c-.437 0-.805.16-1.101.48-.297.316-.481.762-.551 1.336h3.176v-.082c-.032-.551-.18-.977-.446-1.277-.265-.305-.625-.457-1.078-.457Zm-1.892-2.467c0-.176.052-.322.158-.44.109-.121.269-.181.48-.181.211 0 .371.06.481.181.109.118.164.264.164.44s-.055.322-.164.439c-.11.117-.27.176-.481.176-.211 0-.371-.059-.48-.176-.106-.117-.158-.263-.158-.439Zm2.519.012c0-.176.053-.325.158-.446.11-.121.27-.181.481-.181.211 0 .371.06.48.181.11.121.164.27.164.446 0 .175-.054.322-.164.439-.109.117-.269.176-.48.176-.211 0-.371-.059-.481-.176-.105-.117-.158-.264-.158-.439Z", }; -/** @type {Readonly>} */ -export const diagramPaginationPathsMap = { +type DiagramPaginationPathKey = "prev" | "next" | "one" | "two" | "three"; + +export const diagramPaginationPathsMap: LocalesMap< + Record +> = { "en-US": { prev: "M40.82 327.055L41.587 326.288L39.0259 323.736H45.7163V322.628H39.0259L41.587 320.067L40.82 319.308L36.9464 323.182L40.82 327.055ZM51.3455 327H52.6623V323.932H54.4521C56.4762 323.932 57.4776 322.709 57.4776 321.098C57.4776 319.491 56.4847 318.273 54.4563 318.273H51.3455V327ZM52.6623 322.815V319.402H54.3157C55.6197 319.402 56.1523 320.109 56.1523 321.098C56.1523 322.087 55.6197 322.815 54.3327 322.815H52.6623ZM58.919 327H60.1932V323.003C60.1932 322.146 60.8537 321.528 61.7571 321.528C62.0213 321.528 62.3196 321.575 62.4219 321.605V320.386C62.294 320.369 62.0426 320.357 61.8807 320.357C61.1136 320.357 60.4574 320.791 60.2188 321.494H60.1506V320.455H58.919V327ZM66.1112 327.132C67.5387 327.132 68.5487 326.429 68.8384 325.364L67.6325 325.146C67.4023 325.764 66.8484 326.08 66.1239 326.08C65.033 326.08 64.3001 325.372 64.266 324.111H68.9194V323.659C68.9194 321.294 67.5046 320.369 66.0217 320.369C64.1978 320.369 62.9961 321.759 62.9961 323.77C62.9961 325.803 64.1808 327.132 66.1112 327.132ZM64.2702 323.156C64.3214 322.227 64.9947 321.422 66.0302 321.422C67.0188 321.422 67.6665 322.155 67.6708 323.156H64.2702ZM75.8974 320.455H74.5295L72.8761 325.491H72.8079L71.1502 320.455H69.7823L72.1602 327H73.5238L75.8974 320.455Z", next: "M329.225 318.273H327.922V324.682H327.841L323.4 318.273H322.181V327H323.498V320.599H323.579L328.015 327H329.225V318.273ZM333.865 327.132C335.293 327.132 336.303 326.429 336.592 325.364L335.386 325.146C335.156 325.764 334.602 326.08 333.878 326.08C332.787 326.08 332.054 325.372 332.02 324.111H336.673V323.659C336.673 321.294 335.259 320.369 333.776 320.369C331.952 320.369 330.75 321.759 330.75 323.77C330.75 325.803 331.935 327.132 333.865 327.132ZM332.024 323.156C332.075 322.227 332.749 321.422 333.784 321.422C334.773 321.422 335.42 322.155 335.425 323.156H332.024ZM338.94 320.455H337.543L339.554 323.727L337.517 327H338.915L340.385 324.554L341.859 327H343.253L341.195 323.727L343.236 320.455H341.842L340.385 323.003L338.94 320.455ZM347.599 320.455H346.257V318.886H344.983V320.455H344.024V321.477H344.983V325.342C344.979 326.531 345.886 327.107 346.892 327.085C347.297 327.081 347.57 327.004 347.719 326.949L347.489 325.896C347.403 325.913 347.246 325.952 347.041 325.952C346.628 325.952 346.257 325.815 346.257 325.078V321.477H347.599V320.455ZM357.724 327.055L361.598 323.182L357.724 319.308L356.957 320.075L359.518 322.628H352.828V323.736H359.518L356.957 326.293L357.724 327.055Z", @@ -54,8 +61,7 @@ export const diagramPaginationPathsMap = { }, }; -/** @type {Readonly>} */ -export const diagramWelcomePathMap = { +export const diagramWelcomePathMap: LocalesMap = { "en-US": "M242.4 122h3.1l3.5-12.2h.2l3.4 12.2h3.2l4.9-17.5h-3.4l-3.2 12.9h-.1l-3.4-12.9h-3l-3.4 12.9h-.2l-3.1-12.9h-3.4l4.9 17.5zm24.8.3c3 0 5.2-1.5 5.7-3.8l-2.9-.3c-.4 1-1.4 1.7-2.7 1.7-2 0-3.4-1.4-3.4-3.6h9.1v-1c0-4.5-2.7-6.6-6-6.6-3.7 0-6.1 2.8-6.1 6.8 0 4.1 2.4 6.8 6.3 6.8zm-3.3-8c.1-1.8 1.3-3.2 3.2-3.2 1.8 0 3 1.3 3 3.1h-6.2zm14.8-9.8h-3V122h3v-17.5zm9 17.8c3.2 0 5.3-2 5.5-4.8h-3a2.6 2.6 0 01-2.6 2.2c-1.9 0-3.1-1.6-3.1-4.2 0-2.7 1.2-4.3 3.1-4.3 1.5 0 2.4 1 2.7 2.2h3c-.3-2.8-2.5-4.7-5.7-4.7-3.8 0-6.3 2.8-6.3 6.8s2.4 6.8 6.3 6.8zm13.8 0c3.8 0 6.2-2.7 6.2-6.8 0-4-2.4-6.8-6.2-6.8-3.9 0-6.3 2.7-6.3 6.8 0 4 2.4 6.8 6.3 6.8zm0-2.5c-2.1 0-3.2-2-3.2-4.3 0-2.4 1-4.3 3.2-4.3 2 0 3.1 1.9 3.1 4.3s-1 4.3-3.1 4.3zm8.9 2.2h3v-8c0-1.6 1.1-2.7 2.4-2.7 1.3 0 2.2 1 2.2 2.3v8.4h3v-8.2c0-1.4 1-2.5 2.4-2.5 1.3 0 2.3.8 2.3 2.4v8.3h3v-8.8c0-3-1.6-4.5-4-4.5-2 0-3.4 1-4 2.4h-.1c-.5-1.4-1.8-2.4-3.5-2.4-1.8 0-3.1 1-3.6 2.4h-.2V109h-3v13zm27.3.3c3 0 5.1-1.5 5.7-3.8l-2.9-.3c-.4 1-1.4 1.7-2.8 1.7-2 0-3.3-1.4-3.3-3.6h9.1v-1c0-4.5-2.8-6.6-6-6.6-3.7 0-6.2 2.8-6.2 6.8 0 4.1 2.4 6.8 6.4 6.8zm-3.3-8c0-1.8 1.3-3.2 3.2-3.2 1.7 0 3 1.3 3 3.1h-6.2zm17.8 7.7h3v-2h.2a4 4 0 003.8 2.2c3 0 5.4-2.4 5.4-6.7 0-4.4-2.4-6.8-5.4-6.8a3.9 3.9 0 00-3.8 2.4h-.1v-6.6h-3V122zm3-6.5c0-2.6 1.1-4.2 3.1-4.2s3.1 1.7 3.1 4.2c0 2.4-1 4.2-3 4.2s-3.2-1.7-3.2-4.2zm15.8 6.8c2 0 3.2-1 3.8-2.1h.1v1.8h3v-8.8c0-3.4-2.9-4.5-5.4-4.5-2.7 0-4.8 1.3-5.5 3.7l2.9.4c.3-1 1.2-1.7 2.7-1.7 1.4 0 2.2.7 2.2 2 0 1-1 1-3.3 1.2-2.5.3-5 1-5 4 0 2.6 2 4 4.5 4zm.8-2.3c-1.3 0-2.3-.6-2.3-1.7 0-1.2 1-1.7 2.5-1.9.8-.1 2.4-.3 2.8-.6v1.5c0 1.5-1.2 2.7-3 2.7zm14.9 2.3c3.3 0 5.4-2 5.6-4.8h-3a2.6 2.6 0 01-2.6 2.2c-2 0-3.2-1.6-3.2-4.2 0-2.7 1.3-4.3 3.2-4.3 1.5 0 2.4 1 2.6 2.2h3c-.2-2.8-2.4-4.7-5.6-4.7-3.9 0-6.3 2.8-6.3 6.8s2.4 6.8 6.3 6.8zm8.1-.3h3.1v-4.4l1.1-1.2 4 5.6h3.7l-5.3-7.4 5-5.7h-3.6l-4.7 5.3h-.2v-9.7h-3V122zm17.3-2.4h-2.7v1c-.2 2.3-.8 4.6-1 5.7h2c.4-1.1 1.4-3.6 1.6-5.7l.1-1z", ru: "M213.983 115.982c-.186 1.972-.914 3.513-2.183 4.622-1.27 1.1-2.958 1.65-5.066 1.65-1.472 0-2.771-.347-3.897-1.041-1.117-.703-1.981-1.697-2.59-2.984-.609-1.286-.927-2.78-.952-4.481v-1.727c0-1.743.309-3.279.927-4.608.618-1.329 1.502-2.353 2.653-3.072 1.16-.72 2.497-1.079 4.012-1.079 2.039 0 3.681.554 4.925 1.663 1.245 1.109 1.968 2.674 2.171 4.697h-3.199c-.152-1.329-.541-2.285-1.168-2.869-.618-.593-1.527-.889-2.729-.889-1.397 0-2.472.512-3.225 1.536-.745 1.016-1.126 2.51-1.142 4.482v1.638c0 1.997.355 3.52 1.066 4.57.719 1.049 1.769 1.574 3.148 1.574 1.261 0 2.209-.283 2.844-.851.635-.567 1.037-1.51 1.206-2.831h3.199ZM223.276 122v-13.736h5.574c1.879 0 3.309.33 4.291.99.981.652 1.472 1.591 1.472 2.818 0 .635-.199 1.206-.596 1.714-.39.499-.969.885-1.74 1.155.897.187 1.608.563 2.133 1.13.525.567.787 1.236.787 2.006 0 1.278-.474 2.251-1.422 2.92-.939.669-2.293 1.003-4.062 1.003h-6.437Zm3.085-5.853v3.415h3.377c1.583 0 2.374-.567 2.374-1.701 0-1.142-.804-1.714-2.412-1.714h-3.339Zm0-2.209h2.539c1.752 0 2.628-.516 2.628-1.548 0-1.084-.829-1.642-2.488-1.676h-2.679v3.224ZM237.292 115.005c0-1.346.267-2.556.8-3.631.533-1.083 1.282-1.913 2.247-2.488.965-.584 2.073-.876 3.326-.876 1.854 0 3.356.596 4.507 1.79 1.159 1.193 1.786 2.776 1.879 4.748l.012.723c0 1.355-.262 2.565-.787 3.631-.516 1.067-1.261 1.892-2.234 2.476-.965.584-2.082.876-3.352.876-1.938 0-3.491-.643-4.659-1.93-1.159-1.295-1.739-3.017-1.739-5.167v-.152Zm3.085.266c0 1.414.292 2.523.876 3.327.584.795 1.396 1.193 2.437 1.193s1.85-.406 2.425-1.219c.584-.812.876-2.001.876-3.567 0-1.388-.3-2.488-.901-3.301-.593-.812-1.401-1.219-2.425-1.219-1.007 0-1.807.402-2.399 1.206-.593.796-.889 1.989-.889 3.58ZM263.076 112.021c0 .61-.186 1.173-.558 1.689-.364.508-.881.914-1.549 1.219 1.574.55 2.361 1.612 2.361 3.186 0 1.261-.512 2.268-1.536 3.022-1.024.745-2.395 1.117-4.113 1.117-1.05 0-2.006-.174-2.869-.521-.864-.355-1.537-.854-2.019-1.498-.482-.651-.724-1.422-.724-2.31h3.073c0 .558.249 1.028.749 1.409.499.372 1.13.559 1.891.559.753 0 1.35-.174 1.79-.521.449-.355.673-.817.673-1.384 0-.668-.195-1.151-.584-1.447-.389-.296-.99-.444-1.803-.444h-2.209v-2.222h2.286c1.379-.017 2.069-.584 2.069-1.701 0-.559-.199-.995-.597-1.308-.398-.313-.943-.47-1.637-.47-.678 0-1.249.17-1.714.508-.466.33-.699.749-.699 1.257h-3.072c0-1.21.508-2.2 1.524-2.971 1.015-.778 2.306-1.168 3.872-1.168 1.701 0 3.025.347 3.973 1.041s1.422 1.68 1.422 2.958ZM266.187 122v-13.736h5.573c1.879 0 3.309.33 4.291.99.982.652 1.472 1.591 1.472 2.818 0 .635-.198 1.206-.596 1.714-.39.499-.969.885-1.739 1.155.897.187 1.608.563 2.132 1.13.525.567.787 1.236.787 2.006 0 1.278-.474 2.251-1.421 2.92-.94.669-2.294 1.003-4.063 1.003h-6.436Zm3.084-5.853v3.415h3.377c1.583 0 2.374-.567 2.374-1.701 0-1.142-.804-1.714-2.412-1.714h-3.339Zm0-2.209h2.54c1.751 0 2.627-.516 2.627-1.548 0-1.084-.829-1.642-2.488-1.676h-2.679v3.224ZM292.809 115.271c0 2.125-.483 3.822-1.448 5.091-.965 1.261-2.259 1.892-3.884 1.892-1.507 0-2.713-.495-3.619-1.485v6.512h-3.085v-19.017h2.844l.127 1.396c.906-1.1 2.137-1.65 3.694-1.65 1.676 0 2.988.626 3.936 1.879.956 1.244 1.435 2.975 1.435 5.192v.19Zm-3.073-.266c0-1.371-.275-2.459-.825-3.263-.542-.804-1.32-1.206-2.336-1.206-1.261 0-2.166.521-2.717 1.562v6.093c.559 1.067 1.473 1.6 2.743 1.6.981 0 1.747-.394 2.297-1.181.559-.795.838-1.997.838-3.605ZM303.638 122c-.136-.262-.254-.69-.356-1.282-.982 1.024-2.183 1.536-3.605 1.536-1.38 0-2.505-.394-3.377-1.181-.872-.787-1.308-1.76-1.308-2.92 0-1.464.542-2.585 1.625-3.364 1.092-.787 2.649-1.181 4.672-1.181h1.892v-.901c0-.711-.199-1.278-.597-1.701-.398-.432-1.003-.648-1.815-.648-.703 0-1.278.178-1.727.534-.449.347-.673.791-.673 1.333h-3.085c0-.754.25-1.456.749-2.108.5-.66 1.177-1.176 2.031-1.549.864-.372 1.824-.558 2.882-.558 1.608 0 2.891.406 3.847 1.219.956.804 1.447 1.938 1.473 3.402v6.195c0 1.236.173 2.222.52 2.958V122h-3.148Zm-3.39-2.222c.609 0 1.181-.148 1.714-.444.542-.296.948-.694 1.219-1.193v-2.59h-1.663c-1.143 0-2.002.199-2.578.596-.575.398-.863.961-.863 1.689 0 .592.195 1.066.584 1.422.398.347.927.52 1.587.52ZM312.601 108.264v11.273h4.291v-11.273h3.085v11.273h4.303v-11.273h3.073v11.273h2.348l-.254 6.538h-2.805V122h-17.126v-13.736h3.085ZM337.813 122.254c-1.955 0-3.542-.614-4.76-1.841-1.211-1.236-1.816-2.878-1.816-4.926v-.381c0-1.371.263-2.594.787-3.668.534-1.084 1.278-1.926 2.235-2.527.956-.601 2.023-.901 3.199-.901 1.87 0 3.313.596 4.329 1.79 1.024 1.193 1.536 2.882 1.536 5.065v1.244h-8.975c.093 1.134.469 2.032 1.13 2.692.668.66 1.506.99 2.513.99 1.414 0 2.565-.571 3.453-1.714l1.663 1.587c-.55.821-1.286 1.46-2.209 1.917-.914.449-1.942.673-3.085.673Zm-.368-11.769c-.846 0-1.532.297-2.056.889-.517.592-.847 1.418-.991 2.476h5.878v-.229c-.067-1.032-.342-1.811-.825-2.336-.482-.533-1.151-.8-2.006-.8ZM357.364 122h-3.085v-5.548h-5.344V122h-3.085v-13.736h3.085v5.725h5.344v-5.725h3.085V122ZM369.234 108.264h3.073V122h-3.073v-9.166L363.852 122h-3.073v-13.736h3.073v9.166l5.382-9.166ZM381.638 122.254c-1.955 0-3.542-.614-4.761-1.841-1.21-1.236-1.815-2.878-1.815-4.926v-.381c0-1.371.262-2.594.787-3.668.533-1.084 1.278-1.926 2.234-2.527.956-.601 2.023-.901 3.199-.901 1.871 0 3.314.596 4.329 1.79 1.024 1.193 1.536 2.882 1.536 5.065v1.244h-8.975c.093 1.134.47 2.032 1.13 2.692.668.66 1.506.99 2.513.99 1.414 0 2.565-.571 3.454-1.714l1.663 1.587c-.55.821-1.287 1.46-2.209 1.917-.914.449-1.943.673-3.085.673Zm-.368-11.769c-.847 0-1.532.297-2.057.889-.516.592-.846 1.418-.99 2.476h5.878v-.229c-.068-1.032-.343-1.811-.826-2.336-.482-.533-1.151-.8-2.005-.8ZM397.71 118.204l4.062-9.94h3.86V122h-3.085v-9.09l-3.783 9.09h-2.095l-3.796-9.141V122h-3.085v-13.736h3.885l4.037 9.94ZM409.542 126.164l-1.663-.99c.491-.77.825-1.443 1.003-2.019.186-.567.283-1.147.292-1.739v-2.399h2.78l-.013 2.221c-.008.897-.237 1.795-.685 2.692-.44.905-1.012 1.65-1.714 2.234Z", diff --git a/translations/text.js b/translations/text.ts similarity index 72% rename from translations/text.js rename to translations/text.ts index 40b4f493..47c91a34 100644 --- a/translations/text.js +++ b/translations/text.ts @@ -1,10 +1,6 @@ -/** - * @typedef {"en-US"} DefaultLocale - * @typedef {DefaultLocale | "zh-CN" | "es-ES" | "pt-BR" | "ja" | "ko" | "ru"} Locale - */ +import type { LocalesMap } from "../types"; -/** @type {Readonly>} */ -export const languageMap = { +export const languageMap: LocalesMap = { "en-US": "English", "es-ES": "Español", "pt-BR": "Português Brasileiro", @@ -14,8 +10,7 @@ export const languageMap = { ru: "Русский", }; -/** @type {Readonly>} */ -export const titleMap = { +export const titleMap: LocalesMap = { "en-US": "React Hooks for Data Fetching", "es-ES": "Biblioteca React Hooks para la obtención de datos", "pt-BR": "React Hooks para Data Fetching", @@ -25,8 +20,16 @@ export const titleMap = { ru: "React хуки для выборки данных", }; -/** @type {Readonly>} */ -export const featuresMap = { +export type FeatureKey = + | "lightweight" + | "realtime" + | "suspense" + | "pagination" + | "backendAgnostic" + | "renderingStrategies" + | "typescript" + | "remoteLocal"; +export const featuresMap: LocalesMap> = { "en-US": { lightweight: "Lightweight", realtime: "Realtime", @@ -59,16 +62,15 @@ export const featuresMap = { }, }; -/** @type {Readonly>} */ -export const headDescriptionMap = { +export const headDescriptionMap: LocalesMap = { "en-US": "SWR is a React Hooks library for data fetching. SWR first returns the data from cache (stale), then sends the fetch request (revalidate), and finally comes with the up-to-date data again.", - "pt-BR": "SWR é uma biblioteca React Hooks para data fetching. SWR primeiro retorna os dados do cache (stale), então envia a requisição de busca (revalidate), e finalmente vem com os dados atualizados novamente.", + "pt-BR": + "SWR é uma biblioteca React Hooks para data fetching. SWR primeiro retorna os dados do cache (stale), então envia a requisição de busca (revalidate), e finalmente vem com os dados atualizados novamente.", ru: "SWR — это библиотека React хуков для получения данных. SWR сначала возвращает данные из кеша (устаревшие), затем отправляет запрос на выборку (ревалидация) и, наконец, снова получает актуальные данные.", }; -/** @type {Readonly>} */ -export const feedbackLinkMap = { +export const feedbackLinkMap: LocalesMap = { "en-US": "Question? Give us feedback →", "es-ES": "¿Dudas? Danos tu feedback →", "pt-BR": "Dúvidas? Nos dê feedback →", @@ -77,8 +79,7 @@ export const feedbackLinkMap = { ru: "Вопросы? Оставьте нам отзыв →", }; -/** @type {Readonly>} */ -export const editTextMap = { +export const editTextMap: LocalesMap = { "en-US": "Edit this page on GitHub →", "es-ES": "Edite esta página en GitHub →", "pt-BR": "Edite essa página no GitHub →", @@ -88,8 +89,11 @@ export const editTextMap = { ru: "Редактировать эту страницу на GitHub →", }; -/** @type {Readonly>} */ -export const footerTextMap = { +export const footerTextMap: LocalesMap<{ + utmSource: string; + text: string; + suffix?: string | undefined; +}> = { "en-US": { utmSource: "swr", text: "Powered by" }, "es-ES": { utmSource: "swr_es-es", text: "Desarrollado por" }, "pt-BR": { utmSource: "swr_pt-br", text: "Desenvolvido por" }, @@ -99,16 +103,14 @@ export const footerTextMap = { ru: { utmSource: "swr_ru", text: "Работает на" }, }; -/** @type {Readonly>} */ -export const tableOfContentsTitleMap = { +export const tableOfContentsTitleMap: LocalesMap = { "en-US": "On This Page", "es-ES": "En esta página", "pt-BR": "Nessa página", ru: "На этой странице", }; -/** @type {Readonly>} */ -export const searchPlaceholderMap = { +export const searchPlaceholderMap: LocalesMap = { "en-US": "Search documentation...", "es-ES": "Buscar documento...", "pt-BR": "Buscar documentação...", @@ -116,8 +118,7 @@ export const searchPlaceholderMap = { ru: "Искать в документации...", }; -/** @type {Readonly>} */ -export const gitTimestampMap = { +export const gitTimestampMap: LocalesMap = { "en-US": "Last updated on", ru: "Последнее обновление", }; diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..75e50dd0 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": false, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "incremental": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "baseUrl": "." + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] +} diff --git a/types.ts b/types.ts new file mode 100644 index 00000000..85ddaa85 --- /dev/null +++ b/types.ts @@ -0,0 +1,23 @@ +export type DefaultLocale = "en-US"; +export type Locale = + | DefaultLocale + | "zh-CN" + | "es-ES" + | "pt-BR" + | "ja" + | "ko" + | "ru"; +export type LocalesMap = Readonly< + Record & + Partial, Partial>> +>; +export type RouterLocales = { + locale?: Locale | undefined; + locales?: Locale[] | undefined; + defaultLocale?: DefaultLocale | undefined; +}; +export type TypedNextRouter = Omit< + import("next/router").NextRouter, + keyof RouterLocales +> & + RouterLocales;