-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Expand file tree
/
Copy pathexamples.schema.json
More file actions
40 lines (40 loc) · 1.4 KB
/
Copy pathexamples.schema.json
File metadata and controls
40 lines (40 loc) · 1.4 KB
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
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/mdn/webextensions-examples/main/examples.schema.json",
"title": "WebExtensions Examples",
"description": "Metadata for the example extensions in this repository. Consumed by MDN's build system (rari) to link example extensions from WebExtensions API reference pages.",
"type": "array",
"items": {
"$ref": "#/$defs/example"
},
"$defs": {
"example": {
"type": "object",
"additionalProperties": false,
"required": ["description", "javascript_apis", "name"],
"properties": {
"description": {
"type": "string",
"minLength": 1,
"description": "Human-readable summary of what the example extension does."
},
"javascript_apis": {
"type": "array",
"description": "WebExtension JavaScript APIs used by the example, e.g. \"tabs.query\" or \"storage.local\". May be empty.",
"items": {
"type": "string",
"minLength": 1,
"pattern": "^[A-Za-z0-9_]+(\\.[A-Za-z0-9_]+)+$"
},
"uniqueItems": true
},
"name": {
"type": "string",
"minLength": 1,
"pattern": "^[A-Za-z0-9-]+$",
"description": "Directory name of the example within the repository; used to build its GitHub link."
}
}
}
}
}