mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/DiscussionTools
synced 2024-12-18 11:02:57 +00:00
af5b9a9b46
We switched to our memory-wrapped store everywhere outside the VE surface, but not in the VE surface itself. Change the way we construct MemoryStorage objects so that they can be constructed from a specific mw.SafeStorage instance. Ensure MemoryStorage's cache is populated with initial storage object data, and that the cache is copied over when we create derivative objectes. Bug: T310438 Change-Id: I652428f114dc5169195887cb8ca719ae196bb76f
604 lines
21 KiB
JSON
604 lines
21 KiB
JSON
{
|
|
"name": "DiscussionTools",
|
|
"license-name": "MIT",
|
|
"version": "0.0.0",
|
|
"url": "https://www.mediawiki.org/wiki/Extension:DiscussionTools",
|
|
"namemsg": "discussiontools",
|
|
"descriptionmsg": "discussiontools-desc",
|
|
"manifest_version": 2,
|
|
"requires": {
|
|
"MediaWiki": ">= 1.39.0",
|
|
"extensions": {
|
|
"VisualEditor": ">= 0.1.2",
|
|
"Linter": "*"
|
|
}
|
|
},
|
|
"MessagesDirs": {
|
|
"DiscussionTools": [
|
|
"i18n",
|
|
"i18n/api"
|
|
]
|
|
},
|
|
"ExtensionMessagesFiles": {
|
|
"DiscussionToolsAlias": "DiscussionTools.alias.php"
|
|
},
|
|
"callback": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\RegistrationHooks::onRegistration",
|
|
"ResourceFileModulePaths": {
|
|
"localBasePath": "modules",
|
|
"remoteExtPath": "DiscussionTools/modules"
|
|
},
|
|
"ResourceModules": {
|
|
"ext.discussionTools.init.styles": {
|
|
"styles": "dt.init.less",
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
},
|
|
"ext.discussionTools.init": {
|
|
"packageFiles": [
|
|
"dt.init.js",
|
|
"controller.js",
|
|
"highlighter.js",
|
|
"topicsubscriptions.js",
|
|
{
|
|
"name": "controller/contLangMessages.json",
|
|
"callback": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::getContentLanguageMessages",
|
|
"callbackParam": [
|
|
"discussiontools-defaultsummary-reply",
|
|
"newsectionsummary",
|
|
"discussiontools-replywidget-feedback-link",
|
|
"discussiontools-replywidget-feedback-link-newtopic",
|
|
"discussiontools-replywidget-mention-prefix",
|
|
"discussiontools-replywidget-mention-suffix"
|
|
]
|
|
},
|
|
{
|
|
"name": "config.json",
|
|
"config": {
|
|
"enable": "DiscussionToolsEnable",
|
|
"replyIndentation": "DiscussionToolsReplyIndentation"
|
|
}
|
|
},
|
|
"ReplyLinksController.js",
|
|
"CommentController.js",
|
|
"NewTopicController.js",
|
|
"logger.js",
|
|
"modifier.js",
|
|
"utils.js",
|
|
"Parser.js",
|
|
"ThreadItemSet.js",
|
|
"ThreadItem.js",
|
|
"CommentItem.js",
|
|
"HeadingItem.js",
|
|
"CommentDetails.js",
|
|
"createMemoryStorage.js",
|
|
"lib/moment-timezone/moment-timezone-with-data-1970-2030.js",
|
|
{
|
|
"name": "parser/data.json",
|
|
"callback": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::getLocalData"
|
|
}
|
|
],
|
|
"styles": [
|
|
"dt.ui.NewTopicController.less"
|
|
],
|
|
"dependencies": [
|
|
"ext.discussionTools.init.styles",
|
|
"web2017-polyfills",
|
|
"moment",
|
|
"rangefix",
|
|
"oojs-ui-windows",
|
|
"mediawiki.api",
|
|
"mediawiki.Title",
|
|
"mediawiki.util",
|
|
"mediawiki.storage",
|
|
"mediawiki.String",
|
|
"mediawiki.user",
|
|
"ext.visualEditor.core.utils.parsing"
|
|
],
|
|
"messages": [
|
|
"discussiontools-postedit-confirmation-published",
|
|
"discussiontools-postedit-confirmation-topicadded",
|
|
"discussiontools-autotopicsubpopup-title",
|
|
"discussiontools-autotopicsubpopup-body",
|
|
"discussiontools-autotopicsubpopup-dismiss",
|
|
"discussiontools-autotopicsubpopup-preferences",
|
|
"discussiontools-error-comment-conflict",
|
|
"discussiontools-error-comment-disappeared",
|
|
"discussiontools-error-comment-disappeared-reload",
|
|
"discussiontools-error-comment-not-saved",
|
|
"discussiontools-error-comment-is-transcluded",
|
|
"discussiontools-error-comment-is-transcluded-title",
|
|
"discussiontools-error-lint",
|
|
"discussiontools-error-noswitchtove",
|
|
"discussiontools-error-noswitchtove-extension",
|
|
"discussiontools-error-noswitchtove-table",
|
|
"discussiontools-error-noswitchtove-template",
|
|
"discussiontools-error-noswitchtove-title",
|
|
"discussiontools-newtopic-legacy-hint",
|
|
"discussiontools-newtopic-placeholder-title",
|
|
"discussiontools-newtopic-missing-title",
|
|
"discussiontools-replylink",
|
|
"discussiontools-replywidget-loading",
|
|
"discussiontools-replywidget-watchthis",
|
|
"discussiontools-target-comment-missing",
|
|
"discussiontools-target-comments-missing",
|
|
"discussiontools-topicsubscription-button-subscribe",
|
|
"discussiontools-topicsubscription-button-subscribe-tooltip",
|
|
"discussiontools-topicsubscription-button-unsubscribe",
|
|
"discussiontools-topicsubscription-button-unsubscribe-tooltip",
|
|
"discussiontools-topicsubscription-notify-subscribed-body",
|
|
"discussiontools-topicsubscription-notify-subscribed-title",
|
|
"discussiontools-topicsubscription-notify-unsubscribed-body",
|
|
"discussiontools-topicsubscription-notify-unsubscribed-title"
|
|
],
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
},
|
|
"ext.discussionTools.debug": {
|
|
"packageFiles": [
|
|
"dt.debug.js",
|
|
"debughighlighter.js"
|
|
],
|
|
"styles": "debughighlighter.less",
|
|
"dependencies": [
|
|
"ext.discussionTools.init"
|
|
],
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
},
|
|
"ext.discussionTools.ReplyWidget": {
|
|
"packageFiles": [
|
|
"dt.ui.ReplyWidget.js",
|
|
"ModeTabSelectWidget.js",
|
|
"ModeTabOptionWidget.js",
|
|
"AbandonCommentDialog.js",
|
|
"AbandonTopicDialog.js",
|
|
{
|
|
"name": "licenseMessages.json",
|
|
"callback": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::getTermsOfUseMessagesParsed",
|
|
"versionCallback": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::getTermsOfUseMessagesVersion"
|
|
}
|
|
],
|
|
"styles": [
|
|
"dt.ui.ReplyWidget.less"
|
|
],
|
|
"messages": [
|
|
"discussiontools-replywidget-abandon",
|
|
"discussiontools-replywidget-abandon-discard",
|
|
"discussiontools-replywidget-abandon-keep",
|
|
"discussiontools-replywidget-abandontopic",
|
|
"discussiontools-replywidget-abandontopic-discard",
|
|
"discussiontools-replywidget-abandontopic-keep",
|
|
"discussiontools-replywidget-advanced",
|
|
"discussiontools-replywidget-anon-warning",
|
|
"discussiontools-replywidget-cancel",
|
|
"discussiontools-replywidget-feedback",
|
|
"discussiontools-replywidget-mention-tool-header",
|
|
"discussiontools-replywidget-mention-tool-title",
|
|
"discussiontools-replywidget-mode-source",
|
|
"discussiontools-replywidget-mode-visual",
|
|
"discussiontools-replywidget-newcomments-button",
|
|
"discussiontools-replywidget-newtopic",
|
|
"discussiontools-replywidget-placeholder-newtopic",
|
|
"discussiontools-replywidget-placeholder-reply",
|
|
"discussiontools-replywidget-preferences",
|
|
"discussiontools-replywidget-preview",
|
|
"discussiontools-replywidget-reply",
|
|
"discussiontools-replywidget-summary",
|
|
"discussiontools-replywidget-transcluded",
|
|
"ooui-popup-widget-close-button-aria-label",
|
|
"visualeditor-key-ctrl",
|
|
"visualeditor-key-enter",
|
|
"visualeditor-key-escape",
|
|
"visualeditor-mweditmode-tooltip"
|
|
],
|
|
"dependencies": [
|
|
"oojs-ui-widgets",
|
|
"oojs-ui.styles.indicators",
|
|
"ext.discussionTools.init",
|
|
"mediawiki.widgets.AbandonEditDialog",
|
|
"mediawiki.widgets.visibleLengthLimit"
|
|
],
|
|
"optionalDependencies": {
|
|
"ConfirmEdit": "ext.confirmEdit.CaptchaInputWidget"
|
|
},
|
|
"factory": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::addOptionalDependencies",
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
},
|
|
"ext.discussionTools.ReplyWidgetPlain": {
|
|
"packageFiles": [
|
|
"dt.ui.ReplyWidgetPlain.js"
|
|
],
|
|
"dependencies": [
|
|
"ext.discussionTools.ReplyWidget",
|
|
"mediawiki.editfont.styles",
|
|
"mediawiki.user",
|
|
"mediawiki.jqueryMsg",
|
|
"ext.visualEditor.switching"
|
|
],
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
},
|
|
"ext.discussionTools.ReplyWidgetVisual": {
|
|
"packageFiles": [
|
|
"dt.ui.ReplyWidgetVisual.js",
|
|
"dt-ve/CommentTarget.js",
|
|
"dt-ve/CommentTargetWidget.js",
|
|
"dt-ve/dt.dm.MWSignatureNode.js",
|
|
"dt-ve/dt.ce.MWSignatureNode.js",
|
|
"dt-ve/dt.ui.MWSignatureContextItem.js",
|
|
"dt-ve/dt.ui.registries.js",
|
|
"dt-ve/dt.ui.UsernameCompletionAction.js",
|
|
"dt-ve/dt.ui.UsernameCompletionTool.js",
|
|
"dt-ve/dt.dm.PingNode.js",
|
|
"dt-ve/dt.ce.PingNode.js"
|
|
],
|
|
"styles": [
|
|
"dt-ve/CommentTargetWidget.less"
|
|
],
|
|
"messages": [
|
|
"discussiontools-replywidget-signature-title",
|
|
"discussiontools-replywidget-signature-body"
|
|
],
|
|
"dependencies": [
|
|
"ext.discussionTools.ReplyWidget",
|
|
"ext.visualEditor.mwcore",
|
|
"ext.visualEditor.mwsignature",
|
|
"ext.visualEditor.mwwikitext",
|
|
"ext.visualEditor.articleTarget"
|
|
],
|
|
"targets": [
|
|
"desktop",
|
|
"mobile"
|
|
]
|
|
}
|
|
},
|
|
"QUnitTestModule": {
|
|
"localBasePath": "tests",
|
|
"remoteExtPath": "DiscussionTools/tests",
|
|
"packageFiles": [
|
|
"qunit/index.js",
|
|
"qunit/testUtils.js",
|
|
{
|
|
"name": "data-en.json",
|
|
"callback": "\\MediaWiki\\Extension\\DiscussionTools\\ResourceLoaderData::getLocalData",
|
|
"callbackParam": "en"
|
|
},
|
|
"data/arwiki-config.json",
|
|
"data/arwiki-data.json",
|
|
"data/ckbwiki-config.json",
|
|
"data/ckbwiki-data.json",
|
|
"data/enwiki-config.json",
|
|
"data/enwiki-data.json",
|
|
"data/frwiki-config.json",
|
|
"data/frwiki-data.json",
|
|
"data/huwiki-config.json",
|
|
"data/huwiki-data.json",
|
|
"data/itwiki-config.json",
|
|
"data/itwiki-data.json",
|
|
"data/nlwiki-config.json",
|
|
"data/nlwiki-data.json",
|
|
"data/plwiki-config.json",
|
|
"data/plwiki-data.json",
|
|
"data/srwiki-config.json",
|
|
"data/srwiki-data.json",
|
|
"data/commonswiki-config.json",
|
|
"data/commonswiki-data.json",
|
|
"cases/authors.json",
|
|
"cases/comments.json",
|
|
"cases/modified.json",
|
|
"cases/reply.json",
|
|
"cases/unwrap.json",
|
|
"cases/linearWalk.json",
|
|
"cases/sanitize-wikitext-linebreaks.json",
|
|
"cases/timestamp-regex.json",
|
|
"cases/timestamp-parser.json",
|
|
"cases/timestamp-parser-dst.json",
|
|
"cases/linearWalk/simple.json",
|
|
"cases/en-big-oldparser/en-big-oldparser.json",
|
|
"cases/en-big-parsoid/en-big-parsoid.json",
|
|
"cases/ckb-big-oldparser/ckb-big-oldparser.json",
|
|
"cases/ckb-big-parsoid/ckb-big-parsoid.json",
|
|
"cases/pl-big-oldparser/pl-big-oldparser.json",
|
|
"cases/pl-big-parsoid/pl-big-parsoid.json",
|
|
"cases/ar-no-paragraph-oldparser/ar-no-paragraph-oldparser.json",
|
|
"cases/ar-no-paragraph-parsoid/ar-no-paragraph-parsoid.json",
|
|
"cases/ar-nbsp-timezone-oldparser/ar-nbsp-timezone-oldparser.json",
|
|
"cases/ar-nbsp-timezone-parsoid/ar-nbsp-timezone-parsoid.json",
|
|
"cases/fr-unsigned-oldparser/fr-unsigned-oldparser.json",
|
|
"cases/fr-unsigned-parsoid/fr-unsigned-parsoid.json",
|
|
"cases/it-unsigned-oldparser/it-unsigned-oldparser.json",
|
|
"cases/it-unsigned-parsoid/it-unsigned-parsoid.json",
|
|
"cases/sr-ec/sr-ec.json",
|
|
"cases/sr-el/sr-el.json",
|
|
"cases/dt-tags-oldparser/dt-tags-oldparser.json",
|
|
"cases/dt-tags-parsoid/dt-tags-parsoid.json",
|
|
"cases/single-comment-heading/single-comment-heading.json",
|
|
"cases/single-comment-no-heading/single-comment-no-heading.json",
|
|
"cases/lrm-signature/lrm-signature.json",
|
|
"cases/selflink-signature/selflink-signature.json",
|
|
"cases/reflist-oldparser/reflist-oldparser.json",
|
|
"cases/reflist-parsoid/reflist-parsoid.json",
|
|
"cases/fallback-encoding-link/fallback-encoding-link.json",
|
|
"cases/fake-headings/fake-headings.json",
|
|
"cases/signatures-funny/signatures-funny.json",
|
|
"qunit/utils.test.js",
|
|
"qunit/modifier.test.js",
|
|
"qunit/parser.test.js",
|
|
"qunit/ThreadItem.test.js"
|
|
],
|
|
"templates": [
|
|
"cases/linearWalk/simple.html",
|
|
"cases/en-big-oldparser/en-big-oldparser.html",
|
|
"cases/en-big-oldparser/en-big-oldparser-modified.html",
|
|
"cases/en-big-oldparser/en-big-oldparser-modified-bullet.html",
|
|
"cases/en-big-oldparser/en-big-oldparser-reply.html",
|
|
"cases/en-big-parsoid/en-big-parsoid.html",
|
|
"cases/en-big-parsoid/en-big-parsoid-modified.html",
|
|
"cases/en-big-parsoid/en-big-parsoid-modified-bullet.html",
|
|
"cases/ckb-big-oldparser/ckb-big-oldparser.html",
|
|
"cases/ckb-big-parsoid/ckb-big-parsoid.html",
|
|
"cases/en-bigafd-parsoid/en-bigafd-parsoid.html",
|
|
"cases/pl-big-oldparser/pl-big-oldparser.html",
|
|
"cases/pl-big-oldparser/pl-big-oldparser-modified.html",
|
|
"cases/pl-big-oldparser/pl-big-oldparser-reply.html",
|
|
"cases/pl-big-parsoid/pl-big-parsoid.html",
|
|
"cases/pl-big-parsoid/pl-big-parsoid-modified.html",
|
|
"cases/ar-no-paragraph-oldparser/ar-no-paragraph-oldparser.html",
|
|
"cases/ar-no-paragraph-oldparser/ar-no-paragraph-oldparser-modified.html",
|
|
"cases/ar-no-paragraph-oldparser/ar-no-paragraph-oldparser-reply.html",
|
|
"cases/ar-no-paragraph-parsoid/ar-no-paragraph-parsoid.html",
|
|
"cases/ar-no-paragraph-parsoid/ar-no-paragraph-parsoid-modified.html",
|
|
"cases/ar-nbsp-timezone-oldparser/ar-nbsp-timezone-oldparser.html",
|
|
"cases/ar-nbsp-timezone-parsoid/ar-nbsp-timezone-parsoid.html",
|
|
"cases/fr-unsigned-oldparser/fr-unsigned-oldparser.html",
|
|
"cases/fr-unsigned-oldparser/fr-unsigned-oldparser-reply.html",
|
|
"cases/fr-unsigned-parsoid/fr-unsigned-parsoid.html",
|
|
"cases/it-unsigned-oldparser/it-unsigned-oldparser.html",
|
|
"cases/it-unsigned-parsoid/it-unsigned-parsoid.html",
|
|
"cases/sr-ec/sr-ec.html",
|
|
"cases/sr-el/sr-el.html",
|
|
"cases/dt-tags-oldparser/dt-tags-oldparser.html",
|
|
"cases/dt-tags-oldparser/dt-tags-oldparser-modified.html",
|
|
"cases/dt-tags-parsoid/dt-tags-parsoid.html",
|
|
"cases/dt-tags-parsoid/dt-tags-parsoid-modified.html",
|
|
"cases/single-comment-heading/single-comment-heading.html",
|
|
"cases/single-comment-heading/single-comment-heading-modified.html",
|
|
"cases/single-comment-no-heading/single-comment-no-heading.html",
|
|
"cases/single-comment-no-heading/single-comment-no-heading-modified.html",
|
|
"cases/lrm-signature/lrm-signature.html",
|
|
"cases/selflink-signature/selflink-signature.html",
|
|
"cases/reflist-oldparser/reflist-oldparser.html",
|
|
"cases/reflist-parsoid/reflist-parsoid.html",
|
|
"cases/fallback-encoding-link/fallback-encoding-link.html",
|
|
"cases/fake-headings/fake-headings.html",
|
|
"cases/split-list/split-list.html",
|
|
"cases/split-list/split-list-modified.html",
|
|
"cases/split-list2/split-list2.html",
|
|
"cases/split-list2/split-list2-modified.html",
|
|
"cases/mixed-indentation/mixed-indentation.html",
|
|
"cases/mixed-indentation/mixed-indentation-modified.html",
|
|
"cases/unclosed-font/unclosed-font.html",
|
|
"cases/unclosed-font/unclosed-font-modified.html",
|
|
"cases/wrappers/wrappers.html",
|
|
"cases/wrappers/wrappers-modified.html",
|
|
"cases/wrappers2-oldparser/wrappers2-oldparser.html",
|
|
"cases/wrappers2-oldparser/wrappers2-oldparser-modified.html",
|
|
"cases/wrappers2-parsoid/wrappers2-parsoid.html",
|
|
"cases/wrappers2-parsoid/wrappers2-parsoid-modified.html",
|
|
"cases/transclusions4/transclusions4.html",
|
|
"cases/transclusions4/transclusions4-modified.html",
|
|
"cases/signatures-funny/signatures-funny.html",
|
|
"cases/signatures-funny/signatures-funny-modified.html",
|
|
"cases/signatures-funny/signatures-funny-reply.html",
|
|
"cases/signatures-comments/signatures-comments.html",
|
|
"cases/signatures-comments/signatures-comments-modified.html",
|
|
"cases/span-about-group/span-about-group.html",
|
|
"cases/span-about-group/span-about-group-modified.html"
|
|
],
|
|
"dependencies": [
|
|
"ext.discussionTools.init"
|
|
]
|
|
},
|
|
"AutoloadNamespaces": {
|
|
"MediaWiki\\Extension\\DiscussionTools\\": "includes/"
|
|
},
|
|
"TestAutoloadNamespaces": {
|
|
"MediaWiki\\Extension\\DiscussionTools\\Tests\\Unit\\": "tests/phpunit/unit/",
|
|
"MediaWiki\\Extension\\DiscussionTools\\Tests\\": "tests/phpunit/"
|
|
},
|
|
"APIModules": {
|
|
"discussiontoolscompare": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsCompare"
|
|
},
|
|
"discussiontoolsedit": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsEdit",
|
|
"services": [
|
|
"DiscussionTools.CommentParser"
|
|
]
|
|
},
|
|
"discussiontoolsgetsubscriptions": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsGetSubscriptions",
|
|
"services": [
|
|
"DiscussionTools.SubscriptionStore",
|
|
"ConfigFactory"
|
|
]
|
|
},
|
|
"discussiontoolspageinfo": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsPageInfo"
|
|
},
|
|
"discussiontoolspreview": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsPreview",
|
|
"services": [
|
|
"DiscussionTools.CommentParser"
|
|
]
|
|
},
|
|
"discussiontoolssubscribe": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\ApiDiscussionToolsSubscribe",
|
|
"services": [
|
|
"DiscussionTools.SubscriptionStore",
|
|
"ConfigFactory"
|
|
]
|
|
}
|
|
},
|
|
"SpecialPages": {
|
|
"TopicSubscriptions": {
|
|
"class": "\\MediaWiki\\Extension\\DiscussionTools\\SpecialTopicSubscriptions",
|
|
"services": [
|
|
"LinkRenderer",
|
|
"LinkBatchFactory"
|
|
]
|
|
}
|
|
},
|
|
"Hooks": {
|
|
"BeforeCreateEchoEvent": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\EchoHooks::onBeforeCreateEchoEvent",
|
|
"EchoGetBundleRules": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\EchoHooks::onEchoGetBundleRules",
|
|
"EchoGetEventsForRevision": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\EchoHooks::onEchoGetEventsForRevision",
|
|
"MinervaNeueTalkPageOverlay": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\MobileHooks::onMinervaNeueTalkPageOverlay",
|
|
"LoadExtensionSchemaUpdates": "installer",
|
|
"ParserAfterTidy": "parser",
|
|
"ArticleViewHeader": "page",
|
|
"BeforeDisplayNoArticleText": "page",
|
|
"BeforePageDisplay": "page",
|
|
"GetActionName": "page",
|
|
"OutputPageBeforeHTML": "page",
|
|
"TitleGetEditNotices": "page",
|
|
"ResourceLoaderGetConfigVars": "resourceloader",
|
|
"GetBetaFeaturePreferences": "\\MediaWiki\\Extension\\DiscussionTools\\Hooks\\PreferenceHooks::onGetBetaFeaturePreferences",
|
|
"GetPreferences": "preferences",
|
|
"LocalUserCreated": "preferences",
|
|
"ChangeTagsListActive": "tags",
|
|
"ListDefinedTags": "tags",
|
|
"RecentChange_save": "tags"
|
|
},
|
|
"HookHandlers": {
|
|
"installer": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\InstallerHooks"
|
|
},
|
|
"page": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\PageHooks",
|
|
"services": [
|
|
"ConfigFactory",
|
|
"DiscussionTools.SubscriptionStore",
|
|
"UserNameUtils",
|
|
"UserOptionsLookup"
|
|
]
|
|
},
|
|
"parser": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\ParserHooks",
|
|
"services": [
|
|
"ConfigFactory"
|
|
]
|
|
},
|
|
"preferences": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\PreferenceHooks",
|
|
"services": [
|
|
"ConfigFactory",
|
|
"LinkRenderer"
|
|
]
|
|
},
|
|
"resourceloader": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\ResourceLoaderHooks",
|
|
"services": [
|
|
"ConfigFactory"
|
|
]
|
|
},
|
|
"tags": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Hooks\\TagHooks"
|
|
}
|
|
},
|
|
"Actions": {
|
|
"dtunsubscribe": {
|
|
"class": "MediaWiki\\Extension\\DiscussionTools\\Actions\\UnsubscribeAction",
|
|
"services": [
|
|
"DiscussionTools.SubscriptionStore"
|
|
]
|
|
}
|
|
},
|
|
"ServiceWiringFiles": [
|
|
"includes/ServiceWiring.php"
|
|
],
|
|
"DefaultUserOptions": {
|
|
"discussiontools-betaenable": 0,
|
|
"discussiontools-editmode": "",
|
|
"discussiontools-newtopictool": 1,
|
|
"discussiontools-newtopictool-createpage": 1,
|
|
"discussiontools-replytool": 1,
|
|
"discussiontools-sourcemodetoolbar": 1,
|
|
"discussiontools-topicsubscription": 1,
|
|
"discussiontools-autotopicsub": 1
|
|
},
|
|
"config": {
|
|
"DiscussionToolsEnable": {
|
|
"value": true,
|
|
"description": "Enable DiscussionTools on talk pages."
|
|
},
|
|
"DiscussionToolsBeta": {
|
|
"value": false,
|
|
"description": "Make DiscussionTools a BetaFeature."
|
|
},
|
|
"DiscussionToolsABTest": {
|
|
"value": false,
|
|
"description": "A/B test DiscussionTools features for logged in users. false, 'replytool', or 'newtopictool'"
|
|
},
|
|
"DiscussionToolsEnableMobile": {
|
|
"value": true,
|
|
"description": "Enable DiscussionTools on mobile talk pages. Currently this automatically enables 'replytool', 'newtopictool' & 'sourcemodetoolbar' on those pages and disables topic subscriptions on those pages."
|
|
},
|
|
"DiscussionTools_replytool": {
|
|
"value": "default",
|
|
"description": "Override availability of DiscussionTools reply tool. 'default', 'available', or 'unavailable'."
|
|
},
|
|
"DiscussionTools_newtopictool": {
|
|
"value": "default",
|
|
"description": "Override availability of DiscussionTools new topic tool. 'default', 'available', or 'unavailable'."
|
|
},
|
|
"DiscussionTools_sourcemodetoolbar": {
|
|
"value": "default",
|
|
"description": "Enable the toolbar in source mode for the reply tool and new topic tool. 'default', 'available', or 'unavailable'."
|
|
},
|
|
"DiscussionTools_topicsubscription": {
|
|
"value": "default",
|
|
"description": "Override availability of DiscussionTools topic subscription feature. 'default', 'available', or 'unavailable'."
|
|
},
|
|
"DiscussionTools_autotopicsub": {
|
|
"value": "default",
|
|
"description": "Override availability of DiscussionTools automatic topic subscription feature. 'default', 'available', or 'unavailable'."
|
|
},
|
|
"DiscussionToolsAutoTopicSubEditor": {
|
|
"value": "discussiontoolsapi",
|
|
"description": "Editor which triggers automatic topic subscriptions. Either 'discussiontoolsapi' for edits made using DiscussionTools' API (e.g. reply and new topic tools), or 'any' for any editor."
|
|
},
|
|
"DiscussionToolsTalkPageParserCacheExpiry": {
|
|
"value": 0,
|
|
"description": "Override $wgParserCacheExpireTime for discussion pages, regardless of DiscussionTools enablement."
|
|
},
|
|
"DiscussionToolsReplyIndentation": {
|
|
"value": "invisible",
|
|
"description": "Reply indentation syntax to use: 'invisible' (use `<dl><dd>` tags to output `:` in wikitext) or 'bullet' (use `<ul><li>` tags to output `*` in wikitext)."
|
|
},
|
|
"DTSchemaEditAttemptStepSamplingRate": {
|
|
"value": 0,
|
|
"description": "Rate at which to sample sessions for instrumentation; overrides WikimediaEvents rate if set to any number other than 0"
|
|
},
|
|
"DTSchemaEditAttemptStepOversample": {
|
|
"value": false,
|
|
"description": "Oversample EditAttemptStep logging; distinct from rate tuning, as it'll flag the events as being oversampled"
|
|
}
|
|
},
|
|
"ConfigRegistry": {
|
|
"discussiontools": "GlobalVarConfig::newInstance"
|
|
},
|
|
"type": "other"
|
|
}
|