@docusaurus/core 0.0.0-5917 → 0.0.0-5921

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.
Files changed (2) hide show
  1. package/lib/commands/serve.js +19 -4
  2. package/package.json +10 -10
@@ -15,9 +15,16 @@ const logger_1 = tslib_1.__importDefault(require("@docusaurus/logger"));
15
15
  const utils_1 = require("@docusaurus/utils");
16
16
  const serve_handler_1 = tslib_1.__importDefault(require("serve-handler"));
17
17
  const openBrowser_1 = tslib_1.__importDefault(require("react-dev-utils/openBrowser"));
18
+ const utils_common_1 = require("@docusaurus/utils-common");
18
19
  const config_1 = require("../server/config");
19
20
  const build_1 = require("./build");
20
21
  const getHostPort_1 = require("../server/getHostPort");
22
+ function redirect(res, location) {
23
+ res.writeHead(302, {
24
+ Location: location,
25
+ });
26
+ res.end();
27
+ }
21
28
  async function serve(siteDirParam = '.', cliOptions = {}) {
22
29
  const siteDir = await fs_extra_1.default.realpath(siteDirParam);
23
30
  const buildDir = cliOptions.dir ?? utils_1.DEFAULT_BUILD_DIR_NAME;
@@ -40,14 +47,22 @@ async function serve(siteDirParam = '.', cliOptions = {}) {
40
47
  const server = http_1.default.createServer((req, res) => {
41
48
  // Automatically redirect requests to /baseUrl/
42
49
  if (!req.url?.startsWith(baseUrl)) {
43
- res.writeHead(302, {
44
- Location: baseUrl,
45
- });
46
- res.end();
50
+ redirect(res, baseUrl);
51
+ return;
52
+ }
53
+ // We do the redirect ourselves for a good reason
54
+ // server-handler is annoying and won't include /baseUrl/ in redirects
55
+ const normalizedUrl = (0, utils_common_1.applyTrailingSlash)(req.url, { trailingSlash, baseUrl });
56
+ if (req.url !== normalizedUrl) {
57
+ redirect(res, normalizedUrl);
47
58
  return;
48
59
  }
49
60
  // Remove baseUrl before calling serveHandler, because /baseUrl/ should
50
61
  // serve /build/index.html, not /build/baseUrl/index.html (does not exist)
62
+ // Note server-handler is really annoying here:
63
+ // - no easy way to do rewrites such as "/baseUrl/:path" => "/:path"
64
+ // - no easy way to "reapply" the baseUrl to the redirect "Location" header
65
+ // See also https://github.com/facebook/docusaurus/pull/10090
51
66
  req.url = req.url.replace(baseUrl, '/');
52
67
  (0, serve_handler_1.default)(req, res, {
53
68
  cleanUrls: true,
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": "0.0.0-5917",
4
+ "version": "0.0.0-5921",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -43,12 +43,12 @@
43
43
  "@babel/runtime": "^7.22.6",
44
44
  "@babel/runtime-corejs3": "^7.22.6",
45
45
  "@babel/traverse": "^7.22.8",
46
- "@docusaurus/cssnano-preset": "0.0.0-5917",
47
- "@docusaurus/logger": "0.0.0-5917",
48
- "@docusaurus/mdx-loader": "0.0.0-5917",
49
- "@docusaurus/utils": "0.0.0-5917",
50
- "@docusaurus/utils-common": "0.0.0-5917",
51
- "@docusaurus/utils-validation": "0.0.0-5917",
46
+ "@docusaurus/cssnano-preset": "0.0.0-5921",
47
+ "@docusaurus/logger": "0.0.0-5921",
48
+ "@docusaurus/mdx-loader": "0.0.0-5921",
49
+ "@docusaurus/utils": "0.0.0-5921",
50
+ "@docusaurus/utils-common": "0.0.0-5921",
51
+ "@docusaurus/utils-validation": "0.0.0-5921",
52
52
  "@svgr/webpack": "^6.5.1",
53
53
  "autoprefixer": "^10.4.14",
54
54
  "babel-loader": "^9.1.3",
@@ -104,8 +104,8 @@
104
104
  "webpackbar": "^5.0.2"
105
105
  },
106
106
  "devDependencies": {
107
- "@docusaurus/module-type-aliases": "0.0.0-5917",
108
- "@docusaurus/types": "0.0.0-5917",
107
+ "@docusaurus/module-type-aliases": "0.0.0-5921",
108
+ "@docusaurus/types": "0.0.0-5921",
109
109
  "@total-typescript/shoehorn": "^0.1.2",
110
110
  "@types/detect-port": "^1.3.3",
111
111
  "@types/react-dom": "^18.2.7",
@@ -125,5 +125,5 @@
125
125
  "engines": {
126
126
  "node": ">=18.0"
127
127
  },
128
- "gitHead": "01a12610bcb9050a1e58d83fa4944b2ab2bca69f"
128
+ "gitHead": "05d2f279b80e4aca48f7284e6ae89626facbb009"
129
129
  }