From fb5e11084eaa17a02ad4ebfd745ca4aa44e71d73 Mon Sep 17 00:00:00 2001 From: Henrik Wenz Date: Fri, 23 Sep 2022 19:39:39 +0200 Subject: [PATCH] docs: Add inline documentation for Link props --- packages/next/client/link.tsx | 46 +++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/packages/next/client/link.tsx b/packages/next/client/link.tsx index aa7670d53ca0bc..440c765b89554e 100644 --- a/packages/next/client/link.tsx +++ b/packages/next/client/link.tsx @@ -27,14 +27,60 @@ type OptionalKeys = { }[keyof T] type InternalLinkProps = { + /** + * The path or URL to navigate to. It can also be an object. + * + * @example https://nextjs.org/docs/api-reference/next/link#with-url-object + */ href: Url + /** + * Optional decorator for the path that will be shown in the browser URL bar. Before Next.js 9.5.3 this was used for dynamic routes, check our [previous docs](https://nextjs.org/docs/tag/v9.5.2/api-reference/next/link#dynamic-routes) to see how it worked. Note: when this path differs from the one provided in `href` the previous `href`/`as` behavior is used as shown in the [previous docs](https://nextjs.org/docs/tag/v9.5.2/api-reference/next/link#dynamic-routes). + * + * @deprecated + */ as?: Url + /** + * Replace the current `history` state instead of adding a new url into the stack. + * + * @defaultValue `false` + */ replace?: boolean + /** + * Replace the current `history` state instead of adding a new url into the stack. + * + * @defaultValue `false` + */ scroll?: boolean + /** + * Update the path of the current page without rerunning [`getStaticProps`](/docs/basic-features/data-fetching/get-static-props.md), [`getServerSideProps`](/docs/basic-features/data-fetching/get-server-side-props.md) or [`getInitialProps`](/docs/api-reference/data-fetching/get-initial-props.md). + * + * @defaultValue `false` + */ shallow?: boolean + /** + * Forces `Link` to send the `href` property to its child. + * + * @defaultValue `false` + */ passHref?: boolean + /** + * Prefetch the page in the background. + * Any `` that is in the viewport (initially or through scroll) will be preloaded. + * Prefetch can be disabled by passing `prefetch={false}`. When `prefetch` is set to `false`, prefetching will still occur on hover. Pages using [Static Generation](/docs/basic-features/data-fetching/get-static-props.md) will preload `JSON` files with the data for faster page transitions. Prefetching is only enabled in production. + * + * @defaultValue `true` + */ prefetch?: boolean + /** + * The active locale is automatically prepended. `locale` allows for providing a different locale. + * When `false` `href` has to include the locale as the default behavior is disabled. + */ locale?: string | false + /** + * Enable legacy link behaviour. + * @defaultValue `true` + * @see https://github.com/vercel/next.js/commit/489e65ed98544e69b0afd7e0cfc3f9f6c2b803b7 + */ legacyBehavior?: boolean // e: any because as it would otherwise overlap with existing types /**