{
  "$schema": "http://json-schema.org/draft-07/schema",
  "title": "Extract i18n Target",
  "description": "Extract i18n target options for Build Facade.",
  "type": "object",
  "properties": {
    "browserTarget": {
      "type": "string",
      "description": "A browser builder target to extract i18n messages in the format of `project:target[:configuration]`. You can also pass in more than one configuration name as a comma-separated list. Example: `project:target:production,staging`.",
      "pattern": "^[^:\\s]+:[^:\\s]+(:[^\\s]+)?$"
    },
    "format": {
      "type": "string",
      "description": "Output format for the generated file.",
      "default": "xlf",
      "enum": [
        "xmb",
        "xlf",
        "xlif",
        "xliff",
        "xlf2",
        "xliff2",
        "json",
        "arb",
        "legacy-migrate"
      ]
    },
    "progress": {
      "type": "boolean",
      "description": "Log progress to the console.",
      "default": true
    },
    "outputPath": {
      "type": "string",
      "description": "Path where output will be placed."
    },
    "outFile": {
      "type": "string",
      "description": "Name of the file to output."
    },
    "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
    }
  },
  "additionalProperties": false,
  "required": [
    "browserTarget"
  ]
}