'AbstractContent' => __DIR__ . '/includes/content/AbstractContent.php',
'Action' => __DIR__ . '/includes/actions/Action.php',
'ActiveUsersPager' => __DIR__ . '/includes/specials/SpecialActiveusers.php',
+ 'ActivityUpdateJob' => __DIR__ . '/includes/jobqueue/jobs/ActivityUpdateJob.php',
'AjaxDispatcher' => __DIR__ . '/includes/AjaxDispatcher.php',
'AjaxResponse' => __DIR__ . '/includes/AjaxResponse.php',
'AllMessagesTablePager' => __DIR__ . '/includes/specials/SpecialAllMessages.php',
'ApiModuleManager' => __DIR__ . '/includes/api/ApiModuleManager.php',
'ApiMove' => __DIR__ . '/includes/api/ApiMove.php',
'ApiOpenSearch' => __DIR__ . '/includes/api/ApiOpenSearch.php',
+ 'ApiOpenSearchFormatJson' => __DIR__ . '/includes/api/ApiOpenSearch.php',
'ApiOptions' => __DIR__ . '/includes/api/ApiOptions.php',
'ApiPageSet' => __DIR__ . '/includes/api/ApiPageSet.php',
'ApiParamInfo' => __DIR__ . '/includes/api/ApiParamInfo.php',
'DeleteDefaultMessages' => __DIR__ . '/maintenance/deleteDefaultMessages.php',
'DeleteEqualMessages' => __DIR__ . '/maintenance/deleteEqualMessages.php',
'DeleteFileOp' => __DIR__ . '/includes/filebackend/FileOp.php',
- 'DeleteImageCache' => __DIR__ . '/maintenance/deleteImageMemcached.php',
'DeleteLogFormatter' => __DIR__ . '/includes/logging/DeleteLogFormatter.php',
'DeleteOldRevisions' => __DIR__ . '/maintenance/deleteOldRevisions.php',
'DeleteOrphanedRevisions' => __DIR__ . '/maintenance/deleteOrphanedRevisions.php',
'MWFunction' => __DIR__ . '/includes/utils/MWFunction.php',
'MWHookException' => __DIR__ . '/includes/Hooks.php',
'MWHttpRequest' => __DIR__ . '/includes/HttpFunctions.php',
- 'MWLogger' => __DIR__ . '/includes/debug/logger/Shims.php',
- 'MWLoggerFactory' => __DIR__ . '/includes/debug/logger/Shims.php',
- 'MWLoggerLegacyLogger' => __DIR__ . '/includes/debug/logger/Shims.php',
- 'MWLoggerLegacySpi' => __DIR__ . '/includes/debug/logger/Shims.php',
- 'MWLoggerMonologHandler' => __DIR__ . '/includes/debug/logger/monolog/Shims.php',
- 'MWLoggerMonologLegacyFormatter' => __DIR__ . '/includes/debug/logger/monolog/Shims.php',
- 'MWLoggerMonologProcessor' => __DIR__ . '/includes/debug/logger/monolog/Shims.php',
- 'MWLoggerMonologSpi' => __DIR__ . '/includes/debug/logger/monolog/Shims.php',
- 'MWLoggerMonologSyslogHandler' => __DIR__ . '/includes/debug/logger/monolog/Shims.php',
- 'MWLoggerNullSpi' => __DIR__ . '/includes/debug/logger/Shims.php',
- 'MWLoggerSpi' => __DIR__ . '/includes/debug/logger/Shims.php',
'MWMemcached' => __DIR__ . '/includes/objectcache/MemcachedClient.php',
'MWMessagePack' => __DIR__ . '/includes/libs/MWMessagePack.php',
'MWNamespace' => __DIR__ . '/includes/MWNamespace.php',
'ObjectFileCache' => __DIR__ . '/includes/cache/ObjectFileCache.php',
'OldChangesList' => __DIR__ . '/includes/changes/OldChangesList.php',
'OldLocalFile' => __DIR__ . '/includes/filerepo/file/OldLocalFile.php',
+ 'OOUIHTMLForm' => __DIR__ . '/includes/htmlform/OOUIHTMLForm.php',
'OracleInstaller' => __DIR__ . '/includes/installer/OracleInstaller.php',
'OracleUpdater' => __DIR__ . '/includes/installer/OracleUpdater.php',
'OrphanStats' => __DIR__ . '/maintenance/storage/orphanStats.php',
'ResourceLoaderFilePath' => __DIR__ . '/includes/resourceloader/ResourceLoaderFilePath.php',
'ResourceLoaderImage' => __DIR__ . '/includes/resourceloader/ResourceLoaderImage.php',
'ResourceLoaderImageModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderImageModule.php',
+ 'ResourceLoaderJqueryMsgDataModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderJqueryMsgDataModule.php',
'ResourceLoaderLanguageDataModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderLanguageDataModule.php',
'ResourceLoaderLanguageNamesModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderLanguageNamesModule.php',
'ResourceLoaderModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderModule.php',
+ 'ResourceLoaderRawFileModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderRawFileModule.php',
'ResourceLoaderSiteModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderSiteModule.php',
'ResourceLoaderSkinModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderSkinModule.php',
'ResourceLoaderSpecialCharacterDataModule' => __DIR__ . '/includes/resourceloader/ResourceLoaderSpecialCharacterDataModule.php',
// Scripts for the dynamic language specific data, like grammar forms.
'mediawiki.language.data' => array( 'class' => 'ResourceLoaderLanguageDataModule' ),
+ // Dynamic data for mediawiki.jqueryMsg, such as allowed tags
+ 'mediawiki.jqueryMsg.data' => array( 'class' => 'ResourceLoaderJqueryMsgDataModule' ),
+
/* MediaWiki base skinning modules */
/**
'styles' => 'resources/src/jquery/jquery.confirmable.css',
'dependencies' => 'mediawiki.jqueryMsg',
),
- // Use mediawiki.cookie in new code, rather than jquery.cookie.
'jquery.cookie' => array(
'scripts' => 'resources/lib/jquery/jquery.cookie.js',
'targets' => array( 'desktop', 'mobile' ),
/* MediaWiki */
'mediawiki' => array(
+ 'class' => 'ResourceLoaderRawFileModule',
// Keep maintenance/jsduck/eg-iframe.html in sync
'scripts' => array(
+ 'resources/lib/phpjs-sha1/sha1.js',
'resources/src/mediawiki/mediawiki.js',
'resources/src/mediawiki/mediawiki.errorLogger.js',
'resources/src/mediawiki/mediawiki.startUp.js',
),
'debugScripts' => 'resources/src/mediawiki/mediawiki.log.js',
- 'raw' => true,
'targets' => array( 'desktop', 'mobile' ),
),
'mediawiki.apihelp' => array(
'colon-separator',
),
),
+ 'mediawiki.htmlform.ooui' => array(
+ 'scripts' => 'resources/src/mediawiki/mediawiki.htmlform.ooui.js',
+ 'dependencies' => 'oojs-ui',
+ ),
+ 'mediawiki.htmlform.ooui.styles' => array(
+ 'styles' => 'resources/src/mediawiki/mediawiki.htmlform.ooui.css',
+ ),
'mediawiki.icon' => array(
'styles' => 'resources/src/mediawiki/mediawiki.icon.less',
),
),
'mediawiki.toc' => array(
'scripts' => 'resources/src/mediawiki/mediawiki.toc.js',
- 'dependencies' => 'jquery.cookie',
+ 'dependencies' => 'mediawiki.cookie',
'messages' => array( 'showtoc', 'hidetoc' ),
'targets' => array( 'desktop', 'mobile' ),
),
'mediawiki.user' => array(
'scripts' => 'resources/src/mediawiki/mediawiki.user.js',
'dependencies' => array(
- 'jquery.cookie',
+ 'mediawiki.cookie',
'mediawiki.api',
'user.options',
'user.tokens',
'mediawiki.jqueryMsg' => array(
'scripts' => 'resources/src/mediawiki/mediawiki.jqueryMsg.js',
'dependencies' => array(
+ 'mediawiki.jqueryMsg.data',
'mediawiki.util',
'mediawiki.language',
'dom-level2-shim',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.indicators' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-alerts.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-content' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-content.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-editing-advanced' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-editing-advanced.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-editing-core' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-editing-core.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-editing-list' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-editing-list.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-editing-styling' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-editing-styling.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-interactions' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-interactions.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-layout' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-layout.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-location' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-location.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-media' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-media.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-moderation' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-moderation.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-movement' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-movement.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-user' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-user.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
'oojs-ui.styles.icons-wikimedia' => array(
'class' => 'ResourceLoaderImageModule',
'localBasePath' => "$IP/resources/lib/oojs-ui/themes/mediawiki",
'data' => 'icons-wikimedia.json',
'selectorWithoutVariant' => '.oo-ui-icon-{name}, .mw-ui-icon-{name}:after, .mw-ui-icon-{name}:before',
- 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before',
+ 'selectorWithVariant' => '.oo-ui-image-{variant} .oo-ui-icon-{name}, .oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:after, .mw-ui-icon-{name}-{variant}:before, .mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before, .mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before',
),
);