{
  "$schema": "https://json-schema.org/schema",
  "$id": "NxAngularComponentTestGenerator",
  "type": "object",
  "cli": "nx",
  "description": "Create a `*.cy.ts` file for Cypress component testing for an Angular component.",
  "properties": {
    "project": {
      "type": "string",
      "description": "The name of the project where the component is located.",
      "$default": {
        "$source": "projectName"
      },
      "x-dropdown": "projects",
      "x-prompt": "What project is the component located in?",
      "x-priority": "important"
    },
    "componentName": {
      "type": "string",
      "description": "Class name of the component to create a test for.",
      "examples": ["MyFancyButtonComponent"],
      "x-prompt": "What is the class name of the component to create a test for?",
      "x-priority": "important"
    },
    "componentDir": {
      "type": "string",
      "description": "Relative path to the folder that contains the component from the project root.",
      "examples": ["src/lib/my-fancy-button"],
      "x-prompt": "What is the path to the component directory from the project root?",
      "x-priority": "important"
    },
    "componentFileName": {
      "type": "string",
      "description": "File name that contains the component without the `.ts` extension.",
      "examples": ["my-fancy-button.component"],
      "x-prompt": "What is the file name that contains the component?",
      "x-priority": "important"
    },
    "skipFormat": {
      "description": "Skip formatting files.",
      "type": "boolean",
      "default": false,
      "x-priority": "internal"
    },
    "skipPackageJson": {
      "type": "boolean",
      "default": false,
      "description": "Do not add dependencies to `package.json`.",
      "x-priority": "internal"
    }
  },
  "additionalProperties": false,
  "required": ["project", "componentName", "componentDir", "componentFileName"],
  "examplesFile": "../../../docs/component-test-examples.md"
}
