From bfb28441b4aaf86a77d2949c7ea09931da01cc68 Mon Sep 17 00:00:00 2001 From: Eric Nakagawa Date: Thu, 19 Oct 2017 09:57:10 -0700 Subject: [PATCH] This PR will create a default set of docs to use when localization is enabled. This allows seeing using the site without having synced with crowdin. Once synced, those files will replace the default set generated by this PR. --- lib/server/readMetadata.js | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/lib/server/readMetadata.js b/lib/server/readMetadata.js index 7c71981c47..4429668741 100644 --- a/lib/server/readMetadata.js +++ b/lib/server/readMetadata.js @@ -191,6 +191,7 @@ function generateMetadataDocs() { }); const metadatas = {}; + const defaultMetadatas = {}; // metadata for english files let files = glob.sync(CWD + "/../docs/**"); @@ -206,6 +207,34 @@ function generateMetadataDocs() { } let metadata = res.metadata; metadatas[metadata.id] = metadata; + + // create a default list of documents for each enabled language based on docs in English + // these will get replaced if/when the localized file is downloaded from crowdin + enabledLanguages + .filter(language => { + return language != "en"; + }) + .map(language => { + let baseMetadata = Object.assign({}, metadata); + baseMetadata["id"] = baseMetadata["id"] + .toString() + .replace(/^en-/, language + "-"); + if (baseMetadata["permalink"]) + baseMetadata["permalink"] = baseMetadata["permalink"] + .toString() + .replace(/^ddocs\/en/, "docs/" + language + "/"); + if (baseMetadata["next"]) + baseMetadata["next"] = baseMetadata["next"] + .toString() + .replace(/^en-/, language + "-"); + if (baseMetadata["previous"]) + baseMetadata["previous"] = baseMetadata["previous"] + .toString() + .replace(/^en-/, language + "-"); + baseMetadata["language"] = language; + defaultMetadatas[baseMetadata["id"]] = baseMetadata; + }); + Object.assign(metadatas, defaultMetadatas); } });