Go to file
Jon Robson d4903b8e57 Remove TableOfContents mustache template and mark layout rules
Follow up to I3484a790ce8ebadf21054ac1d222d5632b2dc5a4

__Template__

The template is not particularly useful - it is only ever
used once in this context and features a static ID which means
it can never be reused. It is also tied to the #vector-toc-collapsed-checkbox
element. In current form it doesn't make sense to have this template.

Maybe in future, I could see an argument for a PinnableTableOfContents component
that wrapped the checkbox and nav element, and generalized the IDs but
currently there's no pressing need or value for that.

__Layouts__

The existing Pinned and Unpinned stylesheets are concerned with how the table
of contents is layed out holistically with regards to other components and
features enabled on the page. I think these should therefore be organized as such.
The way I reason with this, is these styles would be irrelevant in a component
library if the component was rendered in isolation.

Bug: T328719
Change-Id: I9ff0e0eeb35f215a8cae5950d08dc1277b662a71
2023-02-28 00:27:31 +00:00
.phan Upgrade to newer phan 2019-03-20 19:37:59 -07:00
.storybook Revert "Updates for core temp user autocreation feature" 2023-02-21 11:30:27 -06:00
dev-scripts [Storybook] Add Header component 2021-09-14 18:33:10 +00:00
i18n Localisation updates from https://translatewiki.net. 2023-02-27 08:30:18 +01:00
includes Remove TableOfContents mustache template and mark layout rules 2023-02-28 00:27:31 +00:00
resources Remove TableOfContents mustache template and mark layout rules 2023-02-28 00:27:31 +00:00
screenshots Add skin screenshot for the installer 2017-08-11 15:37:34 -04:00
skinStyles Split off mediawiki.notification styles for legacy Vector 2023-02-08 22:56:34 +01:00
stories Remove vector-menu-dropdown-noicon class 2023-01-10 23:48:05 +00:00
tests Only render TOC related HTML when TOC is available 2023-02-27 16:31:03 -06:00
.eslintignore a11y: create report in LOG_DIR or 'a11y/' 2022-05-05 11:46:13 -05:00
.eslintrc.json [eslint] Disable mediawiki/class-doc 2022-02-11 16:31:33 +00:00
.eslintrcEs6.json Table of contents: FIXME cleanup 2023-02-24 01:16:20 +00:00
.gitignore build: Updating dependencies 2022-05-20 11:41:53 +00:00
.gitreview Use track=1 instead of defaultbranch=master in .gitreview 2016-10-24 17:30:32 -07:00
.nvmrc Bump nvmrc to 16.16.0 to match Codex 2023-02-22 03:12:02 +00:00
.phpcs.xml build: Updating mediawiki/mediawiki-codesniffer to 33.0.0 2020-11-17 23:33:50 +01:00
.stylelintignore Setup jest unit tests and add basic test cases for AB.js and App.vue 2022-01-31 20:50:33 +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: Update 'svgo' to latest v2.8.0 & re-crush images 2022-02-28 00:00:05 +00:00
bundlesize.config.json Update naming convention for TOC 2023-02-23 16:30:19 +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 Allow composer/installers plugin 2022-07-18 19:24:19 -07: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 Limited width toggle 2022-11-01 16:29:43 +00:00
jest.setup.js Limited width toggle 2022-11-01 16:29:43 +00:00
jsdoc.json SectionObserver should be updated at certain points in MediaWiki lifecycle 2023-02-23 01:39:46 +00:00
package-lock.json Replace automated testing code with npm package 2023-02-08 01:05:22 +00:00
package.json Replace automated testing code with npm package 2023-02-08 01:05:22 +00:00
README.md End migration mode 2022-03-23 16:46:42 +00:00
skin.json Merge "Targets no longer needed" 2023-02-26 02:45:33 +00:00
tsconfig.json Setup jest unit tests and add basic test cases for AB.js and App.vue 2022-01-31 20:50:33 +00:00

Vector Skin

Installation

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

Configuration options

See skin.json.

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.