{
  "$schema": "http://json-schema.org/schema",
  "$id": "SchematicsNgRxFeature",
  "title": "NgRx Feature State Options Schema",
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "format": "path",
      "description": "The path to create the feature.",
      "visible": false,
      "$default": {
        "$source": "workingDirectory"
      }
    },
    "project": {
      "type": "string",
      "description": "The name of the project.",
      "aliases": ["p"]
    },
    "name": {
      "description": "The name of the feature.",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 0
      },
      "x-prompt": "What should be the name of the feature?"
    },
    "flat": {
      "type": "boolean",
      "default": true,
      "description": "Flag to indicate if a dir is created."
    },
    "module": {
      "type": "string",
      "description": "Specifies the declaring module.",
      "aliases": ["m"]
    },
    "skipTests": {
      "type": "boolean",
      "default": false,
      "description": "When true, does not create test files."
    },
    "reducers": {
      "type": "string",
      "description": "Specifies the reducers file.",
      "aliases": ["r"]
    },
    "group": {
      "type": "boolean",
      "default": false,
      "description": "Group actions, reducers and effects within relative subfolders",
      "aliases": ["g"]
    },
    "api": {
      "type": "boolean",
      "default": false,
      "description": "Specifies if api success and failure actions, reducer, and effects should be generated as part of this feature.",
      "aliases": ["a"],
      "x-prompt": "Should we generate and wire success and failure actions?"
    },
    "prefix": {
      "description": "The prefix of the action, effect and reducer.",
      "type": "string",
      "default": "load",
      "x-prompt": "What should be the prefix of the action, effect and reducer?"
    },
    "entity": {
      "description": "Toggle whether an entity is created as part of the feature",
      "type": "boolean",
      "aliases": ["e"],
      "x-prompt": "Should we use @ngrx/entity to create the reducer?",
      "default": false
    }
  },
  "required": []
}
