-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathplayers.schema.json
66 lines (66 loc) · 1.5 KB
/
players.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
"$comment": "Schema for the generated list of media players with all metadata",
"type": "object",
"required": [
"version",
"latest",
"players",
"icons"
],
"additionalProperties": false,
"properties": {
"$schema": {
"$comment": "The path or URI to the schema that validates this object",
"type": "string"
},
"version": {
"$comment": "The version of this JSON schema",
"type": "integer",
"const": 3
},
"latest": {
"$comment": "Whether this is the latest version of the schema and it is kept up-to-date",
"type": "boolean"
},
"subset": {
"$comment": "If set, this file only contains a subset of players for the given platform",
"type": "string",
"enum": [
"win",
"mac",
"lin",
"web"
]
},
"players": {
"$comment": "A list of all media players",
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"$ref": "#/definitions/player"
}
},
"icons": {
"patternProperties": {
"^[a-z][a-z0-9\\-]*[a-z0-9]$": {
"$comment": "Icons for the given player ID ordered by preference",
"type": "array",
"uniqueItems": true,
"minItems": 1,
"items": {
"$ref": "#/definitions/icon"
}
}
}
}
},
"definitions": {
"player": {
"$ref": "player.schema.json"
},
"icon": {
"$ref": "icon.schema.json"
}
}
}