From 7d36bf6635720c6dac0e4fb11a47aaddce2cb9af Mon Sep 17 00:00:00 2001 From: thomas Date: Fri, 22 Sep 2023 22:12:15 +0200 Subject: [PATCH] feat(generator): update generator --- README.md | 2 +- docs/src/content/docs/index.mdx | 4 +-- libs/cli/src/generators/app/generator.ts | 34 ++++++++++++++++++++++++ libs/cli/src/generators/app/schema.json | 2 +- 4 files changed, 38 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f95db84..c812807 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ If you would like to propose a challenge, this project is open source, so feel f ## Challenges -Check [all challenges](https://angular-challenges.vercel.app/) +Check [all 35 challenges](https://angular-challenges.vercel.app/) ## Challenges (previous version) diff --git a/docs/src/content/docs/index.mdx b/docs/src/content/docs/index.mdx index 1af2ed7..41848ac 100644 --- a/docs/src/content/docs/index.mdx +++ b/docs/src/content/docs/index.mdx @@ -19,8 +19,8 @@ hero: import { Card, CardGrid } from '@astrojs/starlight/components'; - - This repository gathers over 30 challenges related to Angular, Nx, Ngrx, RxJS, and Ngrx. + + This repository gathers 35 Challenges related to Angular, Nx, Ngrx, RxJS, and Ngrx. These challenges revolve around real-life issues or specific features to elevate your skills. diff --git a/libs/cli/src/generators/app/generator.ts b/libs/cli/src/generators/app/generator.ts index 90b2b7c..476307b 100644 --- a/libs/cli/src/generators/app/generator.ts +++ b/libs/cli/src/generators/app/generator.ts @@ -12,6 +12,7 @@ import { updateJson, } from '@nx/devkit'; import { Linter } from '@nx/linter'; +import { readFile, writeFile } from 'fs'; import { join } from 'path'; import { getProjectDir } from '../../utils/normalize'; import { Schema } from './schema'; @@ -69,6 +70,39 @@ export async function appGenerator(tree: Tree, options: Schema) { }); } + readFile('./README.md', 'utf-8', function (err, contents) { + const regex = new RegExp(`all ${challengeNumber} challenges`); + const replaced = contents.replace( + regex, + `all ${challengeNumber + 1} challenges` + ); + + writeFile('./README.md', replaced, 'utf-8', function (err) { + console.log(err); + }); + }); + + readFile( + './docs/src/content/docs/index.mdx', + 'utf-8', + function (err, contents) { + const regex = new RegExp(`${challengeNumber} Challenges`, 'gi'); + const replaced = contents.replace( + regex, + `${challengeNumber + 1} Challenges` + ); + + writeFile( + './docs/src/content/docs/index.mdx', + replaced, + 'utf-8', + function (err) { + console.log(err); + } + ); + } + ); + updateJson(tree, challengeNumberPath, (json) => { json.total = json.total + 1; return json; diff --git a/libs/cli/src/generators/app/schema.json b/libs/cli/src/generators/app/schema.json index dce563c..91b60ef 100644 --- a/libs/cli/src/generators/app/schema.json +++ b/libs/cli/src/generators/app/schema.json @@ -113,5 +113,5 @@ } }, "additionalProperties": false, - "required": ["name", "title", "challengeNumber"] + "required": ["name", "title", "challengeDifficulty", "docRepository"] }