2018-10-04 16:36:00 +00:00
|
|
|
const invariant = require('invariant');
|
|
|
|
|
2020-12-16 08:02:52 +00:00
|
|
|
const {
|
|
|
|
curriculum: curriculumLangs
|
|
|
|
} = require('../client/i18n/allLangs').availableLangs;
|
|
|
|
|
2018-10-04 16:36:00 +00:00
|
|
|
function validateLang(lang) {
|
|
|
|
invariant(lang, 'Please provide a language');
|
|
|
|
invariant(
|
2020-12-16 08:02:52 +00:00
|
|
|
curriculumLangs.includes(lang),
|
2018-10-04 16:36:00 +00:00
|
|
|
`${lang} is not supported
|
|
|
|
|
2020-12-16 08:02:52 +00:00
|
|
|
Supported languages: ${JSON.stringify(curriculumLangs, null, 2)}
|
2018-10-04 16:36:00 +00:00
|
|
|
|
|
|
|
`
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2018-10-05 11:20:51 +00:00
|
|
|
function getCurriculum(lang) {
|
2018-10-04 16:36:00 +00:00
|
|
|
validateLang(lang);
|
2018-10-09 19:26:37 +00:00
|
|
|
const curriculum = require(`./build/curriculum-${lang}.json`);
|
|
|
|
return curriculum;
|
2018-10-04 16:36:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
exports.getChallengesForLang = getCurriculum;
|