Files
angular-challenges/libs/cli/src/generators/challenge/schema.json
2024-01-28 21:16:20 +01:00

123 lines
3.0 KiB
JSON

{
"$schema": "http://json-schema.org/schema",
"$id": "GeneratorNxChallenge",
"title": "Creates the setup for a new Angular Challenge.",
"description": "Creates the boilerplate for an Angular Challenge.",
"type": "object",
"cli": "nx",
"properties": {
"name": {
"description": "The name of the application. (should be in kebab case)",
"type": "string",
"$default": {
"$source": "argv",
"index": 0
},
"x-prompt": "What name would you like to use for the application?",
"pattern": "^[a-zA-Z].*$"
},
"title": {
"description": "Title of your challenge.",
"type": "string",
"maxLength": "25",
"$default": {
"$source": "argv",
"index": 1
},
"x-priority": "important",
"x-prompt": "What should be the title of your challenge?",
"pattern": "^[a-zA-Z].*$"
},
"author": {
"description": "Your full name",
"type": "string",
"maxLength": "25",
"x-priority": "important",
"x-prompt": "Author?"
},
"challengeDifficulty": {
"description": "The difficulty of the challenge.",
"type": "string",
"x-priority": "important",
"x-prompt": {
"message": "Which category would you like?",
"type": "list",
"items": [
{
"value": "🟢",
"label": "Easy"
},
{
"value": "🟠",
"label": "Medium"
},
{
"value": "🔴",
"label": "Hard"
}
]
}
},
"category": {
"type": "string",
"description": "The category of your challenge.",
"x-priority": "important",
"x-prompt": {
"message": "Which category would you like?",
"type": "list",
"items": [
{
"value": "angular",
"label": "Angular"
},
{
"value": "performance",
"label": "Angular Performance"
},
{
"value": "ngrx",
"label": "NgRx"
},
{
"value": "rxjs",
"label": "RxJs"
},
{
"value": "nx",
"label": "Nx"
},
{
"value": "testing",
"label": "Testing"
},
{
"value": "typescript",
"label": "Typescript"
}
]
}
},
"addTest": {
"description": "add spec files.",
"type": "boolean",
"default": true,
"alias": "S"
},
"skipPackageJson": {
"type": "boolean",
"default": false,
"description": "Do not add dependencies to `package.json`.",
"x-priority": "internal"
},
"rootProject": {
"description": "Create an application at the root of the workspace.",
"type": "boolean",
"default": false,
"hidden": true,
"x-priority": "internal"
}
},
"additionalProperties": false,
"required": ["name", "title", "author", "challengeDifficulty", "category"]
}