refactor: organise TypeScript config and migrate helpers (#44747)

* feat: allow more 1000 steps to be created at once

* refactor: start migrating to typescript

* refactor: delete-step to ts

* refactor: migrated some helpers

* refactor: migrate create-empty-steps

* refactor: migrate create-step-between

* refactor: finish migrating to TS

* refactor: migrate tests

* fix: ensure mock.restore is done after each test

* fix: prevent double-tscing

* fix: repair the tests

* chore: use ts-node for scripts

We don't need the performance boost of incremental compilation and
ts-node is easier to work with

* refactor: consolidate tsconfigs

* refactor: replace gulp

* fix: use ts-node for build-curriculum

* fix: allow ts compilation of config

* feat: create and use create:config script

* fix: add /config to eslint projects

* fix: remove gulp script
This commit is contained in:
Oliver Eyton-Williams
2022-01-25 11:34:16 +01:00
committed by GitHub
parent 82ca6d8441
commit 7216ca55cc
61 changed files with 444 additions and 4287 deletions

View File

@ -12,26 +12,25 @@ const globalConfigPath = path.resolve(__dirname, '../../../config');
const { FREECODECAMP_NODE_ENV } = process.env;
function checkClientLocale() {
if (!process.env.CLIENT_LOCALE) throw Error('CLIENT_LOCALE is not set');
if (!availableLangs.client.includes(process.env.CLIENT_LOCALE)) {
/* eslint-disable @typescript-eslint/restrict-template-expressions */
throw Error(`
CLIENT_LOCALE, ${process.env.CLIENT_LOCALE}, is not an available language in config/i18n/all-langs.ts
`);
/* eslint-enable @typescript-eslint/restrict-template-expressions */
}
}
function checkCurriculumLocale() {
if (!process.env.CURRICULUM_LOCALE)
throw Error('CURRICULUM_LOCALE is not set');
if (!availableLangs.curriculum.includes(process.env.CURRICULUM_LOCALE)) {
/* eslint-disable @typescript-eslint/restrict-template-expressions */
throw Error(`
CURRICULUM_LOCALE, ${process.env.CURRICULUM_LOCALE}, is not an available language in config/i18n/all-langs.ts
`);
/* eslint-enable @typescript-eslint/restrict-template-expressions */
}
}