mirror of
https://github.com/facebook/docusaurus.git
synced 2025-05-13 09:07:29 +02:00
Add Prettier Formatting (#258)
* Add Prettier formatting to source files and example files, and check that Prettier formatting is maintained on PRs * Remove trailing-comma as we are using Node 6 on Circle * Use latest Node 6 LTS version in Circle * Remove unused test
This commit is contained in:
parent
0cead4b6f9
commit
65421db62e
50 changed files with 1376 additions and 1350 deletions
|
@ -7,36 +7,36 @@
|
|||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
const glob = require("glob");
|
||||
const fs = require("fs-extra");
|
||||
const path = require("path");
|
||||
const mkdirp = require("mkdirp");
|
||||
const chalk = require("chalk");
|
||||
const readMetadata = require("./server/readMetadata.js");
|
||||
const versionFallback = require("./server/versionFallback.js");
|
||||
const glob = require('glob');
|
||||
const fs = require('fs-extra');
|
||||
const path = require('path');
|
||||
const mkdirp = require('mkdirp');
|
||||
const chalk = require('chalk');
|
||||
const readMetadata = require('./server/readMetadata.js');
|
||||
const versionFallback = require('./server/versionFallback.js');
|
||||
|
||||
const CWD = process.cwd();
|
||||
let versions;
|
||||
if (fs.existsSync(CWD + "/versions.json")) {
|
||||
versions = require(CWD + "/versions.json");
|
||||
if (fs.existsSync(CWD + '/versions.json')) {
|
||||
versions = require(CWD + '/versions.json');
|
||||
} else {
|
||||
versions = [];
|
||||
}
|
||||
|
||||
let version;
|
||||
|
||||
const program = require("commander");
|
||||
const program = require('commander');
|
||||
program
|
||||
.arguments("<version>")
|
||||
.arguments('<version>')
|
||||
.action(ver => {
|
||||
version = ver;
|
||||
})
|
||||
.parse(process.argv);
|
||||
|
||||
if (typeof version === "undefined") {
|
||||
if (typeof version === 'undefined') {
|
||||
console.error(
|
||||
`${chalk.yellow(
|
||||
"No version number specified!"
|
||||
'No version number specified!'
|
||||
)}\nPass the version you wish to create as an argument.\nEx: 1.0.0`
|
||||
);
|
||||
process.exit(1);
|
||||
|
@ -45,34 +45,34 @@ if (typeof version === "undefined") {
|
|||
if (versions.includes(version)) {
|
||||
console.error(
|
||||
`${chalk.yellow(
|
||||
"This version already exists!"
|
||||
'This version already exists!'
|
||||
)}\nSpecify a new version to create that does not already exist.`
|
||||
);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
function makeHeader(metadata) {
|
||||
let header = "---\n";
|
||||
let header = '---\n';
|
||||
Object.keys(metadata).forEach(key => {
|
||||
header += key + ": " + metadata[key] + "\n";
|
||||
header += key + ': ' + metadata[key] + '\n';
|
||||
});
|
||||
header += "---\n";
|
||||
header += '---\n';
|
||||
return header;
|
||||
}
|
||||
|
||||
const versionFolder = CWD + "/versioned_docs/version-" + version;
|
||||
const versionFolder = CWD + '/versioned_docs/version-' + version;
|
||||
|
||||
mkdirp.sync(versionFolder);
|
||||
|
||||
// copy necessary files to new version, changing some of its metadata to reflect the versioning
|
||||
let files = glob.sync(CWD + "/../" + readMetadata.getDocsPath() + "/*");
|
||||
let files = glob.sync(CWD + '/../' + readMetadata.getDocsPath() + '/*');
|
||||
files.forEach(file => {
|
||||
const ext = path.extname(file);
|
||||
if (ext !== ".md" && ext !== ".markdown") {
|
||||
if (ext !== '.md' && ext !== '.markdown') {
|
||||
return;
|
||||
}
|
||||
|
||||
const res = readMetadata.extractMetadata(fs.readFileSync(file, "utf8"));
|
||||
const res = readMetadata.extractMetadata(fs.readFileSync(file, 'utf8'));
|
||||
let metadata = res.metadata;
|
||||
// Don't version any docs without any metadata whatsoever.
|
||||
if (Object.keys(metadata).length === 0) {
|
||||
|
@ -82,7 +82,7 @@ files.forEach(file => {
|
|||
if (!metadata.id) {
|
||||
metadata.id = path.basename(file, path.extname(file));
|
||||
}
|
||||
if (metadata.id.includes("/")) {
|
||||
if (metadata.id.includes('/')) {
|
||||
throw new Error('Document id cannot include "/".');
|
||||
}
|
||||
if (!metadata.title) {
|
||||
|
@ -94,22 +94,22 @@ files.forEach(file => {
|
|||
}
|
||||
|
||||
metadata.original_id = metadata.id;
|
||||
metadata.id = "version-" + version + "-" + metadata.id;
|
||||
metadata.id = 'version-' + version + '-' + metadata.id;
|
||||
|
||||
const targetFile =
|
||||
CWD + "/versioned_docs/version-" + version + "/" + path.basename(file);
|
||||
CWD + '/versioned_docs/version-' + version + '/' + path.basename(file);
|
||||
|
||||
fs.writeFileSync(targetFile, makeHeader(metadata) + rawContent, "utf8");
|
||||
fs.writeFileSync(targetFile, makeHeader(metadata) + rawContent, 'utf8');
|
||||
});
|
||||
|
||||
// copy sidebar if necessary
|
||||
if (versionFallback.diffLatestSidebar()) {
|
||||
mkdirp(CWD + "/versioned_sidebars");
|
||||
const sidebar = JSON.parse(fs.readFileSync(CWD + "/sidebars.json", "utf8"));
|
||||
mkdirp(CWD + '/versioned_sidebars');
|
||||
const sidebar = JSON.parse(fs.readFileSync(CWD + '/sidebars.json', 'utf8'));
|
||||
const versioned = {};
|
||||
|
||||
Object.keys(sidebar).forEach(sb => {
|
||||
const version_sb = "version-" + version + "-" + sb;
|
||||
const version_sb = 'version-' + version + '-' + sb;
|
||||
versioned[version_sb] = {};
|
||||
|
||||
const categories = sidebar[sb];
|
||||
|
@ -118,20 +118,20 @@ if (versionFallback.diffLatestSidebar()) {
|
|||
|
||||
const ids = categories[category];
|
||||
ids.forEach((id, index) => {
|
||||
versioned[version_sb][category].push("version-" + version + "-" + id);
|
||||
versioned[version_sb][category].push('version-' + version + '-' + id);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
fs.writeFileSync(
|
||||
CWD + "/versioned_sidebars/version-" + version + "-sidebars.json",
|
||||
CWD + '/versioned_sidebars/version-' + version + '-sidebars.json',
|
||||
JSON.stringify(versioned, null, 2),
|
||||
"utf8"
|
||||
'utf8'
|
||||
);
|
||||
}
|
||||
|
||||
// update versions.json file
|
||||
versions.unshift(version);
|
||||
fs.writeFileSync(CWD + "/versions.json", JSON.stringify(versions, null, 2));
|
||||
fs.writeFileSync(CWD + '/versions.json', JSON.stringify(versions, null, 2));
|
||||
|
||||
console.log(`${chalk.green("Version " + version + " created!\n")}`);
|
||||
console.log(`${chalk.green('Version ' + version + ' created!\n')}`);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue