Don't send email notifs to blocked users if $wgBlockDisablesLogin is true
[lhc/web/wiklou.git] / docs / extension.schema.json
index e03c295..d7d9e47 100644 (file)
@@ -3,6 +3,11 @@
        "description": "MediaWiki extension.json schema",
        "type": "object",
        "properties": {
+               "manifest_version": {
+                       "type": "integer",
+                       "description": "Version of the extension.json schema the extension.json file is in.",
+                       "required": true
+               },
                "name": {
                        "type": "string",
                        "description": "The extension's canonical name.",
                "type": {
                        "type": "string",
                        "description": "The extension's type, as an index to $wgExtensionCredits.",
-                       "default": "other",
-                       "enum": [
-                               "api",
-                               "antispam",
-                               "datavalues",
-                               "media",
-                               "parserhook",
-                               "semantic",
-                               "skin",
-                               "specialpage",
-                               "variable",
-                               "other"
-                       ]
+                       "default": "other"
                },
                "author": {
                        "type": [
@@ -37,8 +30,7 @@
                        "description": "Extension's authors.",
                        "items": {
                                "type": "string"
-                       },
-                       "additionalItems": false
+                       }
                },
                "version": {
                        "type": "string",
                                }
                        }
                },
-               "ResourceLoaderModules": {
+               "ResourceModules": {
                        "type": "object",
                        "description": "ResourceLoader modules to register",
                        "additionalProperties": false,
                        "patternProperties": {
-                               "^[a-zA-Z0-9\\.]+$": {
+                               "^[a-zA-Z0-9-\\.]+$": {
                                        "type": "object",
                                        "description": "A single ResourceLoader module descriptor",
                                        "properties": {
                                                        "description": "Equivalent of remoteBasePath, but relative to $wgExtensionAssetsPath"
                                                },
                                                "scripts": {
-                                                       "type": "array",
+                                                       "type": ["string", "array"],
                                                        "description": "Scripts to always include (array of file paths)",
                                                        "items": {
                                                                "type": "string"
                                                        }
                                                },
                                                "debugScripts": {
-                                                       "type": "array",
+                                                       "type": ["string", "array"],
                                                        "description": "Scripts to include in debug contexts",
                                                        "items": {
                                                                "type": "string"
                                                        }
                                                },
                                                "loaderScripts": {
-                                                       "type": "array",
+                                                       "type": ["string", "array"],
                                                        "description": "Scripts to include in the startup module",
                                                        "items": {
                                                                "type": "string"
                                                        }
                                                },
                                                "dependencies": {
-                                                       "type": "array",
+                                                       "type": ["string", "array"],
                                                        "description": "Modules which must be loaded before this module",
                                                        "items": {
                                                                "type": "string"
                                                        }
                                                },
                                                "styles": {
-                                                       "type": "array",
+                                                       "type": ["string", "array", "object"],
                                                        "description": "Styles to always load",
                                                        "items": {
                                                                "type": "string"
                                                        }
                                                },
                                                "messages": {
-                                                       "type": "array",
+                                                       "type": ["string", "array"],
                                                        "description": "Messages to always load",
                                                        "items": {
                                                                "type": "string"
                        "type": "object",
                        "description": "SpecialPages implemented in this extension (mapping of page name to class name)"
                },
-               "SpecialPageGroups": {
-                       "type": "object",
-                       "description": "Mapping of special page name to group it belongs to"
-               },
                "AutoloadClasses": {
                        "type": "object"
                },
                "ValidSkinNames": {
                        "type": "object"
                },
+               "SkinOOUIThemes": {
+                       "type": "object"
+               },
                "callback": {
                        "type": [
                                "array",