{
	"name": "TemplateData",
	"version": "0.2.0",
	"author": [
		"Timo Tijhof",
		"Moriel Schottlender",
		"James D. Forrester",
		"Trevor Parscal",
		"Bartosz Dziewoński",
		"Marielle Volz",
		"Sam Wilson",
		"[https://www.mediawiki.org/wiki/User:TheresNoTime-WMF Sammy Fox]",
		"..."
	],
	"url": "https://www.mediawiki.org/wiki/Extension:TemplateData",
	"descriptionmsg": "templatedata-desc",
	"license-name": "GPL-2.0-or-later",
	"type": "parserhook",
	"requires": {
		"MediaWiki": ">= 1.45"
	},
	"APIModules": {
		"templatedata": "MediaWiki\\Extension\\TemplateData\\Api\\ApiTemplateData"
	},
	"AutoloadNamespaces": {
		"MediaWiki\\Extension\\TemplateData\\": "includes/"
	},
	"SpecialPages": {
		"TemplateDiscovery": {
			"class": "MediaWiki\\Extension\\TemplateData\\Special\\SpecialTemplateDiscovery"
		}
	},
	"Hooks": {
		"ParserFirstCallInit": "main",
		"MultiContentSave": "main",
		"ResourceLoaderRegisterModules": "main",
		"EditPage::showEditForm:initial": "main",
		"ParserFetchTemplateData": "main",
		"OutputPageBeforeHTML": "main",
		"GetPreferences": "main",
		"SaveUserOptions": "main",
		"CommunityConfigurationProvider_initList": "communityconfig"
	},
	"HookHandlers": {
		"main": {
			"class": "MediaWiki\\Extension\\TemplateData\\Hooks",
			"services": [
				"MainConfig"
			]
		},
		"communityconfig": {
			"class": "MediaWiki\\Extension\\TemplateData\\CommunityConfigurationHooks",
			"services": [
				"MainConfig"
			]
		}
	},
	"MessagesDirs": {
		"TemplateData": [
			"i18n",
			"i18n/api"
		]
	},
	"ExtensionMessagesFiles": {
		"TemplateDataAlias": "TemplateData.i18n.alias.php"
	},
	"ForeignResourcesDir": "modules/lib",
	"ResourceModules": {
		"ext.templateData": {
			"localBasePath": "modules/ext.templateData",
			"remoteExtPath": "TemplateData/modules/ext.templateData",
			"styles": "templateData.less"
		},
		"ext.templateDataGenerator.editPage": {
			"localBasePath": "modules/ext.templateDataGenerator.editPage",
			"remoteExtPath": "TemplateData/modules/ext.templateDataGenerator.editPage",
			"packageFiles": [
				"init.js"
			]
		},
		"ext.templateDataGenerator.data": {
			"localBasePath": "modules/ext.templateDataGenerator.data",
			"remoteExtPath": "TemplateData/modules/ext.templateDataGenerator.data",
			"packageFiles": [
				"init.js",
				"Model.js",
				"SourceHandler.js"
			],
			"dependencies": [
				"oojs"
			]
		},
		"ext.templateDataGenerator.editTemplatePage.loading": {
			"localBasePath": "modules/ext.templateDataGenerator.editTemplatePage",
			"remoteExtPath": "TemplateData/modules/ext.templateDataGenerator.editTemplatePage",
			"styles": "templateDataGenerator.placeholder.less"
		},
		"ext.templateDataGenerator.editTemplatePage": {
			"localBasePath": "modules/ext.templateDataGenerator.editTemplatePage",
			"remoteExtPath": "TemplateData/modules/ext.templateDataGenerator.editTemplatePage",
			"styles": "templateDataGenerator.ui.less",
			"packageFiles": [
				"init.js",
				"widgets/ParamSelectWidget.js",
				"widgets/ParamWidget.js",
				"widgets/ParamImportWidget.js",
				"widgets/LanguageResultWidget.js",
				"widgets/LanguageSearchWidget.js",
				"Dialog.js",
				"Target.js"
			],
			"dependencies": [
				"mediawiki.api",
				"mediawiki.language",
				"mediawiki.user",
				"oojs-ui-core",
				"oojs-ui-widgets",
				"oojs-ui-windows",
				"oojs-ui.styles.icons-layout",
				"oojs-ui.styles.icons-interactions",
				"oojs-ui.styles.icons-moderation",
				"ext.templateData",
				"ext.templateData.images",
				"ext.templateDataGenerator.data",
				"jquery.uls.data",
				"jquery.textSelection",
				"web2017-polyfills"
			],
			"messages": [
				"comma-separator",
				"templatedata-doc-no-params-set",
				"templatedata-doc-param-status-optional",
				"templatedata-doc-param-status-deprecated",
				"templatedata-doc-param-status-required",
				"templatedata-doc-param-status-suggested",
				"templatedata-doc-param-type-boolean",
				"templatedata-doc-param-type-content",
				"templatedata-doc-param-type-date",
				"templatedata-doc-param-type-line",
				"templatedata-doc-param-type-number",
				"templatedata-doc-param-type-string",
				"templatedata-doc-param-type-unbalanced-wikitext",
				"templatedata-doc-param-type-unknown",
				"templatedata-doc-param-type-url",
				"templatedata-doc-param-type-wiki-file-name",
				"templatedata-doc-param-type-wiki-page-name",
				"templatedata-doc-param-type-wiki-template-name",
				"templatedata-doc-param-type-wiki-user-name",
				"templatedata-editbutton",
				"templatedata-errormsg-jsonbadformat",
				"templatedata-errormsg-insertblank",
				"templatedata-exists-on-related-page",
				"templatedata-modal-button-add-language",
				"templatedata-modal-button-addparam",
				"templatedata-modal-button-addmap",
				"templatedata-modal-button-apply",
				"templatedata-modal-button-back",
				"templatedata-modal-button-cancel",
				"templatedata-modal-button-changelang",
				"templatedata-modal-button-delparam",
				"templatedata-modal-button-done",
				"templatedata-modal-button-importParams",
				"templatedata-modal-button-map",
				"templatedata-modal-button-removemap",
				"templatedata-modal-button-saveparam",
				"templatedata-modal-confirmcancel",
				"templatedata-modal-button-discard",
				"templatedata-modal-current-language",
				"templatedata-modal-errormsg",
				"templatedata-modal-errormsg-duplicate-name",
				"templatedata-modal-errormsg-import-noparams",
				"templatedata-modal-format-block",
				"templatedata-modal-format-custom",
				"templatedata-modal-format-inline",
				"templatedata-modal-format-null",
				"templatedata-modal-format-placeholder",
				"templatedata-modal-json-error-replace",
				"templatedata-modal-notice-import-numparams",
				"templatedata-modal-placeholder-add-new-map-input",
				"templatedata-modal-placeholder-paramkey",
				"templatedata-modal-search-input-placeholder",
				"templatedata-modal-placeholder-mapinfo",
				"templatedata-modal-placeholder-prompt-map-name",
				"templatedata-modal-table-param-aliases",
				"templatedata-modal-table-param-autovalue",
				"templatedata-modal-table-param-suggestedvalues",
				"templatedata-modal-placeholder-multiselect",
				"templatedata-modal-table-param-default",
				"templatedata-modal-table-param-status",
				"templatedata-modal-table-param-deprecated",
				"templatedata-modal-table-param-deprecatedValue",
				"templatedata-modal-table-param-description",
				"templatedata-modal-table-param-example",
				"templatedata-modal-table-param-importoption",
				"templatedata-modal-table-param-importoption-subtitle",
				"templatedata-modal-table-param-label",
				"templatedata-modal-table-param-name",
				"templatedata-modal-table-param-required",
				"templatedata-modal-table-param-suggested",
				"templatedata-modal-table-param-type",
				"templatedata-modal-title",
				"templatedata-modal-title-addparam",
				"templatedata-modal-title-choose-language",
				"templatedata-modal-title-language",
				"templatedata-modal-title-paramorder",
				"templatedata-modal-title-templatedesc",
				"templatedata-modal-title-templateformat",
				"templatedata-modal-title-templateformatstring",
				"templatedata-modal-title-templateparam-details",
				"templatedata-modal-title-templateparams",
				"templatedata-helplink",
				"templatedata-helplink-target"
			]
		},
		"ext.templateData.images": {
			"localBasePath": "modules/ext.templateData.images",
			"class": "MediaWiki\\ResourceLoader\\ImageModule",
			"selectorWithVariant": ".oo-ui-icon-{name}.oo-ui-image-invert",
			"selectorWithoutVariant": ".oo-ui-icon-{name}",
			"variants": {
				"invert": {
					"color": "#FFFFFF",
					"global": true
				}
			},
			"images": {
				"template-format-block": {
					"file": {
						"ltr": "block-rtl.svg",
						"rtl": "block-ltr.svg"
					}
				},
				"template-format-inline": {
					"file": "inline.svg"
				},
				"parameter-set": {
					"file": {
						"ltr": "parameter-set-ltr.svg",
						"rtl": "parameter-set-rtl.svg"
					}
				}
			}
		},
		"ext.templateData.templateDiscovery": {
			"localBasePath": "modules/ext.templateData.templateDiscovery",
			"remoteExtPath": "TemplateData/modules/ext.templateData.templateDiscovery",
			"styles": [
				"TemplateSearchLayout.less",
				"categories/CategoryBrowser.less"
			],
			"packageFiles": [
				"init.js",
				{
					"name": "config.json",
					"callback": "MediaWiki\\Extension\\TemplateData\\TemplateDiscoveryConfig::getConfig"
				},
				{
					"name": "mwConfig.json",
					"config": [
						"TemplateDataEditorNamespaces",
						"TemplateDataEnableCategoryBrowser",
						"TemplateDataEnableFeaturedTemplates"
					]
				},
				"TemplateSearchLayout.js",
				"TemplateList.js",
				"SearchWidget.js",
				"TemplateMenuItem.js",
				"FavoritesStore.js",
				"FavoriteButton.js",
				"SpecialPage.js",
				"FeaturedTemplatesList.js",
				"categories/CategoryBrowser.js",
				"categories/Column.js",
				"categories/ColumnGroup.js",
				"categories/ColumnItem.js",
				"categories/DataStore.js"
			],
			"dependencies": [
				"mediawiki.storage",
				"mediawiki.widgets",
				"oojs-ui-core",
				"oojs-ui-widgets",
				"oojs-ui.styles.icons-editing-advanced",
				"oojs-ui.styles.icons-interactions",
				"oojs-ui.styles.icons-movement",
				"oojs-ui.styles.icons-moderation"
			],
			"messages": [
				"colon-separator",
				"semicolon-separator",
				"notloggedin",
				"redirectedfrom",
				"templatedata-doc-subpage",
				"templatedata-excluded-subpages",
				"templatedata-search-description",
				"templatedata-search-placeholder",
				"templatedata-search-placeholder-cirrussearch",
				"templatedata-search-list-empty",
				"templatedata-search-list-empty-anon",
				"templatedata-search-list-header",
				"templatedata-favorite-add",
				"templatedata-favorite-added",
				"templatedata-favorite-disabled",
				"templatedata-favorite-error",
				"templatedata-favorite-remove",
				"templatedata-favorite-removed",
				"templatedata-favorite-maximum-reached",
				"templatedata-favorite-add",
				"templatedata-featured-list-header",
				"templatedata-featured-list-empty",
				"templatedata-category-browser-header",
				"templatedata-category-switch-label",
				"templatedata-category-switch-button",
				"templatedata-category-column-empty",
				"templatedata-category-browser-loadmore",
				"templatedata-category-use-template",
				"templatedata-category-categories",
				"templatedata-category-no-cats",
				"templatedata-category-column-error",
				"templatedata-featured-list-config-link",
				"templatedata-featured-list-help",
				"templatedata-favorite-count"
			]
		}
	},
	"QUnitTestModule": {
		"localBasePath": "tests/qunit",
		"remoteExtPath": "TemplateData/tests/qunit",
		"packageFiles": [
			"init.js",
			"ext.templateData.tests.js",
			"ext.templateData.templateDiscovery/ColumnGroup.tests.js"
		],
		"dependencies": [
			"ext.templateDataGenerator.data",
			"ext.templateData.templateDiscovery"
		]
	},
	"attributes": {
		"VisualEditor": {
			"PluginModules": [
				"ext.templateDataGenerator.editPage"
			]
		},
		"CommunityConfiguration": {
			"Validators": {
				"FeaturedTemplates": {
					"class": "MediaWiki\\Extension\\TemplateData\\Config\\FeaturedTemplatesSchemaValidator",
					"factory": "MediaWiki\\Extension\\TemplateData\\Config\\FeaturedTemplatesSchemaValidator::factory",
					"services": [
						"CommunityConfiguration.ValidatorFactory",
						"MainConfig"
					],
					"args": [
						"MediaWiki\\Extension\\TemplateData\\Schemas\\FeaturedTemplatesSchema"
					]
				}
			},
			"Providers": {
				"TemplateData-FeaturedTemplates": {
					"store": {
						"type": "wikipage",
						"args": [
							"MediaWiki:FeaturedTemplates.json"
						]
					},
					"validator": {
						"type": "FeaturedTemplates"
					},
					"type": "mw-config"
				}
			}
		}
	},
	"config": {
		"TemplateDataUseGUI": {
			"value": true
		},
		"TemplateDataEditorNamespaces": {
			"value": [
				10
			],
			"description": "The namespaces in which the template data editor appears when creating or editing a page."
		},
		"TemplateDataEnableDiscovery": {
			"value": true,
			"description": "Enable the template discovery and recall functionality."
		},
		"TemplateDataMaxFavorites": {
			"value": 50,
			"description": "The maximum number of favorite templates that can be stored."
		},
		"TemplateDataEnableCategoryBrowser": {
			"value": false,
			"description": "Enable the category browser for the template discovery widget."
		},
		"TemplateDataCategoryBrowserItem": {
			"value": null,
			"description": "Wikibase entity ID with which to look up the category browser's root category."
		},
		"TemplateDataEnableFeaturedTemplates": {
			"value": false,
			"description": "Enable the featured templates functionality."
		}
	},
	"DefaultUserOptions": {
		"templatedata-favorite-templates": "[]"
	},
	"manifest_version": 2
}
