Merge "Drop zh-tw message "saveprefs""
[lhc/web/wiklou.git] / docs / extension.schema.json
index d7d9e47..d11635d 100644 (file)
                                                                "bottom",
                                                                "top"
                                                        ]
+                                               },
+                                               "templates": {
+                                                       "type": "object",
+                                                       "description": "Templates to be loaded for client-side usage"
                                                }
                                        }
                                }
                        "type": "object",
                        "description": "ResourceLoader LESS variables"
                },
-               "ResourceLoaderLESSFunctions": {
-                       "type": "object",
-                       "description": "ResourceLoader LESS functions"
-               },
                "ResourceLoaderLESSImportPaths": {
                        "type": "object",
                        "description": "ResourceLoader import paths"
                        "description": "Registry of factory functions to create Config objects"
                },
                "namespaces": {
-                       "type": "object",
+                       "type": "array",
                        "description": "Method to add extra namespaces",
-                       "properties": {
-                               "id": {
-                                       "type": "integer"
-                               },
-                               "constant": {
-                                       "type": "string"
-                               },
-                               "name": {
-                                       "type": "string"
-                               },
-                               "gender": {
-                                       "type": "object",
-                                       "properties": {
-                                               "male": {
-                                                       "type": "string"
-                                               },
-                                               "female": {
-                                                       "type": "string"
+                       "items": {
+                               "type": "object",
+                               "properties": {
+                                       "id": {
+                                               "type": "integer"
+                                       },
+                                       "constant": {
+                                               "type": "string"
+                                       },
+                                       "name": {
+                                               "type": "string"
+                                       },
+                                       "gender": {
+                                               "type": "object",
+                                               "properties": {
+                                                       "male": {
+                                                               "type": "string"
+                                                       },
+                                                       "female": {
+                                                               "type": "string"
+                                                       }
                                                }
+                                       },
+                                       "subpages": {
+                                               "type": "boolean",
+                                               "default": false
+                                       },
+                                       "content": {
+                                               "type": "boolean",
+                                               "default": false
+                                       },
+                                       "defaultcontentmodel": {
+                                               "type": "string"
+                                       },
+                                       "protection": {
+                                               "type": ["string", "array"],
+                                               "description": "Userright(s) required to edit in this namespace"
+                                       },
+                                       "capitallinkoverride": {
+                                               "type": "boolean",
+                                               "description": "Set $wgCapitalLinks on a per-namespace basis"
                                        }
                                },
-                               "subpages": {
-                                       "type": "boolean",
-                                       "default": false
-                               },
-                               "content": {
-                                       "type": "boolean",
-                                       "default": false
-                               },
-                               "defaultcontentmodel": {
-                                       "type": "string"
-                               }
+                               "required": ["id", "constant", "name"]
                        }
                },
                "TrackingCategories": {
                        "type": "object"
                },
                "FilterLogTypes": {
-                       "type": "array"
+                       "type": "object"
                },
                "LogNames": {
                        "type": "object"
                },
                "config": {
                        "type": "object",
-                       "description": "Configuration options for this extension"
+                       "description": "Configuration options for this extension",
+                       "properties": {
+                               "_prefix": {
+                                       "type": "string",
+                                       "default": "wg",
+                                       "description": "Prefix to put in front of configuration settings when exporting them to $GLOBALS"
+                               }
+                       },
+                       "patternProperties": {
+                               "^[a-zA-Z_\u007f-\u00ff][a-zA-Z0-9_\u007f-\u00ff]*$": {
+                                       "type": ["object", "array", "string", "integer", "null", "boolean"],
+                                       "properties": {
+                                               "_merge_strategy": {
+                                                       "type": "string",
+                                                       "enum": [
+                                                               "array_merge_recursive",
+                                                               "array_plus_2d",
+                                                               "array_plus",
+                                                               "array_merge"
+                                                       ],
+                                                       "default": "array_merge"
+                                               }
+                                       }
+                               }
+                       }
                },
                "ParserTestFiles": {
                        "type": "array",