summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Gadgets/includes/content/schema.json
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/Gadgets/includes/content/schema.json')
-rw-r--r--www/wiki/extensions/Gadgets/includes/content/schema.json65
1 files changed, 65 insertions, 0 deletions
diff --git a/www/wiki/extensions/Gadgets/includes/content/schema.json b/www/wiki/extensions/Gadgets/includes/content/schema.json
new file mode 100644
index 00000000..e326be46
--- /dev/null
+++ b/www/wiki/extensions/Gadgets/includes/content/schema.json
@@ -0,0 +1,65 @@
+{
+ "$schema": "http://json-schema.org/schema#",
+ "description": "Gadget definition schema",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "settings": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "rights": {
+ "description": "The rights required to be able to enable/load this gadget",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "default": {
+ "description": "Whether this gadget is enabled by default",
+ "type": "boolean",
+ "default": false
+ },
+ "hidden": {
+ "description": "Whether this gadget is hidden from preferences",
+ "type": "boolean",
+ "default": false
+ },
+ "skins": {
+ "description": "Skins supported by this gadget; empty or true if all skins are supported",
+ "type": [ "array", "boolean" ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "category": {
+ "description": "Key of the category this gadget belongs to",
+ "type": "string",
+ "default": ""
+ }
+ }
+ },
+ "module": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "scripts": {
+ "type": "array",
+ "description": "List of JavaScript pages included in this gadget"
+ },
+ "styles": {
+ "type": "array",
+ "description": "List of CSS pages included in this gadget"
+ },
+ "dependencies": {
+ "type": "array",
+ "description": "ResourceLoader modules this gadget depends upon"
+ },
+ "messages": {
+ "type": "array",
+ "description": "Messages this gadget depends upon"
+ }
+ }
+ }
+ }
+}