docusaurus/packages/docusaurus-1.x/lib/server/routing.js
Endilie Yacop Sucipto 1f91d19a8c
chore: move to monorepo (#1297)
* chore: move to monorepo

* lint all js file

* simplify circleCI

* fix failing tests

* fix tests due to folder rename

* fix test since v1 website is renamed
2019-03-23 14:21:36 +07:00

55 lines
1.2 KiB
JavaScript

/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
function blog(siteConfig) {
return new RegExp(`^${siteConfig.baseUrl}blog/.*html$`);
}
function docs(siteConfig) {
const docsPart = `${siteConfig.docsUrl ? `${siteConfig.docsUrl}/` : ''}`;
return new RegExp(`^${siteConfig.baseUrl}${docsPart}.*html$`);
}
function dotfiles() {
return /(?!.*html$)^\/.*\.[^\n/]+$/;
}
function feed(siteConfig) {
return new RegExp(`^${siteConfig.baseUrl}blog/(feed.xml|atom.xml)$`);
}
function noExtension() {
return /\/[^.]*\/?$/;
}
function page(siteConfig) {
const gr = regex => regex.toString().replace(/(^\/|\/$)/gm, '');
if (siteConfig.docsUrl === '') {
return new RegExp(
`(?!${gr(blog(siteConfig))})^${siteConfig.baseUrl}.*.html$`,
);
}
return new RegExp(
`(?!${gr(blog(siteConfig))}|${gr(docs(siteConfig))})^${
siteConfig.baseUrl
}.*.html$`,
);
}
function sitemap(siteConfig) {
return new RegExp(`^${siteConfig.baseUrl}sitemap.xml$`);
}
module.exports = {
blog,
docs,
dotfiles,
feed,
page,
noExtension,
sitemap,
};