/** * 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. */ const React = require('react'); const fs = require('fs'); const HeaderNav = require('./nav/HeaderNav.js'); const Head = require('./Head.js'); const Footer = require(process.cwd() + '/core/Footer.js'); const translation = require('../server/translation.js'); const CWD = process.cwd(); // Component used to provide same head, header, footer, other scripts to all pages class Site extends React.Component { render() { const tagline = translation[this.props.language] ? translation[this.props.language]['localized-strings'].tagline : this.props.config.tagline; const title = this.props.title ? this.props.title + ' · ' + this.props.config.title : (!this.props.config.disableTitleTagline && this.props.config.title + ' · ' + tagline) || this.props.config.title; const description = this.props.description || tagline; const url = this.props.config.url + this.props.config.baseUrl + (this.props.url || 'index.html'); let latestVersion; const highlightDefaultVersion = '9.12.0'; const highlightConfig = this.props.config.highlight || { version: highlightDefaultVersion, theme: 'default', }; const highlightVersion = highlightConfig.version || highlightDefaultVersion; if (fs.existsSync(CWD + '/versions.json')) { latestVersion = require(CWD + '/versions.json')[0]; } return (