{
  "title": "Electron Application Packaging Target",
  "description": "Electron application packaging target options for Build Facade",
  "type": "object",
  "properties": {
    "name": {
      "description": "The name of the electron application.",
      "type": "string",
      "$default": {
        "$source": "argv",
        "index": 0
      },
      "x-prompt": "What's the name the of electron (backend) application you would like to package?"
    },
    "frontendProject": {
      "type": "string",
      "description": "Frontend project that needs to access this application.",
      "x-prompt": "What's the name the frontend application you would like to package?"
    },
    "extraProjects": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "type": "string"
      },
      "description": "Extra projects to include in the application package."
    },
    "prepackageOnly": {
      "type": "boolean",
      "description": "Only prepackage the application.",
      "default": false
    },
    "sourcePath": {
      "type": "string",
      "description": "The full path for the compiled source directory, relative to the current workspace. If this parameter is not supplied, the 'sourcePath' path from angular.json will be used.",
      "default": "dist/apps"
    },
    "outputPath": {
      "type": "string",
      "description": "The full path for the new output directory, relative to the current workspace. If this parameter is not supplied, the 'outputPath' path from angular.json will be used."
    },
    "platform": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "windows",
            "mac",
            "linux"
          ]
        },
        {
          "type": "array",
          "uniqueItems": true,
          "items": {
            "type": "string",
            "enum": [
              "windows",
              "mac",
              "linux"
            ]
          }
        }
      ],
      "description": "Target platform/s."
    },
    "arch": {
      "type": "string",
      "enum": [
        "x64",
        "ia32",
        "armv7l",
        "arm64"
      ],
      "description": "Package architecture."
    },
    "publishPolicy": {
      "type": "string",
      "enum": [
        "onTag",
        "onTagOrDraft",
        "always",
        "never"
      ],
      "description": "Package publish policy."
    },
    "makerOptionsPath": {
      "type": "string",
      "description": "Overrides the '{sourceRoot}/app/options/maker.options.json' configuration file path."
    }
  },
  "required": [
    "name"
  ]
}
