Revert "Add ability to specify sub categories in sidebar.json (#891)"

This reverts commit 16087b4428.
This commit is contained in:
Yangshun Tay 2018-08-06 18:58:54 -07:00 committed by GitHub
parent 16087b4428
commit d2b30dc3ed
14 changed files with 86 additions and 533 deletions

View file

@ -33,13 +33,6 @@ const SupportedHeaderFields = new Set([
'custom_edit_url',
]);
let allSidebars;
if (fs.existsSync(`${CWD}/sidebars.json`)) {
allSidebars = require(`${CWD}/sidebars.json`);
} else {
allSidebars = {};
}
// Can have a custom docs path. Top level folder still needs to be in directory
// at the same level as `website`, not inside `website`.
// e.g., docs/whereDocsReallyExist
@ -49,36 +42,27 @@ if (fs.existsSync(`${CWD}/sidebars.json`)) {
function getDocsPath() {
return siteConfig.customDocsPath ? siteConfig.customDocsPath : 'docs';
}
// returns map from id to object containing sidebar ordering info
function readSidebar(sidebars = {}) {
Object.assign(sidebars, versionFallback.sidebarData());
function readSidebar() {
let allSidebars;
if (fs.existsSync(`${CWD}/sidebars.json`)) {
allSidebars = require(`${CWD}/sidebars.json`);
} else {
allSidebars = {};
}
Object.assign(allSidebars, versionFallback.sidebarData());
const order = {};
Object.keys(sidebars).forEach(sidebar => {
const categories = sidebars[sidebar];
Object.keys(allSidebars).forEach(sidebar => {
const categories = allSidebars[sidebar];
let ids = [];
const categoryOrder = [];
const subCategoryOrder = [];
Object.keys(categories).forEach(category => {
if (Array.isArray(categories[category])) {
ids = ids.concat(categories[category]);
for (let i = 0; i < categories[category].length; i++) {
categoryOrder.push(category);
subCategoryOrder.push('');
}
} else {
Object.keys(categories[category]).forEach(subCategory => {
ids = ids.concat(categories[category][subCategory]);
for (let i = 0; i < categories[category][subCategory].length; i++) {
categoryOrder.push(category);
subCategoryOrder.push(subCategory);
}
});
ids = ids.concat(categories[category]);
for (let i = 0; i < categories[category].length; i++) {
categoryOrder.push(category);
}
});
@ -86,22 +70,16 @@ function readSidebar(sidebars = {}) {
const id = ids[i];
let previous;
let next;
if (i > 0) previous = ids[i - 1];
if (i < ids.length - 1) next = ids[i + 1];
order[id] = {
previous,
next,
sidebar,
category: categoryOrder[i],
sub_category: subCategoryOrder[i],
sort: i + 1,
};
}
});
return order;
}
@ -161,14 +139,12 @@ function processMetadata(file, refDir) {
metadata.id = (env.translation.enabled ? `${language}-` : '') + metadata.id;
metadata.language = env.translation.enabled ? language : 'en';
const order = readSidebar(allSidebars);
const order = readSidebar();
const id = metadata.localized_id;
if (order[id]) {
metadata.sidebar = order[id].sidebar;
metadata.category = order[id].category;
metadata.sub_category = order[id].sub_category;
metadata.sort = order[id].sort;
if (order[id].next) {
metadata.next_id = order[id].next;
@ -189,7 +165,7 @@ function processMetadata(file, refDir) {
function generateMetadataDocs() {
let order;
try {
order = readSidebar(allSidebars);
order = readSidebar();
} catch (e) {
console.error(e);
process.exit(1);
@ -272,9 +248,6 @@ function generateMetadataDocs() {
if (order[id]) {
metadata.sidebar = order[id].sidebar;
metadata.category = order[id].category;
metadata.sub_category = order[id].sub_category;
metadata.sort = order[id].sort;
if (order[id].next) {
metadata.next_id = order[id].next.replace(
`version-${metadata.version}-`,