{
  "title": "Karma Target",
  "description": "Karma target options for Build Facade.",
  "type": "object",
  "properties": {

    "extraWebpackConfig": {
      "type": "string",
      "description": "Additional Webpack Config that gets merged with the default config."
    },
    "singleBundle": {
      "type": "boolean",
      "description": "Puts everything reachable from main.ts (entries vendor, main, and runtime) into one bundle. All other entry points are removed. To also get polyfills and/or styles, use --keepPolyfills or --keepStyles",
      "default": false
    },
    "keepPolyfills": {
      "type": "boolean",
      "description": "Generate polyfills bundle when using single-bundle",
      "default": true
    },
    "configHook": {
      "type": "string",
      "description": "es module exporting a configHook function (default export).",
      "default": ""
    },

    "plugin": {
      "type": "string",
      "description": "es module exporting a Plugin object (default export). Just used for ng build; not for ng serve",
      "default": ""
    },

    "bundleStyles": {
      "type": "boolean",
      "description": "DEPRECATED: Use keepStyles instead",
      "default": true
    },

    "keepStyles": {
      "type": "boolean",
      "description": "Used conjunction with 'singleBundle' to explizitly bundle styles",
      "default": true
    },

    "verbose": {
      "type": "boolean",
      "description": "Adds more details to output logging.",
      "default": false
    },


    "browserTarget": {
      "type": "string",
      "description": "Target to serve."
    },
    "port": {
      "type": "number",
      "description": "Port to listen on.",
      "default": 4200
    },
    "host": {
      "type": "string",
      "description": "Host to listen on.",
      "default": "localhost"
    },
    "proxyConfig": {
      "type": "string",
      "description": "Proxy configuration file."
    },
    "ssl": {
      "type": "boolean",
      "description": "Serve using HTTPS.",
      "default": false
    },
    "sslKey": {
      "type": "string",
      "description": "SSL key to use for serving HTTPS."
    },
    "sslCert": {
      "type": "string",
      "description": "SSL certificate to use for serving HTTPS."
    },
    "open": {
      "type": "boolean",
      "description": "Opens the url in default browser.",
      "default": false,
      "alias": "o"
    },
    "liveReload": {
      "type": "boolean",
      "description": "Whether to reload the page on change, using live-reload.",
      "default": true
    },
    "publicHost": {
      "type": "string",
      "description": "Specify the URL that the browser client will use."
    },
    "servePath": {
      "type": "string",
      "description": "The pathname where the app will be served."
    },

    "disableHostCheck": {
      "type": "boolean",
      "description": "Don't verify connected clients are part of allowed hosts.",
      "default": false
    },
    "hmr": {
      "type": "boolean",
      "description": "Enable hot module replacement.",
      "default": false
    },
    "watch": {
      "type": "boolean",
      "description": "Rebuild on change.",
      "default": true
    },
    "hmrWarning": {
      "type": "boolean",
      "description": "Show a warning when the --hmr option is enabled.",
      "default": true
    },
    "servePathDefaultWarning": {
      "type": "boolean",
      "description": "Show a warning when deploy-url/base-href use unsupported serve path values.",
      "default": true
    },
    "optimization": {
      "type": "boolean",
      "description": "Defines the optimization level of the build."
    },
    "aot": {
      "type": "boolean",
      "description": "Build using Ahead of Time compilation."
    },
    "sourceMap": {
      "type": "boolean",
      "description": "Output sourcemaps."
    },
    "vendorSourceMap": {
      "type": "boolean",
      "description": "Resolve vendor packages sourcemaps.",
      "default": false
    },
    "evalSourceMap": {
      "type": "boolean",
      "description": "Output in-file eval sourcemaps."
    },
    "vendorChunk": {
      "type": "boolean",
      "description": "Use a separate bundle containing only vendor libraries."
    },
    "commonChunk": {
      "type": "boolean",
      "description": "Use a separate bundle containing code used across multiple bundles."
    },
    "baseHref": {
      "type": "string",
      "description": "Base url for the application being built."
    },
    "deployUrl": {
      "type": "string",
      "description": "URL where files will be deployed."
    },
    "progress": {
      "type": "boolean",
      "description": "Log progress to the console while building."
    },
    "poll": {
      "type": "number",
      "description": "Enable and define the file watching poll time period in milliseconds."
    }
  },
  "additionalProperties": true,
  "required": [
    "browserTarget"
  ]
}
