| { | |
| "type": "object", | |
| "title": "downloads.json schema", | |
| "additionalProperties": false, | |
| "properties": { | |
| "$schema": { "type": "string" }, | |
| "versionBranch": { "type": "string" }, | |
| "lang": { | |
| "type": "object", | |
| "$ref" : "#/definitions/lang" | |
| }, | |
| "capella": { | |
| "type": "object", | |
| "$ref" : "#/definitions/product" | |
| }, | |
| "capellaStudio": { | |
| "type": "object", | |
| "$ref" : "#/definitions/product" | |
| }, | |
| "addons": { | |
| "type": "array", | |
| "items": { | |
| "$ref" : "#/definitions/addon" | |
| } | |
| } | |
| }, | |
| "definitions": { | |
| "addon": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "name": { "type": "string" }, | |
| "showOnMainPage": { "type": "boolean", "default": false }, | |
| "compatibleWithCurrentVersion": { "type": "boolean", "default": true }, | |
| "isViewpoint": { "type": "boolean", "default": false }, | |
| "isSample": { "type": "boolean", "default": false }, | |
| "key": { "type": "string" }, | |
| "fragment": { "type": "string", "default": "@key" }, | |
| "licence": { "type": "string" }, | |
| "contact": { "type": "string" }, | |
| "description": { "type": "string" }, | |
| "download": { "$ref" : "#/definitions/download" }, | |
| "tags": { "type": "array", "items": { "type": "string" } } | |
| }, | |
| "required": ["name", "key", "licence", "contact", "description", "download"] | |
| }, | |
| "download": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "dropin": { "anyOf": [ | |
| { "type": "string" }, | |
| { "type": "array", "items": { "$ref" : "#/definitions/download-item" } } | |
| ] }, | |
| "updateSite": { "anyOf": [ | |
| { "type": "string" }, | |
| { "type": "array", "items": { "$ref" : "#/definitions/download-item" } } | |
| ] }, | |
| "installAddon": { "type": "string" }, | |
| "installNotes": { | |
| "$ref" : "#/definitions/download" | |
| }, | |
| "notes": { "type": "string" }, | |
| "dandi": { "type": "string" }, | |
| "learnMore": { "type": "string" }, | |
| "release": { "type": "string" }, | |
| "userManual": { "type": "string" } | |
| } | |
| }, | |
| "download-item": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "name": { "type": "string" }, | |
| "url": { "type": "string" } | |
| } | |
| }, | |
| "lang": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "dropin": { "$ref" : "#/definitions/langitem" }, | |
| "updateSite": { "$ref" : "#/definitions/langitem" }, | |
| "installAddon": { "$ref" : "#/definitions/langitem" }, | |
| "installNotes": { "$ref" : "#/definitions/langitem" }, | |
| "dandi": { "$ref" : "#/definitions/langitem" }, | |
| "learnMore": { "$ref" : "#/definitions/langitem" }, | |
| "main": { "$ref" : "#/definitions/langitem" }, | |
| "mirror": { "$ref" : "#/definitions/langitem" }, | |
| "release": { "$ref" : "#/definitions/langitem" }, | |
| "userManual": { "$ref" : "#/definitions/langitem" }, | |
| "product": { "$ref" : "#/definitions/langitem" }, | |
| "compatibility": { "$ref" : "#/definitions/langitem" }, | |
| "windows": { "$ref" : "#/definitions/langplatform" }, | |
| "linux": { "$ref" : "#/definitions/langplatform" }, | |
| "mac": { "$ref" : "#/definitions/langplatform" } | |
| } | |
| }, | |
| "langitem": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "text": { "type": "string" }, | |
| "target": { "type": "string" }, | |
| "icon": { "type": "string" } | |
| }, | |
| "required": ["text"] | |
| }, | |
| "langplatform": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "text": { "type": "string" }, | |
| "target": { "type": "string" }, | |
| "icon": { "type": "string" }, | |
| "key": { "type": "string" } | |
| }, | |
| "required": ["text", "icon", "key"] | |
| }, | |
| "product": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "name": { "type": "string" }, | |
| "version": { "type": "string" }, | |
| "key": { "type": "string" }, | |
| "links": { | |
| "type": "object", | |
| "additionalProperties": false, | |
| "properties": { | |
| "windows": { "$ref" : "#/definitions/productLink" }, | |
| "linux": { "$ref" : "#/definitions/productLink" }, | |
| "mac": { "$ref" : "#/definitions/productLink" } | |
| }, | |
| "required": ["windows"] | |
| } | |
| }, | |
| "required": ["name", "key", "version"] | |
| }, | |
| "productLink": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "main": { "type": "string" }, | |
| "mirror": { "type": "string" } | |
| }, | |
| "required": ["main"] | |
| } | |
| } | |
| } |