Go to file
jdlrobson 89fee04f0b Drop unsupported skin CSS classes
Drop support for vectorMenu, vectorTabs and
vectorMenuCheckbox, body, menu selectors in preference
for standard selectors.

This change will impact a large amount of user scripts/styles but should
not impact any gadgets.

These classes were kept around for user scripts and styles however are not
needed internally. As we transition to a more maintainable skin menu
system, it is time to lose these selectors even though this will cause
disruption.

Vector now will use the mw-portlet class rather than the vector-menu
class in its own CSS styling, however it keeps the other classes to
allow differentiation of the different types of menu.

Changes to test: Previously the tests assumed all portlets were empty
when checking the classes. This is very rare, so its better to check
the classes of non-empty portlets, so several tests are updated
accordingly to drop the emptyPortlet class.

Bug: T262092
Change-Id: I1824335eb47d613c2a4804ec1f1106c0f4c16101
2020-10-01 19:50:24 +00:00
.phan Upgrade to newer phan 2019-03-20 19:37:59 -07:00
.storybook [Storybook] Fix PNG/SVG asset resolution. 2020-09-25 12:52:05 +02:00
dev-scripts [Storybook] Fix PNG/SVG asset resolution. 2020-09-25 12:52:05 +02:00
i18n Localisation updates from https://translatewiki.net. 2020-09-30 08:46:15 +02:00
includes Drop unsupported skin CSS classes 2020-10-01 19:50:24 +00:00
resources Drop unsupported skin CSS classes 2020-10-01 19:50:24 +00:00
screenshots Add skin screenshot for the installer 2017-08-11 15:37:34 -04:00
skinStyles Replace deprecated @colorFieldBorder variable and use others 2020-04-28 01:42:09 +00:00
stories Drop unsupported skin CSS classes 2020-10-01 19:50:24 +00:00
tests Drop unsupported skin CSS classes 2020-10-01 19:50:24 +00:00
.eslintignore Replace Grunt tasks with npm scripts in package.json 2020-02-27 16:32:12 +01:00
.eslintrc.json [dev] [JS] Move JavaScript to package modules 2020-04-10 09:39:25 -06:00
.gitignore [Storybook] Fix PNG/SVG asset resolution. 2020-09-25 12:52:05 +02:00
.gitreview Use track=1 instead of defaultbranch=master in .gitreview 2016-10-24 17:30:32 -07:00
.nvmrc [build] Add NVM configuration 2020-07-31 02:25:21 +00:00
.phpcs.xml Add method scope visibility 2018-11-01 21:01:32 +01:00
.stylelintignore Replace Grunt tasks with npm scripts in package.json 2020-02-27 16:32:12 +01:00
.stylelintrc.json build: Bump devDependencies to latest 2018-02-26 10:29:23 -08:00
.svgo.yml build: Add 'svgo', SVG minifier script and unify SVGO rules 2020-03-07 19:47:58 -08:00
bundlesize.config.json Allow for expansion of styles with addition of table of contents code 2020-09-21 21:06:02 +00:00
CODE_OF_CONDUCT.md build: Updating mediawiki/mediawiki-codesniffer to 22.0.0 2018-09-04 01:45:34 +00:00
composer.json build: Updating npm dependencies 2020-06-12 05:51:50 +00:00
COPYING Use the plain-text GPL and fix 'license-name' to match SPDX conventions 2015-01-29 17:04:29 +01:00
Doxyfile docs: Generate documentation with Doxygen 2020-02-24 16:49:38 +00:00
jsdoc.json Adds loading indicator for new search module 2020-09-08 13:59:41 +00:00
package-lock.json build: Updating node-fetch to 2.6.1 2020-09-10 23:28:46 +00:00
package.json [Storybook] Fix PNG/SVG asset resolution. 2020-09-25 12:52:05 +02:00
README.md [build] Make the pre-commit hook optional 2020-08-03 18:23:42 +00:00
skin.json Merge "Vector should use opt-in policy for ResourceLoaderSkinModule features" 2020-09-21 09:33:16 +00:00
tsconfig.json [JavaScript] Validate types 2020-03-16 09:10:08 -06:00
variables.less Merge "Prevent Vector tabs from overlapping search loader" 2020-09-28 13:31:09 +00:00

Vector Skin

Installation

See https://www.mediawiki.org/wiki/Skin:Vector.

Configuration options

See skin.json.

Development

Coding conventions

We strive for compliance with MediaWiki conventions:

https://www.mediawiki.org/wiki/Manual:Coding_conventions

Additions and deviations from those conventions that are more tailored to this project are noted at:

https://www.mediawiki.org/wiki/Reading/Web/Coding_conventions

URL query parameters

Skin preferences

Vector defines skin-specific user preferences. These are exposed on Special:Preferences when the VectorShowSkinPreferences configuration is enabled. The user's preference state for skin preferences is used for skin previews and any other operation unless specified otherwise.

Version

Vector defines a "version" preference to enable users who prefer the December 2019 version of Vector to continue to do so without any visible changes. This version is called "Legacy Vector." The related preference defaults are configurable via the configurations prefixed with VectorDefaultSkinVersion. Version preference and configuration may be overridden by the useskinversion URL query parameter.

Pre-commit tests

A pre-commit hook is installed when executing npm install. By default, it runs npm test which is useful for automatically validating everything that can be in a reasonable amount of time. If you wish to defer these tests to be executed by continuous integration only, set the PRE_COMMIT environment variable to 0:

$ export PRE_COMMIT=0
$ git commit

Or more succinctly:

$ PRE_COMMIT=0 git commit

Skipping the pre-commit tests has no impact on Gerrit change identifier hooks.

Hooks

See hooks.txt.