| { |
| "$schema": "http://json-schema.org/draft-04/schema#", |
| "type": "object", |
| "additionalProperties": false, |
| "properties": { |
| "extensions": { |
| "type": "array", |
| "description": "Extension points", |
| "items": { |
| "properties": { |
| "type": {"type": "string"}, |
| "order": {"type": "number"}, |
| "title": {"type": "string"}, |
| "options": { |
| "type": "array", |
| "items": { |
| "properties": { |
| "title": {"type": "string"}, |
| "category": {"type": "string"} |
| } |
| } |
| } |
| }, |
| "if": { |
| "properties": {"type": {"const": "action"}} |
| }, |
| "then": { |
| "properties": { |
| "bindings": { |
| "type": "array", |
| "items": { |
| "required": ["shortcut"], |
| "properties": { |
| "shortcut": { |
| "type": "string", |
| "pattern": "^[\\S]+(\\s[\\S]+)?$" |
| }, |
| "platform": {"type": "string"}, |
| "keybindSets": { |
| "type": "array", |
| "items": { |
| "type": "string", |
| "enum": ["devToolsDefault", "vsCode"] |
| } |
| } |
| } |
| } |
| } |
| }, |
| "anyOf": [ |
| { |
| "required": ["title"] |
| }, |
| { |
| "required": ["options"], |
| "properties": { |
| "options": { |
| "minItems": 1, |
| "items": { |
| "required": ["title"] |
| } |
| } |
| } |
| } |
| ], |
| "required": ["category"] |
| } |
| } |
| }, |
| "dependencies": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "modules": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "resources": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "experiment": { |
| "type": "string" |
| } |
| }, |
| "definitions": { |
| } |
| } |