mediawiki-extensions-Templa.../extension.json
Brad Jorsch d1734fbeb2 Add tracking categories for errors
Two tracking categories are added:
* A category to track stylesheets with errors. While it's usually not
  possible to save a stylesheet with errors, it can happen if a
  server-side change makes formerly-valid CSS become invalid.
* A category to track pages displaying errors from incorrect use of
  the <templatestyles/> tag.

Bug: T195676
Change-Id: I123679d4bffe36cb28aca1688c052470027ea2a8
2018-05-29 14:36:03 -04:00

98 lines
3.9 KiB
JSON

{
"name": "TemplateStyles",
"version": "1.0",
"author": [
"Brad Jorsch",
"Marc A. Pelletier"
],
"url": "https://www.mediawiki.org/wiki/Extension:TemplateStyles",
"namemsg": "templatestyles",
"descriptionmsg": "templatestyles-desc",
"license-name": "GPL-2.0-or-later",
"type": "parserhook",
"manifest_version": 1,
"load_composer_autoloader": true,
"requires": {
"MediaWiki": ">= 1.31.0"
},
"MessagesDirs": {
"TemplateStyles": [
"i18n"
]
},
"AutoloadClasses": {
"TemplateStylesContentHandler": "includes/TemplateStylesContentHandler.php",
"TemplateStylesContent": "includes/TemplateStylesContent.php",
"TemplateStylesFontFaceAtRuleSanitizer": "includes/TemplateStylesFontFaceAtRuleSanitizer.php",
"TemplateStylesHooks": "includes/TemplateStylesHooks.php",
"TemplateStylesMatcherFactory": "includes/TemplateStylesMatcherFactory.php"
},
"ContentHandlers": {
"sanitized-css": "TemplateStylesContentHandler"
},
"TrackingCategories": [
"templatestyles-stylesheet-error-category",
"templatestyles-page-error-category"
],
"SyntaxHighlightModels": {
"sanitized-css": "css"
},
"callback": "TemplateStylesHooks::onRegistration",
"Hooks": {
"ParserFirstCallInit": [
"TemplateStylesHooks::onParserFirstCallInit"
],
"ParserClearState": [
"TemplateStylesHooks::onParserClearState"
],
"ParserAfterTidy": [
"TemplateStylesHooks::onParserAfterTidy"
],
"ContentHandlerDefaultModelFor": [
"TemplateStylesHooks::onContentHandlerDefaultModelFor"
],
"CodeEditorGetPageLanguage": [
"TemplateStylesHooks::onCodeEditorGetPageLanguage"
]
},
"config": {
"@TemplateStylesDisable": "When set to true, no styles are output. This flag is for development and will be removed.",
"TemplateStylesDisable": false,
"@TemplateStylesAllowedUrls": "PCRE regexes to match allowed URLs for various types of external references. Known types are:\n; audio: Sound files\n; image: Images\n; svg: SVGs for the Filter and Masking modules\n; font: External fonts\n; namespace: @namespace declarations\n; css: @import declarations\nIf you want to allow an entire domain, be sure to include a trailing '/', e.g. \"<^https://allowed\\.example\\.org/>\" rather than \"<^https://allowed\\.example\\.org>\", so people can't bypass your filter by creating a subdomain like \"https://allowed.example.org.evil.com\".",
"TemplateStylesAllowedUrls": {
"audio": [
"<^https://upload\\.wikimedia\\.org/wikipedia/commons/>"
],
"image": [
"<^https://upload\\.wikimedia\\.org/wikipedia/commons/>"
],
"svg": [
"<^https://upload\\.wikimedia\\.org/wikipedia/commons/[^?#]*\\.svg(?:[?#]|$)>"
],
"font": [],
"namespace": [
"<.>"
],
"css": []
},
"@TemplateStylesNamespaces": "Namespaces to default the content model to CSS on .css subpages.",
"TemplateStylesNamespaces": {
"10": true
},
"@TemplateStylesPropertyBlacklist": "Blacklist style properties that would otherwise be allowed. See also the TemplateStylesPropertySanitizer hook, which allows for finer-grained control.",
"TemplateStylesPropertyBlacklist": [],
"@TemplateStylesAtRuleBlacklist": "Blacklist at-rules that would otherwise be allowed. Include the '@' in the name. See also the TemplateStylesStylesheetSanitizer hook, which allows for finer-grained control.",
"TemplateStylesAtRuleBlacklist": [],
"@TemplateStylesUseCodeEditor": "Use CodeEditor when editing TemplateStyles CSS pages.",
"TemplateStylesUseCodeEditor": true,
"@TemplateStylesAutoParseContent": "Set this false if you want to manage an entry for 'sanitized-css' in $wgTextModelsToParse manually. If true, an entry will be added to $wgTextModelsToParse automatically if CONTENT_MODEL_CSS is in the array.",
"TemplateStylesAutoParseContent": true,
"@TemplateStylesMaxStylesheetSize": "The maximum size of a stylesheet, in bytes. Set null if you don't want to impose a limit.",
"TemplateStylesMaxStylesheetSize": 102400
},
"ConfigRegistry": {
"templatestyles": "GlobalVarConfig::newInstance"
}
}