mirror of
https://github.com/facebook/docusaurus.git
synced 2025-05-09 15:17:23 +02:00
Add comments
This commit is contained in:
parent
df0f95e36f
commit
43ef3c8142
22 changed files with 114 additions and 62 deletions
|
@ -23,11 +23,12 @@ if (ENABLE_VERSIONING) {
|
|||
require("../../server/readMetadata.js").generateDocsMetadata();
|
||||
const Metadata = require("../metadata.js");
|
||||
|
||||
// language dropdown nav item for when translations are enabled
|
||||
class LanguageDropDown extends React.Component {
|
||||
render() {
|
||||
const enabledLanguages = [];
|
||||
let currentLanguage = "English";
|
||||
|
||||
// add all enabled languages to dropdown
|
||||
translation["languages"].map(lang => {
|
||||
if (lang.tag == this.props.language) {
|
||||
currentLanguage = lang.name;
|
||||
|
@ -43,11 +44,11 @@ class LanguageDropDown extends React.Component {
|
|||
</li>
|
||||
);
|
||||
});
|
||||
|
||||
// if no languages are enabled besides English, return null
|
||||
if (enabledLanguages.length < 1) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// add Crowdin project recruiting link
|
||||
if (siteConfig.recruitingLink) {
|
||||
enabledLanguages.push(
|
||||
<li key="recruiting">
|
||||
|
@ -94,6 +95,7 @@ class LanguageDropDown extends React.Component {
|
|||
}
|
||||
}
|
||||
|
||||
// header navbar used by all pages generated with docusaurus
|
||||
class HeaderNav extends React.Component {
|
||||
constructor() {
|
||||
super();
|
||||
|
@ -101,10 +103,11 @@ class HeaderNav extends React.Component {
|
|||
slideoutActive: false
|
||||
};
|
||||
}
|
||||
|
||||
// function to generate each header link, used with each object in siteConfig.headerLinks
|
||||
makeLinks(link) {
|
||||
let href;
|
||||
if (link.search && this.props.config.algolia) {
|
||||
// return algolia search bar
|
||||
return (
|
||||
<li className="navSearchWrapper reactNavSearchWrapper">
|
||||
<input id="search_input_react" type="text" placeholder="Search" />
|
||||
|
@ -112,12 +115,14 @@ class HeaderNav extends React.Component {
|
|||
);
|
||||
} else if (link.languages) {
|
||||
return (
|
||||
// return language dropdown
|
||||
<LanguageDropDown
|
||||
baseUrl={this.props.baseUrl}
|
||||
language={this.props.language}
|
||||
/>
|
||||
);
|
||||
} else if (link.doc) {
|
||||
// set link to document with current page's language/version
|
||||
let id;
|
||||
if (!ENABLE_VERSIONING || this.props.version === "next") {
|
||||
id = this.props.language + "-" + link.doc;
|
||||
|
@ -137,6 +142,7 @@ class HeaderNav extends React.Component {
|
|||
}
|
||||
href = this.props.config.baseUrl + Metadata[id].permalink;
|
||||
} else if (link.page) {
|
||||
// set link to page with current page's language if appropriate
|
||||
if (fs.existsSync(CWD + "/pages/en/" + link.page + ".js")) {
|
||||
href =
|
||||
siteConfig.baseUrl + this.props.language + "/" + link.page + ".html";
|
||||
|
@ -144,8 +150,10 @@ class HeaderNav extends React.Component {
|
|||
href = siteConfig.baseUrl + link.page + ".html";
|
||||
}
|
||||
} else if (link.href) {
|
||||
// set link to specified href
|
||||
href = link.href;
|
||||
} else if (link.blog) {
|
||||
// set link to blog url
|
||||
href = this.props.baseUrl + "blog";
|
||||
}
|
||||
return (
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue