docusaurus/lib/server/translation.js
Héctor Ramos 65421db62e 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
2017-12-04 19:21:02 -08:00

46 lines
1.1 KiB
JavaScript

/**
* 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.
*/
// translation object contains all translations for each string in 18n/en.json
const CWD = process.cwd();
const fs = require('fs');
const glob = require('glob');
const path = require('path');
let languages;
if (fs.existsSync(CWD + '/languages.js')) {
languages = require(CWD + '/languages.js');
} else {
languages = [
{
enabled: true,
name: 'English',
tag: 'en',
},
];
}
const enabledLanguages = languages.filter(lang => lang.enabled);
const translation = {languages: enabledLanguages};
const files = glob.sync(CWD + '/i18n/**');
const langRegex = /\/i18n\/(.*)\.json$/;
console.log('Loading translation files...');
files.forEach(file => {
const extension = path.extname(file);
if (extension === '.json') {
const match = langRegex.exec(file);
const language = match[1];
translation[language] = require(file);
}
});
module.exports = translation;