Go to file
Umherirrender ea4fd5d182 Create a FeatureManagerFactory
Some feature requirements needs access to the request user or title.
Currently the context is given in the ServiceWiring callback,
access to RequestContext::getMain() should be avoided during service
wiring (T218555).
Create a factory to hold the code from the service wiring and call the
factory with the request context from the skin to get a feature manager.

Bug: T359665
Change-Id: I57515ec02ed454620f729a109d0ace43b447b6ce
2024-03-08 20:28:31 +01:00
.phan Only show notification after CentralAuth autologin on Vector 2022 2023-08-30 08:53:53 -04:00
doc Adds config flag documentation 2024-02-22 14:50:29 -06:00
i18n Localisation updates from https://translatewiki.net. 2024-03-07 08:51:19 +01:00
includes Create a FeatureManagerFactory 2024-03-08 20:28:31 +01:00
resources Remove language notice 2024-02-29 17:04:16 -06:00
screenshots Add skin screenshot for the installer 2017-08-11 15:37:34 -04:00
skinStyles Merge "Reapply "mw.notify: Limit width of overlay to max-width-page-container"" 2024-01-12 22:08:13 +00:00
tests Create a FeatureManagerFactory 2024-03-08 20:28:31 +01:00
.eslintignore Avoid nullish coalescing operators 2023-11-06 11:10:44 -08:00
.eslintrc.json build: Use wikimedia/server for root folder eslint config 2023-09-04 18:13:32 +01:00
.gitignore Remove wmf-a11y dependency and tests 2023-08-17 12:38:55 -05:00
.gitreview Use track=1 instead of defaultbranch=master in .gitreview 2016-10-24 17:30:32 -07:00
.nvmrc .nvmrc: Update now we're using Node 18 2024-01-11 10:51:48 -05:00
.phpcs.xml build: Updating mediawiki/mediawiki-codesniffer to 33.0.0 2020-11-17 23:33:50 +01:00
.stylelintignore Remove Storybook and jsdoc and its dependencies 2023-04-04 21:27:45 +00:00
.stylelintrc.json build: Update stylelint-config-wikimedia to 0.13.0 2022-05-16 17:44:12 +01:00
.svgo.config.js build: Use wikimedia/server for root folder eslint config 2023-09-04 18:13:32 +01:00
bundlesize.config.json Replace use of codex-styles in beta feature with CodexModule ResourceLoader 2024-02-27 17:40:11 +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 dependencies 2024-02-13 20:08:29 +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
jest.config.js Client preferences supports toggle switches 2024-01-19 12:56:27 -08:00
jest.setup.js build: Use wikimedia/server for root folder eslint config 2023-09-04 18:13:32 +01:00
package-lock.json build: Updating npm dependencies 2024-03-06 02:36:34 +00:00
package.json build: Updating npm dependencies 2024-03-06 02:36:34 +00:00
README.md Adds config flag documentation 2024-02-22 14:50:29 -06:00
skin.json Create a FeatureManagerFactory 2024-03-08 20:28:31 +01:00
tsconfig.json Make the limited width and font size controls work for logged in users 2023-11-21 02:16:52 +00:00

Vector Skin

Installation

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

Configuration options

See skin.json.

Also see configuration.md

Development

Node version

It is recommended to use nvm to use the version of node defined in .nvmrc during local development. This ensures consistency amongst development environments.

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

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.