From 6cb5c5c4158e8eb707e2887ef418c7c7045d93bf Mon Sep 17 00:00:00 2001 From: thomas Date: Thu, 23 Nov 2023 22:42:42 +0400 Subject: [PATCH] feat: add collection for authors --- apps/angular/anchor-scrolling/README.md | 2 +- apps/angular/bug-cd/README.md | 2 +- apps/angular/context-outlet-type/README.md | 2 +- apps/angular/crud/README.md | 2 +- apps/angular/decoupling/README.md | 2 +- apps/angular/di/README.md | 2 +- apps/angular/injection-token/README.md | 2 +- apps/angular/interop-rxjs-signal/README.md | 2 +- apps/angular/module-to-standalone/README.md | 2 +- apps/angular/ngfor-enhancement/README.md | 2 +- apps/angular/permissions/README.md | 2 +- apps/angular/pipe-easy/README.md | 2 +- apps/angular/pipe-hard/README.md | 2 +- apps/angular/pipe-intermediate/README.md | 2 +- apps/angular/projection/README.md | 2 +- apps/angular/router-input/README.md | 2 +- apps/angular/styling/README.md | 2 +- apps/ngrx/effect-selector/README.md | 2 +- apps/ngrx/notification/README.md | 2 +- apps/performance/default-onpush/README.md | 2 +- apps/performance/memoized/README.md | 2 +- apps/performance/ngfor-biglist/README.md | 2 +- apps/performance/ngfor-optimize/README.md | 2 +- apps/performance/scroll-cd/README.md | 2 +- apps/rxjs/pipe-bug/README.md | 2 +- apps/rxjs/race-condition/README.md | 2 +- apps/testing/checkbox/README.md | 2 +- apps/testing/create-harness/README.md | 2 +- apps/testing/harness/README.md | 2 +- apps/testing/input-output/README.md | 2 +- apps/testing/modal/README.md | 2 +- apps/testing/nested/README.md | 2 +- apps/testing/router-outlet/README.md | 2 +- apps/testing/table/README.md | 2 +- apps/testing/todos-list/README.md | 2 +- apps/typescript/overload/README.md | 2 +- docs/src/components/Author.astro | 41 ++++++++++++++ docs/src/components/Content.astro | 13 +++-- docs/src/components/VideoButton.astro | 6 +++ .../src/content/authors/devesh-chaudhari.json | 4 ++ docs/src/content/authors/thomas-laforge.json | 6 +++ docs/src/content/config.ts | 53 ++++++++++++------- .../docs/challenges/angular/1-projection.md | 2 +- .../challenges/angular/10-pipe-utility.md | 2 +- .../docs/challenges/angular/13-styling.md | 2 +- .../content/docs/challenges/angular/16-di.md | 2 +- .../challenges/angular/21-achor-scrolling.md | 2 +- .../challenges/angular/22-router-input.md | 2 +- .../angular/3-directive-enhancement.md | 2 +- .../angular/30-interop-rxjs-signal.md | 2 +- .../angular/31-module-to-standalone.md | 2 +- .../docs/challenges/angular/32-bug-cd.md | 2 +- .../docs/challenges/angular/33-decoupling.md | 2 +- .../challenges/angular/39-injection-token.md | 2 +- .../angular/4-context-outlet-typed.md | 2 +- .../content/docs/challenges/angular/5-crud.md | 2 +- .../docs/challenges/angular/6-permissions.md | 2 +- .../docs/challenges/angular/8-pipe-pure.md | 2 +- .../docs/challenges/angular/9-pipe-wrapFn.md | 2 +- .../docs/challenges/ngrx/2-effect-selector.md | 2 +- .../docs/challenges/ngrx/7-power-effect.md | 2 +- .../challenges/nx/25-generator-lib-ext.md | 2 +- .../docs/challenges/nx/26-generator-comp.md | 14 ++--- .../docs/challenges/nx/27-forbid-enum-rule.md | 2 +- .../challenges/performance/12-scroll-cd.md | 2 +- .../performance/34-default-onpush.md | 2 +- .../docs/challenges/performance/35-memoize.md | 2 +- .../performance/36-ngfor-optimize.md | 2 +- .../performance/37-ngfor-biglist.md | 2 +- .../rxjs/11-bug-chaining-operator.md | 2 +- .../docs/challenges/rxjs/14-race-condition.md | 2 +- .../challenges/rxjs/38-rxjs-catch-error.md | 2 +- .../docs/challenges/testing/17-router.md | 2 +- .../docs/challenges/testing/18-nested-comp.md | 2 +- .../challenges/testing/19-input-output.md | 2 +- .../docs/challenges/testing/20-modal.md | 2 +- .../docs/challenges/testing/23-harness.md | 2 +- .../challenges/testing/24-harness-creation.md | 2 +- .../docs/challenges/testing/28-checkbox.md | 2 +- .../challenges/testing/29-real-application.md | 2 +- .../challenges/typescript/15-overload-fn.md | 2 +- .../es/challenges/angular/1-projection.md | 2 +- .../challenges/angular/39-injection-token.md | 2 +- .../challenge/files/readme/README.md__tmpl__ | 2 +- libs/cli/src/generators/readme/generator.ts | 12 ++--- .../src/generators/custom-library/README.md | 2 +- .../generators/feature-component/README.md | 2 +- .../rules/forbidden-enum.README.md | 2 +- 88 files changed, 192 insertions(+), 117 deletions(-) create mode 100644 docs/src/components/Author.astro create mode 100644 docs/src/content/authors/devesh-chaudhari.json create mode 100644 docs/src/content/authors/thomas-laforge.json diff --git a/apps/angular/anchor-scrolling/README.md b/apps/angular/anchor-scrolling/README.md index c6ffb7f..a159fd8 100644 --- a/apps/angular/anchor-scrolling/README.md +++ b/apps/angular/anchor-scrolling/README.md @@ -1,6 +1,6 @@ # Anchor Navigation -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/bug-cd/README.md b/apps/angular/bug-cd/README.md index 5f0e3b4..cb42e77 100644 --- a/apps/angular/bug-cd/README.md +++ b/apps/angular/bug-cd/README.md @@ -1,6 +1,6 @@ # Change Detection Bug -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/context-outlet-type/README.md b/apps/angular/context-outlet-type/README.md index c7eb23b..d195baa 100644 --- a/apps/angular/context-outlet-type/README.md +++ b/apps/angular/context-outlet-type/README.md @@ -1,6 +1,6 @@ # Typed ContextOutlet -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/crud/README.md b/apps/angular/crud/README.md index e351dc1..0a6518b 100644 --- a/apps/angular/crud/README.md +++ b/apps/angular/crud/README.md @@ -1,6 +1,6 @@ # Crud application -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/decoupling/README.md b/apps/angular/decoupling/README.md index faea604..0ba00e7 100644 --- a/apps/angular/decoupling/README.md +++ b/apps/angular/decoupling/README.md @@ -1,6 +1,6 @@ # Decoupling Components -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/di/README.md b/apps/angular/di/README.md index e41c911..032601c 100644 --- a/apps/angular/di/README.md +++ b/apps/angular/di/README.md @@ -1,6 +1,6 @@ # Master Dependancy Injection -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/injection-token/README.md b/apps/angular/injection-token/README.md index 8764b23..a96eb9c 100644 --- a/apps/angular/injection-token/README.md +++ b/apps/angular/injection-token/README.md @@ -1,6 +1,6 @@ # InjectionToken -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/interop-rxjs-signal/README.md b/apps/angular/interop-rxjs-signal/README.md index d137b09..9cf32ef 100644 --- a/apps/angular/interop-rxjs-signal/README.md +++ b/apps/angular/interop-rxjs-signal/README.md @@ -1,6 +1,6 @@ # Interoperability Rxjs/Signal -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/module-to-standalone/README.md b/apps/angular/module-to-standalone/README.md index fbbade2..bd227b7 100644 --- a/apps/angular/module-to-standalone/README.md +++ b/apps/angular/module-to-standalone/README.md @@ -1,6 +1,6 @@ # Module to Standalone -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/ngfor-enhancement/README.md b/apps/angular/ngfor-enhancement/README.md index 0a849c0..937dfb5 100644 --- a/apps/angular/ngfor-enhancement/README.md +++ b/apps/angular/ngfor-enhancement/README.md @@ -1,6 +1,6 @@ # Directive Enhancement -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/permissions/README.md b/apps/angular/permissions/README.md index bf79187..99b2e55 100644 --- a/apps/angular/permissions/README.md +++ b/apps/angular/permissions/README.md @@ -1,6 +1,6 @@ # Structural Directive -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/pipe-easy/README.md b/apps/angular/pipe-easy/README.md index 350a0d5..8501be8 100644 --- a/apps/angular/pipe-easy/README.md +++ b/apps/angular/pipe-easy/README.md @@ -1,6 +1,6 @@ # Pure Pipe -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/pipe-hard/README.md b/apps/angular/pipe-hard/README.md index d86000e..ba801bd 100644 --- a/apps/angular/pipe-hard/README.md +++ b/apps/angular/pipe-hard/README.md @@ -1,6 +1,6 @@ # Utility Wrapper Pipe -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/pipe-intermediate/README.md b/apps/angular/pipe-intermediate/README.md index 78fa327..72809fd 100644 --- a/apps/angular/pipe-intermediate/README.md +++ b/apps/angular/pipe-intermediate/README.md @@ -1,6 +1,6 @@ # Wrap Function Pipe -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/projection/README.md b/apps/angular/projection/README.md index 4d89c98..781198e 100644 --- a/apps/angular/projection/README.md +++ b/apps/angular/projection/README.md @@ -1,6 +1,6 @@ # Projection -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/router-input/README.md b/apps/angular/router-input/README.md index c213e10..0aad6c3 100644 --- a/apps/angular/router-input/README.md +++ b/apps/angular/router-input/README.md @@ -1,6 +1,6 @@ # @RouterInput() -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/angular/styling/README.md b/apps/angular/styling/README.md index 760a772..d47efe3 100644 --- a/apps/angular/styling/README.md +++ b/apps/angular/styling/README.md @@ -1,6 +1,6 @@ # Highly Customizable CSS -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/ngrx/effect-selector/README.md b/apps/ngrx/effect-selector/README.md index 3f12862..b12a534 100644 --- a/apps/ngrx/effect-selector/README.md +++ b/apps/ngrx/effect-selector/README.md @@ -1,6 +1,6 @@ # Effect vs Selector -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/ngrx/notification/README.md b/apps/ngrx/notification/README.md index 136a30f..36acdab 100644 --- a/apps/ngrx/notification/README.md +++ b/apps/ngrx/notification/README.md @@ -1,6 +1,6 @@ # Power of Effect -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/performance/default-onpush/README.md b/apps/performance/default-onpush/README.md index 72b8090..29d7696 100644 --- a/apps/performance/default-onpush/README.md +++ b/apps/performance/default-onpush/README.md @@ -1,6 +1,6 @@ # Default vs OnPush -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/performance/memoized/README.md b/apps/performance/memoized/README.md index 94feadd..520efb1 100644 --- a/apps/performance/memoized/README.md +++ b/apps/performance/memoized/README.md @@ -1,6 +1,6 @@ # Memoization -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/performance/ngfor-biglist/README.md b/apps/performance/ngfor-biglist/README.md index 828f93e..4d164f0 100644 --- a/apps/performance/ngfor-biglist/README.md +++ b/apps/performance/ngfor-biglist/README.md @@ -1,6 +1,6 @@ # NgFor optimize big list -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/performance/ngfor-optimize/README.md b/apps/performance/ngfor-optimize/README.md index a26efa5..1e9b2f8 100644 --- a/apps/performance/ngfor-optimize/README.md +++ b/apps/performance/ngfor-optimize/README.md @@ -1,6 +1,6 @@ # NgFor Optimization -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/performance/scroll-cd/README.md b/apps/performance/scroll-cd/README.md index ef30c5c..dc0c313 100644 --- a/apps/performance/scroll-cd/README.md +++ b/apps/performance/scroll-cd/README.md @@ -1,6 +1,6 @@ # Optimize Change Detection -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/rxjs/pipe-bug/README.md b/apps/rxjs/pipe-bug/README.md index d66511b..cad896a 100644 --- a/apps/rxjs/pipe-bug/README.md +++ b/apps/rxjs/pipe-bug/README.md @@ -1,6 +1,6 @@ # High Order Operator Bug -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/rxjs/race-condition/README.md b/apps/rxjs/race-condition/README.md index 1c6b710..e9b6110 100644 --- a/apps/rxjs/race-condition/README.md +++ b/apps/rxjs/race-condition/README.md @@ -1,6 +1,6 @@ # Race Condition -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/checkbox/README.md b/apps/testing/checkbox/README.md index c1c3db7..905db5f 100644 --- a/apps/testing/checkbox/README.md +++ b/apps/testing/checkbox/README.md @@ -1,6 +1,6 @@ # Checkbox -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/create-harness/README.md b/apps/testing/create-harness/README.md index 4773835..600f340 100644 --- a/apps/testing/create-harness/README.md +++ b/apps/testing/create-harness/README.md @@ -1,6 +1,6 @@ # Harness Creation -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/harness/README.md b/apps/testing/harness/README.md index 15d9b51..541da1a 100644 --- a/apps/testing/harness/README.md +++ b/apps/testing/harness/README.md @@ -1,6 +1,6 @@ # Harness -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/input-output/README.md b/apps/testing/input-output/README.md index 127480a..59b5fff 100644 --- a/apps/testing/input-output/README.md +++ b/apps/testing/input-output/README.md @@ -1,6 +1,6 @@ # Input Output -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/modal/README.md b/apps/testing/modal/README.md index 01cc159..08737d5 100644 --- a/apps/testing/modal/README.md +++ b/apps/testing/modal/README.md @@ -1,6 +1,6 @@ # Modal -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/nested/README.md b/apps/testing/nested/README.md index 1b7fea6..8e1876a 100644 --- a/apps/testing/nested/README.md +++ b/apps/testing/nested/README.md @@ -1,6 +1,6 @@ # Nested Components -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/router-outlet/README.md b/apps/testing/router-outlet/README.md index 71208a4..7749159 100644 --- a/apps/testing/router-outlet/README.md +++ b/apps/testing/router-outlet/README.md @@ -1,6 +1,6 @@ # Router -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/testing/table/README.md b/apps/testing/table/README.md index f5e232e..36451ff 100644 --- a/apps/testing/table/README.md +++ b/apps/testing/table/README.md @@ -1,6 +1,6 @@

Table testing

-> Author: Thomas Laforge +> author: thomas-laforge ## Statement: diff --git a/apps/testing/todos-list/README.md b/apps/testing/todos-list/README.md index 2adce88..37a8e93 100644 --- a/apps/testing/todos-list/README.md +++ b/apps/testing/todos-list/README.md @@ -1,6 +1,6 @@ # Real-life Application -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/apps/typescript/overload/README.md b/apps/typescript/overload/README.md index d181c0d..b4336af 100644 --- a/apps/typescript/overload/README.md +++ b/apps/typescript/overload/README.md @@ -1,6 +1,6 @@ # Function Overload -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/docs/src/components/Author.astro b/docs/src/components/Author.astro new file mode 100644 index 0000000..65bf6cb --- /dev/null +++ b/docs/src/components/Author.astro @@ -0,0 +1,41 @@ +--- +import { Icon } from '@astrojs/starlight/components'; + +interface Props { + name: string; + twitter?: string; + linkedin?: string; + github?: string; +} + +const { name, twitter, linkedin, github } = Astro.props; + +--- + +

+ Created by {name} + {twitter && } + {linkedin && } + {github && } + +

+ + \ No newline at end of file diff --git a/docs/src/components/Content.astro b/docs/src/components/Content.astro index 0203249..44a70f2 100644 --- a/docs/src/components/Content.astro +++ b/docs/src/components/Content.astro @@ -1,15 +1,18 @@ --- -import ChallengeFooter from './ChallengeFooter.astro' -import CommentSection from './CommentSection.astro' -import type { Props } from '@astrojs/starlight/props'; import Default from '@astrojs/starlight/components/MarkdownContent.astro'; +import type { Props } from '@astrojs/starlight/props'; +import { getEntry } from 'astro:content'; +import Author from './Author.astro'; +import ChallengeFooter from './ChallengeFooter.astro'; +import CommentSection from './CommentSection.astro'; -const {challengeNumber, author} = Astro.props.entry.data; +const {challengeNumber} = Astro.props.entry.data; +const author = Astro.props.entry.data.author ? await getEntry(Astro.props.entry.data.author) : null; const renderCommentSection = !Astro.props.entry.data.noCommentSection; --- -{ challengeNumber && author &&

Created by {author}

} +{ challengeNumber && author && } diff --git a/docs/src/components/VideoButton.astro b/docs/src/components/VideoButton.astro index 496dd50..aeacd82 100644 --- a/docs/src/components/VideoButton.astro +++ b/docs/src/components/VideoButton.astro @@ -1,5 +1,11 @@ --- +interface Props { + link: string; + alt: string; + flag?: 'FR'; +} + const { link, alt, flag } = Astro.props; const isFR = flag === 'FR'; --- diff --git a/docs/src/content/authors/devesh-chaudhari.json b/docs/src/content/authors/devesh-chaudhari.json new file mode 100644 index 0000000..c1bc4bf --- /dev/null +++ b/docs/src/content/authors/devesh-chaudhari.json @@ -0,0 +1,4 @@ +{ + "name": "Devesh Chaudhari", + "twitter": "https://twitter.com/DeveshChau" +} diff --git a/docs/src/content/authors/thomas-laforge.json b/docs/src/content/authors/thomas-laforge.json new file mode 100644 index 0000000..2bfd965 --- /dev/null +++ b/docs/src/content/authors/thomas-laforge.json @@ -0,0 +1,6 @@ +{ + "name": "Thomas Laforge", + "twitter": "https://twitter.com/laforge_toma", + "linkedin": "https://www.linkedin.com/in/thomas-laforge-2b05a945/", + "github": "https://github.com/tomalaforge" +} diff --git a/docs/src/content/config.ts b/docs/src/content/config.ts index e6c8bee..7b74a62 100644 --- a/docs/src/content/config.ts +++ b/docs/src/content/config.ts @@ -1,23 +1,38 @@ import { docsSchema, i18nSchema } from '@astrojs/starlight/schema'; -import { defineCollection, z } from 'astro:content'; +import { defineCollection, reference, z } from 'astro:content'; + +const authors = defineCollection({ + type: 'data', + schema: z.object({ + name: z.string(), + twitter: z.string().url().optional(), + linkedin: z.string().url().optional(), + github: z.string().url().optional(), + }), +}); + +const docs = defineCollection({ + schema: (ctx) => + docsSchema()(ctx).extend({ + noCommentSection: z.boolean().optional().default(false), + challengeNumber: z.union([z.number(), z.boolean()]).default(false), + author: reference('authors').optional(), + command: z.string().optional(), + blogLink: z.string().optional(), + videoLink: z + .object({ + link: z.string(), + alt: z.string(), + flag: z.enum(['FR']).optional(), + }) + .optional(), + }), +}); + +const i18n = defineCollection({ type: 'data', schema: i18nSchema() }); export const collections = { - docs: defineCollection({ - schema: (ctx) => - docsSchema()(ctx).extend({ - noCommentSection: z.boolean().optional().default(false), - challengeNumber: z.union([z.number(), z.boolean()]).default(false), - author: z.string().optional(), - command: z.string().optional(), - blogLink: z.string().optional(), - videoLink: z - .object({ - link: z.string(), - alt: z.string(), - flag: z.enum(['FR']).optional(), - }) - .optional(), - }), - }), - i18n: defineCollection({ type: 'data', schema: i18nSchema() }), + docs: docs, + i18n: i18n, + authors: authors, }; diff --git a/docs/src/content/docs/challenges/angular/1-projection.md b/docs/src/content/docs/challenges/angular/1-projection.md index 64181bd..33eff99 100644 --- a/docs/src/content/docs/challenges/angular/1-projection.md +++ b/docs/src/content/docs/challenges/angular/1-projection.md @@ -1,7 +1,7 @@ --- title: 🟒 Projection description: Challenge 1 is about learning how to project DOM element through components -author: Thomas Laforge +author: thomas-laforge challengeNumber: 1 command: angular-projection blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5 diff --git a/docs/src/content/docs/challenges/angular/10-pipe-utility.md b/docs/src/content/docs/challenges/angular/10-pipe-utility.md index 98a94de..48dbf91 100644 --- a/docs/src/content/docs/challenges/angular/10-pipe-utility.md +++ b/docs/src/content/docs/challenges/angular/10-pipe-utility.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Utility Wrapper Pipe description: Challenge 10 is about creating a pipe to wrap utilities -author: Thomas Laforge +author: thomas-laforge challengeNumber: 10 command: angular-pipe-hard sidebar: diff --git a/docs/src/content/docs/challenges/angular/13-styling.md b/docs/src/content/docs/challenges/angular/13-styling.md index 64485da..bbc34fc 100644 --- a/docs/src/content/docs/challenges/angular/13-styling.md +++ b/docs/src/content/docs/challenges/angular/13-styling.md @@ -1,7 +1,7 @@ --- title: 🟠 Highly Customizable CSS description: Challenge 13 is about creating highly customizable CSS styles -author: Thomas Laforge +author: thomas-laforge challengeNumber: 13 command: angular-styling sidebar: diff --git a/docs/src/content/docs/challenges/angular/16-di.md b/docs/src/content/docs/challenges/angular/16-di.md index 7a65158..c5ff17f 100644 --- a/docs/src/content/docs/challenges/angular/16-di.md +++ b/docs/src/content/docs/challenges/angular/16-di.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Master Dependancy Injection description: Challenge 16 is about masjering how dependancy injection works -author: Thomas Laforge +author: thomas-laforge challengeNumber: 16 command: angular-di sidebar: diff --git a/docs/src/content/docs/challenges/angular/21-achor-scrolling.md b/docs/src/content/docs/challenges/angular/21-achor-scrolling.md index 05cd68e..33782d5 100644 --- a/docs/src/content/docs/challenges/angular/21-achor-scrolling.md +++ b/docs/src/content/docs/challenges/angular/21-achor-scrolling.md @@ -1,7 +1,7 @@ --- title: 🟒 Anchor Navigation description: Challenge 21 is about navigating inside the page with anchor -author: Thomas Laforge +author: thomas-laforge challengeNumber: 21 command: angular-anchor-scrolling sidebar: diff --git a/docs/src/content/docs/challenges/angular/22-router-input.md b/docs/src/content/docs/challenges/angular/22-router-input.md index 9a25161..0614b89 100644 --- a/docs/src/content/docs/challenges/angular/22-router-input.md +++ b/docs/src/content/docs/challenges/angular/22-router-input.md @@ -1,7 +1,7 @@ --- title: 🟒 @RouterInput() description: Challenge 22 is about using the @Input decorator to retreive router params. -author: Thomas Laforge +author: thomas-laforge challengeNumber: 22 command: angular-router-input blogLink: https://medium.com/ngconf/accessing-route-params-in-angular-1f8e12770617 diff --git a/docs/src/content/docs/challenges/angular/3-directive-enhancement.md b/docs/src/content/docs/challenges/angular/3-directive-enhancement.md index 7027387..bccac62 100644 --- a/docs/src/content/docs/challenges/angular/3-directive-enhancement.md +++ b/docs/src/content/docs/challenges/angular/3-directive-enhancement.md @@ -1,7 +1,7 @@ --- title: 🟠 Directive Enhancement description: Challenge 3 is about enhancing a built-in directive -author: Thomas Laforge +author: thomas-laforge challengeNumber: 3 command: angular-ngfor-enhancement blogLink: https://medium.com/@thomas.laforge/ngfor-enhancement-716b44656a6c diff --git a/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md b/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md index b668655..a24aad6 100644 --- a/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md +++ b/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Interoperability Rxjs/Signal description: Challenge 30 is about learning how to mix signal with Rxjs -author: Thomas Laforge +author: thomas-laforge challengeNumber: 30 command: angular-interop-rxjs-signal sidebar: diff --git a/docs/src/content/docs/challenges/angular/31-module-to-standalone.md b/docs/src/content/docs/challenges/angular/31-module-to-standalone.md index 3b36490..ada66b8 100644 --- a/docs/src/content/docs/challenges/angular/31-module-to-standalone.md +++ b/docs/src/content/docs/challenges/angular/31-module-to-standalone.md @@ -1,7 +1,7 @@ --- title: 🟒 Module to Standalone description: Challenge 31 is about migrating a module based application to a standalone application. -author: Thomas Laforge +author: thomas-laforge challengeNumber: 31 command: angular-module-to-standalone sidebar: diff --git a/docs/src/content/docs/challenges/angular/32-bug-cd.md b/docs/src/content/docs/challenges/angular/32-bug-cd.md index e33d3e2..811ff74 100644 --- a/docs/src/content/docs/challenges/angular/32-bug-cd.md +++ b/docs/src/content/docs/challenges/angular/32-bug-cd.md @@ -1,7 +1,7 @@ --- title: 🟠 Change Detection Bug description: Challenge 32 is about debugging an application that has issue when change detection is triggered -author: Thomas Laforge +author: thomas-laforge challengeNumber: 32 command: angular-bug-cd blogLink: https://medium.com/ngconf/function-calls-inside-template-are-dangerous-15f9822a6629 diff --git a/docs/src/content/docs/challenges/angular/33-decoupling.md b/docs/src/content/docs/challenges/angular/33-decoupling.md index ec2638d..307933f 100644 --- a/docs/src/content/docs/challenges/angular/33-decoupling.md +++ b/docs/src/content/docs/challenges/angular/33-decoupling.md @@ -1,7 +1,7 @@ --- title: 🟠 Decoupling Components description: Challenge 33 is about decoupling two strongly coupled components using Injection Token -author: Thomas Laforge +author: thomas-laforge challengeNumber: 33 command: angular-decoupling sidebar: diff --git a/docs/src/content/docs/challenges/angular/39-injection-token.md b/docs/src/content/docs/challenges/angular/39-injection-token.md index 1e98d9d..5dfdbd8 100644 --- a/docs/src/content/docs/challenges/angular/39-injection-token.md +++ b/docs/src/content/docs/challenges/angular/39-injection-token.md @@ -1,7 +1,7 @@ --- title: 🟠 InjectionToken description: Challenge 39 is about learning the power of dependancy injection -author: Thomas Laforge +author: thomas-laforge challengeNumber: 39 command: angular-injection-token sidebar: diff --git a/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md b/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md index 7373a6f..e475c5f 100644 --- a/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md +++ b/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Typed ContextOutlet description: Challenge 4 is about strongly typing ngContextOutlet directives -author: Thomas Laforge +author: thomas-laforge challengeNumber: 4 command: angular-context-outlet-type blogLink: https://medium.com/@thomas.laforge/ngtemplateoutlet-type-checking-5d2dcb07a2c6 diff --git a/docs/src/content/docs/challenges/angular/5-crud.md b/docs/src/content/docs/challenges/angular/5-crud.md index 7391807..2cea7c4 100644 --- a/docs/src/content/docs/challenges/angular/5-crud.md +++ b/docs/src/content/docs/challenges/angular/5-crud.md @@ -1,7 +1,7 @@ --- title: 🟒 Crud application description: Challenge 5 is about refactoring a crud application -author: Thomas Laforge +author: thomas-laforge challengeNumber: 5 command: angular-crud sidebar: diff --git a/docs/src/content/docs/challenges/angular/6-permissions.md b/docs/src/content/docs/challenges/angular/6-permissions.md index d85845a..99717c3 100644 --- a/docs/src/content/docs/challenges/angular/6-permissions.md +++ b/docs/src/content/docs/challenges/angular/6-permissions.md @@ -1,7 +1,7 @@ --- title: 🟠 Structural Directive description: Challenge 6 is about creating a structural directive to handle permissions -author: Thomas Laforge +author: thomas-laforge challengeNumber: 6 command: angular-permissions blogLink: https://medium.com/@thomas.laforge/create-a-custom-structural-directive-to-manage-permissions-like-a-pro-11a1acad30ad diff --git a/docs/src/content/docs/challenges/angular/8-pipe-pure.md b/docs/src/content/docs/challenges/angular/8-pipe-pure.md index 6e227cc..539ae8a 100644 --- a/docs/src/content/docs/challenges/angular/8-pipe-pure.md +++ b/docs/src/content/docs/challenges/angular/8-pipe-pure.md @@ -1,7 +1,7 @@ --- title: 🟒 Pure Pipe description: Challenge 8 is about creating a pure pipe -author: Thomas Laforge +author: thomas-laforge challengeNumber: 8 command: angular-pipe-easy blogLink: https://medium.com/ngconf/deep-dive-into-angular-pipes-c040588cd15d diff --git a/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md b/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md index da68c0e..7b2dd26 100644 --- a/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md +++ b/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md @@ -1,7 +1,7 @@ --- title: 🟠 Wrap Function Pipe description: Challenge 9 is about creating a pipe to wrap component fonctions -author: Thomas Laforge +author: thomas-laforge challengeNumber: 9 command: angular-pipe-intermediate blogLink: https://medium.com/ngconf/boost-your-apps-performance-by-wrapping-your-functions-inside-a-pipe-7e889a901d1d diff --git a/docs/src/content/docs/challenges/ngrx/2-effect-selector.md b/docs/src/content/docs/challenges/ngrx/2-effect-selector.md index 4efc647..8afd352 100644 --- a/docs/src/content/docs/challenges/ngrx/2-effect-selector.md +++ b/docs/src/content/docs/challenges/ngrx/2-effect-selector.md @@ -1,7 +1,7 @@ --- title: 🟠 Effect vs Selector description: Challenge 2 is about learning the difference between effects and selectors in NgRx -author: Thomas Laforge +author: thomas-laforge challengeNumber: 2 command: ngrx-effect-selector blogLink: https://medium.com/@thomas.laforge/ngrx-effect-vs-reducer-vs-selector-58337ab59043 diff --git a/docs/src/content/docs/challenges/ngrx/7-power-effect.md b/docs/src/content/docs/challenges/ngrx/7-power-effect.md index 2047b19..a57c2ce 100644 --- a/docs/src/content/docs/challenges/ngrx/7-power-effect.md +++ b/docs/src/content/docs/challenges/ngrx/7-power-effect.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Power of Effect description: Challenge 7 is about creating an Ngrx effect with another Rxjs Hot observable -author: Thomas Laforge +author: thomas-laforge challengeNumber: 7 command: ngrx-notification sidebar: diff --git a/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md b/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md index 1e46c0f..7c20286 100644 --- a/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md +++ b/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Extend Lib Generator description: Challenge 25 is about creating a Nx generator to extend the built-in Library Generator -author: Thomas Laforge +author: thomas-laforge challengeNumber: 25 sidebar: order: 207 diff --git a/docs/src/content/docs/challenges/nx/26-generator-comp.md b/docs/src/content/docs/challenges/nx/26-generator-comp.md index c59a146..c6d0740 100644 --- a/docs/src/content/docs/challenges/nx/26-generator-comp.md +++ b/docs/src/content/docs/challenges/nx/26-generator-comp.md @@ -1,7 +1,7 @@ --- title: 🟠 Component Generator description: Challenge 26 is about creating a Nx generator to create a custom component -author: Thomas Laforge +author: thomas-laforge challengeNumber: 26 sidebar: order: 116 @@ -88,7 +88,7 @@ export class UserStore extends ComponentStore implements OnStateInit, loading: this.loading$, error: this.error$, }, - { debounce: true } + { debounce: true }, ); ngrxOnStateInit() { @@ -106,11 +106,11 @@ export class UserStore extends ComponentStore implements OnStateInit, this.userService.loadUsers().pipe( tapResponse( (users) => this.patchState({ users, loading: false }), - (err: string) => this.patchState({ error: err, loading: false }) - ) - ) - ) - ) + (err: string) => this.patchState({ error: err, loading: false }), + ), + ), + ), + ), ); } ``` diff --git a/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md b/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md index d2193b8..8d69e93 100644 --- a/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md +++ b/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md @@ -1,7 +1,7 @@ --- title: 🟒 Custom Eslint Rule description: Challenge 27 is about creating a custom Eslint Rule to forbid enums -author: Thomas Laforge +author: thomas-laforge challengeNumber: 27 sidebar: order: 12 diff --git a/docs/src/content/docs/challenges/performance/12-scroll-cd.md b/docs/src/content/docs/challenges/performance/12-scroll-cd.md index 540051e..b6dc265 100644 --- a/docs/src/content/docs/challenges/performance/12-scroll-cd.md +++ b/docs/src/content/docs/challenges/performance/12-scroll-cd.md @@ -1,7 +1,7 @@ --- title: 🟠 Optimize Change Detection description: Challenge 12 about optimizing the number of change detection cycle while scrolling -author: Thomas Laforge +author: thomas-laforge challengeNumber: 12 command: performance-scroll-cd sidebar: diff --git a/docs/src/content/docs/challenges/performance/34-default-onpush.md b/docs/src/content/docs/challenges/performance/34-default-onpush.md index 62c453c..1b23db5 100644 --- a/docs/src/content/docs/challenges/performance/34-default-onpush.md +++ b/docs/src/content/docs/challenges/performance/34-default-onpush.md @@ -1,7 +1,7 @@ --- title: 🟒 Default vs OnPush description: Challenge 34 is about learning the difference between Default and OnPush Change Detection Strategy. -author: Thomas Laforge +author: thomas-laforge challengeNumber: 34 command: performance-default-onpush sidebar: diff --git a/docs/src/content/docs/challenges/performance/35-memoize.md b/docs/src/content/docs/challenges/performance/35-memoize.md index 86d321c..d0ebbda 100644 --- a/docs/src/content/docs/challenges/performance/35-memoize.md +++ b/docs/src/content/docs/challenges/performance/35-memoize.md @@ -1,7 +1,7 @@ --- title: 🟒 Memoization description: Challenge 35 is about learning how pure pipe works -author: Thomas Laforge +author: thomas-laforge challengeNumber: 35 command: performance-memoized sidebar: diff --git a/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md b/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md index c05bf25..9d6b627 100644 --- a/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md +++ b/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md @@ -1,7 +1,7 @@ --- title: 🟒 NgFor Optimization description: Challenge 36 is about learning how trackby works -author: Thomas Laforge +author: thomas-laforge challengeNumber: 36 command: performance-ngfor-optimize sidebar: diff --git a/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md b/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md index 3240088..1e81de0 100644 --- a/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md +++ b/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md @@ -1,7 +1,7 @@ --- title: 🟠 Optimize Big List description: Challenge 37 is about learning how virtualization optimize big list rendering -author: Thomas Laforge +author: thomas-laforge challengeNumber: 37 command: performance-ngfor-biglist sidebar: diff --git a/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md b/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md index 11c08c2..1ab0e46 100644 --- a/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md +++ b/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md @@ -1,7 +1,7 @@ --- title: 🟠 High Order Operator Bug description: Challenge 11 is about resolving a Rxjs bug because of high order operators -author: Thomas Laforge +author: thomas-laforge challengeNumber: 11 command: rxjs-pipe-bug sidebar: diff --git a/docs/src/content/docs/challenges/rxjs/14-race-condition.md b/docs/src/content/docs/challenges/rxjs/14-race-condition.md index 2b08d92..d8441b7 100644 --- a/docs/src/content/docs/challenges/rxjs/14-race-condition.md +++ b/docs/src/content/docs/challenges/rxjs/14-race-condition.md @@ -1,7 +1,7 @@ --- title: 🟒 Race Condition description: Challenge 14 is about race condition in Rxjs -author: Thomas Laforge +author: thomas-laforge challengeNumber: 14 command: rxjs-race-condition sidebar: diff --git a/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md b/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md index 743640f..298152b 100644 --- a/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md +++ b/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md @@ -1,7 +1,7 @@ --- title: 🟒 catchError description: Challenge 38 is about learning obervable completion. -author: Devesh Chaudhari +author: devesh-chaudhari command: rxjs-catch-error challengeNumber: 38 sidebar: diff --git a/docs/src/content/docs/challenges/testing/17-router.md b/docs/src/content/docs/challenges/testing/17-router.md index 12e0611..65afe81 100644 --- a/docs/src/content/docs/challenges/testing/17-router.md +++ b/docs/src/content/docs/challenges/testing/17-router.md @@ -1,7 +1,7 @@ --- title: 🟠 Router description: Challenge 17 is about testing the router -author: Thomas Laforge +author: thomas-laforge challengeNumber: 17 command: testing-router-outlet sidebar: diff --git a/docs/src/content/docs/challenges/testing/18-nested-comp.md b/docs/src/content/docs/challenges/testing/18-nested-comp.md index 02c539f..945650b 100644 --- a/docs/src/content/docs/challenges/testing/18-nested-comp.md +++ b/docs/src/content/docs/challenges/testing/18-nested-comp.md @@ -1,7 +1,7 @@ --- title: 🟠 Nested Components description: Challenge 18 is about testing nested components -author: Thomas Laforge +author: thomas-laforge challengeNumber: 18 command: testing-nested sidebar: diff --git a/docs/src/content/docs/challenges/testing/19-input-output.md b/docs/src/content/docs/challenges/testing/19-input-output.md index b461f4e..22f77a7 100644 --- a/docs/src/content/docs/challenges/testing/19-input-output.md +++ b/docs/src/content/docs/challenges/testing/19-input-output.md @@ -1,7 +1,7 @@ --- title: 🟠 Input Output description: Challenge 19 is about testing inputs and ouputs -author: Thomas Laforge +author: thomas-laforge challengeNumber: 19 command: testing-input-output sidebar: diff --git a/docs/src/content/docs/challenges/testing/20-modal.md b/docs/src/content/docs/challenges/testing/20-modal.md index cddedd1..38188ce 100644 --- a/docs/src/content/docs/challenges/testing/20-modal.md +++ b/docs/src/content/docs/challenges/testing/20-modal.md @@ -1,7 +1,7 @@ --- title: 🟠 Modal description: Challenge 20 is about testing modals -author: Thomas Laforge +author: thomas-laforge challengeNumber: 20 command: testing-modal sidebar: diff --git a/docs/src/content/docs/challenges/testing/23-harness.md b/docs/src/content/docs/challenges/testing/23-harness.md index 131152d..8c89174 100644 --- a/docs/src/content/docs/challenges/testing/23-harness.md +++ b/docs/src/content/docs/challenges/testing/23-harness.md @@ -1,7 +1,7 @@ --- title: 🟒 Harness description: Challenge 23 is about testing with component harnesses -author: Thomas Laforge +author: thomas-laforge challengeNumber: 23 command: testing-harness sidebar: diff --git a/docs/src/content/docs/challenges/testing/24-harness-creation.md b/docs/src/content/docs/challenges/testing/24-harness-creation.md index cde71a0..a014f6e 100644 --- a/docs/src/content/docs/challenges/testing/24-harness-creation.md +++ b/docs/src/content/docs/challenges/testing/24-harness-creation.md @@ -1,7 +1,7 @@ --- title: 🟠 Harness Creation description: Challenge 24 is about creating a component harness. -author: Thomas Laforge +author: thomas-laforge challengeNumber: 24 command: testing-create-harness sidebar: diff --git a/docs/src/content/docs/challenges/testing/28-checkbox.md b/docs/src/content/docs/challenges/testing/28-checkbox.md index 0e7ef5e..2d1d73e 100644 --- a/docs/src/content/docs/challenges/testing/28-checkbox.md +++ b/docs/src/content/docs/challenges/testing/28-checkbox.md @@ -1,7 +1,7 @@ --- title: 🟒 Checkbox description: Challenge 28 is about testing a simple checkbox -author: Thomas Laforge +author: thomas-laforge challengeNumber: 28 command: testing-checkbox sidebar: diff --git a/docs/src/content/docs/challenges/testing/29-real-application.md b/docs/src/content/docs/challenges/testing/29-real-application.md index f740df3..1d64fb9 100644 --- a/docs/src/content/docs/challenges/testing/29-real-application.md +++ b/docs/src/content/docs/challenges/testing/29-real-application.md @@ -1,7 +1,7 @@ --- title: πŸ”΄ Real-life Application description: Challenge 29 is about testing a real-life application -author: Thomas Laforge +author: thomas-laforge challengeNumber: 29 command: testing-todos-list sidebar: diff --git a/docs/src/content/docs/challenges/typescript/15-overload-fn.md b/docs/src/content/docs/challenges/typescript/15-overload-fn.md index 6a0d68b..4b5d984 100644 --- a/docs/src/content/docs/challenges/typescript/15-overload-fn.md +++ b/docs/src/content/docs/challenges/typescript/15-overload-fn.md @@ -1,7 +1,7 @@ --- title: 🟠 Function Overload description: Challenge 15 is about creating overload functions -author: Thomas Laforge +author: thomas-laforge challengeNumber: 15 command: typescript-overload blogLink: https://medium.com/ngconf/function-overloading-in-typescript-8236706b2c05 diff --git a/docs/src/content/docs/es/challenges/angular/1-projection.md b/docs/src/content/docs/es/challenges/angular/1-projection.md index 300b5ec..6da5366 100644 --- a/docs/src/content/docs/es/challenges/angular/1-projection.md +++ b/docs/src/content/docs/es/challenges/angular/1-projection.md @@ -1,7 +1,7 @@ --- title: 🟒 ProyecciΓ³n description: Desafio 1 trata sobre aprender a proyectar elementos del DOM a travΓ©s de componentes, -author: Thomas Laforge +author: thomas-laforge challengeNumber: 1 command: angular-projection blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5 diff --git a/docs/src/content/docs/es/challenges/angular/39-injection-token.md b/docs/src/content/docs/es/challenges/angular/39-injection-token.md index 91989d2..01eeb8d 100644 --- a/docs/src/content/docs/es/challenges/angular/39-injection-token.md +++ b/docs/src/content/docs/es/challenges/angular/39-injection-token.md @@ -1,7 +1,7 @@ --- title: 🟠 InjectionToken description: Desafio de Angular 39 para aprender sobre el poder del InjectionToken -author: Thomas Laforge +author: thomas-laforge challengeNumber: 39 command: angular-injection-token sidebar: diff --git a/libs/cli/src/generators/challenge/files/readme/README.md__tmpl__ b/libs/cli/src/generators/challenge/files/readme/README.md__tmpl__ index 14eba7a..d782650 100644 --- a/libs/cli/src/generators/challenge/files/readme/README.md__tmpl__ +++ b/libs/cli/src/generators/challenge/files/readme/README.md__tmpl__ @@ -1,6 +1,6 @@ # <%= title %> -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application diff --git a/libs/cli/src/generators/readme/generator.ts b/libs/cli/src/generators/readme/generator.ts index 15797bb..dd25645 100644 --- a/libs/cli/src/generators/readme/generator.ts +++ b/libs/cli/src/generators/readme/generator.ts @@ -23,7 +23,7 @@ function findDocFile( tree: Tree, path: string, number: string, - result: string[] + result: string[], ) { if (!tree.isFile(path)) { tree.children(path).forEach((child) => { @@ -59,13 +59,13 @@ async function rewriteFile(tree: Tree, file: string) { tree, './docs/src/content/docs/challenges', String(number), - result + result, ); const docFile = result[0]; const pathElts = docFile.split('/'); const link = `https://angular-challenges.vercel.app/challenges/${pathElts.at( - -2 + -2, )}/${pathElts.at(-1)}/`; const doc = tree.read(docFile); @@ -89,7 +89,7 @@ async function rewriteFile(tree: Tree, file: string) { const finalText = `# ${title} -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application @@ -154,14 +154,14 @@ Your PR title must start with Answer:${number}. console.log('header', header); const regexContent = new RegExp( - /Author: Thomas Laforge([\s\S]*?)### Submitting your work/ + /author: thomas-laforge([\s\S]*?)### Submitting your work/, ); const matchContent = buffer.toString().match(regexContent); let content = ''; if (!matchContent) { const regexOldContent = new RegExp( - /Author: Thomas Laforge([\s\S]*?)## Submitting your work/ + /author: thomas-laforge([\s\S]*?)## Submitting your work/, ); content = buffer.toString().match(regexOldContent)[1]; } else { diff --git a/libs/custom-plugin/src/generators/custom-library/README.md b/libs/custom-plugin/src/generators/custom-library/README.md index 95be464..2758e2c 100644 --- a/libs/custom-plugin/src/generators/custom-library/README.md +++ b/libs/custom-plugin/src/generators/custom-library/README.md @@ -1,6 +1,6 @@ # Extend Lib Generator -> Author: Thomas Laforge +> author: thomas-laforge ### Documentation and Instruction diff --git a/libs/custom-plugin/src/generators/feature-component/README.md b/libs/custom-plugin/src/generators/feature-component/README.md index 9e7a3c7..348cf76 100644 --- a/libs/custom-plugin/src/generators/feature-component/README.md +++ b/libs/custom-plugin/src/generators/feature-component/README.md @@ -1,6 +1,6 @@ # Component Generator -> Author: Thomas Laforge +> author: thomas-laforge ### Documentation and Instruction diff --git a/tools/eslint-rules/rules/forbidden-enum.README.md b/tools/eslint-rules/rules/forbidden-enum.README.md index 704e138..c6d339e 100644 --- a/tools/eslint-rules/rules/forbidden-enum.README.md +++ b/tools/eslint-rules/rules/forbidden-enum.README.md @@ -1,6 +1,6 @@ # Custom Eslint Rule -> Author: Thomas Laforge +> author: thomas-laforge ### Run Application