Feat: add new Markdown parser (#39800)
and change all the challenges to new `md` format.
This commit is contained in:
committed by
GitHub
parent
a07f84c8ec
commit
0bd52f8bd1
@ -3,8 +3,14 @@ const crypto = require('crypto');
|
||||
function createChallengeNode(challenge, reporter) {
|
||||
// challengeType 11 is for video challenges (they only have instructions)
|
||||
// challengeType 7 is for certificates (they only have tests)
|
||||
|
||||
// TODO: either handle empty descriptions inside Gatsby OR ensure that
|
||||
// description defaults to '' when creating challenges.
|
||||
// ditto for seeds and instructions.
|
||||
// create-md should, then, not create empty seed, description or instruction
|
||||
// sections.
|
||||
if (
|
||||
typeof challenge.description[0] !== 'string' &&
|
||||
typeof challenge.description !== 'string' &&
|
||||
(challenge.challengeType !== 11 && challenge.challengeType !== 7)
|
||||
) {
|
||||
reporter.warn(`
|
||||
|
@ -34,7 +34,7 @@ exports.sourceNodes = function sourceChallengesSourceNodes(
|
||||
});
|
||||
|
||||
watcher.on('change', filePath =>
|
||||
/\.md$/.test(filePath)
|
||||
/\.md?$/.test(filePath)
|
||||
? onSourceChange(filePath)
|
||||
.then(challenge => {
|
||||
reporter.info(
|
||||
@ -61,13 +61,14 @@ File changed at ${filePath}, replacing challengeNode id ${challenge.id}
|
||||
.then(challenges =>
|
||||
challenges.map(challenge => createVisibleChallenge(challenge))
|
||||
)
|
||||
.catch(e =>
|
||||
.catch(e => {
|
||||
console.log(e);
|
||||
reporter.panic(`fcc-source-challenges
|
||||
|
||||
${e.message}
|
||||
|
||||
`)
|
||||
);
|
||||
`);
|
||||
});
|
||||
}
|
||||
|
||||
function createVisibleChallenge(challenge) {
|
||||
|
Reference in New Issue
Block a user