diff --git a/packages/docusaurus-theme-classic/src/theme/DocPaginator/index.tsx b/packages/docusaurus-theme-classic/src/theme/DocPaginator/index.tsx
index a9d10027b5..05c490b409 100644
--- a/packages/docusaurus-theme-classic/src/theme/DocPaginator/index.tsx
+++ b/packages/docusaurus-theme-classic/src/theme/DocPaginator/index.tsx
@@ -7,6 +7,7 @@
import React from 'react';
import Link from '@docusaurus/Link';
+import Translate from '@docusaurus/Translate';
import type {Props} from '@theme/DocPaginator';
function DocPaginator(props: Props): JSX.Element {
@@ -19,7 +20,13 @@ function DocPaginator(props: Props): JSX.Element {
-
Previous
+
+
+ Previous
+
+
« {metadata.previous.title}
@@ -29,7 +36,13 @@ function DocPaginator(props: Props): JSX.Element {
{metadata.next && (
-
Next
+
+
+ Next
+
+
{metadata.next.title} »
diff --git a/packages/docusaurus-theme-classic/src/theme/EditThisPage/index.tsx b/packages/docusaurus-theme-classic/src/theme/EditThisPage/index.tsx
new file mode 100644
index 0000000000..c437a54d0a
--- /dev/null
+++ b/packages/docusaurus-theme-classic/src/theme/EditThisPage/index.tsx
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+import React from 'react';
+import Translate from '@docusaurus/Translate';
+
+import type {Props} from '@theme/EditThisPage';
+import IconEdit from '@theme/IconEdit';
+
+export default function EditThisPage({editUrl}: Props): JSX.Element {
+ return (
+
+
+
+ Edit this page
+
+
+ );
+}
diff --git a/packages/docusaurus-theme-classic/src/theme/NotFound.tsx b/packages/docusaurus-theme-classic/src/theme/NotFound.tsx
index caa509ab84..bbd776d302 100644
--- a/packages/docusaurus-theme-classic/src/theme/NotFound.tsx
+++ b/packages/docusaurus-theme-classic/src/theme/NotFound.tsx
@@ -7,6 +7,7 @@
import React from 'react';
import Layout from '@theme/Layout';
+import Translate from '@docusaurus/Translate';
function NotFound(): JSX.Element {
return (
@@ -14,11 +15,27 @@ function NotFound(): JSX.Element {
-
Page Not Found
-
We could not find what you were looking for.
+
+
+ Page Not Found
+
+
- Please contact the owner of the site that linked you to the
- original URL and let them know their link is broken.
+
+ We could not find what you were looking for.
+
+
+
+
+ Please contact the owner of the site that linked you to the
+ original URL and let them know their link is broken.
+
diff --git a/packages/docusaurus-theme-classic/src/theme/SkipToContent/index.tsx b/packages/docusaurus-theme-classic/src/theme/SkipToContent/index.tsx
index 32883e1b37..bd46017ae3 100644
--- a/packages/docusaurus-theme-classic/src/theme/SkipToContent/index.tsx
+++ b/packages/docusaurus-theme-classic/src/theme/SkipToContent/index.tsx
@@ -6,8 +6,8 @@
*/
import React, {useRef, useEffect} from 'react';
+import Translate from '@docusaurus/Translate';
import {useLocation} from '@docusaurus/router';
-
import styles from './styles.module.css';
function programmaticFocus(el) {
@@ -39,7 +39,11 @@ function SkipToContent(): JSX.Element {
return (
-
+
{
// The getPathsToWatch() generally returns the js/jsx/ts/tsx/md/mdx file paths
// We can use this method as well to know which folders we should try to extract translations from
// Hacky/implicit, but do we want to introduce a new lifecycle method for that???
- const allPathsToWatch = flatten(
- plugins.map((plugin) => plugin.getPathsToWatch?.() ?? []),
- );
+ const allPathsToWatch = flatten(plugins.map(getPluginSourceCodeFilePaths));
// Required for Windows support, as paths using \ should not be used by globby
// (also using the windows hard drive prefix like c: is not a good idea)
diff --git a/website/package.json b/website/package.json
index bff99a9562..281e45b127 100644
--- a/website/package.json
+++ b/website/package.json
@@ -10,6 +10,7 @@
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
"serve": "docusaurus serve",
+ "write-translations": "docusaurus write-translations",
"start:baseUrl": "cross-env BASE_URL='/build/' yarn start",
"build:baseUrl": "cross-env BASE_URL='/build/' yarn build",
"start:bootstrap": "cross-env DOCUSAURUS_PRESET=bootstrap yarn start",