@docusaurus/core 2.4.0 → 2.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/beforeCli.mjs CHANGED
@@ -104,10 +104,20 @@ export default async function beforeCli() {
104
104
  .filter((p) => p.startsWith('@docusaurus'))
105
105
  .map((p) => p.concat('@latest'))
106
106
  .join(' ');
107
- const isYarnUsed = await fs.pathExists(path.resolve('yarn.lock'));
108
- const upgradeCommand = isYarnUsed
109
- ? `yarn upgrade ${siteDocusaurusPackagesForUpdate}`
110
- : `npm i ${siteDocusaurusPackagesForUpdate}`;
107
+
108
+ const getUpgradeCommand = async () => {
109
+ const isYarnUsed = await fs.pathExists(path.resolve('yarn.lock'));
110
+ if (!isYarnUsed) {
111
+ return `npm i ${siteDocusaurusPackagesForUpdate}`;
112
+ }
113
+
114
+ const isYarnClassicUsed = !(await fs.pathExists(
115
+ path.resolve('.yarnrc.yml'),
116
+ ));
117
+ return isYarnClassicUsed
118
+ ? `yarn upgrade ${siteDocusaurusPackagesForUpdate}`
119
+ : `yarn up ${siteDocusaurusPackagesForUpdate}`;
120
+ };
111
121
 
112
122
  /** @type {import('boxen').Options} */
113
123
  const boxenOptions = {
@@ -124,7 +134,7 @@ export default async function beforeCli() {
124
134
  )} → ${logger.green(`${notifier.update.latest}`)}
125
135
 
126
136
  To upgrade Docusaurus packages with the latest version, run the following command:
127
- ${logger.code(upgradeCommand)}`,
137
+ ${logger.code(await getUpgradeCommand())}`,
128
138
  boxenOptions,
129
139
  );
130
140
 
package/lib/client/App.js CHANGED
@@ -20,6 +20,7 @@ import SiteMetadataDefaults from './SiteMetadataDefaults';
20
20
  // TODO, quick fix for CSS insertion order
21
21
  // eslint-disable-next-line import/order
22
22
  import ErrorBoundary from '@docusaurus/ErrorBoundary';
23
+ import HasHydratedDataAttribute from './hasHydratedDataAttribute';
23
24
  export default function App() {
24
25
  const routeElement = renderRoutes(routes);
25
26
  const location = useLocation();
@@ -34,6 +35,7 @@ export default function App() {
34
35
  {routeElement}
35
36
  </PendingNavigation>
36
37
  </Root>
38
+ <HasHydratedDataAttribute />
37
39
  </BrowserContextProvider>
38
40
  </DocusaurusContextProvider>
39
41
  </ErrorBoundary>);
@@ -11,9 +11,11 @@ import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
11
11
  import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
12
12
  // Double-security: critical CSS will hide the banner if CSS can load!
13
13
  import './styles.module.css';
14
- const BannerContainerId = 'docusaurus-base-url-issue-banner-container';
15
- const BannerId = 'docusaurus-base-url-issue-banner';
16
- const SuggestionContainerId = 'docusaurus-base-url-issue-banner-suggestion-container';
14
+ // __ prefix allows search crawlers (Algolia/DocSearch) to ignore anchors
15
+ // https://github.com/facebook/docusaurus/issues/8883#issuecomment-1516328368
16
+ const BannerContainerId = '__docusaurus-base-url-issue-banner-container';
17
+ const BannerId = '__docusaurus-base-url-issue-banner';
18
+ const SuggestionContainerId = '__docusaurus-base-url-issue-banner-suggestion-container';
17
19
  const InsertBannerWindowAttribute = '__DOCUSAURUS_INSERT_BASEURL_BANNER';
18
20
  // It is important to not use React to render this banner
19
21
  // otherwise Google would index it, even if it's hidden with some critical CSS!
@@ -5,6 +5,6 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- :global(#docusaurus-base-url-issue-banner-container) {
8
+ :global(#__docusaurus-base-url-issue-banner-container) {
9
9
  display: none;
10
10
  }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ /// <reference types="react" />
8
+ export default function HasHydratedDataAttribute(): JSX.Element;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import React from 'react';
8
+ import Head from '@docusaurus/Head';
9
+ import useIsBrowser from '@docusaurus/useIsBrowser';
10
+ // See https://github.com/facebook/docusaurus/pull/9256
11
+ // Docusaurus adds a <html data-has-hydrated="true"> after hydration
12
+ export default function HasHydratedDataAttribute() {
13
+ const isBrowser = useIsBrowser();
14
+ return (<Head>
15
+ <html data-has-hydrated={isBrowser}/>
16
+ </Head>);
17
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@docusaurus/core",
3
3
  "description": "Easy to Maintain Open Source Documentation Websites",
4
- "version": "2.4.0",
4
+ "version": "2.4.3",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -43,13 +43,13 @@
43
43
  "@babel/runtime": "^7.18.6",
44
44
  "@babel/runtime-corejs3": "^7.18.6",
45
45
  "@babel/traverse": "^7.18.8",
46
- "@docusaurus/cssnano-preset": "2.4.0",
47
- "@docusaurus/logger": "2.4.0",
48
- "@docusaurus/mdx-loader": "2.4.0",
46
+ "@docusaurus/cssnano-preset": "2.4.3",
47
+ "@docusaurus/logger": "2.4.3",
48
+ "@docusaurus/mdx-loader": "2.4.3",
49
49
  "@docusaurus/react-loadable": "5.5.2",
50
- "@docusaurus/utils": "2.4.0",
51
- "@docusaurus/utils-common": "2.4.0",
52
- "@docusaurus/utils-validation": "2.4.0",
50
+ "@docusaurus/utils": "2.4.3",
51
+ "@docusaurus/utils-common": "2.4.3",
52
+ "@docusaurus/utils-validation": "2.4.3",
53
53
  "@slorber/static-site-generator-webpack-plugin": "^4.0.7",
54
54
  "@svgr/webpack": "^6.2.1",
55
55
  "autoprefixer": "^10.4.7",
@@ -106,8 +106,8 @@
106
106
  "webpackbar": "^5.0.2"
107
107
  },
108
108
  "devDependencies": {
109
- "@docusaurus/module-type-aliases": "2.4.0",
110
- "@docusaurus/types": "2.4.0",
109
+ "@docusaurus/module-type-aliases": "2.4.3",
110
+ "@docusaurus/types": "2.4.3",
111
111
  "@types/detect-port": "^1.3.2",
112
112
  "@types/react-dom": "^18.0.6",
113
113
  "@types/react-router-config": "^5.0.6",
@@ -127,5 +127,5 @@
127
127
  "engines": {
128
128
  "node": ">=16.14"
129
129
  },
130
- "gitHead": "898b85ef134cc43bf3b1209aad0ca8cdcfb214c5"
130
+ "gitHead": "56410aa94665699f75cb889f477ccdffb98f2b21"
131
131
  }