Compare commits

...

2632 Commits

Author SHA1 Message Date
jonny 6e20463fbb Update 'skin.json' 2022-10-10 21:12:48 +00:00
jonny 16d56dc933 change name of skin in metadata 2022-10-10 21:04:38 +00:00
Translation updater bot 5c19c19eb6 Localisation updates from https://translatewiki.net.
Change-Id: I656ca80609e386cd4006e39a8773aaff2ced12c9
2022-10-10 10:23:55 +02:00
jenkins-bot 74bdd375bb Merge "link.prepend is not a function in older browsers" 2022-10-09 09:33:52 +00:00
Jon Robson 8a54c0841b link.prepend is not a function in older browsers
Seen in logstash for Chrome 50.
Icons are not essentially, so gracefully degrade in these browsers
to items without icons.

Change-Id: I083c87c9bf5f256c8bcd2893e251571b97440ce1
2022-10-07 00:59:00 +00:00
Roan Kattouw 5693594bd1 Remove $wgVectorSearchHost, replace with $wgVectorSearchApiUrl
This allows the URL to the other wiki's rest.php to be configured
exactly, rather than assuming that it has the same wgScriptPath as the
current wiki. This is necessary to make this feature work on PatchDemo,
where wgScriptPath looks like '/123abc456/w'.

$wgVectorSearchHost is removed, since nothing uses it except PatchDemo
(where it's broken) and development setups.

Bug: T319494
Change-Id: Ife042f4f683d366a31a642723746d4aa80774c03
2022-10-07 00:57:58 +00:00
Jon Robson 508d5fc548 phan: Suppress error on Vector master blocking commits
Change-Id: Ib864f4c901db2b589a0f71228154487f9128b0bc
2022-10-07 00:40:50 +00:00
jenkins-bot 21a63b7c42 Merge "Restrict margin between arrow and icon to feature flag" 2022-10-05 21:11:50 +00:00
Jon Robson e62062631d Restrict margin between arrow and icon to feature flag
Follow up to 1bb0a0e8f

Bug: T319070
Change-Id: I850088abdf815c0c65a05aa2a7dfd9445aa688f6
2022-10-05 19:18:55 +00:00
jenkins-bot 9af2908bae Merge "Regression: Restore tab styles to legacy icons" 2022-10-05 19:07:27 +00:00
Jon Robson a36ec92a27 Regression: Restore tab styles to legacy icons
Follow up to d0775a2

Change-Id: I5c3e4ac2ca0ed457863b4e4dd3cc9ccc3dca86d0
2022-10-05 18:44:19 +00:00
jenkins-bot ca3fe05c5e Merge "Move horizontal padding from .mw-body to .mw-page-container, improve .mw-page-container styles" 2022-10-05 17:06:12 +00:00
bwang 7c172531c2 Move horizontal padding from .mw-body to .mw-page-container, improve .mw-page-container styles
Visual changes:
- Footer text and border is aligned with header icons
- Main page content has no padding, slightly wider on certain pages/viewports

Bug: T317573
Change-Id: Id0c4343b8bc4c16006c0b9abd914213ca2f307ca
2022-10-05 10:30:12 -05:00
Translation updater bot 29c97d0134 Localisation updates from https://translatewiki.net.
Change-Id: I102744492e637e00d74d94a569a20efa41ce4d6a
2022-10-05 08:26:31 +02:00
jenkins-bot 142aa4abcd Merge "Visual enhancements next: Fix alignments of icons" 2022-10-05 02:24:16 +00:00
Jdlrobson 1bb0a0e8fa Visual enhancements next: Fix alignments of icons
This reverts commit d1ef0d3aaf.

Reason for revert: Applying again without the impact on styles in
master.

Bug: T319070
Change-Id: I751168e1dc0f6235fd5ba881dc884941edbf4b77
2022-10-05 01:33:09 +00:00
jenkins-bot f8af368121 Merge "search: Reduce skins.vector.search module size" 2022-10-04 23:35:08 +00:00
jenkins-bot e8d5796544 Merge "search: Add some tests for instrumentation.js" 2022-10-04 23:35:06 +00:00
bwang d0775a2af9 Technical: Cached HTML cleanup
Change-Id: I6638a816fba3002289236f50d3d0e976f478affe
2022-10-04 18:23:57 +00:00
jenkins-bot daaa5667a4 Merge "Remove $isDropdownItem param from SkinVector::getCreateAccountHTML" 2022-10-04 17:19:54 +00:00
Translation updater bot 9d218b1e1c Localisation updates from https://translatewiki.net.
Change-Id: I12bdb7ed82cfb124592c82f168732d341ea96191
2022-10-04 08:31:42 +02:00
jenkins-bot fa1f971df5 Merge "Adjust watchstar animation" 2022-10-04 03:27:34 +00:00
Jdlrobson d1ef0d3aaf Revert "Visual enhancements next: Fix alignments of icons"
This reverts commit 2a2496f818.

Reason for revert: CSS rules meant for the new feature flag
were leaking into the non-feature flagged version of Vector which
was not intentional. I'll repost this change shortly.

Bug: T319070
Change-Id: I05504ee6f86c99d4b4cf686066f852ecbe98ee87
2022-10-04 00:17:21 +00:00
Jon Robson cc9fc193f6 Adjust watchstar animation
Rather than infinitely spinning, spin it once 72deg to the right
hand side just how we do on mobile.

Bug: T317371
Change-Id: I1ed89e4ad2b54444f920d850bb4a17e9caa92dc5
2022-10-03 23:53:31 +00:00
Jon Robson 2a2496f818 Visual enhancements next: Fix alignments of icons
* Add 8px margins between mw-list-item in header
* Fixes vertical alignment on watchstar
* Fixes alignment of Echo icons

There should be no visual regressions (on master with defaults)
with this change.

Bug: T319070
Change-Id: I410c051da2129d6de10bc762e1b484cf30b6dab3
2022-10-03 20:59:08 +00:00
Jan Drewniak 98068d9598 Restore navigation landmarks in page toolbar
Adds landmarks to the article toolbar
- Namespace navigation
- View navigation
- More options navigation

Removes the "tools" landmark and associated
aria-label (and translation message).

Makes the #left-navigation and #right-navigation
flexbox to ensure the new <nav> elements, along with
gadgets, align on one line. Moves the styles for
these elements from screen.less to ArticleToolbar.less.

Bug: T317440
Change-Id: Iceff337b0e250c1f368dbaea6cc41a977d8ee868
2022-10-03 10:39:39 -04:00
Translation updater bot 03e793aeec Localisation updates from https://translatewiki.net.
Change-Id: Id12e0082daa2527c42832116e8e41cec86ad7045
2022-10-03 09:48:34 +02:00
Jon Robson db08697b17 Prepare for icon touch area change
Should result in no visual changes with default Vector config (e.g.
Pixel)

Bug: T314323
Change-Id: Id1d72fdede3aabab630f9318516ef0f92b12e23b
2022-09-30 16:35:17 -07:00
bwang 76f73decca Fix page toolbar border
VISUAL CHANGES:
- Minor tweaks to border color

Bug: T318952
Change-Id: I887e9dc922828a64afe010c2c13912711fcfbaa1
2022-09-30 22:25:59 +00:00
Jon Robson 4b17edadd7 Fixes to addPortletLink hook handler
* Ensure addPortletLink hook is only run once
* Mark more menu as not supporting icons so icons are not added

Bug: T317491
Bug: T318495
Change-Id: I99450a5b0410e88cc7cdb2753b9b4256e3fe41db
2022-09-30 20:37:01 +00:00
Jon Robson 785926d8ba Technical: Generalize icon flushing
This code is not resilient to changes in the mw-ui-icon definition
In preparation for changing touch areas we need an easy way to
flush these correctly based on feature flag.

No expected visual changes.

Bug: T314323
Change-Id: Ia10a7c696c690887a37851684215e515474fbd90
2022-09-30 20:12:14 +00:00
Nicholas Ray 849e63b798 Remove $isDropdownItem param from SkinVector::getCreateAccountHTML
The SkinVector::getCreateAccountHTML method only had one caller which always
passed `true` for the $isDropdown argument. Therefore, we can remove this param
and always assume that it is a dropdown item.

Bug: T317789
Change-Id: I19ceecbac152d1399ab323ab14e07db9dc82c244
2022-09-30 14:03:02 -06:00
Lucas Werkmeister 86c9693693 search: Reduce skins.vector.search module size
Change I765d3bbf89 pushes the module over the configured maximum allowed
size (3 KiB, see bundlesize.config.json); shave off some bytes elsewhere
to bring it below the limit again. IMHO all of these changes should be
acceptable:

* arrow functions are already used elsewhere in this module;
* using the mw.config.get() fallback argument is normal (it slightly
  changes behavior, but I don’t think explicitly setting the search
  client or URL generator to a falsy value and expecting to get the
  default behavior should be considered supported);
* not quoting [name="search"] matches [name=title] immediately above;
* using forEach() with a function reference is still readable (initApp()
  is now called with extra arguments, but that doesn’t matter).

Change-Id: I45dda26cb59279d91804b0c2bbf12174fa78ee12
2022-09-30 19:05:03 +02:00
Lucas Werkmeister 0150a0cb26 search: Add some tests for instrumentation.js
Change I45dda26cb5 removes some code, and in the process reduces the
branch coverage of the skins.vector.search module below the threshold of
25% that CI requires; add some tests for instrumentation.js to bring the
branch coverage up again.

Change-Id: I5d7ae019b3219b410c658583a6d72cf56d0cc1c5
2022-09-30 19:05:03 +02:00
Translation updater bot 21573d8288 Localisation updates from https://translatewiki.net.
Change-Id: Ibe07c319ecc139faccd90a7657fb91f193016dec
2022-09-30 08:57:15 +02:00
jenkins-bot a9a8663763 Merge "[Quick Fix] Fix Vector 2022 should display a "log in" link on private wikis" 2022-09-30 01:36:14 +00:00
jenkins-bot ba7fda1a69 Merge "Update name of body class to avoid confusion" 2022-09-29 14:58:38 +00:00
Translation updater bot a25f8d9c78 Localisation updates from https://translatewiki.net.
Change-Id: Ie4450a8b92bca345906f87ec59dc2d8f7a1bf146
2022-09-29 08:29:47 +02:00
jenkins-bot da53130bc8 Merge "[Visual enhancements next] Make the Echo buttons functional" 2022-09-28 23:49:25 +00:00
Jon Robson 44ee12c717 [Visual enhancements next] Make the Echo buttons functional
This completes the changes to Echo inside the
vectorvisualenhancementnext=1 feature flag

Bug: T257143
Change-Id: I8f3904815c90ef1a10a2342c5c70363c8b9e1e47
2022-09-28 17:06:20 -05:00
bwang e7944de81c Add Article Tools feature flag
Bug: T306609
Change-Id: Ia40af4e48c006aeceebd3879ff0aaecbe1b200d4
2022-09-28 15:41:30 -05:00
Jon Robson 6b7bc78bae Update name of body class to avoid confusion
The class vector-feature-table-of-contents-disabled is confusing as
it shows on pages with table of contents. What it actually means
is the A/B test is disabled. This change gives it a more meaningful name.

Use the class name vector-feature-table-of-contents-legacy-toc-enabled
to describe it better.

Bug: T310527
Change-Id: I17e7e6f7f553b8c06b118b5419c98c78ef26ad60
2022-09-28 12:26:38 -07:00
jenkins-bot 8cd41a8c64 Merge "[Visual enhancements next] Restores the badge styling to Echo" 2022-09-28 16:07:36 +00:00
Translation updater bot 3d68e00e12 Localisation updates from https://translatewiki.net.
Change-Id: I0286f481e5fe639bdf4dcf81bbdd18a0ea0bbce4
2022-09-28 08:25:11 +02:00
jenkins-bot 71bc90f225 Merge "Restore unconditional rendering of siteSub with styling modifications" 2022-09-28 03:38:13 +00:00
Jon Robson d8f242c046 [Visual enhancements next] Restores the badge styling to Echo
Currently clicking on icons will result in the icon changing
style. This is fixed in the follow up patch
I4a0637fc19cf07d545b75fa55e15010b74fc474f

Bug: T257143
Change-Id: Ief51ac0bcab20fc87edf747b5347a5ef9dfdf36f
2022-09-27 23:11:45 +00:00
Jon Robson 330dc5f705 Restore unconditional rendering of siteSub with styling modifications
The margin is moved to non-empty elements to avoid extra whitespace
when it is empty

Bug: T315639
Change-Id: I22aa7dbbacc5bc4ac87cffa13113ced9c9400e0b
2022-09-27 15:10:26 -07:00
Translation updater bot 0fb0a187bf Localisation updates from https://translatewiki.net.
Change-Id: Ic36204dd653ec3533665cd7c1b80ce52f0c75d28
2022-09-27 08:33:57 +02:00
jenkins-bot ecba35aeca Merge "Remove VectorLanguage A/B test code (WgVectorLanguageInHeaderTreatmentABTest)" 2022-09-26 23:01:34 +00:00
Nicholas Ray 3613a369eb [Quick Fix] Fix Vector 2022 should display a "log in" link on private wikis
This adds a bit of tech debt and should only be merged if we're looking for a
quick fix of T317789. It overrides the `.emptyPortlet` class that is currently
hiding the user menu on OfficeWiki et. al. to show the user menu  instead. It
also hides the learn more link since the presence of the `emptyPortlet` class
suggests that we do not have anon editor links in the menu.

Bug: T317789
Change-Id: I3deaf6b4896e9ec3a143c5909092caffc600da56
2022-09-26 15:54:29 -06:00
jenkins-bot 0387f14d08 Merge "Modify Vector 2022 skip-links" 2022-09-26 19:07:07 +00:00
jenkins-bot 61b9285c96 Merge "Default alert to on" 2022-09-26 18:36:02 +00:00
Jon Robson 048d25eb93 Default alert to on
This is the case for all production wikis, so let's mimic production

Change-Id: I749675b759d43375bf7b4cc6a2d18e640ebd1a6f
2022-09-26 10:57:22 -07:00
Jan Drewniak 5a951e2159 Modify Vector 2022 skip-links
- Changes the "skip to content" link to point to "#bodyContent"
  instead of "#content".
- Adds a `aria-labelledby` attribute to #bodyContent.
- Changes the table of contents "back to top" link to
  point to "#" instead of "#top-page".
- Removes "#top" link as it appeared unused.
- Updates Jest snapshots.

Bug: T312818
Change-Id: I86443066d45c818d6f137d70ebe36798eba66f13
2022-09-26 17:34:23 +00:00
Translation updater bot c3228c38aa Localisation updates from https://translatewiki.net.
Change-Id: Ie6dc75fbf46be949db7a90e9960f1ae14664e84f
2022-09-26 08:18:51 +02:00
jenkins-bot 5336638945 Merge "Echo: Move skinStyles from Echo extension to Vector" 2022-09-23 18:45:29 +00:00
Jon Robson b452a85fe8 Remove VectorLanguage A/B test code (WgVectorLanguageInHeaderTreatmentABTest)
The removal here is actually relatively straightforward.
References inside OverridableConfigRequirementTest are kept as
the A/B test capability remains after this removal and the tests
here do not relate to the code removed, just examples of how it
can be used.

Bug: T302027
Change-Id: I2dd92adaff1221d8213723e9ee60aa02787d4cc7
2022-09-23 18:18:15 +00:00
Jon Robson 452d59c7ef Echo: Move skinStyles from Echo extension to Vector
Bug: T257143
Change-Id: If52986fe56b65479adabe8233b0fc6df164b5376
2022-09-23 18:13:19 +00:00
Volker E 4df2b12e31 mediawiki.skin.variables: Add `border-style` and `border-width` vars
Already covered in mediawiki.skin.defaults.less.

Change-Id: If57df6cbbbab29ed9775d8d6676bd94a3b4de549
2022-09-23 17:58:42 +00:00
Translation updater bot 77c7608f0d Localisation updates from https://translatewiki.net.
Change-Id: I2796ba1418c04a306636ac0ef6de164140bd8575
2022-09-23 08:32:29 +02:00
Translation updater bot 9b3f0634c2 Localisation updates from https://translatewiki.net.
Change-Id: Id583eed83245553f8efa0e969099f688ec400a4b
2022-09-22 08:50:50 +02:00
bwang 4a115be7a8 Follow-up: remove redundant code in TableOfContents.js
Bug: T316032
Change-Id: Idb46b713c9df9fd1dd70a9955aa222f8b84ac813
2022-09-21 16:44:20 +00:00
jenkins-bot 669174790a Merge "Style active top level section differently than ordinary active TOC sections" 2022-09-21 15:00:07 +00:00
Translation updater bot 895b049e3c Localisation updates from https://translatewiki.net.
Change-Id: I15589e09aad99a3563bc1b9c14e20b8dca4d9d79
2022-09-21 08:31:52 +02:00
bwang 600dd1496a Style active top level section differently than ordinary active TOC sections
Bug: T316032
Change-Id: I662a03f7f7b1e1fb65c365b3db6096cae75fdeb2
2022-09-20 16:57:53 -05:00
Jan Drewniak 06c243da35 Modify the sticky header offset styles
- Prevents the ToC in the sidebar from jumping down when the sticky
  header becomes visible
- Removes the `.sticky-header-element` class from the ToC since that
  only modifies the elements position when the sticky header becomes
  visible (whereas in this case, it should be modified when the sticky
  header is enabled, before it's visible).

Bug: T314330
Change-Id: Ic6f50b8dc4f1507d875825d23eb44c24a998eaf7
2022-09-20 10:34:09 -04:00
jenkins-bot 1352035534 Merge "Icons: Globally set icon colors to `@opacity-icon-base`" 2022-09-20 00:35:58 +00:00
jenkins-bot b590555126 Merge "Add Jest tests for TOC before/after edit" 2022-09-19 23:20:34 +00:00
jenkins-bot 3e5c89df2b Merge "Table of contents: Hide accessible label using color transparent" 2022-09-19 22:51:49 +00:00
jenkins-bot 635ae993ff Merge "Follow-up: Apply min-width to collapsed TOC" 2022-09-19 22:41:23 +00:00
Nicholas Ray 8295148ae2 Add Jest tests for TOC before/after edit
* Also increase code coverage threshold

Bug: T316571
Change-Id: I6eb703bd0d23ff9d038c989562d07ec01cb7b1c8
2022-09-19 16:40:38 -06:00
jenkins-bot e9b79ee39f Merge "Fix border when title is hidden and when toolbar is empty" 2022-09-19 22:20:31 +00:00
bwang c4ec68b13c Fix border when title is hidden and when toolbar is empty
Bug: T317930
Change-Id: Iba89a2e642a8377c3603d099fb1157fc2df465d0
2022-09-19 21:37:27 +00:00
jenkins-bot 8f097163c2 Merge "[RTL, TOC] The arrow before collapsible sections in sidebar is clipped" 2022-09-19 20:11:13 +00:00
Jon Robson 5aadd9f578 Table of contents: Hide accessible label using color transparent
This is showing up in non-screen readers on Bengali wiki

Bug: T314652
Change-Id: I30ec573ae3de4811690183007282ef5f30c228b3
2022-09-19 12:56:19 -07:00
Moh'd Khier Abualruz 5a32955311 [RTL, TOC] The arrow before collapsible sections in sidebar is clipped
The table of contents has since been reflected to
not use calc statement anymore and pre-calculate the value,
cssjanus flips this value properly so this rule can safely be removed.

Bug: T314652
Related-To: I75dd87536f70da55c9fa7e0e29ed6b4040d2ddf4
Change-Id: Ibb390589f449bc20c6f38f66c1e617fa3fa82aab
2022-09-19 19:52:38 +00:00
Jon Robson 83458dd8dd Icons: Globally set icon colors to `@opacity-icon-base`
Also use other icon opacity variables where applicable.

Bug: T317800
Depends-On: If2f99124b01ce99b5131fdb960c60952075f6343
Change-Id: Ib8b3d11bd1bd6f902ff846eeb2a8f9cf3c7077b2
2022-09-19 19:28:19 +00:00
jenkins-bot 95dbf57db5 Merge "Remove unreachable code in tableOfContents.js" 2022-09-19 16:44:26 +00:00
jenkins-bot 00a2ff617a Merge "mediawiki.skin.variables: Add Opacities to skin.defaults variables" 2022-09-19 15:09:41 +00:00
Translation updater bot d900cf2662 Localisation updates from https://translatewiki.net.
Change-Id: I2942f31a770114caa2d25a8250e80058d5fc7118
2022-09-19 08:28:00 +02:00
Volker E ee24a19c8d mediawiki.skin.variables: Add Opacities to skin.defaults variables
Orienting on Codex Opacity tokens as defined in v10 of 2022-04-01 in
https://www.figma.com/file/h9pA2CCl2i0wtlTKNChaES/Opacities---Tokens?node-id=368%3A2139
Also adding legacy opacity icon tokens for use in all non-Codex
products.
Specifically the icon ones are already in use in Vector.

Bug: T317800
Change-Id: Ib699ccf0342030f521ad876d70974b8818f877cb
2022-09-16 22:37:23 -07:00
jenkins-bot 5e96b277a7 Merge "Follow-up: Clean up sticky header and collapsed TOC styles" 2022-09-17 00:11:40 +00:00
jenkins-bot e00603010b Merge "Sidebar: Collapses at lower resolutions, expands when resized" 2022-09-16 22:29:45 +00:00
bwang 88d4aef088 Follow-up: Clean up sticky header and collapsed TOC styles
Bug: T316056
Change-Id: I4c803bfd820aeb7270afa65cf8412415b437ff42
2022-09-16 14:25:02 -05:00
Func c6bf88520e ToC: Handle anchors with % in plaintext
TODO: Remove the fallback to {{anchor}} when all old parser cache expired.

Bug: T315222
Change-Id: I1da089cfef83131cda26859e3346cd2d840b3839
2022-09-16 11:24:27 +08:00
jenkins-bot aad1c4c836 Merge "Revert "Set top value for ToC when sticky header is enabled."" 2022-09-15 22:40:58 +00:00
bwang 0d7a8d751e Follow-up: Apply min-width to collapsed TOC
Bug: T316056
Change-Id: Ib9460cd5f5fa6d37a4aaf3c0dd583d9de46851ee
2022-09-15 20:27:24 +00:00
Bernard Wang 3bdcb4ae2a Revert "Set top value for ToC when sticky header is enabled."
This reverts commit 968787d692.

Reason for revert: Causes TOC visual regressions

Change-Id: I0bfe8ee1d1bc9d5a71d3abadb6636d8cc5d07668
2022-09-15 19:28:41 +00:00
bwang fd783b0499 Update collapsed TOC menu width
Visual changes:
- Collapsed TOC menu width depends on TOC content, with a max width of 51em or 75vw
- Collapsed TOC menu in sticky header no longer has a horizontal scrollbar

Bug: T316056
Bug: T316609
Change-Id: I1da9c16366b55c77ef13bac899ed8ecb2d77fdb9
2022-09-15 17:37:28 +00:00
Jon Robson aa8d628e13 Sidebar: Collapses at lower resolutions, expands when resized
On resize, or when booted in a small window the sidebar will collapse
and remain collapsed for subsequent page views

Bug: T316191
Change-Id: I6625fc3b3f1015d74b484a2a3643def13467ddf5
2022-09-15 10:27:12 -07:00
jenkins-bot fbb283a315 Merge "Set top value for ToC when sticky header is enabled." 2022-09-15 16:57:39 +00:00
bwang e28e197f1f Prevent language button in sticky header from word breaking
Bug: T316609
Change-Id: Ie4d9efad0850dce52a6e383574b14d986a824d4a
2022-09-15 16:28:26 +00:00
Jan Drewniak 968787d692 Set top value for ToC when sticky header is enabled.
Prevents the ToC from jumping down when the sticky header
becomes visible.

Bug: T314330
Change-Id: I11450d9062445d357859c6e48972f2ba37e597c6
2022-09-15 11:04:23 -04:00
Translation updater bot 6fd247640b Localisation updates from https://translatewiki.net.
Change-Id: I305d5955b8ffd92477db07b7b34327563b71e738
2022-09-15 09:57:19 +02:00
Jon Robson 7ebcf3ccff Limit upgrading of Echo icons to Visual enhancements feature flag
Currently we appear to be applying our icon/button enhancements to
notifications menu if the icon field is present.

These fields are not provided yet, but soon will be, so limiting
to the feature flag.

Bug: T257143
Change-Id: I2cf49a24f2db632e3ca23f749064929678bc8e19
2022-09-14 23:00:34 +00:00
Translation updater bot 2d7d60a14a Localisation updates from https://translatewiki.net.
Change-Id: I90a5eec3de6f287859a87aa9cbb5b81582c2cd29
2022-09-14 10:33:21 +02:00
Jon Robson f9a3d795ef Storybook: Update Legacy/codex comparison table
Upgrade Codex to the latest version and add the new icon
only buttons to our side by side table

This is needed to help bring these inline.

Bug: T314323
Change-Id: I7f59968cf5be6242e8002b11ca030c9bd4dd882d
2022-09-13 23:01:28 +00:00
jenkins-bot e0042bceca Merge "Remove unneeded expansion styles from search box code" 2022-09-13 19:30:18 +00:00
Nicholas Ray f79e97cf6b Remove unreachable code in tableOfContents.js
AFAICT the `setInnerHTML` param that was part of the reloadPartialHTML
method was always true. Thus, much of the code contained in this method
can be removed and the `setInnerHTML` param can also be removed.

Bug: T316571
Change-Id: I82e99f902eadba8a9df2166c4f89ba1f1d747a47
2022-09-12 17:45:24 -06:00
bwang 6b7197cf95 Followup: Removed code for cached HTML from T313060
Bug: T313060
Depends-on: Ia263c606dce5a6060b6b29fbaedc49cef3e17a5c
Change-Id: I0626f5c8d92836ecac961bbe213ffd8b0f0e2df5
2022-09-12 21:47:48 +00:00
jenkins-bot 5e02d2b7ea Merge "Minimize search icon" 2022-09-12 18:26:04 +00:00
jenkins-bot b5c46b8294 Merge "icons: Fix arrow stem to be perfectly 45 degrees" 2022-09-12 16:59:49 +00:00
Thiemo Kreuz 80a935cc9a Minimize search icon
Change-Id: I3f6084fc71930378ecb98180f4bd3d07478e9b4e
2022-09-12 18:53:31 +02:00
jenkins-bot 8626e14ec1 Merge "Don't print table of contents on page with no table of contents" 2022-09-12 15:50:22 +00:00
Translation updater bot f33cbf03ca Localisation updates from https://translatewiki.net.
Change-Id: Ib28dcff412c60712cfbae40570e636235d3df6ee
2022-09-12 09:39:01 +02:00
Volker E 2eeb9e45fc icons: Fix arrow stem to be perfectly 45 degrees
Following-up to further optimize icon SVG and provide arrow stem in
perfect 45 degrees angle.

Bug: T261391
Change-Id: I1fa7789182f0fffb7891205a9099884402d37b61
2022-09-11 23:24:29 -07:00
jenkins-bot 77877254da Merge "Revert "Sidebar: Collapses at lower resolutions"" 2022-09-10 00:34:13 +00:00
Jon Robson ccc8df0ef9 Don't print table of contents on page with no table of contents
e.g. Special:BlankPage

This was causing unexpected visual regressions on Pixel

Follow up to 9c6f6709c

Bug: T313060
Change-Id: If8111f95be53e4504ed49d4ea140f62ac98e8e1b
2022-09-09 17:08:40 -07:00
Jdlrobson 475c237a5e Revert "Sidebar: Collapses at lower resolutions"
This reverts commit 365d3902c9.

Reason for revert: Pixel is flagging the sidebar being closed
in cases where it shouldn't. Since I can't debug that I'm
reverting just to be cautious.

Change-Id: Ib88f61eb6a7fda8ce546a24c2d3dbbde836f2c40
2022-09-09 17:08:19 -07:00
jenkins-bot 2f25456534 Merge "Followup: clean up cached HTML code from T315595" 2022-09-09 22:32:55 +00:00
bwang d538835b5a Follow-up: Align sticky header with header and update collapsed TOC in page title padding
Visual changes:
- Sticky header padding will increase on desktop and desktop-wide viewports to match the header
- Padding on collapsed TOC button in page title is 2px wider on each side

Bug: T315261
Change-Id: I9d0df4f4d399fe120a4c1a5d2df610942cc70f02
2022-09-09 20:07:49 +00:00
jenkins-bot 9ac7a23234 Merge "Correct ContentHeader source order to match design" 2022-09-09 17:24:55 +00:00
Translation updater bot 353843dce6 Localisation updates from https://translatewiki.net.
Change-Id: If74efe4874eedd827adc8ce954f72e1f4c1a2325
2022-09-09 10:12:57 +02:00
bwang abad54d0ab Change article toolbar bottom border color
Bug: T311311
Change-Id: I1731510da0c956d0290508b9a2cef7558d3cde00
2022-09-08 23:54:13 +00:00
bwang fc9fe5e719 Add vector-toc-not-collapsed class serverside
Visual changes:
* No reflow on startup

Bug: T316964
Change-Id: I17f2699fec113d92b3f0f223c357654f52eb7eb3
2022-09-08 22:43:56 +00:00
jenkins-bot bcfc94090b Merge "Sidebar: Collapses at lower resolutions" 2022-09-08 20:50:17 +00:00
Jon Robson 97cf735de2 Icons: Watchstar and wikilove are upgraded
Can be tested by appending ?vectorvisualenhancementnext=1
to URL

Bug: T310838
Bug: T234990
Bug: T234550
Depends-On: I76d0d94c9006cc5f5680849ecdd1c382c16e34ba
Depends-On: Ib7c3021db014827b4b88cac855afc0b54a360f8c
Change-Id: Ie2ffa5c3ecf270c1bb1f315937023ae7ace5ed30
2022-09-08 19:43:35 +00:00
bwang 4c622fe8de Correct ContentHeader source order to match design
- Use flexbox instead of float

Visual changes:
- The title wraps differently when the title is very long

Bug: T313947
Change-Id: I2915e36286b21c8fd1a07247ada7754a08a0b574
2022-09-08 19:10:55 +00:00
Jon Robson 365d3902c9 Sidebar: Collapses at lower resolutions
On resize, or when booted in a small window the sidebar will collapse
and remain collapsed for subsequent page views

Bug: T316191
Change-Id: Ib4961975630871d6630cd747a78cc2ec4f1cdeeb
2022-09-08 08:22:20 -07:00
Translation updater bot e629775aff Localisation updates from https://translatewiki.net.
Change-Id: I02a964b9b170504f7591b8a0ed1cf90f9dcaab43
2022-09-08 10:02:42 +02:00
jenkins-bot e60716e63d Merge "Align language button" 2022-09-07 22:21:27 +00:00
jenkins-bot d4094ffa02 Merge "Align header icon buttons and main content" 2022-09-07 22:21:25 +00:00
Moh'd Khier Abualruz 3a10708b4e Deprecate PersonalUrls hook
* Updated usages to use SkinTemplateNavigation::Universal
in preparation for the hard deprecation and removal of the hook.

Bug: T310017
Change-Id: I133c7479da294c0b8c908ad8d34690297f08200b
2022-09-07 15:12:51 +00:00
bwang cdae8b1937 Align language button
- Add margin-right to language button
- Remove @margin-start-sidebar-content CSS variable as it's name isnt accurate anymore, and its value is derived from @icon-padding-md

Bug: T315615
Change-Id: I75dd87536f70da55c9fa7e0e29ed6b4040d2ddf4
2022-09-07 09:47:55 -05:00
Translation updater bot 948027450e Localisation updates from https://translatewiki.net.
Change-Id: Ia2e7632625ea4210c94575f7ee3a00707138cc21
2022-09-07 09:56:41 +02:00
jenkins-bot ddc3125f74 Merge "Remove dependency on `.cdx-typeahead-search--active` class" 2022-09-07 01:29:45 +00:00
Translation updater bot 50c2aab74c Localisation updates from https://translatewiki.net.
Change-Id: I774d16c709adfb26358ddd53e2aa95ba97add5fc
2022-09-05 10:14:28 +02:00
Jon Robson c1e923f120 Icons: Enable feature flag for next set of visual enhancements
Change-Id: I10f5a2ee8fa8121f8e9a5a79c98db492fbec6534
2022-09-02 07:54:13 -07:00
Jon Robson 742f659b10 FeatureManagement: All features have an associated class on the body tag
This is a common need for features, and having these use a standardized
class name will make using them a lot easier.

Change-Id: I0e16c26878e7d4399d2bf57f236523d214951a27
2022-09-01 22:09:48 +00:00
jenkins-bot 75115f841c Merge "Add tests for dropdownMenu.js" 2022-09-01 21:03:34 +00:00
Anne Tomasevich 8e04c79dba Remove dependency on `.cdx-typeahead-search--active` class
This class is no longer needed in Codex and will be removed.
This patch adds a similar dynamic class to the Vector search
app, to be used for showing/hiding the search button on
focus/blur or hover/leave.

Bug: T316893
Change-Id: I738c0f24dcd06ddeb9179cfedc85ed73a6504f1e
2022-09-01 16:42:11 -04:00
jenkins-bot d59885cf89 Merge "Enable related tabs on Vector" 2022-09-01 20:36:15 +00:00
Jan Drewniak f14b4fe5f1 Add tests for dropdownMenu.js
Adds tests for the addPortletLinkHandler, which should
add an icon element to items added via 'mw.util.addPortletLink'
and conditionally move elements from the toolbar into
the more menu at narrow widths.

- Adds tests for dropdownMenu.js
- Adds associated Jest snapshots
- Stubs the mediawiki.page.ready module
- Updates mockMediawiki.js to 4.6.0
- Adds global mock for mw.util.showPortlet()
- Cleans up tests using local versions of these mocks

Bug: T314798
Change-Id: I81394d840321916756a41a23c40d96c4b6341931
2022-09-01 13:11:22 -07:00
Anne Tomasevich eec6d5f608 Remove unneeded expansion styles from search box code
Input expansion behavior has been changed in Codex to expand
the input when the menu opens, instead of when the input is
focused. This patch removes styles targeting the server-
rendered search box that mimicked the expansion behavior
on initial focus to ease the transition between the server-
rendered version and the Vue version.

Bug: T312594
Change-Id: Id716860f52df7585c068a7927bf799129faf4ad3
2022-09-01 15:43:31 -04:00
bwang 3bf377fa7e Followup: clean up cached HTML code from T315595
Bug: T315595
Depends-on: I39959f43f20880e83bef945a7535d58cfe0b6412
Change-Id: I7afb66d6ee2d67d824266ca7240618afdd200c7f
2022-09-01 18:25:39 +00:00
bwang d949621eb2 Align header icon buttons and main content
Technical changes:
- Increase @padding-horizontal-content to align content
- Rename @padding-horizontal-page-container and @padding-horizontal-page-container-wide to @padding-horizontal-page-container-desktop and @padding-horizontal-page-container-desktop-wide respectively
- Replace "gutter" grid area with column-gap
- Clean up TOC styles

Visual changes:
- Below 1000px the header icons spacing is updated
- Above 1000px the page titlebar and articlebar right space is updated

Bug: T315261
Change-Id: I7f51ab3b9613c359db62e918051e942c5c6c878b
2022-09-01 12:42:07 -05:00
Translation updater bot b0b58915d4 Localisation updates from https://translatewiki.net.
Change-Id: If3b50c552f3058d00047a7e10ac9214b139ccab2
2022-09-01 09:37:28 +02:00
bwang 9c6f6709c6 Create new sticky toc container
Bug: T313060
Change-Id: Ia263c606dce5a6060b6b29fbaedc49cef3e17a5c
2022-08-31 21:27:06 +00:00
jenkins-bot 990c7f72b9 Merge "Reduce specificity of siteSub" 2022-08-31 20:49:55 +00:00
jenkins-bot c701486aa2 Merge "Override visited link style in MenuTabs" 2022-08-31 20:38:00 +00:00
Jon Robson 69658483bd Reduce specificity of siteSub
Follow up to I8ab2a554f753348ea2fb0fd4d28053ea17fbe83e
It should be possible to enable the #siteSub element with
a simple #siteSub { display: block; }. When moving these styles
from core we have made them more specific and harder to override

Bug: T316027
Change-Id: I4009c67e97ed0e718c28a1fa18c0059075b7a8a7
2022-08-31 13:07:58 -07:00
bwang 900376f9e4 Override visited link style in MenuTabs
Bug: T316574
Change-Id: I55b6537df709204ff499aa18298721cbec1de405
2022-08-31 19:51:14 +00:00
bwang 1c8af16dfb Replace body:not( .vector-toc-collapsed ) with .vector-toc-not-collapsed class
Follow up to Ibf837775d972deb29e9619cc6c12c919aae5155a

Change-Id: Ib50f6e4a61a09f54763a740bd12cdae3ee63abef
2022-08-31 19:05:50 +00:00
jenkins-bot b6a6296636 Merge "Reduce dependency on core styles" 2022-08-31 18:08:26 +00:00
Translation updater bot e111ac24c4 Localisation updates from https://translatewiki.net.
Change-Id: I5bd1a3ded92b6d3dd754c7d6dc0bb81bce1644b8
2022-08-31 09:37:29 +02:00
jenkins-bot 62c0b80d4f Merge "Change ULS label for sticky header when 0 Languages available." 2022-08-30 21:45:58 +00:00
Jon Robson 486748ac41 Enable related tabs on Vector
Depends-On: I861e8fe9c80569224548b8569452f8c57a446998
Bug: T313409
Change-Id: I871291c91dfe1f92c1131a2403695394ef3d0533
2022-08-30 14:20:11 -07:00
Jon Robson 9689974d0d AB test: Complain when TOC experiment setup incorrectly
Throw a runtime exception if the TOC experiment is setup correctly.
Otherwise this leads to confusion.

There must be 3 buckets, with 0 unsampled and equally weighted
control and experiment.

Bug: T313435
Change-Id: I09da238ff17b77a053b4dc132624ea19a86253b9
2022-08-30 11:59:42 -07:00
Jan Drewniak 87d0630aa2 Change ULS label for sticky header when 0 Languages available.
Modifies the `getULSLabel()` function to centralize the logic
related to the ULS language button messages.

Renames this function `getULSLabels()` since it retrieves both
the text and aria label for this input.

This logic conditionally returns the values based on whether
or not there are multiple languages available for an
title. It method is used in both sticky header and language
button near the page title.

Bug: T315556
Change-Id: I47e313414ae9c86d057e9b65ec67e522e9e7c464
2022-08-30 11:12:50 -04:00
jenkins-bot be7797e012 Merge "Follow-up: Refactor button/icon class helpers, make portlet classes consistent" 2022-08-30 02:35:50 +00:00
jenkins-bot 0d957abf77 Merge "Handle pages without ids in typeahead search" 2022-08-29 21:46:49 +00:00
bwang 659a5244ac Handle pages without ids in typeahead search
Bug: T313658
Change-Id: I6cba07e5e49d0593280017590dfd7cadb825095a
2022-08-29 11:09:28 -05:00
Translation updater bot 81fced891e Localisation updates from https://translatewiki.net.
Change-Id: Id840d7c03fee70f5fa80628071f67a9e9b65e6d7
2022-08-29 09:18:50 +02:00
jenkins-bot 748723e417 Merge "[Regression] Restore show on hover behaviour for dropdowns" 2022-08-28 23:56:38 +00:00
jenkins-bot e00e0b4122 Merge "Support additional content in table of contents" 2022-08-26 20:57:37 +00:00
jenkins-bot 46b4d86477 Merge "Fix site notice spacing" 2022-08-26 20:51:43 +00:00
jenkins-bot 9b7360c0a9 Merge "Table of contents doesn't respect NOTOC after an edit" 2022-08-26 18:59:37 +00:00
jenkins-bot b69cd0fe4a Merge "styles: Unify on standard external link icon (re-applying)" 2022-08-26 16:29:22 +00:00
Moh'd Khier Abualruz 4f47c744fd Table of contents doesn't respect NOTOC after an edit
* majorly done in VE by VE team by sending empty array,
since firing an event in beneficial for removing the TOC if needed

Bug: T315863
Bug: T315862
Change-Id: I128c550f039a812dde36fcefa56334842e36fbe2
2022-08-26 16:47:16 +02:00
Translation updater bot 2b63f5c1c3 Localisation updates from https://translatewiki.net.
Change-Id: I75212b21706b501d7d20b98da6250708bbd2be34
2022-08-26 08:25:12 +02:00
jenkins-bot f8c9c46a52 Merge "Table of contents toggles don't work correctly after update" 2022-08-25 18:53:53 +00:00
bwang 8ad777b896 Fix site notice spacing
- Removes grid row gap in favor of margins
- Add container div around site notice to allow margin collapsing

Bug: T315595
Change-Id: I39959f43f20880e83bef945a7535d58cfe0b6412
2022-08-25 11:13:57 -05:00
Jan Drewniak 934f65ab57 Add clearfix to .mw-body-subheader
Clears the indicators and subtitle in modern Vector.

Bug: T316134
Bug: T316095
Change-Id: I49a4801320f9680c75b2bdcb6e5704e3db70b38b
2022-08-25 13:34:43 +00:00
Moh'd Khier Abualruz 6b91d66eee Table of contents toggles don't work correctly after update
* This was fixed by removing the reattachment of `SubsectionToggleListeners`, as it seems to be already attached and was double toggling on click.
* This will not work with full TOC collapse `CollapseToggleListeners` it has to be reattached for it to work

Bug: T316033
Change-Id: I756b2a929fd94d9167a7b56df668b1202e695a38
2022-08-25 14:19:37 +02:00
Translation updater bot af4d269af7 Localisation updates from https://translatewiki.net.
Change-Id: I90638f59d84c74bc92d85b78cacb779717f402f8
2022-08-25 08:29:58 +02:00
jenkins-bot 0e7c32827d Merge "Revert "Remove grid row gap in favor of margins"" 2022-08-24 17:13:31 +00:00
Jdlrobson 3d719455c4 Revert "Remove grid row gap in favor of margins"
This reverts commit b63244f367.

Reason for revert: Per standup this morning we'll revert this so
that we are back to a known state, and try this again in a second
attempt.

Change-Id: Ie1349fecbab6c49ce63d328aba08162d74145cb9
2022-08-24 16:54:31 +00:00
Jon Robson dfede899d6 Reduce dependency on core styles
Follow up to Ibf837775d972deb29e9619cc6c12c919aae5155a

Depends-On: Ib5ae640bb260cee46e654228b785c776722c7003
Bug: T316027
Change-Id: I8ab2a554f753348ea2fb0fd4d28053ea17fbe83e
2022-08-24 16:16:01 +01:00
Jon Robson 2be7ce5c47 Vector legacy no longer imports variables from Vector modern
In f7f78023e we added new variables to the Vector 2022 variables
that overrode the defaults, but forgot to preserve the defaults
in Vector legacy. This resulted in changes documented in
T213778#8181795

Going forward it makes sense to separate these.

Bug: T213778
Change-Id: I5e4f1729fc0f41b21579807fc83a7dda9c3519ea
2022-08-24 15:08:35 +00:00
Jan Drewniak 5dbc96aaee [Regression] Restore show on hover behaviour for dropdowns
Due to recent updates that affected dropdowns in modern and
legacy Vector, the dropdowns in legacy Vector were not appearing
on hover as they were intended.

Bug: T315418
Change-Id: Iad3c3d89566f211d331233a752d67744d6522af0
2022-08-24 10:33:26 -04:00
Bartosz Dziewoński 2321eeb054 Vector 2022: Align #contentSub with page title (to the left)
(Visual change)

Bug: T307715
Change-Id: Ic4a8d4d55e132cec5df720fdb38eb47c37c8baf0
2022-08-23 20:51:27 +00:00
bwang 3881820483 Follow-up: Refactor button/icon class helpers, make portlet classes consistent
- Make 'updateMenuItem' generic, rename to 'updateItemData'
- Make 'appendListItemClass' generic, rename to 'appendClassToItem'
- Remove 'appendClassToListItem' and replace with 'appendClassToItem'
- Create 'updateMenuItemData', 'updateLinkData', and 'updateDropdownMenuData' wrapper functions to be used in Hooks and SkinVector
- Add and update tests

Bug: T307901
Change-Id: I4b12a0c1aab1224d2658bad30ee629f7266c5b7e
2022-08-23 19:18:03 +00:00
jenkins-bot 6e30fa2c00 Merge "TOC with bold text." 2022-08-23 12:47:58 +00:00
jenkins-bot bd8ceeb3e6 Merge "Remove grid row gap in favor of margins" 2022-08-23 07:40:51 +00:00
Translation updater bot c8eb8fd167 Localisation updates from https://translatewiki.net.
Change-Id: I1d0d3345d0e09c2a2dc5c31d03eeaf4c308dd026
2022-08-23 08:12:34 +02:00
bwang b63244f367 Remove grid row gap in favor of margins
Bug: T315595
Change-Id: Ibf837775d972deb29e9619cc6c12c919aae5155a
2022-08-22 15:49:00 -05:00
jenkins-bot 943104ae5e Merge "Remove FIXME, add variables" 2022-08-22 19:06:07 +00:00
Jon Robson fc2a899b4d Remove FIXME, add variables
These overrides are now redundant now that Vector and Vector 2022
are separate skins.

This override was technical debt, but is now causing inconsistency
in styles as a result of T315321

These are now defined in the variables file instead.

Bug: T315662
Change-Id: I7cb3e7f439daa9d1974ec414ee4c8a905b5e513f
2022-08-22 19:26:09 +01:00
Jon Robson ecbe2c2855 Layout: Restore disabling of max width on certain pages
Bug: T315460
Change-Id: I9bad936c06150cd01d4e60f4a92a5c4d28b5fe16
2022-08-22 10:34:34 +00:00
jenkins-bot 392e251a62 Merge "Localisation updates from https://translatewiki.net." 2022-08-22 08:55:30 +00:00
jenkins-bot 0f4c36169f Merge "[RTL, TOC] The arrow before collapsible sections in sidebar is clipped" 2022-08-22 08:31:25 +00:00
Moh'd Khier Abualruz ff73b36780 [RTL, TOC] The arrow before collapsible sections in sidebar is clipped
* Temp solution for quick fix
* Full solution should be supplied by cssjanus PR shortly after

Bug: T314652
Change-Id: Ic3ac53f884bc1b9bc14c951b7348e2bf263065a2
2022-08-22 08:13:58 +00:00
Translation updater bot 6de03aab95 Localisation updates from https://translatewiki.net.
Change-Id: I7eab506709ea7e8056a3e85e37fe735ab3d57061
2022-08-22 08:27:13 +02:00
jenkins-bot 758297c5ca Merge "Fix CSS selector for 'mw:tocplace' element" 2022-08-19 21:01:01 +00:00
Volker E 19ca22f424 styles: Unify on standard external link icon (re-applying)
Re-applying: Unify on using standard OOUI 'linkExternal' icon, which is
directly replacing Vector's image without relying on ResourceLoader.
This time we have lo- and hi-dpi optimized icon.
Please note that the icon features standard link color `#36c` which is
implemented in a later step. Due to the small icon size and the fact
that current external link icon is also not using the legacy color, this
seems acceptable to move forward with.

Also using relative `em` instead of `px` to support user text zoom
capabilities and introducing a `@size-indicator` variable to be replaced
by WikimediaUI Base variables later.
Alternative to I49de3bfff45.

Replacing images and image names to make quicker lookup with icon
collection possible future-facing.

Note that CSSJanus is flipping the `ltr` string in the background image
rule to `rtl`, therefore making sure that both icons are available.

Bug: T261391
Change-Id: I1c3cfb4cd83fe4d5d08c06b84cdc192cb90c0dfe
2022-08-19 11:41:15 -07:00
bwang 0be4664c02 Add back fixed width to main content
Bug: T315653
Change-Id: Iffd3f219e756b82397264f62fb9f88fc82a92ba9
2022-08-19 13:20:20 +00:00
Translation updater bot 4ff3347d79 Localisation updates from https://translatewiki.net.
Change-Id: I259b7ad8449141a0e6dbe219bbc3e45a157118bb
2022-08-19 08:33:13 +02:00
Bartosz Dziewoński 7107b9d72b Fix CSS selector for 'mw:tocplace' element
The colon needs to be escaped, otherwise it is treated as an invalid
pseudoclass.

Change-Id: I328851cfbd8ab3604b89a43bc5c854d1f90b306e
2022-08-18 23:52:45 +00:00
Jon Robson 4d96034efe Support additional content in table of contents
Bug: T307823
Change-Id: I034a579b7ef51950726c9ac056d6c940a7d7d472
2022-08-18 23:04:47 +00:00
Jan Drewniak e3896ab96d TOC with bold text.
The width of the active link is increased via calc to reduce the
chances that the line will wrap because of the bold text.

Bug: T314670
Change-Id: I58aa72871b7d80c8342df60478894dafcf448ae7
2022-08-18 17:04:30 +00:00
jenkins-bot fd4c4f5c34 Merge "TOC: Prepare for upstream change to mw:tocplace element" 2022-08-18 14:03:27 +00:00
Translation updater bot 8e3c072d01 Localisation updates from https://translatewiki.net.
Change-Id: Ifc711475c6f8dd7c0e0057f0e902526cea99b05d
2022-08-18 08:41:55 +02:00
jenkins-bot b31bea7fd9 Merge "Remove gradient from modern Vector, align SidebarAction with portlet styles and classes" 2022-08-17 21:03:35 +00:00
jenkins-bot 1f5170238a Merge "Append icon to links created via mw.util.addPortletLink" 2022-08-17 20:50:43 +00:00
bwang 5f09892813 Remove gradient from modern Vector, align SidebarAction with portlet styles and classes
Bug: T307771
Change-Id: I92fd11b89d4afbf99dd7ab51990835b9754767a1
2022-08-17 20:41:15 +00:00
jenkins-bot 2f65c4f696 Merge "Follow-up: Clean up left over vector legacy classes" 2022-08-17 20:38:49 +00:00
bwang 81d9b28be1 Follow-up: Clean up left over vector legacy classes
Bug: T313559
Change-Id: I42610ef7ccaea0b7c818f66cfbe5a316d2a5566d
2022-08-17 20:18:37 +00:00
bwang 2d6be2e6f0 Clean up main menu selectors
Change-Id: Icb7595f2ef60108f6eaf6b953f37a291678f793e
2022-08-17 14:08:46 -05:00
jenkins-bot 2450fdeb99 Merge "Prevent dropdown arrow from flipping in modern Vector" 2022-08-17 07:59:36 +00:00
jenkins-bot cf88597ca7 Merge "styles: Update Vector 2022 link colors to conform to WCAG requirements" 2022-08-17 07:35:09 +00:00
Translation updater bot 3e47609440 Localisation updates from https://translatewiki.net.
Change-Id: I415919d2809d69e107ab9ff0746f57da3ebd94f5
2022-08-17 08:26:43 +02:00
bwang 9546bd30c0 Prevent dropdown arrow from flipping in modern Vector
Bug: T314669
Change-Id: Icaae181cac1b399d9c0e90c55c7ee36982b638d3
2022-08-16 16:13:55 -05:00
Jan Drewniak 936bb1d739 Append icon to links created via mw.util.addPortletLink
For modern Vector, the preferred way to place an icon
beside a link is with a dedicated <span> element instead
of a `:before` pseudo-element.

This change appends a <span> element with an icon to
links created by mw.util.addPortletLink instead of
using the `.mw-ui-icon-before` class.

Bug: T314798
Change-Id: I019470d9ca38a6bd63a690882bed03b5f1ac03c4
2022-08-16 15:50:34 -04:00
jenkins-bot ae44bfa327 Merge "Fix collapsed TOC menu positioning with site notice without JS or major CSS changes" 2022-08-16 19:07:44 +00:00
Volker E f7f78023e9 styles: Update Vector 2022 link colors to conform to WCAG requirements
Follow Web Content Accessibility Guidelines and
use Wikimedia Design Style Guide colors with
at least 3:1 contrast with surrounding body text.

Also unify external and normal links as the color difference is
basically opaque to understand beyond a small group of power users.

Bug: T213778
Bug: T315321
Change-Id: I8a309eedd70b9a82fcca91c2cf9a30beea602b6b
2022-08-16 17:56:07 +00:00
bwang 160ef15f30 Fix collapsed TOC menu positioning with site notice without JS or major CSS changes
Bug: T310388
Change-Id: Ifa29dd032534a1c6ea6fcea194b0c65103a2cd52
2022-08-16 10:38:30 -05:00
jenkins-bot 8c3a4792e9 Merge "[ToC] Show new/modified sections after publishing an edit (new floating ToC)" 2022-08-16 08:37:30 +00:00
Translation updater bot 051b9eff60 Localisation updates from https://translatewiki.net.
Change-Id: If2120b82f52f039e7151ade3634bcc90e48d44a7
2022-08-16 08:36:20 +02:00
Jon Robson 6df60895ab TOC: Prepare for upstream change to mw:tocplace element
Bug: T311502
Change-Id: I1f607cf1ef1b61fb4d2e1880de756fb94d5a6b22
2022-08-16 07:04:27 +01:00
Moh'd Khier Abualruz 407046c759 [ToC] Show new/modified sections after publishing an edit (new floating ToC)
- All Frontend
- All in Skin

Bug: T307251
Change-Id: Icae2f03f0005b7607448127b793ff3c0010e5817
2022-08-15 20:02:49 +00:00
Jon Robson 6cd7098d05 [ToC] Content should be centered when TOC is collapsed
Bug: T314579
Change-Id: I8d182893267f740457b7233c38aa4615f08b814f
2022-08-15 14:53:54 -05:00
jenkins-bot 15ed1cf0e1 Merge "Prevent collapsed dropdowns from having height." 2022-08-15 19:31:24 +00:00
jenkins-bot 6a65efc041 Merge "Follow up: Remove .vector-layout-grid, .mw-workspace-container classes" 2022-08-15 18:52:46 +00:00
jenkins-bot aab46eb7ce Merge "Allow composer/installers plugin" 2022-08-15 16:05:22 +00:00
bwang 8eff2d0501 Follow up: Remove .vector-layout-grid, .mw-workspace-container classes
Bug: T313559
Change-Id: If93860d13fb3161c0b66f7ea9e3e1831b0a2fc1e
2022-08-15 10:10:01 -05:00
Translation updater bot 5204763967 Localisation updates from https://translatewiki.net.
Change-Id: I33ce00747118d3e888509a60513d25c4a3aecba0
2022-08-15 08:29:29 +02:00
Translation updater bot 24a9c1f28b Localisation updates from https://translatewiki.net.
Change-Id: I1a93a342986aa92bdae8bb53705ffa4db69ca178
2022-08-12 08:46:25 +02:00
jenkins-bot e367136406 Merge "Revert "styles: Set `background-repeat: no-repeat` for menu tabs"" 2022-08-11 13:11:06 +00:00
jenkins-bot 03b6715713 Merge "Add collapsed TOC to sticky header by moving the TOC" 2022-08-11 12:28:24 +00:00
bwang 006ea3517b Add collapsed TOC to sticky header by moving the TOC
Visual changes:
- TOC icon in sticky header
- Small update to the narrow screens collapsed TOC spacing when open

Bug: T311103
Depends-on: Ic94fda79bd14856ccda14985d5860aa54d3118d0
Change-Id: I977092f951ba2843816609e706bce4b99583f623
2022-08-11 11:25:21 +00:00
Translation updater bot 379ec65c8b Localisation updates from https://translatewiki.net.
Change-Id: I05c9238daf91cf591e5c7464adc183b20df695d5
2022-08-11 08:54:52 +02:00
jenkins-bot 310bf970bd Merge "Remove .mw-ui-button styles from user-links overflow menu" 2022-08-10 07:39:39 +00:00
Translation updater bot d26aaeff94 Localisation updates from https://translatewiki.net.
Change-Id: I83e3e21bdf57e36365a2c2c43a0a8c906ac6ac9a
2022-08-10 08:25:55 +02:00
jenkins-bot 6129fef3a0 Merge "Allow preview on certain article titles" 2022-08-09 16:02:46 +00:00
jenkins-bot 177e57b794 Merge "Refactor TOC A/B test to bucket users on backend" 2022-08-09 10:28:39 +00:00
Translation updater bot 3c0147752d Localisation updates from https://translatewiki.net.
Change-Id: I035cc2d382208d1955e1f7e133a73d33f9e5b139
2022-08-09 08:21:57 +02:00
Jan Drewniak 5676097135 Remove .mw-ui-button styles from user-links overflow menu
Removes the .mw-ui-button styles from the userpage link
and create account link in the user menu.

Overrides the userpage redlink style so that the link
remains blue even if the userpage doesn't exist.

Visual changes: userpage link and create account link
in header are no longer .mw-ui-buttton styles, but
look like standard blue links. The user links menu shifts
slightly because of this as well.

Bug: T312157
Change-Id: Id98e566952e5875527f38d1edbc8f6e058af4518
2022-08-08 22:12:07 -04:00
Clare Ming eb597645c3 Refactor TOC A/B test to bucket users on backend
- Include temporary feature requirement for TOC A/B test.
  - Assumes 100% of logged-in users with even/odd user ids
  being assigned to treatment/control buckets respectively.
  - Sampling rates passed in by config are not considered
  during bucketing.
- Update hook for adding needed TOC A/B test body classes.
- Add test for temp feature.

Note: the temporary feature requirement and associated hooks
should be removed once the 2nd TOC A/B test concludes.

Bug: T313435
Change-Id: If9c75235614af289cd50182baab29bec3155eb81
2022-08-08 15:50:28 -06:00
Jan Drewniak 942cd5b0f6 Sticky header AB test bucketing for 2 treatment buckets
For idwiki/viwiki, we wish to run the sticky header edit button AB
test so that treatment1 group sees the sticky header without edit
buttons, treatment2 groups sees the sticky header with edit buttons,
and the control/unsampled groups see no sticky header at all.

This patch overrides the configuration to make the sticky header
w/o edit buttons for treatment1, sticky header w/ edit buttons for
treatment2, and hides sticky header for everyone else. This depends
on a configuration with the treatment groups having "treatment1"
and "treatment2" as substrings in their bucket names.

The full configuration for idwiki/viwiki would be something like
the following:

```
$wgVectorStickyHeader = [
	"logged_in" =>  true,
	"logged_out" => false,
];

$wgVectorStickyHeaderEdit = [
		"logged_in" => true,
		"logged_out" => false,
];

$wgVectorWebABTestEnrollment = [
	"name" => "vector.sticky_header_edit",
	"enabled" => true,
	"buckets" => [
		"unsampled" => [
			"samplingRate" => 0
		],
                "noStickyHeaderControl" => [
                        "samplingRate" => 0.34
                ],
		"stickyHeaderNoEditButtonTreatment1" => [
			"samplingRate" => 0.33
		],
		"stickyHeaderEditButtonTreatment2" => [
			"samplingRate" => 0.33
		]
	],
];
```

Bug: T312573
Change-Id: I15c360fdf5393f5594602acc33b5b916e904016d
2022-08-08 21:14:02 +00:00
Jon Robson d771a1d60d Allow preview on certain article titles
The list is exposed in mw.config so banners can work out if the
preview mode is active.

We change the skin the same way MobileFrontend changes the skin.

Bug: T314286
Change-Id: Ib3c90d2640f2fa8cac17514b59aa720e4aba6d96
2022-08-08 19:58:07 +00:00
bwang d4d50d2dc5 Fix grid blowout bug
Bug: T314756
Change-Id: If1a84f5c3606dab7195a9b0a320e416fba702027
2022-08-08 18:19:23 +00:00
jenkins-bot 0a7588f55b Merge "Remove vector-layout-legacy styles and grid feature flag" 2022-08-08 17:13:42 +00:00
Jan Drewniak 4bafaa2453 Prevent collapsed dropdowns from having height.
Collapsed dropdowns are hidden via `opacity:0;` and
`visiblility:hidden;`. This doesn't prevent them from having a
height, which can be an issue when the language selector is
at the bottom of the page, producing a large gap near the footer.

Bug: T314546
Change-Id: Iec5d78469c8d5e10bd78e5d062f9e46a54fb3a98
2022-08-08 10:39:29 -04:00
Jon Robson 8a46797eec Express sidebar width in pixel for font size
Bug: T313817
Change-Id: Ic8917bf14eb688f84ca8dfbaea055f93fe829469
2022-08-08 08:25:21 +00:00
bwang ef2b0a2372 Remove vector-layout-legacy styles and grid feature flag
Bug: T313559
Change-Id: I050d0e243186ba4341accc26f8d644f55ff995b7
2022-08-08 08:22:26 +00:00
jenkins-bot f366c2ad9c Merge "Fix collapsible user links issue on tablet breakpoint" 2022-08-08 08:20:21 +00:00
bwang 64566249a3 Fix collapsible user links issue on tablet breakpoint
Bug: T314757
Change-Id: I595d27a03bd607f5b2ab8230e4931a1124222312
2022-08-08 07:59:50 +00:00
Translation updater bot ae82fcf5f9 Localisation updates from https://translatewiki.net.
Change-Id: I4efc2f9cb10bc354e21640b8b2f2e0518b7d7275
2022-08-08 09:01:38 +02:00
jenkins-bot 6a428b6b58 Merge "Minor fixes to TOC hide/show buttons" 2022-08-05 16:43:58 +00:00
Meno25 afe4a93e65 Update link target of the team page
Link redirected on mediawiki.org

Change-Id: Iee32234585411db7031cdb9e73412904f5e71d45
2022-08-05 12:51:44 +00:00
Translation updater bot 89a1ea869c Localisation updates from https://translatewiki.net.
Change-Id: I491b7fc3fce148c7424db5b132da4c9f7b957d90
2022-08-05 08:36:45 +02:00
Clare Ming 5b55a2f894 Minor fixes to TOC hide/show buttons
Bug: T307901
Change-Id: I37c6b3b4c5c20e914423c311795dbccce2a7b3fd
2022-08-04 15:20:58 -06:00
Jdlrobson 86f39007fb Revert "styles: Set `background-repeat: no-repeat` for menu tabs"
This reverts commit 1f94104cdf.

Reason for revert: I3427b9ca05957b33a95bba4de4ddf87b61b5ccc7 would
be a more future proof solution to this problem.

Depends-On: I3427b9ca05957b33a95bba4de4ddf87b61b5ccc7
Change-Id: Ie09ccad772e25689c89608bba73c5248a55b4a7d
2022-08-04 17:29:56 +00:00
jenkins-bot 1a2b6d59a5 Merge "UserLinksLegacy: Move layout rule into UserLinks rule" 2022-08-04 12:14:43 +00:00
jenkins-bot 6a92bad382 Merge "styles: Set `background-repeat: no-repeat` for menu tabs" 2022-08-04 12:10:25 +00:00
Jon Robson 0be8fe1534 UserLinksLegacy: Move layout rule into UserLinks rule
This is component CSS, not a general layout rule

Change-Id: I3b49989b3265b336810beca2e07f68020600f888
2022-08-04 11:54:44 +00:00
jenkins-bot 4f4317c708 Merge "Only apply sticky header offset if it is showing sticky" 2022-08-04 08:08:46 +00:00
Translation updater bot 4c2a1c2211 Localisation updates from https://translatewiki.net.
Change-Id: I6545978c126581242a8471844e077aae37534da9
2022-08-04 08:46:34 +02:00
bwang e1e9552bf3 Followup contentSub contentSub2 styling
Bug: T311421
Change-Id: I4319142361b83758bbbe3c1a22e9b6ccab47352d
2022-08-03 20:57:35 +00:00
jenkins-bot a4949503f6 Merge "Update #siteSub, #contentSub and #contentSub2 to fix spacing, conditionally render #contentSub and #contentSub2" 2022-08-03 20:16:51 +00:00
jenkins-bot c71bd6a27b Merge "Followup to ce007e0 - Unify dropdown styles" 2022-08-03 19:04:52 +00:00
Andre Klapper 1f94104cdf styles: Set `background-repeat: no-repeat` for menu tabs
Images are used e.g. by the ProofreadPage extension.

Bug: T314028
Change-Id: I278fff4f02dd91effe5d8ace2f4a21a437a5114b
2022-08-03 19:00:01 +00:00
Translation updater bot 88a6a7d7ca Localisation updates from https://translatewiki.net.
Change-Id: I4ae9cc00379a7abc41802b975ad7d2e88e543eaf
2022-08-03 08:20:12 +02:00
jenkins-bot 4aeaf4a428 Merge "Ensure collapsible TOC is closed when links are clicked" 2022-08-03 03:15:25 +00:00
bwang b89307c6bb Update #siteSub, #contentSub and #contentSub2 to fix spacing, conditionally render #contentSub and #contentSub2
Visual changes:
- Reduced spacing above #siteSub
- Updated spacing from #contentSub and #contentSub2

Bug: T311421
Change-Id: I7fd78d2c92007b231cfc49af0fbd02a4f74f3901
2022-08-03 01:14:30 +00:00
Jan Drewniak 4aa5602c52 Followup to ce007e0 - Unify dropdown styles
Provide better compatibility with gadgets that create dropdowns
like Twinkle by explicitly setting the font-weight and font-size
on `.vector-menu-heading`.

This is needed because in legacy Vector, menu headings
were <H3>'s, which have bold text and a larger font size.

Bug: T312157
Change-Id: Ic414cef4c7145740812e590f431294bc85a405b4
2022-08-02 16:57:02 -04:00
jenkins-bot feab2431f6 Merge "Remove custom rendering of the user links overflow menu in favor of using 'vector-user-menu-overflow', a vector specific menu bucket in Hooks.php" 2022-08-02 15:40:09 +00:00
Translation updater bot dcebd7c20d Localisation updates from https://translatewiki.net.
Change-Id: I50cb7bba9091a6e2a560a4d0ab6e88b1a3571e42
2022-08-02 08:15:28 +02:00
bwang 37149c9e67 Remove custom rendering of the user links overflow menu in favor of using 'vector-user-menu-overflow', a vector specific menu bucket in Hooks.php
- Rename 'vector-user-menu-more' class to 'vector-user-menu-overflow'
- Update storybook and tests

Visual changes
- Small intentional change on the create account button

Bug: T306662
Change-Id: I371bb11903d8cdd8f0da89266fcf549050c0da8c
2022-08-01 20:18:46 +00:00
jenkins-bot ea5c4d3735 Merge "phpunit: Fix context leak in SkinVectorTest" 2022-08-01 15:47:53 +00:00
Translation updater bot 0315f12c70 Localisation updates from https://translatewiki.net.
Change-Id: I42d7c2cc4c665ff9a8dfb2b9cfd8de7dc46cdc5e
2022-08-01 08:25:42 +02:00
Clare Ming 1d1585d214 Add feature to hide/show collapsible TOC above desktop
- Add hide/show links to TOC template.
- Add i18n messages for hide/show text.
- Add event listener to TOC js.
- Update relevant TOC collapsed styles.
- Update test snapshot.

Bug: T307901
Change-Id: Ic94fda79bd14856ccda14985d5860aa54d3118d0
2022-07-29 14:19:55 -05:00
Translation updater bot 504d04d26d Localisation updates from https://translatewiki.net.
Change-Id: I13937bf561f74ec5b62030356c4826b143a088dc
2022-07-29 08:57:11 +02:00
Timo Tijhof acaaa89c5e phpunit: Fix context leak in SkinVectorTest
There are two issues with context in this test case:

1. The $vectorTemplate object was not given the $context object.
   Calling setContext() is the same as MediaWiki would normally do
   after calling SkinFactory, e.g. as in RequestContext::getSkin.

2. The "main" glboal state was leaking into the test by mutating
   the result of getMain() instead of creating your own for use
   in the test.

Change-Id: I09eb8c3a38c0d4e2c85461b61e6f14ab00995016
2022-07-28 20:55:30 -07:00
jenkins-bot 9e0d9ebcd4 Merge "Unify dropdown styles" 2022-07-28 21:26:23 +00:00
Jan Drewniak ce007e059e Unify dropdown styles
This affects all dropdowns in Vector 2022, including the
user menu in the header and the language variants and
"more" menu in the article toolbar.

By relying on shared styles instead of separate implementations,
this change also reduces the size of the skins.vector.styles
module by 1.6kB (uncompressed).

Visual changes:
- The links in the user menu are now blue
- Dropdown links in the user menu and tabs are blue
- The dropdown labels in the tabs are black not dark gray.

Bug: T312157
Bug: T308344
Change-Id: I002d5454838a5516b6ee6c7c38721209ed28508b
2022-07-28 16:41:39 -04:00
Jdrewniak c035d8babd Revert "styles: Unify on standard external link icon"
This reverts commit cffd494107.

Reason for revert: Reverting due to how the new icon doesn't scale well at 2x resolution. https://phabricator.wikimedia.org/T261391#8111726

Bug: T261391
Change-Id: I6d49fed2b9e249de15cf40216c01153c7b793ee2
2022-07-28 14:43:51 +00:00
Translation updater bot b297c931e0 Localisation updates from https://translatewiki.net.
Change-Id: I2405ce2e53a61e8b6e3df9bdc4c34f726e952a38
2022-07-28 09:00:54 +02:00
jenkins-bot ee91a813d3 Merge "styles: Replace LanguageButton variable nomenclature" 2022-07-27 20:28:18 +00:00
jenkins-bot e4b4f5bf9f Merge "Show ULS button when article exist only in single language" 2022-07-27 20:22:02 +00:00
jenkins-bot 225efaaabb Merge "Page toolbar visual tweaks and code clean up" 2022-07-27 19:40:17 +00:00
jenkins-bot 3fb45cfc14 Merge "Hide TOC button on print" 2022-07-27 17:33:28 +00:00
bwang 7b34e14d25 Page toolbar visual tweaks and code clean up
Visual changes: 11 expected in Pixel
- Elements on the right side of page toolbar are now flush with the rest of the content

Change-Id: Id02cd379687fa292188a447c85951e7a87ade509
2022-07-27 17:10:22 +00:00
jenkins-bot 54ac78bba0 Merge "Make site banner full width in grid layout" 2022-07-27 16:57:05 +00:00
Clare Ming 7a63671b51 Hide TOC button on print
Bug: T313298
Change-Id: Ibf5281ce9deabc32f59df9c088af6dcb29b86ddf
2022-07-27 10:24:19 -06:00
bwang 320175d22c Make site banner full width in grid layout
Bug: T312749
Change-Id: Ia888615762a641f98409b11c6448a32897c4c835
2022-07-27 10:01:49 -05:00
Translation updater bot b32fb8166b Localisation updates from https://translatewiki.net.
Change-Id: Ie828f4dc9bbb514a3516bc18476333173b6d14d7
2022-07-27 08:28:15 +02:00
jenkins-bot 8e36c72144 Merge "Add "Add topic" button to sticky header" 2022-07-26 22:36:04 +00:00
jenkins-bot 77bd2e5fbd Merge "Sticky header: Add a link to the 'subject' page when on talk pages" 2022-07-26 22:36:01 +00:00
Ed Sanders 23a5261ef6 Add "Add topic" button to sticky header
Bug: T304187
Change-Id: Ib497eb91ec7548e2ba6d1d474a196ada770f955d
2022-07-26 22:15:02 +00:00
jenkins-bot aa925d01d9 Merge "Define non-standard colors for legacy Vector" 2022-07-26 21:27:45 +00:00
bwang e5251a1448 Ensure collapsible TOC is closed when links are clicked
Bug: T310828
Depends-on: I2783928740e6a0684476a642f812cc6647be8e3f
Change-Id: I0bab194465f89637eecb43590eb8d29b5f2fd7d2
2022-07-26 19:03:16 +00:00
Derk-Jan Hartman e7f0106917 Only apply sticky header offset if it is showing sticky
Only apply sticky header offset to mw-sticky-header-element if the
header is actually sticky, currently at min-desktop-width of 1000px

Bug: T313187
Bug: T313619
Change-Id: I081c694b263a68498468b837cffa1cbea136d36f
2022-07-26 17:57:46 +00:00
Volker E ee7f59171f styles: Replace LanguageButton variable nomenclature
`height-lang-button` => `height-button-lang`
First component, then subtype.

Bug: T313243
Change-Id: Icd053cb64ef0af84b37e27b0dbfc0e8ceb521863
2022-07-26 07:46:42 -07:00
Translation updater bot b7b338ec14 Localisation updates from https://translatewiki.net.
Change-Id: Icfc0735aa1f57c98103d1a91843984589a977b48
2022-07-26 08:27:23 +02:00
Volker E 23b1fb3b45 icons: Amend external link icon for lo-dpi screens
Following-up I05b832a36e8, which has seen the right canvas of 12x12, but
an older, incorrect version of the icon not perfectly optimized for
the lo-dpi screens.

Bug: T261391
Change-Id: Ia0054372c4d3bd5bb7e4b24a8f412bcaf6bcd80b
2022-07-25 16:09:09 -07:00
jenkins-bot 9fc2f4403e Merge "Update CSS to allow TOC to be collapsed at larger viewports using grid" 2022-07-25 21:41:42 +00:00
jenkins-bot a32a2cc322 Merge "[Refactor] Split MenuDropdown.less for modern and legacy" 2022-07-25 20:39:05 +00:00
Jan Drewniak 697b5deeda [Refactor] Split MenuDropdown.less for modern and legacy
Splits MenuDropdown styles into modern and legacy styles.

Leaves a common MenuDropdownCheckbox.less file (for lack
of a better name) for common styles related to the checkbox
behaviour and dropdown menu resets.

Adds a new file in common/mixins.less for a shared
dropdown mixin.

Bug: T312157
Change-Id: Ib60b25ea3121843ed5ed54820d6295a81289b332
2022-07-25 20:20:18 +00:00
Translation updater bot 479bcc3958 Localisation updates from https://translatewiki.net.
Change-Id: Ib78b2b6129bd1ef4b4cb005b5d2a34bc93f7530c
2022-07-25 08:43:52 +02:00
Ed Sanders c9a04099d0 Sticky header: Add a link to the 'subject' page when on talk pages
The subject link does not have a consistent ID like the talk link,
so it needs to be computed from the canonical namespace name.

Something similar is done in VE.

Bug: T309424
Change-Id: Ie82ca61aef30204edd09793963b25464febb17fe
2022-07-22 22:24:38 +01:00
jenkins-bot 95ce5900bf Merge "Enable sticky header on article and user talk pages" 2022-07-22 21:16:41 +00:00
bwang 4511b94b21 Update CSS to allow TOC to be collapsed at larger viewports using grid
Test by adding .vector-toc-collapsed class to the body
We use grid only when supported for grade C browsers.

Visual changes:
* Slight changes to position of the button and title
(movement by a pixel or 2)

Bug: T311447
Change-Id: Ib16c7b5b35be66776d013833e29f24f3f5316d9b
2022-07-22 20:59:14 +00:00
Jan Drewniak 34a8bc6690 [Regression] Restore proper watchstar icons in Vector 2022
Wrong watchstar icons were specified when splitting the watchstar
into modern and legacy Vector in 3c0559a7.

Change-Id: Ice369f5d81818b093014cf508c2d4336c66368ed
2022-07-22 15:29:04 -04:00
Clare Ming 1297733a65 Add text to TOC collapsible button label for accessibility.
- Provide message translations.
- Include other TOC message that was missing.

Bug: T310810
Change-Id: Ibd612b48ea3ef3f9f31f4bb5791c0cb82e447ece
2022-07-22 10:45:40 -06:00
Ed Sanders acc4b3c413 Enable sticky header on article and user talk pages
Don't show the talk page link on talk pages themselves.

Bug: T304188
Bug: T309424
Change-Id: I5f4c9373c18d65245416cc3f5b603381abc3de1c
2022-07-22 17:22:24 +01:00
Santhosh Thottingal 40f6c5e29d Show ULS button when article exist only in single language
When the article exist only in one language, currently we do not show
language selector. This prevents showing the entry points to create article
in other languages by various means.

Show the language selector so that options like translate, interlanguage
links, language settings can be shown.

Bug: T275147
Bug: T290436
Depends-On: I42c5d44ec15e291d71723c9738ddb8f0d1cf0b09
Change-Id: I7fb68457c1203d824fe7433c9f272f300a483c44
2022-07-21 16:28:22 -07:00
bwang 2d9585c8e3 Table of contents: Update TOC styles
Visual changes:
* Changes to table of contents text alignment and padding

Bug: T312156
Change-Id: Icfde60d053a786054de6608f2ed4f0b1b5b5b252
2022-07-21 22:30:35 +00:00
jenkins-bot 6ecbd5e970 Merge "Refactor chevron across components + separate watchstar" 2022-07-21 22:01:49 +00:00
Jon Robson 96a12622c2 Define non-standard colors for legacy Vector
Bug: T213778
Change-Id: I7e350c1d6d6c584ce97d210a9d62190a453693c4
2022-07-21 21:31:31 +00:00
Jon Robson 75ffe2eb36 Layout: Release CSS grid
Results in the following visual changes:
- Footer will always span full screen
- The top of the TOC should align with the hr under the page title

Bug: T312241
Change-Id: I3fc9de5900aff441715f004aed786f95b14657a5
2022-07-21 14:15:12 -07:00
jenkins-bot 64f724903e Merge "Remove Table of Contents feature flag" 2022-07-21 20:06:45 +00:00
Volker E 3315b33217 styles: Make external icon indicator size for lo-dpi environments
Using indicator 12x12 canvas, following up Ibd15517f3adf, to cater to
lo-dpi screens.
We've already had that canvas in the original patch, but in the first
new patch left it behind.

Bug: T261391
Change-Id: I05b832a36e89f6d75ab4f620b8db60b6eb578f73
2022-07-21 12:25:29 -07:00
Clare Ming 28732cf4f7 Remove Table of Contents feature flag
- Update related selectors, styles.
- Remove unneeded styles.
- Remove link hijack js.
- Simplify hook to only add experiment name to body.

Bug: T310527
Change-Id: I25527261d529a16e28f1b90f2f5af234d26fd40f
2022-07-21 12:41:39 -06:00
Jan Drewniak 3c0559a71d Refactor chevron across components + separate watchstar
Consolidates the CSS responsible for styling chevrons into one
implementation. This removes the need for custom padding and
background positioning for the following components:

- "more" menu
- user menu
- watchstar
- language button
- languge button in sticky header

Instead of absolutely positioning the chevron on these components,
the parent label element is set to `display: inline-flex` so that
the chevron is vertically aligned and given enough space by default.

The watchstar, although not a chevron, is also given the
`display: inline-flex` treatment so that it can be aligned with
other elements in the toolbar.

This new implementation requires splitting the watchstar
component into legacy and modern due to a quirk in Firefox that
causes a bug with the watchstar in legacy Vector.

NOTE: This change causes visual changes due to the difference in
centering the chevrons via flexbox vs percentage positions.

Bug: T308344, T310838
Change-Id: Ie9e0fce1366cd25a5899fee49770de4a09424fe2
2022-07-21 10:14:21 -04:00
Translation updater bot 66cf502e17 Localisation updates from https://translatewiki.net.
Change-Id: I1819790abbaabd418d477a61919a7f1e4ac043ce
2022-07-21 09:06:58 +02:00
jenkins-bot e83ca244af Merge "styles: Unify on standard external link icon" 2022-07-21 00:07:17 +00:00
jenkins-bot 0bb47ce2e2 Merge "styles: Remove `linear-gradient` hack for non-supported browsers" 2022-07-20 23:40:23 +00:00
jenkins-bot 966975ea2c Merge "styles: Replace IE hack `list-style: none none`" 2022-07-20 23:36:07 +00:00
Volker E d365148f8d styles: Replace IE hack `list-style: none none`
Hack has first been introduced in I7d4b075ac90 more than 4 years ago.
It has been introduced to tackle IE <=8.

Bug: T306486
Bug: T308344
Change-Id: Ie84a177f79d226be98298a42ebfdd447e33a1372
2022-07-20 22:20:15 +00:00
Volker E 46514f2d2e styles: Remove `linear-gradient` hack for non-supported browsers
`linear-gradient` hack was necessary for browsers, that weren't
supporting SVGs.

Bug: T306486
Bug: T308344
Change-Id: Ie61ba7955ece62015436d2aee44a66bacf42e552
2022-07-20 12:40:41 -07:00
jenkins-bot 22969cb39d Merge "styles: Remove IE9 Flexbox fallback" 2022-07-20 16:45:37 +00:00
jenkins-bot 02451be660 Merge "search: Mark App.vue as being compatible with Vue 3" 2022-07-20 16:38:34 +00:00
jenkins-bot caf0221164 Merge "styles: Replace `@top-margin…` with `@margin-top…` variable names" 2022-07-20 16:38:32 +00:00
Volker E 2d0428b02a styles: Remove IE9 Flexbox fallback
IE9 is out of basic supported browsers, so removing this fallback.
Also using “Flexbox” as standard term in comment.

Bug: T306486
Bug: T308344
Change-Id: I6fcb0c4b54fea3d05593ae294c05e046131c93d2
2022-07-20 08:13:00 -07:00
Volker E cffd494107 styles: Unify on standard external link icon
Unify on using standard OOUI 'linkExternal' icon, which is directly
replacing Vector's image without relying on ResourceLoader.
Please note that the icon features standard link color `#36c` which is
implemented in a later step. Due to the small icon size and the fact
that current external link icon is also not using the legacy color, this
seems acceptable to move forward with.

Also using relative `em` instead of `px` to support user text zoom
capabilities and introducing a `@size-indicator` variable to be replaced
by WikimediaUI Base variables later.
Alternative to I49de3bfff45.

Replacing images and image names to make quicker lookup with icon
collection possible future-facing.

Note that CSSJanus is flipping the `ltr` string in the background image
rule to `rtl`, therefore making sure that both icons are available.

Bug: T261391
Change-Id: Ibd15517f3adf06010807901e8fb3299e2046a473
2022-07-20 04:41:14 -07:00
Translation updater bot fce9cfc652 Localisation updates from https://translatewiki.net.
Change-Id: Ia4c23a2bc3e02d00e548aafc185b2d1bdaad04ac
2022-07-20 08:29:59 +02:00
Roan Kattouw 21b9dda2a2 search: Mark App.vue as being compatible with Vue 3
This doesn't change any behavior, it just suppresses a compatibility
warning and ensures that future changes to this file won't introduce
code that relies on Vue 2 compatibility features.

Change-Id: Id15af7d5d5035f59dc8f402f00d8f7f0d73a77f7
2022-07-19 16:23:06 -07:00
Jan Drewniak d709bb5606 Update to 4ab2b1bf: Refactor Vector tabs layout
Removes a height:100% rule that was causing a shift in layout.

Change-Id: I7b29ba201e9937174852ba0d7919fd65e530851f
2022-07-19 17:24:05 -04:00
Volker E 0c7cc69e30 styles: Replace `@top-margin…` with `@margin-top…` variable names
Bug: T313243
Change-Id: Ibdcc50d2a67074bc7b3f28c58baf73ad39db922d
2022-07-19 12:16:28 -07:00
Volker E 048e40d0bf styles: Remove divider image fallbacks for now non-basic support browsers
Removing old PNG divider fallbacks, which were included for IE9, old
Firefox and Chrome browsers and are not mission critical even when not
rendered to unknown browsers.

Bug: T306486
Bug: T308344
Change-Id: I8a6622237a1cbb8116930a12e632329618d5c291
2022-07-19 18:29:09 +00:00
Jan Drewniak 4ab2b1bff1 Refactor Vector tabs layout for reduced size & complexity
Fix for iOS Safari 13 & 14 (T309223):
- Replaces flex-box layout from the top-level #right-navigation
  and #left-navigation tab elements with floats.
  Then for vertical alignment, sets the child <li> elements and
  <a> elements to inline block.

Opportunistic refactor (T308344):
- Moves the font-size rules to top-level #left/right-navigation,
  but leaving them as-is for legacy Vector.
- Removes a (seemingly) unnecessary `display:none` rule from
  Vector 2022, which previously applied to H3 labels in the
  sidebar, which are no longer targeted by the styles in
  MenuTabs.less.
- Removes an unnecessary selector and duplicated rules from
  ArticleToolbar.less

This change fixes a flexbox issue on iOS Safari 13 & 14, but also
reduces the CSS bytesize of the skins.vector.styles module by
0.9kB (uncompressed), from 54.2kB in the previous commit to
53.3kB with this commit.

Expected visual changes:
* The tab underline now overlaps with the toolbar underline, and text
pushed down on certain tabs
* The variant tab is now equally spaced
* Right navigation tabs slightly shifted to the right

Unexpected visual changes:
* More menu shifts to the left [see note at top of commit, will be
fixed in a follow up]

NOTE: this introduces a visual regression in the mobile viewport in that
the more menu.
Given this viewport is still experimental, after talking to Jan
we agreed to address this in a follow-up.

NOTE: Update addresses the reason for revert 5599cf2 and compatibility
with CSS Grid layout by adding a clearfix (display:flow-root)
for #right-navigation and #left-navigation elements inside toolbar.

Bug: T309223
Bug: T308344
Bug: T312212
Change-Id: I1482a81d16c53e0ba1977b0d98ba8c8a21362a6c
2022-07-19 13:26:49 -04:00
jenkins-bot 1ebf8c148d Merge "styles: Use default `border-width` and `border-style` vars" 2022-07-19 16:46:31 +00:00
jenkins-bot f7979192a8 Merge "styles: Apply `@background` var to Sidebar `background`" 2022-07-19 16:45:21 +00:00
jenkins-bot 9f7f292a6f Merge "styles: Rename `border-tabs` to `border-bottom-tabs`" 2022-07-19 16:45:17 +00:00
jenkins-bot 9a177a2f8f Merge "styles: Use mediawiki.skin.variables `transition-duration` vars" 2022-07-19 16:43:32 +00:00
jenkins-bot 22b4e4f31a Merge "styles: Replace distinct color var with standard variable" 2022-07-19 16:43:30 +00:00
jenkins-bot 3c8796ee04 Merge "Search: Use Codex and Vue 3 instead of WVUI and Vue 2." 2022-07-19 15:18:29 +00:00
Volker E 8d21f557c1 styles: Use default `border-width` and `border-style` vars
Bug: T313243
Change-Id: I8e40fbcff3d739318f6a53104128ed52ef8f294f
2022-07-19 05:11:39 -07:00
Volker E fca7726a17 styles: Apply `@background` var to Sidebar `background`
Also de-coupling border and background vars as they are aimed to
be fully replaced by tokens in future.

Bug: T313243
Change-Id: I5b7e46b6d2a0cc6975cb3c760645eaf2d5d30de5
2022-07-19 04:35:09 -07:00
Volker E b62f7fa4dd styles: Rename `border-tabs` to `border-bottom-tabs`
And use `@border-width-base` var.

Bug: T313243
Change-Id: Ic5febd54a6f28ef8998f4278589b08c6e5977d9f
2022-07-19 04:24:33 -07:00
Volker E 026b19925e styles: Use mediawiki.skin.variables `transition-duration` vars
Bug: T313243
Change-Id: Ic592dfe0a8711f33196d84a222ffa1d6214545e8
2022-07-19 04:19:08 -07:00
Translation updater bot d5ce552394 Localisation updates from https://translatewiki.net.
Change-Id: I82330f9f0f1a47e0ffda821057599dceed089cd4
2022-07-19 08:19:22 +02:00
Gergő Tisza bd57c4b851
Allow composer/installers plugin
`composer update --no-interactive` errors out if this flag is not set.
Setting it to true, as that was the status quo before Composer 2.2.

Bug: T298283
Change-Id: I9805e130a0fd8f9871693a08eec9a35194f19e4e
2022-07-18 19:24:19 -07:00
jenkins-bot cfe21914ce Merge "Revert "Refactor Vector tabs layout for reduced size & complexity"" 2022-07-18 23:46:12 +00:00
Jdlrobson 5599cf23af Revert "Refactor Vector tabs layout for reduced size & complexity"
This reverts commit 0c5e6ed9fe.

Reason for revert:  I was so focused on testing the current layout
I forgot to test the more important grid layout, which is being
deployed this week. The "from mediawiki" tagline is overlapping
with the tabs.

Change-Id: I3c53a8d243caf84e5c2766d730ced3d7da345026
2022-07-18 23:28:01 +00:00
jenkins-bot 1721b23ac2 Merge "Refactor Vector tabs layout for reduced size & complexity" 2022-07-18 23:01:07 +00:00
Jan Drewniak 0c5e6ed9fe Refactor Vector tabs layout for reduced size & complexity
NOTE: this introduces a visual regression in the mobile viewport in that
the more menu.
Given this viewport is still experimental, after talking to Jan
we agreed to address this in a follow-up.

Fix for iOS Safari 13 & 14 (T309223):
- Replaces flex-box layout from the top-level #right-navigation
  and #left-navigation tab elements with floats.
  Then for vertical alignment, sets the child <li> elements and
  <a> elements to inline block.

Opportunistic refactor (T308344):
- Moves the font-size rules to top-level #left/right-navigation,
  but leaving them as-is for legacy Vector.
- Removes a (seemingly) unnecessary `display:none` rule from
  Vector 2022, which previously applied to H3 labels in the
  sidebar, which are no longer targeted by the styles in
  MenuTabs.less.
- Removes an unnecessary selector and duplicated rules from
  ArticleToolbar.less

This change fixes a flexbox issue on iOS Safari 13 & 14, but also
reduces the CSS bytesize of the skins.vector.styles module by
0.9kB (uncompressed), from 54.2kB in the previous commit to
53.3kB with this commit.

Expected visual changes:
* The tab underline now overlaps with the toolbar underline, and text
pushed down on certain tabs
* The variant tab is now equally spaced
* Right navigation tabs slightly shifted to the right

Unexpected visual changes:
* More menu shifts to the left [see note at top of commit, will be
fixed in a follow up]

Bug: T309223
Bug: T308344
Bug: T312212
Change-Id: I77f3dd8e8ccfe3a1d9693746106d9783cc0d38b9
2022-07-18 22:34:11 +00:00
jenkins-bot 9cc22f9c7d Merge "Fix config overrides in SkinVectorTest." 2022-07-18 20:42:33 +00:00
Roan Kattouw ce77018b7c Search: Use Codex and Vue 3 instead of WVUI and Vue 2.
[Visual changes]
This should result in 9 visual regression failures relating to
increased height of search results and loading bar

[More details about change]
- Migrate search app from Vue 2 to Vue 3; update tests
  accordingly
- Remove dependence on WVUI and use Codex instead, via the special
  `@wikimedia/codex-search` package
- Update search app to use CdxTypeaheadSearch, which no longer
  takes in props related to the search client or fetch start/end
  instrumentation. Instead, directly use the restSearchClient
  and call fetch start/end events in the search app.
- Handle hideDirection in the search app/API response formatting
  code, not within the TypeaheadSearch component
- Handle showing/hiding the search button in the app
- Move the WVUI URL generator into Vector
- Update server-rendered search box styles to match design updates
  included with CdxTypeaheadSearch
- Replace references to WVUI with references to Codex
- Update values of various LESS variables to match Codex, and update
  searchBox styling to prevent jankiness when the searchBox is replaced
  with the Codex TypeaheadSearch component

The VectorWvuiSearchOptions config variable has been maintained and
will be updated to a code-agnostic name in a future patch.

Bug: T300573
Bug: T302137
Bug: T303558
Bug: T309722
Bug: T310525
Co-Authored-By: Anne Tomasevich <atomasevich@wikimedia.org>
Change-Id: I59fa3a006d988b14ebd8020cbd58e8d7bedbfe01
2022-07-18 12:54:47 -07:00
Volker E d4b205e149 styles: Replace distinct color var with standard variable
To safely looking forward to standard Codex tokens.

Bug: T313243
Change-Id: I3ed5dedab2b5f2edc2b1da13d07e21b77791f08a
2022-07-18 11:17:16 -07:00
Jan Drewniak c9c5c9e5a4 Followup to 33a6fb6 - remove is-title-above-tabs from template
The configuration for this feature was removed, so the conditional
in the skin.mustache template should be removed as well.

Bug: T311773
Change-Id: I6a8e671c5f08d9af73145b900398b185febb3bc7
2022-07-18 10:43:36 -04:00
Translation updater bot c0d752cbe0 Localisation updates from https://translatewiki.net.
Change-Id: I678ccbe7fe725add25b69444d8cf30f7d1092596
2022-07-18 08:17:51 +02:00
daniel bf67540431 Fix config overrides in SkinVectorTest.
Use overrideConfigValues instead of installMockMwServices and setMwGlobals.
This ensures that configuration overrides are handled consistently.

This also fixes a data provider that relied on a service, which causes
the test to fail when not run via the pgpunit wrapper.

Depends-On: I898927717ce961d98617a7fcd9c7fa8e19bec412
Change-Id: I6354fa39e1e9adf4be6eb6b26db82b8f106c593e
2022-07-16 16:05:16 +00:00
Translation updater bot cf3d3b453f Localisation updates from https://translatewiki.net.
Change-Id: I8a640a80e707da91be15407167930726098db3f9
2022-07-15 08:52:00 +02:00
jenkins-bot 3369c7e259 Merge "styles: Remove obsolete variable" 2022-07-14 16:03:45 +00:00
jenkins-bot 3aa6c7baf1 Merge "Move code for adding sticky header class to SkinVector22.php" 2022-07-14 15:22:49 +00:00
Volker E a651d5e86b styles: Remove obsolete variable
Following-up Idf943449b5e4.

Bug: T308344
Change-Id: I06588d42e3e5c95248886df33ddda45d4f1eaf1f
2022-07-14 07:21:12 -07:00
Translation updater bot a15d652b4a Localisation updates from https://translatewiki.net.
Change-Id: I77f415079a652c4e4d11e55a16dfb6badc1d8bc2
2022-07-14 08:50:40 +02:00
Translation updater bot 084956980c Localisation updates from https://translatewiki.net.
Change-Id: I413cf595ccc623aec15cff4096bc688009907fb5
2022-07-13 08:19:42 +02:00
Translation updater bot 1e99e24c96 Localisation updates from https://translatewiki.net.
Change-Id: Ibff5edcec16c47f01adda3b1483211d4ea4bf6dc
2022-07-12 08:17:27 +02:00
jenkins-bot 1be236aa5a Merge "TOC: CSS clean up and spacing fix" 2022-07-11 21:05:05 +00:00
Jon Robson a3905e9acd CSS cleanup: Revise CSS that is no longer needed per FIXME guidelines
Bug: T311773
Bug: T308344
Change-Id: Idf943449b5e4358749be47435b3032215e533353
2022-07-11 15:43:44 +00:00
Ed Sanders e2d70c383e Move code for adding sticky header class to SkinVector22.php
Per the comment at the top of the file, much more of this code
needs to be moved to SkinVector22.php, but this is causing a specific
regression, so can be moved now.

Bug: T312782
Change-Id: Ief7581782f1e4eefc7474cceb81830783dff99a8
2022-07-11 16:11:58 +01:00
Translation updater bot 88b7d9534a Localisation updates from https://translatewiki.net.
Change-Id: I7cd613a6203858a2a2f8846db1c79944ac633a8c
2022-07-11 09:52:34 +02:00
jenkins-bot 4df9e30757 Merge "Restore #siteSub font size" 2022-07-08 21:35:22 +00:00
bwang 42f863a936 TOC: CSS clean up and spacing fix
- Update TOC bottom padding to match spec in T304166.
  Before (30px): https://phabricator.wikimedia.org/F35312302
  After (20px): https://phabricator.wikimedia.org/F35312299
- Rearrange/combine some selectors in TableOfContents.less
- Delete some unnecessary styles/selectors
- Rename variables in TableOfContents.less

Change-Id: Ifffc434dcab4256a0c3ae8faf43a342935b820ff
2022-07-08 19:36:19 +00:00
bwang f0955e8ae3 Restore #siteSub font size
Bug: T311421
Change-Id: I9c6d66f91c071a23e02d646ace143f9605354eae
2022-07-08 19:26:03 +00:00
jenkins-bot ccbfa4c895 Merge "[Storybook] Fixes state of various components" 2022-07-08 19:17:26 +00:00
Jon Robson c8d2c6e460 [Storybook] Fixes state of various components
Change-Id: Icd3fef87485aaa7abc2f10534ccdc8960ef06f1d
2022-07-08 11:36:43 -07:00
Clare Ming c18c9856b5 TOC scrollbar should not fade
Bug: T311436
Change-Id: I50e2d82982515f045596c1a19dd7f9932cde25ef
2022-07-08 13:03:39 -05:00
Translation updater bot 189b953096 Localisation updates from https://translatewiki.net.
Change-Id: Id4cd63a452d170e8fbea05ef8619ff14ddfbc366
2022-07-08 08:54:58 +02:00
Jon Robson 2a4ac3152b Move Vector menu class logic into Menu mustache template
Cleaned 'vector-menu' in SkinVector file, updated
includes/templates/Menu.mustache and includes/templates/legacy/Menu.mustache.

Bug: T290281
Change-Id: I7286fa82abfd437a228b9ac07ac781210d7cd98f
2022-07-07 12:34:23 -05:00
Translation updater bot f9676bda10 Localisation updates from https://translatewiki.net.
Change-Id: Iaed5d20f947ee04a5026f4f4a2494e03fe8fea44
2022-07-07 08:52:58 +02:00
Jon Robson 33a6fb6028 Layout: Title should always be above tabs
**UI CHANGES**
- This change will result in expected UI changes so will flag problems
with Pixel.
- Before merging please confirm Pixel reports 31 passed, 47 failed
- After merging, we should update LocalSettings.php to reset these
changes.

Bug: T310054
Change-Id: Ib35c6bfa5493f7dc81b63c42e7fedb8f1e47226b
2022-07-06 15:25:42 +00:00
jenkins-bot a975f920c4 Merge "Layout: Fixes table of contents alignment issues" 2022-07-06 12:57:18 +00:00
Translation updater bot 31733c9682 Localisation updates from https://translatewiki.net.
Change-Id: I4753d1a33da6fd4bfaaf77cd0987ebe2c3036370
2022-07-06 10:20:20 +02:00
Jon Robson e8130d6628 Layout: Fixes table of contents alignment issues
This patch also adds some grid variables to be reused

Bug: T311793
Change-Id: Ib985e929b5ff013dfe9dcff1d0f33cebc24bbed6
2022-07-05 21:11:47 +00:00
Translation updater bot 43677cfe63 Localisation updates from https://translatewiki.net.
Change-Id: Iac833fc63b1901aaf8e286b8a32b847325b880ba
2022-07-05 08:40:34 +02:00
Translation updater bot 70721d89fd Localisation updates from https://translatewiki.net.
Change-Id: I0631e040519756ba9d88e4de6700bf14e6378973
2022-07-04 08:24:49 +02:00
jenkins-bot 197fab6905 Merge "Remove tablet specific styles for collapsed TOC, and misc CSS clean up" 2022-07-01 17:53:35 +00:00
bwang a84549f243 Remove tablet specific styles for collapsed TOC, and misc CSS clean up
This patch also fixes a regression for non grid layout Vector on tablet viewports when the sidebar and collapsed TOC is open
https://jmp.sh/xZhkU6q

No pixel regressions

Change-Id: Ic371f9b7ddd017af835565834e26a65ad3c2afc8
2022-07-01 15:25:34 +00:00
Jon Robson d8a66f0d49 Layout: Fixes content alignment issues
Bug: T311793
Change-Id: I256750d546e2ab818bca1f153a2b6a675db79a54
2022-07-01 14:54:10 +00:00
Translation updater bot 9ef3149c90 Localisation updates from https://translatewiki.net.
Change-Id: I52e2aa92d0b2e75ea75265bc0ed8e5b183690e20
2022-07-01 08:56:19 +02:00
Jon Robson bcb6ca36ba Layout: Fixes header margin between search and user links
Restore header margin between search and user links, as its
still needed for grid (Fixes F35282398)

Bug: T303484
Change-Id: Ie8cf4adcadff430ebfc675029635e6c22061b238
2022-06-30 16:03:28 -07:00
Jdlrobson e16a8e4775 Revert "Layout: restore sticky toc behavior by adding additional TOC container"
This reverts commit 3a26cc220c.

Reason for revert: Pixel flagged a UI regression relating to this change https://phabricator.wikimedia.org/F35291665

Change-Id: Id0b3d13da7dfbd8a55605e9f1fae157fe45abd2f
2022-06-30 22:53:19 +00:00
bwang 3a26cc220c Layout: restore sticky toc behavior by adding additional TOC container
Fix sticky behavior changed by impacted by e23fc1f

Change-Id: I7ead5e1d5954f772a533e1116f8c55d2d9cfd143
2022-06-30 21:40:14 +00:00
Jon Robson 615181154c Layout: Grid columns are restricted to desktop views
On tablet, where the table of contents is hidden, the
sidebar should take up the full screen when open.

Fixes Pixel regression
MediaWiki_Test_vector-2022_sidebar-open_0_html_1_tablet.png

Bug: T303484
Change-Id: Ie0aa9f661a652e137d691a1fa4b05e69f0c5f8ab
2022-06-30 20:30:20 +00:00
bwang e23fc1fe11 Grid: fix footer styles
Fixes https://phabricator.wikimedia.org/F35289862

Change-Id: If14bfb357d077ebd3886ce7290f0d46d19588dc6
2022-06-30 13:34:25 -05:00
jenkins-bot 9d7b62b85d Merge "Layout: Use sibling selectors rather than adjacent sibling" 2022-06-30 15:10:58 +00:00
Jon Robson 79403a87e3 Fixes Content sub unreadable in Vector 22
Bug: T311564
Change-Id: Id9c3693796a197f4cacf6fee902b553ba077dc71
2022-06-30 00:52:24 +00:00
Jon Robson 9ac4fbb165 Layout: Use sibling selectors rather than adjacent sibling
Fixes MediaWiki_Main_Page_vector-2022_0_viewport_1_tablet.png
UI regression

Additional change:
- Remove inactive selector - nothing matches this media query

Bug: T303484
Change-Id: I25a21ed54189dd1ca371a0755eb4d726b20f965f
2022-06-29 23:12:42 +00:00
bwang 73ecf0f4f3 Refactor some max-width media queries to use min width
Bug: T310536
Change-Id: I900c2446b64533775b37d6e0a0ce781ab0ff890a
2022-06-29 18:09:19 +00:00
jenkins-bot e952a051c3 Merge "Cleanup ArticleToolbar grid styles" 2022-06-29 17:34:00 +00:00
bwang fabd2d6579 Cleanup ArticleToolbar grid styles
Change-Id: I0a0444cbbd460340b7bf000535d4cca252e58f2f
2022-06-29 11:19:38 -05:00
Jon Robson 257430ec13 Layout: Fix footer margin
Since CSS grid uses row-gap we need to decrease
the margin we used in the legacy layout to keep these
the same

Bug: T303484
Change-Id: Ib28f0d5ee0afbb809591c99ef18cd3cbecf1f800
2022-06-29 08:33:36 -07:00
jenkins-bot 80bcd7fef3 Merge "Grid: Add table of contents to grid" 2022-06-29 15:16:42 +00:00
Translation updater bot 17cf0d78df Localisation updates from https://translatewiki.net.
Change-Id: I3286dcf13e223c53a5d17d8c91b439f2642cace5
2022-06-29 08:36:56 +02:00
Jon Robson 11618b5d81 Grid: Add table of contents to grid
Bug: T303484
Change-Id: Ic854b34b739b59e2d1efd864a711c961548f079f
2022-06-29 00:00:06 +00:00
bwang 8a88f61e89 Introduce media query breakpoint variables and replace all media query usage with new variables
Pixel shows 15 regressions, these are expected changes that are
fixing issues on specific viewports that fixes the following:

[At exactly the tablet breakpoint]
* the more menu dropdown was being
shown at the same time as the other menu items, resulting in duplicates
(see https://phabricator.wikimedia.org/F35285379)

[At exactly the desktop breakpoint]
* The table of contents AND the
table of contents toggle button to the left of the title were showing
(see https://phabricator.wikimedia.org/F35285392)
* The sticky header was not showing
* The fly out table of contents was showing instead of the sidebar
table of contents on scroll
* The top of the sidebar is brought into alignment with the tabs
(see https://phabricator.wikimedia.org/F35285408)

Bug: T310536
Change-Id: I6e870a032c8ba4ec003d00ff3f91732aaa2f38b0
2022-06-28 23:19:52 +00:00
bwang 4ab798441e Refactor SkinVector to use Hooks::updateMenuItems code to process menu data
SkinVector and Hooks both had code to add classes and handle Vector specific template data. This patch simplifies the way we handle menu data to always use Hooks:updateMenuItem. This has an additional side effect of removing instances of mw-ui-icon-before.

Bug: T306628
Change-Id: I73514a0eada4d92705b70e7c2ebd91092fc12544
2022-06-28 21:53:51 +00:00
jenkins-bot f83e53d8a4 Merge "Layout: Align content with hamburger icon" 2022-06-28 18:16:28 +00:00
Translation updater bot 0ab849a4d3 Localisation updates from https://translatewiki.net.
Change-Id: I7fd113437aa392307fcacdc96ebde3fee872abfe
2022-06-28 08:42:54 +02:00
Jon Robson 82f0433a11 Layout: Align content with hamburger icon
Content should always be aligned with the hamburger icon in the
new design between the tablet and desktop breakpoints.

Fixes: F35282438

Bug: T303484
Change-Id: I15215703d6392cd69ec57212d25c9a52149a6ac0
2022-06-28 00:07:34 +00:00
jenkins-bot 63e6daeb53 Merge "Fix table of contents when sidebar is open" 2022-06-27 23:36:00 +00:00
Jon Robson 89d9cf76b0 Remove hover and focus states on article toolbar links
Bug: T310886
Change-Id: I3b75d461ff0298e1ca3707e2cf4e79fd3db6497a
2022-06-27 22:26:03 +00:00
Jon Robson 393928a280 Fix table of contents when sidebar is open
Bug: T309807
Change-Id: If370246d13984981f4c3477fda2b2dce45337d91
2022-06-27 15:01:18 -07:00
jenkins-bot a47f46009e Merge "Attach VE to `#content` while title-above-tabs feature is disabled." 2022-06-27 20:15:35 +00:00
Jan Drewniak 05a1c330fe Attach VE to `#content` while title-above-tabs feature is disabled.
Limits the usage of the `data-mw-ve-target-container` attribute,
which changes the position of VE, to be enabled only when the
title-above-tabs feature is enabled.

Bug: T310197
Change-Id: I846135a88acf713bed608ad4f147f7602ce7cc2b
2022-06-27 15:44:19 -04:00
Jon Robson 6efcf775c0 Technical: Use unambigious menu template
Follow up to 49c8b5f514
Our PHP parser resolves >Menu to the parent directory which
differs from the frontend Mustache library.

Best to have different names for these files to avoid this problem.

Bug: T311319
Change-Id: Iea708718a0b928c4902dc7bac0c5ee304b89f961
2022-06-27 12:29:03 -07:00
jenkins-bot a34b564192 Merge "Layout: Don't hide footer < 1000px when sidebar closed" 2022-06-27 15:26:21 +00:00
Translation updater bot ed0fd37d03 Localisation updates from https://translatewiki.net.
Change-Id: Ie5b4b4c82db8f8537f285b4694ea55bf8a4f94c4
2022-06-27 08:20:27 +02:00
Jon Robson 5beadc4bc2 Layout: Don't hide footer < 1000px when sidebar closed
The 'mw-workspace-container' class is present on both
the footer and the sidebar. The CSS rule should only hide
the latter.

When there is no table of contents on the page, and the sidebar
is closed, the content
should always span the grid columns and the sidebar container
closed.

Bug: T293443
Change-Id: I852b9024fbd21339b7c78dbb4deba811ab17c7e7
2022-06-25 00:03:41 +00:00
bwang 61e723c541 TOC: Ensure TOC spacing is correct when grid is enabled
Fix usage of CSS calc

Change-Id: I6dcf3751a4b478a14d8052a70720e138238203d3
2022-06-24 23:09:50 +00:00
jenkins-bot 0a00ad5b40 Merge "Revise margin collapsing rules with new layout" 2022-06-24 16:25:54 +00:00
Jon Robson ec6b6ebd9a Revise margin collapsing rules with new layout
Follow up to 97783e5

Bug: T311283
Change-Id: Ia0581713fd182b9236e398a2453efd06ce8b9f1f
2022-06-24 15:55:08 +00:00
Translation updater bot 09142a87c1 Localisation updates from https://translatewiki.net.
Change-Id: I9e478b74074ef6c03a868fc1ab507d9066f7545f
2022-06-24 09:34:31 +02:00
Jan Drewniak 6e96a8e936 Rename `data-ve-target-container` attribute to `data-mw-ve-target-container`
Updates the data attribute for placing VE on the pages.

Bug: T310197
Depends-On: Ia6f87535f11ccc7aadb26b7dd9e1ac8a867c377c
Change-Id: I081d5e23a15902e1429e68ac4ae191e498e6aba6
2022-06-23 10:53:44 -04:00
Translation updater bot 770da51809 Localisation updates from https://translatewiki.net.
Change-Id: I579271f25d92dafdce7bf179a78247c05ccd17f9
2022-06-23 09:15:36 +02:00
Jan Drewniak 97783e5bd8 Use the data-ve-target-container attribute to position VE
Uses the data attribute `data-ve-target-container` to determine where
on the page to insert VisualEditor. Also moves the #siteSub back into
the #bodyContent container. This makes the SiteSub match the font-size
it had in legacy Vector & positions the VE toolbar between the tabs
and the tagline.

Bug: T310197
Bug: T310839
Depends-On: Idae6755c90eacaab1a9daa88c6e28850d427810c
Change-Id: Idb2a743c93316786d6d36e1989cf6620a6092281
2022-06-23 00:39:19 +00:00
Jon Robson 49c8b5f514 [Fix] Adjustment to legacy menu templates
Follow up to c5cfd4d

1) Partial paths are incorrect
These are not a problem with our current Mustache template
parser but could break with any changes in our PHP implementation

2) Add dedicated class to legacy menus

On the longer term this will allow us to further separate the
old and new CSS.

Change-Id: I056b033855c28f919a4af99784620503f10b9dcb
2022-06-22 22:42:39 +00:00
jenkins-bot bf117d1fc8 Merge "Restore sticky header class and update TOC styles" 2022-06-22 20:34:07 +00:00
Clare Ming 75cc9bdcd9 Restore sticky header class and update TOC styles
Bug: T311170
Change-Id: Ib12b6f79a20b2a25b49110e5a7de59d199917dc9
2022-06-22 14:46:07 -05:00
Jon Robson 25c3fc1863 Table of contents: Cached HTML is no longer a problem
Bug: T307900
Change-Id: Ic03bc15b8a15d6d095130c8346c399a2ac93d955
2022-06-22 18:17:52 +00:00
Jon Robson e1942cec4e Fix sticky header edit icons during A/B test init
- Add test case for T310750

Bug: T310750
Change-Id: Ie52a7227f337dd6cdb0ab441986aa2be6139f949
2022-06-22 09:38:19 -06:00
Translation updater bot ed5de2cd99 Localisation updates from https://translatewiki.net.
Change-Id: I71deecf87866093852bf0042bfd4c204a39f2ede
2022-06-22 08:15:30 +02:00
bwang f473129485 Add support for floating TOC lower down the page
This patch only handles the first case listed in the task description

Bug: T308689
Change-Id: I4e7dbded7a8206633a98653aaf4ced3fd2b6f69d
2022-06-21 16:02:11 +00:00
Translation updater bot 8a9eebad06 Localisation updates from https://translatewiki.net.
Change-Id: I4b69874e18663515ecfd07d571c86b139cbefbbe
2022-06-21 08:34:18 +02:00
Translation updater bot 5db783c04c Localisation updates from https://translatewiki.net.
Change-Id: I17b6c78abc6642dc7e45104a547ff878414a1837
2022-06-20 08:20:10 +02:00
jenkins-bot 42127622dc Merge "Show scrollbars in sticky TOC" 2022-06-17 15:57:37 +00:00
bwang f8c910ed09 Update a11y config to hide central notice
Change-Id: Iabc635d909724c0a59c1dba73ed59c33df1b44ec
2022-06-17 10:33:47 -05:00
jenkins-bot 86f81f968b Merge "Cached CSS is no longer a problem" 2022-06-16 18:21:46 +00:00
jenkins-bot 0fff66b638 Merge "Add a URL parameter to edit links in the sticky header" 2022-06-16 18:00:37 +00:00
Jon Robson 64ee3686b8 Cached CSS is no longer a problem
The !important is retained for cached HTML and will be retained
for another release cycle

Cached HTML will continue to be a problem until next deploy. The CSS
cleanup will thus be fixed in a follow up
(I47b7a0bc9c5dad5451f1dbb5e32e513643a1534b)

Bug: T307900
Change-Id: I47b7a0bc9c5dad5451f1dbb5e32e513643a1534b
2022-06-16 17:48:29 +00:00
Clare Ming b6e76eb797 Show scrollbars in sticky TOC
Bug: T310540
Change-Id: I36af416901f9fde268f59a3e3fd690b743748514
2022-06-16 10:19:04 -06:00
Translation updater bot 27e81c5e4d Localisation updates from https://translatewiki.net.
Change-Id: I52e774c46460550df4fe031d8ddbd229bc148e39
2022-06-16 09:27:11 +02:00
David Lynch 734902811a Add a URL parameter to edit links in the sticky header
Briefly add it onto the originals when the click is being proxied so
that VE can pick up on it.

Bug: T309364
Change-Id: I871494b6e783018b1433f294e09b0d53dded6c3d
2022-06-15 18:20:59 -05:00
Clare Ming 536e53af7a Minor adjustments to collapsible TOC
Bug: T307900
Change-Id: Iec0c5c6e3dbede85e549fc9558b9d5c7be4fa10d
2022-06-15 09:56:27 -05:00
Translation updater bot 0b2c4b7faa Localisation updates from https://translatewiki.net.
Change-Id: I1e1af93ec72a2726917acf1bea507b9f1ade9a79
2022-06-15 08:43:54 +02:00
jenkins-bot def2a366bc Merge "[Regression] Revert border color of page title." 2022-06-14 22:20:23 +00:00
jenkins-bot 27a23465da Merge "Fix sticky header searchbox width and misc searchbox CSS cleanup" 2022-06-14 22:01:52 +00:00
bwang b6e7b5e880 Fix sticky header searchbox width and misc searchbox CSS cleanup
Bug: T310366
Change-Id: Id403f818b19747e3279df3112d93301f31323f9d
2022-06-14 15:58:53 -05:00
jenkins-bot 0f0dfd532e Merge "Match default config of TOC to pilot wikis" 2022-06-14 17:23:54 +00:00
jenkins-bot 8d41918b6d Merge "Update checkbox.js comments" 2022-06-14 16:49:56 +00:00
Translation updater bot a9e1920cb3 Localisation updates from https://translatewiki.net.
Change-Id: Ifb00c90d693d0d604480add66f30c18df1315d41
2022-06-14 08:51:38 +02:00
Jan Drewniak 011a7b273b [Regression] Revert border color of page title.
Reverts the border color of the page title introduced in
I5d807f09bfbbceaded756daa78dbb023efcc91dc

Bug: T310533
Change-Id: I877f91bcd4c0915cc495b5237a53bda6ad971497
2022-06-13 14:38:09 -04:00
Clare Ming 6a0907a70b Match default config of TOC to pilot wikis
Bug: T309683
Change-Id: I7f1e727fbf06655daf2b6a359580fc6bf10ca1b9
2022-06-13 10:44:22 -06:00
bwang 61c571ffb5 Update checkbox.js comments
Change-Id: I44d2087fefb28adf20c7ff938cff411cb0678a7e
2022-06-13 11:32:34 -05:00
jenkins-bot d529efeaf8 Merge "Follow-up: Update menu label elements" 2022-06-13 14:37:25 +00:00
Translation updater bot f607dad3bc Localisation updates from https://translatewiki.net.
Change-Id: Ib529f9bef80e6bea9f421e16a20173a17a7c91f8
2022-06-13 08:31:19 +02:00
Jon Robson 5fdd66fa3b Disable table of contents toggle on VE activation
While the table of contents is not updated by VisualEditor
we should hide it.

Bug: T307900
Change-Id: I246fbe0069329ef78735147b8d3f280433155158
2022-06-10 15:39:21 -07:00
bwang 93e8cfcd90 Collapse ToC into page title at narrow view ports with CSS/template changes only
Bug: T307900
Change-Id: I72607ec9d8b46401468de5815cf47dac9f4612a5
2022-06-10 15:49:06 -06:00
jenkins-bot 98cffb3f19 Merge "[Refactor] Generalize checkbox hack code" 2022-06-10 21:39:05 +00:00
jenkins-bot 677684d839 Merge "[Refactor] Separate sidebar persistence code from checkbox hack code" 2022-06-10 21:37:49 +00:00
Jon Robson 10810ec1da [Refactor] Generalize checkbox hack code
Allow it to apply to any appropriately marked up checkbox hack
element.

Change-Id: Ic3770877ee8e92574900715413a51acc964741be
2022-06-10 13:56:56 -07:00
Jon Robson de0729e604 [Refactor] Separate sidebar persistence code from checkbox hack code
Change-Id: I5d7d8897f656419a71b1327c37e88c9dd7f0767c
2022-06-10 13:55:22 -07:00
Translation updater bot 6f56c7b77c Localisation updates from https://translatewiki.net.
Change-Id: I3dd252157662f63d0ec37a6ee582adc45f086f2f
2022-06-10 08:53:23 +02:00
jenkins-bot 268ec7795f Merge "Hide TOC in print mode and clean up other print styles" 2022-06-10 00:12:45 +00:00
bwang e9ea4cee29 Hide TOC in print mode and clean up other print styles
Bug: T306719
Change-Id: I706225e01d1cc09bd387a008b56d9c2dcf8bdf4f
2022-06-09 19:15:27 +00:00
Ed Sanders 10322dbd29 skin.json: Fix 'tittle' typo in documentation
Change-Id: I7e27ae3dcc1ade05b00c817a948ec271bc437fc9
2022-06-09 18:50:33 +00:00
Translation updater bot 9e6db341d2 Localisation updates from https://translatewiki.net.
Change-Id: I9cf24a68deb46cfa79283d47febbae4af4459100
2022-06-09 08:19:17 +02:00
bwang d6e1dbd843 Move menu border style to legacy
Bug: T309398
Change-Id: Idfd88d98cb51ee35a359eef90ed54bc0a9feea87
2022-06-08 21:23:23 +00:00
jenkins-bot d91c921daa Merge "Make footer take up full width" 2022-06-08 19:33:12 +00:00
Jan Drewniak c5cfd4dce8 Restyle Vector tabs in modern Vector
Removes gradients from tabs (i.e. article toolbar) in new Vector, moving
the existing MenuTabs.less component into the skins.vector.styles.legacy module
and creating a new MenuTabs.less component for modern Vector.

Bug: T309398
Change-Id: I5d807f09bfbbceaded756daa78dbb023efcc91dc
2022-06-08 11:26:17 -07:00
Jon Robson c9fe4e83a1 Make footer take up full width
Bug: T293443
Change-Id: I0cea23fc6f7e013900211f10cc3da4066acf4d0c
2022-06-08 14:48:40 +00:00
Translation updater bot 2adf046c9a Localisation updates from https://translatewiki.net.
Change-Id: I741afd2d46911fe88a3529fcd2858664b1fef873
2022-06-08 08:29:57 +02:00
Jon Robson 664b6c5cc5 [Grid] Vector 2022 layout uses CSS grid
It gracefully degrades to a single column
layout on grade C browsers, IE11, and Safari 9.

Bug: T303484
Change-Id: Iaa3c1bee146dc39b1259a1ce712a29c6b22305d1
2022-06-07 17:23:08 +00:00
jenkins-bot 304027073a Merge "[Grid] Minor HTML restructure for grid" 2022-06-07 14:31:31 +00:00
Translation updater bot fb4ce31536 Localisation updates from https://translatewiki.net.
Change-Id: I2729abc4c140e55d59a06024c8953985bf8a9966
2022-06-07 10:03:34 +02:00
bwang 467d994123 Follow-up: Update menu label elements
- Update the modern menu template to avoid using aria-hidden on the `label` element, and avoid using a `label` element when no checkbox is present.
- Revert legacy menu template to use h3 elements


Bug: T301051
Change-Id: I6ab10e35f0d67d70877e55cca5a512c2af4cb972
2022-06-06 23:59:13 +00:00
Jon Robson a018a909d9 [Grid] Minor HTML restructure for grid
Make the sidebar and content siblings of the header element. This
will allow us to easily apply grid column and rows to these elements.

Bug: T303484
Change-Id: I0a91eddbddbe58781892eddb93edfc3d58777968
2022-06-06 14:58:20 -07:00
jenkins-bot 1bc1ead2e9 Merge "Hide central notice from a11y tests" 2022-06-06 21:51:56 +00:00
bwang 41997db7bf Hide central notice from a11y tests
Change-Id: I4c9a58642cdba94996cab82d5f699e398e858adc
2022-06-06 15:51:34 -05:00
Jon Robson e4aaf02ce8 [Grid] Move header rule into search rules
This will also apply to the grid layout so this seems a more
appropriate place, given the class relates to search.

Bug: T303484
Change-Id: Ib5b57fd948ecb5eefbf1d66e0e71045aed6e3102
2022-06-06 19:24:09 +00:00
Translation updater bot 556b32f326 Localisation updates from https://translatewiki.net.
Change-Id: Id47b25bfc527a0d9ba9b3e2e9700925cba811b79
2022-06-06 09:28:56 +02:00
Jon Robson 02fb90531b [Grid] Add TableOfContentsContainer
In preparation for grid work where the table of contents will
be moved into a new container.

Bug: T303484
Change-Id: I931d5148e314c1c05f0474b47be5efd7c166144d
2022-06-03 22:27:22 +00:00
jenkins-bot 3bc8b3a40e Merge "[Grid] Remove vector-layout-legacy selector from sidebar rules" 2022-06-03 22:05:34 +00:00
Jon Robson e801f917ae [Grid] Remove vector-layout-legacy selector from sidebar rules
These should actually be retained in the new design.

Bug: T303484
Change-Id: Ie1755e3cf5dec5da64615084ddc815fab7eb8bb1
2022-06-03 21:29:55 +00:00
bwang c45a4dd1e1 Add back search title to WVUI component
Bug: T291671
Change-Id: I30a917b4392256c0d23e57da882e0a1dc7b59562
2022-06-03 19:08:47 +00:00
Translation updater bot d75fd2d963 Localisation updates from https://translatewiki.net.
Change-Id: I998615f94051d56f7b000204a9d98044b6075131
2022-06-03 08:59:52 +02:00
Translation updater bot 148bc95ca0 Localisation updates from https://translatewiki.net.
Change-Id: I68209e71f2552bce17bc89abf220b55e0d2b7bd5
2022-06-02 08:17:16 +02:00
Jon Robson deb54f9452 Correctly hide the sticky header when it is not in use
When the  vector-sticky-header-enabled class is removed from the body
it means the feature is not enabled, it doesn't mean the sticky header
should be invisible.

Call the hide method instead, and move it out of the function given
its a side effect

Bug: T308343
Change-Id: I4ecd6524146f203af926847812e20275c9573cab
2022-06-01 19:07:49 +00:00
Jon Robson b8701a3b58 [Grid preparation] Restrict certain rules to old layout
Having a clean slate to work from will help with the development of
introducing the grid

Bug: T303484
Change-Id: I8fb9a9d958e4e73e8bfbf4b797cee1353c915db5
2022-06-01 17:24:47 +00:00
jenkins-bot 8c4ed23069 Merge "Adds tests for stickyHeader A/B test logic" 2022-06-01 16:22:13 +00:00
jenkins-bot 5bf70d7fbb Merge "Sticky header edit button A/B test bucketing (updated)" 2022-06-01 16:20:33 +00:00
jenkins-bot f94c86c3e0 Merge "Exclude from max-width via query string patterns" 2022-06-01 16:15:01 +00:00
jenkins-bot 54991e1d13 Merge "Remove unnecessary inner-tag whitespace and self-closing tags" 2022-06-01 15:05:50 +00:00
jenkins-bot 1f8a3c5318 Merge "i18n: Use correct direction for collapse Table of Contents" 2022-06-01 08:17:54 +00:00
Translation updater bot b208c352d9 Localisation updates from https://translatewiki.net.
Change-Id: I417af8b3001e4457fad0a1b9fbf9713a05a11f00
2022-06-01 08:22:34 +02:00
Sam Wilson 87e4ca9a21 Exclude from max-width via query string patterns
Add action=edit to the exclusions in $wgVectorMaxWidthOptions
and update the parsing of the query string values for that config
variable to accept a regex.

Bug: T307725
Change-Id: Iba526033d45e18cb340a2648378d3d90ef3ae3c6
2022-06-01 10:00:39 +08:00
Jon Robson b031247336 Adds tests for stickyHeader A/B test logic
Follow up to I3effbb3e5f0bb1c8663255936458e3849511dfca

Bug: T299959
Change-Id: I8703587a6e616c426638e44ca6dad12617f10ae7
2022-05-31 17:10:49 -07:00
Jan Drewniak d7e6690b52 Sticky header edit button A/B test bucketing (updated)
Adds behaviour for conditionally adding the edit button
to the sticky-header based on A/B test bucketing.

This behaviour depends on having the `$wgVectorStickyHeaderEdit` config
set to true for logged-in users:

    $wgVectorStickyHeaderEdit = [
        "logged_in" => true,
        "logged_out" => false
    ];

as well as an AB test configured with the following buckets:

    $wgVectorWebABTestEnrollment = [
        'name' => 'vector.sticky_header_edit',
        'enabled' => true,
        'buckets' => [
            'unsampled' => [
                'samplingRate' => 0
            ],
            'stickyHeaderEditButtonControl' => [
                'samplingRate' => 0
            ],
            'stickyHeaderEditButtonTreatment' => [
                'samplingRate' => 1
            ]
        ]
    ];

With that config, this change hides the sticky header for all users
except those in the stickyHeaderEditButtonTreatment bucket.

NOTE: This patch address the sticky header being visible on incorrect
namespaces when the AB test is enabled and the revert of
42b808738a.

Bug: T299959
Bug: T309370
Change-Id: I3effbb3e5f0bb1c8663255936458e3849511dfca
2022-05-31 15:58:35 -07:00
Jan Drewniak a3cef30154 Move page title above article toolbar menus
Moves the page's title above the article toolbar (i.e. tabs) based
on the VectorTitleAboveTabs config option. This feature remains
off by default, but can be accessed via the query parameter `vectortitleabovetabs`.

Removes the Navigation.mustache template since it's just a wrapper
for the sidebar + tabs elements, which, with this change, are placed
in different locations in the DOM and don't need a common parent element.

Bug: T303549
Change-Id: Id4816b753a1b2133c53c3b1d390b45631c704daf
2022-05-31 18:06:11 -04:00
jenkins-bot a6f5acd9de Merge "In max-width mode, constrain the width of page previews" 2022-05-31 15:29:26 +00:00
jenkins-bot 0a0bd88d9e Merge "Follow-up I1dee51009: Add url() to list-style-image" 2022-05-30 19:10:55 +00:00
Translation updater bot b7029084ca Localisation updates from https://translatewiki.net.
Change-Id: I5b4824e38db95b0dfe4a4f56590cfc5a23f6bbce
2022-05-30 09:26:28 +02:00
Sam Wilson 0ebae6c4ef In max-width mode, constrain the width of page previews
This allows the editing form to be wide, but makes sure that the
preview seen will more closely match how the page will end up
after being saved.

Bug: T307725
Change-Id: Ib2085eece69fe08b7fca4aaeacef66b26cdd5f16
2022-05-30 11:52:59 +08:00
Ebrahim Byagowi aebd782d75 i18n: Use correct direction for collapse Table of Contents
Collapse Table of Contents has incorrect direction for RTL, this fixes it.

Bug: T309478
Change-Id: I43f2d225aed7c3a74e35f8e72c1e261b39af9737
2022-05-30 02:37:10 +04:30
Ed Sanders 72d2653f59 Follow-up I1dee51009: Add url() to list-style-image
Bug: T309374
Change-Id: I91d690700cf82e315e98be7bfcadd8bdb4cc3450
2022-05-28 23:00:49 +01:00
jenkins-bot 8be6a96b7c Merge "Revert "Sticky header edit button A/B test bucketing"" 2022-05-27 18:30:19 +00:00
Jdlrobson 0df8d35b43 Revert "Sticky header edit button A/B test bucketing"
This reverts commit 42b808738a.

Reason for revert: The sticky header is now showing up in unexpected
places e.g. special pages.

Bug: T299959
Bug: T309370
Change-Id: Ie7f224d84440279ba28e031e13d05984c81a3ad4
2022-05-27 18:10:29 +00:00
Translation updater bot 088d49581b Localisation updates from https://translatewiki.net.
Change-Id: I16c8ff8e3e79b6723eb822c6331c11d535b06276
2022-05-27 10:29:24 +02:00
jenkins-bot 3c847290c5 Merge "Sticky header edit button A/B test bucketing" 2022-05-26 22:35:54 +00:00
Translation updater bot 24f078ce7c Localisation updates from https://translatewiki.net.
Change-Id: I87de623fdb6f2b61b70adb84c608f78a1b74acf3
2022-05-26 08:53:24 +02:00
Jan Drewniak 42b808738a Sticky header edit button A/B test bucketing
Adds behaviour for conditionally adding the edit button
to the sticky-header based on A/B test bucketing.

This behaviour depends on having the `$wgVectorStickyHeaderEdit` config
set to true for logged-in users:

    $wgVectorStickyHeaderEdit = [
        "logged_in" => true,
        "logged_out" => false
    ];

as well as an AB test configured with the following buckets:

    $wgVectorWebABTestEnrollment = [
        'name' => 'vector.sticky_header_edit',
        'enabled' => true,
        'buckets' => [
            'unsampled' => [
                'samplingRate' => 0
            ],
            'stickyHeaderEditButtonControl' => [
                'samplingRate' => 0
            ],
            'stickyHeaderEditButtonTreatment' => [
                'samplingRate' => 1
            ]
        ]
    ];

With that config, this change hides the sticky header for all users
except those in the stickyHeaderEditButtonTreatment bucket.

Bug: T299959
Change-Id: If252956bc530d8ce54eeda61f42a93ffa48255cb
2022-05-25 10:15:47 -04:00
Sam Wilson c32c64481d Use new ResourceLoader namespace
To fix Phan errors with the now-deprecated ResourceLoaderContext
class alias.

Bug: T308718
Change-Id: Ifd265d29cee5f8a68e7b3036deaf2ba2b6c49d2e
2022-05-25 10:36:40 +00:00
Translation updater bot fcead5e634 Localisation updates from https://translatewiki.net.
Change-Id: I357be001fe353a4c814fce44809d59e235cbfa3d
2022-05-25 08:34:35 +02:00
Volker E 06708ba198 Remove unnecessary inner-tag whitespace and self-closing tags
Self-closing tags are so XHTML. HTML5 allows them on some elements, but
doesn't require them. Cleaning up for consistency and for a few bits
saved to clients.

Change-Id: I781b8d79bbd5dd1ee75a167718964c1142ecfc5d
2022-05-24 14:46:37 -07:00
jenkins-bot dafe3c8fd4 Merge "Handle accessible labels differently for dropdown and portal menus" 2022-05-24 15:09:04 +00:00
Translation updater bot aea22d25e3 Localisation updates from https://translatewiki.net.
Change-Id: Ib1ee05c6d3ad1a8e48dee807d0754c54374f69ca
2022-05-24 08:27:23 +02:00
jenkins-bot 5ddebf96c8 Merge "Fixes Vector 2022 sidebar overlap when table of contents disabled" 2022-05-24 00:13:17 +00:00
jenkins-bot 501bdab2aa Merge "Normalise PHP namespaces used in Vector" 2022-05-23 23:30:34 +00:00
Jon Robson 4e67384131 Fixes Vector 2022 sidebar overlap when table of contents disabled
Bug: T308130
Change-Id: Ieec44e8f1657319962e2a7922d04186c260123fe
2022-05-23 23:13:29 +00:00
Mo Abualruz e46eef19d0 Normalise PHP namespaces used in Vector
- `MediaWiki\Skins\Vector\Tests` is now the prefix for all tests in the skin
- we followed PSR conventions of following folder structure after the prefix
- Optimize imports/use order
- update namespace in skin.json

Bug: T303102
Change-Id: Ib76374d81d973c83adfd6c8e7863ff6d797e655d
2022-05-23 09:32:40 +02:00
Translation updater bot 9d6d8e116d Localisation updates from https://translatewiki.net.
Change-Id: I64963ef6b5268dc7c9f79d552b63e62a226e4fc7
2022-05-23 08:19:38 +02:00
libraryupgrader 7d5398bf3e build: Updating composer dependencies
* mediawiki/mediawiki-codesniffer: 38.0.0 → 39.0.0
* php-parallel-lint/php-console-highlighter: 0.5.0 → 1.0.0
* php-parallel-lint/php-parallel-lint: 1.3.1 → 1.3.2

Change-Id: I58dd3aad02958d7dc1c031fb159f2951d5d744dd
2022-05-21 19:16:03 +00:00
libraryupgrader 80fc9dcace build: Updating dependencies
composer:
* mediawiki/mediawiki-phan-config: 0.11.0 → 0.11.1

npm:
* jsdoc: 3.6.7 → 3.6.10
* node-fetch: 2.6.1 → 2.6.7

Additional changes:
* Set `name` in package.json.
* .gitignore: Added .phpunit.result.cache (T242727).

Change-Id: Iac03b8d02dd1edf3707ea569779fadd77b2e1016
2022-05-20 11:41:53 +00:00
jenkins-bot e9cb96cde2 Merge "styles: Replace more deprecated mixins" 2022-05-19 23:27:07 +00:00
Translation updater bot 4f486fb883 Localisation updates from https://translatewiki.net.
Change-Id: I9058968b10e135f35ee761126cd34d5784e68108
2022-05-19 08:21:01 +02:00
Jon Robson f91c3cd5a8 Use upstream reduces motion skin option
The new accessibility rules default to on, so no need to list
it in skin.json but we need to remove the now duplicated style.

Depends-On: Ie1c6c1ba7263c232d874263fdae7427a5ec489f6
Change-Id: I92f622b92adb8735c38a4ebe56eaf5bfc4ae37bf
2022-05-18 14:29:05 -07:00
jenkins-bot 7761ed4aff Merge "Revert "Move a max-width Less variable up into variables.less"" 2022-05-18 18:50:50 +00:00
Jdlrobson 55b5283148 Revert "Move a max-width Less variable up into variables.less"
This reverts commit bf4d843d97.

Reason for revert: These variables were intended as local to layout.
Only layout stylesheet should have access to layout variables. The
risk of having this in the global variables file is that non-layout
rules can be added to components.

Change-Id: I91fd01ed5333555052c243e25d37cd30d6d9bef6
2022-05-18 15:12:59 +00:00
jenkins-bot ce8ddbe0ea Merge "build: Update eslint-config-wikimedia to 0.22.1" 2022-05-18 00:41:00 +00:00
jenkins-bot 336b8eefb7 Merge "build: Update stylelint-config-wikimedia to 0.13.0" 2022-05-18 00:40:09 +00:00
Ed Sanders bf494b89fd build: Update eslint-config-wikimedia to 0.22.1
Change-Id: I25e0cf131c7d2ea53d362f4836a451b68cd31366
2022-05-17 23:40:46 +01:00
Translation updater bot 73bae60258 Localisation updates from https://translatewiki.net.
Change-Id: I2d7f8513499ca866ad73c9d5383607bb08808a8f
2022-05-17 08:31:15 +02:00
Ed Sanders 4a8eba29df styles: Replace more deprecated mixins
* .transform-origin
* .list-style-image

Change-Id: I1dee510097c179d23c5cc2192c70ca006869f5d0
2022-05-16 23:25:44 +01:00
Volker E 7eb818543e styles: Replace deprecated Less `.transform()` mixin with standard CSS
Replacing Less mixin calls of `.transform()`, deprecated
since MW 1.37, with CSS property.

Bug: T308360
Change-Id: Ic965193782a447d34eac4bd19816a7b753c36d44
2022-05-16 23:24:53 +01:00
Ed Sanders 7f7d5c4ae5 build: Update stylelint-config-wikimedia to 0.13.0
Change-Id: I122005b6817cf1997002dbe7a1bcbd249c9842cb
2022-05-16 17:44:12 +01:00
jenkins-bot 36a4001a01 Merge "Move a max-width Less variable up into variables.less" 2022-05-16 09:06:47 +00:00
Translation updater bot 1cd446ba6b Localisation updates from https://translatewiki.net.
Change-Id: I8092c966745a44756b1f94a1c61d1df98ab5bb9b
2022-05-16 08:27:43 +02:00
Sam Wilson bf4d843d97 Move a max-width Less variable up into variables.less
This makes it accessible elsewhere (such as within WikiEditor; see
the dependent patch) without having to include
all of screen.less.

Bug: T307725
Change-Id: I3fda9886c27fe0b78cf5bd5647d7e497a3aaba0e
2022-05-16 13:15:00 +08:00
jenkins-bot dc2b25ac65 Merge "styles: Replace deprecated Less `.transition()` mixin with standard CSS" 2022-05-13 22:30:37 +00:00
jenkins-bot 1fe1942dff Merge "[Grid preparation] Add feature flag for grid" 2022-05-13 22:07:57 +00:00
Volker E 2adab440a5 styles: Replace deprecated Less `.transition()` mixin with standard CSS
Replacing Less mixin calls of `.transition()`, deprecated
since MW 1.37, with CSS property, but constituent properties.
This has been an outcome of recent discussions around design tokens,
which will be simpler to define, more modular, and better scoped. See
T304443 for further information.
Also clarifying, aligning comments.

Bug: T308351
Change-Id: Iab9d04c9a9f31f3842d076ce8fd8bf6e3534fc89
2022-05-13 20:37:22 +00:00
Nicholas Ray 8038c2e545 Add message for the desktop improvements project's talk page
Vector-2022 skin requires that a link to the desktop improvements page
is shown next to the "Preview" link in the skin preferences options.
Adding this message will enable that.

Depends-On: I4e944504f013344661d0c6f05896a4fc1fe8f4b4
Bug: T307113
Change-Id: I370d820e12e9517d11423977b2fabebaf7df428a
2022-05-13 09:59:54 -06:00
jenkins-bot 2cbb390edd Merge "styles: Replace deprecated Less `.box-sizing()` mixin with standard CSS" 2022-05-13 15:42:11 +00:00
Jon Robson d74890df63 [Grid preparation] Add feature flag for grid
Additional changes:
* Make the query string parameter optional and if not defined set it
to lowercase configuration name. I think this makes it more predictable
as some configuration flags are prefixed with vector and some without.

This has the following consequences:
languageinheader => vectorlanguageinheader
languageinmainpageheader => vectorlanguageinmainpageheader
languagealertinsidebar => vectorlanguagealertinsidebar
titleabovetabs => vectortitleabovetabs

Note since table of contents query string is used in the A/B test
I've kept that as tableofcontents for now.

Bug: T303484
Change-Id: Iaca026ef5f32836098dc3b6f0f18632fe84fa8d0
2022-05-13 15:21:52 +00:00
Translation updater bot 32069a75fe Localisation updates from https://translatewiki.net.
Change-Id: Ic4dcaa95037367c5103b34615f31c1756e28fab3
2022-05-13 08:29:40 +02:00
bwang 9e665f9034 Handle accessible labels differently for dropdown and portal menus
An issue was found in QA where certain browser/screenreader combos could not read `aria-labelledby`+`aria-label`. Instead, we avoid using `aria-labelledby` and the `label` element entirely and apply the accessible label directly to the `input`. This great simplifies our labelling and improves screenreader support, while also allowing us to hide the `label` element to reduce verbosity.
Because the `label` element is used differently in the portal menu, we use the `is-portal` variable to maintain the old markup for portal menus

Bug: T301051
Change-Id: I5a0f7d5d78838fabe561095b33176e7162b31aea
2022-05-12 22:11:22 +00:00
jenkins-bot a14228696b Merge "[Grid preparation] Use variables for selectors with state" 2022-05-12 21:51:34 +00:00
Volker E e4d8c573a9 styles: Replace deprecated Less `.box-sizing()` mixin with standard CSS
Bug: T306488
Change-Id: I299e50397c4bf6f99b9892e83c966fffadd24048
2022-05-12 13:41:30 -07:00
jenkins-bot 2924c9ec38 Merge "Omit ArticleToolbar in Navigation when title above tabs" 2022-05-12 20:41:06 +00:00
Jon Robson 2213963241 [Grid preparation] Use variables for selectors with state
The checkbox hack adds complexity to our layout rules as we must
describe elements based on their siblings. To make these long selectors
easier to reason with and reduce the risk of rebase conflicts as these
shift I'd like to make these variables.

Change-Id: Ie5ff163d0449778a7d343870187da7703d20b754
2022-05-12 20:26:46 +00:00
Jon Robson 78369c51d3 Omit ArticleToolbar in Navigation when title above tabs
Change-Id: Ib3d9c28e4dbbf1deb85adccec84f208f086c1a04
2022-05-12 11:04:10 -07:00
bwang dd8cc5dfe8 Add snapshot class to sticky header tests
Change-Id: Id1383f234bd0518786feebbbb2d92f7345aa6e70
2022-05-12 10:51:43 -05:00
Translation updater bot 3a302bccea Localisation updates from https://translatewiki.net.
Change-Id: I4fff6d4b493ac5d012684e5296ede710dfaf7ae9
2022-05-12 08:15:02 +02:00
jenkins-bot 7dda175aed Merge "Update package-lock, move peer deps into dev deps" 2022-05-12 02:49:10 +00:00
jenkins-bot 3507b366dd Merge "Hide gadget in beta cluster, update reporter" 2022-05-12 01:40:02 +00:00
bwang c9bda9195c Hide gadget in beta cluster, update reporter
Change-Id: I9ee8dcfdac1d73182abf7933d6383518ec16409c
2022-05-11 20:24:59 -05:00
bwang 74f56886cc Update package-lock, move peer deps into dev deps
Change-Id: I4b5fd7f19ce65ea202140bbae8938865229ccea6
2022-05-11 15:08:41 -05:00
jenkins-bot ef42ef7e66 Merge "Create feature flag for VectorTitleAboveTabs feature" 2022-05-11 19:53:11 +00:00
Translation updater bot ec3ea816dc Localisation updates from https://translatewiki.net.
Change-Id: Ic6122536cc8774bea1d3bcc0139c4703b92cfb86
2022-05-11 08:13:34 +02:00
jenkins-bot 8d1dbab356 Merge "Simplify TOC spacing styles/logic by reusing the visible sticky header class" 2022-05-10 22:18:26 +00:00
jenkins-bot 0a596e3f98 Merge "Fix personal tools navigation landmark label" 2022-05-10 17:27:58 +00:00
bwang 2f32d1378c Fix personal tools navigation landmark label
Bug: T291304
Change-Id: I62c24cf739048b794cc33045cbe2333ecb51efdb
2022-05-10 17:12:46 +00:00
Jan Drewniak 29d938b0f9 Create feature flag for VectorTitleAboveTabs feature
Adds a feature called VectorTitleAboveTabs that will be used to
toggle a forthcoming feature that moves the page title above the
tabs (the ones that link to talk/history etc).

Bug: T303549
Change-Id: Ibadb4293eca16a83e5e7a9f90ddcf51fab0a0e41
2022-05-10 12:53:31 -04:00
bwang 91e2e55a10 Simplify TOC spacing styles/logic by reusing the visible sticky header class
- Remove the 'vector-scrolled-below-table-of-contents' class, reducing the number of classes added with JS and simplifying the scrollObserver logic
- Move the 'vector-sticky-header-visible' class from the sticky header element to the body element. Hopefully, this is where other feature specific classes can go in the future
- This approach means the TOC will not need JS to update it's spacing when the sticky header is not enabled

Bug: T307345
Change-Id: I1084defc7025f5c946e22a36d373224fae6f8bd6
2022-05-10 11:39:05 -05:00
Translation updater bot 5f341fbb36 Localisation updates from https://translatewiki.net.
Change-Id: I848204caedb7f1f318ecd575ec64c67d9f057f43
2022-05-10 08:11:22 +02:00
bwang 94be7578f5 Factor out a separate scroll observer for the TOC A/B test, which should be fired separately from the page title observer used by the sticky header and TOC
Bug: T307952
Bug: T307345
Change-Id: I3f247730fa1c399e6d2e4d866677703fc24e8c58
2022-05-09 20:44:54 +00:00
Translation updater bot 24ad8721b1 Localisation updates from https://translatewiki.net.
Change-Id: Idfaead7bfd6d2202cce852d66d286e639a4fa40b
2022-05-09 08:14:01 +02:00
bwang d06dabe897 Ensure main menu is open in a11y tests
Change-Id: Ib1077797a51af216c7fe014a8b1adfe93fefde7a
2022-05-06 14:04:29 -05:00
jenkins-bot b6847038f8 Merge "[HTML] Refactor Content header templates" 2022-05-06 18:43:34 +00:00
Jan Drewniak 1288c97179 [HTML] Refactor Content header templates
Creates two new templates:
- ContentHeader.mustache containing the site header and indicators or languages
- ContentSubheader.mustache containing site tagline and conditionally indicators

This changes DOM order.
- It adds the `<header class="mw-body-header">` to all pages,
  including special pages & edit pages, not just pages with the language button.
- It moves the #siteSub element (tagline) outside of the
  `<div id="bodyContent">` element.
- Adds a clearfix (or margin-collapse fix) to `.vector-body`.

This changes causes a minor difference (perhaps improvement) where on special pages,
the beginning of the content, starting with the `mw-specialpage-summary` element,
was positioned closer to the page title than on regular pages.

The clearfix ensures that the height between the page title and content is consistent across all pages.

Bug: T303549
Change-Id: I29ba337dbd6f9b0cf58c9a0ca517a9ba59cef414
2022-05-06 15:37:04 +00:00
Translation updater bot dba3050645 Localisation updates from https://translatewiki.net.
Change-Id: Ida7254c9506a331a51d15d98a10b71b852ae1802
2022-05-06 08:21:25 +02:00
jenkins-bot b614616581 Merge "[Grid preparation] ArticleToolbar component" 2022-05-05 22:45:24 +00:00
jenkins-bot 1c723f581c Merge "Update reporter to include screenshot, remove try statement to ensure CI fails when an error occurs" 2022-05-05 22:00:21 +00:00
Jon Robson 305fbdacf8 [Grid preparation] ArticleToolbar component
Structural change to prepare for CSS grid usage.
ArticleToolbar component is defined and self contained with
all layout rules relating to toolbar

UI regression testing suite shows 6 failures due to pixel alignment
changes to tabs. When comparing to the current release, you should
see 34 failures before /and/ after this change.

Notable changes:
- #mw-head element is no longer present in modern Vector skin
to allow us to distinguish between cached HTML and modern HTML

Bug: T303484
Change-Id: Ia261ea53931217f32a21b33c2ab3d4ec64efa48a
2022-05-05 21:13:01 +00:00
Jon Robson 9a2b3d6275 [Grid preparation] Structure the header
Restructure the header to have two child elements

Change-Id: Ib5b7f31419ae6b62f62878947651b8ab843a3955
2022-05-05 17:54:28 +00:00
bwang 6b814da689 Update reporter to include screenshot, remove try statement to ensure CI fails when an error occurs
Change-Id: I685c8a74352b4172d7a086467a9b3cfc84d57cee
2022-05-05 12:35:29 -05:00
jenkins-bot 2f25970dae Merge "Change "Article tools" to "Tools"" 2022-05-05 17:26:58 +00:00
jenkins-bot cdd144f928 Merge "a11y: create report in LOG_DIR or 'a11y/'" 2022-05-05 17:05:29 +00:00
Željko Filipin 09fe15e939 a11y: create report in LOG_DIR or 'a11y/'
If LOG_DIR environment variable is set, create report there.
If it is not set, create the report in 'a11y/'.

Bug: T301184
Change-Id: I74fa6e8ee59d43e5a6e57083999107ac27446a62
2022-05-05 11:46:13 -05:00
jenkins-bot 17bb448244 Merge "Disable max width on article toolbar container" 2022-05-05 16:14:25 +00:00
Amir E. Aharoni 4af78713ef Change "Article tools" to "Tools"
"Article" is a Wikipedia-specific term.

See https://phabricator.wikimedia.org/T291304#7905753

Bug: T291304
Change-Id: I678e7bed8c32dee35c7047e3ae5bb1ec5d26f452
2022-05-05 10:20:29 +00:00
Translation updater bot db60481d2b Localisation updates from https://translatewiki.net.
Change-Id: I982c2c6eddf423c3134980de00e7c29fcb02ae1e
2022-05-05 08:08:09 +02:00
Jon Robson 3b4b101459 Disable max width on article toolbar container
Bug: T306353
Change-Id: I1c9e223ebc22cf0e0a337856041f34449e6c483b
2022-05-05 02:21:17 +00:00
bwang cdc46e70da Fix TOC fadeout placement
Bug: T306893
Change-Id: Ib6fa8836948b6d6f202eb5365ae660acf210b473
2022-05-04 23:37:43 +00:00
jenkins-bot 3373d065c7 Merge "Fix Sidebar.less auto merge commit" 2022-05-04 20:19:12 +00:00
jenkins-bot a68409d262 Merge "[TOC] Remove pointer-events:none on .sidebar-toc-link" 2022-05-04 19:38:32 +00:00
bwang 6cc98aa449 Fix Sidebar.less auto merge commit
Auto merge commit for the 'Adjust table of contents margins at 1000-1200 breakpoint' patch incorrectly deleted a line from Sidebar.less. I need that deletion in 789210, because it will be backported later today
https://phabricator.wikimedia.org/F35103224

Change-Id: I0404c02d71160ec4537e49fc77489a8a5027a183
2022-05-04 17:05:42 +00:00
jenkins-bot 8a2f61ee02 Merge "Adjust table of contents margins at 1000-1200 breakpoint" 2022-05-04 16:49:53 +00:00
Jon Robson 9c26833af6 Adjust table of contents margins at 1000-1200 breakpoint
Bug: T307004
Change-Id: Ibb7be459305eaee57503d4efd67e19cd0f00046b
2022-05-04 16:04:33 +00:00
Željko Filipin f601fe480e a11y: create report in log folder
The report was created in log/a11y folder until now. Looks like Jenkins
expects it to be in log folder.

Bug: T301184
Change-Id: I9926e7446e4fc86526dab963066511bf8da2271e
2022-05-04 16:36:57 +02:00
Translation updater bot 7861e9b8f1 Localisation updates from https://translatewiki.net.
Change-Id: Ifa0a2d0a45e181320e3718da0a72c93ad7464067
2022-05-04 08:20:15 +02:00
bwang 0b27b29475 Hide navigation menu label and remove legacy sidebar styles from modern styles
Change-Id: I701860ce0bf5f34c8318a999cddd7eede94aee3a
2022-05-03 16:50:58 -05:00
jenkins-bot ff3d879ee2 Merge "Remove nav element from Vector menus and only render label elements in Vector menus when needed. Add new nav landmarks corresponding to user links, main site nav, and article editing tools. Split out legacy Menu template." 2022-05-03 15:42:02 +00:00
Translation updater bot d33a1a0fa3 Localisation updates from https://translatewiki.net.
Change-Id: Iea125ed24698ee1d6853f2b55842721ae406efb6
2022-05-03 08:47:15 +02:00
jenkins-bot 5fc5bb4ad2 Merge "On special page do not show empty more menu to low resolutions" 2022-05-02 21:25:22 +00:00
Jon Robson a1e5fd5fcc On special page do not show empty more menu to low resolutions
This is a follow up to I34ace0aeb3e23d8f6a8c5a8680bb492f37e343ad
On Special:Userlogin a "more" menu appears that's visible but empty
that should not

 Bug: T306229
Change-Id: I9384b3015de9991db41bde8ccc8f404ac533f198
2022-05-02 20:22:44 +00:00
Jan Drewniak 7e81c26712 [TOC] Remove pointer-events:none on .sidebar-toc-link
Previously, we relied on setting pointer-events:none on all child
elements of ToC links.

This propagated the click event up to the link itself in Javascript
and allowed us check if an element with the class `.sidebar-toc-link`
was clicked.

Unfortunately as of Chromium 101 this approach causes the entire link
in the sidebar to be unclickable.

Instead, this patch checks if the ToC link or any of it's children
have been clicked (using the less efficient `Element.closest()` ).

Bug: T307271
Change-Id: I2264b7862f6e1ef50c5c722daee81acc39eea54e
2022-05-02 19:48:30 +00:00
Translation updater bot 4a23431c58 Localisation updates from https://translatewiki.net.
Change-Id: I680e6186a20d348dd39ca39dbec90518fa46bf01
2022-05-02 08:22:28 +02:00
Translation updater bot 235c0872a6 Localisation updates from https://translatewiki.net.
Change-Id: I49bbd02b6087e31f7ea9cfb8652d0f666d06f524
2022-04-29 08:47:04 +02:00
jenkins-bot 3d36fac0ef Merge "Updates for core temp user autocreation feature" 2022-04-28 20:53:35 +00:00
jenkins-bot a5e54669a7 Merge "Fix a11y test runner setup issue" 2022-04-28 20:52:09 +00:00
Tim Starling 8d0659b1e6 Updates for core temp user autocreation feature
* Use pt-tmpuserpage for the temp user name.
* Use the userAnonymous icon for the temp user personal tools menu.
* Suppress the logout menu item for temp users.

Depends-On: Ib14a352490fc42039106523118e8d021844e3dfb
Bug: T300263
Change-Id: I8ac5de82f76a9ec58b0fbef85546bc7fd5b793d2
2022-04-28 20:32:53 +00:00
bwang 1d46d78ced Disable TOC in edit mode
Bug: T307112
Change-Id: Ic7bf195972d3f5bfe781a15fc805d7ef1b56e496
2022-04-28 20:09:05 +00:00
bwang 76c8435167 Fix a11y test runner setup issue
Change-Id: Ib6b41ba0410dacf6a13d9fe64bf60eb5b84b9e07
2022-04-28 14:54:14 -05:00
bwang b075c90f60 Update TOC heading and link styles
Bug: T306562
Change-Id: Iafe335547a1e3c432efce303b5c0e5f8f5a23a15
2022-04-28 13:32:59 -05:00
jenkins-bot 1b78e80de8 Merge "Remove dancing tabs with CSS only solution" 2022-04-28 18:14:50 +00:00
Jon Robson 64df4fde20 Remove dancing tabs with CSS only solution
Remove JavaScript that collapses tabs and replace with an easier
to maintain breakpoint based solution.

Tabs will now collapse below the tablet breakpoint

Note: In the case of mw.util.addPortletLink, to add items to the
`views` menu, these will not be collapsed into the more menu and
must now be explicitly added to both menus, ie. if the window is
resized these will hide and not appear in the more menu.

However, when mw.util.addPortletLink attempts to add to `views` menu
when there is not available space, we will redirect those links to
the more (`cactions`) dropdown menu.

Bug: T306229
Change-Id: I34ace0aeb3e23d8f6a8c5a8680bb492f37e343ad
2022-04-28 17:57:10 +00:00
Translation updater bot b92fc7f931 Localisation updates from https://translatewiki.net.
Change-Id: Ia60aebfd624579fdf24d2221b930b3bd6601db6f
2022-04-28 09:30:23 +02:00
jenkins-bot 0f31961e35 Merge "Add word-break CSS to TOC links" 2022-04-27 22:21:17 +00:00
jenkins-bot ea5b4565fe Merge "Hooks: Migrate Vector skin hooks to the new MediaWiki hook system" 2022-04-27 19:29:04 +00:00
bwang 61eec96090 Add word-break CSS to TOC links
Bug: T306913
Change-Id: I95420c837a779a85e55c20c7a9d1ae74b632c6cf
2022-04-27 19:24:18 +00:00
bwang af8cf470fd Fix TOC bottom fade
Additional change: Fixes an eslint warning

Bug: T306893
Change-Id: I778470ec5fa2081e4412f40b0180efbff7013d1b
2022-04-27 19:07:17 +00:00
bwang d54029a523 Remove nav element from Vector menus and only render label elements in Vector menus when needed. Add new nav landmarks corresponding to user links, main site nav, and article editing tools. Split out legacy Menu template.
Bug: T291304
Bug: T301051
Change-Id: I35c20103e4b45139ef1d3f73c23f6a744aa87a3c
2022-04-27 16:52:20 +00:00
jenkins-bot b06aba7619 Merge "Enable collapsible TOC sections for user with preferred reduced motion" 2022-04-27 14:48:51 +00:00
jenkins-bot 3e1f96a163 Merge "Disable animations when user prefers reduced motion" 2022-04-27 14:48:48 +00:00
Translation updater bot b75bab1369 Localisation updates from https://translatewiki.net.
Change-Id: I1bf413845ddc96efa46587b47849735f2bac5432
2022-04-27 08:09:59 +02:00
bwang ea64b86f33 Enable collapsible TOC sections for user with preferred reduced motion
Bug: T306652
Change-Id: Ia94b9dd32484f5f8b4c8bfe28d7c5b1f303855bf
2022-04-26 23:38:14 +00:00
Jon Robson c269419af3 Disable animations when user prefers reduced motion
When browser preference for reduced motion is enabled:
* Disables bolding of table of contents
* Disables sticky header transition

Bug: T254399
Change-Id: I8ef9e59b258fed977ce370da352b1924832d842b
2022-04-26 23:31:38 +00:00
Derick A 80b60c153a
Hooks: Migrate Vector skin hooks to the new MediaWiki hook system
Per https://www.mediawiki.org/wiki/Manual:Hooks#Handling_hooks_in_MediaWiki_1.35_and_later,
MediaWiki provides a new hook system. Vector is able to utilize this new
hook system because it requires a MW version >= 1.35, hence the migration.

Bug: T271009
Change-Id: I6e01b151751485339a0d6a6dc6a843f7141d54bb
2022-04-26 23:58:13 +01:00
Jon Robson 7d75bb37ad [ToC] Increase threshold for ToC collapsing to 1000px
Bug: T306904
Change-Id: Ib3ad66a8f4ccf9c5ba323031821d6e681069bde5
2022-04-26 17:46:51 +00:00
Translation updater bot 70e61fdfa8 Localisation updates from https://translatewiki.net.
Change-Id: I259fb7e497b2d7b2bf74e219afcc5f2b2539f9de
2022-04-26 08:56:33 +02:00
Translation updater bot 6fbbe8779a Localisation updates from https://translatewiki.net.
Change-Id: I1fa10fccaf28eee749074c6004c398fb5a1fc421
2022-04-25 08:21:35 +02:00
Translation updater bot 6c8d547e56 Localisation updates from https://translatewiki.net.
Change-Id: I680b2ff93174d5dc7d5d43e58dab1555d8b7f7c7
2022-04-22 08:25:05 +02:00
jenkins-bot cdc2df8e66 Merge "Always collapse Echo alert on "wide" headers" 2022-04-20 16:39:12 +00:00
Translation updater bot a7d875d24e Localisation updates from https://translatewiki.net.
Change-Id: I4d37abde8e4d073264aaaead9f31b41a909c1897
2022-04-20 08:20:22 +02:00
jenkins-bot 8acf956c6f Merge "Fix empty space on left when bucketed in the control/unsampled group" 2022-04-19 21:18:02 +00:00
jenkins-bot ff4a1ba89c Merge "Replace h2 in TOC with p and remove aria-hidden" 2022-04-19 21:04:20 +00:00
Jon Robson 5ef40f2f73 Always collapse Echo alert on "wide" headers
Bug: T301583
Change-Id: Ib4baab3ab814a79f45d8d19cfe4e499307852d52
2022-04-19 21:02:54 +00:00
Nicholas Ray 718bcef6f9 Fix empty space on left when bucketed in the control/unsampled group
When the AB test is enabled both the old and new TOC's are in the page's
html but only one is visible. The `.vector-toc-visible` class is also
present and will try to apply a left margin even if the page has been
bucketed into the control or unsampled group.

This patch takes the simplest approach to fix this problem with CSS only
especially given the transient nature of this code (will be removed when
AB test is finished):

* When the page bucketed in the control or unsampled group, prevent
  .vector-toc-visible from applying a left-margin through the use of
  `:not` selectors.

Additionally:

* Remove unnecessary `margin-left` rule that used to apply to the
  mw-workspace-container. Due to the work done in
  I2f95d5938674bb8263b6203c5f6a469762bf0cc2, the workspace container
  will now always have a computed left margin of zero because it is the
  same width as the page container.

Bug: T306366
Change-Id: Icd9572353bb5e29cfda91b095ceb8c2e652864e7
2022-04-19 14:35:49 -06:00
jenkins-bot 065f3409b5 Merge "Replace Action::getActionName by IContextSource::getActionName" 2022-04-19 18:11:25 +00:00
bwang 9473758efd Replace h2 in TOC with p and remove aria-hidden
Ideally the TOC has an h2 after the article title h1, but because of the TOC sticky positioning and its placement in the grid, we cant use an h2 without messing up the heading order.

Bug: T301051
Change-Id: I462ddfb618ddd422c9f71293280d1790c4846f50
2022-04-19 17:51:36 +00:00
Umherirrender d0ac534749 Replace Action::getActionName by IContextSource::getActionName
Change-Id: I41bb15527e5ff9296a53205608c596291d485876
2022-04-19 10:46:48 +02:00
Translation updater bot b2c1625d48 Localisation updates from https://translatewiki.net.
Change-Id: I42e98ecdfdcedd28c1da1c462402c0a0f042daa6
2022-04-19 10:18:10 +02:00
jenkins-bot 7565486e09 Merge "Restore persistent sidebar" 2022-04-18 21:47:34 +00:00
Mortal303 8b51041003 Move Vector menu class logic into Menu mustache template
Replaced “vector-menu-heading” with ‘’(empty string) in “$portletData['heading-class'] = '';”
in includes/SkinVector.php and updated accordingly the includes/templates/Menu.mustache file.
Updated “vector-menu-heading” with ‘’(empty string) in stories/LanguageButton.stories.data.js,
stories/UserLinks.stories.data.js, and tests/phpunit/integration/SkinVectorTest.php respectively
SkinVector and Storybook are cleaned up.

Bug: T290281
Change-Id: I4ca16953799b3dc52e45674bb398c78f14cfc842
2022-04-18 15:18:53 -05:00
Jon Robson f38a2afbf6 Restore persistent sidebar
Bug: T305989
Change-Id: I1304c777ad9581cd8b9153ad1e4483e31660857e
2022-04-18 19:44:11 +00:00
jenkins-bot 79cde24aff Merge "Adjust alignment of searchbox in header" 2022-04-18 16:26:15 +00:00
Translation updater bot cd67706c04 Localisation updates from https://translatewiki.net.
Change-Id: Ief114091d184a2331630af01e024472b3bdf7b99
2022-04-18 10:09:00 +02:00
jenkins-bot 8e583116de Merge "Update a11y tests to output files in log/" 2022-04-15 20:00:28 +00:00
Clare Ming 5800b80596 Adjust alignment of searchbox in header
Per T305069#7832390, left edge of searchbox input should line up with
the left edge of the main content area.

Bug: T305069
Change-Id: I737c3cac09ae18c598164b232b6461f72451b3e3
2022-04-15 13:56:32 -06:00
bwang a77fed0a55 Update a11y tests to output files in log/
This makes built assets available in jenkins,
Also addresses miscellaneous feedback relating to configuration
variable name and track topic name.

Change-Id: Ic70d517eba96aab6512a96ea19d6be56b3664871
2022-04-15 19:43:53 +00:00
jenkins-bot 3df381be52 Merge "Fix missing create account link follow up" 2022-04-15 19:13:28 +00:00
bwang 282fe1aa51 Fix missing create account link follow up
Follow up to 58b6831

Bug: T306116
Change-Id: I2989657f871b0a312e68c4af7757029b0c9c9f24
2022-04-15 18:57:14 +00:00
Clare Ming f12659fff6 Layout + visual style changes for sticky TOC
- Layout updates per design review.
- Visual updates per design review.

Bug: T304166
Bug: T305069
Change-Id: I2f95d5938674bb8263b6203c5f6a469762bf0cc2
2022-04-15 10:24:46 -06:00
Translation updater bot 66ee043a6e Localisation updates from https://translatewiki.net.
Change-Id: I994a706f735f3f34464d4c1919ffd197b7e2889d
2022-04-15 09:59:25 +02:00
bwang 58b6831e4d Rely on core to provide accesskey/title attributes, update search toggle location in DOM
Bug: T299980
Depends-on: Ide214de5f246b38689799e20db9e8a4671d9b7ac
Change-Id: I43eb04ec095cc9c1d683df9da05887595c2eddfb
2022-04-14 13:53:07 -07:00
bwang 21f124dad5 Fix missing create account link icon and ensure icon attributes aren't showing up in rendered HTML
Bug: T306116
Depends-on: I509dd153ea2c1e04cb89415f185b7abbe0403773
Change-Id: Iaea83098fda7d77fda6629722dcef3e17e21fe06
2022-04-14 11:03:56 -05:00
Translation updater bot 7b85a7d88a Localisation updates from https://translatewiki.net.
Change-Id: I634c48b62b85f76db868395539d1784344fd6e9b
2022-04-14 08:29:06 +02:00
Translation updater bot cabd1e78d2 Localisation updates from https://translatewiki.net.
Change-Id: I101d62380809ac2aead8eeca26786242fe202a0b
2022-04-13 08:34:20 +02:00
Translation updater bot 7acd382329 Localisation updates from https://translatewiki.net.
Change-Id: Ie20ecfb916c77ce967194fc40d2537b91c8d8481
2022-04-12 08:16:38 +02:00
jenkins-bot b7268dd661 Merge "Fix position of search box in vector-22" 2022-04-12 00:41:52 +00:00
Nicholas Ray 5eacd5e629 Fix position of search box in vector-22
Looks like the selector for `vector-search-box-show-thumbnail` needs to
be adjusted as it is on the same element as the `vector-search-box-vue`
class.

Change-Id: Ief1dadddc082add65ae4bf29c951f2ddefb15d5b
2022-04-11 18:01:19 -06:00
Clare Ming 28a3c06cdf Replace TOC arrow icon
Bug: T304166
Change-Id: I182c9e5399d95ecea58dcdabb563a98b4e34e47e
2022-04-11 14:56:42 -06:00
Jon Robson 9f6295426f Prepare for grid layout
Add a legacy class to allow us to transition out certain CSS
with new grid system

Bug: T303484
Change-Id: Ie85451b721b64aee42eb4b356f38c3621ce40b5e
2022-04-11 18:12:43 +00:00
Translation updater bot 1f6430a001 Localisation updates from https://translatewiki.net.
Change-Id: I8fcbb258c77ac3a839bc7c8a1fc07029f781de19
2022-04-11 08:16:20 +02:00
jenkins-bot 107abe79a0 Merge "Scope ULS styles to when language button is in header" 2022-04-09 00:07:09 +00:00
Jon Robson 3432cf2c80 Only consider article ID if A/B test enabled
The article ID shouldn't matter for display of table of contents
unless the A/B test is enabled.

This also has the added benefit of making the content provider
work with table of contents on articles again (content provider articles
always have a page id of 0)

Change-Id: I6af5e1476827828d0974ecbb110476ac1e5dc0c9
2022-04-08 20:04:24 +00:00
Translation updater bot 193b33d85e Localisation updates from https://translatewiki.net.
Change-Id: I05dbfe917e41570b6018330590b0f71225bf1ce5
2022-04-08 08:30:42 +02:00
jenkins-bot e527168978 Merge "Force legacy TOC to render at lower resolutions" 2022-04-07 23:39:14 +00:00
jenkins-bot e2149ee0c1 Merge "Remove TOC margin to not always show fade out" 2022-04-07 21:20:26 +00:00
jenkins-bot a961f3fb28 Merge "Remove env option from a11y test to enable tests to run in docs env" 2022-04-07 21:12:33 +00:00
Clare Ming b24cf900fe Force legacy TOC to render at lower resolutions
- If TOC A/B test is enabled, page is in treatment group, and
viewport is below tablet, force legacy TOC to render.
- If TOC A/B test is disabled and new TOC feature is enabled,
and viewport is below tablet, neither TOC should render.

Bug: T300975
Change-Id: Ib30c3473eb47d6ac60924f40ccd0e42d29625407
2022-04-07 15:06:30 -06:00
bwang 18c65141f9 Remove env option from a11y test to enable tests to run in docs env
Change-Id: Ieef80011996b8e7c5ff11239f2c9ae53da9b3e99
2022-04-07 15:13:17 -05:00
bwang 40045c6e0e Scope ULS styles to when language button is in header
Bug: T304468
Change-Id: Iebacb6a7bf3412a6ee76eb5c9fdb9471c02dd16c
2022-04-07 14:47:44 -05:00
jenkins-bot 1e75d6f373 Merge "Clean up unused constants and outdated comments" 2022-04-07 18:19:28 +00:00
Clare Ming 805c6c97c2 Remove TOC margin to not always show fade out
Bug: T302076
Change-Id: I06dd5fc56c30299aceeae46b16d3ebd3e3cf11aa
2022-04-07 11:49:47 -06:00
jenkins-bot 125a8641e5 Merge "Prepare Vector for temporary user accounts" 2022-04-07 17:35:15 +00:00
jenkins-bot 72e842e1f7 Merge "Update puppeteer chrome config for a11y tests" 2022-04-07 16:55:52 +00:00
jenkins-bot 6fc95b72ba Merge "Drop the Vector.Config service" 2022-04-07 16:54:01 +00:00
bwang b51aa00a03 Update puppeteer chrome config for a11y tests
Change-Id: I9e7940445f18c8a9d01273208545cd60c260279a
2022-04-07 11:20:44 -05:00
Func 12c7d6a0ca Clean up unused constants and outdated comments
Change-Id: If6462e3a67726234abe62fd4d02a5d19ff4f02e0
2022-04-07 16:10:52 +00:00
jenkins-bot a56698c706 Merge "Update sticky header to use ARIA attributes for section collapsing and add accessible label to toggle buttons" 2022-04-07 15:51:56 +00:00
Translation updater bot 9092f6cf85 Localisation updates from https://translatewiki.net.
Change-Id: Ib3242b86b0cb88292e8f254c61e49abff14abf42
2022-04-07 08:11:18 +02:00
Func b61a92f052 Drop the Vector.Config service
It didn't vary by the skin version as documented in the Constants class,
and merely another instance of GlobalVarConfig.

Change-Id: I0acd0366a241e04bb79f6aae5dc52284dfa578df
2022-04-07 04:30:20 +00:00
Clare Ming a0b1b5b056 Fix TOC fadeout proper
Bug: T302076
Change-Id: I247a1a92e6eaa3413053514866966393ff3c1964
2022-04-06 16:25:07 -06:00
bwang f1c70e99b7 Update sticky header to use ARIA attributes for section collapsing and add accessible label to toggle buttons
Bug: T303766
Change-Id: Idda4f286a42152af1d233588a1839ada5491ce95
2022-04-06 17:24:34 -05:00
jenkins-bot 94d9445ba3 Merge "Add automated a11y tests with pa11y" 2022-04-06 19:48:39 +00:00
bwang dd9b6e1dbc Add automated a11y tests with pa11y
Bug: T301184
Change-Id: If3d5aa74b9b1f5bf0f7aa2ea6950853c9a5f5ada
2022-04-06 19:29:58 +00:00
Ed Sanders f04f62ec05 Update debounce param order
Parameter order was changed in
I2ef1c949d68c5642943a614e2cb3f2f0a4cb140c

Change-Id: Iefc61dd84e53de60a95a69275d5c5619b0db25ff
2022-04-06 17:15:20 +01:00
Translation updater bot 54897659fc Localisation updates from https://translatewiki.net.
Change-Id: Ie76303942a2df27922a79ec4e0d9ea08f14d3fac
2022-04-06 08:28:21 +02:00
jenkins-bot ec3b66e0ed Merge "Only track headings that are included in the table of contents" 2022-04-05 22:10:33 +00:00
jenkins-bot 8842c61422 Merge "Revert unnecessary TOC section id change" 2022-04-05 21:14:55 +00:00
bwang aa8ec1a878 Revert unnecessary TOC section id change
Change-Id: I62736b47557b79929b8ad984d6709e762b3db549
2022-04-05 15:38:00 -05:00
Clare Ming 83f324e863 Add fixes for sticky TOC fade out
Bug: T302076
Change-Id: I9fffb17e60182ef2d667ed86218b8f24e1d76f5c
2022-04-05 13:52:40 -06:00
jenkins-bot e3684ba8a0 Merge "Build A/B test bucketing infrastructure for the table of contents." 2022-04-05 17:25:08 +00:00
Translation updater bot e48a8101b5 Localisation updates from https://translatewiki.net.
Change-Id: Ibeba7b06be25b72dedf4aef57be809da7c34daa9
2022-04-05 08:27:43 +02:00
Nicholas Ray 6fbf08a198 Build A/B test bucketing infrastructure for the table of contents.
* Bucket and sample on server by using the
  `WikimediaEvents.WebABTestArticleIdFactory` service from
  WikimediaEvents (soft dependency)
* Add linkHijack.js so that users bucketed in one group have the
  possibility of remaining in that group if they click a link to another
  page.

Bug: T302046
Depends-On: Ie6627de98effb3d37a3bedda5023d08af319837f
Change-Id: Iff231a976c473217b0fa4da1aa9a8d1c2a1a19f2
2022-04-04 17:06:29 -06:00
jenkins-bot 19f114281a Merge "Drop the LatestSkinVersionRequirement" 2022-04-04 20:18:35 +00:00
jenkins-bot b7b5976a13 Merge "Small clean up and TOC update" 2022-04-04 19:54:23 +00:00
Jon Robson 7e3d0828d5 Prepare Vector for temporary user accounts
Bug: T300263
Change-Id: I603b232da338655e54f372bec5df68dd96adfb2e
2022-04-04 19:45:14 +00:00
Jon Robson eca9fcbf79 Drop the LatestSkinVersionRequirement
The LatestSkinVersionRequirement is problematic for various reasons:

1) It uses the "useskin" query string
parameter which may or may not refer to the correct
skin (in the case of a non-existent skin it will always come to the conclusion that
it is not modern Vector and thus must be legacy).

2) It uses the User object which may or may not be safeToLoad
depending on when called.

The feature seems redundant at this point, as we are separating code
into separate classes Vector and Vector22 and all the features only apply
to modern Vector. I suggest we remove it and use the features explicitly in the skin
intended.

Bug: T305232
Bug: T305262
Bug: T302627
Change-Id: I92fa33547bd601e05ddc8c1468e681892e47c16b
2022-04-04 19:22:38 +00:00
Translation updater bot dc6936fe5d Localisation updates from https://translatewiki.net.
Change-Id: I17deb4b18c86d58e6b44d0d3d334a8fc21bc4eb3
2022-04-04 09:37:23 +02:00
bwang 733990f881 Small clean up and TOC update
Change-Id: Ic093888cb2b06d8eef95a1317d791e7e1627d0f6
2022-04-01 13:14:02 -05:00
Translation updater bot 4755086474 Localisation updates from https://translatewiki.net.
Change-Id: I17a6b7c654ecc13b169f906abbae43fbe01362a8
2022-04-01 08:29:41 +02:00
jenkins-bot 1521cfe0a8 Merge "Scroll active TOC links to midpoint when past threshold" 2022-03-31 23:21:23 +00:00
bwang 4a81d0e4eb Scroll active TOC links to midpoint when past threshold
Bug: T301150
Change-Id: I282dbeab8e0b121b71c04f921ab11311f1514da7
2022-03-31 15:50:54 -05:00
Jon Robson 94c7f31082 Only track headings that are included in the table of contents
Headings can also appear in templates inside divs and subtitles.
These do not
get rendered in the table of contents and should not be tracked.

This also excludes headings from the legacy table of contents which
may be in the article during the A/B test

See English Wikipedia examples [[Portal:Biography]] and [[Main page]]

Change-Id: I4ca8933a0e7736157f80e5e68077b153e5bfc81d
2022-03-31 17:35:00 +00:00
jenkins-bot b25e0ac738 Merge "Don't set a user preference on new accounts by default" 2022-03-31 15:23:15 +00:00
Translation updater bot 24bc9671cb Localisation updates from https://translatewiki.net.
Change-Id: I07fb4cce485af9b1a2ddddbd7f33800075da8d5e
2022-03-31 08:37:50 +02:00
Tim Starling 254ffbb55a Don't set a user preference on new accounts by default
Make it possible for Vector to be a non-default skin. Only set a user
preference on newly created accounts if that has been explicitly
requested in config.

This should have no effect on WMF production.

Change-Id: I52f62cf7eb78d2be4c59821a3cf29da9619602d9
2022-03-31 14:52:20 +11:00
bwang 607f3279bd Move sticky header DOM queries into main.js
- Remove isStickyHeaderAllowed() from stickyHeader.js, move to main.js
- Rename variables in stickyHeader.js to be consistent

Bug: T301429
Change-Id: Ib445a19cbfab52a008b749ea63cef178d6288e6a
2022-03-30 09:21:25 -05:00
Translation updater bot 3590f4aac9 Localisation updates from https://translatewiki.net.
Change-Id: I238b7d16a953f76f01f3e10f67c851f559b1cca5
2022-03-30 08:19:59 +02:00
Clare Ming 2bfdbe74b6 Do not show footer menu in print mode
Bug: T300178
Change-Id: I48df6c39019dc0551ffb0ee559c51d5f6b31c825
2022-03-29 17:24:18 -06:00
jenkins-bot 0529f8cb26 Merge "Update scroll instrument for TOC" 2022-03-29 21:43:41 +00:00
jenkins-bot 530658f160 Merge "Enable table of contents on all namespaces" 2022-03-29 21:34:18 +00:00
jenkins-bot ac5c82cfb8 Merge "Drop SkinVector global class alias" 2022-03-29 17:54:46 +00:00
jenkins-bot 67639d313a Merge "Restore the classes skin-vector and skin-vector-search-vue to body" 2022-03-29 16:50:27 +00:00
Reedy 0d5e2d184e Drop SkinVector global class alias
Change-Id: I0e35a3c88aced671ef23318bf3970f7f3f261f6a
2022-03-29 17:32:39 +01:00
jenkins-bot 056b242682 Merge "Make beginning bold on scroll" 2022-03-29 16:05:39 +00:00
Jon Robson 413f92561d Restore the classes skin-vector and skin-vector-search-vue to body
The option is set incorrectly.

Change-Id: Iafccb427b87f9a877374745b48b4ec1519de7e11
2022-03-29 08:50:10 -07:00
Clare Ming f2c60983bb Update scroll instrument for TOC
- Leverage scrollObserver to use for TOC scroll events.
- Add new hooks to target legacy TOC intersection.
- See corresponding changes (not strict dependency) in related
WME patch 773628 for capturing scroll events from Vector TOC:
https://gerrit.wikimedia.org/r/c/mediawiki/extensions/WikimediaEvents/+/773628
- Dependency on https://github.com/wikimedia/typescript-types/pull/30
which updates mwHookInstance interface with fire property to prevent
TS error on fire method of mw.hook in scrollObserver.

Bug: T303297
Change-Id: I5c2dd5f3a25ffcb0ed03b76ae28e65eb18ad8d33
2022-03-29 09:45:30 -06:00
jenkins-bot cda8df1cb2 Merge "Add fade to indicate scrollability in TOC" 2022-03-29 15:17:10 +00:00
Clare Ming ccdfbf2e58 Update @wikimedia/types-wikimedia to latest version
- Remove some @ts-ignore statements.
- Update invocation of mw.util.debounce to have correct order of
parameters.

Bug: T303297
Change-Id: I4bb795fbd4d026c21c66e9a3d161afff4d7ef09f
2022-03-28 23:33:50 +00:00
Clare Ming 1d574b86f1 Add fade to indicate scrollability in TOC
Bug: T302076
Change-Id: Ib803239602333e2a8232a26a10477a0f9933b819
2022-03-28 15:58:26 -06:00
Translation updater bot ca25b944da Localisation updates from https://translatewiki.net.
Change-Id: I50554c8ac11eeef88a7eec680db9c2d3888d3347
2022-03-28 08:24:40 +02:00
jenkins-bot 9eb243714d Merge "Improve UserLinks test to mocks registered user" 2022-03-25 21:58:10 +00:00
Translation updater bot 5be027a9c7 Localisation updates from https://translatewiki.net.
Change-Id: I2a23e4000a8723cd68395b24dce387ff9fdb7ab1
2022-03-25 08:37:24 +01:00
Jon Robson a2c7c024df Make beginning bold on scroll
Bug: T301254
Change-Id: I4469575ea8590ae22023b98c3dbd31bc672d5766
2022-03-25 01:13:42 +00:00
jenkins-bot cd04b72058 Merge "Table of contents links to beginning of article" 2022-03-24 23:51:52 +00:00
Jon Robson dfdf72140c Table of contents links to beginning of article
Bug: T301254
Change-Id: Icb0b0646f81c1070c8f47dd3297225a074f74773
2022-03-24 20:46:35 +00:00
bwang fea5740f57 Improve UserLinks test to mocks registered user
Change-Id: I9d90cea74f9d39550c91c9f761414a7e5e4f2b70
2022-03-24 15:34:02 -05:00
Jon Robson 56164a4275 Enable table of contents on all namespaces
Bug: T304168
Change-Id: Ib61f801640e77c34573c166072f0fb302687e8b1
2022-03-24 08:56:13 -07:00
Translation updater bot dd65dbebf4 Localisation updates from https://translatewiki.net.
Change-Id: Ic7d541c36777cf1208926d85e5cd9b3eed8ded0e
2022-03-24 08:37:50 +01:00
jenkins-bot 1b8ee10357 Merge "Add data-event-name attributes to legacy and sidebar TOC" 2022-03-23 22:00:45 +00:00
Jon Robson c73e551d49 Pass script path to URL generator
Bug: T288686
Change-Id: I4d4d27de2d52f3486e01c8c70bda1b9c03178a24
2022-03-23 10:37:39 -07:00
jenkins-bot 24b5d5840e Merge "End migration mode" 2022-03-23 17:03:38 +00:00
Jon Robson b109e10cf3 End migration mode
Can be merged when database rows have been updated to
no longer use skin version.

* Drop migration code
* Drop skin version preference
* Drop default skin version and existing accounts skin version
* Move skin definitions into skin.json
* Repurpose SkinVector as an abstract class
* Update READMEs

Bug: T301930
Bug: T294995
Bug: T302627
Change-Id: I7454d8f1cfdef81e7f3df476d8ce86736b46fff2
2022-03-23 16:46:42 +00:00
jenkins-bot b3f19854b6 Merge "Revise AB.js to handle other features + server sampling/bucketing" 2022-03-22 22:53:30 +00:00
jenkins-bot 1bc4885b2e Merge "Drop setId call" 2022-03-22 20:31:06 +00:00
Nicholas Ray d01dead5a7 Revise AB.js to handle other features + server sampling/bucketing
* Eliminates AB.js dependency on sticky header
* Code coverage has been raised to 100%
* Instead of importing ABTestConfig, these props are now passed into the
  function along with a token.
* WikimediaEvents hook is now fired when experiment is initialized. The
  experiment should not be initialized if it is not enabled.
* Removes several methods (e.g. initAB, getEnabledExperiment) due to the
  preceeding changes.
* Adds `isInSample` and `isInTreatmentBucket` methods so that the client
  has less work.

Treatment buckets now follow a naming convention so that the client can
do less work querying if the subject is part of the treatment:

* Treatment buckets should have the case-insensitive `treatment`
  substring somewhere in their name (e.g. 'treatment',
  'stickyHeaderTreatment', 'sticky-header-treatment' )

Bug: T302046
Change-Id: I4febec42b4c471b2f2ef02be2e334bd6d2c31eec
2022-03-22 11:58:48 -06:00
jenkins-bot c951bcbddd Merge "Table of contents should be hidden at lower resolutions" 2022-03-22 15:44:41 +00:00
Translation updater bot 8447bb3cd4 Localisation updates from https://translatewiki.net.
Change-Id: I37271d33c736f3e9f2f9f3f07d94b50470fca5aa
2022-03-22 08:32:13 +01:00
Jon Robson 4b50b4bbd3 Drop setId call
A user with an ID is a registered user and this test requires
an anonymous user.

Follow up to a1afa7ccb3

Not sure why this was working before, but I'm guessing
setId doesn't modify the User associated with the skin

Change-Id: I32bd74bd5aec1b14fb8b725fca2f8cef5f9d2ba1
2022-03-21 16:49:36 -07:00
bwang ac54984d75 Add data-event-name attributes to legacy and sidebar TOC
Bug: T302934
Depends-on: I5ef98d5f5713d3d99bc5f7f8112ba2d1e0f62e22
Change-Id: I5806c346abf0375c85248659c636ae3b2d73f661
2022-03-21 22:32:56 +00:00
Jon Robson 826a97db0e Table of contents should be hidden at lower resolutions
There should be no left margin on article content.

Bug: T298898
Change-Id: I92dafcc8f1bbd0dc4a21c20035b829198c18e8cb
2022-03-21 21:17:21 +00:00
jenkins-bot eb0e05dff1 Merge "Address some code FIXMEs" 2022-03-21 21:15:49 +00:00
jenkins-bot 1a2197f27d Merge "Make sure label text is not selectable" 2022-03-21 21:06:29 +00:00
Jon Robson b86dbc756c Address some code FIXMEs
- Remove references to the removed wgVectorUseWvuiSearch
configuration
- Remove mw-body qualifier on Indicators component.
- Drops some cache related FIXMEs

Change-Id: I6823b9c5bf19a067b56badf29f874a7127867a09
2022-03-21 20:29:58 +00:00
jenkins-bot 9c6d3f7b7b Merge "Update Hooks tests to cover updateUserLinksItems" 2022-03-21 20:08:16 +00:00
bwang fec6bf15f5 Update Hooks tests to cover updateUserLinksItems
Change-Id: Ia719f34f060e02acb81c7d48ba5885283df0045f
2022-03-21 13:03:44 -05:00
jenkins-bot 08efa139be Merge "Remove custom handling of aria-expanded in Vector checkbox hack buttons" 2022-03-21 18:03:14 +00:00
Mortal303 ae50914d4e Remove custom handling of aria-expanded in Vector checkbox hack buttons
Removed class "vector-menu-checkbox-expanded" and "vector-menu-checkbox-collapsed" in
includes/templates/Menu.mustache and deleted the necessary lines in
resources/common/components/MenuDropdown.less, tests/jest/stickyHeader.test.js,
includes/templates/skin.mustache, skin.json, i18n/en.json and i18n/qqq.json.

Bug: T299173
Change-Id: Ibf8a08e6e5d1a6c607abf170c030a0285e84ad74
2022-03-21 23:14:51 +05:30
Translation updater bot ce42cab493 Localisation updates from https://translatewiki.net.
Change-Id: I113da15efe3d3b9cba18c188ed5786d09803461b
2022-03-21 08:17:19 +01:00
dylsss 78fcf8e1ea Make sure label text is not selectable
The label text must be enclosed in a span tag in order for it to inherit the rules here: https://gerrit.wikimedia.org/g/mediawiki/core/+/master/resources/src/mediawiki.ui.button/button.less#36

Bug: T296129
Change-Id: I8782a4745704d07fad7ba44c56c476973be90f60
2022-03-21 00:01:06 +00:00
jenkins-bot 0b6905b7e0 Merge "Never show an empty table of contents" 2022-03-18 20:17:14 +00:00
Translation updater bot 4a0fad93c4 Localisation updates from https://translatewiki.net.
Change-Id: I966671d652a44b2fb16acfb4f8e537fa6f494e27
2022-03-18 08:47:21 +01:00
Jon Robson f3f777818c Never show an empty table of contents
This doesn't seem to have got updated when we revised the data format
in T299065.

Bug: T303860
Change-Id: Ib955950e014668fe434da4a1654e977eb43f7dd8
2022-03-17 22:24:24 +00:00
Translation updater bot 2e48d378f0 Localisation updates from https://translatewiki.net.
Change-Id: Icc3b798cc31df2e0a296bd6b1fabda62a8f05387
2022-03-17 08:39:32 +01:00
jenkins-bot 822d1957f1 Merge "Revert "build: Update eslint-config-wikimedia to 0.22.1"" 2022-03-17 00:18:36 +00:00
jenkins-bot 1d2e4dda6c Merge "[i18n] Table of contents heading" 2022-03-16 23:40:43 +00:00
Jdlrobson f7a859bac5 Revert "build: Update eslint-config-wikimedia to 0.22.1"
This reverts commit b72c648d21.

Reason for revert: Causes an issue with the search
(See https://phabricator.wikimedia.org/F35009362)

Change-Id: I09f7e5c9eab677bfd5a92cf2d8389d20a2d6e87a
2022-03-16 23:40:42 +00:00
bwang 2567e48f64 Fix updateUserLinksDropdownItems not being called
Bug: T304002
Change-Id: Idc9cd3a324f48d2c48243b5011d1559839789539
2022-03-16 22:07:57 +00:00
Jon Robson 6855979a92 [i18n] Table of contents heading
Should be translateable

Change-Id: I3c4515f16b5300a44f89ebdcd426a9d8ac6ad138
2022-03-16 17:18:51 +00:00
jenkins-bot 0b3d452083 Merge "build: Update eslint-config-wikimedia to 0.22.1" 2022-03-16 17:04:23 +00:00
jenkins-bot 4bb95af10c Merge "Set position and z-index for mw-page-container" 2022-03-16 16:21:20 +00:00
Ed Sanders b72c648d21 build: Update eslint-config-wikimedia to 0.22.1
Change-Id: If632697f7c3bb3fad6668d791d9408f7b7a3590b
2022-03-16 15:42:07 +00:00
jenkins-bot 218dc95af5 Merge "Update Node version" 2022-03-16 15:09:24 +00:00
Abijeet 3a39708163 Set position and z-index for mw-page-container
This forms a stacking context inside mw-page-container. It allows
overlays appended to the body tag to position themselves over the
Vector interface.

Bug: T301452
Change-Id: Ie187fde43dd8e7f108388c848438545c75d19b09
2022-03-16 13:29:07 +05:30
Translation updater bot 448c300603 Localisation updates from https://translatewiki.net.
Change-Id: I215f6e0a255ff947900afef9289cf64e182aa30c
2022-03-16 08:09:34 +01:00
Jon Robson 1113492383 Update Node version
Change-Id: Ib0f2fcb372e2d89450c26beca691bc7060f11718
2022-03-15 14:26:04 -07:00
Translation updater bot 753c634961 Localisation updates from https://translatewiki.net.
Change-Id: I3a6bee90222912f8cdc80501d83cd7c7cfc2aef4
2022-03-15 08:27:13 +01:00
Translation updater bot 094928736c Localisation updates from https://translatewiki.net.
Change-Id: I2ace7e5843efb6bd96891eb63e622fffb81d79ee
2022-03-14 08:16:44 +01:00
bwang 2511e35837 Refactor user links functions in Hooks.php to increase test coverage
Change-Id: I8fbf5cdf111dbb1ec06e5e74056ffdef77f77f22
2022-03-11 21:53:06 +00:00
Translation updater bot 749217f782 Localisation updates from https://translatewiki.net.
Change-Id: I71ca8af34211b04dea09b4bb28c1d421417bc79b
2022-03-11 08:35:05 +01:00
Translation updater bot fe9b975f6d Localisation updates from https://translatewiki.net.
Change-Id: Ia01d282ccb75d5d8be80672949c84e242a50ea4c
2022-03-10 08:21:35 +01:00
Translation updater bot 9d511288e3 Localisation updates from https://translatewiki.net.
Change-Id: I82745027cf8c81492362d029e943b827f3055b24
2022-03-09 08:11:35 +01:00
jenkins-bot 61e2e0fbd8 Merge "Add support for icons not prefixed with `wikimedia-`." 2022-03-08 16:26:06 +00:00
Translation updater bot 15f3c8032e Localisation updates from https://translatewiki.net.
Change-Id: I104b3e52eb390bb38486d942e62eaf5f631e91f5
2022-03-08 09:03:30 +01:00
bwang a1afa7ccb3 Ensure watchlist in user menu dropdown has the collapsible class
Bug: T302084
Change-Id: I27d7c0e46ee809185133fd787fc0c6fa5fcdac2e
2022-03-07 23:12:49 +00:00
Jon Robson 35721398b2 Add support for icons not prefixed with `wikimedia-`.
Needed for I0226892b2047e55d336c085c173e04a6fb4ecfa5

Bug: T257143
Change-Id: Ia24ac074aea329293c443c772229a0d5ac7246f9
2022-03-07 21:56:53 +00:00
Translation updater bot 832c1bc3bd Localisation updates from https://translatewiki.net.
Change-Id: I32845c9244928082ed94ccfa2a56c2e630a1d2d2
2022-03-07 08:13:38 +01:00
Reedy fc11a4dc46 Namespace Vector integration tests
Rest of phpunit tests are namespaced...

But under two different namespaces

Change-Id: I875ba8225d97674b4150b594d0f80527d0988ee3
2022-03-04 13:35:05 +00:00
Reedy 1dcfe80ac3 Namespace SkinVector* PHP classes
Namespaceless class aliases are left behind for migration purposes.

They can be removed at a later date when dependant extensions
and skins are fully updated.

Bug: T301204
Change-Id: I2b37c1889ff862ec8bb41325fc9f654c673cd115
2022-03-04 13:30:21 +00:00
Translation updater bot ec9ecbfb27 Localisation updates from https://translatewiki.net.
Change-Id: Ic70a1359f8ca92cc323276d7d05d1f3164ff3c84
2022-03-04 08:35:15 +01:00
jenkins-bot d6c0b94ee5 Merge "Unset data-toc in SkinVector" 2022-03-03 19:18:42 +00:00
Jon Robson a0d399b1e2 Unset data-toc in SkinVector
Bug: T302461
Change-Id: I61cf5d3c9016d5997ae56ba18c5eb877e9f68d91
2022-03-03 11:00:10 -08:00
jenkins-bot fc897266bc Merge "Use explicit line height for user menu items" 2022-03-03 17:47:44 +00:00
Translation updater bot 5192f7a6b7 Localisation updates from https://translatewiki.net.
Change-Id: I7d5e0ca3630831eec85bcc2dc096a940bc65e4d1
2022-03-03 08:24:50 +01:00
jenkins-bot 9205554552 Merge "Render sidebar menu above TOC" 2022-03-03 00:26:38 +00:00
bwang 9fb8af8ae8 Render sidebar menu above TOC
Can only be merged after I8c0924f6de28b15602969de873a843b4cd69548b
has been in production for 3 days

Bug: T300875
Change-Id: I924a69b37214a34f989f49f0425c701650928e17
2022-03-02 17:04:47 -06:00
jenkins-bot 288c8b95b2 Merge "Update Vector menu CSS to use `vector-menu-heading` instead of `h3`" 2022-03-02 19:21:10 +00:00
Mortal303 ab11cc9adb Update Vector menu CSS to use `vector-menu-heading` instead of `h3`
Replaced h3 tag in includes/templates/Menu.mustache with label tag.
Replaced h3 elements in .storybook/icons.less, resources/common/components/Menu.less,
resources/common/components/MenuDropdown.less, resources/common/components/MenuPortal.less,
resources/common/components/MenuTabs.less,resources/skins.vector.styles.legacy/components/MenuDropdown.less,
resources/skins.vector.styles/components/UserLinks.less, resources/skins.vector.styles.legacy/components/Sidebar.less
and resources/skins.vector.styles.legacy/layouts/screen.less
by vector-menu-heading.

Bug: T290280
Change-Id: I6eee7d6bc47c74a62166d4579fd4d3da3dc88e88
2022-03-02 20:05:36 +05:30
Translation updater bot 370321a54d Localisation updates from https://translatewiki.net.
Change-Id: I9c591d0db2c1d4f4ca06d94c77d4c0614017261a
2022-03-02 09:38:26 +01:00
Clare Ming 338e0e72ac Fix language alert regression
- Add test for SkinVector::shouldLanguageAlertBeInSidebar() method.
- Change some methods to protected status -- acknowledging this is not
an optimal change. Until we can pull out some of the language checks
into its own class with injected dependencies (title, feature manager,
languages), this is an interim solution to try to catch regressions
since the conditional states for showing the alert are complex and
ultimately temporary. Extracting the language checks into their own
class can be done in a follow up ticket to help optimize testing
language checks in isolation.

Bug: T302018
Change-Id: I99b7df3029e0af86e4d67b3f446d4ce99260d33e
2022-03-01 15:37:43 -07:00
jenkins-bot 9c9d8693c5 Merge "Only show scrollbars when needed in language menu" 2022-03-01 20:20:09 +00:00
Translation updater bot fead8fa661 Localisation updates from https://translatewiki.net.
Change-Id: I4cfce7deaf9c5fb8db5b4c743a56f32707a93c12
2022-03-01 14:34:27 +01:00
jenkins-bot 5dccb7ec04 Merge "Hide sticky header and ULS button in print mode" 2022-02-28 23:00:40 +00:00
Translation updater bot ee5e8681ea Localisation updates from https://translatewiki.net.
Change-Id: Ibf8e5f769b15d7a181fb1e2713184d317f014cac
2022-02-28 14:31:30 +01:00
Volker E f2d7158616 build: Update 'svgo' to latest v2.8.0 & re-crush images
Updating 'svgo' to v2.8.0 and newest Wikimedia SVG guidelines –
mainly around new whitespace features of SVGO.

Change-Id: Ie48f5e78b3f9b6e7f01b65618c1d6089fa4a2f54
2022-02-28 00:00:05 +00:00
bwang be2abb581c Hide sticky header and ULS button in print mode
Bug: T300178
Change-Id: Ie1eb02530ec62fa011da4be45a61d26522c1650b
2022-02-25 17:32:35 +00:00
Translation updater bot f8560e27ac Localisation updates from https://translatewiki.net.
Change-Id: I4add582c90f34d8698fe0e8d013669abc7b6c6ec
2022-02-25 09:49:58 +01:00
Translation updater bot 9426c40d22 Localisation updates from https://translatewiki.net.
Change-Id: I401e8ca32ce0168796bb2e06e6281d33890eb0f5
2022-02-24 08:53:49 +01:00
jenkins-bot 835e8673e4 Merge "Add icon classes to portlet links without IDs" 2022-02-23 19:21:37 +00:00
jenkins-bot 98bc2ee412 Merge "Switch order of sidebar menu and article toolbar in DOM" 2022-02-23 16:39:20 +00:00
BrandonXLF 1b0af9022b Add icon classes to portlet links without IDs
Only limit the mw-ui-icon-vector-gadget-ID class to portlet links with
IDs.

Bug: T301012
Change-Id: Ib69957b8d44d9b2a02df9f453de262beb8740799
2022-02-23 16:23:58 +00:00
jenkins-bot 11b968cf18 Merge "Clean up: Remove ts-ignores in stickyheader.js" 2022-02-23 16:18:06 +00:00
Translation updater bot cbefe871fa Localisation updates from https://translatewiki.net.
Change-Id: I753ce8d6b0afc7fbefdb4ac6f52d67330bdb2e66
2022-02-23 08:20:54 +01:00
jenkins-bot d93f9e9bed Merge "Use TOC template data for showing collapsible section arrows" 2022-02-22 22:16:18 +00:00
bwang 5f0c0cb294 Use TOC template data for showing collapsible section arrows
Bug: T299361
Depends-on: I8ab5c0543b898d1df9399a1cb39672c45daf2acd
Change-Id: Ib68de8cd97cc1111a5a33e100e688d6832fc7e6e
2022-02-22 15:47:23 -06:00
Nicholas Ray 27939ac6c9 Revert "Improve jsdoc for tableOfContents.js and sectionObserver.js"
This mostly reverts commit f5ad6fe78a but
keeps the SectionObserverProps typedef.

Instead, we will use @module introduced in
Ib68de8cd97cc1111a5a33e100e688d6832fc7e6e.

Change-Id: I7aff49a3d922889cc99bc4313a6cb416410a7a0d
2022-02-22 12:36:35 -07:00
bwang e9d2f5e37f Switch order of sidebar menu and article toolbar in DOM
In order to make the TOC go below the sidebar menu, we must reorder the sidebar menu to be directly before the sticky TOC element.
This change involves cached HTML, so this change is separated out from the rest of the CSS changes to be merged first.

Bug: T300875
Change-Id: I8c0924f6de28b15602969de873a843b4cd69548b
2022-02-22 17:21:10 +00:00
jenkins-bot 8b5ea941e5 Merge "Improve jsdoc for tableOfContents.js and sectionObserver.js" 2022-02-22 16:35:55 +00:00
Translation updater bot 9dd22acfaf Localisation updates from https://translatewiki.net.
Change-Id: I20f33c9afa63de06a0879662bdd29957c897684a
2022-02-22 14:21:30 +01:00
Translation updater bot a96e2b6a90 Localisation updates from https://translatewiki.net.
Change-Id: Ib346a4e6fd8bb6f49f72e2129b992c025ceb9e3f
2022-02-22 08:13:50 +01:00
Nicholas Ray f5ad6fe78a Improve jsdoc for tableOfContents.js and sectionObserver.js
Switch to using @namespace which seems to have the best jsdoc support
for the revealing module pattern [1] that these two files use.

Additionally:

* Add typedef for section observer props

[1] https://www.oreilly.com/library/view/learning-javascript-design/9781449334840/ch09s03.html

Change-Id: I3eeda191e5da0294ad40533053adb57e1fc9c8e9
2022-02-21 17:40:10 -07:00
jenkins-bot a47f14658c Merge "Move table of contents code to SkinVector22" 2022-02-21 23:53:50 +00:00
Jon Robson ed4b45f44a Move table of contents code to SkinVector22
This avoids the RuntimeException in old Vector, and means
we can safely enable this on the beta cluster

Note, for any users that are in migration mode e.g. skin is
set to 'vector' and the skin version is set to 2 they will
not see a table of contents in the sidebar or article.

This won't be a problem in production provided T299104
is resolved before we enable.

Change-Id: I942a1cb933e7364600fe1af7491aca20546545e5
2022-02-21 23:36:15 +00:00
Nicholas Ray 6e9506dcad Dynamically expand/collapse sub-sections in ToC based on # of headings
Server render the table of contents in a collapsed state when the total
number of headings is equal or greater than the value of
`$wgVectorTableOfContentsCollapseAtCount`. Otherwise, the table of
contents will be server rendered in its "expanded" state.

In addition:

* Revise table of contents tests to call one `assertion` per element so
  that it is easier to see the exact element that may fail an assertion.
* Revise table of contents tests to call a mount function that can merge
  props to allow for a more flexible set of tests.
* Revise table of contents tests by wrapping a `describe` around tests
  that expect the same prop state.
* Adds typedef for table of sections props

Bug: T300973
Depends-On: Ifaee451e1903f2accd0ada2f2ed6dfa3f83037b6
Change-Id: I382200bc603b6abf757a91f14a8a55a6581969bd
2022-02-21 14:58:51 -07:00
bwang 48f1f1355b Clean up: Remove ts-ignores in stickyheader.js
From what I could tell, most instances of `toHTMLElement` or @ts-ignore could be fixed by using typeguards or using Element over HTMLElement.
Element is a looser typing than HTMLElement, but given `querySelector` returns `Element|null` and the fact that we were already inconsistently using both Element and HTMLElement in this file, I feel it was a worthwhile tradeoff

Change-Id: I3512a98fa67c13a4383b9497e8588960259b5b68
2022-02-21 11:41:12 -06:00
jenkins-bot 8dde172451 Merge "Sticky header dropdown should not contain gadgets in personal menu" 2022-02-21 17:35:41 +00:00
Translation updater bot abf3725b27 Localisation updates from https://translatewiki.net.
Change-Id: I3819d51e8a8971b20284c3ec3938e21d174d97d8
2022-02-21 08:19:22 +01:00
jenkins-bot db902a3250 Merge "Offset the TableOfContents `top` property only when the sticky header is shown" 2022-02-19 01:32:03 +00:00
Clare Ming 098f65712e Fix long titles with wbr tags in sticky header
Bug: T300134
Change-Id: Ice45acf026e4ef0deee9c6d6f905634cad59c2e3
2022-02-18 17:14:15 -07:00
Jon Robson 2dcd99ed21 Sticky header dropdown should not contain gadgets in personal menu
Bug: T302087
Change-Id: Iae1f42c3c526398d7dea038786ae9001e118307b
2022-02-18 21:30:29 +00:00
Translation updater bot 08d2ae3171 Localisation updates from https://translatewiki.net.
Change-Id: I779eb40afb07e836d7e4f0deffb04293d600ab05
2022-02-18 08:42:51 +01:00
Nicholas Ray 29e40714bc Offset the TableOfContents `top` property only when the sticky header is shown
This uses the sticky header's `.mw-sticky-header-element` utility class
to conditionally offset the table of contents to the height of the
sticky header only when the sticky header is enabled.

Bug: T300077
Change-Id: Ibad97a11e708ba19acf27ca82320f7c3e5f80447
2022-02-17 12:20:15 -06:00
Translation updater bot ad4e582a8a Localisation updates from https://translatewiki.net.
Change-Id: I06c4e94437b7971ce82b87f1edc46bdbfa5b0af3
2022-02-17 08:13:44 +01:00
jenkins-bot 9b7d5ad473 Merge "Toggle ToC sections when clicking toggle button" 2022-02-16 22:30:25 +00:00
jenkins-bot 914e3d55e6 Merge "Add fetch tests from WVUI" 2022-02-16 22:07:18 +00:00
bwang 301e09916d Toggle ToC sections when clicking toggle button
Bug: T300167
Change-Id: If1150a9e018b232da900187383aaee9c9cf331a1
2022-02-16 15:48:28 -06:00
Translation updater bot 0d9166829d Localisation updates from https://translatewiki.net.
Change-Id: I0c4e5bf3f92da9bcf898ef7b1660e25f290a68cc
2022-02-16 08:14:50 +01:00
bwang a560fb814a Add fetch tests from WVUI
Bug: T288686
Change-Id: Ifeb2e355482d3d5920c2535c89193cc4f36a13c9
2022-02-15 14:00:40 -06:00
jenkins-bot 0f49a257d1 Merge "Collapse ToC by default & expand sections when clicking section headings" 2022-02-15 19:31:18 +00:00
jenkins-bot 45badb5127 Merge "Revert "Add fetch tests from WVUI"" 2022-02-15 19:16:06 +00:00
Bernard Wang 3c161cf49e Revert "Add fetch tests from WVUI"
This reverts commit 7e79ad5686.

Bug: T301810
Change-Id: Icc8ecf6b0f8b1106e0a69364da251ff52161f523
2022-02-15 18:47:37 +00:00
Translation updater bot 91ebd9da17 Localisation updates from https://translatewiki.net.
Change-Id: Ibcf44808de6fac4359b27c530cdd8023b7e962ff
2022-02-15 08:19:13 +01:00
Jan Drewniak 7d32ec80d3 Collapse ToC by default & expand sections when clicking section headings
Collapses sub-sections in the new table of contents by default
(except for non-js and reduced-motion users) and expands the
sections when the top-level section link has been clicked.

Refactors the `activateSection` TableOfContents methods into separate
`activateSection` and `deactivateSection` functions.
Adds `expandSection` and `collapseSection` methods.

Adds triangle icon as a visual expand/collapsed indicator
next to all ToC section headings and are hidden via CSS based on
whether or not the section contains subsections.

Adds test for tableOfContents.

Bug: T299361
Change-Id: I36b3ae7f9f633877683bc17a9444c970d7fa7293
2022-02-15 00:09:50 -05:00
jenkins-bot bdef6990fb Merge "Add fetch tests from WVUI" 2022-02-14 22:08:04 +00:00
bwang 7e79ad5686 Add fetch tests from WVUI
Bug: T288686
Change-Id: Ic95b620087fc14b055a3108999540769ac123ec8
2022-02-14 13:52:16 -08:00
jenkins-bot 97f231d0fb Merge "Trigger a window resize event when toggling sidebar state" 2022-02-14 21:06:39 +00:00
bwang 2a83dad477 Add back flex-grow for sticky header search bar
Change-Id: Id503163d85dfc519d4c47f95e4567dcacfa7458e
2022-02-14 13:08:07 -06:00
jenkins-bot 4557c0910b Merge "Use new ve.activationStart hook to hide header earlier when loading editor" 2022-02-14 18:33:19 +00:00
jenkins-bot a541859743 Merge "[eslint] Disable mediawiki/class-doc" 2022-02-14 16:15:34 +00:00
Translation updater bot 98c9673321 Localisation updates from https://translatewiki.net.
Change-Id: I6274a3144d0660bb72b24727099f2585bf9bd2af
2022-02-14 08:17:04 +01:00
Nicholas Ray 6b73bd2b41 Fix jsdoc comments for sectionObserver.js
Move jsdoc comment closer to the methods they are describing. This also
enables better typehint support.

I36b3ae7f9f633877683bc17a9444c970d7fa7293 will handle revising tableOfContents.js.

Change-Id: Ifcac7cfd88cd3f1c0405611c880a0d101d2aed3b
2022-02-11 12:17:38 -07:00
bwang 52c7c2ee75 [eslint] Disable mediawiki/class-doc
Given our use of constants for tracking classes this eslint rule
is more an annoyance than helpful.

Change-Id: I37570e3e851997d058f2d93777990dddb3d04089
2022-02-11 16:31:33 +00:00
Translation updater bot d4fb2960d6 Localisation updates from https://translatewiki.net.
Change-Id: I24f076cdda8875e95b8d88380f3cd9a02b7b213e
2022-02-11 08:44:49 +01:00
bwang 3e92800bd6 Move REST search client out of WVUI into Vector
Bug: T288686
Depends-on: I4afc8c38dc9c51d55b46b766a1417b1266963482
Change-Id: Iac6023bb6edca5c8dddc3bfd362db727b2534946
2022-02-10 10:17:10 -06:00
Translation updater bot 7084f9a9df Localisation updates from https://translatewiki.net.
Change-Id: I07c5527841015cf0377762fe02903dae522b0930
2022-02-10 08:44:14 +01:00
jenkins-bot 5ac2b88293 Merge "Move #mw-sidebar-button layout styles to Header.less" 2022-02-09 23:11:56 +00:00
jenkins-bot 306dc89bf8 Merge "Limit WVUI search to ES6 browsers" 2022-02-09 23:01:03 +00:00
Jon Robson 0c2981d772 Limit WVUI search to ES6 browsers
Rather than test for fetch, limit the code to ES6 browsers.

Depends-On: I96a03796628a74ace93579d45a582711400c09c1
Change-Id: I4ca10182491118e61e155f99c713d4cb1b4fc7f0
2022-02-09 22:10:11 +00:00
Ammarpad 5c4d917497 Update Vector SpecialVersion description
Bug: T300994
Change-Id: I3f624013ec4ce408c50d66eca7a91b55b1288ae9
2022-02-09 20:23:09 +01:00
Nicholas Ray 390155c67f Move #mw-sidebar-button layout styles to Header.less
Given that these styles deal with the layout of the sidebar button in
the main header and don't make sense in any other context (at least
currently), I think they belong in Header.less.

Change-Id: I191b9a404c82c5a1a80f97d98fa54535fdd53944
2022-02-09 09:29:47 -06:00
Translation updater bot 260c9a8c20 Localisation updates from https://translatewiki.net.
Change-Id: If1bc1d00bfa288da5a8f9b5735e58aeae4e9a102
2022-02-09 08:14:08 +01:00
jenkins-bot c621e0e91d Merge "HTMLLegacySkinVersionFieldTest: Adjust tests to closer to real situation" 2022-02-08 23:48:21 +00:00
Nicholas Ray 80a111d0e4 Fix TOC section activation on link click bug
We want the link that the user has clicked inside the TOC to be "active"
(e.g. bolded) regardless of whether the browser's scroll position
corresponds to that section. Therefore, we need to temporarily ignore
section observer until the browser has finished scrolling to the section
(if needed).

However, because the scroll event happens asyncronously after the user
clicks on a link and may not even happen at all (e.g. the user has
scrolled all the way to the bottom and clicks a section that is already
in the viewport), determining when we should resume section observer is
a bit tricky.

Because a scroll event may not even be triggered after clicking the
link, we instead allow the browser to perform a maximum number of
repaints before resuming sectionObserver. Per T297614#7687656, Firefox
wasn't consistently activating the table of contents section that the
user clicked even after waiting 2 frames. After further investigation,
it sometimes waits up to 3 frames before painting the new scroll
position so we have that as the limit.

Bug: T297614
Change-Id: If3632529f58c15348a7200258f4f5999ea0dadc4
2022-02-08 14:45:16 -07:00
jenkins-bot d94c685f02 Merge "Use bodyClasses option to register static classes on skin" 2022-02-08 16:25:02 +00:00
Func 1d67da02f8 HTMLLegacySkinVersionFieldTest: Adjust tests to closer to real situation
The behavior of data loading can differ between submitting and display,
so use FauxRequest to customize the method.
Also fix the order of parameters passing to assertSame(), the first one
should be the expected one.

Change-Id: Icfa062eada75c50cd2c8bc5db2930602d80e9ae7
2022-02-08 09:34:49 +00:00
Translation updater bot 6ec87052e9 Localisation updates from https://translatewiki.net.
Change-Id: Ieca15e7e87a50e79a3259b1f46bdacf5e2348251
2022-02-08 08:30:23 +01:00
Jon Robson 29498112ed Migration mode is now the default
- Reflect production.
- Update SkinVector migration notes.

Depends-On: Ia527e60901de59f9e094ca0f1ba62a67a2f808a2
Change-Id: I8efa56fa0644b2ceb33fdab16da5df1d44ee621f
2022-02-07 22:20:16 +00:00
jenkins-bot bcd4ee0ee1 Merge "Fixes for sticky header:" 2022-02-07 16:16:47 +00:00
Translation updater bot f322eaa6ea Localisation updates from https://translatewiki.net.
Change-Id: I4d188788b4c3be4e524302e683dbb92af58f2bbd
2022-02-07 08:24:55 +01:00
Reedy ee76b72905 SkinVector: Minor cleanup
Change-Id: I788710e17ebed933cc70b0cd88138b0a1051d72c
2022-02-06 22:48:51 +00:00
BrandonXLF 936bbc427a Only show scrollbars when needed in language menu
Bug: T301058
Change-Id: I19af6c27b7adf8a35ccbc4163c585e338240eb72
2022-02-05 21:24:47 -05:00
jenkins-bot b570e149e2 Merge "Remove `getElementsByClassName` usage from sectionObserver" 2022-02-04 23:47:02 +00:00
Clare Ming 19e5d2885a Fixes for sticky header:
- Make page title width fill container.
- Remove page title fadeout, replace with ellipsis.
- Prevent language button contents from wrapping.

Bug: T298885
Bug: T300036
Bug: T298887
Change-Id: I6b09f89ed89a9da7406cdf8b3a00698a9dd66d10
2022-02-04 15:36:35 -07:00
Jon Robson 6f7a6bb24b Use bodyClasses option to register static classes on skin
Bug: T298734
Change-Id: Ia2ae8e1c655aff8783c2602da992632cd5877bf8
2022-02-04 18:44:43 +00:00
Translation updater bot 985299ef9a Localisation updates from https://translatewiki.net.
Change-Id: Ie1f9e4e1ea4f9bf4b93d39202c107082a24ae628
2022-02-04 08:23:51 +01:00
Nicholas Ray 4d2ad52374 Remove `getElementsByClassName` usage from sectionObserver
Based on prior discussion [1], using getElementsByClassName probably
isn't worth it.

[1] https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/756675/8..13/resources/skins.vector.es6/main.js#104

Change-Id: Id7f8aff73a1d2082ebfeaa9488a815d96317c156
2022-02-03 17:33:42 -07:00
jenkins-bot 99294ce088 Merge "Hide sticky header below 1000px port width" 2022-02-03 22:20:53 +00:00
jenkins-bot 3ea4800c40 Merge "Add recursive template for toc" 2022-02-03 20:55:15 +00:00
Clare Ming 4d8b548f5f Hide sticky header below 1000px port width
Bug: T298836
Change-Id: Ie524f997d2f9847252afc215d3ac589e511ace07
2022-02-03 13:54:16 -07:00
Jon Robson ddcf51a9ec Drop skin override
This is often used by gadgets/scripts to request
information from the API. Given `vector` means old Vector
now that leads to styling issues.

The unfortunate side effect of this is that any code
checking mw.config('skin') === 'vector' will no longer work
and we'll likely need to patch various gadgets accordingly.

Bug: T300814
Change-Id: Ic920e91960cf81790096395256b75f8ed0dc4173
2022-02-03 19:00:24 +00:00
David Lynch 19edeeabe0 Trigger a window resize event when toggling sidebar state
Other page elements outside of Vector should be notified that the
content area is changing size, in case they need to adjust the size of
fixed elements. Triggering window.resize should allow them to adapt
without needing to write Vector-specific code.

A specific case of this: the floating edit toolbar when VisualEditor is
open would be incorrectly sized / aligned if you toggled the sidebar in
edit mode.

Bug: T300826
Change-Id: I79e0fc67b5e35c2fb975a0a3048184de0d63813e
2022-02-03 12:18:42 -06:00
jenkins-bot 59c89b2db7 Merge "Overriding getPortletData will soon be deprecated" 2022-02-03 16:28:27 +00:00
Translation updater bot b9d9167d9d Localisation updates from https://translatewiki.net.
Change-Id: I532d663d0b93cb3108fd5b0717028877445b0721
2022-02-03 08:47:00 +01:00
jenkins-bot c03a5974cb Merge "Pass skin name to Hooks::isSkinLegacy" 2022-02-02 22:52:54 +00:00
Jon Robson 9b8d1b64cb Overriding getPortletData will soon be deprecated
See Ib8fc4cd183df3ed059a2d7000c56ab0a11d34f47

Bug: T299456
Change-Id: I743088e2665f8b304fb6273e912f9a6e5ff92e66
2022-02-02 14:37:36 -08:00
Jon Robson 2a2ee9b4d4 Pass skin name to Hooks::isSkinLegacy
Hooks::isSkinLegacy is only checking the skin version
but not the skin name. This is likely why we are seeing
errors due a mismatch between the result of Hooks::isSkinLegacy
and SkinVector::isLegacy

The parameter is made optional as it is not
always needed. For example in the onGetPreferences
method the skin hasn't been set at this point so all
we need to do is check the skin version.

Bug: T299971
Change-Id: I98465d5f6429f0a57dd0a95efcda71f380f3e842
2022-02-02 13:55:16 -08:00
Jon Robson c59a3b756f Fix the opt in URl
Hash fragment is wrong

Bug: T300097
Change-Id: I9e63606b66195a3b3db95e519514019dbd7d1bdb
2022-02-02 18:54:13 +00:00
Translation updater bot 96db3770df Localisation updates from https://translatewiki.net.
Change-Id: Ia05854ef2d4429faa2b7a647335dcb2e66fc505c
2022-02-02 08:21:30 +01:00
Translation updater bot 5dc8f73f90 Localisation updates from https://translatewiki.net.
Change-Id: I5a2fdadec8e517263736892f6692acf15a3d06da
2022-02-01 08:28:45 +01:00
jenkins-bot 63b1bdbb2b Merge "Drop search related feature flags" 2022-01-31 22:05:45 +00:00
jdlrobson d8382ec96b Drop search related feature flags
Given Wikidata is the only project using modern Vector,
and the only project where the search API is not applicable,
this will result in a loss of autocomplete on Wikidata.org
which will fall back to the non-JS mode.

Bug: T290688
Change-Id: Iece5a4efd43e09cd90c842c9c134ca115b35f2b2
2022-01-31 21:00:22 +00:00
bwang 66359e8fa5 Setup jest unit tests and add basic test cases for AB.js and App.vue
Bug: T300561
Change-Id: Ib7c314b094bd823ae233374f63c9094724d6c06f
2022-01-31 20:50:33 +00:00
jenkins-bot 44e6289f8d Merge "Tests: Limit testGetTemplateData to current values to allow expansion" 2022-01-31 20:26:49 +00:00
jenkins-bot acbf2fb739 Merge "Changes the labels of the Vector skins" 2022-01-31 19:03:13 +00:00
Ed Sanders 1cd5bf4d41 Use new ve.activationStart hook to hide header earlier when loading editor
Bug: T299907
Depends-On: I0eaeb98719bf7a43e4a87366cfcd204f35b74650
Change-Id: I8e8b635b46e79c63c4dafbd2418c9be94528ec06
2022-01-31 18:32:55 +00:00
jenkins-bot fa3c528bef Merge "Don't show language alert on main page if it has no languages" 2022-01-31 18:15:49 +00:00
jenkins-bot af39ad98ea Merge "Language alert box should use Html::noticeBox" 2022-01-31 17:05:57 +00:00
Clare Ming 5d2bc68da1 Don't show language alert on main page if it has no languages
Bug: T299581
Change-Id: Idc5b702626249ebec5d627e7b88fd6adf3e3750a
2022-01-31 09:43:15 -07:00
Jon Robson c87f6a8b2e Tests: Limit testGetTemplateData to current values to allow expansion
In I0cd49e6d621cd437e440ac7f7627eaa064ab870c a new field will be
added. Our tests in Vector shouldn't fail every time this happens

Change-Id: Ieb4923e9f58f950ee02ce3eb1446b982d1f5724a
2022-01-31 08:05:33 -08:00
Translation updater bot 5daf29df0d Localisation updates from https://translatewiki.net.
Change-Id: Ic1ff753ee327d588c1da99758ded315102ce0b2b
2022-01-31 08:24:19 +01:00
Jon Robson ac084e930a [config] Vector should default to language button
This reflects production and avoids confusion during development
e.g. T299581#7660160

We already have overrides in place for all wikis where this should not
apply.

Change-Id: I45ecda031f83fc63c9c878c9caef42d327b2463f
2022-01-28 15:38:27 -07:00
jenkins-bot 6a43f3af49 Merge "Fix issues with language alert in sidebar:" 2022-01-28 22:26:21 +00:00
Clare Ming 588d273360 Fix issues with language alert in sidebar:
- Don't show language alert if:
  - language button is not in header
  - on main page
  - on special page
- Update message with sitename.

Bug: T299581
Bug: T295555
Change-Id: I6290ea440e6b4673f29939376ac47ab53a882001
2022-01-28 13:58:31 -07:00
Jon Robson e1f1899dae Add recursive template for toc
Depends-On: I5ceec7f7bdea8b16ba0b300486ec0c4f2202b602
Bug: T299065
Change-Id: I0205596f0f7c0f452e80bd6a1f49e59e8388b4b8
2022-01-28 19:58:57 +00:00
Clare Ming a1ba537f6a Enable sticky header by default
Bug: T297924
Change-Id: If95a917ab3fbbe49271c62e0ce1da8b74d0bd7b8
2022-01-28 10:46:48 -07:00
Jon Robson 029110810e Language alert box should use Html::noticeBox
Html::noticeBox doesn't output any deprecated classes so
will not conflict with any user gadgets now.

Bug: T299625
Change-Id: Ic9aef5c8ff3fae6a79c7cf82cc3c97714cf40b3d
2022-01-27 15:35:38 -08:00
jenkins-bot 0e08ae8c17 Merge "Rely on core TOC data to show the TOC in Vector" 2022-01-27 20:10:29 +00:00
jdlrobson a357b13ce0 Changes the labels of the Vector skins
In preparation for roll out of SkinMigration everywhere.
(Change to configuration will be done via backports throughout
the week)

Bug: T299927
Change-Id: Iebe60b560069c8cfcdeed3f5986b8be35501dcbc
2022-01-27 19:13:55 +00:00
jenkins-bot 24e7430734 Merge "Add sectionObserver and tableOfContents component JS to respond to intersection changes" 2022-01-27 17:13:08 +00:00
Jon Robson 6534f01162 Opt out of external link icons
This was related to two unintentional regressions as we switched
off the legacy feature in July 58c87018 in legacy Vector,
and 722b5fbf in modern Vector.

Bug: T298433
Change-Id: Id258e328d1691f7bd31d2b3c57d64d5434706561
2022-01-27 15:26:39 +00:00
bwang d244f43e39 Rely on core TOC data to show the TOC in Vector
Bug: T298796
Depends-on: I406acf333d28b3898e3bc4968d05224febd09b3c
Change-Id: Iebb9c86b409a49d211c320f540b9af409b604b5b
2022-01-26 16:14:17 -06:00
Nicholas Ray 3c433a5315 Add sectionObserver and tableOfContents component JS to respond to intersection changes
This commits sets up the Table of Contents to bold the active section
when the section is scrolled.

Unfortunately, because our content does not have actual sections but
instead has a flat list of headings and paragraphs, we can't use
IntersectionObserver in the conventional way as it is optimized to find
intersections of elements that are *within* the viewport and the
callback will not reliably fire during certain scenarios (e.g. with fast
scrolling or when the headings are not currently within the viewport).
Furthermore, iterating through a list of elements and calling
`getBoundingClientRect()` can be expensive and can also cause
significant forced synchronous layouts that block the main thread.

The best compromise in terms of performance and function that I've found
is to use a combination of a throttled scroll event listener and
IntersectionObserver's ability to asyncronously find the
boundingClientRect of all elements off the main thread when `.observe`
is called which is the approach this patch takes. Although this is an
unorthodox way to use IntersectionObserver, performance profiles
recorded while holding the "down" arrow and scrolling for 10 seconds
with a 6x CPU throttle are comparable between master and this patch:

master: https://phabricator.wikimedia.org/F34930737
this patch:  https://phabricator.wikimedia.org/F34930738

Bug: T297614
Change-Id: I4077d86a1786cc1f4a7d85b20b7cf402960940e7
2022-01-26 14:11:43 -07:00
Translation updater bot 3c7b1e0eef Localisation updates from https://translatewiki.net.
Change-Id: Ic08803bce8ca2761d3eaacdad81cd38d68298143
2022-01-26 08:26:59 +01:00
Jon Robson 9fba9b6b9e Do not load common.js twice
An error in both of these modules. This module is additive (it doesn't
replace the existing user module) so only needs to add new pages, not
append to existing pages.

Bug: T300070
Change-Id: I3ba2ce82ba924972d0f9fea763328510aef41f8e
2022-01-25 20:10:31 +00:00
Translation updater bot 252b41de79 Localisation updates from https://translatewiki.net.
Change-Id: Ie414f6d9506a5de628a0e75a1e924dd719a2fc53
2022-01-25 08:34:31 +01:00
jenkins-bot e4b73894b8 Merge "Update typescript to latest (v4.5.5)" 2022-01-25 02:19:31 +00:00
Jon Robson b1cdf4acae Opt in link should be different in migration mode
In migration mode the control for opting out is different

Bug: T299927
Change-Id: Ie824c9051c929641e5ebab7a7b4a062e469ed6a0
2022-01-25 00:54:51 +00:00
Nicholas Ray 76eb7caa2f Update typescript to latest (v4.5.5)
Vector's tsc version is currently reporting errors that the latest
typescript version doesn't report and vice versa. Upgrade to the latest
version to avoid these discrepancies.

Additionally:

Fix tsc errors that are now reported by updated version

Bug: T297614
Change-Id: I0eb67bcc1a5ce214fcf2d6f6433a5de3a845b6a6
2022-01-24 16:35:45 -07:00
Jon Robson 435c903523 Fix bug in SkinVersionLookup
Bug: T299971
Change-Id: Icd8874315bf3c5846b00e8c34eb1a739c4a0feba
2022-01-24 13:34:06 -08:00
Translation updater bot 26835ad0ce Localisation updates from https://translatewiki.net.
Change-Id: I4386c70c08b9ed4f024a065280460c0878612257
2022-01-24 08:29:35 +01:00
jenkins-bot 92e5d4fd46 Merge "Avoid escaping TOC section titles" 2022-01-21 16:30:47 +00:00
Translation updater bot c75bbde795 Localisation updates from https://translatewiki.net.
Change-Id: Ie10210c79628b683d1963b90db6f143e3c3c423e
2022-01-21 08:15:44 +01:00
jenkins-bot efb6b4d152 Merge "Respect useskin when operating in MigrationMode" 2022-01-20 22:20:33 +00:00
bwang 3abd70392b Avoid escaping TOC section titles
Change-Id: I81f92627642c20d0770b2bc3223e056fc646365a
2022-01-20 12:31:11 -06:00
jenkins-bot 555db12047 Merge "Use 'toc' skin option and render with new TableOfContents mustache template" 2022-01-20 18:09:34 +00:00
Jon Robson 6cd9cc5be0 Do not try to make watchlist collapsible on wikis where watchlist is disabled
Bug: T299671
Change-Id: I9b44401ad753881ca986157dc06bb4402edc1017
2022-01-20 09:42:58 -08:00
jenkins-bot bb3fae5adb Merge "Ensure sticky header ULS menu appears in default location right underneath the button" 2022-01-20 16:27:59 +00:00
Translation updater bot 9d8a36731b Localisation updates from https://translatewiki.net.
Change-Id: I84b6ee222b2b472028199eb32efefdc7977da1e9
2022-01-20 09:20:25 +01:00
Jon Robson 94bab9f45f Respect useskin when operating in MigrationMode
Bug: T299171
Change-Id: I7c183949c358a5eb07c273044f63ac6474a62ad2
2022-01-19 22:33:28 +00:00
bwang 8a957c0163 Use 'toc' skin option and render with new TableOfContents mustache template
Bug: T297611
Change-Id: I8332f7b9c9574d8dece4f7111b299b95533cf386
2022-01-19 14:38:51 -06:00
bwang c761aa2067 Ensure sticky header ULS menu appears in default location right underneath the button
Bug: T298835
Change-Id: I2e061d87ccdc95e052d84ab8ba8a6d041801f184
2022-01-19 19:37:25 +00:00
Jon Robson 1149d3d611 Drop watchlist in user menu feature flag
Working correctly. No longer needed.

Additional change:
* add tooltip to menu

Depends-On: I418ce75bda8015520d1f1742ddcdfefbc8b9a162
Bug: T289619
Change-Id: I42f21ca8836e5042d07102e1516ca386478dfabc
2022-01-19 16:10:32 +00:00
Translation updater bot 3b034ff49f Localisation updates from https://translatewiki.net.
Change-Id: I54d67ab88317d1a10c25cc3392c516f5582df303
2022-01-19 08:25:32 +01:00
Jon Robson 37ee126a85 Restore icons to user links dropdown
Follow up to
I62562969a00eb96c83af4519e0e34e4a77ed8b19

Bug: T289619
Change-Id: I88a2d4af97227bb69dc9a11ea7ceac54895d2376
2022-01-18 11:14:44 -08:00
Translation updater bot 593cf2c2a3 Localisation updates from https://translatewiki.net.
Change-Id: Ibcda721ba3256d9a6379bdc501587c7d1c697b20
2022-01-18 08:12:36 +01:00
Jon Robson 55bcce3cc0 Don't run Vector hook when menu absent from page
While editing I was seeing a fatal due to this error being null
Err on side of caution and check for existence of menu
Follow up to I8309492881142d47eec4da5cc4aa5c6febbd1b35

Bug: T289619
Bug: T299352
Change-Id: I62562969a00eb96c83af4519e0e34e4a77ed8b19
2022-01-18 02:05:37 +00:00
jenkins-bot 863cdc34bf Merge "Use field name for the hide-if statement" 2022-01-17 20:10:04 +00:00
Translation updater bot 688af2c851 Localisation updates from https://translatewiki.net.
Change-Id: I91657d3db1ccaf13eea6e7fec481343e87f90ebe
2022-01-17 08:15:25 +01:00
Func 0bd3a30343 Use field name for the hide-if statement
Field name without 'wp' prefix (which is used as the key in html descriptor) is required.
After I58f9df384df8ecc5ebae8cac68ec2251351bc984, values of fields that are supposed to be disabled would be loaded from default, use a miss-matched field name would be treated as disabled.
It works in UI now, but it's not a good idea to strip the 'wp' prefix on the server-side.

Bug: T298819
Change-Id: If98368ad400986afaef3187867f201044ebf0efb
2022-01-17 03:24:10 +00:00
jenkins-bot 7368a7d6e1 Merge "Add watchlist icon to Vector" 2022-01-14 17:19:43 +00:00
Ed Sanders da1fb74554 Sticky header: Wait for some repainting to happen after VE teardown
Waiting for one animation frame seems to make the sticky header
re-appear consistently.

Bug: T299114
Change-Id: Ie1230bf861f12e4e18a6adb0f6779c199d6954a1
2022-01-14 14:41:36 +00:00
Jon Robson dc6d020410 Add watchlist icon to Vector
Depends-On: I5b1af082503fe22ec6049784fc43b324534c5b95
Bug: T289619
Change-Id: Idda8c49fe2833f3a64d7cc6d6db91bb6c3cde07e
2022-01-14 01:25:11 +00:00
Jon Robson 591e1d296c [Refactor] simplify watchlist link generation and adopt new icon
Bug: T289619
Change-Id: I8309492881142d47eec4da5cc4aa5c6febbd1b35
2022-01-14 00:26:10 +00:00
Nicholas Ray 699579e646 Add clarifying comment for why scroll padding is applied to html tag.
Change-Id: I9f4b44536b1e8aace41c8699a0d1946a54aa0bfe
2022-01-13 11:59:59 -07:00
jenkins-bot 467283247c Merge "Cleanup: Only need to import one variable file" 2022-01-13 17:06:23 +00:00
Translation updater bot e05460d1b2 Localisation updates from https://translatewiki.net.
Change-Id: I83e653836c833a78498122d3397aabdc681afe62
2022-01-13 08:28:41 +01:00
jdlrobson f7e6e044dd Use configuration to skip vector-2022 skin
This allows us to manage changes going forward in configuration

Depends-On: If50fedaccf959f7ae74c86caf81555ef4f46abd1
Bug: T298923
Change-Id: I09e2b417b496678db0841354e90fdaf6237eb226
2022-01-12 22:32:13 +00:00
Jon Robson 5a0932835a Cleanup: Only need to import one variable file
Change-Id: I120a66ec7013d249e8c42e6e631ae568effaa925
2022-01-12 20:58:16 +00:00
jenkins-bot f6d9e155e0 Merge "SkinLessImportPaths should work on Vector 2022 edition" 2022-01-12 20:55:26 +00:00
Jon Robson df84ed42d2 SkinLessImportPaths should work on Vector 2022 edition
Change-Id: Ib3cf9c8820dc9baf1a2f85752b17e3dba3195f84
2022-01-12 11:38:27 -08:00
Translation updater bot 36981a3610 Localisation updates from https://translatewiki.net.
Change-Id: I46903f67df744e09c2a4a64e45d867ad8f9559ac
2022-01-12 08:26:59 +01:00
Clare Ming f4aafdd263 Update hook to check for new vector skin key.
Bug: T298916
Change-Id: I2946b773b8214cb277be61990df46b109a13748c
2022-01-11 16:44:20 -07:00
jenkins-bot 3159664ac7 Merge "Hide language button in sticky header if compact links disabled" 2022-01-11 21:22:02 +00:00
jenkins-bot 68b2bb23d1 Merge "Use .vector-search-box-auto-expand-width class to style intermediate search components" 2022-01-11 19:42:02 +00:00
Translation updater bot 2fa9ac3d66 Localisation updates from https://translatewiki.net.
Change-Id: I32d70849993cbbc8ca620af8d409613f5e495f72
2022-01-11 08:24:42 +01:00
Nicholas Ray 72120a36a0 Use .vector-search-box-auto-expand-width class to style intermediate search components
Before Vue/WVUI lazy loads, we have intermediate search components that
are rendered on the server and that need to be styled based on the
`autoExpandWidth` prop passed to the search component. This commit
refactors VueEnhancedSearchBox to use this class if present.

Additionaly:

* Cleanup fixmes from Id8d3bd4aa74113b91ecaf66cb58cf5625db8a302
* Replace `vector-search-box-show-thumbnail` class with
  `.vector-search-box-auto-expand-width` class in Header.less now that
  the class has been cached in the HTML.

Depends-On: Ic914ecaee591008f987bd6d754fda8628125de7b
Bug: T297531
Change-Id: Ia6b7afa990fa4b04578740b483ba21dbef45a016
2022-01-10 23:35:45 +00:00
Jon Robson cb94cf0ab9 Hide language button in sticky header if compact links disabled
Bug: T297579
Change-Id: I8d5294a986d76574284419efc7d384fc954a86c8
2022-01-10 14:42:26 -08:00
jenkins-bot 948f0392c9 Merge "Fix TypeError: document.querySelectorAll(...).forEach is not a function" 2022-01-10 20:59:09 +00:00
Nicholas Ray d9ef1ad66d Fix TypeError: document.querySelectorAll(...).forEach is not a function
Bug: T298910
Change-Id: Iaa67f36278af7805c5d915737d6b30e98b3f8484
2022-01-10 13:34:01 -07:00
Translation updater bot f8dd98ad6b Localisation updates from https://translatewiki.net.
Change-Id: I319b5e123f4d4b54da8a836a1f53d5155423d41e
2022-01-10 08:13:31 +01:00
jenkins-bot 25bfcf4d00 Merge "Ensure sticky header language button only shows when there are multiple languages and when ULS is enabled" 2022-01-07 23:42:51 +00:00
bwang 3dda2dda5b Ensure sticky header language button only shows when there are multiple languages and when ULS is enabled
Bug: T298705
Bug: T297579
Change-Id: Iae5db6fd0ec6ae66bb16e8579f14d3e799bf3cbd
2022-01-07 15:42:57 -06:00
jenkins-bot 0488310612 Merge "Restore gadget support to new internal skins" 2022-01-07 20:41:44 +00:00
jenkins-bot 84ed8343c2 Merge "Vector is split into 2 skins" 2022-01-07 20:16:57 +00:00
Translation updater bot 7476acadb6 Localisation updates from https://translatewiki.net.
Change-Id: I607c0571aa7c96dc574b02fcd39f52eb397530e1
2022-01-07 08:27:00 +01:00
jenkins-bot 97c3674d22 Merge "Reset scroll position when sticky header search input receives focus to fix Safari bug" 2022-01-07 01:30:45 +00:00
Nicholas Ray 416f4c3284 Use explicit line height for user menu items
IE11 doesn't support the `initial` value which results in hidden user
menu item text. Instead set an explicit value.

Bug: T298746
Change-Id: I89511419b2d2c753be96f9c1eb842ef80623bce7
2022-01-06 17:52:15 -07:00
jdlrobson 99cf6eb5be Restore gadget support to new internal skins
For vector-2022 skin:
* MediaWiki:Vector.css and MediaWiki:Vector.js are added via the
existing ResourceLoader hook.
* User:<name>/vector.js and User:<name>/vector.css are added via new
VectorResourceLoader modules

Bug: T297758
Change-Id: I37e9a9d353695502213c7a651530995252d9505f
2022-01-07 00:18:17 +00:00
jdlrobson 7d2d50873f Vector is split into 2 skins
A new vector-2022 skin is added. This will be the eventual home
of the new Vector skin when we are ready to migrate.

Please see SkinVector class for the migration plan to simulate this
as part of testing.

Bug: T291098
Change-Id: Ibaddf94a5bfb5e21bbbaf1e0aa1b343a3f566d2d
2022-01-06 15:52:10 -08:00
Nicholas Ray 17e742e2ab Reset scroll position when sticky header search input receives focus to fix Safari bug
I haven't found any code responsible for making the scroll position
jump. It looks like Safari is doing this on its own. Looking at the
focus event in detail [1], it looks like there is an `preventScroll`
option you can pass to .focus() which might help in this situation, but
unfortunately, Safari doesn't seem to support this. Therfore, a hack
like this may be necessary.

[1] https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus

Bug: T297636
Change-Id: I90651293b7dd0f7f2970ba06255a12617b43661f
2022-01-06 15:30:21 -07:00
bwang dca94de026 Fix caction menu button from having a width that's 1px too small
Bug: T294883
Change-Id: Ibda07f60d8e94305d36a6bdc2c095b1a93dd6cba
2022-01-05 20:55:43 +00:00
jenkins-bot 42fec59f54 Merge "Refactor search component expand behavior and add auto-expand-width prop to search component" 2022-01-05 17:52:35 +00:00
Translation updater bot 142d6614c5 Localisation updates from https://translatewiki.net.
Change-Id: I0694072b377f82a537b5128518e31a281e801c5a
2022-01-05 08:17:28 +01:00
Nicholas Ray 3028a4f9d8 Refactor search component expand behavior and add auto-expand-width prop to search component
In preparation for I30c670e3f195f77a27715c6b494a3088b7a55712, refactor
the search component expand behavior so that it can accomodate the new
changes in WVUI while maintaining backwards compatibility with the
status quo.

Additionally, pass/enable the `auto-expand-width` prop to the main
header's search. This will be inert until the new changes in WVUI have
landed.

Bug: T297531
Change-Id: Id8d3bd4aa74113b91ecaf66cb58cf5625db8a302
2022-01-04 15:14:49 -07:00
jenkins-bot dce2ea9566 Merge "Update Abkhaz language name" 2022-01-04 17:01:02 +00:00
Translation updater bot b1ec274b4a Localisation updates from https://translatewiki.net.
Change-Id: I34f31ccaa68a80a2878b0a6407eeb43acc80ce55
2022-01-04 08:29:39 +01:00
Translation updater bot b302054e98 Localisation updates from https://translatewiki.net.
Change-Id: Ife2af7ef89bd703abb02e83c2678e21b30bdb92e
2022-01-03 08:13:01 +01:00
Translation updater bot c7966b2041 Localisation updates from https://translatewiki.net.
Change-Id: I3514243feb90ac9831d4188a30cba788f12ddab1
2021-12-30 09:39:22 +01:00
Translation updater bot 2d8246e11f Localisation updates from https://translatewiki.net.
Change-Id: Ic9b33e22bad39df40bdab2225c7a8ad6681a5542
2021-12-27 09:33:10 +01:00
Amir E. Aharoni b064c131d6 Update Abkhaz language name
Bug: T298309
Change-Id: I735da5e1ce214fa41d4401274daa3ad361987344
2021-12-25 14:08:46 +02:00
Translation updater bot 939c89a72b Localisation updates from https://translatewiki.net.
Change-Id: I1807c6fa10d4d9d82266875481dccd8137ab493a
2021-12-24 09:11:05 +01:00
Translation updater bot 69a91758a0 Localisation updates from https://translatewiki.net.
Change-Id: Ibe92055267945b84e3d6f4389940387bc52b8aa2
2021-12-23 08:39:55 +01:00
jenkins-bot eccf02edfc Merge "Fix dependencies for debug mode" 2021-12-22 15:35:23 +00:00
Translation updater bot 289bcb291f Localisation updates from https://translatewiki.net.
Change-Id: Id18884c6f2cdac1d466e458af9ea7811e33ce55e
2021-12-22 08:35:37 +01:00
bwang 80141b61c9 Use core checkbox hack consistently for all dropdown and provide custom JS enhancements for the sidebar button
Depends-on: Id74a80cda6cf460cc2b579269b8d5b2ce81c8ca5
Change-Id: Ibd9518dab78d1d9a541b501d920fe3bd4d362093
2021-12-21 23:33:59 +00:00
jdlrobson d8010c321a Fix dependencies for debug mode
Saw Query.Deferred exception: mw.user.getId is not a function
when using debug mode due to missing dependency

Change-Id: I9ff89e5632da6941bce77b079dee36f47a5fbcc8
2021-12-21 23:00:12 +00:00
jenkins-bot af2b4a0da4 Merge "Add watchstar to sticky header (alternative)" 2021-12-21 19:30:28 +00:00
bwang bd799ecc2e Add watchstar to sticky header (alternative)
Bug: T294759
Depends-on: I88af8585e8fc75f77ebef867d267199aeb2c6592
Change-Id: I15c409830ef8970ff7319b4dd447904443949b8d
2021-12-21 09:40:48 -08:00
Translation updater bot 6de9169227 Localisation updates from https://translatewiki.net.
Change-Id: Id3e18de503799587a52dc82cf2308d2f02060dc9
2021-12-21 08:13:30 +01:00
Translation updater bot 4e8585957e Localisation updates from https://translatewiki.net.
Change-Id: I600452529ab340aa8448db1550444cd819d3fe54
2021-12-20 08:23:34 +01:00
jdlrobson 9444bc3e86 DRY up mw-ui- class generation
Repeated in multiple places now, making it harder to change
button/icon classes.

Change-Id: I3799d065ac0c4ccdc900cbebe9140fb8ea657008
2021-12-17 10:06:46 -08:00
Translation updater bot 9684566e4f Localisation updates from https://translatewiki.net.
Change-Id: Ifb5acda88572da10dff699f2769c5708c898b7da
2021-12-17 08:19:03 +01:00
jenkins-bot c6691a191d Merge "Disable table of contents in article body" 2021-12-17 00:17:16 +00:00
jdlrobson ef59d7b973 Disable table of contents in article body
This will currently remove table of contents in article body
for legacy and modern skin.

To prevent us deploying this in current form, a check is
added in generateHTML

This requires an adjustment of OverridableConfigRequirement to
support requirements which do not vary on whether the user is
logged in or not.

Bug: T297610
Change-Id: I847a284229e498b3aa04c16ea3f84c360e735052
2021-12-16 16:11:05 -07:00
jenkins-bot 44ef14574f Merge "Drop language A/B test bucketing check" 2021-12-16 22:00:45 +00:00
jdlrobson 5a8a3d0d13 Drop language A/B test bucketing check
The existence of this code means we can't safely use this service
inside the skin's constructor.

We no longer need this, so that's fine.

Change-Id: Iffd82c00030c4cf1238a931dc971ffb4686d2620
2021-12-16 12:15:47 -08:00
jdlrobson d79dbf37c9 Don't use ts-ignore. It is hiding real errors
We are passing the wrong arguments to
addVisualEditorHooks

Bug: T297119
Change-Id: I2f8ced4513a1e5fcca2a2a2393cbb8fd7a3db388
2021-12-16 10:27:42 +00:00
Translation updater bot d20e32f8d1 Localisation updates from https://translatewiki.net.
Change-Id: Ie83c6deba7cd2025907768708e9931902ff69d0a
2021-12-16 08:32:28 +01:00
jenkins-bot 9e710f9a96 Merge "Add composer test:size as shortcut bundle size test" 2021-12-16 00:00:23 +00:00
bwang 321e6b19e1 Move watchlist button out of user menu dropdown and adds temporary feature flag
Bug: T289619
Change-Id: I57addbed2ea8ead5d98bce659f3db1f88f8a5094
2021-12-15 23:21:37 +00:00
jenkins-bot d06a4ab2e7 Merge "Update skin authors to include web team" 2021-12-15 23:17:59 +00:00
jdlrobson cae801747f Update skin authors to include web team
Change-Id: I0aa3bf23f8b55b215d5429ced5e47e1395cf69bb
2021-12-15 22:43:45 +00:00
jdlrobson 44aeee5d83 Vector uses html-title-heading
The H1 is available with the correct attributes in core now, so
we can use that instead of our own markup. This also means Vector
will benefit from updates to the heading in core such as main page
special handling.

Bug: T297728
Change-Id: I4d10370678fad6455d73994bf340891760543b71
2021-12-15 22:27:48 +00:00
jenkins-bot 9efaaf8afa Merge "Add feature flag for sticky table of contents" 2021-12-15 18:16:16 +00:00
Translation updater bot 3f269d87e3 Localisation updates from https://translatewiki.net.
Change-Id: Id4ee92cb91fbab971db99918b52972289f0e1f95
2021-12-15 08:10:44 +01:00
jenkins-bot 8357b2c325 Merge "Validate the value of VectorWebABTestEnrollment" 2021-12-14 23:36:21 +00:00
Clare Ming 72fecd41f2 Add feature flag for sticky table of contents
- Add TOC feature requirement.
- Update data for SkinVector.
- Add TOC template.

Bug: T297610
Change-Id: I90bc5e21ba187ac9dd74d5e97763834795a0545b
2021-12-14 16:26:58 -07:00
jenkins-bot b538d23c57 Merge "Close .vector-menu-dropdown menus in modern Vector beforeunload" 2021-12-14 22:53:54 +00:00
jdlrobson 64ee622c73 Validate the value of VectorWebABTestEnrollment
The generation of JavaScript will throw a RuntimeException
making it obvious when an invalid A/B test has been setup.

Bug: T297662
Change-Id: I75b0e923463bf52f8fc5b5c6b7f9baf586053154
2021-12-14 22:22:26 +00:00
Translation updater bot 0cbf9c61d9 Localisation updates from https://translatewiki.net.
Change-Id: Ia395437065234bf77bbe5c6910382996fb18ed98
2021-12-14 08:44:20 +01:00
Clare Ming 60553ff324 Prevent A/B test enrollment hook from firing for unsampled
Bug: T297662
Change-Id: Ibeca32a3c0fab7de403d69ea274c653cf4bd6c0e
2021-12-13 17:31:17 -07:00
Nicholas Ray 3187fa41ad Close .vector-menu-dropdown menus in modern Vector beforeunload
Per T295085, because of the checkbox hack, these menu would stay open
when navigating back to a page.

Bug: T295085
Change-Id: Ief9523030384b4bcaa00379988e2042b4d177dcc
2021-12-13 17:24:44 -07:00
jdlrobson 983437312b Don't add language button to sticky header on pages without languages in content
In Commons languages appear in sidebar.
The language button shouldn't show in the sticky header on these wikis

Bug: T297362
Change-Id: I17d283a7c0ad20bdcaf39b234a7fe766880ab28a
2021-12-13 20:04:50 +00:00
Translation updater bot 326a9db5e3 Localisation updates from https://translatewiki.net.
Change-Id: Ic347171aa298f0f3befccf52a8e14fdaa5faf7a7
2021-12-13 08:24:32 +01:00
Kosta Harlan 23bfd3ff36 Add composer test:size as shortcut bundle size test
Change-Id: Id3c6519eba22babd694cc5fdf3ca85bd44ba7df4
2021-12-10 19:59:19 +00:00
jenkins-bot 1ceb673578 Merge "Move bundlesize test to MediaWikiIntegration test" 2021-12-10 19:55:16 +00:00
Clare Ming dfa649741d Fix format of VectorWebABTestEnrollment
mw.experiments.getBucket expects buckets to map to numbers

Bug: T295972
Change-Id: Ie3e35f78a42ed633ad2f26a72ad87a8bf190fc51
2021-12-10 12:18:49 -07:00
jenkins-bot dc6bd9af95 Merge "Remove need for html-class template property" 2021-12-10 18:03:22 +00:00
jenkins-bot 2e492515b3 Merge "Add language switching alert in sidebar for language in header" 2021-12-10 17:04:06 +00:00
jdlrobson ca501bb581 Remove need for html-class template property
Follow up to 9dcfc1f

This simplifies the template by removing the need for the html-class.
The font-size can be provided to the entire content area meaning we don't
need the link-only class

Change-Id: Id5c49358f6ec007b3205ee390cf68334a1e56de5
2021-12-10 08:40:01 -08:00
Kosta Harlan 6270246d44 Move bundlesize test to MediaWikiIntegration test
The main motivation is to reduce runtime by not invoking an unneeded
Selenium test phase in Quibble, which currently needs about 1 minute to
install npm dependencies.

Depends-On: Ieb7591f3c0ac843677a2a61b4ad47f920fc2ca2d
Bug: T255149
Change-Id: I0563421b3a3d3e6e81abec987c266ade275b47a1
2021-12-10 08:48:59 +01:00
Translation updater bot fd690f36fe Localisation updates from https://translatewiki.net.
Change-Id: I5762622cf9946d309fedaa4efabe98d4d13567c7
2021-12-10 08:27:43 +01:00
Clare Ming 9dcfc1ff27 Add language switching alert in sidebar for language in header
- Add i18n messages.
- Update relevant data methods in Vector.
- Update sidebar template + styles.
- Add new template partial for sidebar actions.
- Add feature flag to turn on/off alert.

Bug: T295555
Change-Id: I232ce13770917d51495391f4b8d8d1a3a8a7afb8
2021-12-09 16:37:36 -07:00
jenkins-bot cc44e46229 Merge "Define sticky header ULS behaviour" 2021-12-09 23:15:05 +00:00
jdlrobson 51cce2d0d4 Define sticky header ULS behaviour
* It sticks to the header on scroll
* It hides when the sticky header hides

Bug: T296680
Change-Id: I5a4e2ba42e172ea55fbdac8f35ec895f6b2756cd
2021-12-09 22:18:35 +00:00
Clare Ming 454a2845b4 Update A/B test enrollment name
Bug: T292587
Change-Id: Ib4174119e18496139bb942032a2401ebc4d1849f
2021-12-09 13:16:54 -07:00
jenkins-bot d0116e07f9 Merge "Make ULS in header quiet progressive button" 2021-12-09 17:33:03 +00:00
bwang b79290f5c9 Make ULS in header quiet progressive button
Bug: T291286
Change-Id: Id1e056330606b87bafb8f43e7ff28d96290465b4
2021-12-09 15:27:04 +00:00
Translation updater bot 95284c7a8e Localisation updates from https://translatewiki.net.
Change-Id: I5f99067ececef3b9c982a548eeb0e7daf2dfcb05
2021-12-09 08:24:45 +01:00
jenkins-bot a7c16c7f30 Merge "Feature flag language button in main page header" 2021-12-08 23:11:53 +00:00
Nicholas Ray 24a5817315 Feature flag language button in main page header
Per the ticket, when this flag is enabled (and the
VectorLanguageInHeader config is enabled) we want to move the language
button from the bottom of the main page to beside the main page's title.

This config can be toggled with the `languageinmainpageheader` query
param (e.g. `?languageinmainpageheader=1`).

Bug: T293470
Change-Id: I41b4677f80b939810d16907b508ab29936f8629c
2021-12-08 15:11:25 -07:00
Translation updater bot ac917532fa Localisation updates from https://translatewiki.net.
Change-Id: Ib739f6f4dca431f4598c2c802199d23d95b40f10
2021-12-08 08:14:00 +01:00
Clare Ming 43c1fee6b4 Add data-event-name attribute to sticky search icon.
Bug: T296999
Change-Id: I3d5d8534f1946a9e9c876451fb7f7605712827e4
2021-12-07 16:30:15 -07:00
jenkins-bot 662fa2a013 Merge "Align `mw.notify()` alerts to avoid overlapping sticky header" 2021-12-07 22:38:02 +00:00
jenkins-bot fa5cf0890a Merge "Use sans-serif for figures" 2021-12-07 22:12:00 +00:00
Arlo Breault 4df9857726 Use sans-serif for figures
This matches the .thumb class for the new media structure.

Bug: T287965
Change-Id: I55c2f8fdc6c1b882bd1c7b8411e7aa5c475ead3c
2021-12-07 21:44:21 +00:00
Jan Drewniak aa44696222 Align `mw.notify()` alerts to avoid overlapping sticky header
Aligns the notifications produced by `mw.notify` so that they don't
obstruct the sticky header or usage of elements inside the sticky header.

Bug: T260338
Change-Id: If00f27ec19e71f6803231678fbb733ffaa6c6aaf
2021-12-07 14:41:46 -05:00
jdlrobson fbc5241c45 [Documentation] Document decision in T293441 in code
Not 100% clear why it works this way so recording.

Change-Id: I8c6eb4c1e17916fe06b071dfc98f1c0d4529731d
2021-12-07 18:48:45 +00:00
Translation updater bot 13744f3bad Localisation updates from https://translatewiki.net.
Change-Id: Ica4ebff670a3734db02776c3e7b993272c7586f6
2021-12-07 08:13:47 +01:00
jdlrobson bb0b3373c7 Mount search to parent node of search form
Follow up to 5dee570cb2.

It seems the mount works slightly different in that it creates a div,
appends by the App element to the element you give it, after
clearing all it's child nodes.

The previous behaviour was that the old element was /replaced/
by the App element.

Bug: T296889
Change-Id: Iee7493c032f4de5389207bba288a1a70e4cd14f3
2021-12-06 22:42:31 +00:00
Translation updater bot 2088dd9793 Localisation updates from https://translatewiki.net.
Change-Id: I901a2fdac5cc80a724e3935b664c0de53a1b5833
2021-12-06 08:22:19 +01:00
jdlrobson d834329e15 [Sticky header refactor] Separate responsibilities
Move A/B test code to AB.js
Consolidate the show/hide code spread across scrollObserver
and stickyHeader by adding a show and hide function.

This is needed to fix T296680

Change-Id: Ia2e0c50278df0dfc1600610f281be20f4cc755c2
2021-12-03 14:30:10 -07:00
Translation updater bot 2bccc4e8d4 Localisation updates from https://translatewiki.net.
Change-Id: I593a9f1928a56147a565cd998f98ad92f95bf96d
2021-12-03 08:44:59 +01:00
jenkins-bot 23ac01428b Merge "Update search box margin in sticky header." 2021-12-02 22:37:36 +00:00
Translation updater bot bee9ef0695 Localisation updates from https://translatewiki.net.
Change-Id: I2e71fc39621751dfc4800dc574c91ae6c4571a69
2021-12-02 08:44:29 +01:00
Clare Ming 37c9a24f75 Update scroll observer to allow event logging
- Permits logging for scroll events without sticky header.
- Update function name to be more precise.

Bug: T292586
Change-Id: I441b4bf81bc4a36a03f0f1c215d86b01dce2911d
2021-12-01 16:12:06 -07:00
Clare Ming f45cd69381 Update search box margin in sticky header.
Bug: T296318
Change-Id: Icc70723a79ca9b2632229226ef43a1d29d025d09
2021-12-01 22:52:30 +00:00
Translation updater bot ca251c25f8 Localisation updates from https://translatewiki.net.
Change-Id: Ifc1ad14f60b9b6d7c983b2993541030fd70c30be
2021-12-01 08:16:56 +01:00
jdlrobson f0ed70d709 Restores language button icon font size
The font size of icons should never be changed. Since it's also a span

Bug: T296212
Change-Id: I8bf4e9a7d43a9e5206d3ff6d89e2c3f74fa0d25a
2021-12-01 01:08:49 +00:00
Translation updater bot 0b232afc06 Localisation updates from https://translatewiki.net.
Change-Id: Ibc1f508538927b4bf8bef1aabd46b69a21c0042a
2021-11-30 08:24:03 +01:00
vladshapik 262a520a2c Avoid using User::getOption
Remove using of User:getOption since this method
will be hard-deprecated. Now it is soft-deprecated.

Bug: T296083
Change-Id: I3194a9c1c5c70592f88bc4dbedc78846d1141768
2021-11-29 23:46:05 +00:00
jenkins-bot 8c19f565d1 Merge "Update style for page title in sticky header" 2021-11-29 23:11:58 +00:00
jenkins-bot 0b8c30cc25 Merge "Update sticky header height." 2021-11-29 22:56:37 +00:00
Translation updater bot abecd7b66d Localisation updates from https://translatewiki.net.
Change-Id: I782ae1872950d14a6320b31d8cd95c8ebdc646d3
2021-11-29 08:14:31 +01:00
Translation updater bot 6d7ba2bca6 Localisation updates from https://translatewiki.net.
Change-Id: I7df367a116031aee0ce653ce3c04ac84cbef2e70
2021-11-25 09:04:24 +01:00
Clare Ming d8eff021e1 Update sticky header height.
Bug: T296321
Change-Id: Ic8efa9404282a98aee37dcf9ba33a0b26d6abaff
2021-11-24 14:20:31 -07:00
Clare Ming 101c438c02 Update style for page title in sticky header
Bug: T296320
Change-Id: I0deabfb598e92f07296824c94a9c7c81daefe486
2021-11-24 13:59:16 -07:00
jenkins-bot 1c96e32b6f Merge "Remove unused markup icon" 2021-11-24 20:21:55 +00:00
jenkins-bot 409405474a Merge "Update sandbox user menu icon" 2021-11-24 19:35:51 +00:00
Translation updater bot a8c243134d Localisation updates from https://translatewiki.net.
Change-Id: Ia685ce317233109b5552b409394b6a6df26b5859
2021-11-24 08:24:38 +01:00
bwang a364e93d94 Remove unused markup icon
Bug: T288928
Depends-on: I553bbcc9f1a98d75e160ede7a66ffcf6510fa28a
Change-Id: I4c4ce87012325c239838de7dc0a7555ba6298d2b
2021-11-23 17:26:10 +00:00
bwang 3981333271 Update sandbox user menu icon
Bug: T288928
Change-Id: I9b781ade0cdc1114dc1cb2aa087fb49bf8aa4acd
2021-11-23 11:21:45 -06:00
jenkins-bot 5e7dc81e38 Merge "Ensure sticky header ULS is tracked by DesktopWebUIActionsTracking" 2021-11-23 16:09:45 +00:00
jenkins-bot ed4ec0079a Merge "HTMLLegacySkinVersionField: accept string 'default' value" 2021-11-23 11:27:41 +00:00
Translation updater bot 5c9f05c105 Localisation updates from https://translatewiki.net.
Change-Id: Ia5dd5e7d8dab4534b6ede62530b2ac0e014af44f
2021-11-23 08:28:11 +01:00
MusikAnimal 5207a15b91 HTMLLegacySkinVersionField: accept string 'default' value
After I628435a4a, we were asserting a boolean was given because we're
extending HTMLFormField which requires a boolean value. This was safe
because GlobalPrefs would provide a boolean, but that changed with
I594f6297.

We could rework GlobalPrefs once again to ensure only a boolean is
passed in, but since HTMLLegacySkinVersionField already has special
handling around the data types, it seems to make sense to contain the
type transformation in this class.

Simply removing the Assertion is enough to prevent T296068, however
depending on when the global preference was saved (such as since MW
1.38.0-wmf.9 but before wmf.10), it's possible either a bool or a string
was saved, hence we check for both to ensure correct display.

Bug: T296068
Change-Id: If10b948617d2bb8346475f207fe425fb768cb987
2021-11-23 00:57:25 -05:00
Translation updater bot ed61ffc192 Localisation updates from https://translatewiki.net.
Change-Id: Ia362619cfa11f461d83e9eca2419661d1be86ecb
2021-11-22 09:05:48 +01:00
bwang 90a3a226e7 Ensure sticky header ULS is tracked by DesktopWebUIActionsTracking
Bug: T289815
Change-Id: I1960614e12a50a20af157874b925610d29dfa2c7
2021-11-19 16:51:37 +00:00
Translation updater bot b8d0ee861b Localisation updates from https://translatewiki.net.
Change-Id: I9b9761cc1044e8037314ccd1557caebfe455dd84
2021-11-19 08:31:17 +01:00
bwang 54639c4af3 Fix icon button spacing, make it consistent with margin defined in core
Since a margin was added to adjacent sibling spans of icons (https://gerrit.wikimedia.org/r/c/mediawiki/core/+/736919), Vector icon buttons have had too much spacing. This patch removes the extra spacing defined in Vector CSS and the accidental whitespace that was included in the ULS buttons..

Change-Id: I308d1941c5f82cb144c2a9d233fbf44c730413a7
2021-11-18 18:55:00 +00:00
Translation updater bot 4cbfdcb2f7 Localisation updates from https://translatewiki.net.
Change-Id: I6b66bcc6dcc1d27b820e3d8360a66fe419218c9a
2021-11-18 08:44:01 +01:00
Clare Ming ea0fccb5b8 Disable edit button in sticky header for logged users.
Bug: T294926
Change-Id: I9c987a6962155b04b161111e1a1783d750fee74b
2021-11-17 13:54:02 -07:00
Translation updater bot d3e7ce493b Localisation updates from https://translatewiki.net.
Change-Id: I909f89e2042be6b526b2b340bc4db1942a533ddd
2021-11-17 08:32:23 +01:00
Translation updater bot 633275e093 Localisation updates from https://translatewiki.net.
Change-Id: Ica5e8e60220689ba2b5fb9521e45271e78133215
2021-11-16 08:17:34 +01:00
jenkins-bot 611af67401 Merge "Revert "Fix font size in editor preview"" 2021-11-15 20:11:19 +00:00
Esanders ad9492896d Revert "Fix font size in editor preview"
This reverts commit 058551e9b9.

Bug: T287733
Bug: T295712
Change-Id: Ic239d1334f09d2a1ecbb7f28d69abd0a349128e5
2021-11-15 18:03:50 +00:00
Translation updater bot 1d8b6d5d38 Localisation updates from https://translatewiki.net.
Change-Id: I96f516e20ecb200aa5104c3f32be22d421050f19
2021-11-15 08:15:52 +01:00
Umherirrender 0c154bba36 build: Updating mediawiki/mediawiki-codesniffer to 38.0.0
Change-Id: Ic16a1f89fc5ccae3eddd31b1d566128e60592b90
2021-11-13 19:01:31 +01:00
jenkins-bot 4982868628 Merge "search: Prepare for Vue 3 migration" 2021-11-13 00:09:18 +00:00
jdlrobson 058551e9b9 Fix font size in editor preview
Depends-On: I7eaef3ef89a23932edd5abdd74703eb3297ee061
Bug: T287733
Change-Id: I42c6a8da06d1ab9c4d546b940bc4d627b118e2a6
2021-11-12 17:50:31 +00:00
bwang b196d68326 Use searchFooterText slot in typeahead search component
- Create new 'vector-searchsuggest-containing' translation for WVUI search footer text
- Use 'search-footer-text' slot in WVUI typeahead search
- Remove instances of old 'footerSearchText' prop

Bug: T290392
Depends-on: I8fb7761e60be330e58cd017872318fe3675c0be1
Change-Id: I9c946f85c3e4a603c362c3ea4b8016c585cdd212
2021-11-12 10:47:55 -06:00
Translation updater bot 7a57ae93fe Localisation updates from https://translatewiki.net.
Change-Id: I772990e90deee00bc966f2f064e5efe1b81d4828
2021-11-11 10:04:42 +01:00
jenkins-bot 39ffd2c8e3 Merge "Revert "Apply typography rules to `.mw-body-content` elements outside `.vector-body`"" 2021-11-10 20:58:37 +00:00
Jdlrobson 0b6636d587 Revert "Apply typography rules to `.mw-body-content` elements outside `.vector-body`"
This reverts commit da832cc53d.

Reason for revert: Bartosz reports this made
things worse, so probably best to go with
the VisualEditor selector approach.

Change-Id: Ifcb18c7a388986df44424f9a58be35314c3d3e2c
2021-11-10 15:07:19 +00:00
jenkins-bot e95e48ce51 Merge "Add scroll event + init A/B test logging to sticky header, AB js" 2021-11-09 23:26:17 +00:00
Clare Ming 457dcfc472 Add scroll event + init A/B test logging to sticky header, AB js
- Pull IntersectionObserver into new file to share observer with different callbacks:
  - Wrap show/hide functionality of sticky header in conditionals based on user test group or by default.
  - Fire hooks for scroll event tracking in WME.
- Add new js for A/B test functions and variables:
  - Fire hook to send data for A/B test initialization.
- Update main js to include scrollObserver, A/B test init functionality.
- Add A/B test config.
- Update ResourceLoader package dependencies for sticky header.
- Though not a strict dependency, see I42e3e7c2084c1e88363d5d1662630ed23a28c4d2 in WME repo which uses these hooks to log scroll events.
- This patch includes changes from I56f40e706f8706fde1c0891a0561dd32c5e02bfc which were consolidated here for simplicity and ease of review - related to T292587 which calls for logging an init event for bucketing of users during A/B testing.

Bug: T292586
Change-Id: If6446e1e84cea3649905808c4f0e9f6862255fa3
2021-11-09 15:00:25 -07:00
jenkins-bot e3b5356aab Merge "Apply typography rules to `.mw-body-content` elements outside `.vector-body`" 2021-11-09 21:38:11 +00:00
jenkins-bot 4efa75aa7f Merge "Fix specificity of widespread `.external` selector" 2021-11-09 17:14:03 +00:00
jdlrobson da832cc53d Apply typography rules to `.mw-body-content` elements outside `.vector-body`
Bug: T287733
Change-Id: Ib737f215104b2aa234bf694e734de12fccff2fc3
2021-11-09 06:32:01 +00:00
Translation updater bot 63af267555 Localisation updates from https://translatewiki.net.
Change-Id: Ic5cf468df7639856dbcc7450f32db46e47519e7b
2021-11-09 07:31:41 +01:00
Volker E 2ba2af97cf Fix specificity of widespread `.external` selector
Returning to `a.external` over only `.external` as it's used widely
within MediaWiki and skins and it needs to kick in in appropriate
places.
`.external` is besides one false positive only for anchor elements,
nonetheless more specific is simpler and more fail-safe than the
other way round.

Change-Id: I3e2fec26d1f835b11f9a66fdf4ba7faeca12d9d2
2021-11-08 21:58:57 -08:00
Translation updater bot a20bf464b3 Localisation updates from https://translatewiki.net.
Change-Id: Iaa8925f1fa698a237b90b5e0fbf493809129c1cf
2021-11-08 08:19:02 +01:00
Roan Kattouw 5dee570cb2 search: Prepare for Vue 3 migration
Port the initialization code for the Vue search to use Vue.createMwApp()
instead of new Vue( ... ). The former mimicks Vue 3's API for mounting
components.

Without this change, this code breaks in Vue 3 (even in compatibility
mode) because the compat support for new Vue(...) is imperfect. By the
time renderFn is called, the searchForm container has already been
emptied by Vue's internal mounting code.

Instead, inspect searchForm and generate the prop list before mounting,
then pass the props to createMwApp() and mount the component.

Bug: T294476
Depends-On: I1fcdcf7bf87f5af2deb9763a231f2c360ea45b23
Change-Id: I5b6e66051d97e75f8f03b8258894daba22525797
2021-11-05 15:53:34 -07:00
jenkins-bot 04ff34bd0c Merge "Initialize the skins.vector.es6 module before the skins.vector.js module" 2021-11-04 18:11:29 +00:00
Translation updater bot ac481991e6 Localisation updates from https://translatewiki.net.
Change-Id: I1a8224d993adff5b85afd5b071eba88ab621fe06
2021-11-04 10:09:25 +01:00
jenkins-bot 2d501e987c Merge "Add comment to dropdownMenus.js regarding the CHECKBOX_HACK_BUTTON_SELECTOR" 2021-11-03 17:47:00 +00:00
Nicholas Ray c741759cab Initialize the skins.vector.es6 module before the skins.vector.js module
stickyHeader.js, a file in the "skins.vector.es6" module, clones the
user menu. Because of this, it must initialize before dropdownMenu.js, a
file in the "skins.vector.js" module, in order for dropdownMenu.js to
bind the correct checkboxHack event listeners to the user menu in the
sticky header.

Therefore, change the es6 module to export its main method. The
skins.vector.js module can then use mw.loader.using to ensure the
skins.vector.es6 module initialization happens first in browsers that
support es6. Browsers that don't support es6 will continue to initialize
the skins.vector.js module.

Bug: T291096
Change-Id: I1bb6f2da9703ed2679eacfdb42b9818efe614ab9
2021-11-03 11:03:18 -06:00
Translation updater bot 89b98d68b4 Localisation updates from https://translatewiki.net.
Change-Id: Ie14f5eba012ac013cff825fdc123085105e5c824
2021-11-03 08:22:59 +01:00
Nicholas Ray 7f58c88934 Add comment to dropdownMenus.js regarding the CHECKBOX_HACK_BUTTON_SELECTOR
Per request [1], a clarifying comment was added explaining that our
checkbox hack implementation has drifted from the core's recommendation.

[1] https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/732732/2/resources/skins.vector.js/dropdownMenus.js#7

Bug: T291096
Change-Id: I3a5bc9d463bace11185affbb21320d86fc1c5d99
2021-11-02 17:58:52 -06:00
Translation updater bot ea0f0a26fd Localisation updates from https://translatewiki.net.
Change-Id: Ib77428aa8c7473ecbed0fe6d43b3b127b8f2cbe1
2021-11-01 09:36:48 +01:00
Translation updater bot 43f6b74b6b Localisation updates from https://translatewiki.net.
Change-Id: I83035de7b29bc9c4ca49a2f015b1aea33f987094
2021-10-29 08:24:04 +02:00
Translation updater bot 9e81c8434e Localisation updates from https://translatewiki.net.
Change-Id: If87d6cf38a3f73b5830de352be80096865051748
2021-10-28 08:31:48 +02:00
jdlrobson 768a07ec6c Add sticky header edit feature flag
Can be disabled via &vectorstickyheaderedit=0 or configuration
change.

This will allow us to fine tune the edit features without blocking
deploying the existing feature.

Bug: T294383
Change-Id: Ic282ea4f2ff0108eeaa154c8a77e4e5fd30daeae
2021-10-26 21:59:29 +00:00
jenkins-bot 34d77d5e41 Merge "Sticky header edit icons trigger via JavaScript" 2021-10-26 17:32:50 +00:00
jenkins-bot 5641a38edf Merge "Fix title getting cut off in sticky header." 2021-10-26 15:51:01 +00:00
Translation updater bot 85d05d7a9a Localisation updates from https://translatewiki.net.
Change-Id: I764bc19247ebf3f036714def5170096ce8d0a6ce
2021-10-26 08:20:19 +02:00
Clare Ming 741d59df06 Fix title getting cut off in sticky header.
- Add padding to title class selector.

Bug: T289814
Change-Id: Iab167414d10ce256be8e966f115ae164c1bd3331
2021-10-25 20:51:43 -06:00
jenkins-bot 68aa856916 Merge "Remove duplicate `vector-menu-dropdown` class" 2021-10-25 22:59:52 +00:00
jdlrobson 0663087dd5 Sticky header edit icons trigger via JavaScript
Current expected behaviour: the editor experience will
load and the user will be thrown to the top of the page.

Bug: T293158
Change-Id: I3585616c2244a6b91ef5f160beb1cf51af3599aa
2021-10-25 22:35:13 +00:00
jenkins-bot c822029e38 Merge "Combine return paths in getLanguagesCached" 2021-10-25 21:52:02 +00:00
Nicholas Ray 24dbcd1a1a Remove duplicate `vector-menu-dropdown` class
This class is already being added via SkinVector::decoratePortletClass
so the one in the Menu template can be removed.

Bug: T291096
Change-Id: Icb9fa7a1e583ad4ef0138c5bd069aa68598c9b6e
2021-10-25 09:55:42 -06:00
Translation updater bot 028f3e7316 Localisation updates from https://translatewiki.net.
Change-Id: I099186b3472e8bf636d7b9710492c06250a50a84
2021-10-25 08:55:49 +02:00
Fomafix 574bbfd549 Combine return paths in getLanguagesCached
Also use single quotes instead of double quotes and fix typos.

Change-Id: Ibfd855f55f38ea824d38ad858b654d8229838cd1
2021-10-23 12:55:37 +00:00
Translation updater bot 4768a3695d Localisation updates from https://translatewiki.net.
Change-Id: I49207f7ba86f7fea8e3f4da0c5a0140685238820
2021-10-22 08:16:43 +02:00
jdlrobson ca0401789d ES6-ify sticky header code
- Can now use const/let
- No need for feature detection for things like fetch and closest
as we can assume they exist if ES6 support is available

Change-Id: I85b01add13fd74e1514119498815403e42a09af0
2021-10-21 23:44:30 +00:00
jdlrobson b8122cc40b Separate code from ES6 browsers from ES5 code
This will allow us to write ES6 code for the new features which
is limited to those browsers.

For browsers that do not support ES6, the code will not execute
because of the "es6" flag. Doing this will help us avoid issues
like T293402

Change-Id: Iffb7098cb22395e33b87352fb4f08516f6f25e6f
2021-10-21 15:55:04 -07:00
jenkins-bot 62347f0a74 Merge "Make dropdown menus toggle with enter key" 2021-10-21 20:22:41 +00:00
Nicholas Ray 876d3ddf39 Make dropdown menus toggle with enter key
Bug: T291096
Change-Id: Ia5d1a33aa04dab09f1454ade4816fdb9d48f1eca
2021-10-21 09:59:58 -06:00
jdlrobson c16fa80006 Sticky header: Add user page link to user menu in sticky header
Bug: T292557
Change-Id: Ia72c214ef6384dfeae21556aa4007eb6075f0057
2021-10-21 15:15:51 +00:00
Translation updater bot 1c3dde072b Localisation updates from https://translatewiki.net.
Change-Id: I1e8beed945466dc89ec154e885ef79209287bb8f
2021-10-21 08:24:30 +02:00
Translation updater bot b87a979d26 Localisation updates from https://translatewiki.net.
Change-Id: I7a72e3709125d3db4223bc33eefaf1d84e37a120
2021-10-20 08:40:09 +02:00
jdlrobson ae28c427d6 Vector should be notified by addPortletLink to collapsible where needed
Bug: T139830
Change-Id: Ibf17a3df7f9409a02f1a316d5da16b32fabcc5a2
2021-10-19 23:24:28 +00:00
jenkins-bot b1dd172a5f Merge "[a11y] Add title attributes to logout, talk and history and DRY up code." 2021-10-19 16:36:58 +00:00
jdlrobson 358d81ddce [a11y] Add title attributes to logout, talk and history and DRY up code.
* Addresses feedback in:
** T289816#7440605
** T283505#7440585
Change-Id: I98abdab8c3eb20567af527e6a8bf75faa5670d6b
2021-10-19 08:47:00 -07:00
jenkins-bot 7b63f7c751 Merge "Define documentable types in eslintrc instead of inline" 2021-10-18 21:14:26 +00:00
Clare Ming fa15608f3e Fix article title in sticky header template.
Bug: T289814
Change-Id: Ie12097f722053eb9efb557a1e9668d26104a7091
2021-10-18 14:00:47 -06:00
Ed Sanders 90b5ff5149 Define documentable types in eslintrc instead of inline
Change-Id: I80f0557a6355208d2694f3776cce2ee858573a9c
2021-10-18 18:08:32 +00:00
bwang a1b523a9d5 Avoid calling forEach on searchbox NodeList for older browsers
Bug: T293402
Change-Id: Ic2d10ca9c664c284fc9b5433b5ff1cc32d98c960
2021-10-18 17:56:05 +00:00
Translation updater bot ea58308a48 Localisation updates from https://translatewiki.net.
Change-Id: I68d3a0b8a1c1ed12ef53addf110cdeb5e917f663
2021-10-18 15:24:59 +02:00
jenkins-bot 041496585b Merge "Revert "Use searchFooterText slot in typeahead search component"" 2021-10-13 15:01:39 +00:00
Bernard Wang 7575cf97a5 Revert "Use searchFooterText slot in typeahead search component"
This reverts commit b7728ddda5.

Reason for revert: Depends on WVUI release

Change-Id: If97551a8609433b569fbc88800a7bf9ffc137587
2021-10-13 14:34:08 +00:00
Clare Ming 6c009f87c0 Make edit icons in sticky header untabbable for VO/screen readers.
Bug: T290201
Change-Id: I5248db6ab29b1a9a995a5053d84e63cfb7b9fd93
2021-10-12 16:02:52 -06:00
jenkins-bot 529ccd1a86 Merge "Use searchFooterText slot in typeahead search component" 2021-10-12 21:34:45 +00:00
Alexander Vorwerk e924b9b01c MediaWikiTestCase -> MediaWikiIntegrationTestCase
MediaWikiTestCase has been renamed to MediaWikiIntegrationTestCase in 1.34.

Bug: T293043
Change-Id: I9f8c1e134e9de9e7142ea18e2a9b903e6583cfdb
2021-10-12 01:10:33 +02:00
jenkins-bot e85783cb12 Merge "Update vector-intro-page translation description" 2021-10-08 21:47:39 +00:00
bwang ef889fec69 Update vector-intro-page translation description
Change-Id: I288f5d47cf272bfdfca5c2f5bba1445942cc4571
2021-10-07 16:27:08 -05:00
jdlrobson ba7d228cea [cleanup] Drop unused messages
Messages listed in ValidSkinNames must be used in a template.
None of these messages are used in templates (confirm by prefixing
with msg- and searching the repository.

Change-Id: I77387d67c27888d9726b1f67aaea484abddc4e2e
2021-10-07 17:03:12 +00:00
Translation updater bot 0cef8deeb8 Localisation updates from https://translatewiki.net.
Change-Id: Ib3fcbfae0103bffb35b11eb09431c7fd78ec4a36
2021-10-07 09:05:26 +02:00
bwang b7728ddda5 Use searchFooterText slot in typeahead search component
- Create new 'vector-searchsuggest-containing' translation for WVUI search footer text
- Use 'search-footer-text' slot in WVUI typeahead search
- Remove instances of old 'footerSearchText' prop

Bug: T290392
Depends-on: Ic92721d5aaf6b833c882a26e9a60b42ab91546fa
Change-Id: I34a184cc8f10172a7ebf67981731c3694d008446
2021-10-06 11:37:26 -05:00
Clare Ming c4d1d8c579 Switch order of edit icons in sticky header.
Bug: T289723
Change-Id: If54184eb28d32a189e539c74967918241ddcae41
2021-10-06 09:32:35 -06:00
Translation updater bot 755b20d8ad Localisation updates from https://translatewiki.net.
Change-Id: I61836dc3bad629ee24354ad1a99473e108b56af1
2021-10-06 09:30:23 +02:00
jenkins-bot 06475e55e7 Merge "Remove @min-width-logo, @margin-top-sidebar variables from screen.less" 2021-10-05 23:59:41 +00:00
jenkins-bot 29b35c25ac Merge "Add edit icons to sticky header" 2021-10-05 23:49:35 +00:00
Clare Ming 67e7eab714 Add edit icons to sticky header
- Add edit icons.
- Update data passed to sticky header, button templates.
- Show/hide edit icons client-side based on ids in fixed header.
- Disable sticky header when in Visual Editor mode.
- Use Visual Editor hooks to toggle IntersectionObserver.
- Remove extraneous js for setting offsets for other sticky elements (simplify by moving known sticky element th to css - follow up to https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/722475/comment/7b8ab2db_cd5c7e78/).

Bug: T289723
Change-Id: Ifbab2f1c4d716f8fc261e3d7fa35fc71c6065ec5
2021-10-05 23:31:19 +00:00
Nicholas Ray 87b565a5f0 Remove @min-width-logo, @margin-top-sidebar variables from screen.less
AFAICT these variables are unused.

Change-Id: I675de18cf4b2bb0b7aa913d4ad5801ca0e7eb155
2021-10-05 16:53:52 -06:00
jenkins-bot a2a6aabb6c Merge "Address cache related FIXMEs" 2021-10-05 22:20:12 +00:00
jdlrobson 95e3271e79 Address cache related FIXMEs
Follows up the sticky header search refactors
in caed16e

Change-Id: I5832bc04f0c675ff8bc1a00fff17b6b9f8399e6e
2021-10-05 21:53:09 +00:00
jenkins-bot ba00180eed Merge "Logo scales with font-size" 2021-10-05 19:21:04 +00:00
Translation updater bot 338a9eeb8b Localisation updates from https://translatewiki.net.
Change-Id: Ia78dc95a20961a2e1e838f01313b1816f90fa691
2021-10-05 08:31:29 +02:00
jenkins-bot bf3e17ab1c Merge "Replace getVectorMenu function with jQuery equivalent" 2021-10-04 19:00:45 +00:00
bwang 8758f87c4b Replace getVectorMenu function with jQuery equivalent
Bug: T292319
Change-Id: I9c9a179b3bcce9eccdf7037818823568f77f2b35
2021-10-04 17:55:49 +00:00
Translation updater bot 6960919063 Localisation updates from https://translatewiki.net.
Change-Id: Ib2b193edef177d4c02cbdeed7472fe74c8d4c78f
2021-10-04 08:58:36 +02:00
Translation updater bot d1b9eb9c04 Localisation updates from https://translatewiki.net.
Change-Id: I33e3809d051b3b694d52acaaf2ccf9d37eaf1a30
2021-10-01 09:31:34 +02:00
jenkins-bot 17ccb9ab3a Merge "Accommodate other sticky elements with sticky header" 2021-09-30 23:17:26 +00:00
Clare Ming e30c3408cf Accommodate other sticky elements with sticky header
- Update sticky header js to apply top offsets.

Bug: T289817
Change-Id: Id0e7bf7b018fbbfb2a9c1932314bf67f245b465d
2021-09-30 16:35:55 -06:00
bwang 405b52054f Update sticky header to be hidden to screen readers and not tabbable
- Adds aria-hidden="true" to the sticky header
- Adds tabindex="-1" support to Button.mustache and update sticky header button data
- Add tabindex to cloned user menu

Bug: T290201
Change-Id: I270db0485f08af310fb40365703da1efc07d3cb9
2021-09-30 09:47:57 -05:00
Translation updater bot cc8ff2170f Localisation updates from https://translatewiki.net.
Change-Id: Icd074626c3a6b649c3a8d91f1afc6bce79e3fa9c
2021-09-30 08:59:25 +02:00
jenkins-bot 74736571e7 Merge "templates: Move spaces into conditions for cleaner html" 2021-09-29 22:39:06 +00:00
jenkins-bot 8419d063cc Merge "Restore original more menu padding in legacy Vector" 2021-09-29 22:20:59 +00:00
jenkins-bot ac3382e91c Merge "Add scroll padding to the root element when the sticky header is enabled" 2021-09-29 22:18:05 +00:00
jdlrobson 4e8a3186a6 Restore original more menu padding in legacy Vector
One of the goals with desktop improvements is to not make any
visible changes to the original Vector skin.

In T289163 we wrapped links in a span, and moved the font-size
declaration to the span. The padding of the link is now applying
with font-size 16px.

Bug: T289163
Change-Id: Ifbf6f7a4c5cb6fda6389b33fc9962bdb03dd1f43
2021-09-29 21:33:38 +00:00
Nicholas Ray 1209b388e9 Add scroll padding to the root element when the sticky header is enabled
When the sticky header is visible, it has a global impact on the
scrolling UX. For example, it can undesirably overlap elements when the
user clicks on a jump link and when the user tabs through elements in
reverse order. Therefore, we need to add scroll padding to the root
element when the sticky header is enabled (when the feature flag is on
and at higher resolutions)

Known limitations:

* Scroll padding is supported by all the latest modern browsers except
for Safari [1]. This was considered an acceptable tradeoff with the
caveat that this decision may be revisited in the future as we learn
more about user interaction with the sticky header.

[1] https://caniuse.com/mdn-css_properties_scroll-padding-top

Bug: T290518
Change-Id: Ie5eb01d7eafd18ce740be620dfb5c8849386af6e
2021-09-29 14:25:26 -06:00
Umherirrender 5e4b0ef26a templates: Move spaces into conditions for cleaner html
When looking at raw html it always looks like something is missing when
there are trailing or leading spaces on attributes.
Just move the space into the conditions and it looks better.

Change-Id: I2a8d3246c43b8345eb819eae5887a39f68cfbdc0
2021-09-29 14:06:07 +02:00
Translation updater bot 67c309e27f Localisation updates from https://translatewiki.net.
Change-Id: Ibedf20d3ba84e86857e3785504147d09252d7469
2021-09-29 09:03:36 +02:00
jdlrobson e12fe1dbb0 Logo scales with font-size
Bug: T291895
Depends-On: Ie86a5b59fbf93a400796a4cac3724207830092b5
Change-Id: I194a11316e8ac68319f41c6a79b2c9cd081a4b66
2021-09-28 21:44:53 +00:00
Translation updater bot 253442da67 Localisation updates from https://translatewiki.net.
Change-Id: I46975cd7cc46cddf42b4d32bd08e65f4bbe33a34
2021-09-28 08:20:39 +02:00
jenkins-bot 20135a348e Merge "Wire up sticky header search feature" 2021-09-27 22:58:34 +00:00
jdlrobson 125ea5dea9 Wire up sticky header search feature
Bug: T289724
Change-Id: I784ea5eb12b6f43d19769ff48a14d3fd4627853c
2021-09-27 14:47:58 -07:00
jenkins-bot f9405739ed Merge "Vector menu items are wrapped in spans + improve Vector addPortletLink support" 2021-09-27 19:38:36 +00:00
Translation updater bot 6728104c3a Localisation updates from https://translatewiki.net.
Change-Id: I6a5cb922acdac0a8b59f16af9d037d9f68a87fc7
2021-09-27 08:38:15 +02:00
jdlrobson a6c0b21044 Vector menu items are wrapped in spans + improve Vector addPortletLink support
* In legacy Vector, menu items are now wrapped with spans. This
  consistency in HTML is required for splitting Vector into two
  different skins.
* Vector's portlet link items now support icons

Bug: T289163
Bug: T291722
Change-Id: I4464888983ac8b8b5f971e0c679dbeda09a61be5
2021-09-25 05:01:55 +00:00
jenkins-bot ce1888e6b6 Merge "Update anon user menu introduction link to be localized and not hardcoded" 2021-09-24 20:54:57 +00:00
bwang 8e35a09964 Update anon user menu introduction link to be localized and not hardcoded
Bug: T290813
Change-Id: I38bd95abbca0fea68a795986971da02ea25b1c36
2021-09-24 13:40:16 -05:00
jenkins-bot 84023ff39c Merge "Allow multiple search components on the same page" 2021-09-24 17:04:14 +00:00
Translation updater bot 205f343581 Localisation updates from https://translatewiki.net.
Change-Id: I5cd7a27694a9434f86ac6484da02af9eb083cec0
2021-09-24 08:27:24 +02:00
jdlrobson caed16e26f Allow multiple search components on the same page
Styling should not depend on IDs to allow us to have multiple
searches in the page.

Precursor for wiring up search in the sticky header.

This also tweaks performance metrics to track separate metrics
for the sticky header search

Change-Id: I5b4192a8f5a9f95af26c1faf904f7cc994323518
2021-09-23 23:23:58 +00:00
jenkins-bot 7bd31d0c8a Merge "Prevent gadgets from adding to the sticky header user menu via addPortletLink" 2021-09-23 21:46:04 +00:00
jenkins-bot 67cd5b7db3 Merge "Do not use User session in the constructor" 2021-09-23 19:25:04 +00:00
bwang a1f9122eed Prevent gadgets from adding to the sticky header user menu via addPortletLink
Bug: T291426
Change-Id: Ibe8837111011179245745c7b645f046efdbc6ee5
2021-09-23 12:17:55 -05:00
jenkins-bot 1adcb190f1 Merge "Defer to core for more template data" 2021-09-23 16:07:47 +00:00
Translation updater bot 6eceff747f Localisation updates from https://translatewiki.net.
Change-Id: Iea85c54f52b68db201d991174ee29550a515482d
2021-09-23 12:29:33 +02:00
Ammarpad 99930c4722 Defer to core for more template data
Bug: T289221
Depends-On: Ieb5398c3505602dfbf77d97f24f3d19f703924b8
Change-Id: Ib3ffe0b3f4fd7342b749cd827f40faa7a429bf23
2021-09-23 07:28:40 +01:00
jdlrobson d4befe8c39 Do not use User session in the constructor
This is going to be forbidden going forward.
The legacy lookup and overrides are deferred
until they are actually needed to keep the constructor
cheap

Bug: T289163
Change-Id: Ib23360e3439abc828404c1de8e0906915ee7d8b6
2021-09-23 01:36:42 +00:00
Ammarpad 2bcfac0f07 Remove redundant template data
These values are already provided in core

Bug: T289221
Change-Id: I36f5a22e3e866bc41502a9a53ec502b145955fbf
2021-09-22 19:18:05 +01:00
Translation updater bot 30c2da8ea8 Localisation updates from https://translatewiki.net.
Change-Id: Ibb7a26f53e9ed1e85d80b4a92e78ebb096f1975c
2021-09-22 08:12:25 +02:00
bwang 809a972676 Fix sticky header language button
- Fixes blank sticky header language button when no languages are present
- Adds arrow to sticky header language button

Bug: T289815
Change-Id: I36dc5fb0aad9c3ca1fced0d46e5167e8707f6731
2021-09-21 19:59:16 +00:00
Amir E. Aharoni 9afae1fcaf Update the wording of vector-language-button-aria-label
1. "Change article language" can be understood as changing the article
   itself. I'm changing it to "Go to an article in another language."
2. Remove comma splice.

Change-Id: I46c484129ecfda263603defe87c84906c1881c2b
2021-09-21 10:51:11 +03:00
Translation updater bot b049ccfc00 Localisation updates from https://translatewiki.net.
Change-Id: Iaecab14ab3ef2ae8f95a959f44cb681a2a238ae4
2021-09-21 08:10:52 +02:00
jenkins-bot 2fd714d833 Merge "Add aria-label to language dropdown menus" 2021-09-20 16:19:36 +00:00
jenkins-bot 5eea8cff03 Merge "Restore legacy new (red) link in legacy Vector to `#ba0000` & `#a55858` for visited" 2021-09-20 15:58:43 +00:00
jdlrobson 5919a26949 Restore legacy new (red) link in legacy Vector to `#ba0000` & `#a55858` for visited
Given we don't want to change the color in modern Vector we must rely on this
ugly hack to change the link color.

This can be revisited when Vector has been split into two skins
which can use 'mediawiki.skin.variables.less'.

Bug: T288739
Change-Id: I17401f897dce4e6adca9d05008899d28ff02517c
2021-09-20 13:13:48 +00:00
Translation updater bot 04e4b7e70d Localisation updates from https://translatewiki.net.
Change-Id: Iaed8e7fe96851b0d80d9234591c26b2c24d9f9b1
2021-09-20 08:21:46 +02:00
jenkins-bot 2f02c28258 Merge "Restrict sticky header to specified namespaces" 2021-09-17 19:27:25 +00:00
jenkins-bot fe953ae505 Merge "Fix aria-expanded status for user menu" 2021-09-17 19:27:22 +00:00
Clare Ming bdad84a7c9 Restrict sticky header to specified namespaces
- Hardcode allowable namespaces, actions for now in relevant js.

Bug: T290347
Change-Id: If482505be5de4b3e5bf130530f27f0d917ecaaa0
2021-09-17 19:07:04 +00:00
bwang d9a002574c Fix navigation menu h2 from showing in legacy Vector
Restores code removed in 50d866dc

Bug: T291264
Change-Id: Ibcdcd0a2dc31a0cdcfa570901765207dc729af6e
2021-09-17 15:03:21 +00:00
Translation updater bot f258da947d Localisation updates from https://translatewiki.net.
Change-Id: Icae8127f709c972a7b7b204520777afd03e7fb3d
2021-09-17 08:47:18 +02:00
bwang b295ccc931 Fix aria-expanded status for user menu
The user menu dropdown was announcing to screenreaders as "Personal tools expanded collapsed". This is due to the core icon classes causing the spans to be display: block. This patch adds !important to the relevant display styles to ensure the statuses are always read out correctly

Bug: T253650
Change-Id: I0b51af5da98af1bd0c0029db54420e395242842d
2021-09-16 13:48:26 -05:00
Translation updater bot adba7af0e3 Localisation updates from https://translatewiki.net.
Change-Id: Ifd0d0b907d100e3db1170ca9273fe4e8fb25a6a6
2021-09-16 08:13:13 +02:00
Clare Ming bdc8852a1c Add aria-label to language dropdown menus
- Update portlet data.
- Update menu template.
- Add translatable strings.

Bug: T289523
Change-Id: I9b8f40843609c0192afdabd3117167b933155842
2021-09-15 12:25:23 -06:00
jenkins-bot 3c894154df Merge "Improve heading structure and heading semantics by removing redundant headings and labels for modern Vector" 2021-09-15 16:43:41 +00:00
Translation updater bot 4c8cd0c6b6 Localisation updates from https://translatewiki.net.
Change-Id: Ib1e92f783b3449140e7175f548527a28485327e3
2021-09-15 08:16:44 +02:00
Nicholas Ray 93745e4800 Add search to sticky header
Per T289724#7342741, server renders an anchor tag pointing to #p-search
into the "button-start" bucket of the sticky header.

In the future after T289718, this anchor will then acts as a button when
the search module is loaded and searchToggle executes.

* skins.vector.search was modified to accomodate instantiating multiple
search components (one in the main header and one in the sticky
header).

* searchToggle.js was modified to accept a searchToggle element as a
param which the caller can then instantiate when ideal. For the sticky
header toggle, this needs to happen *after* the search module loads.
Before then, the toggle will act as a link.

* Drops one jQuery usage from searchToggle so that it can be jQuery
free. Because the native .closest method is used, IE11 support is also
dropped. However, the script feature detects and returns early if the
API isn't available.

* Makes App.vue accept an `id` prop so that multiple instances of it can
be created.

Bug: T289724
Change-Id: I1c5e6eee75918a0d06562d07c31fdcbd5a4ed6d5
2021-09-14 16:58:07 -07:00
jdlrobson f271c86238 [refactor] DRY up attribute suffixing
This makes the code more readable and allows us to apply
the suffixing in other places in the sticky header.

Change-Id: I44008c18a3faea2089bc93eb5ce7fea1cad1aaec
2021-09-14 23:34:48 +00:00
jdlrobson 21a21f7e93 [refactor] reduce usages of typescript type declarations
While needed for cloned elements, others can be avoided by
using more general Element class

Change-Id: Iaee121a9f746e9729b5ecbdec80915bf05c11655
2021-09-14 23:34:36 +00:00
jenkins-bot 8f2a5c58f2 Merge "Add history and talk page icons to sticky header" 2021-09-14 23:26:06 +00:00
jenkins-bot 056ec56208 Merge "Clean up for adding title to sticky header" 2021-09-14 22:22:01 +00:00
jenkins-bot bd1dab6bb8 Merge "[Storybook] Add Header component" 2021-09-14 21:45:53 +00:00
Clare Ming 5ec728ec60 Clean up for adding title to sticky header
- Update styles for fade out.
- Remove unused styles.

Bug: T289814
Change-Id: I0bdbaf1a1f0306d47df83f61811b0c85056415e0
2021-09-14 15:10:46 -06:00
jdlrobson 52204c0f1a Add history and talk page icons to sticky header
Bug: T290597
Change-Id: Ib590399df09a9da8e181b331d4227b0de30b9a8e
2021-09-14 12:34:47 -07:00
jenkins-bot b7ef3d9a0e Merge "Add page title to sticky header" 2021-09-14 19:31:33 +00:00
jenkins-bot 53d1508f62 Merge "Add user menu to sticky header" 2021-09-14 19:23:13 +00:00
Clare Ming 3362e62ef2 Add page title to sticky header
- Fade out after 500px.

Bug: T289814
Bug: T290596
Change-Id: Ice3054f417707261d7c06769cb92aa170cfadba1
2021-09-14 19:12:29 +00:00
Clare Ming 755f10cd0b Add user menu to sticky header
- Remove unused button, data from sticky header.
- Simplify template to leave sticky user menu placeholder.
- Update js to clone user menu with new ids.
- Include gadget-injected items in sticky user menu.

Bug: T289816
Change-Id: I23fde537efc2a66a2df22cd2633fbab034b73eb6
2021-09-14 12:57:08 -06:00
jdlrobson ad5c127239 [Storybook] Add Header component
* Moves screen variables relating to Header to Header
* Adds a Header storybook entry
* Moves data-logo from Logo template to Header.mustache
* Updates UserLinks to use USER_LINK_PARTIALS
* Renames confusing SearchBox story names
* Updates package.json to use a static folder.
* Use mediawiki.org for sourcing mw-ui-button and mw-ui-icon styles
since deploys there come earlier
* Removes usages of ID selectors

Change-Id: I0e158fa7e62c56a50cfff497d75f0808effd1eed
2021-09-14 18:33:10 +00:00
bwang 687c6a50d8 Improve heading structure and heading semantics by removing redundant headings and labels for modern Vector
- Apply aria-hidden to h3 in Menu template, ensuring the nav landmarks are still properly labeled, but no longer reading duplicate labels to screenreaders
- Remove "Navigation menu" h2 element, which is not needed as the nav landmarks are already labeled
- Remove searchbox h3 element, which is redundant with the search landmark
- Scope all changes to modern vector

Bug: T265993
Change-Id: I4e5da7a0699160fa57234bd126b75243e0157778
2021-09-14 10:47:05 -05:00
Nicholas Ray 326e11dfbf Scope styles that should only apply to the main header to Header.less
We have many styles related to the layout and visibility of search that
are only useful in the context of the main header. Since many of these
elements have classes that will also be in the sticky header, we should
scope these rules to the main header so that we avoid an uphill battle
of styles trying to override eachother.

Additional changes:

* We previously had a mix of #p-search and .vector-search-box selectors
for the same element in the CSS. Header.less now only uses
.vector-searchbox to avoid specificity wars.

* Removed nearly all of the #p-search rules previously found on L147 -
L167 in screen.less after observing nothing relatively bad happening
when they were removed.

Bug: T289724
Change-Id: I2e6c269e29717cd20d8acfaddc3631ea1b8fedfa
2021-09-14 15:34:05 +00:00
Translation updater bot 1a56dbb8c4 Localisation updates from https://translatewiki.net.
Change-Id: I6ca0de5f93273df25d24e531c7654eefaf04b826
2021-09-14 08:34:45 +02:00
Volker E f68dab62a6 Remove obsolete code for non-supported browsers
As we continue to live with software like 2010 wikitext editor for
a chunk of our users in foreseeable future, let's at least remove some
obsolete code sent down the wire.
Note that I haven't touched this code as part of If51f20137a00, but
when thinking about this again while doing a final code search
it seems appropriate to remove this the highly customized code
here in contrast to normal 'library' styles.

Bug: T258766
Change-Id: Id4993dcb5b5be6a399800d9c07e26ebe145a8372
2021-09-13 15:24:11 -07:00
jenkins-bot 6a0607afdf Merge "Inherit link colors from core variables and override @color-link-new" 2021-09-13 18:23:06 +00:00
jdlrobson 0238078aaf Inherit link colors from core variables and override @color-link-new
Vector should use the variables defined in core for red links

Bug: T288739
Depends-On: I799b46664f01c5631fb9d1ae4f5c43caeeaac818
Change-Id: Idcf5a54d76a1343d3407821b8a5b8d8ece8af9d0
2021-09-13 17:56:26 +00:00
jenkins-bot 82832b137a Merge "Remove disable dropdown behavior" 2021-09-13 07:05:25 +00:00
Translation updater bot 95faa643b3 Localisation updates from https://translatewiki.net.
Change-Id: I1b3d26c3e5be0134b3189a1e344c64576cc8ed03
2021-09-13 08:32:47 +02:00
libraryupgrader 1a54f2daa8 build: Updating composer dependencies
* mediawiki/mediawiki-phan-config: 0.10.6 → 0.11.0
* php-parallel-lint/php-parallel-lint: 1.3.0 → 1.3.1

Additional changes:
* composer.json: Updated phpcs command in composer test (T280592).
* composer.json: Added phpcs command to scripts (T280592).

Change-Id: Icdd62e1e68c64f0137b11d1aeae5def531abac1d
2021-09-10 22:54:21 +00:00
Translation updater bot 2cbaa646ac Localisation updates from https://translatewiki.net.
Change-Id: If7f5871baeb47a694bd48bcae751169d262f4888
2021-09-10 08:17:16 +02:00
jdlrobson 31dba307ed [refactor] SearchBox uses Icon template partial
Change-Id: I8ff49b85dd2151618e48251e0fc38152a50ca381
2021-09-09 18:57:37 +00:00
Translation updater bot c97591189d Localisation updates from https://translatewiki.net.
Change-Id: I6b26a9165a12862012099563ab072ebc48e97a64
2021-09-09 08:19:47 +02:00
jdlrobson 0be41f3414 [storybook] ButtonAndIcons should use Button template
Change-Id: I391cd6b3f9d167c1ff659bba6a5e12be7ff9a439
2021-09-08 19:32:31 +00:00
bwang 62149265e9 Add ULS to sticky header
- Rework Icon template into Button template to support all button variants
- Update ULS helper functions in SkinVector
- Update StickyHeader template to use the new Button template
- Update Storybook

Bug: T289815
Depends-on: Iba6cbbd6c6e48a1abfda342421822e3ff2715362
Change-Id: I718b3e05a988e20beb82d599e4168d497fa4c299
2021-09-08 12:39:55 -05:00
Translation updater bot e33d2aa335 Localisation updates from https://translatewiki.net.
Change-Id: Ia025e615230f23d19230723f5e022a41a9adb37c
2021-09-08 08:11:54 +02:00
jenkins-bot 6a1783eacc Merge "Make sticky header functional/visible" 2021-09-07 22:38:24 +00:00
jenkins-bot 084aec1e38 Merge "[storybook] Document button usage and update broken stories" 2021-09-07 22:34:14 +00:00
Clare Ming e639c9287d Make sticky header functional/visible
- Show sticky header after bottom of first h1.
- Hide sticky header before bottom of first h1.
- Add media query for reduce motion preference.

Bug: T290101
Change-Id: I2b1ecd31ac360a1ef5bf2f016978d6e0665a316c
2021-09-07 16:10:21 -06:00
jdlrobson 3ed167f318 [storybook] Document button usage and update broken stories
* add stories for buttons and icons using wvui and mwui
* Update user link stories
* Add the vector-menu-dropdown-noicon class to more and
variants menu
* Fixes the language button story and simplifies its code.
* Updates Hooks::makeButtonIcon to Hooks::makeIcon which
reflects the method purpose more. It doesn't output button
classes.

Bug: T289514
Change-Id: Ifd750da0c0181ec56f39ff00d653e88bfc848038
2021-09-07 21:23:33 +00:00
jenkins-bot 9e9f3ec0cd Merge "[refactor] Remove common UserLinks code" 2021-09-07 16:31:18 +00:00
jdlrobson ff8e29d240 [refactor] Remove common UserLinks code
There is no common UserLinks code. These styles serve
legacy only.

Bug: T288852
Change-Id: Ied191bc1bc5dbd48491fa285b5def265c7d5262d
2021-09-07 15:37:13 +00:00
Translation updater bot df4717abec Localisation updates from https://translatewiki.net.
Change-Id: I70261e7ae11ef5b2e20b1f8360b3bb4ad3c87b1c
2021-09-07 08:12:19 +02:00
Translation updater bot a4ec24d7bc Localisation updates from https://translatewiki.net.
Change-Id: I70b3f62ee9c448ce47f3308abd4aa1724a9b7993
2021-09-06 08:23:15 +02:00
libraryupgrader aaac2ba4b7 build: Updating stylelint-config-wikimedia to 0.11.1
The following rules are failing and were disabled:
* declaration-property-unit-disallowed-list

Change-Id: I5252d63ec939a711022844ed9e4c2d247e154820
2021-09-04 17:38:00 +00:00
jenkins-bot 9ffb6cb044 Merge "Restrict sticky heaader visibility" 2021-09-03 21:05:17 +00:00
Clare Ming af317dbc58 Restrict sticky heaader visibility
- Hide if javascript disabled.
- Hide at lower resolutions.

Bug: T289714
Change-Id: I0c669c7fc46fda7bf5055d20cc1cd54d472a9330
2021-09-03 14:19:24 -06:00
jdlrobson 0a47c667d8 Skin style for ULS no longer needed
Fixes upstream in ULS (Ie9e30af5468aea9803d77c9a36e480ba2b2e86a0)
mean these are no longer necessary

Bug: T289630
Change-Id: I1edee874a42b070bc319648496ae80a01b6365fb
2021-09-03 20:13:24 +00:00
jenkins-bot fed987d079 Merge "Simplify how we generate icons and button classes in Vector" 2021-09-03 19:54:03 +00:00
jdlrobson b88f2970f7 Simplify how we generate icons and button classes in Vector
- Separate icon classes from button classes in user links/language
- Upgrades the personal tools language button preference to
a mw-ui-button with icon
- Adds a generic selector for dropdown menus without an icon
- Cleans up user links CSS now mw-list-item class is available
- Removes icon hack CSS

Bug: T289630
Bug: T283757
Change-Id: Ib518858e06549f252d73d57fd4768f446cc561b9
2021-09-03 19:25:31 +00:00
jenkins-bot 70c43d38d4 Merge "Add userGroup to skins.vector.icons" 2021-09-03 18:16:23 +00:00
Martin Urbanec 71539a7cc6 Add userGroup to skins.vector.icons
Will be used as part of Growth's mentor dashboard.

Bug: T289054
Change-Id: I0055890dcdb451e60b7176069bfcee8f3c8fa886
2021-09-03 14:37:29 +02:00
Translation updater bot 7074d990a6 Localisation updates from https://translatewiki.net.
Change-Id: I814d24544607b4c71a71ab3e58c6e0b181110eda
2021-09-03 08:16:26 +02:00
jenkins-bot 2efbbc7af8 Merge "Do not hard code Special:Search" 2021-09-02 21:53:10 +00:00
jdlrobson 520dfd2260 Do not hard code Special:Search
Bug: T287540
Change-Id: I234acbaa2cce8f43653507b4298090c50451699d
2021-09-02 20:20:56 +00:00
Nicholas Ray 1ab4600e4d Add 'is-language-in-header' key back in
Looks like this was an unintentional deletion from

I16223ce849267e718aad22b8a24b2327332ac8b7

Change-Id: I56350d7e936b4d179c1bd12376ffebf295897a99
2021-09-02 13:56:59 -06:00
Translation updater bot 877e001ea9 Localisation updates from https://translatewiki.net.
Change-Id: Ib2edf09d9700c012eead088de575bbd2a1a1fc6a
2021-09-02 08:28:23 +02:00
Clare Ming 21c45837ef Spoof aria-expanded for dropdown menus using checkbox hack
- Mimic expanded/collapsed state of menu without JS.
- Update template, styles, i18n to make accessibility of dropdowns accurate.

Bug: T253650
Change-Id: I58ecebf520d6107554dbb81470dee69a5d4a7f1d
2021-09-01 16:12:26 -06:00
jenkins-bot 94d135ecfa Merge "Build the sticky header skeleton" 2021-09-01 20:35:21 +00:00
jdlrobson 8657171471 Build the sticky header skeleton
The sticky header is currently disabled unconditionally
and nothing is wired up, with placeholders for data and
functionality which will be added in future.

Bug: T289716
Change-Id: I16223ce849267e718aad22b8a24b2327332ac8b7
2021-09-01 12:32:31 -07:00
jenkins-bot c34ba94a94 Merge "Set responsive max-width on username in header" 2021-09-01 15:01:46 +00:00
Translation updater bot 3f5abe98e0 Localisation updates from https://translatewiki.net.
Change-Id: I880ec5478d26f3b2088f2212566661ca3eb5e1bd
2021-09-01 08:18:13 +02:00
Nicholas Ray 5ca9d00d55 Set responsive max-width on username in header
Per T287522#7295558, the username should have a computed max-width of
200px above 1200px and a max-width of 155px below 1200px.

Additional changes:

* Use flex-wrap: nowrap on header instead of wrap. I think the former
may have been an unintended consequence of the consolidated links
feature flag clean up.

* Use core's text-overflow mixin for both the username and the usermenu
items

* Change the user menu's max-width to use relative units

Bug: T287522
Change-Id: I536e6371f85ccde75673af46c7667eb447eff081
2021-08-31 17:06:35 -06:00
jdlrobson c8dd4e9ed1 Remove disable dropdown behavior
Now that we bind the ULS dialog to the checkbox element,
(see c08ae11) the default behaviour of the checkbos is prevented,
so it is impossible for the dropdown to ever
be shown when ULS is enabled and clicked so this code no longer
serves any purpose.

Depends-On: I97a69c30b27cb1ded06451389e086229561c3589
Change-Id: Ic9d03dea12ee8bb2d7430eccd70e4343e3805d36
2021-08-31 20:53:41 +00:00
jenkins-bot 3ff5e1b6a4 Merge "Update ULS button states to be consistent with other quiet buttons" 2021-08-31 19:44:15 +00:00
bwang c08ae1152e Update ULS button states to be consistent with other quiet buttons
- JS-enabled ULS button gets a focus state by moving the ULS click handler to the Menu checkbox instead of the h3, and unhiding the checkbox
- JS-enabled ULS button no longer gets a darker background when the menu is open (ULS default style)
- JS-enabled and no-js ULS buttons both rely on mw-ui-button and mw-ui-quiet classes for focus/hover/active states
- Old styles and skinStyles are removed

Bug: T283757
Change-Id: I66073d6128a27afbd80a7adcff03cc7fcefa9556
2021-08-31 10:59:59 -05:00
Translation updater bot c2f7dd92d9 Localisation updates from https://translatewiki.net.
Change-Id: I0e63c84b56d3b8f3c354318048b7714f43c7f30d
2021-08-31 08:17:46 +02:00
Nicholas Ray a35b21d2cf Correct positioning of search icon before WVUI loads
WVUI sets the icon as `left: -11px` [1]. Vector should do the same to
ensure the icon doesn't move when WVUI loads. Also set top and bottom
properties to zero so that the height of the icon's container is the
same as in WVUI (32 px).

[1] https://phabricator.wikimedia.org/F34622194

Change-Id: I73fa55f9013dc1bdd51581d357109d4817638d91
2021-08-30 16:59:12 -06:00
jenkins-bot a068d6125d Merge "Template directory is set in skin.json" 2021-08-30 17:43:50 +00:00
Translation updater bot 4380ea018a Localisation updates from https://translatewiki.net.
Change-Id: I25c45b4915c5036e34e43e9686ea00d94e76e486
2021-08-30 08:22:12 +02:00
jenkins-bot fef51f9023 Merge "Improve readability of anon user menu for screenreaders" 2021-08-27 20:36:16 +00:00
jdlrobson 3435f8fd9b Template directory is set in skin.json
Thanks to the upstream changes in T262067 we can make this template
directory relative to the skin and declare it inside skin.json

Bug: T262067
Change-Id: Ieccdf87979d14eeec0834b6b0cecf064d5fd9cfc
2021-08-27 17:36:28 +00:00
Translation updater bot d7c25a14db Localisation updates from https://translatewiki.net.
Change-Id: I0c38ed77447956768616132219870c064c9307ef
2021-08-27 08:45:51 +02:00
jenkins-bot 73e8d0ebc3 Merge "Remove user links feature flag" 2021-08-26 18:49:29 +00:00
bwang d15005408f Improve readability of anon user menu for screenreaders
Bug: T288293
Change-Id: I10ca58aa492447f179c0ce12eabc0cd1ce4e9d9b
2021-08-26 12:58:10 -05:00
Clare Ming 1efe0a4203 Remove user links feature flag
Update/remove config, constants, hooks, templates, styles, logic, tests, stories to check legacy vs modern Vector where applicable instead of the decommissioned user links feature flag.

Bug: T288852
Change-Id: I5c5831091a10711838a8a2877c782df4996d4596
2021-08-26 10:07:15 -06:00
Translation updater bot 4f444b031f Localisation updates from https://translatewiki.net.
Change-Id: I0b8823c0385e11c82d89e78dd523f9d2264a392f
2021-08-26 08:39:20 +02:00
jenkins-bot 30cdc5894e Merge "Do not show create account link for private wikis." 2021-08-25 21:40:46 +00:00
jenkins-bot 6e6be4fbf5 Merge "Replace deprecated CentralIdLookup::factory" 2021-08-25 21:31:27 +00:00
jenkins-bot 7afd480266 Merge "Add title attributes to menu icons on hover" 2021-08-25 21:25:17 +00:00
Clare Ming cd2a186469 Do not show create account link for private wikis.
- Add conditional to check for 'createaccount' permissions based on config.
- Update relevant template to show/hide create account markup.

Note that this solution excludes the use case of extensions using core hooks
to disable account creation. See https://phabricator.wikimedia.org/T288428#7303233.

Bug: T288428
Change-Id: I89852207ee42f5ddd07e5dd6141461c6bfbcd5ac
2021-08-25 21:23:49 +00:00
Clare Ming 3dccc74b4b Add title attributes to menu icons on hover
- Add title attribute to Header template for hamburger icon.
- Override tooltip for user links menu icon for anon users.
- Make sure tooltips are empty for legacy version.
- Add translatable strings for new tooltip, title.

Bug: T287494
Change-Id: I84ce6a1eb2a37eb9ea71a40c565c059d156a44ba
2021-08-25 13:20:22 -06:00
TChin a841713f35 Replace deprecated CentralIdLookup::factory
Bug: T289713
Change-Id: Icba4d81d66a40012658172929ed4e015c074b903
2021-08-25 13:58:49 -04:00
jenkins-bot 92e034fbe7 Merge "[refactor] Clean up responsive handling" 2021-08-25 16:17:20 +00:00
libraryupgrader 6a2f7a5d63 build: Updating npm dependencies
* path-parse: 1.0.6 → 1.0.7
  * https://npmjs.com/advisories/1773 (CVE-2021-23343)
* url-parse: 1.5.1 → 1.5.3
  * https://npmjs.com/advisories/1776 (CVE-2021-3664)

Change-Id: I6945dcb93475ce199f1a105fa525e555b5d8f94b
2021-08-25 14:46:31 +00:00
jenkins-bot 967962cb51 Merge "Add imageGallery icon for UploadsLink and ContentTranslation menu links" 2021-08-24 18:08:00 +00:00
bwang d9dadf4a83 Add imageGallery icon for UploadsLink and ContentTranslation menu links
Bug: T288541
Change-Id: I9b71869c84c9745abbe233b11bb662aa0d4bb987
2021-08-24 16:57:27 +00:00
jenkins-bot af2a64d140 Merge "Update vector menu hide dropdown class to use BEMish convention." 2021-08-24 15:54:03 +00:00
Clare Ming 129bf5c350 Update vector menu hide dropdown class to use BEMish convention.
- Keep double-dash class name for cached HTML.
- Update instances of renamed class in less + js.

Bug: T253671
Change-Id: Ieb1ce630e8fa84167e2ca8497f66a20183fdaf90
2021-08-24 15:33:41 +00:00
Translation updater bot ea840ed7b3 Localisation updates from https://translatewiki.net.
Change-Id: I975f58ef2e2ff26ded4225116bf9468852f24148
2021-08-24 10:27:49 +02:00
jdlrobson 391d9ba509 [refactor] Clean up responsive handling
There is no need for this to be in the constructor. Separate into
its own function that inherits from parent class and existing parent
method isResponsive.

Change-Id: I60d155ec9db99ccfe0b74271dee76275a8a6986c
2021-08-23 15:59:15 +00:00
Translation updater bot d6778948da Localisation updates from https://translatewiki.net.
Change-Id: I054b78422c3e595b32c1a90d340cfa16c9f7dcf0
2021-08-23 09:06:03 +02:00
Translation updater bot c8ea221555 Localisation updates from https://translatewiki.net.
Change-Id: Icfdf57bdf841a9b8cfc45cbdd46e5a3d9b3ff876
2021-08-20 08:25:44 +02:00
Translation updater bot 6e4ce42fa1 Localisation updates from https://translatewiki.net.
Change-Id: Ife0d68455e87684c61dc1b259da29eb66e4b5df6
2021-08-19 08:15:16 +02:00
bwang a50b1db793 Replace deprecated 'content' and 'content-thumbnail' features with 'content-media'
Bug: T287410
Change-Id: Iab67cedd67a03420b9204c92549f616d63266497
2021-08-18 19:08:10 +00:00
Translation updater bot 95af98644c Localisation updates from https://translatewiki.net.
Change-Id: Ib7d87bbd199abdace98d1ddba4c1ba419d67f7bd
2021-08-18 08:14:48 +02:00
Translation updater bot ce8cd44b0e Localisation updates from https://translatewiki.net.
Change-Id: I0673cbf87e619d4409bfbc8ee908749f5425798f
2021-08-16 08:18:32 +02:00
jenkins-bot 7053d84941 Merge "Revert "Add wikibase skin style"" 2021-08-13 21:40:13 +00:00
Jdlrobson b7464135cc Revert "Add wikibase skin style"
This reverts commit c595cc5106.

Reason for revert: Doesn't work. Must be done inside Wikibase extension.
See Ic576d8de9377813f7fe2d48841c1b6f303579728

Bug: T287206
Change-Id: I9904a72e4965a4124e4784501a3b4e77167a2971
2021-08-13 21:18:53 +00:00
jenkins-bot 040cbb7dc4 Merge "Use the search title if configured" 2021-08-13 18:11:07 +00:00
jenkins-bot 1c93c90902 Merge "Use centralized MediaWiki typescript definition" 2021-08-13 17:23:44 +00:00
jenkins-bot ed3abdd4c4 Merge "Add wikibase skin style" 2021-08-13 16:12:46 +00:00
Translation updater bot e02f0d72ad Localisation updates from https://translatewiki.net.
Change-Id: I4a500f5a6b3544391676603cb4ff6e70babea739
2021-08-13 08:20:39 +02:00
jdlrobson c595cc5106 Add wikibase skin style
Bug: T287206
Change-Id: I6e38ad106eeaaafba21ac55b067be00b8d2a0972
2021-08-12 21:28:38 +00:00
bwang 21c273af1f Override user menu line height
Bug: T288540
Change-Id: I30810de5ba36e082a4e8a1f6f93f34c99344dae8
2021-08-12 19:56:05 +00:00
Translation updater bot 15a0ce8c57 Localisation updates from https://translatewiki.net.
Change-Id: I8acabc29bcad2ac4621e5e47b18259f99f59f552
2021-08-12 08:10:52 +02:00
jenkins-bot 5eed693afb Merge "Copy class across to new language link item" 2021-08-11 21:52:33 +00:00
Translation updater bot 80034ce13d Localisation updates from https://translatewiki.net.
Change-Id: I16f545ebe537e6b2ccd604fbf073817362665e50
2021-08-11 08:20:40 +02:00
jdlrobson 5a0214afc9 Copy class across to new language link item
If the Vector code runs before the Wikibase code,
the Wikibase code will not work as the CSS selector
will no longer match.

Bug: T287206
Change-Id: I8555b60f2463ad19efadd57bccbb91ae4e2cc528
2021-08-10 13:17:30 -07:00
Sam Smith e6e2120099 Fix language treatment A/B test bucket counting
Register a temporary requirement that is configured the same as the
"LanguageInHeader" requirement. Pass that requirement a custom
configuration, in which the language treatment A/B test is always
enabled. Increment the bucket corresponding to whether the requirement
is met.

Supporting changes:

* Add a version to the base bucket name and set it to 2

Bug: T286932
Change-Id: Ic639687237074a13e7feb3c9084a35db0e5cb902
2021-08-09 19:48:38 +01:00
Translation updater bot 000f20213e Localisation updates from https://translatewiki.net.
Change-Id: I55553256b2706250ec5707a3eeb8c86f5ec19a3f
2021-08-09 08:27:48 +02:00
jenkins-bot aec29ebc2d Merge "Update UserLinks and SearchBox storybook stories to match prod" 2021-08-06 22:49:34 +00:00
bwang ade631ad40 Add max-width and text-overflow: ellipsis to Echo alert with modern user links
Bug: T287996
Change-Id: Ifcce663e86b5cf9162fa7ed20568ec83045ba998
2021-08-06 15:59:39 +00:00
bwang 7aeda662a5 Ensure emptyPortlet class cannot hide user links menu
Bug: T28819
Change-Id: Ia477439f28d5a3ac98cfc28385f179ca72946c26
2021-08-05 13:38:17 -05:00
jdlrobson aebb3fb522 Use the search title if configured
Allow commons to use Special:MediaSearch

Depends-On: 	I37b9d3a2b263f496a283f4bfdc769b7dc880ab06
Bug: T287540
Change-Id: I2a2463d704ef5b2264574cdf186836ba00a639f5
2021-08-05 15:45:41 +00:00
bwang d1f1f32418 Update UserLinks and SearchBox storybook stories to match prod
- Update UserLinks data to wrap link content with spans and other markup changes
- Use UserLinks__login.mustache and UserLinks__logout.mustache for rendering UserLink stories
- Add new SearchBox story to account for search collapse behavior in modern Vector

Change-Id: Ib0abce31db60a0c5c88dea17085e2974ac5112b5
2021-08-05 10:08:31 -05:00
Translation updater bot bf68ce9555 Localisation updates from https://translatewiki.net.
Change-Id: I001de93d9ae1ec887c78abe6a808cab657e0a99d
2021-08-05 08:24:08 +02:00
jenkins-bot 78223873e3 Merge "Add sticky header feature flag, query param, and class" 2021-08-04 20:02:09 +00:00
bwang 46d98c90f4 Add sticky header feature flag, query param, and class
Bug: T284463
Change-Id: I520832fa1e0a66bb24479e47c8e8f8011e514299
2021-08-04 18:49:56 +00:00
jenkins-bot 100e8281d0 Merge "Add max-width to user menu and text-overflow: ellipsis" 2021-08-04 16:15:45 +00:00
Translation updater bot b0129f1d27 Localisation updates from https://translatewiki.net.
Change-Id: Iece19f1a1a67f369c2e5c203052cc7115ad8429f
2021-08-04 08:16:31 +02:00
Nicholas Ray 8c36871f1b Add max-width to user menu and text-overflow: ellipsis
When implementing how to cut overflowing text, a white fade out was
considered instead of an ellipsis, but that implementation brings
additional complexity when considering the user menu's hover states.

Therefore, the widely used `text-overflow: ellipsis` was used instead
with approval from the designer [1]

[1] https://phabricator.wikimedia.org/T287522#7255400

Bug: T287522
Change-Id: I49e6084bd621ca1637fbd167c8eaf8c07ee695ca
2021-08-03 16:59:52 -06:00
jenkins-bot 65ea203549 Merge "Remove 'legacy' feature" 2021-08-03 18:28:28 +00:00
bwang 58c87018b2 Remove 'legacy' feature
Bug: T287410
Change-Id: Ibf8c20cfb1c3adb262224a28488c03c64323f509
2021-08-03 11:06:36 -07:00
jenkins-bot 5d944a6300 Merge "Do not rely on load order for disabling language button fallback" 2021-08-02 21:56:38 +00:00
Translation updater bot ddd46f74b1 Localisation updates from https://translatewiki.net.
Change-Id: Ia920ec04c03ab1bd7b0c592e9185baff3275ca55
2021-08-02 08:39:14 +02:00
Translation updater bot 76d4db9532 Localisation updates from https://translatewiki.net.
Change-Id: I494a9982877f2f87cb6833e549bdd062a2725912
2021-07-30 08:29:13 +02:00
jenkins-bot 4974d7d595 Merge "Run Vector's SkinTemplateNavigation hook last" 2021-07-29 23:42:03 +00:00
jenkins-bot 5ef8aa9853 Merge "Tests should use Universal hook" 2021-07-29 18:50:27 +00:00
jdlrobson d0c41d1dfc Run Vector's SkinTemplateNavigation hook last
Depends-On: Iec99be92378dc1a43f39428caffc03e1f594a927
Bug: T287533
Change-Id: I7d840d047627108a0a921ea52d5cb4bd06f36ab5
2021-07-29 14:27:28 +00:00
Translation updater bot 3493f85c8a Localisation updates from https://translatewiki.net.
Change-Id: I5e1eb570061e2b4bd489c5fe204b6e8d91c49df7
2021-07-29 08:46:31 +02:00
jdlrobson 85ffc0805e Do not rely on load order for disabling language button fallback
Some code disables the dropdown behaviour when ULS is loaded, however
it does not always appear to be working as the `ext.uls.interface`
module may be loaded for other things unrelated to the compact
languages link button.

The safest thing to do for now seems to be to check the configuration
flag wgULSisCompactLinksEnabled. In future, perhaps a hook event could
be added to ULS and that could be subscribed to instead.

Bug: T287191
Change-Id: I0cf8d387919078aabc9e77a0a452f8b3364016ee
2021-07-28 16:59:48 -07:00
jenkins-bot d3f09a1c3d Merge "Fix padding/positioning of the user menu orange talk message notification" 2021-07-28 23:09:09 +00:00
Nicholas Ray f62e1997f5 Fix padding/positioning of the user menu orange talk message notification
The padding-top of the orange notification set in
ext.echo.styles.alert.less was being overriden by the `padding-top: 0`
set in UserLinks.less which was intended to only override the padding
set in Menu.less.

This commit:

* Scopes the li styles in Menu.less to apply only to the legacy user
menu (found in both legacy and modern vector with the consolidated user
links feature off) which appears to be the only menus that needs these
rules.

* The padding-top previously in UserLinks is no longer needed as a
result of the above point.

* Adjusts/cleans up the positioning of the orange notification by
removing an unneeded margin/padding-top and setting the top to 100% (the
previous `calc` statement was unintentionally resulting in 112%).

Bug: T287633
Change-Id: Ia7069d291f53d8e0e0e576d7b96b7a8b1a6cb29d
2021-07-28 16:35:08 -06:00
jenkins-bot 7ebd1ddc92 Merge "Remove duplicate login button from user links user menu." 2021-07-28 22:02:06 +00:00
Clare Ming 27996c496b Remove duplicate login button from user links user menu.
Bug: T287585
Change-Id: I8f040be7f76911ca05268981b270e2eb44b2ff96
2021-07-28 15:32:25 -06:00
Clare Ming f89a5b2d0b Add statsd counter for languages A/B test
Bug: T286932
Change-Id: I86ef358bfd5316e1f89fb1fde16f1cddade4d211
2021-07-28 13:26:45 -06:00
jdlrobson c000fa9a2a Tests should use Universal hook
The existing hook does not allow modification of variants which
will soon change.

Bug: T287533
Change-Id: I8969296c64875d58e3c7ea95f6b567916f82d8a7
2021-07-28 11:07:42 -07:00
Nicholas Ray 7205a0b8e3 Fix user menu "learn more" link spacing
Per the design spec of T287523 and T285786.

Bug: T287523
Change-Id: Icdfc6dca19b83fcc54352c9f4a8c15e1f1bd640f
2021-07-28 09:52:45 -06:00
Translation updater bot ed493798f9 Localisation updates from https://translatewiki.net.
Change-Id: I9f1be118a458f3652635b1331cded1a00a76e8a8
2021-07-28 08:22:17 +02:00
jenkins-bot 7881d8e651 Merge "Restore print, links, table and message box styles" 2021-07-27 21:45:16 +00:00
jenkins-bot 63dcfb720d Merge "Copy interwiki links into sidebar" 2021-07-27 21:21:20 +00:00
jdlrobson 722b5fbf80 Restore print, links, table and message box styles
These should have been added in the migration.
Follow up to 4a93c70

Bug: T278896
Change-Id: I089077d7ff7a9daf0e98b4dc40f04a11b4764277
2021-07-27 21:18:03 +00:00
Nicholas Ray d8f62f780c User menu design tweaks
* Revises UserLinks.less according to the T285786 spec.

* Unsets 'createaccount' data in $content_navigation in favor creating
this link inside SkinVector which follows the same pattern as the Login
link. This is needed because the create account link needs to be on top
of the login link in the menu per T285786#7231671.

* Changes MenuDropdown.less to pad the anchor element instead of the li
element. This results in a more intuitive click target.

* Places an end margin on the search box to add space between the user
links and the search box.

Bug: T285786
Change-Id: Idb860e6b65c9f266a8027e3f486ccf4c4ec4ed3c
2021-07-27 14:25:32 -06:00
bwang a27b6f7096 Copy interwiki links into sidebar
Bug: T287206
Change-Id: I951b2a277f9484f8e2735951d85c0766098607b5
2021-07-27 12:08:11 -05:00
jdlrobson a46e790187 Use centralized MediaWiki typescript definition
Use @wikimedia/types-wikimedia rather than maintaining our own.

Bug: T263914
Change-Id: I5319f422b85a772c248f2114a75f906a1aff6251
2021-07-26 21:27:12 +00:00
jenkins-bot 245566386b Merge "Remove unnecessary user page breakpoint style" 2021-07-26 19:44:58 +00:00
jenkins-bot b67a8bdfdd Merge "[modern/performance] Simplify Vector styles" 2021-07-26 19:33:15 +00:00
bwang f8ddffc26a Remove unnecessary user page breakpoint style
Bug: T276566
Change-Id: I1b48c91e499bf74185b4d584419d4a48af427bde
2021-07-26 19:05:02 +00:00
Translation updater bot 0d2c7c582b Localisation updates from https://translatewiki.net.
Change-Id: I46c3b9f800b16d8b3772a49b18bf8c7abe083b47
2021-07-26 08:14:39 +02:00
libraryupgrader 8dc9511bbc build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 36.0.0 → 37.0.0

npm:
* svgo: 2.3.0 → 2.3.1
  * https://npmjs.com/advisories/1754 (CVE-2021-33587)
* postcss: 7.0.35 → 7.0.36
  * https://npmjs.com/advisories/1693 (CVE-2021-23368)
* trim-newlines: 3.0.0 → 3.0.1
  * https://npmjs.com/advisories/1753 (CVE-2021-33623)
* prismjs: 1.23.0 → 1.24.1
  * https://npmjs.com/advisories/1762 (CVE-2021-32723)

Change-Id: Ief0fe110b6746c209085502cf4639429a4116ab5
2021-07-24 01:35:45 +00:00
jdlrobson 4a93c706b6 [modern/performance] Simplify Vector styles
Bundlesize drops as a result of no longer loading the legacy
code.

Bug: T278896
Change-Id: Ib992dd19356e563af356a616055ac297f9ad0b02
2021-07-23 23:49:14 +00:00
Translation updater bot 4050aaa645 Localisation updates from https://translatewiki.net.
Change-Id: Iaca48dfc3663ee805036c66c27548b8547cc835e
2021-07-23 08:09:55 +02:00
jdlrobson e96cce7207 Restore the true height of the language button
Drop the override, now that the skinStyles have been identified
that were causing this irregularity.

Depends-On:   I9d62ad8a79168bdaebace07fb82f22da4c534b5c
Bug: T191021
Change-Id: Ic5bc639186477570028efa1cb2a09cd64a5aaca1
2021-07-22 16:27:48 -07:00
jdlrobson 83e63d3e99 Sidebar hover background should be consistent with mw-ui-icon
Remove override now it's a default.

Addresses Alex's feedback item 1 in
T191021#7231088

Bug: T191021
Change-Id: I2702ffb9cbee2dfc841b3f03638fdfd24a128493
2021-07-22 22:07:09 +00:00
jenkins-bot accb2892ad Merge "Correct the user icon padding" 2021-07-22 19:53:36 +00:00
jdlrobson 628c436f15 Correct the user icon padding
Addresses topic 3 from Alex's feedback in:
    T191021#7228591

Bug: T191021
Change-Id: I12e5fea3f1893b94e520bcec91d52af9596a2fd4
2021-07-22 19:21:48 +00:00
jenkins-bot 2b93a50fe2 Merge "Remove margin-left: auto on search box to prevent it from switching sides" 2021-07-22 18:49:41 +00:00
bwang 589bb21d1c Remove margin-left: auto on search box to prevent it from switching sides
- Scopes margin-left: auto style to vector with user links off only

Bug: T286733
Change-Id: If5dbdd89c2f773d6a98bf4ffa76f64409c11fd8d
2021-07-22 13:22:40 -05:00
Translation updater bot b621b3836f Localisation updates from https://translatewiki.net.
Change-Id: Id8ed88d1fcbc64818bf762b8bedce813202fd677
2021-07-22 08:14:44 +02:00
jdlrobson f66cc87898 Removes additional space between language button label and icon
Caused by whitespace in HTML

Addresses topic 2 from Alex's feedback in:
T191021#7228591

Bug: T191021
Change-Id: I32de25d4f4927c2ea8059b972a55b79a94691e76
2021-07-21 21:50:10 +00:00
jdlrobson 68e55542af Drop redundant border
This was increasing the icon size from 44x44 to 46x46

Addresses topic 1 from Alex's feedback in:
T191021#7228591

Bug: T191021
Change-Id: I03c80b5ceda9b23dfa53a245bed820ca22a1d95a
2021-07-21 21:50:04 +00:00
jenkins-bot 364c35dcdf Merge "Remove Vector skinStyles for icons and fix language button" 2021-07-21 18:44:37 +00:00
jdlrobson 96136a0e2d Remove Vector skinStyles for icons and fix language button
Depends-On:  Id08590f6a3fbbfda8226f2899f50f0b64cbb1481
Change-Id: I5be642f2e20d67e1d27c74ddb6ec086738a261aa
Bug: T191021
2021-07-21 11:02:42 -07:00
bwang 14e9d6ba9f Fix dropdown font sizing in legacy vector
Bug: T287052
Change-Id: I5ec4fb0dc61ed8913debc85061421f567c8cd824
2021-07-21 14:29:37 +00:00
Translation updater bot 6cb42b975f Localisation updates from https://translatewiki.net.
Change-Id: I459f5c570979d5d4a388c7e60655ed5971876d19
2021-07-21 08:06:52 +02:00
jdlrobson 13de4ff225 Prepare for updated mw-ui-icon implementation in Vector
We will couple the roll out of the consolidated user links code
with the roll out of the new icon styles.

This change is restricted to the user links feature and will result
in some slight UI discrepencies until
Ibc136a17662ae839f90babb21e0f7e8f27b7a7d5
is merged.

Bug: T191021
Change-Id: Ia2d2c86e61341b9900f9ac337ddd763252e0515f
2021-07-20 18:52:40 +00:00
Translation updater bot 63100569e6 Localisation updates from https://translatewiki.net.
Change-Id: I6b01992752a1ba1975cadf8968f3fae666699cb0
2021-07-20 08:22:26 +02:00
jenkins-bot e4fc634551 Merge "Avoid using User::setOption()" 2021-07-19 22:32:00 +00:00
Translation updater bot a932da0400 Localisation updates from https://translatewiki.net.
Change-Id: I446af81b3b00446e484411b4621c3fd90436ed12
2021-07-19 08:18:22 +02:00
ZabeMath e7fbb01aca Avoid using User::setOption()
User::setOption() is deprecated and should be replaced with UserOptionsManager::setOption()

Bug: T277818
Change-Id: If867b4f97918db581d337a32b33cbca2315a71f6
2021-07-18 13:48:44 +02:00
DannyS712 2c25d15489 ESLint: remove redundant disable of one-var rule
No longer needed now that we use eslint-config-wikimedia
version 0.20.0, which no longer includes that rule.

Bug: T286838
Change-Id: I44518a4cc8e9d6e4cde38899f68d7952956a266e
2021-07-17 01:38:26 +00:00
Translation updater bot 1448c8c9ca Localisation updates from https://translatewiki.net.
Change-Id: Iad69f027f9382834280fd13ae0d5fe88e40def46
2021-07-16 08:44:50 +02:00
jdlrobson 60923c6ddb Collapse search below desktop breakpoint
The tablet breakpoint doesn't work. It is not possible to apply
the min width of 350px for the search input given the other elements
in the header, however the desktop breakpoint provides plenty of space.

Change-Id: I93c29700d465d641f8155c01a311e1e720c37695
2021-07-15 22:02:55 +00:00
jenkins-bot 297322f810 Merge "Remove caching FIXMEs" 2021-07-15 21:12:00 +00:00
jenkins-bot 2e5ecae6d2 Merge "Consolidate user links outside of the user menu dropdown into a single new menu" 2021-07-15 20:48:37 +00:00
jdlrobson dd73491331 Remove caching FIXMEs
Code here has been in production a week now, so we no longer need to support
the old HTML structure.

Change-Id: I508dec3294588c9fc7f86958c47a3e5b52493df9
2021-07-15 20:28:48 +00:00
jdlrobson 276738b620 Consolidate user links outside of the user menu dropdown into a single new menu
- Adds UserLinks__more template to process the list of user links.
- Simplifies styles in UserLinks.less, and namespace them under .vector-user-menu-more
- Add i18n for the label of the new navigation menu
- Update storybook and typing

Bug: T284584
Change-Id: I92290815869dcb939f01d9aff4aa202f6f004894
2021-07-15 20:27:54 +00:00
jenkins-bot 73fd6c0290 Merge "Add querystring parameter override for user links, language in header." 2021-07-15 19:26:35 +00:00
Clare Ming cb3d5742da Add querystring parameter override for user links, language in header.
- Add new OverridableConfigRequirement class.
- Add query parameter constant for user links.
- Update Feature Manager with new requirements.
- Use new class for LanguageInHeader requirement.
- Remove LanguageInHeaderTreatmentRequirement class and test.
- Add unit test to cover user links and language in header.

Bug: T285855
Change-Id: I56b729a9e245ed2ddc85625c0be39f5c26320ac4
2021-07-15 16:51:48 +00:00
Translation updater bot c5c0ff6037 Localisation updates from https://translatewiki.net.
Change-Id: Ib228299fbacab42ebf180ea117895bdcc1d8d7b6
2021-07-15 08:13:44 +02:00
Nicholas Ray ca22b84df4 Make #p-search's start margin dependent on .vector-search-box-show-thumbnail
Before this commit, the following config would result in the search box
not lining up vertically with the tabs:

$wgVectorWvuiSearchOptions = [
  "showThumbnail" => false,
];
```

This commit fixes that by making the start margin dependent on the
`showThumbnail` option.

Bug: T284242
Change-Id: I0132ef8afb3206836d9f16771cbefda5b8bfa3ec
2021-07-14 13:40:54 -06:00
Nicholas Ray 7d917c8dbb Widen WVUI search suggestions to edge of search button when search is toggled
Per T284242#7206507, the width of the search suggestions should be
increased at small resolutions.

Bug: T284242
Change-Id: I16ac7c4174c427d340dc16b0b56221ff7b6e1016
2021-07-14 13:36:35 -06:00
Nicholas Ray 91af0e098d Make search toggleable at smaller screen widths
Now that the header collapses at small resolutions
(I89d75843ca7e33e6de93af5d7c22e46b7249c4b7), this commit wires the
search toggle to show the search box when clicked and hides it when the
user clicks outside the search box.

* Adds searchToggle.js to perform handle the toggle behavior of the
searchbox.
* Adds `@padding-horizontal-tabs`, `@size-search-expand` to variables.less
so that these can be used to set the start margin of the search box
(enabling its start edge to match the tab text start edge).
* Modifies screen.less to only apply search max-width when >=
@width-breakpoint-tablet

Bug: T284242
Change-Id: I82563d44967f60aee1cd4d3aa6fb4f405822686b
2021-07-14 00:14:45 +00:00
jenkins-bot e750b8212e Merge "Fix collapsible item behaviour" 2021-07-14 00:04:05 +00:00
jdlrobson 91e07c6b9a Fix collapsible item behaviour
the user-links-collapsible-item class now applies to list items
not links

Follow up to 05a02a39fb59117c522678001d79b0d9dfdf63ca

Bug: T285960
Bug: T276566
Change-Id: I04fa303c4e95373fdf5ff090de1bba030386c286
2021-07-13 23:42:34 +00:00
Clare Ming c4efbb3d6a Update styles for talk message at lower port widths.
Bug: T284243
Depends-On: Icb349987c5f5939b7f4ffa477ac1ecb35b5425e7
Change-Id: I69bc3a1aea6b5a640b91c67f5beae4c263c8d31a
2021-07-13 15:47:08 -06:00
jenkins-bot a377b46fcf Merge "Move userpage link to precede notifications" 2021-07-13 18:27:26 +00:00
Translation updater bot 66002b600f Localisation updates from https://translatewiki.net.
Change-Id: I0d21dc89ff2ded399b6198470bc39ee6c632955d
2021-07-13 08:13:04 +02:00
Clare Ming 19173ea296 Move userpage link to precede notifications
Update user links template to reshuffle order.

Bug: T285728
Change-Id: Ie33a513a9a72e9d659d04a76bb38d8fb1977fb19
2021-07-12 13:06:18 -06:00
Translation updater bot fb3561e756 Localisation updates from https://translatewiki.net.
Change-Id: I4fdcf601bd0a499fae40c16d8860500d01c599e2
2021-07-12 08:08:17 +02:00
Translation updater bot e9053a1f76 Localisation updates from https://translatewiki.net.
Change-Id: Ic4374b1d6d485bb42c2fa19a0b373d9ee0215318
2021-07-09 08:08:01 +02:00
Translation updater bot 493d5c4cc5 Localisation updates from https://translatewiki.net.
Change-Id: I10a10fb843ede4eb2afc6f757c49301e7d7eea52
2021-07-07 08:08:56 +02:00
Translation updater bot f72d5ba87d Localisation updates from https://translatewiki.net.
Change-Id: Ib3107b10031bc68da586779a22e09155dccda804
2021-07-06 08:39:59 +02:00
Translation updater bot 60a6f9ea0b Localisation updates from https://translatewiki.net.
Change-Id: Idfa16d8f08dbfd7adfe61d6f6be0906dcae3ccf1
2021-07-05 08:08:44 +02:00
Translation updater bot f3a4f9cc52 Localisation updates from https://translatewiki.net.
Change-Id: I870e10db1691e47fc2807f96a067e2a72be8e1ff
2021-07-02 08:32:37 +02:00
jenkins-bot 7c1455b90e Merge "Refactor the way we add classes to list items" 2021-07-01 22:13:43 +00:00
jdlrobson 3dffee277c Refactor the way we add classes to list items
Append mw-ui-icon classes to list item not list link
This allows us to apply a custom padding separate from the icon.

Note due to a bug in how core handles personal user items,
this will result in the icons temporarily disappearing for several
items until If399dfff9bbdd3b03b2ca702face3ec5164bef11 is resolved.
This is okay given the user menu is currently feature flagged.

Bug: T191021
Change-Id: I766aeb4d1bb36cebd0d80ad43ced940dbea96477
2021-07-01 14:25:46 -07:00
Translation updater bot 07bc73cbce Localisation updates from https://translatewiki.net.
Change-Id: I3482cfda1cec0c738c18c91c6579ffe490e71f65
2021-07-01 08:11:07 +02:00
bwang 0a75e2e627 Ensure userAvatar icon is only used in logged in users
Additional change: A bundlesize increase is required given
recent developments in the user menu.

Bug: T284748
Change-Id: I2b0981d621c3add42731e50d5aef299b32548b4a
2021-06-30 22:41:47 +00:00
jenkins-bot 6597bc7d86 Merge "Collapse header at lower resolutions" 2021-06-30 22:11:34 +00:00
jdlrobson 6777c5b1fe Collapse header at lower resolutions
Reduces the min-width to 340px with several changes at lower
resolutions
* collapses create account into dropdown
* hides language button and user messages
* The search component is updated to include a search toggle which
can be used to hide and show the search input at lower resolutions
- this leads to a slight HTML change with caching implications,
it also moves away from a BEM usage which is not standard for this
repository.
* limits width of logo based on the dimensions we display
in mobile

Bug: T276566
Change-Id: I89d75843ca7e33e6de93af5d7c22e46b7249c4b7
2021-06-30 21:43:35 +00:00
jenkins-bot 91aeef476d Merge "search: Disable query highlight for some languages" 2021-06-30 21:01:01 +00:00
Sam Smith 445ba883a2 search: Disable query highlight for some languages
Following on from I551414b1, disable query highlighting for the list of
languages provided by @TJones in T281797.

The user's interface language can be different from the wiki's content
language and so the former is not available at configuration time. Thus,
we fetch the user's interface language at request time. Fortunately,
@TJones' list of languages is small so there should be little
perceivable performance impact from the perpective of the user.

Additional changes:

- Remove the config.VectorWvuiSearchOptions.value.highlightQuery
  property from skin.json

Bug: T281797
Change-Id: Ib39736a93fa64e82253f88551d125413e672558b
2021-06-30 16:47:46 +01:00
jenkins-bot 400f67e526 Merge "Fixes transition from input focus state to WVUI focus state" 2021-06-30 13:42:31 +00:00
Translation updater bot c437f38e59 Localisation updates from https://translatewiki.net.
Change-Id: I0bcae0aa7904b677a88e4f5ce38bf8b2988a3f7b
2021-06-30 08:27:22 +02:00
jdlrobson a220e553eb Fixes transition from input focus state to WVUI focus state
VueEnhancedSearchBox tries to mimic the styles of WVUI to get a
seamless transition however doesn't account for the focus state that
shows briefly while this occurs.

This was leading to the icon jumping as it transitioned.

Bug: T279015
Change-Id: I10a4ec5d64bb58e2f21506c8a09a1bb6c34ecd65
2021-06-29 14:39:10 -07:00
Translation updater bot 4ba15fc73f Localisation updates from https://translatewiki.net.
Change-Id: I44f778770a21d3ff8357aac22143ca3498dd664e
2021-06-28 09:25:07 +02:00
jdlrobson 62d0cf8d92 Dropdown toggles trigger click tracking instrumentation
Bug: T284542
Change-Id: Ib019c616bc53ebab50ed9eeef05b6d9712958f38
2021-06-24 23:08:19 +00:00
jenkins-bot b8545c4b5e Merge "Remove whitespace from page title template" 2021-06-24 22:16:07 +00:00
jenkins-bot 170a4eb9fa Merge "Update search loading animation delay to 500ms" 2021-06-24 17:49:13 +00:00
bwang 0c8154f1bd Update search loading animation delay to 500ms
Bug: T273093
Change-Id: I517bb80a9557c85607ae3588bb44dc83cbeb1dc0
2021-06-24 17:18:16 +00:00
bwang 9dc295945c Remove whitespace from page title template
Bug: T282318
Change-Id: Idd36ad20545e04706bbc9bfa034c65fc0d6bba16
2021-06-24 16:47:31 +00:00
Nicholas Ray b82ecc2173 Remove SkinVector::ICON_USER_LINK_MAP usage
Per T284594, we are now setting the icon key/value when the relevant
menu item is created (e.g see I95f2a0a01134f2c3dfc22083be66c99de26b530f
) to allow for easier reuse of icons across skins.

Additionally:

* Refactor SkinVector to pull the appropriate login/logout icon from
core instead of setting this in Vector

Bug: T284594
Depends-On: I95f2a0a01134f2c3dfc22083be66c99de26b530f
Depends-On: I6292de50c3940f39b0084a2af4f79af78583720f
Change-Id: I02163645937de4b8a2c4375f29851c29462a582d
2021-06-23 18:33:17 +00:00
Translation updater bot 02de393331 Localisation updates from https://translatewiki.net.
Change-Id: I3b20c80a5e5bc49fcef47d6b1d9c0cb9aeb6970b
2021-06-23 08:12:53 +02:00
jenkins-bot bea07a11c6 Merge "Partial Revert "Update tests for default Menu template value"" 2021-06-22 21:30:24 +00:00
bwang d8351bc0ae Update user links storybook
- Remove logged in links from logged out user links storybook
- Add icons to all user links

Bug: T284584
Change-Id: I7fbe22b257d1a6e08c27315d69b0ae1233868aed
2021-06-22 18:52:26 +00:00
jenkins-bot f6d116ff98 Merge "Add icon prefix to login link" 2021-06-22 17:06:10 +00:00
Clare Ming d9f4c51b4e Add icon prefix to login link
Add classes to prefix login link with login icon.

Bug: T276562
Change-Id: I2b188a25986a717436af223a469b05c95e5b2d88
2021-06-22 09:18:06 -06:00
bwang 84737bc9c7 Remove reference to BaseTemplateAfterPortlet
Bug: T280608
Change-Id: I87ebd765defd7c71f2463257d8bae14107988220
2021-06-22 15:02:01 +00:00
Translation updater bot 5029ce11e4 Localisation updates from https://translatewiki.net.
Change-Id: I689d4e589d662e41e166f8846308b25da3886760
2021-06-22 08:11:24 +02:00
bwang 7909cf1eb6 Update user links storybook
- Fixes logged in and logged out links in the user links storybook
- Fixes type def warnings by importing defs
- Update the user page styles in storybook

Bug: T284584
Change-Id: I8e56df16617f71be89ac8d3094497cdb0daa64ef
2021-06-21 21:34:35 +00:00
jenkins-bot b4e1929d84 Merge "VectorUseWvuiSearch should reflect production config" 2021-06-21 20:54:38 +00:00
jdlrobson 7d32418513 VectorUseWvuiSearch should reflect production config
At this point most wikis enable this config flag. Explicit overrides
exist for wikis where it is not available (commons and wikidata).

The config on master should always reflect production config so
it's time to change the default.

Change-Id: I8835e070d2636f600f733645119b0f8497eda3e8
2021-06-21 13:26:55 -07:00
Jdlrobson 604e24f6be Partial Revert "Update tests for default Menu template value"
This partially reverts commit 0fc7be61c1.

Reason for revert: was temporary change

Change-Id: Iad87da825e44a7d3a64b85dc314d8eb27d95b7a6
2021-06-21 20:20:34 +00:00
jenkins-bot 45598d0ec3 Merge "Update user menu icon and storybook" 2021-06-21 14:42:26 +00:00
jenkins-bot 30eb4196b9 Merge "Skin: Convert number of languages to interface language" 2021-06-21 14:22:40 +00:00
bwang 8389de9cb9 Update user menu icon and storybook
Bug: T284748
Change-Id: Icdbfd882490b380871befd3c6606c4b48d225132
2021-06-18 20:30:55 +00:00
Sam Smith 78929d58da Skin: Convert number of languages to interface language
Bug: T283955
Change-Id: Ic601cf94907bdec329021a48101da13a979af106
2021-06-18 17:18:52 +00:00
Translation updater bot 9f925d23fd Localisation updates from https://translatewiki.net.
Change-Id: Ibe8a279b6aebafeefe0a8dd6ca800a6d344823b4
2021-06-18 08:21:58 +02:00
Translation updater bot 4e952558f4 Localisation updates from https://translatewiki.net.
Change-Id: I6e7b6e1ce644d8b0f4ff3b2778291df9731b10d3
2021-06-17 08:21:32 +02:00
bwang 22e343eecb Ensure login button is only rendered for anon users
Bug: T276561
Change-Id: I0f4fa94b4caacc45b299d7518523aa906ff65849
2021-06-16 14:01:06 -05:00
jenkins-bot c7ad20524c Merge "Update tests for default Menu template value" 2021-06-16 00:10:12 +00:00
bwang 0fc7be61c1 Update tests for default Menu template value
Change-Id: I32586a379cbacaad5cfb361facf79c01e982818a
2021-06-15 17:02:53 -05:00
Translation updater bot 148380af9f Localisation updates from https://translatewiki.net.
Change-Id: I26ec7cf36d95c7a200004c6ac37d0336e9e4355c
2021-06-15 08:34:24 +02:00
jenkins-bot b54b85753b Merge "Move "logout" button to bottom of user links menu in modern Vector" 2021-06-14 23:02:46 +00:00
Jan Drewniak c26ae0f965 Move "logout" button to bottom of user links menu in modern Vector
For modern Vector, removes the logout link in the user menu and places it
below that menu by appending it to the html-after-portal property of the
skin data.

Also modifies the `.vector-user-menu-login` style to accommodate both the
login and logout button.

bug: T281791
Depends-On: If82a736e37174aaadd0ff07019a1fae3759a9e51
Change-Id: I7675230e09a50eaeab448182329f850ad2689514
2021-06-14 23:40:19 +02:00
jdlrobson 0b024a4a4d Allow disabling of the new compact languages button
Depends-On: I726c61d4c6895a28b999781752535e0ddc961744
Bug: T282149
Change-Id: I436554d9d51470d277d59c2c71e08124735e12fd
2021-06-14 15:49:43 +00:00
Translation updater bot 99a201d5b9 Localisation updates from https://translatewiki.net.
Change-Id: I3ed6c2b71f03cdbc60805deb40ff7b1ad1ab2dca
2021-06-14 08:41:22 +02:00
jenkins-bot 20d127a8df Merge "Remove UserMenu and use Menu template instead" 2021-06-11 16:03:57 +00:00
bwang 34344adbf5 Remove UserMenu and use Menu template instead
- Adds html-before-portlet to Menu.mustache
- Removes UserMenu.mustache and type def
- Factors out getCreateAccountHTML and getLoginHTML for generating HTML used in Menu
- Scopes UserLink template data under "data-vector-user-links"

Follow up to: 298f945983
Bug: T284584
Change-Id: I91104eb7c4fd12756e770561666f4c9a64da57d6
2021-06-11 09:41:58 -05:00
Translation updater bot 210a305d35 Localisation updates from https://translatewiki.net.
Change-Id: Id18358ca02c7eb36760ca7d36ad08879c47c4ed9
2021-06-11 08:35:52 +02:00
Clare Ming 9ec5d6ded0 Hide language links on print version
Add selector to hide language links for print version of pages.

Bug: T282304
Change-Id: I6b17676e7491863e684c1704d0a849f0ba3827f5
2021-06-10 16:35:28 -06:00
Translation updater bot ad95c880a1 Localisation updates from https://translatewiki.net.
Change-Id: I4fd31f6faa700d98143f135bdb898a534a5403e6
2021-06-10 08:36:06 +02:00
jenkins-bot 320b7708f4 Merge "Prefix user links menu items with icons" 2021-06-08 14:35:57 +00:00
Translation updater bot 0b65f84d40 Localisation updates from https://translatewiki.net.
Change-Id: I246252f7ebba77b14a30e32d1595fa6fa50e1ae1
2021-06-08 08:37:33 +02:00
Clare Ming b80d97b1e8 Prefix user links menu items with icons
- Add logic in Vector hooks to prefix user menu links with icons.
- Add method for getting icon name based on user menu key.
- Add constant to map user menu keys to associated icon references.
- Include icon treatment for both logged in/out users.

Bug: T276562
Change-Id: Ia69366eb4fbd50b48fe5513ef99048bdc5df64fb
2021-06-07 18:10:54 -06:00
Translation updater bot dbfcfdfac0 Localisation updates from https://translatewiki.net.
Change-Id: Ib19e284bd24ceca84dae9a9b23261c63628ff4ec
2021-06-07 08:45:28 +02:00
jenkins-bot 6f2c6f7776 Merge "Storybook: Add stories for logged in and logged out UserLinks" 2021-06-05 02:28:05 +00:00
jenkins-bot fcb1bf7a19 Merge "Update styles for user-interface-preferences in user links menu." 2021-06-05 02:26:39 +00:00
Clare Ming 06d0afbcb3 Update styles for user-interface-preferences in user links menu.
- Add new menu to UserLinks template.
- Fix styles for user links toolbar.

Bug: T282196
Change-Id: I42d6e6e11d76b2d25b2720a617f2fb2e545eb4b6
2021-06-05 02:01:17 +00:00
James D. Forrester 5c50fa8fd2 .nvmrc: Update to Node 12.21.0 as CI has migrated
Bug: T284345
Change-Id: Idd32bce55a3f8b0e0f2191738e89311539eb3d98
2021-06-04 14:45:10 -07:00
Translation updater bot 571764fdc6 Localisation updates from https://translatewiki.net.
Change-Id: Ib1cd3cecf279c9a3b208cda88058f9d83b696b0b
2021-06-04 08:39:36 +02:00
bwang b4c0e8e67d Storybook: Add stories for logged in and logged out UserLinks
- Update menu helper params to support additional data
- Add UserLinks typing

Follow up to: 298f945983
Change-Id: I0f9d1ac3289101566f437213714b872f6fa9199b
2021-06-03 21:42:28 +00:00
jenkins-bot 8021270bce Merge "Update UserLinks styles to use classes instead of ids" 2021-06-02 22:38:04 +00:00
bwang b5aa055900 Update UserLinks styles to use classes instead of ids
Follow up to: 298f945983

Change-Id: I5bc28501d0ae4c2597796dbf1ed9c10eacadad62
2021-06-02 22:16:59 +00:00
Roan Kattouw 02638ff59d Use the new wvui-search module from MW core
Depends-On: Ifa3abeab2a929e15597fa51b95b4442fe818ef31
Change-Id: I24712ca8e4d9558a17c029a4c59484dc0f5b8fad
2021-06-02 13:40:20 -07:00
jenkins-bot a15fd2eb80 Merge "search: Add option to disable highlighting query" 2021-06-02 19:21:30 +00:00
jenkins-bot 0141be5080 Merge "Create new user menu template for consolidated user links in logged out users" 2021-06-02 19:09:54 +00:00
Sam Smith 2b05a6a203 search: Add option to disable highlighting query
... for the WVUI search autocomplete widget.

The VectorWvuiSearchOptions object is sent to the client whole and
already used as the base props for the app component constructed in the
skins.vector.search RL module. We also define the highlightQuery prop on
that component so that its value can be passed to the WVUI
typeahead-search component.

Bug: T281797
Depends-On: I142810c177b850ecd7015f835bb6630bae00a6ea
Depends-On: Ia5e14fb9d0073a5126a0918f7a94213c671e773a
Change-Id: I551414b111226e690f6a2bc69dabf5edc6fb0a96
2021-06-02 18:51:01 +00:00
bwang 298f945983 Create new user menu template for consolidated user links in logged out users
- Adds mustache template for the new user menu
- Uses new functions for getting user link data that have been factored out of SkinTemplate in the dependent patch
- Refactor new user menu styles to be namespaced inside UserMenu.less

Notes:
- Originally this patch included more storybook changes, but I removed them in favor of this follow up patch: 696651

Bug: T276564
Depends-On: Ia841f92c626ca32a9ad437b3d1cff78309c83ed8
Change-Id: Ib15752428265fdc06a3000f62bdca44c67648974
2021-06-02 09:23:22 -05:00
jenkins-bot 56916a17d1 Merge "Change search button msg key to `searchbutton`" 2021-06-02 10:06:24 +00:00
Volker E 42216de481 Change search button msg key to `searchbutton`
Bug: T280405
Change-Id: Iea3bf40be029eaa330101b7b9a1bdea191d71416
2021-06-01 15:48:09 -07:00
jenkins-bot ca148c71f8 Merge "Storybook should include UserLinks" 2021-06-01 16:19:02 +00:00
Translation updater bot b4f91d8e5c Localisation updates from https://translatewiki.net.
Change-Id: I463fd80c061198839d3e24dd2015847595dad5a3
2021-05-31 08:38:06 +02:00
Translation updater bot cf7657ccb7 Localisation updates from https://translatewiki.net.
Change-Id: I8b1b0c25851d75a2751c6468096e5f259183c837
2021-05-28 09:11:44 +02:00
libraryupgrader 2ccd49648b build: Updating browserslist to 4.16.6
* https://npmjs.com/advisories/1747 (CVE-2021-23364)

Change-Id: Ic5b705747935ebc1ecd06eb553162ecc45abf1f1
2021-05-28 05:48:38 +00:00
jdlrobson 6300923601 Storybook should include UserLinks
Merge UserMenu into UserLinks for legacy and modern
Add a story for the UserLinks menu

Fixes: rendering of Skin (legacy) personal tools (the user icon
no longer overlaps)

Change-Id: I491ebb3962780bf2cf7f1dfb4dd09d576c294366
2021-05-27 19:27:27 +00:00
jdlrobson e1d0f1e61c Storybook: Consistent styling
- Make sure common styles are loaded for all components
- Add icon in user menu

Fixes renders of:
- Language button (no top margin and button styles)
- MenuPortal (no left margins)


Change-Id: I98b4820b6d91d46fd27a1d433d5bacd187a7cbb0
2021-05-27 19:27:21 +00:00
jenkins-bot e111ead970 Merge "Storybook: Move helperMakeMenuData into utils" 2021-05-27 18:28:22 +00:00
jdlrobson e305d720d4 Storybook: Move helperMakeMenuData into utils
In preparation for using for the UserLinks component.

Change-Id: Ifd3d1cc5513cd1477d1cb2e5d6e4db800fee12f7
2021-05-27 18:06:05 +00:00
Translation updater bot 838f72a484 Localisation updates from https://translatewiki.net.
Change-Id: If26220738c2d51dc55cc27fcd16715a2a0752716
2021-05-27 13:47:34 +02:00
Translation updater bot b445847998 Localisation updates from https://translatewiki.net.
Change-Id: I9272166db48f6549cbaf468974a2606e89d8c295
2021-05-27 13:12:17 +02:00
Translation updater bot 329a0dac56 Localisation updates from https://translatewiki.net.
Change-Id: Ia5be2abd9780a55f5a84f6aa75ac0dcb9a1d7367
2021-05-27 10:39:23 +02:00
Translation updater bot 64d03c85ac Localisation updates from https://translatewiki.net.
Change-Id: Ibb742b86acbfcdaba1ef88f3ebd6370b4a7efd4d
2021-05-26 09:08:20 +02:00
jenkins-bot 1c3a214b24 Merge "Refactor: Create UserLinks component" 2021-05-25 18:49:47 +00:00
jdlrobson 96bf1e8276 Refactor: Create UserLinks component
Have a single template for the UserLinks component, with a single
element wrapping all its subcomponents as discussed.

Change-Id: I35936a6fa1ba335639ca3f47fd439a3662268fca
2021-05-25 16:57:35 +00:00
jenkins-bot d7e22f7f20 Merge "Use escaped() instead of parse() in SkinVector::createULSLanguageButton" 2021-05-24 16:02:39 +00:00
jenkins-bot a9215e49a6 Merge "Introduce the vector-body class" 2021-05-24 14:51:07 +00:00
Jan Drewniak 7258a7cb86 Use escaped() instead of parse() in SkinVector::createULSLanguageButton
Bug: T282540
Change-Id: Ie8f0fe262f34e669d49f98efc27c179b257786dc
2021-05-24 14:07:25 +02:00
Translation updater bot 2f854e0b9e Localisation updates from https://translatewiki.net.
Change-Id: Ib1f8652d7a435177de767c2012d90d57391f1c29
2021-05-24 09:59:46 +02:00
jdlrobson 3306124038 Introduce the vector-body class
This follows up I4c1b15d90bacbc9b13782a1d8f52e838ce8ecd83
In that change, a new class for Vector specific styles should have
been added and the existing CSS referenced. I could have sworn I did
this, but obviously not (perhaps a git rebase or unstage change problem).
We did it for the other skins e.g. Monobook (I90d85c21f4a62e6697f24e3ce388445a0a53c2b0)
but evidently not Vector.

We also have to worry about cached HTML now, the #bodyContent is
the most reliable selector to use for before and after
I4c1b15d90bacbc9b13782a1d8f52e838ce8ecd83

Additional:
Remove the mixin-clearfix rule on bodyContent - this is now
redundant with the changes in T279388 and should have been
removed.

Bug: T283206
Change-Id: I15103cea72c793589a03ab1a3e7f3b377acb287f
2021-05-21 13:50:31 -07:00
James D. Forrester eb5d58a9f5 composer: Point IRC presence to Libera and better git source
Change-Id: I92aabc5091b04d9744de2d845934871801fab7cd
2021-05-21 10:11:50 -07:00
Translation updater bot ea85248088 Localisation updates from https://translatewiki.net.
Change-Id: I21be576c91ea7b576b00ee74bcdfcda0bb834342
2021-05-21 08:36:19 +02:00
Translation updater bot 96b383df0d Localisation updates from https://translatewiki.net.
Change-Id: Ie6316de4329bfad84dfc600ca4849d1123cde447
2021-05-20 09:13:44 +02:00
Translation updater bot cc982d3bae Localisation updates from https://translatewiki.net.
Change-Id: Iad6e288d13dd12ef301ce0ec6ca6c0320fa52e92
2021-05-19 08:47:00 +02:00
Translation updater bot ea6a4a0889 Localisation updates from https://translatewiki.net.
Change-Id: Ia6ade96fddf83f7ebb08e1f3900a06dc142be119
2021-05-18 08:49:38 +02:00
Thiemo Kreuz 9213c514e6 Remove not needed $this->equalTo() from tests
This is the default anyway. I believe the tests are much more
readable without this.

Change-Id: I9f6c0d777ae5cd184acf40b1ef5b7b171dc3e675
2021-05-17 10:05:10 +02:00
Translation updater bot 9b4c0e39ae Localisation updates from https://translatewiki.net.
Change-Id: I4331005d26acef68b01a97b966443b2abdac9930
2021-05-17 08:48:02 +02:00
libraryupgrader dd6cdd7149 build: Updating jsdoc to 3.6.7
* https://npmjs.com/advisories/1674 (CVE-2021-23358)

Change-Id: Iaa01d3c4f3becdbc8f45368e9877211b434b7fa6
2021-05-15 18:15:54 +00:00
jenkins-bot 81947cbd67 Merge "Remove unused $contentNavigation from `getTemplateData` method" 2021-05-14 20:20:54 +00:00
Nicholas Ray 7ab2edb2fa Remove unused $contentNavigation from `getTemplateData` method
This is not used in the method and, from the surface, appears to be
extraneous.

Change-Id: I63b1eba54f8ce11296c187b292010e415a2915af
2021-05-14 12:13:14 -06:00
jdlrobson 6998c536d4 Both UserMenu stylesheets should be shipped in modern
Since we have feature flagged the new user menu feature, it is
imperative we load both sets of styles until the feature has
shipped. This allows us to switch seamlessly between the two
without worrying about cached HTML being served with updated CSS.

To do this, we add a new class to both user menu's distinguishing
the legacy version from the modern version. The styles are then
scoped to these new selectors.

This also fixes some regressions with the legacy user menu in
modern Vector when wgVectorConsolidateUserLinks is disabled.

Notes:
* No caching selector is needed for #pt-userpage given it can only
ever be output for logged in users.
* ID selectors in general are bad, so scoping to mw-portlet-personal-user-menu-legacy
isolates the legacy component allowing it to be rendered alongside the modern UserMenu

Bug: T276561
Change-Id: I068c5233bb25a7b141e66a6726b5761841f83eb2
2021-05-14 10:13:09 -07:00
Jdlrobson efaf3aadf3 Remove mw-body-content from HTML that is not the article body
The `mw-body-content` class is currently decorating various things,
however should be limited to the body of the article. This allows
us to identify the wrapping element without resorting to a selector
that makes use of an identifier and to separate styling concerns of
UI (indicators and site notice) from article content.

Bug: T279388
Change-Id: I4c1b15d90bacbc9b13782a1d8f52e838ce8ecd83
2021-05-14 00:01:52 +00:00
Clare Ming 63f9dd81e3 Cleanup styles for personal user dropdown menu.
Remove redundant styles. Update personal menu dropdown to more closely reflect design of OOUI dropdown elements. Extract legcay-specific, modern-specific styles for UserMenu into separate partials. Create new shared UserMenu component.

Bug: T276561
Change-Id: I1e56cd5b3b24ac1b5cae684301b8e3a84ea33a5c
2021-05-13 23:19:54 +00:00
jenkins-bot 234659e3e3 Merge "Allow `languageinheader` query param to fully control treatment of languages" 2021-05-13 20:04:15 +00:00
Nicholas Ray de5a640c0b Allow `languageinheader` query param to fully control treatment of languages
Before this commit the `languageinheader` query param would only take
effect if the A/B test was enabled AND the query param was set. Per
T282543, we want the query param to take effect regardless of the state
of the language/AB test config.

To see new treatment, set `languageinheader=1`.
To see old treatment, set `languageinheader=0`.

Bug: T282543
Change-Id: I6a06e90b6e46a6fd7506a5ddeaf071b893ebfe8e
2021-05-13 12:04:12 -06:00
jenkins-bot 13e45adb28 Merge "search: Wire up submit event handler" 2021-05-13 15:39:12 +00:00
Sam Smith 7f780961a6 search: Wire up submit event handler
Bug: T274869
Change-Id: I5fab22564fa2fe140858cc214aac017d7bd6c68e
2021-05-13 15:29:18 +01:00
Translation updater bot 25ee080773 Localisation updates from https://translatewiki.net.
Change-Id: I98f8bafd0769dc34953b1d1221075a0d9bc295e2
2021-05-12 09:26:57 +02:00
Translation updater bot 87058d8caa Localisation updates from https://translatewiki.net.
Change-Id: I627f494ab9ec1dfe6a0448ecec98efc1a02c887e
2021-05-11 09:10:51 +02:00
jenkins-bot 50430ea06a Merge "search: Update styling for the search loading state" 2021-05-10 20:55:31 +00:00
jenkins-bot b41e224ec6 Merge "Refactor: Renaming mustache variable `page-isarticle` to `is-article`" 2021-05-10 09:38:08 +00:00
Jan Drewniak c22dc8d95b Refactor: Renaming mustache variable `page-isarticle` to `is-article`
Modifies this variable name to use proper hyphen-case and
prioritizes the type of variable rather than it's source.

This prioritization makes sense in Mustache templates because the
variable is a boolean and is used exclusively in if statements,
e.g. {{#is-article}} ... {{/is-article}}

Change-Id: I72e9baf0a979d922b8217aabe8cf0c40699f891b
2021-05-10 08:55:06 +00:00
Translation updater bot 18e74b2292 Localisation updates from https://translatewiki.net.
Change-Id: I54821846ebfced651cde76b622ac74f2a9eb5e96
2021-05-10 08:59:33 +02:00
bwang 964e214e87 search: Update styling for the search loading state
Bug: T273093
Change-Id: Ifd7f07411597be844cb7de79e416975261069506
2021-05-07 17:04:42 -05:00
Jan Drewniak 9027d57804 Fix: update to 80d734b4, hide language dropdown when ULS loads
Bug: T276140
Change-Id: I70997fbc54554b8d1b9c271a5ca93f2a47f1ee92
2021-05-07 12:24:30 +02:00
Translation updater bot 865cc4a566 Localisation updates from https://translatewiki.net.
Change-Id: I1858001c141885236e191c94abb78ea29f7d51ac
2021-05-07 08:47:06 +02:00
jdlrobson e7a4ecf9db Refactor: Clarify functions that return booleans and template booleans
We prefix templates that are booleans with "is-" and tend to prefix
functions that return booleans with "if" or "should"

This renames the new "shouldConsolidateLinks" method.

Follow up to I1c305d89bece147a6f1b478441119c3169abfbdd

Change-Id: I6a5908b8b35ca6bceec8b864e3ac651fc7e8ced8
2021-05-06 23:51:56 +00:00
jenkins-bot 840bc5b0cd Merge "Consolidate user links into personal dropdown menu for logged users." 2021-05-06 20:17:33 +00:00
Clare Ming dc0b679bfa Consolidate user links into personal dropdown menu for logged users.
Pull personal menu items except for user page link into a consolidated dropdown menu based on feature flag using Vector hooks. Add consolidate user links feature flag for logged in/out users. Update styles for personal toolbar. Add logic to template to show legacy toolbar or consolidated toolbar based on feature flag variables.

Bug: T276561
Depends-On: If4e143aada711d210ae45d33b97a6be0685b6a41
Change-Id: I1c305d89bece147a6f1b478441119c3169abfbdd
2021-05-06 12:49:39 -07:00
jenkins-bot 545eb7fb2b Merge "LanguageButton story should load mediawiki ui button styles" 2021-05-06 09:10:29 +00:00
Translation updater bot ca113fd066 Localisation updates from https://translatewiki.net.
Change-Id: Ic6433b90bd8143042dc322da59c6cacb5d1d5a2a
2021-05-06 08:56:58 +02:00
Nicholas Ray 8eba1da250 Silence eslint compat/compat for search performance instrumentation
Eslint is throwing compat warnings on every commit in Vector. This
commit silences those warnings.

Change-Id: I0e914c6179745415e916fadd382d86baa72e3e63
2021-05-05 14:37:35 -06:00
jenkins-bot bea00bc290 Merge "Create A/B test harness for Language in header feature" 2021-05-05 17:33:38 +00:00
jenkins-bot 888e17bd47 Merge "Place language button near bottom of Main page." 2021-05-05 17:08:18 +00:00
Jdlrobson d2c7805fa8 LanguageButton story should load mediawiki ui button styles
Discovered while testing I97bf0c11d0321752d472ac4988618a1db92b7271

Change-Id: I8634717ea58544b2d226fbb114bea43639a6542d
2021-05-05 09:41:10 -07:00
Jan Drewniak 80d734b4d2 Place language button near bottom of Main page.
In modern Vector, the language button that is placed inside
the page header should appear near the footer, if the page is a
Main page.

This changes some CSS selectors to not depend on the language
button having the `.mw-body-header` parent element.

Bug: T276140
Change-Id: I97bf0c11d0321752d472ac4988618a1db92b7271
2021-05-05 13:42:19 +02:00
Nicholas Ray 49f2b25737 Create A/B test harness for Language in header feature
* Adds ab test config to enable/disable the ab test. Defaults to `false`
(ab test disabled).

* Adds a `languageinheader` query param which only takes effect when the
ab test is enabled. The query param is cast to a bool and determines
which treatment is shown. For example, set query param to
`languageinheader=1` to see the new treatment. Set query param to
`languageinheader=0` to see the old treatment. To bucket based on the
user's id or global user's id, don't set the query param.

* Moves the language in header config work that was previously in
ServiceWiring into a `LanguageInHeaderTreatmentRequirement` class so
that unit tests can be done on most of the logic that determines whether
the language in header will show.

* Adds logic to bucket user based on [global] user id.

Bug: T280825
Change-Id: Id538fe6e09002fae6c371109769f3b7d61e7ac6d
2021-05-04 14:41:53 -06:00
libraryupgrader 932c8d541e build: Updating composer dependencies
* mediawiki/mediawiki-codesniffer: 35.0.0 → 36.0.0
* php-parallel-lint/php-parallel-lint: 1.2.0 → 1.3.0

Change-Id: Ib71722afb42c300ec3d6a3cd3bfab7eddde18bdf
2021-05-04 12:41:27 +00:00
Translation updater bot 1703243a76 Localisation updates from https://translatewiki.net.
Change-Id: Ic99976f71b7ff3accc3615a51fee52f4503f6578
2021-05-03 08:41:02 +02:00
jenkins-bot c6f92d6ae8 Merge "templates: Remove role deprecation HTML comments" 2021-05-01 15:20:28 +00:00
James D. Forrester 70e61dbd8a build: Switch node version to 10.24.0 now CI is on buster
Change-Id: I544f4266966b6ffbd2b43eae54570d452c9db237
2021-04-30 11:46:37 -07:00
Sam Smith 5998d82056 templates: Remove role deprecation HTML comments
Sending these comments to all users incurs small performance penalty on
both sides. Further, the intended audience for the comments is
vanishingly small when compared to all users and we have more direct
avenues to contact that audience, i.e. the Technical Village Pump.

Remove the HTML comments related to the deprecation of the
role="navigation|main" attributes on the navigation and main elements.

Bug: T281025
Change-Id: I4735c435fc31c5ba4fbf99e9d9bf12adc466b02f
2021-04-30 15:44:52 +01:00
Roan Kattouw 402b01e0ca search: Prevent double-escaping of messages passed to typeahead-search
The parameters passed to the typeahead-search Vue component don't need
to be escaped, they're already escaped by the Vue implementation. Use
.text() instead of .escaped() for the i18n messages passed to this
component, to prevent them from being escaped twice.

Change-Id: I5dcf442f6af181a99123bf7426743af01b097729
2021-04-29 11:34:48 -07:00
Translation updater bot 897769a04d Localisation updates from https://translatewiki.net.
Change-Id: I94c3a5b2baf2ea6fbd6bae09dc9b268fa83a98c5
2021-04-28 16:41:35 +02:00
Translation updater bot 1e4f513e60 Localisation updates from https://translatewiki.net.
Change-Id: I05bec89bdd8add4d7af62cee2d5c5cb5b42cf1df
2021-04-28 08:51:42 +02:00
Translation updater bot 1b80a0db16 Localisation updates from https://translatewiki.net.
Change-Id: Ic3f65a3716821b17dc95502a9d0ed73c0b040c84
2021-04-27 08:40:42 +02:00
Translation updater bot 0c5a3f7749 Localisation updates from https://translatewiki.net.
Change-Id: I98dc9ca6a1be9bb6658b30f529c98db219e477a9
2021-04-26 09:14:15 +02:00
Translation updater bot b55b6f4200 Localisation updates from https://translatewiki.net.
Change-Id: Ibf70bba15ba2b4c9f2c61200a63f9737fef8c22c
2021-04-23 08:39:15 +02:00
jenkins-bot 2acf0694c9 Merge "[search] Don't destroy #p-search element" 2021-04-22 20:14:21 +00:00
Translation updater bot 5fd01af17e Localisation updates from https://translatewiki.net.
Change-Id: I5baa90700f1a4feee4575caa6c0522874f1b89d3
2021-04-22 09:34:16 +02:00
jenkins-bot 5820fa0b18 Merge "Scope right-aligned dropdown menus to #right-navigation & .mw-portlet-lang" 2021-04-21 19:15:27 +00:00
Nicholas Ray 2ff3308ac4 Remove 'noexternallanglinks' check from `canHaveLanguages`
`noexternallanglinks` is a magic word that can be used to
suppress/modify the languages produced by wikibase [1]. Most importantly
though, languages can still appear even with the usage of this magic
word. Therefore, this check can be removed.

[1] https://www.mediawiki.org/wiki/Wikibase/Installation/Advanced_configuration#noexternallanglinks

Bug: T277517
Change-Id: I1f532b3e669564f570b47451693ddb15757a6101
2021-04-21 10:45:06 -06:00
Sam Smith 9914d813d6 [search] Don't destroy #p-search element
The #p-search element is present in at least the Vector, Vector V2,
Timeless, and Monobook skins. This is because the HTML for the element
is generated in MediaWiki Core. At the very least, the
SearchSatisfaction instrument relies on the element always being
present.

Update the skins.vector.search module to simplify the App component
template so that it doesn't render a div#p-search element and mount that
component on the #searchform element instead.

Bug: T274869
Change-Id: Ifde679b62484fda7661fded2d978b78adac9f5da
2021-04-21 14:01:56 +01:00
Translation updater bot 90da534616 Localisation updates from https://translatewiki.net.
Change-Id: I93bb9656c6c06ea3d0f69246e5fa8a3abbea141b
2021-04-21 08:54:55 +02:00
jenkins-bot 83c92290ae Merge "build: Update 'svgo' to latest" 2021-04-19 13:50:39 +00:00
Translation updater bot 94b565a208 Localisation updates from https://translatewiki.net.
Change-Id: I440051ebab3844e22203bd9d0fcf79413b81324d
2021-04-19 08:54:44 +02:00
Volker E 2b5c18d7c9 build: Update 'svgo' to latest
Also change script name to 'minfiy-svg' to align with other npm 'svgo'
using products and to improve readability for non-native speakers.

Bug: T278656
Change-Id: Ib2a8a251a48ea99c8019d63b4f2586fea4079021
2021-04-18 14:51:48 -07:00
jenkins-bot e637cef2c2 Merge "Add config for language in header for logged in/out users" 2021-04-16 17:49:43 +00:00
Clare Ming 8cab50874c Add config for language in header for logged in/out users
Register updated requirement for language in header for logged in and logged out users in Vector's ServiceWiring file. Make VectorLanguageInHeader backwards compatible to handle boolean values when registering LanguageInHeader feature. Update VectorLanguageInHeader variable to array in config to handle different logged states.

Bug: T277588
Change-Id: I37a3a01e83f051cf0679769c8b9b5b41f00d6d72
2021-04-16 10:38:28 -06:00
Translation updater bot 48eecb2d18 Localisation updates from https://translatewiki.net.
Change-Id: I551e3fa999bc747f9048092402b51f38e4bbc265
2021-04-16 09:52:10 +02:00
jdlrobson afaa02ae42 Adjust floating override
Follow up to I3234e7712b8c111b070c35e38425c865ff7213f9
Do not disable the feature entirely as it has other purposes.

Bug: T280260
Change-Id: I47d16eb8186efa83e158713d852b443bce9aee1c
2021-04-15 17:18:29 +00:00
libraryupgrader e352b94055 build: Updating npm dependencies
* eslint-config-wikimedia: 0.19.0 → 0.20.0
* ssri: 6.0.1 → 6.0.2
  * https://npmjs.com/advisories/565

Change-Id: I4db94efccd2d6b58b994b080a99c5c066b829892
2021-04-15 13:54:37 +00:00
Jan Drewniak f52c2f8a4a Scope right-aligned dropdown menus to #right-navigation & .mw-portlet-lang
Removes the global rule for right-aligning the Vector dropdown menus
and instead scopes that alignment to dropdown menus that appear
inside #right-navigation and the language button in modern Vector.

Bug: T275158
Change-Id: I6c00ccc365f70682841d9eda9d31bbe25c757aa0
2021-04-14 23:31:59 +02:00
Translation updater bot 50dcf4f7a5 Localisation updates from https://translatewiki.net.
Change-Id: I7dd1498a6d8f2ae4f22345e241e84d62be5b8e66
2021-04-13 09:23:44 +02:00
jenkins-bot dd19a1924c Merge "Reorganize LESS files to match ResourceLoader conventions" 2021-04-12 20:45:43 +00:00
Translation updater bot bf80910a79 Localisation updates from https://translatewiki.net.
Change-Id: If236b8fbf6ec044ce821713cb8bc882d4c36c7e2
2021-04-12 08:41:53 +02:00
Translation updater bot 7687748dc0 Localisation updates from https://translatewiki.net.
Change-Id: I2c313e7e737d1bbd2d8f1af76d7384ab0c24cf9a
2021-04-09 09:01:25 +02:00
Jan Drewniak edd2f4ff85 Reorganize LESS files to match ResourceLoader conventions
Separating most LESS files into 2 ResourceLoader modules and a common
folder:

- skins.vector.styles
- skins.vector.styles.legacy
- common

This changes aims to clearly separate the old (“legacy”), the new
(“modern”) and the common styles which were previously all placed under
`skins.vector.styles/`.

Inside each directory are separate folders for `layouts` and
`components`.

The entry files, `skin.less` and `skin-legacy.less` are moved into the
specific folders and a third, `common.less` entry file is created that
contains the common imports for both old and new Vector.

Aliases have been added to the Storybook Webpack config to avoid adding
the story file changes to this patch. Images coming from CSS `url()`'s
have also been temporarily disabled in Storybook until Storybook can be
upgraded to use Webpack 5, and use array values for aliases, in a
follow-up patch.

This patch also slightly changes a footer layout specific rule so that
existing `padding` remains unchanged in rendering due to new common and
component structure.

Bug: T264309
Change-Id: I1cd2681a2b61edb7be56c38f9bb3994827d7e322
2021-04-08 15:47:56 +01:00
libraryupgrader 2e9917d587 build: Updating y18n to 4.0.3
* https://npmjs.com/advisories/1654 (CVE-2020-7774)

Change-Id: I69ab4c5db75906cb6b774aadf772a47cdbce9cdf
2021-04-08 09:10:48 +00:00
Translation updater bot 7bbe0e1df6 Localisation updates from https://translatewiki.net.
Change-Id: I0a1246d8046d1edf891cc6d51cd34bcac93a89c1
2021-04-08 08:42:48 +02:00
Translation updater bot ec6bca52ee Localisation updates from https://translatewiki.net.
Change-Id: Ieefae3f13c641ac58859e0d9df47086038e8ecab
2021-04-07 08:54:20 +02:00
jenkins-bot 2e8f193072 Merge "Remove redundant mw-indicator styles from `layout-default.less` and `layout.less`" 2021-04-06 21:25:04 +00:00
Translation updater bot fcdc1cd80b Localisation updates from https://translatewiki.net.
Change-Id: I7021fbaffd6142087793eeb6c162a5a717e8d820
2021-04-06 12:06:01 +02:00
jdlrobson bdd7eaacf1 [legacy] Restore old floating style inside Vector
This is a modified revert of Ia1eec412111e8f6af3b45affdc186d9eafd4262c.
This is not applied to modern Vector, for reasons given on ticket.

Bug: T279008
Change-Id: I3234e7712b8c111b070c35e38425c865ff7213f9
2021-04-05 15:07:07 -07:00
Bernard Wang 55fdf38714 Remove redundant mw-indicator styles from `layout-default.less` and `layout.less`
Bug: T278362
Change-Id: I76f39a9f4cf7404e7d50a272ebce08d53594ef5f
2021-04-05 16:58:41 +00:00
jenkins-bot 1b42cd8dd4 Merge "[styles] LanguageButton: Amend icon color by setting opacity" 2021-03-30 23:10:51 +00:00
Volker E 5a1a382c17 [styles] LanguageButton: Amend icon color by setting opacity
Amending icon color by setting `opacity` accordingly to Design Style
Guide requirements.
Also using `em` base sizing for accessibility reasons in order to
make icon resizable on user text zoom preferences. And adding some
comments and mediawiki mixin usage.

Bug: T277660
Change-Id: Ia226857a38d3b3d5b4583e95905ef55e406c5cb2
2021-03-30 22:13:50 +00:00
jenkins-bot d6b7ef0a8e Merge "Hide languages-in-header button when no additional languages" 2021-03-30 18:23:55 +00:00
Jan Drewniak 980c8453ce Hide languages-in-header button when no additional languages
Hides the languages-in-header feature if there is only one
available language.
Also factors the additional classes required for the language
button into a separate function.

Note: Hiding the language button is a temporary solution
until T275147 is resolved.

Bug: T276950
Change-Id: I241abc6061bba12a6a209074fa4c2d2c89cea930
2021-03-29 23:07:26 +00:00
jenkins-bot 15e343dede Merge "Clean up VectorHooksTest" 2021-03-29 20:20:03 +00:00
DannyS712 7dfec540ec Clean up VectorHooksTest
Fix order of parameters in assertions.
Remove unneeded "\".
Make constant a class constant.

Change-Id: If372dec96b54d466a066163420c6fd9da177c66c
2021-03-27 02:25:22 +00:00
Translation updater bot c1a6d14fe9 Localisation updates from https://translatewiki.net.
Change-Id: I053d9f262c5947827570aa5a94c9980a8838d336
2021-03-26 08:53:07 +01:00
jenkins-bot d29bdb86bd Merge "build: Update SVGO to latest v2.2.2 and re-crush SVGs" 2021-03-25 23:17:31 +00:00
Ammarpad b7bf9a88a3 Use content-parser-output RL SkinModule feature
Require MW 1.36

Bug: T277218
Depends-On: I52f752aa782b09a51e2165300cc75d0e47fa3351
Change-Id: Ia1eec412111e8f6af3b45affdc186d9eafd4262c
2021-03-25 17:34:28 +00:00
Volker E 5734191840 build: Update SVGO to latest v2.2.2 and re-crush SVGs
SVGO v2.x changed configuration to JS, amending configuration.
Also re-crushing SVGs.

Change-Id: Id6379e06e6aa1c25760f8489166d354fca25cd52
2021-03-25 09:19:42 -07:00
jenkins-bot 734ced999b Merge "[styles] Remove `margin` normalization already covered in 'normalize' module" 2021-03-24 21:55:36 +00:00
Volker E e5b652852e [styles] Remove deprecated `.box-shadow()` mixin calls and cleanup vars
Removing calls to deprecated `.box-shadow()` as basic browser support
is now given unprefixed. In the course we also replace deprecated
vars with already available ones since MW v1.35 following unified
name scheme on both, box shadow and border ones.

Change-Id: Iae353c934c0995c0b6b2635761352685eb91accb
2021-03-24 14:03:25 -07:00
Volker E c8cd609862 [styles] Remove `margin` normalization already covered in 'normalize' module
Has been introduced before 'normalize' module, now it's time to remove
duplicated style property.

Change-Id: Idff74430655c29b67dfccf97a22f53caaee34155
2021-03-24 13:33:19 -07:00
Jan Drewniak 88dcdab6db Removing temporary `.body` selectors.
Per the comment, it's been a week. These selectors should be removed.

Change-Id: Ifebb7939596827fc8ade7213f3acf6bf80eebb40
2021-03-24 13:53:48 +01:00
Translation updater bot 2b0141cdef Localisation updates from https://translatewiki.net.
Change-Id: I0535595c34734fac16d428f0a0014bdccd5eb81f
2021-03-24 08:32:09 +01:00
jenkins-bot bd6770014e Merge "Inform anonymous A/B test by tracking time from navigationStart" 2021-03-23 18:29:36 +00:00
jdlrobson b183ac3bf3 Inform anonymous A/B test by tracking time from navigationStart
This will inform us on the approach taken in
I315ea30b88e43f3df29b0a0b37907272ec77d0a7

Additional change:
Flesh out TypeScript with eventLogging interface

Bug:  T275807
Change-Id: I9789cd1dfab5181fa093bce46c5c9b0d338339f5
2021-03-23 10:40:20 -07:00
Translation updater bot 72518acb18 Localisation updates from https://translatewiki.net.
Change-Id: Ifd7c5e1bcfe5b758cee37982de2bb652365fb665
2021-03-23 08:27:26 +01:00
Translation updater bot a425c942a7 Localisation updates from https://translatewiki.net.
Change-Id: I1f23f2b3ad9e2462973cafa2d96791bbeb854178
2021-03-19 08:28:37 +01:00
Translation updater bot 06f82148a9 Localisation updates from https://translatewiki.net.
Change-Id: If1660001e34223a30288451676d1e0e14155cac1
2021-03-17 08:28:30 +01:00
jenkins-bot 991e4b0587 Merge "build: Updating eslint-config-wikimedia to 0.19.0" 2021-03-15 18:47:37 +00:00
jenkins-bot 0954ff6e2a Merge "tests: clean up requirements tests" 2021-03-15 15:43:17 +00:00
Translation updater bot 4a4d390e5e Localisation updates from https://translatewiki.net.
Change-Id: Ibfe7cce1f76dc79a2fd6b4d25c0bb35cf6b6ef80
2021-03-15 08:44:30 +01:00
libraryupgrader f01df6f803 build: Updating eslint-config-wikimedia to 0.19.0
The following rules are failing and were disabled:
* compat/compat

Additional changes:
* eslint: Renamed `wikimedia/client` profile to `client-es5` (T277085).

Change-Id: I12c1a88cef8e2c95bed496628d2fe74d031f8278
2021-03-15 04:57:07 +00:00
libraryupgrader 02c2268716 build: Updating dependencies
composer:
* mediawiki/minus-x: 1.1.0 → 1.1.1

npm:
* prismjs: 1.19.0 → 1.23.0
  * https://npmjs.com/advisories/1638 (CVE-2021-23341)
* elliptic: 6.5.3 → 6.5.4
  * https://npmjs.com/advisories/1648 (CVE-2020-28498)

Change-Id: Ibc3cd2c3772dc89f053a6a695a7717a391c9ee32
2021-03-12 08:32:23 +00:00
Translation updater bot 825c494848 Localisation updates from https://translatewiki.net.
Change-Id: Id8cda8aea8ce293f7b0a23688c260244388c3173
2021-03-11 08:42:31 +01:00
DannyS712 568dbebd47 tests: clean up requirements tests
Convert to unit tests, no integration needed
Use data providers

Change-Id: Ife758952b6bf8a046eddf4bdc478437564f0bc22
2021-03-10 14:45:24 +00:00
Translation updater bot d17aed2727 Localisation updates from https://translatewiki.net.
Change-Id: I8bf9eedaeb4f62c7d6ad4f48ed3e58f5c98d48b4
2021-03-10 08:34:29 +01:00
jdlrobson 127422e4c6 Language button skinStyle overrides
* ULS makes the language button text font weight normal on bold,
reset this.
* Because our icon is non-standard our left margin is also non-standard.
Adjust.
* Remove opacity on language button (it applies to more menu because of
the label text color)

Bug: T268241
Change-Id: Ie9b275a857e8bcb7b767446f0523954134751659
2021-03-08 11:11:07 -08:00
jenkins-bot c84d5d38d5 Merge "[modern] Usability improvements to dropdown" 2021-03-08 16:40:52 +00:00
Translation updater bot f90c5d5804 Localisation updates from https://translatewiki.net.
Change-Id: Ic9401e56d2268c5b330ab641b84abb2ec4f85bbc
2021-03-08 08:49:45 +01:00
jdlrobson 41d30615a2 [modern] Usability improvements to dropdown
* Don't reveal the menu on hover
* Don't flip the dropdown arrow when open
* Menus close when clicked outside

Bug: T275681
Change-Id: I36f5c46422725a935c962be3194fd37bde1fa769
2021-03-07 18:59:41 +00:00
jdlrobson c9c00e71b0 Disable margin in ext.uls.compactlinks module
On beta cluster, ULS is adding a margin to the language button
meaning it is not vertically aligned.

Follow up to ac62386909

Change-Id: I4b85c391543078da7ef813cf4ddaf30d92be3b8d
2021-03-04 23:25:55 +00:00
jenkins-bot e827eb0518 Merge "Languages should not appear in side bar on modern Vector special pages" 2021-03-04 00:04:51 +00:00
jdlrobson 0d2e38375c Languages should not appear in side bar on modern Vector special pages
Follow up to 52edeee

Bug: T273144
Change-Id: I22b33d2090dcd814658ecc2f155d86a5b1791fc3
2021-03-03 22:48:00 +00:00
jenkins-bot cf187653a8 Merge "Correct the height of the language button" 2021-03-03 19:53:23 +00:00
jdlrobson ac62386909 Correct the height of the language button
In wvui quiet buttons have a minimum height of 32px
Given the importance of vertical alignment, here inside Vector
seems the best place to define this.

Bug: T268241
Change-Id: I95b61a0c239ccfb7fa1b2ddaa6980ad2737e8f26
2021-03-03 10:03:17 -08:00
jdlrobson 1d01f70e32 Refactor: Separate Language button code into its own JS file
Having this outside the init function makes the code more
easy to understand.

Change-Id: I6bdcb385738ceb986e21075b006db40567386e7b
2021-03-03 00:13:45 +00:00
jenkins-bot 9bdd6c0130 Merge "[icons] Amend 'search' icon" 2021-03-02 18:40:52 +00:00
jenkins-bot 175723f2e5 Merge "Disable language button on certain pages" 2021-03-02 08:04:34 +00:00
jdlrobson 8d8e2d85e6 Language button is quiet with focus, active and hover states
* Add mediawiki ui button styles to Vector and convert language
button to a quiet button
* Restore the arrow for language button with ULS
* Vertically align button to first line of header
* Add a storybook entry for LanguageButton

Additional changes:
* Fix issues revealed by storybook - menu dropdown should
reset generic typography rule for `ul` tags
* Allow quotes usage in storybook without disable rule

Bug: T268241
Change-Id: I483350084fb46a51c50af6aab78c62db6d02df89
2021-03-01 20:01:45 +00:00
jdlrobson 52edeeea1c Disable language button on certain pages
The logic is based on the existing logic for the "Add language links"
however with the additional constraint that the page is not a special
page.

To avoid multiple expensive calls to getLanguages method,
the getLanguagesCached method is introduced.

Bug: T273144
Change-Id: I1085efca1e10c9b6f1305c2238664e0b2ec69123
2021-03-01 18:03:26 +00:00
Translation updater bot b97ff7e827 Localisation updates from https://translatewiki.net.
Change-Id: I203577c22c2a617d033890a3ab206cb183f679a4
2021-03-01 08:57:06 +01:00
Umherirrender ee4b7fb9b5 build: Updating mediawiki/mediawiki-codesniffer to 35.0.0
Change-Id: If3ede1c45ba7cbbcd2ed91ff600d4c2396087130
2021-02-26 23:21:17 +01:00
Translation updater bot 763ba39a09 Localisation updates from https://translatewiki.net.
Change-Id: I3a039232b53274efb9f648731e09f4309bae7f19
2021-02-25 08:41:01 +01:00
Jan Drewniak d8bdba0026 Reorganize layout variables
Reorganizes the variables into sections in layout.less.

Also removes a few variables that were only used once for the calculation
of other variables (e.g. `@min-width-container-base`,
`@margin-horizontal-sidebar-button-icon-ems`) as well as
variables that were just multiplied by 2, e.g.
`@padding-horizontal-page-container-total`.

Change-Id: I4a3fc3111f7983a55b7992bee09c03a7ab4092b8
2021-02-24 22:23:07 +00:00
Volker E 35ce451498 [icons] Amend 'search' icon
Following Design Style Guide guidelines slightly decreasing icon on
canvas in accordance with designers.

Bug: T213580
Change-Id: I0ea2426f4e0873b9aac12fe2143203a765e42c3a
2021-02-23 13:01:59 -08:00
Translation updater bot 31a9e6feff Localisation updates from https://translatewiki.net.
Change-Id: If1426f962e1edb124851d753de8ba3063eedd419
2021-02-22 08:57:55 +01:00
Translation updater bot 159ad59806 Localisation updates from https://translatewiki.net.
Change-Id: Ib9b48576d85a71238024974a0076c4f55491ff0a
2021-02-19 08:34:47 +01:00
Translation updater bot 10364af3b2 Localisation updates from https://translatewiki.net.
Change-Id: Ic190490375dd9730946d2bd1aaf95b0f836b9985
2021-02-16 08:33:34 +01:00
Translation updater bot eb28fba3e7 Localisation updates from https://translatewiki.net.
Change-Id: Ica3fb28f0c32ce99f60156fd54ca6f94acbb4b3a
2021-02-15 10:10:20 +01:00
Nicholas Ray f549eb58d2 Replace `mediawiki.util` dependency with `mediawiki.Uri` in `skins.vector.search` module
I can't find any usages of `mw.util` in the Vector search code, but
there is a usage of `mw.Uri` in instrumentation.js.

Change-Id: I358295301403bc33be3a183392ed9e39c2378f6c
2021-02-12 11:23:59 -07:00
jdlrobson 4035d3575f Move resource loader definition to skin.json
Now `wvui` is in core, there is no need for this to be conditional.

Depends-On: I91db16946e7ea46f69a6b57b116962f77ce3cd20
Change-Id: Icceaefc63d227ca772a986ad2c6ce28cbdb0a7d6
2021-02-12 01:49:21 +00:00
jenkins-bot fdd713b244 Merge "Search results should overlay personal tools" 2021-02-12 01:36:06 +00:00
jdlrobson a4f126a76f Search results should overlay personal tools
This removes the problem with the Echo icon being visible on top
of search when the browser is resized to 500px with Echo installed.

Change-Id: I6aba17cb85979617a55e9879518eacdb916ac18b
2021-02-12 00:53:50 +00:00
jdlrobson daf6a798c4 TypeError: data.collapseCondition is not a function
Lots of logspam relating to this error. If data is {}
this error will be thrown which is possible given the
code.

This is possible if a gadget rewrites tabs

e.g.
$( '#p-views ul' ).remove().append($('<ul>'))

Change-Id: I0d3f391fccdb38758fb3cfd7e84889143d479b1e
2021-02-11 21:19:28 +00:00
jdlrobson 6f16af4212 Round up to nearest kb
The precision we are currently using leads to lots of issues with
core changes and as we grow the new vector.

I think checking in at every 1kb margin seems like a better state
of play for now.

Bug: T270883
Change-Id: Iaa4fb44a471777fdebfb906c465ea67b5bdb3903
2021-02-11 16:51:41 +00:00
jdlrobson 591fd316cf Switch back to skin version 1 for now
Per conversation with Bartosz this should have been done in an
explicit commit and probably needs better messaging.

Change-Id: I63f286d1c22dcb7d0bad956f01e8482e5111face
2021-02-11 14:20:09 +00:00
Translation updater bot febecb5db2 Localisation updates from https://translatewiki.net.
Change-Id: I8cc97b71de43e3ddde1fd726bb7908dbf04d8e89
2021-02-11 08:43:52 +01:00
Jan Drewniak e1f2d2896f Convert max-width layout to relative units
The max-width layout uses a mix of ems and px.
the var `@max-width-margin-start-content` uses ems to define a max
width breakpoint, however the workspace and content containers
`@max-width-content-container` are defined in px.

This leads to layout bugs like the sidebar ovelapping when the base
em unit is not the assumed 16px.

This patch changes the layout px units to ems.

(There should be no visible difference at the assumed 16px font size).

Bug: T270104
Change-Id: If8f284dc5e27c8e1c10f3a6897b7a5e4b8bb357d
2021-02-10 22:58:14 +01:00
jenkins-bot b4a8287589 Merge "Simplify responsive Vector implementation" 2021-02-10 14:29:21 +00:00
jdlrobson 68b989efb6 Simplify responsive Vector implementation
Vector has a wgVectorResponsive flag. This adds a ResourceLoader
module as well

I propose the configuration is repurposed to disable the min-width
on Vector and enable the viewport tag. This will allow us to use
test.wikipedia.org to test Vector at lower resolutions in future
as well as provide a suitable option for 3rd parties wanting to run
a responsive version of Vector that can be opted into using:

```
$wgVectorResponsive = true;
$wgVectorDefaultSkinVersion = '2';

```

As part of this change, the default skin version is set to 2, in
preparation for the next MediaWiki release. Note on Wikimedia wikis we
explicitly set this version so this will not impact any of our deployed
wikis.

Bug: T242772
Change-Id: I878920f49d18c5d60efd3ac45dc7912d2c62086e
2021-02-10 13:05:14 +00:00
Translation updater bot 28388de910 Localisation updates from https://translatewiki.net.
Change-Id: I0910a73a0735d78bed4122b1f61bc86b54e874dd
2021-02-10 08:40:50 +01:00
Translation updater bot e220bc9e74 Localisation updates from https://translatewiki.net.
Change-Id: Ic4ff4f00e898e60b12e6b52ee8c85be61b8592c6
2021-02-09 08:44:05 +01:00
Nicholas Ray b8f1d8c8a5 Bring back hoverability of dropdown menu (e.g. "More" tab)
Looks like I72165ba3784da3fcc9d1dd7076b3a6c96e670a2f removed the hover.
This brings it back.

Note this also makes the language button hoverable and will probably
need an additional specific selector (although the language button has
not been enabled anywhere yet)

Bug: T273143
Change-Id: Iac0539313eca5ba8d7ac165d31d2c028e803eacc
2021-02-08 23:11:43 +00:00
jdlrobson 0e0ec99c81 Language button - design fixes
* change color to #202122 (currently it's #54595d)
* padding-right for button text should be 30px (currently it's 40px)
* language icon seems to be displaying at 21x21px (should be 20x20px)
* language icon's margin-right should be 7px (currently is 14px)
* the down arrow should be 10px from the right edge of the button (currently it's 8px)
(requires core change in 661497 to apply)
* increase font-size to 16px (currently it's 13px)
* add a max-height of ~65vh (or something similar)
* add overflow: scroll
* add a border-top (since the menu is wider than the button)

Bug: T268241#6805123
Change-Id: I8891556cb82450db77b90837eeeb72ac78926e29
2021-02-08 19:03:02 +00:00
jenkins-bot 0e0d04b92b Merge "Add mw-interlanguage-selector class to language button & hide menu/arrow when appropriate" 2021-02-05 23:22:01 +00:00
Nicholas Ray e3abac06a6 Add mw-interlanguage-selector class to language button & hide menu/arrow when appropriate
* We add the `.mw-interlanguage-selector` class to the
.vector-menu-heading in the server rendered HTML. `ext.uls.interface.js`
later attaches a click handler to this selector that loads the rest of
ULS.

* We hide the dropdown arrow for js users and only show it again if
ext.uls.interface module isn't installed or is not being loaded.

* When the `ext.uls.interface` module has been loaded, we hide the checkbox
and checkbox hack menu in favor of showing the ULS popover.

Additionally:

* Adds '.vector-menu-heading' class to menu headings.

* Change h3 selector to `.vector-menu-heading`.

Bug: T273232
Change-Id: I6f4572c16ca4096dcda3aac4d585003b93dcccfa
2021-02-05 15:03:07 -07:00
Umherirrender 44cdd3290d build: Remove maxWarnings: 0 from eslint configuration
This interferes with LibUp's ability to automatically downgrade newly
failing errors to warnings and is a deviation from the settings we
typically use.

Bug: T263922
Change-Id: Ia44038a1df1052f633ce18ac6f35253e870ab0c6
2021-02-05 20:16:27 +01:00
Translation updater bot d74ab5ce5c Localisation updates from https://translatewiki.net.
Change-Id: Ia940248550ab2f7ef3a2698e3b10a5b2814f9118
2021-02-05 08:49:16 +01:00
jenkins-bot 3cb3b08ee5 Merge "Style the language button" 2021-02-05 00:06:21 +00:00
jdlrobson 98e7bce753 Style the language button
For now the core button mixins are used. In the longer
term we should aim to leverage wvui.

Bug: T268241
Change-Id: I334af039567c52462bcb4c15f07242c6de8eeace
2021-02-04 23:02:48 +00:00
jdlrobson 36eda30e0f Language button should use a new id to identify itself
This breaks existing integrations with extensions which will need
to be revisited as part of this redesign.

Change-Id: Iabf627e6926d4574f27448400d76210386ebdaa2
2021-02-04 20:27:13 +00:00
Translation updater bot d50eef9cf6 Localisation updates from https://translatewiki.net.
Change-Id: I678abaa7e2df7f484e823cebfb2c745e7af17514
2021-02-04 08:45:50 +01:00
jenkins-bot 0c330185b1 Merge "Add language icon to language button" 2021-02-04 04:03:32 +00:00
jenkins-bot 497b0aad8a Merge "The label of the language button refers to the number of languages" 2021-02-04 02:59:48 +00:00
Jan Drewniak 5014c17570 Place indicators under page title
Fixes error in 03d61e12, indicators should be placed below
page title.

Bug: T248761
Change-Id: I61dcef0567373f28fd479b21ffa940a6e223ac16
2021-02-03 23:19:30 +01:00
jdlrobson f083eb2716 Add language icon to language button
The sidebar currently uses mw-ui-icon so we continue this
practice, however we provide a general rule to ensure all icons
rendered through it default to 20x20. This didn't impact the side
bar icon as that already specifies a height of 20px.

Bug: T268241
Change-Id: I6f8e8400da048a97cbf59c3e6ad918763fc91041
2021-02-03 15:38:30 +00:00
jdlrobson ef0ab0724e The label of the language button refers to the number of languages
Instead of "In another language" the button label will be
"0 languages", "1 language" or "X languages"

Bug: T268241
Change-Id: I293a1d5f4885f76cc5f62169ee24b52c234f9229
2021-02-03 15:34:43 +00:00
jenkins-bot 4b171bf74f Merge "After portlet is included in display of menu dropdown" 2021-02-01 11:02:44 +00:00
Translation updater bot 6a6e95d404 Localisation updates from https://translatewiki.net.
Change-Id: I5f0cd5aefe32a7b6d40b6c490f1acd8819e72518
2021-02-01 08:51:54 +01:00
Translation updater bot d8dbdf101a Localisation updates from https://translatewiki.net.
Change-Id: I8a0a6aba50796b9bb75126439fa9d883d2b19ee2
2021-01-29 08:40:42 +01:00
jdlrobson 3ecc89e5c5 After portlet is included in display of menu dropdown
Bug: T273143
Change-Id: I72165ba3784da3fcc9d1dd7076b3a6c96e670a2f
2021-01-28 14:08:36 -08:00
Translation updater bot eb1d6fd492 Localisation updates from https://translatewiki.net.
Change-Id: I2be6545bb76b49c3f3c8de08ca8e1536e062aa14
2021-01-28 08:39:42 +01:00
jenkins-bot 625c4bd099 Merge "Move #mw-panel into #mw-navigation" 2021-01-27 21:26:31 +00:00
Nicholas Ray 16b34aa750 Move #mw-panel into #mw-navigation
Not only might this make more sense from an accessibility standpoint
(because sidebar is also part of navigation and there is a heading with
that name), but it should also hide the sidebar when printing as there
are core styles that hide #mw-navigation.

[1] 3b381b71e9/resources/src/mediawiki.skinning/commonPrint.css (L31)

Bug: T265217
Change-Id: I7f936defa177ba172e4253ee6450040ffa52e257
2021-01-26 19:31:43 -07:00
Nicholas Ray 1e7ed6b2e1 Make expanding search input dependent on $wgVectorWvuiSearchOptions
Per T270202#6767750 the input should expand when focused before WVUI
loads. However, the input should *only* expand when `showThumbnail` is
`true` in `$wgVectorWvuiSearchOptions` to match how its done in WVUI
where it takes into account the size of the thumbnails. When
`showThumbnail` is false, it should not expand as the input won't match
WVUI and the WVUI load transition will be jarring.

To test locally, toggle between true/false in your LocalSettings.php:

```
$wgVectorWvuiSearchOptions = [
  "showThumbnail" => false,
];
```
Bug: T270202
Change-Id: I70277c1082a504fbd5f6023e9873e8071de7e35d
2021-01-26 17:37:22 -07:00
Nicholas Ray 8c76a17e43 Move Wvui Search A/B Logic to FeatureManager
FeatureManager allows the logic to be centralized and allows clients to
ask about its state. For instance, SkinVector will make use of it in
I70277c1082a504fbd5f6023e9873e8071de7e35d.

Also:

* Adds WvuiSearchTreatmentRequirementTest to test A/B logic

WvuiSearchTreatmentRequirement/Test logic are adapted from
I878239a85ffbecb5e78d73aed5568c56dbd7d659.

Bug: T270202
Change-Id: Ia02349a7b41c7caf26fbd728e0be7d47488b97e5
2021-01-26 17:36:37 -07:00
Nicholas Ray 2789e27a29 Correct config comment
`VectorUseCoreSearch` was changed to `VectorUseWvuiSearch` in
I3a063e0b085765ea1db3c4478fb30c11b0942b75.

Change-Id: Icc9f944ea695999133293bc9e90ac0818f746191
2021-01-26 13:59:41 -07:00
Sam Smith 746315bb5b Add search widget treatment A/B test
If the VectorSearchTreatmentABTest config variable is truthy and the
user is loged in, then pick the Core treatment (defined in the
mediawiki.searchSuggest RL module) or Vector's Vue.js-based treatment of
the search widget based on their user ID. If not, then fall back to
picking the treatment based on VectorUseWvuiSearch.

Supporting changes:

* Update initSearchLoader() in skins.vector.js/searchLoader.js to check
  whether the body.skin-vector-search-vue exists

* Remove wgVectorUseWvuiSearch from the skins.vector.js RL module's config

* Update the performance-related metrics collection to check which
  module is being loaded rather that use the above

Bug: T261647
Change-Id: Idc978392f5db14f0ae2b06ade0175fe534f4ae70
2021-01-26 12:02:01 +00:00
Translation updater bot 62376398d6 Localisation updates from https://translatewiki.net.
Change-Id: I2e8370671e5ad89b32e55a4e4a66541bfa427551
2021-01-26 08:55:39 +01:00
jenkins-bot 93578b0d77 Merge "Create .mw-body-header element for body content" 2021-01-26 02:56:20 +00:00
Jan Drewniak 03d61e12c9 Create .mw-body-header element for body content
For language-in-header feature, edits the <header> element to
contain:
- page title,
- language selector
- tagline (siteSub)
- Indicators

These elements are associated with header/meta content so grouping
them inside one header element makes sense semantically.

Bug: T248761
Change-Id: Ief6c4936d1ebe381432369f8d86419da5f7c6cae
2021-01-25 23:57:47 +01:00
jenkins-bot 27ad6eab12 Merge "Rename `wgVectorUseCoreSearch` to `wgVectorUseWvuiSearch`" 2021-01-25 22:47:49 +00:00
jenkins-bot 407036710c Merge "Align the menu dropdown list to the end of the "more" button." 2021-01-25 22:39:51 +00:00
jenkins-bot 162cf8449d Merge "Languages can be moved out of sidebar" 2021-01-25 22:38:12 +00:00
Jan Drewniak 4a959a6878 Align the menu dropdown list to the end of the "more" button.
Instead of aligning the dropdown list to the starting edge of the
"more" button, this aligns the dropdown list to the end of the
"more" button, preventing any potential horizontal scrolling.

The containing list box is right-aligned, but this does not affect
the text alignment.

Bug: T267325
Change-Id: I8b889f8314519b8c6a74c661aca773b9b546657b
2021-01-25 15:52:16 +00:00
Translation updater bot 3d1e510479 Localisation updates from https://translatewiki.net.
Change-Id: Ibdafaa4bbf1606865750f227e9f58045ce0a5552
2021-01-25 08:58:28 +01:00
Nicholas Ray 53f49c5c64 Rename `wgVectorUseCoreSearch` to `wgVectorUseWvuiSearch`
This allows better compatibility with FeatureManager (e.g. can use
requirements such as REQUIREMENT_LATEST_SKIN_VERSION). It will become
especially useful in I70277c1082a504fbd5f6023e9873e8071de7e35d and when
A/B testing search.

Bug: T270202
Change-Id: I3a063e0b085765ea1db3c4478fb30c11b0942b75
2021-01-22 16:25:46 -07:00
jdlrobson 355b188db4 Languages can be moved out of sidebar
A new config flag wgVectorLanguageInHeader is added to allow
us to render languages in sidebar or outside sidebar, in the
header.

it defaults to false to allow for further development and to
not disrupt the status quo.

To accomodate the new menu, a new header is added based on the design
in Minerva to contain the heading and language button. The language
button is floated to the right.

The new menu is not styled. That exercise is left for the follow up
task T268241

No caching implications of this change, as legacy and modern
experiences remain touched without changing the default value of the
new config flag

Bug: T260738
Change-Id: I5af1522cac3831c1c833388461fe254c03191f65
2021-01-22 09:10:49 -08:00
jenkins-bot 87dfbda424 Merge "Usages of page-langcode dropped for html-user-language-attributes" 2021-01-21 22:33:04 +00:00
jenkins-bot 0867954219 Merge "Allow more control over the max-width rules" 2021-01-21 19:27:10 +00:00
jdlrobson 05dc15954d Allow more control over the max-width rules
Bug: T260091
Change-Id: Ie534b0c34e240c588a4cc330898531f1d12df1f0
2021-01-21 18:51:12 +00:00
Raymond a002c3aeae Add missing / for self-closing input element
Consistency tweak, all other input elements do have the /

Bug: T272597
Change-Id: I9a4b44dda928a071634edcbea5cef2f19eef8881
2021-01-21 14:46:45 +01:00
Translation updater bot 5a1e23aecb Localisation updates from https://translatewiki.net.
Change-Id: I6f67998b13c892c815b4d08544726745f4218b8b
2021-01-21 08:34:42 +01:00
jdlrobson 68b52a77e2 Usages of page-langcode dropped for html-user-language-attributes
html-user-language-attributes contains not only the lang attribute
but also the direction. There doesn't seem any value in regenerating
just lang attribute

Change-Id: I93e8081be1e81adf16d40bff54f0cc22c7155dd7
2021-01-20 16:13:12 -08:00
Translation updater bot ebe37ca792 Localisation updates from https://translatewiki.net.
Change-Id: I44cd0cab7999fca03c84fbed9558efb418c7b6ae
2021-01-20 08:29:08 +01:00
Translation updater bot d7f764990f Localisation updates from https://translatewiki.net.
Change-Id: If68f43f743e6817ea4042b469f35a9a1fc6cdaf2
2021-01-18 08:44:48 +01:00
jenkins-bot db5f1ebc1d Merge "Use `pointer-events: none` on magnifying glass to prevent submit button behavior and tooltips" 2021-01-15 22:21:06 +00:00
Nicholas Ray 2d57153c08 Only override .mw-page-container horizontal padding on tablet+ viewport width
`.mw-page-container` currently has an intentional non-zero vertical
padding that was being overriden by tablet media query styles. Instead,
only override horizontal padding on tablet.

[1] d525e564db/resources/skins.vector.styles/layout-default.less (L169)

Bug: T271868
Bug: T270146
Change-Id: I736805c9febeb333ea682ba0c70b2ff4768ae397
2021-01-15 11:58:09 -07:00
jenkins-bot d525e564db Merge "Use padding margin-collapse hack instead of overflow" 2021-01-14 22:42:50 +00:00
Ed Sanders 9abf12bbfa Use padding margin-collapse hack instead of overflow
Using the overflow hack breaks scrolling logic in OOUI.

Bug: T271868
Bug: T270146
Change-Id: I4038164efe54a8fb847781a004af98ec74c92cdb
2021-01-14 14:18:38 -08:00
jenkins-bot b0c30102fb Merge "Remove min-height style from #searchButton, #mw-searchButton" 2021-01-14 22:16:18 +00:00
Volker E 26126d15e4 [styles] Ensuring correct rendering height of search button in Safari
Overriding weird UA styles to ensure maximum click interaction area on
search button in no-JS and JS environment.

Bug: T272089
Change-Id: I8600402e022c041da29b31bf828198843c2ad7c6
2021-01-14 13:22:01 -08:00
Translation updater bot 723d92d2a4 Localisation updates from https://translatewiki.net.
Change-Id: I4b2c83f91424c0cf77603816cae00af15a20293e
2021-01-14 08:53:50 +01:00
Nicholas Ray de88675570 Use `pointer-events: none` on magnifying glass to prevent submit button behavior and tooltips
Follow up from Ibab9992a6aa3a60f83324b40017b53fb061991d7 (please refer
to that commit message), but using `pointer-events: none` to remove all
submit button behavior (submit behavior, cursor change, and tooltip).

Bug: T270202
Change-Id: I2bd8e88f1f497cc3b2d88c7fdad33c812d13a40a
2021-01-13 16:25:03 -07:00
jenkins-bot 7273a5194c Merge "Change magnifying glass cursor from pointer to default (arrow)" 2021-01-13 22:50:02 +00:00
Nicholas Ray ef700c4a6a Set Vector search variables relative to @font-size-base factor and increase max-width
T270202 shows the correct dimensions of the search component having a
max-width of 500px and min-width of 350px but since we set the font size
of `#p-search` to `@font-size-base` [1], I suspect the search related
variables need to account for this factor as well.

This increases the max-width of search to 500px per the spec.

[1] 30eb683a70/resources/skins.vector.styles/VueEnhancedSearchBox.less (L23)

Bug: T270202
Change-Id: I13ad550734e8a5347ed70e4b3c33102b4a13bde7
2021-01-13 22:18:57 +00:00
Nicholas Ray ab4a41426d Change magnifying glass cursor from pointer to default (arrow)
Before WVUI loads, we show a magnifying glass at the start of the input
that visually mimics the magnifying glass start icon in WVUI's typeahead
search component. Unfortunately, this element is a submit button in
Vector instead of the inert span element used in WVUI.

Although the submit button is useful for no-js users, it might be
confusing for js users. Ideally, an inert element like a span would be
used instead, but that deserves its own ticket. As a temporary easy
stopgap, changing the cursor to be an arrow instead of the pointer might
make this less confusing and discourage clicks to it.

Bug: T270202
Change-Id: Ibab9992a6aa3a60f83324b40017b53fb061991d7
2021-01-13 15:15:32 -07:00
Isarra 538ccb24d8 Use {{link-mainpage}} in legacy sidebar same as new logo
Bug: T271873
Change-Id: I370d2ddfb233f882929f4d79ee4cfc690576ed85
2021-01-13 00:29:58 +00:00
jenkins-bot 4316db55d5 Merge "Vector should support lower 500px resolution" 2021-01-12 23:09:22 +00:00
jdlrobson 6f1c2cfd73 Vector should support lower 500px resolution
* Lower the min-width from Vector to 500px

At lower resolution per mock:
* Tabs converge into single grouping
* Search input is 150px
* Sidebar rushes content below

Drop rule for mw-content-container for special pages and history as it is already
accounted for in .mw-checkbox-hack-checkbox:checked ~ .mw-workspace-container .mw-content-container
rule.

Bug: T264218
Change-Id: I14ee75bd173fb2de1e33067f95ce09deba5bf27a
2021-01-12 14:18:45 -08:00
jenkins-bot f45d8ee0c9 Merge "Fix z-index of navigation menus" 2021-01-12 18:24:27 +00:00
Nicholas Ray dd0199a060 Remove min-height style from #searchButton, #mw-searchButton
These buttons are already absolutely positioned with their `top` and
`bottom` styles set. More importantly, the min-height style is causing
the buttons to not be vertically centered in Safari.

Bug: T270202
Change-Id: I21b88af4313249d8b2b775c32d12aa1f65c2d0c2
2021-01-12 11:01:19 -07:00
Translation updater bot cafb003a57 Localisation updates from https://translatewiki.net.
Change-Id: I8332490bea347c8f89a32de1324d6f76b60bb1f4
2021-01-12 08:40:33 +01:00
jenkins-bot 8dea938e3d Merge "Don't blindly overwrite contentnavigation" 2021-01-12 06:15:31 +00:00
jenkins-bot b1d7f8f6dc Merge "Sync Vector styling with latest changes in WVUI" 2021-01-12 00:31:45 +00:00
Nicholas Ray 37f6ff02df Sync Vector styling with latest changes in WVUI
* In Iecc3eebf0dce495400ba3d644dce39186f4fa395, a border was applied to
`.wvui-typeahead-search` to make it appear like the input box contains
the search submit button. Because of this change, we can't apply a
max-width to #searchForm when WVUI loads as it will cause the border to
extend farther than it should. Instead, we apply the max-width/other
styles to `.wvui-typeahead-search` (WVUI search's root container) and
`#p-search`'s direct child after WVUI loads.

* In I0ec3dcedaea90b01fe94e3416ee68ea33b782b4b, the start icon was moved
1 pixel to account for the input's border. These changes sync with the
changes to WVUI.

Depends-On: I0ec3dcedaea90b01fe94e3416ee68ea33b782b4b
Bug: T270202
Change-Id: I0ffd0a9225a5a9b935e09748d78ac45b17623790
2021-01-11 17:02:45 -07:00
mainframe98 12ef2258c3 Don't blindly overwrite contentnavigation
Caused a failure in Ia1451e3e802441162eecfc5b7f6a7ba2ae72f377.

Change-Id: Ib4112364c173952eb363e52756f03693a2e03512
2021-01-10 19:25:12 +01:00
libraryupgrader 5d279c94d2 build: Updating npm dependencies
* bundlesize: 0.18.0 → 0.18.1
  * https://npmjs.com/advisories/1594 (CVE-2020-28168)
* github-build: 1.2.1 → 1.2.2
  * https://npmjs.com/advisories/1594 (CVE-2020-28168)

Change-Id: I09e83b5e92eb6beeaabc75d44e5582c1389d58e4
2021-01-08 04:48:46 +00:00
Translation updater bot 8190097516 Localisation updates from https://translatewiki.net.
Change-Id: I88e27d44c80de490dbc64976932d75c705973ce5
2021-01-07 08:40:08 +01:00
jdlrobson d1fa2e6090 Fix template references
Seems less risky to fix this rather than revert, given a revert will
just mean more risk when we do it again, especially if the codebase
changes again and future manual rebases fail.

Bug: T271364
Change-Id: I7f63d6f07b6b715a9f31c83d572814da33ff2796
2021-01-06 13:56:01 -08:00
jenkins-bot f6e790b118 Merge "Simplify menu code" 2021-01-06 16:28:25 +00:00
Translation updater bot 9f5d348d8e Localisation updates from https://translatewiki.net.
Change-Id: Ibe2d253579f051aa10a511fb33e38fab9da1b5ff
2021-01-05 08:29:29 +01:00
jdlrobson 9f1a1fa829 Simplify menu code
SkinMustache in core provides most of what is required for Vector to
generate its menus.  In the interest of having a canonical source of
truth for menus across all skins, Vector should use this data.

To ensure the HTML generated is (mostly) the same after this patch to
prior, a few modifications are necessary:

* The data from core is decorated so that Vector can continue having its
  own custom class names on menus. This is done using the
  decoratePortletClass method.
* There is no support for a menu having a header representing the
  selected menu item, as is currently the case with variants. This is
  achieved via an extension to getPortletData. It's assumed that later
  when variants are merged with languages, this can be removed.
* Menus are agnostic to how they are displayed, so we must continue to
  add the is-dropdown template variable to drop down menus. In future we
  may want to rethink our Menu partial to make this unnecessary in PHP.
* The portal-first class is redundant in the modern Vector as we can
  use the first-child selector. Previously we introduced a class to
  service the legacy skin where this rule doesn't apply as #p-logo is
  the first child.  However, the legacy skin can do this using a special
  next sibling selector instead.

Bug: T268157
Change-Id: I5f7adc1840441b508ffee40139b85b64021789e6
2021-01-04 19:02:34 +00:00
Translation updater bot 64b7d4e868 Localisation updates from https://translatewiki.net.
Change-Id: Ieb60248ae8ca3f7f227b32dc4c60e02781969d6f
2020-12-30 10:17:39 +01:00
Translation updater bot cfec70852f Localisation updates from https://translatewiki.net.
Change-Id: I69b3a2fedcf8c920632e8f94c80c518b3c0ef58f
2020-12-29 09:51:41 +01:00
Translation updater bot 5dde318d5b Localisation updates from https://translatewiki.net.
Change-Id: Id99ca37364fb3c568553276cd7ac92a354f384ce
2020-12-28 10:44:14 +01:00
jenkins-bot 850b7a6ce6 Merge "Gadgets can change the search API" 2020-12-23 12:40:59 +00:00
jdlrobson 289f1d48f5 Gadgets can change the search API
```
mw.config.set('wgVectorSearchClient', {

   fetchByTitle: function( query, domain, limit ) {
      var xhr = fetch('http://' + domain + '/w/rest.php/v1/search/title?q=banana')
      .then(function (resp) {
          return resp.json();
      }).then(function (json) {
         return {
             results: json.pages
         }
      });
      return {
         fetch: xhr,
         abort: function() {}
      }
   }
})
```

This should be the absolute minimum to allow API clients to configure
the search. This should be considered an interim solution to buy us time to work out a more
elegant way to do this e.g. do this in the API itself…

Bug: T262566
Change-Id: Iac6f2551bed911980064dcb023193f800df0934f
2020-12-23 12:16:29 +00:00
jenkins-bot 9d16a71cea Merge "build: Updating mediawiki/mediawiki-phan-config to 0.10.6" 2020-12-23 07:41:52 +00:00
Translation updater bot 73e12842af Localisation updates from https://translatewiki.net.
Change-Id: I5b61a36624e4e9b9f6278734278e9060d41f1322
2020-12-23 08:34:18 +01:00
libraryupgrader 8d7df298b2 build: Updating mediawiki/mediawiki-phan-config to 0.10.6
Additional changes:
* Added the "composer phan" command to conveniently run phan.

Change-Id: I8d43396372a965018c8f98815e56977a943e9310
2020-12-23 07:15:01 +00:00
Translation updater bot 13e044ec68 Localisation updates from https://translatewiki.net.
Change-Id: I259beffe4e3fdf0b5647fcfb9e3eb294b02d11af
2020-12-22 08:36:31 +01:00
jenkins-bot 48edb06b66 Merge "Bump the bundlesize of skins.vector.styles and skins.vector.styles" 2020-12-21 13:29:12 +00:00
Translation updater bot ff4d0d4d6f Localisation updates from https://translatewiki.net.
Change-Id: Ice550fe961ee8d43e8b2c042f8ba85f4b54d11d7
2020-12-21 08:43:59 +01:00
jenkins-bot c07310165a Merge "Use User->isRegistered(), not deprecated isLoggedIn()" 2020-12-19 17:06:44 +00:00
James D. Forrester 5ef1ddb733 Use User->isRegistered(), not deprecated isLoggedIn()
Bug: T270450
Change-Id: If385757d64664eba148914063fbbe88f72b66fdc
2020-12-19 16:44:06 +00:00
jenkins-bot a0dd9de829 Merge "Add missing @return to Requirement" 2020-12-18 23:01:33 +00:00
Umherirrender c643250755 Add missing @return to Requirement
even with type hint there should be the full phpdoc to be consistent

Change-Id: I74f2fec23d655deee5704b0ab432cba5c7921ab6
2020-12-18 22:55:08 +01:00
Ammar Abdulhamid 3253665b0e Bump the bundlesize of skins.vector.styles and skins.vector.styles
Needed for core change I276325dc55fd475655e0212fc256b95ebb41b276

Bug: T268593
Depends-On: If2348d30c2382cd9642e2741b10884752493e0c8
Change-Id: Ib80fc24c84eb333daa016c9816fdf91cc60d3983
2020-12-18 19:00:17 +00:00
jenkins-bot 30eb683a70 Merge "Sync location/other styles of #mw-searchButton with #searchButton" 2020-12-18 18:41:40 +00:00
Nicholas Ray 0fdd4a99ac Sync location/other styles of #mw-searchButton with #searchButton
`#mw-searchButton` is apparently used with no-js clients or if the
js-search is broken [1]. Its position and dimensions should be kept in
sync with #searchButton.

This commit:

* Ensures that the same styles, including position, applied to #searchButton
are applied to "#mw-searchButton" so the dimensions are identical. This
should also address a critique in T270202 by removing the "invisible
button".

* Applies a `client-js` selector to ensure these buttons are
only positioned to the left of the search input if js is enabled. If js
is not enabled, having these positioned to the left is confusing as the
input has no obvious "submit" button.

* Syncs the input's end padding to match WVUI's input's end padding if
JS is enabled.

[1] 465e9492bb/includes/templates/SearchBox.mustache (L12-L21)

Bug: T270202
Change-Id: Ie1bb8c68b713b3a18f90ee11b44c78b436a6d0ba
2020-12-18 11:14:19 -07:00
Bartosz Dziewoński bd2c739b68 Fix z-index of navigation menus
After the DOM order of content and navigation was swapped,
z-index of menus must be higher than the VisualEditor toolbar,
rather than the same, to continue overlapping it.

Bug: T264379
Change-Id: I4f5ce0b7ce85fd53727b38b1d7c31079945893f0
2020-12-18 18:51:44 +01:00
Translation updater bot 209c245717 Localisation updates from https://translatewiki.net.
Change-Id: I2614895f5be70474cbd992da465b19ee4b213deb
2020-12-18 08:26:23 +01:00
Nicholas Ray 465e9492bb Remove suggestion link underline on hover and li bottom margin
Per T270202, there should be no underline on hover. The underline is
coming from a style in core.

There should also be no bottom margin on the suggestion li elements. The
bottom margin is also coming from a style in core.

Bug: T270202
Change-Id: I215a41aa328366aee2bb552d5d49c95905fd37f2
2020-12-17 10:06:29 -07:00
jenkins-bot d6979b1917 Merge "[modern][styles] Use @size-search-figure variable in padding-left calc" 2020-12-15 10:11:50 +00:00
Translation updater bot 853852a995 Localisation updates from https://translatewiki.net.
Change-Id: I4a8864273f357df2022ddc3a3d62fb505b9fd28f
2020-12-15 08:39:14 +01:00
Nicholas Ray 720bd0e6b7 [modern][styles] Use @size-search-figure variable in padding-left calc
This variable is used in the same way in WVUI.

Change-Id: Ib7a6d7bb456b3179c3b2eae4b1b0da064fe1f79c
2020-12-14 17:04:33 -07:00
Volker E 595870baeb [modern][styles] Amend Typeahead component styles in modern
Following Design Style Guide components sizing and Alex' feedback
on task. Changing applied styles scope to non Vue.js enhanced,
modern-only style of search component as well, in order to have
clean appearance and transforming disruption free.
Also changing em static values to LESS calculations for more developer
friendliness and change background-size to be `em` as well for
user-set typographic zoom preference ability.

Bug: T269959
Change-Id: I157712721621344171a32a8887a5e20cc16cae0d
2020-12-14 11:37:14 -08:00
Volker E 816836c2ae [modern][styles] Shift search bar to the left
`@margin-horizontal-search` is used for margin of search component
and for personal tools, but they are also floated right so one only
gets a clearer picture of this change when the canvas is exactly at
one specific size.
Additionally it's used for a media query, so the min-width is slightly
reduced (by 32px equivalent) as well. That's advantageous too.
At some point we're going to change this to `rem` unit, that's why I've
taken distance from changing it to a `px` value for now although devised
differently before.

Bug: T269959
Change-Id: I21cac3f049eed64520dd229ef80d10f9be853e0e
2020-12-14 08:12:01 -08:00
Translation updater bot 2c0c6336fa Localisation updates from https://translatewiki.net.
Change-Id: I540339e7af69de9acf05e2e4e79e9a56c6a7d01f
2020-12-14 08:54:41 +01:00
libraryupgrader e27837d832 build: Updating ini to 1.3.8
* https://npmjs.com/advisories/1589

Change-Id: I91c83a7070f219833cbaa3e33939778880dd7bf7
2020-12-12 08:35:05 +00:00
Umherirrender 61c50007e3 build: Updating mediawiki/mediawiki-codesniffer to 34.0.0
Change-Id: I79d8249096760043242f3ff18421b03f17afb1e9
2020-12-12 01:16:02 +01:00
Translation updater bot c5a6164cef Localisation updates from https://translatewiki.net.
Change-Id: I79d2b7ba3284c778b57c7a00fe1b753a51caf784
2020-12-11 08:39:13 +01:00
Jan Drewniak 8afa6f4440 Improve visual similarities between Vector and WVUI search forms.
Modifies and annotates the CSS required to make the server-rendered
version of the new search form look like the WVUI version of the
search form.

Bug: T264355
Change-Id: I989860cfbb755ecbb706b79bd807e9d0013bc4e5
2020-12-09 16:04:45 +01:00
Translation updater bot 3a782ce41b Localisation updates from https://translatewiki.net.
Change-Id: Ie798402f51360cc2bd4b8e1ca58fe833bfb1194e
2020-12-09 08:44:17 +01:00
jenkins-bot a9b47f57fb Merge "Development: Allow us to test search with different API hosts" 2020-12-09 00:14:43 +00:00
jenkins-bot 454611f60a Merge "[search] Add Vue search performance instrumentation" 2020-12-09 00:06:32 +00:00
jenkins-bot 707862df60 Merge "[search] Instrument Vue.js-based search widget" 2020-12-09 00:06:30 +00:00
Nicholas Ray 3aaedcfe3c [search] Add Vue search performance instrumentation
This is almost identical to the instrumentation currently used in
production for mediawiki.searchSuggest -- the only differences being in
the nomenclature of variables, etc.

As part of comparing Vue search with legacy search, we need to track how
long it takes a keypress to load and render search results for Vue
search. This will only be used only in synthetic testing at this time
(Real user monitoring (RUM) is not in scope for this ticket).

To test locally, first enter characters in input. Then to see the
metrics recorded:

```
// View all marks
performance.getEntriesByType('mark');

// View all measures
performance.getEntriesByType('measure');
```

This commit adds the following metrics which will only be used in our
synthetic tests. We are not collecting RUM metrics at this time.

Measures:

* mwVectorVueSearchLoadStartToFirstRender: Measures the time it takes
from the start of loading the search module to the first render of results.

* mwVectorVueSearchQueryToRender: Measures the time it takes from
the start of the fetch to the render of search results.

Bug: T251544
Change-Id: I39200648a3a0a4079a132134d142ad8997c8962a
2020-12-08 23:41:28 +00:00
Sam Smith aa10668e6d [search] Instrument Vue.js-based search widget
Add event listeners and associated helpers to emit SearchSatisfaction
events via the `mediawiki.searchSuggest` protocol.

Bug: T257698
Change-Id: Ica040cd18d6c4bf8a1b1f607bb4647c7e8eb7108
2020-12-08 23:41:19 +00:00
jdlrobson dce24c9784 Development: Allow us to test search with different API hosts
By default the API uses location.host as the host, however during
development it is useful to test against production wikis

For example to test against English Wikipedia:
$wgVectorSearchHost = 'en.wikipedia.org';

Note: Links when clicked will not take the user to the target page, and
instead will take the user to the search results page with a link to
create the page.

The following config can be used to workaround that page:
$wgDisableTextSearch = true;
$wgSearchForwardUrl = "/w/index.php?title=$1";

Change-Id: I5fbac7f54844d7a9d6976007bc0d0ff9938b9f2b
2020-12-08 15:22:45 -08:00
jenkins-bot f44fefb53b Merge "Cleanup: Drop unused body feature classes" 2020-12-08 22:25:20 +00:00
jenkins-bot b8e8655af3 Merge "Add Wvui Config to show/hide thumbnails and descriptions" 2020-12-08 22:25:18 +00:00
jenkins-bot 3c6c8ebbba Merge "Integrate WVUI search into Vector" 2020-12-08 22:18:38 +00:00
jdlrobson a52da8ddaa Cleanup: Drop unused body feature classes
These are no longer referenced in the code and artifacts of a time
when these were feature flagged.

Change-Id: Ia850ac9fb92033d82a333836ba7ff32312f042a7
2020-12-08 13:29:06 -08:00
Nicholas Ray e0c47dc462 Add Wvui Config to show/hide thumbnails and descriptions
Uses ResourceLoader's virtual config feature to get the config and pass
it down to Wvui's typeahead search component.

Disclaimer: I'm a typescript noob and am not sure if the
config.json.d.ts is correct although it seems to make tsc happy.

Bug: T260167
Change-Id: I2eced14c7df3b795b4de0e5149c2ca9fd598c7be
2020-12-08 13:28:42 -08:00
Jan Drewniak bd83398659 Integrate WVUI search into Vector
Creates a new skins.vector.search module that
replaces the searchSuggest module from MediaWiki core.

This module creates a new Vue app using the WVUI
search widget for the new search experience.

The legacy search input form is still retains on pageload,
and the new search kicks on search input focus.

In order to manage that transition, the legacy search
input is styled to resemble the new WVUI input, and the
new input is manually focused after the component mounts.

Vue is also added as a dev-dependency to help with
type-checking.

Other changes:
* the entry in skin.json is reordered alphabetically after
skins.vector.js

Bug: T264355
Change-Id: Ibb9561a77a14734297cb4d0ddcd415fc0750b45d
2020-12-08 13:27:12 -08:00
jenkins-bot 87fdf5d7c7 Merge "Amend standard 'search' icon size, position and CSS rules" 2020-12-07 12:47:14 +00:00
Volker E 795de73496 Amend standard 'search' icon size, position and CSS rules
Updating 'search' icon to latest WVUI/OOUI optimized, reduced path. Also
- amending size of search input and position of icon in input slightly to
  align it closer to standard text inputs
- simplify CSS by getting rid of selector which is targeting both, input and
  button and applying rules only where needed
- fixing code comments
- increasing icon size to `16px` equivalent `em` to enable user text zooming
  preference applied to search icon as well. `16px` is a compromise towards the
  old look and feel of the previous icon bringing it closer to standard icon size in
  legacy Vector.

This change affects both modern and legacy versions of Vector.

Bug: T266166
Change-Id: Ib4c0c74d3cac30e1893f4c76e56e1197652d41ba
2020-12-07 12:19:01 +00:00
Translation updater bot cff34a672a Localisation updates from https://translatewiki.net.
Change-Id: I1f6e3d4c9f80faa7f09e1fdc08a172737e8ecb74
2020-12-07 08:57:20 +01:00
Translation updater bot 2ff4d4d6ae Localisation updates from https://translatewiki.net.
Change-Id: I664835d6ac97c08d0bf06bb0a0e339425dc49efc
2020-12-04 08:36:03 +01:00
Translation updater bot 5bf22a7740 Localisation updates from https://translatewiki.net.
Change-Id: Iebb97cb0f2b3fe374c9366ec6c91366546e42bd4
2020-12-02 08:34:47 +01:00
Translation updater bot a6a3c5961f Localisation updates from https://translatewiki.net.
Change-Id: I21ae32c8e160374e8d77e91d4802d2ab8bdced96
2020-11-30 08:50:53 +01:00
Translation updater bot 2e77a06c10 Localisation updates from https://translatewiki.net.
Change-Id: Idc5de274ca9ee6af6d90dafca51128082eb7e468
2020-11-27 08:32:32 +01:00
Jan Drewniak 125fa03395 Update Vector search icon
Replaces vector search icon with an update version that is
copied from the OOUI icon set and used in WVUI search.

This update will help us unify the visual appearance of the
existing search input with the one in WVUI.

Bug: T264355
Change-Id: I34792ee80e711b10b441668cc4ae18cc0cc9daa6
2020-11-26 13:19:11 +01:00
libraryupgrader 659e8989ac build: Updating stylelint-config-wikimedia to 0.10.3
Additional changes:
* Removed globals `require`, `module`, included via `wikimedia/mediawiki` profile (T262222).
* Dropped the emtpy global definition in .eslintrc.json.

Change-Id: I18ea7925d42ae65c6afd49982186d9375ab9e6e3
2020-11-23 03:44:23 +00:00
Umherirrender f0e6b9dc89 build: Updating mediawiki/mediawiki-phan-config to 0.10.4
Change-Id: I6f0e5fe41eb71abf42273a3d9cc1390376605f7c
2020-11-22 20:32:34 +01:00
Translation updater bot ef7fa0010e Localisation updates from https://translatewiki.net.
Change-Id: I5608e335d2a5259c6e31cc598c3a11d414828b96
2020-11-20 09:19:15 +01:00
Translation updater bot 39508c0d59 Localisation updates from https://translatewiki.net.
Change-Id: I1c647dde769fcaeeecb0c2737b21e0e1ad5f53dd
2020-11-19 09:11:54 +01:00
Nicholas Ray 0492bc5fb8 Apply static positioning to mw-footer-container
There are popovers such as the discussion tools "Add a link" popover
that need to stack on top of the footer. This replaces the
mw-footer-container's `relative` positioning with `static` positioning
which is one possible solution to this problem.

Alternatively, the popover could be appended to the end of the body
after the footer and positioned absolutely.

Bug: T264679
Change-Id: I34168c181a1e05c33cd42f664fcccb25abd4519b
2020-11-18 18:10:20 +00:00
Translation updater bot 7d41a66016 Localisation updates from https://translatewiki.net.
Change-Id: I9d196b692462e2c2e4ba00f3572e5718aa28c6eb
2020-11-18 08:58:45 +01:00
jenkins-bot 601b0fbd81 Merge "build: Updating mediawiki/mediawiki-codesniffer to 33.0.0" 2020-11-17 23:03:58 +00:00
Umherirrender 6d992c65b0 build: Updating mediawiki/mediawiki-codesniffer to 33.0.0
Change-Id: I4ef344e62ce996b9d03d08b47c0f869ead417f7b
2020-11-17 23:33:50 +01:00
jenkins-bot b1bbcd298f Merge "Use the SkinMustache template variable for the main page link" 2020-11-17 19:14:01 +00:00
jenkins-bot 9ccd8e2c23 Merge "[modern][styles] Remove unnecessary `margin-top`" 2020-11-17 14:03:40 +00:00
jenkins-bot 5dd89219c6 Merge "Follow-up I43a6951: Remove unnecessary only-child selector" 2020-11-17 13:34:54 +00:00
Translation updater bot d6aec7ead8 Localisation updates from https://translatewiki.net.
Change-Id: Ibc5576cdd8dd4ac61370ebe85c893827c5f0d01a
2020-11-17 08:44:56 +01:00
Ed Sanders 1dccf67d0f Follow-up I43a6951: Remove unnecessary only-child selector
An only-child will match first- and last-child selectors
so this additional selector is not required.

Change-Id: I17d468ba2bda37edc4e54f42f42d50e4b8831b46
2020-11-16 22:39:17 +00:00
jdlrobson ffa19b2ae3 Use the SkinMustache template variable for the main page link
Bug: T248752
Depends-On:  I98fc4755e6a736efc2210f8b6ddf4a1cc4eea378
Change-Id: I077abba357e503c79901b64be2ccbb3f2efe1c18
2020-11-16 13:18:18 -08:00
jdlrobson bc9383c90a Bump the bundlesize of skins.vector.styles
Needed in preparation for landing the core change in
Ie28b7e732664eb332be795d7e33cd9a227c21370

Bug: T252774
Change-Id: Ia9ba9458c1bdb5b70cf03bad7d6e05e872755f1e
2020-11-16 12:34:40 -08:00
Translation updater bot 4cc3db64a3 Localisation updates from https://translatewiki.net.
Change-Id: I73fcd7f352a1da44af75f572c7060fb105bf44bb
2020-11-16 08:40:36 +01:00
Translation updater bot 4079b5c16a Localisation updates from https://translatewiki.net.
Change-Id: I1df7a545ce1d3557739f59cd688bc84a90583d78
2020-11-13 08:32:29 +01:00
Translation updater bot bff40163c8 Localisation updates from https://translatewiki.net.
Change-Id: I5be942dab5ffb364001666f9cf15297082adb617
2020-11-11 08:39:03 +01:00
Volker E b0e54eec45 [modern][styles] Remove unnecessary `margin-top`
Following-up Iecb0d6c4c80cee1d1684597a6dedf7323e2ec54d.
It isn't set anywhere inherited, hence we don't need to set it here.

Change-Id: Ife24aa95e6d1830b8d50001976277dbb2535c47f
2020-11-09 07:49:56 -08:00
Translation updater bot 6014b746a4 Localisation updates from https://translatewiki.net.
Change-Id: I39b966226a371777eb87052ce6b5e9b6ff5a4c9c
2020-11-09 08:38:23 +01:00
jdlrobson f99946236a Cleanup: Merge layout-max-width.less into default layout rules
* Drop some unused variables
* Drop global variables.less per max width FIXME

Bug: T258116
Change-Id: Iecb0d6c4c80cee1d1684597a6dedf7323e2ec54d
2020-11-06 20:21:56 +00:00
jenkins-bot 28aa6b84b3 Merge "Cleanup: Merge layout-search-header.less into default layout rules" 2020-11-06 18:29:21 +00:00
Translation updater bot 3b642b21aa Localisation updates from https://translatewiki.net.
Change-Id: Ic26e526d98befc69fb08169dba7296d3bf3991de
2020-11-06 08:36:36 +01:00
jenkins-bot 3ead4e0aa0 Merge "Separate opt out data from sidebar" 2020-11-05 23:32:50 +00:00
jdlrobson 227534102a Separate opt out data from sidebar
In preparation for using the data provided by SkinMustache class
we need to separate the opt out data from the rest of the sidebar.
The opt out data is specific to Vector.

Change-Id: I4461da92c1787d272bbf99e6644bdb9e6c388a68
2020-11-05 22:08:00 +00:00
Translation updater bot 15d1c31932 Localisation updates from https://translatewiki.net.
Change-Id: I2732264fa08b32e8306c44fed9ee37d7a86d47fd
2020-11-05 08:30:02 +01:00
jdlrobson 717506b9c0 Cleanup: Merge layout-search-header.less into default layout rules
Dropped all usages of the no longer applicable `skin-vector-search-header-legacy`
class.

Bug: T258116
Change-Id: I16a5cf8dda2ab84ff4b505d5a368587190c409cd
2020-11-04 14:30:13 -08:00
jenkins-bot 924c751421 Merge "Unify blockquote spacing and border style with Design Style Guide" 2020-11-02 23:27:26 +00:00
Translation updater bot 2fc65fbb3b Localisation updates from https://translatewiki.net.
Change-Id: Idd369798a6c37f937c65bb45100bb7e64584c231
2020-11-02 08:56:40 +01:00
Volker E 0884f55767 Unify blockquote spacing and border style with Design Style Guide
Unifying blockquote spacing and border style with Design Style Guide.
Also ensuring that blockquote children don't apply inherited whitespace.

Bug: T265947
Change-Id: I43a6951c17376fe3fdd4d24966ec4661c18ffd87
2020-10-30 13:38:01 -07:00
Translation updater bot 104bfaf771 Localisation updates from https://translatewiki.net.
Change-Id: Ie8bb7e73224ad8fc8be49c61b03a9b27427b5685
2020-10-30 08:29:47 +01:00
Jan Drewniak 4ff30a16a0 Convert personal menu to use flexbox alignment.
Uses flexbox alignment to resolve an issue where the
clickable area of the notification and alert icons were
overlapping with the links next to them.

Bug: T264339
Change-Id: I2afc12504d7184583fa8331479125474c68017dc
2020-10-29 15:53:56 +01:00
jdlrobson 0bba957a37 Reduce min-width so it doesn't include personal tools
Now the header is no longer absolutely positioned the height is not
fixed and the personal tools can safely spill onto a new line

Bug: T264206
Change-Id: Ib2a3cf1907c7d06c2c92ccbd902a98a3f8242f37
2020-10-28 20:05:55 +00:00
jdlrobson eda19bd6e4 Remove SearchInHeader requirement/feature
Styles will be cleaned up further in a follow up.

Bug: T258116
Change-Id: I878239a85ffbecb5e78d73aed5568c56dbd7d659
2020-10-28 20:05:28 +00:00
Translation updater bot c0bfa47157 Localisation updates from https://translatewiki.net.
Change-Id: I46b53dbb58ed6003d5c660b97c74d0542cda793e
2020-10-27 08:25:14 +01:00
Translation updater bot 5516504e9c Localisation updates from https://translatewiki.net.
Change-Id: Ifb5af2500c3819c173f9cf2784ff402a7c74bbc8
2020-10-26 08:35:32 +01:00
jdlrobson 61558af56f Fix logic in collapsibleTabs code
Follow up to  6d967ed4a8c
Add the missing ! to check that the portal is hidden rather
than visible to restore the correct logic.

Bug: T71729
Change-Id: I29f6f5e1e6adf3d6d9795cbdabcc152c5d5ac28f
2020-10-23 09:59:29 -07:00
Translation updater bot 56d776ca4b Localisation updates from https://translatewiki.net.
Change-Id: I3a157873de4a7b09d81630abfaa01c0e5fc52fb2
2020-10-21 08:30:14 +02:00
Translation updater bot 0b0b0afa5d Localisation updates from https://translatewiki.net.
Change-Id: I97ee603815f6b40d5f2407c6bb0783c775369bea
2020-10-20 08:34:16 +02:00
Nikki Nikkhoui 193cd1c2d7 Add nvm to README
Recommend using nvm in the README
so development environments are consistent.

Bug: T265682
Change-Id: I9dc4d67a6221fca9db883c216850a545e3c4b444
2020-10-19 18:07:12 +00:00
jenkins-bot 48b4fe5440 Merge "Set strictUnits to true for LESS, and fix units in the code" 2020-10-19 17:40:24 +00:00
jenkins-bot 1922166c89 Merge "Windows compat in package.json scripts" 2020-10-19 17:40:23 +00:00
Bartosz Dziewoński 380d6d6789 Set strictUnits to true for LESS, and fix units in the code
Bug: T265650
Change-Id: I8f7522f84df31fdfc856901566c7d1fc78e12c66
2020-10-16 23:42:57 +00:00
Bartosz Dziewoński 99568762e8 Windows compat in package.json scripts
Run dev-scripts/setup-storybook.sh using the `bash` executable,
not default shell.

('pre-commit' still doesn't work because of the funky env variable,
but I don't care)

Change-Id: Ibb0bfa0b6687248377ac72629c5642773d5d357f
2020-10-17 01:41:02 +02:00
jenkins-bot 99f9597109 Merge "Add client-side performance metrics for searchLoader" 2020-10-15 08:47:18 +00:00
Translation updater bot 4c1d528471 Localisation updates from https://translatewiki.net.
Change-Id: Ib88b6a9b62ec1bf180e28248c04b22071d55cc33
2020-10-15 08:40:19 +02:00
jdlrobson 839876ba82 Use variables for padding content
On the long term we want to provide access to these variables in other
extensions. e.g. VisualEditor

Bug: T259331
Change-Id: Ibbc6f1905ea384a3d159088e3f5eca947eb6ec08
2020-10-13 21:26:08 +00:00
jdlrobson da26e09bca Vertically align personal tools
Bug: T264339
Change-Id: Ic9df8c1cea0fef82461a84190689791ce2275812
2020-10-13 19:39:12 +00:00
Translation updater bot aa7d05e7f2 Localisation updates from https://translatewiki.net.
Change-Id: I50db34c717a332f96469dd29634fd93d15ad9d93
2020-10-13 08:46:36 +02:00
Translation updater bot 5413a318b6 Localisation updates from https://translatewiki.net.
Change-Id: Ia5705f482e7ed5dfb7317a68a09bbb486998ff19
2020-10-12 08:38:54 +02:00
Nicholas Ray 8cf278d305 Add client-side performance metrics for searchLoader
As part of comparing Vue search with legacy search, we need to track how
long it takes to lazy load the wvui library. A similar metric was added
to measuring the mediawiki.searchSuggest module in
I0fa6b8904bd43c87a68e9161f00d686a0e588966.

This commit adds the following metrics which will only be used in our
synthetic tests. We are not doing RUM tests at this time.

To test locally, add the following to your LocalSettings.php and append
the query param `useskinversion=2` e.g.
(http://localhost:8181/wiki/Test?useskinversion=2):

```
$wgVectorUseCoreSearch = false;
```

Marks:

* mwVectorVueSearchLoadStart: Marks the start of loading the search
module.

* mwVectorVueSearchLoadEnd: Marks the end of loading the search
module.

Measures:

* mwVectorVueSearchLoadStartToLoadEnd: Measures the time it takes to
load the search module.

Bug: T251544
Change-Id: I14e44b45a66213821d69cd22395fedbae747da88
2020-10-09 13:26:28 -06:00
jdlrobson 14e8b4d5b7 Use SkinMustache value for user messages
This is now provided in the core SkinMustache interface and
is not needed here.

Change-Id: Iaee8fad2b1fd5e72beee544b0c2e8f62ff371073
2020-10-09 11:38:38 -07:00
jenkins-bot be6734937f Merge "Remove `#jump-to-nav` div" 2020-10-09 18:17:31 +00:00
Nicholas Ray 9031db0b20 Remove `#jump-to-nav` div
The "Jump to navigation" link was removed as part of
Ic553fab3bde25769b103d899b92b3b694c00c384 which makes this div seemingly
obsolete (Volker pointed this out). It has a faily ominous comment above
it so might need more investigation if it will break anything.

Change-Id: Ida97cb640885dc2ea4dfda5b475672eb1ad973f2
2020-10-09 10:37:33 -06:00
jenkins-bot aea69ce200 Merge "Fix storybook instance display of footer and personal menu" 2020-10-09 09:15:17 +00:00
Translation updater bot 2b45ce941e Localisation updates from https://translatewiki.net.
Change-Id: I20621414616ba9b84592c0617da039043cf590c0
2020-10-09 08:27:13 +02:00
jdlrobson edb8872c95 Fix storybook instance display of footer and personal menu
* The classes provided on the personal menu are incorrect. Rectify these
by creating a menu helper
* Register the footer template partials

Change-Id: I4b73be54c073f0dd350c107b18f10456c9ee1b17
2020-10-08 16:08:43 -07:00
Translation updater bot 55ad570315 Localisation updates from https://translatewiki.net.
Change-Id: I1032b623a9c3137cf084f852536db8199f122b02
2020-10-07 08:39:09 +02:00
jenkins-bot 178a552ad1 Merge "[icons] Re-optimize SVGs with SVGO and manually" 2020-10-06 23:23:15 +00:00
Volker E a6288523d3 [styles]: Remove IE 8 workaround
Change-Id: I8ec8899aba282d4b232cc86f8683e53ea9c30f06
2020-10-06 16:48:09 +00:00
jenkins-bot d8750377f3 Merge "Drop unsupported skin CSS classes" 2020-10-05 19:32:55 +00:00
jenkins-bot 150acb06f6 Merge "Source footer data from SkinMustache" 2020-10-05 19:32:54 +00:00
jenkins-bot 6516a93085 Merge "[docs] Add support note to `linear-gradient` fallback" 2020-10-05 19:03:34 +00:00
Volker E b23a809c44 [docs] Add support note to `linear-gradient` fallback
Change-Id: I9db03e4f2a0fe3eb52aeb9273f871150d2c93375
2020-10-05 18:41:26 +00:00
jenkins-bot f7e1940855 Merge "Adjust the left-alignment of the sidebar" 2020-10-05 18:39:00 +00:00
Jan Drewniak 5718afbc37 Adjust the left-alignment of the sidebar
Bug: T257395
Change-Id: Iae03d45b2d21be7e4635646c57480c0ced770419
2020-10-05 18:19:10 +00:00
Volker E 7bbad93bc4 [icons] Re-optimize SVGs with SVGO and manually
- Reducing precision to 1 decimal point (no visible change),
- adding `title` tags where useful,
- reducing paths,
- removing unnecessary `g` elements and
- lowercasing hex colors

Change-Id: I77ee08fbdb54d529f34576b076def985407b3bc2
2020-10-05 10:27:33 -07:00
Translation updater bot eaa51f97eb Localisation updates from https://translatewiki.net.
Change-Id: I052098af3bc4af15b2c6f9cfe96f0423bc7a5acb
2020-10-05 08:47:51 +02:00
Translation updater bot 11373f8ca2 Localisation updates from https://translatewiki.net.
Change-Id: Iedc98369cbd5fbd3875e48e059a945815beb77fd
2020-10-02 08:28:03 +02:00
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
jdlrobson 4fad68ed0b Source footer data from SkinMustache
SkinMustache now provides this data in a slightly modified form.
Use it.

Change-Id: I060a8acfab6e7e2eea14e84fd4a5cad23677390b
2020-09-30 23:08:38 +00:00
jenkins-bot b775d371fe Merge "Make VectorIsSearchInHeader the default" 2020-09-30 22:47:50 +00:00
Translation updater bot ec27126c93 Localisation updates from https://translatewiki.net.
Change-Id: Ib0912b84cf60945b20624a4e7f43e5c03de162bf
2020-09-30 08:46:15 +02:00
jdlrobson c0ccbcb6f8 Prefer local data to parent data (attempt 2)
There was some confusion during the code review of
4dbe4076d6

In the case of array_merge, anything defined as the second parameter
with the same key as the first will override the data in the first. This
means the current situation is that parent data replaces any local data.

However, we want the local data to be preferred.
Specifically, the call to  $this->getFooterData() must override
the data set parent::getTemplateData. This is not happening with the current
ordering.

Without this change, Ib2af1f72c0508870b20321dffc8af2158d0dbd55
will result in the footer not rendering.

Bug: T262730
Change-Id: Iaf701c054314f210e40a82b5277e9914edccc493
2020-09-29 22:20:09 +00:00
jdlrobson 1982411128 Make VectorIsSearchInHeader the default
The configuration is not dropped as the A/B test has not been completed
yet.

Depends-On: I24e672e86af6fdbedf615d8159dd6ca5f578066a
Change-Id: I6228d34560d036a0dbbe9b506388f85dbb9b6949
2020-09-29 22:15:14 +00:00
jdlrobson 711a41812a Use newly available Skin::getPortletData method to get mw-portlet class
Kept as simple as possible for now. The new class is added but no classes
are removed. This will be done in a follow up.

Bug: T256897
Bug: T253938
Change-Id: Ib31a9d8f2ac14e63b63e82abd4a9aa1fcb956f45
2020-09-29 00:09:26 +00:00
jdlrobson 4dbe4076d6 Prefer local data to parent data
The + operator will drop any existing keys. The data from
Vector should have precedence as the data coming from core may be
in a different format.

Noticed while upstreaming data for footer.

Change-Id: Icc772733577e0b165acdbc8a9b6143bd5410c33a
2020-09-29 00:09:15 +00:00
jenkins-bot c9645fe691 Merge "Prevent Vector tabs from overlapping search loader" 2020-09-28 13:31:09 +00:00
Jan Drewniak 422955e160 Prevent Vector tabs from overlapping search loader
Bug: T254695
Change-Id: I8391407b8efa5b8165f8b2c33de8849de642ecb5
2020-09-28 12:15:13 +02:00
Translation updater bot 1d5ea3259a Localisation updates from https://translatewiki.net.
Change-Id: I2f4d22f294dd6146a79ecd4a3f497df558a71f5a
2020-09-28 08:33:45 +02:00
jenkins-bot 26e914dd22 Merge "[Storybook] Fix PNG/SVG asset resolution." 2020-09-25 18:35:56 +00:00
jenkins-bot 0b63179fb5 Merge "SearchBox: Fix data-search-loc attribute" 2020-09-25 16:26:12 +00:00
Sam Smith 58c1c9ddf5 SearchBox: Fix data-search-loc attribute
Following on from I0edbd89, set the data-search-loc attribute to
"header-navigation" for legacy Vector.

Bug: T256100
Change-Id: I113c56ac9b18df46ebc13b9985aea03ba82419bd
2020-09-25 14:42:08 +01:00
Jan Drewniak 6907c81a15 [Storybook] Fix PNG/SVG asset resolution.
Fixes the missing images in the Logo story.

The current method of downloading the images into
docs/ui/assets and treating them as static assets
(with the start-storybook -s option) could be problematic
if that directory is deleted or "cleaned" before the
storybook build.

Instead, the images are now downloaded into
./storybook/resolve-imports and imported explicitly in the
code in Logo.stories.data.js.

* ./storybook/resolve-less-imports renamed to resolve-imports
* .gitignore is updated to reflect that
* Webpack config is updated with the `resolve-imports` path
* static option (-s) is removed from npm start script
* Images are explicitly imported in Logo.stories.data.js
* Type definitions are added for .svg and .png files

Change-Id: I242d229242c86a5784d6d4611d0b9c7049712dac
2020-09-25 12:52:05 +02:00
Translation updater bot 4d80e9e477 Localisation updates from https://translatewiki.net.
Change-Id: I8546964fd1a3f679b83fea2db9b61aca0f5aa949
2020-09-25 08:23:23 +02:00
Translation updater bot e7c07665ff Localisation updates from https://translatewiki.net.
Change-Id: Ib7f1d8671577402a1743e7076b11972b3de1a5e6
2020-09-24 08:32:00 +02:00
Ammar Abdulhamid ef45378c01 Remove ULS extension hack and anon placeholder code
The anon placeholder is now provided by core. The styles will remain to
style it to suit Vector needs.

This ULS hack is no longer needed as the extension is already using array
plus operator which does set union, so it only appends the right-hand array
to the left-hand array. Some string concatenation that prevented it from
working correctly has now been resolved by Ice379cd in core.

Bug: T263382
Change-Id: I5691529ab8c59f4053cff38ea6f7dd01c326c074
2020-09-23 21:23:04 +01:00
jenkins-bot 57e069ba81 Merge "[styles] Make Trident workaround value a variable" 2020-09-22 15:06:25 +00:00
Translation updater bot 76bc064ed4 Localisation updates from https://translatewiki.net.
Change-Id: I4d92792ab187523ce84edd1bc110795cd8c375cb
2020-09-22 08:37:00 +02:00
jenkins-bot b0bdcedb7e Merge "Follow-up I673c28c2: Only apply clearfix to main content area" 2020-09-21 22:04:54 +00:00
jenkins-bot 3990781dd2 Merge "Allow for expansion of styles with addition of table of contents code" 2020-09-21 21:29:59 +00:00
jdlrobson 155a3bb242 Allow for expansion of styles with addition of table of contents code
Bug: T252774
Change-Id: I98b7e49b8a3bcba31284385d2f45e0164df2fbb4
2020-09-21 21:06:02 +00:00
jenkins-bot 05b6753937 Merge "Clarify documentation of SkinVector::__construct()" 2020-09-21 21:04:00 +00:00
Ammar Abdulhamid cf895f19e2 Clarify documentation of SkinVector::__construct()
With I5772eb7 merged in core, it's no longer accurate to say that the
$options param is optional.

It's important to note this now, before someone report it as a bug.

Since the method is a public API and technically does not require a
parameter, no one will expect that following the rules (providing no
argument, as in `$skin = new SkinVector`) will throw fatal exception.

Bug: T262233
Change-Id: I771e5cc8ff205943016a26854da18088817b9238
2020-09-21 16:59:04 +00:00
Ed Sanders 21d4716612 Follow-up I673c28c2: Only apply clearfix to main content area
Bug: T254195
Bug: T263445
Change-Id: I693cd3d4d32501a2a4ab20140a662943fba22bb6
2020-09-21 13:23:48 +01:00
jenkins-bot a69323a9df Merge "Vector should use opt-in policy for ResourceLoaderSkinModule features" 2020-09-21 09:33:16 +00:00
Translation updater bot abe9d22306 Localisation updates from https://translatewiki.net.
Change-Id: I309fd1c2ca164a017f9532c5d916286a60caaa97
2020-09-21 08:33:30 +02:00
jdlrobson 5095b5c2f1 Vector supports language variant logos
Given I7184f2f5dd7fdb49fb928265bbf711ef9fd555c9 we can now
use the data generated by core which has the benefit of being
configurable per language variant.

Bug: T261153
Change-Id: I7a77f164da53c362da225ae3d13635f9ddca529f
2020-09-18 10:59:23 -07:00
jdlrobson dbf5d7084a Tests: `name` option is now required
Since SkinVector provides name via skin.json the name must be
passed in the test constructor.

This will be required as part of
I5772eb760e4fc56d2062a333ba4d7ca6995f3db2

Change-Id: I4087deb8b0726c9959ac15d77a0ed2442e4890f6
2020-09-18 08:55:45 -07:00
jenkins-bot 7a7f80c09a Merge "SearchBox: Add data-search-loc attribute" 2020-09-17 18:46:42 +00:00
Sam Smith 7cbc30ebac SearchBox: Add data-search-loc attribute
The mediawiki.searchSuggest protocol part of the SearchSatisfaction
instrumentation reads the value of an element with the "data-search-loc"
attribute and sets the event's inputLocation property accordingly.

Set the appropriate value for the attribute in
SkinVector::getTemplateData and render the attribute in
the SearchBox.mustache template.

Bug: T256100
Change-Id: I0edbd8906a042072b2055adc2889b083b2c6cac4
2020-09-17 18:24:24 +00:00
Volker E f9821b508d docs: Expand on curl options in Storybook setup script
Change-Id: I7bba4773d27e17e42f2670242f226517e24b33d8
2020-09-17 03:07:41 -07:00
jenkins-bot 6d62be5a3f Merge "Fix the storybook instance" 2020-09-17 09:04:41 +00:00
Translation updater bot ae8f980ed6 Localisation updates from https://translatewiki.net.
Change-Id: I76f0d2e13aa3d03ed74ff02ab3e9b1c3b942efe2
2020-09-17 08:35:20 +02:00
Nikki Nikkhoui da158807b6 Use setTemporaryHook() in SkinVectorTest
The MediaWikiIntegrationTestCase::setTemporaryHook() function was
recently updated in https://gerrit.wikimedia.org/r/c/mediawiki/core/+/622400
to work with the new hook system. Use the new function in Vector tests, as
some extensions that use the new Hooks system are failing to pass the Vector
tests that run in their Jenkins CI tests
(https://gerrit.wikimedia.org/r/c/mediawiki/extensions/examples/+/603569).

Bug: T254381
Change-Id: If8289b2bf47a35140e2fef72234ffad7aae37c90
2020-09-16 23:17:07 +00:00
jdlrobson 34e70d44fc Fix the storybook instance
* Use `cp` over `ln` - the node resolver appears to
get tripped up by linked files.
* Fix a story referencing the wrong class

Follow up to I47da3046678117d5214354d1efe635f32f307dad

Bug: T263064
Change-Id: I80cb33ad70f9e6757dbe7f71b00539bec28abca9
2020-09-16 22:13:34 +00:00
DannyS712 76ee2c2813 variables.less - replace tab with space
Change-Id: Iaaa22d4f727892b0240360e6452d91b191ba87e8
2020-09-16 21:29:20 +00:00
Timo Tijhof 7e0731de48 Implement mediawiki.skin.variables.less for Vector
For now, only define:

- @font-family-sans
- @border-radius-base

Bug: T112747
Depends-On: Icf86c930a3b5524254bb549624737d3b9dccb032
Change-Id: I47da3046678117d5214354d1efe635f32f307dad
2020-09-16 08:39:13 -07:00
Translation updater bot aa9d46f937 Localisation updates from https://translatewiki.net.
Change-Id: Ie025d7be618d1878eee42485f82ba95dea846200
2020-09-16 09:12:14 +02:00
jdlrobson 7f801afa07 Vector should use opt-in policy for ResourceLoaderSkinModule features
Bug:  T252774
Change-Id: I50afd035360ff2eccd5a934a02a218d093f9583d
2020-09-14 15:20:07 -07:00
jenkins-bot 3bc308039c Merge "Make max-width the default for modern Vector" 2020-09-14 20:55:35 +00:00
jdlrobson 7449c7fdf6 A/B test of search in header for logged in users
A new config flag is added that buckets 50% of users into the old
header and the 50% into the new header.

Bug: T249363
Change-Id: I8b4fa475f9cd7e61ad2989e2a1485e7e64c8ab3f
2020-09-14 14:22:46 +01:00
jenkins-bot d72b0daa24 Merge "Use feature management for search in header" 2020-09-14 12:50:16 +00:00
Translation updater bot 8780a080f1 Localisation updates from https://translatewiki.net.
Change-Id: I8410528f5bc8a9bf45198e08606a7f1b4d22acd0
2020-09-14 09:22:58 +02:00
jdlrobson c8642b2fbe Use feature management for search in header
This will allow us to add the A/B testing requirement for logged in
users.

In preparation for the new A/B test requirement, a custom requirement
is added as the feature management system does not
support OR operations and the desired effect is the case where:

* the SearchInHeader feature flag has been enabled
* OR the SearchInHeaderABTest feature flag has been enabled and the user is bucketed

Bug: T259250
Change-Id: If948603bd598e1b5597345f4268736417f4c3a24
2020-09-13 23:00:16 +00:00
Umherirrender db254ab4b3 Remove trailing spaces from json
Change-Id: I2aa33372d47efb9b797df534eacb724a65da10f7
2020-09-11 22:50:04 +02:00
jenkins-bot e7d3728666 Merge "Fix order of expected/actual in SkinVectorTest" 2020-09-11 16:49:08 +00:00
DannyS712 837f529177 Fix order of expected/actual in SkinVectorTest
* expected is the first parameter not the second.

Change-Id: I825b10154ab59a754cdce400a4a0aa273747ae15
2020-09-11 16:29:08 +00:00
jdlrobson 9b31740514 Reduce max-width and adjust margin-left
* The margin-left should only be auto at small resolutions - otherwise on large
monitors it becomes visually separated from the logo
* the margin left should be larger
* and max width should be smaller.

Bug: T261686
Change-Id: Ia1331f51764a34f113e3336735e6cfd5fde1d49d
2020-09-11 14:54:58 +00:00
Translation updater bot 8a4e390be4 Localisation updates from https://translatewiki.net.
Change-Id: I8071dbefa6504cee8dc9382545385ec5c8c29ce1
2020-09-11 09:42:00 +02:00
libraryupgrader 1f385f74ad build: Updating node-fetch to 2.6.1
* https://npmjs.com/advisories/1556
* CVE-2020-15168

Change-Id: I6590e57425546f93589838288844d0a2dcf7095b
2020-09-10 23:28:46 +00:00
jdlrobson 905ad68bc2 Make max-width the default for modern Vector
Drop max width feature flag.
Max-width will continue to not apply on special pages.

This saves us development effort by not needing to worry about
the case where the flag is not enabled. This flag is not false
in any production wikis.

Change-Id: I7ace4046e6b93ce63dd804da32e576a709485bfb
2020-09-10 20:14:38 +00:00
Jan Drewniak df3954eff8 [IE9] Layout flex-box adjustments
Minor visual fix for IE9 for modern mode with search not in header.
i.e. with these settings:

    $wgVectorIsSearchInHeader = false;
    $wgVectorDefaultSkinVersion = 2;

Slight refactor of CSS. Removes block of styles that "reset" floats.
These were uneccessary because as flex-children, the floats were
ignored on those elements anyway.

Moves flex-wrap on .mw-header from layout-search-header.less
to layout-default.less since that's where display:flex is defined
and the rule is general enough that it should apply for different layouts.

Remove the @supports block with the `float:none;`. That is unnecessary
because flex-children are not affected by floats.

Change-Id: Ida3d2a7bc2b2f70238129df876714228fe5cdf84
2020-09-10 20:10:19 +00:00
Translation updater bot a8cfbe5e84 Localisation updates from https://translatewiki.net.
Change-Id: Ib97281bd6decc725a2481dd9bd7ab96f0d8767ac
2020-09-10 09:51:58 +02:00
Nicholas Ray 78787d9665 Switch to navigation-first DOM order under `$wgVectorIsSearchInHeader` feature flag
This moves the header, navigation, sidebar, and article toolbar to be
before the content in the DOM. As a result, a lot of absolute
positioning logic can be removed and styles can be simplified.

Note that although the sidebar was moved from the header into the
workspace container allowing it to de-absolutely positioned, its
absolute positioning was kept intact as it has a fair amount of
complexity that should be handled in a separate task.

To activate, set  `$wgVectorIsSearchInHeader = true;`

Changes that could cause concern:

* The "jump to search" link was removed as the search is now much
earlier in the DOM and I questioned the value of keeping this. However,
it can be added back in if this change is contentious.

* A "jump to content" link was added to account for the new DOM order.

* Because the sidebar was taken out of the header, users will not be
able to tab from the sidebar button into the sidebar without additional
tweaking (e.g. should we add JS to enable this?). It was deemed that
this work can be saved as a follow-up task.

* I applied `overflow-y: auto` to the `mw-page-container` because the
header's top margin was collapsing and caused whitespace to appear
between the viewport and the header. Alternatively, we could apply a top
padding to the page container and remove the header's top margin. I went
for the simplest solution but am open to alternatives.

* I left the footer as-is in this patch to minimize risk. It might be
cleaner later on to move the footer inside the workspace container which
would leave only one workspace container.

Bug: T261802
Change-Id: Ic553fab3bde25769b103d899b92b3b694c00c384
2020-09-09 18:31:35 +00:00
Translation updater bot 7e1be551e7 Localisation updates from https://translatewiki.net.
Change-Id: I9ffd96ec86c894d34ab377b78b50d1caf815da30
2020-09-09 09:56:23 +02:00
libraryupgrader b70197e802 build: Updating bl to 4.0.3
* https://npmjs.com/advisories/1555

Change-Id: I0da35ebcd3b3ce635b69f342449daf12d8fc543a
2020-09-09 01:51:40 +00:00
jenkins-bot b65de993dc Merge "Adds loading indicator for new search module" 2020-09-08 14:24:09 +00:00
Jan Drewniak 1dad545f63 Adds loading indicator for new search module
Provides a loading indicator to show while the new Vue.js based
search widget loads. Given that the new widget will pull down the
entire Vue.js runtime, it's likely that there will be a delay
before the search suggestions appear. This loader is meant to
improve the perceived loading experience of the new widget.

Adds:
- New searchLoader.js file containing loading behaviour.
  - This overrides the code searchSuggest loading behaviour.
- New SearchBoxLoader.less file containing the loader styles.
- i18n message: 'vector-search-loader'.
- The Event type to jsdoc.json

Bug: T254695
Change-Id: I6b5f0a60018954e10b9e80792030b67b2ec33e5a
2020-09-08 13:59:41 +00:00
Translation updater bot 04181e8ca7 Localisation updates from https://translatewiki.net.
Change-Id: I3534d2e0a146d57eeb500ddeecd17f07e3437358
2020-09-06 20:59:44 +02:00
jdlrobson d61cae0086 Don't change function signature of buildSidebar
Rename buildSidebar to getTemplateDataSidebar to reflect what it is
doing in Vector rather than overloading it with template data generation.

Changing the return value has consequences on refactors
inside core a Skin::buildSidebar returns an array not an
associative array.

Change-Id: I0a4913c21af6ac3f5259cee8583aa121756251c1
2020-09-04 21:55:11 +00:00
Stephen Niedzielski f5323d9bf1 [search] Tweak the search input styles
Update the search input styles to match WVUI.

Change-Id: Id7f88c31eb662cc859d7e465f85631d7a8cbe184
2020-09-04 14:49:50 -06:00
jenkins-bot caab80aa9c Merge "Update codesearch URL to wmcloud.org" 2020-09-04 18:14:54 +00:00
Translation updater bot 0d4077aa0b Localisation updates from https://translatewiki.net.
Change-Id: I5942e32afdfc3ef24f146da2885c39a1f01f8214
2020-09-04 09:29:33 +02:00
Kunal Mehta bd2ee525b1 Update codesearch URL to wmcloud.org
Change-Id: I5aa4e362807208a1aef3476949238d4fe62858df
2020-09-03 16:20:40 -07:00
jenkins-bot 6ae5cf8064 Merge "Reduce space between sidebar and content" 2020-09-03 17:22:33 +00:00
Jan Drewniak 5a8bb57b55 Reduce space between sidebar and content
Bug: T259761
Change-Id: Ieb7a49e1239fe4e0d2866a1433f9dde0141c0b3d
2020-09-03 13:18:52 +02:00
jenkins-bot dd178231c1 Merge "Flush search to right on smaller resolutions" 2020-09-03 09:59:59 +00:00
Translation updater bot 37e0acc2ff Localisation updates from https://translatewiki.net.
Change-Id: I412b29ecf658d9d52d05dfc24b6778f4d6477a5b
2020-09-03 10:06:36 +02:00
jenkins-bot 53f0b183e8 Merge "Remove the loading background image for loading class" 2020-09-02 19:38:20 +00:00
hmonroy 4169fc6dc1 Remove the loading background image for loading class
The star should spin its current background image when transitioning between different
watch requests.

Bug: T259053
Depends-On: I1e11f0e129c53b405a2ffa8
Change-Id: Id2f9b2e25761c052aeaa410edead65ec298209a2
2020-09-02 11:42:49 -07:00
Translation updater bot 2c058381b6 Localisation updates from https://translatewiki.net.
Change-Id: I9e7e0cf83fa0354e5e6fa22f8d21c62291f4f570
2020-09-02 09:42:31 +02:00
jdlrobson bd8bfa8deb Flush search to right on smaller resolutions
Bug: T261686
Change-Id: I30985009c05e64bff5aaa240f7c3970475fe0fba
2020-09-01 15:53:20 -07:00
jenkins-bot d4663ef0ec Merge "Accommodate longer user names in personal tools" 2020-09-01 22:20:21 +00:00
jdlrobson 43e9776142 Accommodate longer user names in personal tools
The width should apply at all resolutions. Note, because of the nature
of flex box and flex-grow the personal tools can grow larger than this
value.

This avoids Alex Hollender (WMF) and similarly long usernames from every
running to the next line before they are allowed to.

Bug: T249363
Change-Id: I4640947aaaf7ab764cb17b911af7085ac291b7d1
2020-09-01 12:10:08 -07:00
jenkins-bot 8b70eec55d Merge "Include @padding-horizontal-page-container in header adjustment calculations" 2020-09-01 11:21:41 +00:00
Translation updater bot 955ec08259 Localisation updates from https://translatewiki.net.
Change-Id: I8d2bbdcaba3a480300b2f35551758b9b47f9e1aa
2020-09-01 09:19:45 +02:00
jenkins-bot 952abb0dde Merge "Drop legacy selector from Vector" 2020-08-31 19:39:50 +00:00
jenkins-bot e77bd199f9 Merge "[Special:Preferences] [PHP] Add HTMLSkinVersionField form field" 2020-08-31 19:28:41 +00:00
Sam Smith 4449235516 [Special:Preferences] [PHP] Add HTMLSkinVersionField form field
I177dad88 introduced the skin version user preference field and
associated configuration values. Per T242381, the field is to presented
as a checkbox with the implied storage type of a boolean where a string
is needed. A PreferencesFormPreSave hook handler was added to adapt
values of either data type to the other.  While this was a neat solution
to a minor nit, the adapter's implementation is incompatible with the
GlobalPreferences extension as the PreferencesFormPreSave hook isn't run
whilst saving global preferences.

Rather than adding an equivalent hook to the GlobalPreferences
extension, create a custom field based on a checkbox with the adapter
included. This allows us to:

- Separate the business logic concerned with preserving the user's
  VectorSkinVersion preference if they've simply disabled Vector from
  the adapter

- Simplify the adapter's implementation

- Forego adding hooks to the GlobalPreferences codebase

Additional changes:

- Replace repeated string literals with equivalent constants in
  tests/phpunit/integration/VectorHooksTest.php

Bug: T258493
Change-Id: I628435a4ad676f55534191b8c10147be28be5d73
2020-08-31 12:04:12 -07:00
jdlrobson a39ebf7954 Don't render escaped HTML as HTML
Follow up to I610224d551ebea54ae32e9e79901befe80cfd5ce

Change-Id: I44caf1b484c86674bc1f86dfe42bc259dfa1f2ab
2020-08-31 09:45:47 -07:00
Translation updater bot f6de8a4a17 Localisation updates from https://translatewiki.net.
Change-Id: I417bba4f7de8c8076a89728ab4346526dc50403d
2020-08-31 09:52:04 +02:00
jdlrobson 287e577cfd Drop legacy selector from Vector
This is no longer needed.

Change-Id: I537dbbcf007860f74feefe3b61f95561969344d6
2020-08-28 12:52:49 -07:00
jdlrobson 5ac25943a2 Refactor: All messages should be listed from skin.json
This allows us easily to identify in templates what messages are
used and where, as well as allow us an easy way to tell when
messages are no longer being used.

Change-Id: I610224d551ebea54ae32e9e79901befe80cfd5ce
2020-08-28 17:12:10 +00:00
jenkins-bot fe4526e125 Merge "[styles] Remove Internet Explorer 8 specific hacks and workarounds" 2020-08-27 13:30:57 +00:00
Volker E 8580c26d65 [docs][styles] Clean-up documentation and move typography vars
Change-Id: Ib65f130dfccf103da068e62a2b633d2e4c695684
2020-08-27 02:48:52 -07:00
Volker E 5bffb899a8 [styles] Remove Internet Explorer 8 specific hacks and workarounds
Bug: T261378
Change-Id: If51f20137a001276800fafb97ed4ceb53617ae79
2020-08-27 01:34:13 -07:00
Volker E fdde3192fa [styles] Make Trident workaround value a variable
Carved out from I8e6e283db5d4034861f8d50d9b3f211df1a78c6c.
It makes sense to have a variable defined for that value.

Change-Id: Iaaca1fd7c15a0c121e60b5ae6debf4bf6920168e
2020-08-27 01:27:50 -07:00
jdlrobson 6659be5b49 Include @padding-horizontal-page-container in header adjustment calculations
I overlooked the horizontal padding on the page container. This needs to be
included in the decision on whether to make the header 2 lines on 1.

Bug: T249363
Change-Id: I4fabac7d57e37db87d2363073317109f582de883
2020-08-26 14:33:22 -07:00
Ed Sanders 6fe1f39950 build: Update eslint-config-wikimedia to 0.17.0
Change-Id: Ia4911b1706e50106b108b38108430bb950010b21
2020-08-25 14:17:56 +01:00
Translation updater bot 24bcd39882 Localisation updates from https://translatewiki.net.
Change-Id: I7d1f93e0a51a9059db33dc5bae8b4515ba0503ae
2020-08-25 09:48:34 +02:00
Translation updater bot 65ee6b5847 Localisation updates from https://translatewiki.net.
Change-Id: Iad6711f3ab0e98aa3c400ab05f1171da19b314b3
2020-08-24 12:02:28 +02:00
Translation updater bot 1aef2b6a67 Localisation updates from https://translatewiki.net.
Change-Id: I96ba3021be878b821b0c7f2db0560a9a66277dff
2020-08-21 08:43:31 +02:00
jdlrobson e7df44a66d Favor SkinTemplateNavigation::Universal
This hook is run on every page. The SkinTemplateNavigation hook
counter intutively is run only on pages which can exist. I think
it's clearer if we only use SkinTemplateNavigation::Universal hook
and keep the logic for when it runs inside our own code.

Bug: T255319
Change-Id: I0835074a6cadf6e9bdcc45299de37dd9328bf9b2
2020-08-20 16:01:27 +00:00
Translation updater bot 249ef2ecee Localisation updates from https://translatewiki.net.
Change-Id: I662b0659ea57b237e894e17c26aaf637c9d2a394
2020-08-20 08:29:32 +02:00
jenkins-bot b98872714a Merge "Allow personal tools to span 2 lines" 2020-08-19 17:20:41 +00:00
Volker E 5b563ba9f9 skins.vector.styles: Remove obsolete linear-gradient hack
Following up I6bc4cf541eefd00e2e42 we also need to remove the
linear-gradient hack that only made sense in combination with the
now gone PNG fallback background-image.

Change-Id: I0e7ed0451884a6bd612cb1082555338a26129e2d
2020-08-18 20:50:19 +00:00
jdlrobson aa45edd2f2 Refactor: Drop legacy selectors
These are no longer needed. The classes remain where necessary for
gadgets but the CSS rules no longer need to apply to them.

Change-Id: I18afa15ddab75128463dc83c916e11436db0575a
2020-08-18 12:39:13 -07:00
jdlrobson 370add977c Allow personal tools to span 2 lines
The calculations were a little incorrect as I failed to consider the
sidebar button correctly and how the search's min width and max width
impact layout.

I also move rules from Sidebar.less regarding the placement of the button
into layout where I believe they belong.  We do not have a header component, so the
positioning (margin) of the sidebar button in current form should be here.

This can be revisited if we introduce a header component.

Bug: T249363
Change-Id: I4ff640380eafc8beedb2c3c8fb00a56c71c5cb45
2020-08-18 11:42:18 -07:00
jenkins-bot de6ff025cc Merge "hooks: Don't use SkinVersionLookup directly" 2020-08-18 15:58:26 +00:00
jenkins-bot 4b6b46631c Merge "skins.vector.styles: Remove PNG fallback and merge skins.vector.icons module" 2020-08-18 11:51:56 +00:00
jenkins-bot a817bc5cb8 Merge "Search in header: fix break point" 2020-08-18 11:50:27 +00:00
Sam Smith b46751d4ed hooks: Don't use SkinVersionLookup directly
The feature manager abstracts away how a feature is enabled from the
consumer of that feature. Accordingly, replace direct instantiation of
SkinVersionLookup with usage of the Vector.FeatureManager service.

Supporting changes:

- Add Vector\VectorServices, a simple wrapper around
  MediaWiki\MediaWikiServices that allows us to both document and
  type-hint services specific to Vector

- Add Vector\Hooks::isSkinVersionLegacy to minimise repetition

Additional changes:

- Make the MakeGlobalVariablesScript hook handler return early if the
  user isn't using the Vector skin like the other hook handlers

Bug: T256100
Change-Id: I93b5ef39802323c7ac658af8fa7cc312fff68aa7
2020-08-18 11:40:48 +01:00
jenkins-bot b1d362cb1a Merge "hooks: Document CSS classes used elsewhere" 2020-08-17 22:48:06 +00:00
jenkins-bot 2083ad5c71 Merge "Apply @min-width-supported to .mw-page-container" 2020-08-17 22:31:13 +00:00
Sam Smith 8d98ba35da hooks: Document CSS classes used elsewhere
Bug: T256100
Change-Id: I3fef99e5b94ca4dc221282f28c7608f84d8fb746
2020-08-17 15:27:32 -07:00
jdlrobson 8a2ffe0722 Search in header: fix break point
The width comfortable should consider the max-width of the search
not the min-width.

This fixes the bug documented in T249363#6391041

Bug: T249363
Change-Id: I3e216a3705730092f88d1dcbb5193e411945a083
2020-08-17 14:36:01 -07:00
jenkins-bot 95896ff703 Merge "hooks: Don't send config variables unnecessarily" 2020-08-17 20:44:34 +00:00
Translation updater bot 82e53d914b Localisation updates from https://translatewiki.net.
Change-Id: I8f943acd2074cfd95920e5c84b8e0de350bb5c04
2020-08-17 08:47:54 +02:00
Translation updater bot 74e94c3ea9 Localisation updates from https://translatewiki.net.
Change-Id: Iadc02718b524848db684398317686fafe60b5895
2020-08-14 08:43:07 +02:00
Nicholas Ray 7a769a0374 Apply @min-width-supported to .mw-page-container
As part of moving search into header work, a min-width (via
@min-width-supported variable) was introduced on the body and takes
effect when the search feature is enabled.

However, given a min-width already exists on the page container from the
max-width work, I'm wondering if it makes sense to replace that one with
the @min-width-supported variable as it seems like we should only have
one min-width vs. having two.

Note: As a bonus, this has the (unintended but helpful) side-effect of
mitigating the sidebar button being blocked by the personal menu at
small viewport widths (T258465).

[1] I7f8059d43eaab49de362405784b34a4fe502c7b0

Bug: T258465
Change-Id: I920cd0e9d1564c82bcdc89b721352620158073c6
2020-08-13 17:11:48 -06:00
jenkins-bot feae33a4e6 Merge "Remove VectorBeforeFooter hook" 2020-08-13 22:36:09 +00:00
Sam Smith 75ade04dfc hooks: Don't send config variables unnecessarily
The wgVectorDisableSidebarPersistence config variable is only required
when the user is logged in. Don't send it to the client when the user is
logged out.

Bug: T255727
Change-Id: I27eda8c18b438ef3251b2c07a0ed8b0cef6cae64
2020-08-13 15:37:45 +01:00
Timo Tijhof 31c5273ef9 skins.vector.styles: Remove PNG fallback and merge skins.vector.icons module
* Remove the PNG fallbacks for chevronHorizontal-….svg and menu.svg.

  As of T248061, these are no longer needed.

* Added the one line of trivial CSS directly to skins.vector.styles
  instead of through its own module.

  This helps recovers the module cost of vue module deployed this
  week (from  Ib6c8f890fb3d6e7), which is currently empty and unused.

  With T253582, we'll be able to recover a lot more budget in
  this area.

Bug: T258766
Change-Id: I6bc4cf541eefd00e2e428f918664a26da331c1a9
2020-08-13 13:53:46 +01:00
Translation updater bot a03a19f7af Localisation updates from https://translatewiki.net.
Change-Id: I27728d160e95a031759066f21b458271701e2640
2020-08-12 08:21:34 +02:00
jenkins-bot 6fc6cf3c1e Merge "build: Updating npm dependencies" 2020-08-12 00:21:05 +00:00
libraryupgrader e6fe4ef775 build: Updating npm dependencies
* webpack: 4.43.0 → 4.44.1
  * https://npmjs.com/advisories/1548
* terser-webpack-plugin: 1.4.3 → 1.4.4
  * https://npmjs.com/advisories/1548

Change-Id: Ia303890fdeeb81410c41ebe8fc84591e78ad2a05
2020-08-11 23:39:47 +00:00
jdlrobson 53d9452795 Move the personal tools and search into header
To support roll out and avoid issues with cached HTML the new
styles for the new search feature are restricted to HTML where
the body tag has `skin-vector-search-header` class.

For legacy mode, we introduce a new class
`skin-vector-search-header-legacy` and temporarily use a CSS3 `:not()`
selector to ensure the styles ship during the phase where cached
HTML can be served. While this will create some display issues in
browsers that do not support CSS3 selectors, all grade A browsers in
our compatability matrix support this.

Bug: T249363
Change-Id: I7f8059d43eaab49de362405784b34a4fe502c7b0
2020-08-11 23:36:01 +00:00
jenkins-bot a639ff3aa9 Merge "[modern] Layout index file." 2020-08-11 23:00:46 +00:00
jdlrobson e3a986f587 [modern] Layout index file.
Keep variables concerned with layout in the master file but pull out
the default layout into a separate file.

Change-Id: I4acc2937f8e8a76274a3ffb76e3729dc89ce1ad7
2020-08-11 20:45:38 +00:00
Translation updater bot a9367d1c46 Localisation updates from https://translatewiki.net.
Change-Id: I0937f1e910601b6783580e954e5bdae2158aa14c
2020-08-10 09:04:19 +02:00
Translation updater bot f6a1d21af1 Localisation updates from https://translatewiki.net.
Change-Id: I7f57ac579676a819140517f924799338e3b5f892
2020-08-06 08:29:52 +02:00
mainframe98 ddc32a5833 Provide messages through skin options
Bug: T259664
Depends-On: Ie52aadd6b7de8c4db66de662f2f03e295c29034d
Change-Id: Ib03c0683aa00d334224e7b3507098dedcc848e44
2020-08-05 10:24:34 +02:00
jenkins-bot 05a82f6069 Merge "Vector manages search functionality and provides config flag" 2020-08-04 17:53:05 +00:00
Sam Smith e60734a773 documentation: Align @package annotations
Following on from I9445d5c, align the @package annotations in
the Vector\FeatureManagement namespace and subnamespaces.

Bug: T248399
Change-Id: Icd287a52d149123bca5d9f0c55154f932f55148e
2020-08-04 12:48:11 +01:00
jenkins-bot 5e327d6f34 Merge "Document stability of undocumented classes" 2020-08-04 10:52:20 +00:00
Translation updater bot 458209ec33 Localisation updates from https://translatewiki.net.
Change-Id: Iebcf6444146169872ca3abd0623c19e971822fb8
2020-08-04 08:34:57 +02:00
jdlrobson 580a0aa537 Document stability of undocumented classes
Bug: T248399
Change-Id: I9445d5c0753f7272c3d22d66b8824f8a95b86d41
2020-08-03 17:17:53 -07:00
Peter Ovchyn 7b8bad23f2 Vector manages search functionality and provides config flag
Add onSkinPageReadyConfig hook that overrides module after page loaded
The new module is currently empty pending further work in the
feature branch.

Depends-On: I0dc38e74052027f26a70d58b5f520e5830e0d55d
Bug: T257706
Change-Id: Ib6c8f890fb3d6e751f5f01a6576614b9cc9b440c
2020-08-04 00:06:31 +00:00
jdlrobson f92e40152a Print: Add layout print styles on Ctrl+p and ElectronPdf
Bug: T253842
Change-Id: Ia7104a30a37a13cbeb6cfa4bdf1ee50ee677a87a
2020-08-03 20:06:37 +00:00
jenkins-bot 391d0caa27 Merge "Drop support for building sidebar portal with non-standard format" 2020-08-03 20:00:00 +00:00
jenkins-bot 3707751621 Merge "[build] Fold NPM build script into test" 2020-08-03 19:54:52 +00:00
Ammar Abdulhamid 2cd45072b4 Drop support for building sidebar portal with non-standard format
Bug: T259306
Change-Id: I2015ddc9bfad614e54427d0de4e7874092cfbfe0
2020-08-03 19:38:34 +00:00
jenkins-bot edb3fef5b9 Merge "Refactor: Replace PHP complexity with JS simplicity" 2020-08-03 18:47:09 +00:00
jenkins-bot 48f44e3575 Merge "[build] Make the pre-commit hook optional" 2020-08-03 18:44:01 +00:00
Stephen Niedzielski cf17aee48b [build] Make the pre-commit hook optional
Add a new NPM script, `pre-commit`, which _conditionally_ invokes
`npm test`. Previously, the pre-commit hook was configured by default to
invoke `npm test`. Now it is configured explicitly to invoke the new
`pre-commit` script.

The rationale for this change is that some folks may prefer workflows
that defer all validation until CI. Supporting these workflows is a
small change, most of it documentation.

This change isn't necessary for T257647 but supports and seems like an
overall improvement to the repo regardless of whether code is built or
not.

Bug: T257647
Change-Id: I19a78e0e677026cd6887245d96e63a414397a3db
2020-08-03 18:23:42 +00:00
jenkins-bot bb1f1c3fd6 Merge "Don't add Vector-specific <body> classes when not using Vector" 2020-08-03 10:56:20 +00:00
Translation updater bot 79df222565 Localisation updates from https://translatewiki.net.
Change-Id: I4e7d19a9b91f8ffd7d145dd017a58a4e7da4f015
2020-08-03 08:37:25 +02:00
Jack Phoenix 3ea7bec6db Don't add Vector-specific <body> classes when not using Vector
Hooks are global, unlike the old Skin addToBodyAttributes() method, which was per-skin.

Follow-up to a04fc71f30

Change-Id: Ic8a581256c4775ba45b2c5188d678751ba9c7023
2020-08-01 21:05:57 +03:00
jenkins-bot 0ae68144b0 Merge "[less] Remove normalize rules covered by mediawiki.skinning/normalize module" 2020-07-31 22:45:05 +00:00
jenkins-bot eb5798bc30 Merge "[build] Add NVM configuration" 2020-07-31 22:38:38 +00:00
Volker E b0ccdc5892 [less] Remove normalize rules covered by mediawiki.skinning/normalize module
`padding: 0` was either a rule targeting very early Operas or
Netscape/Firefox or came out of Eric Meyer's reset.css as
misappropriation.
normalize.css haven't had it in v1.0.0, only relied on `margin: 0`
normalization for IE 6 & 7.

Change-Id: I3d2894a1e68414b64751bd6ebe7e1af77d260ee7
2020-07-31 22:21:25 +00:00
jdlrobson ed7fd252cd Refactor: Replace PHP complexity with JS simplicity
In PHP we add collapsible classes to all elements except watchstar
so that certain tabs can be collapsed under the more menu in JS.
This adds unnecessary complexity to our codebase and is not used
if JS is disabled.

To simplify this and bring Vector's PHP consistency with core this
logic is moved to JavaScript.

Bug: T259372
Change-Id: I2acbf7089198118626368ee8a37615d2de062f83
2020-07-31 22:15:08 +00:00
Translation updater bot e0f56960f2 Localisation updates from https://translatewiki.net.
Change-Id: I596ef0a1ebead16dd75585485acd642752e56005
2020-07-31 08:48:02 +02:00
Stephen Niedzielski fd51560c37 [build] Add NVM configuration
Add NVM configuration that matches WVUI, Popups, MobileFrontend to
specify the expected Node.js version when working with this repo. The
Node.js version chosen for Vector is identical to these projects as it
does not seem beneficial to differ at this time.

Bug: T257647
Change-Id: I0653c596ca74c0fb1ace4a6a6b08474daaff4f71
2020-07-31 02:25:21 +00:00
Stephen Niedzielski d752997e4f [build] Fold NPM build script into test
The NPM `build` script was being used to call `test`. The confusion was
likely due `build` calling the TypeScript compiler which in this case
isn't building anything. It's only used for tests. Since a proper
`build` script will be added in T257647. Move the tests in `build` to
`test` and drop `build`.

Bug: T257647
Change-Id: I7f2c983915f6b1eaa0aa88eb8dd4b32d9c954b78
2020-07-30 19:31:07 -06:00
jdlrobson d24d858264 Cleanup: Drop unnecessary isLegacy checks
The has-logo property is redundant:
The Sidebar in legacy is its own component. The logo is always
rendered in the legacy sidebar.

data-emphasized-sidebar-action can be unconditionally sent
The legacy sidebar doesn't use it, so there is no need to conditionally
add a check for legacy

These two changes allow us to remove the isLegacy property in favor
of the single use of the isLegacy method.

Change-Id: Ie7ee3cec29b20d07db81799484627254d4a78f5f
2020-07-30 15:10:57 -07:00
jdlrobson 1aab97ec03 Cleanup: Drop unused template variable
html-printfooter is no longer used now that core provides
this as part of html-body-content

Change-Id: Ib9d6b5ce56ecde38f5de948dc0f80c7a3e42d2b3
2020-07-30 20:38:36 +00:00
Ammar Abdulhamid a7c983a2ed Remove VectorBeforeFooter hook
Bug: T255214
Change-Id: Iac66823119c7279f5e922b0e258602dd6c4ca5c4
2020-07-30 13:27:04 -07:00
jdlrobson 2c74f08d3e Merge SkinVector and VectorTemplate (step 2/2)
Rename SkinTemplateVector to restore SkinVector

Bug: T251212
Change-Id: I7e06a4cc226f3434c0f655212a464b8b98bcc7f4
2020-07-30 12:20:13 -07:00
jdlrobson ee6974ad35 Merge SkinVector and VectorTemplate (step 1/2)
Please note I7e06a4cc226f3434c0f655212a464b8b98bcc7f4 should be
merged at the same time as this patch.

== The background ==
All extensions have been weaned of BaseTemplate hooks in
Wikimedia projects.

This change now means that Vector will no longer run
any BaseTemplate hooks. See the epic T253809 for the
implementation details.

== The change ==
BaseTemplate will now have nothing to do with the rendering of
Vector. The skin version is added to express the significance of
breaking compatibility with 3rd party extensions.

We TEMPORARILY remove SkinVector to retain git blame. SkinTemplateVector will
be renamed SkinVector in the follow up (see 2/2)
Update skin.json to use SkinTemplateVector for the skin (this will be fixed
in a follow up).

The isLegacy method is moved to SkinTemplateVector.

Changes of note:
* html-debuglog is no longer needed. SkinMustache includes this information on
the skins behalf
* html-printtail and html-headelement are now not needed in the master template
and added by SkinMustache
* Skin::getAfterPortlet does not provide the `after-portlet` wrapping element provided
by BaseTemplate::getAfterPortlet so this is added
* SkinTemplate::getFooterIcons does not support the options that BaseTemplate::getFooterIcons
does so any icons which do not have an image must be manually checked for and unset

Known changes to HTML output as a result of intentionally
delegating their output to the core SkinMustache class:
* A new line is removed between the body element and #mw-page-base
* #mw-html-debug-log now appears at the end of the body element
* #printfooter is now a child of #mw-content-text rather than sibling.

Bug: T251212
Change-Id: I4e89beb96f6401ed7e51bafdf0aac408f5a2c42f
2020-07-30 11:18:45 -07:00
Ed Sanders ad6c4ea6f3 Fix Yoda conditionals
Change-Id: I5074e8555154c421f4821de37c79d85e1a33d68d
2020-07-30 17:02:33 +01:00
Translation updater bot 0ab352856b Localisation updates from https://translatewiki.net.
Change-Id: I6eb3b6fb5fd6f952d9fd4add594c965dd12e3f9e
2020-07-30 08:38:20 +02:00
libraryupgrader 71bc6852c8 build: Updating elliptic to 6.5.3
* https://npmjs.com/advisories/1547
* CVE-2020-13822

Change-Id: Icefde4999397197d574812cbc0be102e90e5de89
2020-07-29 23:19:53 +00:00
jdlrobson fe49542008 Collapse media print query
Per discussions, its proposed that the target of all media queries
is defined in the entry points skin and skin-legacy

Please verify with `git diff HEAD^ -w` that no changes to print
styles have occurred

Bug: T253842
Change-Id: Id7d1c806d77ee50335a1c9985acc7e4406e64ccf
2020-07-29 11:16:29 -07:00
jdlrobson c0f48624c7 Print: Logo styles should apply in printed media
Bug: T253842
Change-Id: I7875795f12bb3e5e01e18aeb1e54ccfe7e44a020
2020-07-29 11:15:08 -07:00
Translation updater bot f80488ddd6 Localisation updates from https://translatewiki.net.
Change-Id: Ie6389208bb996ecd2a86d4e9de7e8f59d15b0ace
2020-07-29 08:37:51 +02:00
jenkins-bot eeb6182a91 Merge "Restrict image border to images in border" 2020-07-28 18:30:02 +00:00
Translation updater bot 1c02667d86 Localisation updates from https://translatewiki.net.
Change-Id: I0ac89fb19d91717b195f68b505bb529e65885f70
2020-07-28 08:26:36 +02:00
jenkins-bot f2e7fe5fee Merge "Remove VectorAfterToolbox hook" 2020-07-27 23:57:02 +00:00
Translation updater bot c676d3d8ed Localisation updates from https://translatewiki.net.
Change-Id: I0e09c78c5ee4e3cfb20f3b3f4d6171b9003b5eb9
2020-07-27 08:41:12 +02:00
Ammar Abdulhamid ea52da4dd0 Remove VectorAfterToolbox hook
Bug: T258814
Change-Id: I56c7efec0df021b3af3205ba80ea33b8fa470880
2020-07-27 00:18:51 +01:00
Volker E 89114e38ac MenuTabs: Remove IE 8 fallback
Also removing the image. `rgba()` for the win.

Change-Id: Ieeb33c6af1019df97ae641a017a970ce2e0ec8ff
2020-07-23 18:13:31 -07:00
Volker E 389141651b Remove unused images
All those have been lingering while not being used for a while.
- arrow* files are part of core 'mediawiki.icon' module
- 'link-icon.png' is without any reference nor clear original usage
- 'magnify-clip.png' is part of core 'mediawiki.skinning' module
- 'search-fade.png' was used in #simpleSearch before it got unified with
  Design Style Guide components

Change-Id: I985d3ec25b26eea359ce3dbf5abbe4647bc37ab4
2020-07-23 18:04:26 -07:00
Volker E 5b5378a54f Replace deprecated `background-image-svg()` mixin calls
Use normal `background-image` properties with SVGs only now
that IE 8 and Android 2.1 is removed from Grade C.
Also removing all PNG fallback images.

Bug: T248062
Change-Id: Ib91cd0514d331ab6a0f8b668aef6991cf3267fe2
2020-07-23 17:50:31 -07:00
jdlrobson 01dd41a0b3 Restrict image border to images in border
In future we will be displaying the header and logo in the print
display - to avoid adding unnecessary borders scope this rule.

Bug: T253842
Change-Id: I123b73fcaa09c0213914ca6fd8074a1305814529
2020-07-23 10:37:36 -07:00
Translation updater bot e70f5ccc71 Localisation updates from https://translatewiki.net.
Change-Id: I21e25e1cbecab4bb49aec60f4e3b13dc3c88f479
2020-07-23 08:31:00 +02:00
Translation updater bot ff5147502e Localisation updates from https://translatewiki.net.
Change-Id: I4dcb7c070d45f84bb3e88cdb4cc56706195ad24a
2020-07-22 08:29:03 +02:00
Translation updater bot b372740e98 Localisation updates from https://translatewiki.net.
Change-Id: I02ab0ed1df5376811940db718ce3e7dc4e8ffbd8
2020-07-21 09:18:43 +02:00
jenkins-bot d09649250d Merge "Make collapsible code more resilient" 2020-07-20 22:08:07 +00:00
Translation updater bot f3dfa7f302 Localisation updates from https://translatewiki.net.
Change-Id: I042c6e810943d6b8004726e5463fe5a2c1b6cb26
2020-07-20 09:04:21 +02:00
jenkins-bot 3323cc930d Merge "less: Remove duplicated variables from mediawiki.ui" 2020-07-17 17:34:02 +00:00
jenkins-bot c7e9719b9b Merge "Add config to disable sidebar state persistence for logged-in users." 2020-07-17 16:57:18 +00:00
Jan Drewniak a8c79f3d52 Add config to disable sidebar state persistence for logged-in users.
Bug: T255727
Change-Id: Id28e0bc5249ba68b5de2a078a259e9964f619ef7
2020-07-17 09:32:21 -07:00
Translation updater bot 99ff546d12 Localisation updates from https://translatewiki.net.
Change-Id: I2cd7dc109732fe3bbfbd46ea870efaf2e5b7969c
2020-07-17 08:31:14 +02:00
jdlrobson 17a07e4c76 Make collapsible code more resilient
$.collapsibleTabs.getSettings can return undefined so the code
should take this into account

Bug: T177108
Change-Id: I2630a2ba2884542869748047ab84752543072647
2020-07-16 14:17:30 -07:00
Translation updater bot cd4c73a7ff Localisation updates from https://translatewiki.net.
Change-Id: I5193050be1d0011f8cf6e9df5cbc9f7932a3e81d
2020-07-16 08:23:22 +02:00
Volker E f01e1afb59 less: Remove duplicated variables from mediawiki.ui
Change-Id: Ia22d95878c7099d38557cc93b3b0df65b0e8519d
2020-07-15 17:55:59 -07:00
jenkins-bot 1ccf9f7fcb Merge "Refactor: html-userlangattributes -> html-user-language-attributes" 2020-07-15 18:10:55 +00:00
jdlrobson 39a333452b Refactor: html-userlangattributes -> html-user-language-attributes
This matches the name in core and is needed in preparation for
switching to SkinMustache

Additional change:
The JS variable htmluserlangattributes is renamed
"htmlUserLanguageAttributes"

Change-Id: I306ebb615f720852fb35c25ac240d6b802d05ecc
2020-07-15 10:18:45 -07:00
Translation updater bot 70cb2c86e9 Localisation updates from https://translatewiki.net.
Change-Id: I2076b9ef4789e8012ead4559c5bc97eabb25d76a
2020-07-15 09:07:42 +02:00
jenkins-bot 3651b41cb0 Merge "Max-width layout: Make page container fill viewport if content height is small" 2020-07-15 05:15:23 +00:00
Nicholas Ray acf42aa48f Max-width layout: Make page container fill viewport if content height is small
This will help mitigate the sidebar overflowing the page container
(related to T257518). Note that this does not prevent the overflow from
happening as the sidebar can still be longer than the viewport, but it
should reduce the number of times it can happen.

Bug: T257518
Change-Id: Id7138b4d4459242772bee8e11dc7edeaf76b3ca0
2020-07-14 17:20:06 -06:00
jdlrobson 018f30c615 [Refactor] Simplify searchbox layout rules
Follow up to I340b9e7e91960713c0ebb4d3d26e2ae2d5628f37

The layout styles reference internal CSS classes within
Vector components that may change at any time.

For legacy layout, I leave the styles the same (they have a FIXME)
As Aron noted on code review the impact such a change
could have on user styles. For modern however I simplify the styles
as follows:
* The top margin on the form is promoted to the main element - this has
the same end result.
* Likewise the width dimensions are moved from child elements to
the parent


Bug: T249363
Change-Id: If923a5dddaac6217462e75d476e07d923ee1743f
2020-07-14 21:02:03 +00:00
AronDemian ba8ec2f842 Split Searchbox layout styles for legacy and modern
No changes made to the CSS rules.
* 'SearchBox.less' is the common part that won't change in modern.
* layout styles copied to both 'layout.less'

Bug: T249363
Change-Id: I340b9e7e91960713c0ebb4d3d26e2ae2d5628f37
2020-07-14 13:01:35 -07:00
DannyS712 56dbfd9a46 Restore div wrapper around print footer
Div with a `printfooter` class that is hidden on normal page views

Bug: T257914
Change-Id: Ibd3e73076f290a92671c7cdd72672921fa64fc05
2020-07-14 12:28:45 +00:00
jenkins-bot b540dadfb3 Merge "Max-Width Layout: Make footer width match content width to avoid overlap with sidebar" 2020-07-14 01:27:27 +00:00
Nicholas Ray d5cb58b3f0 Max-Width Layout: Make footer width match content width to avoid overlap with sidebar
* `mw-content-container` now wraps the footer (as well as the content)
because we want the footer to match the content width at all times and
to expand with the content when the sidebar is closed (at small viewport
widths or when on history/special pages)

* `mw-footer-container` margins were replaced with padding to avoid
issues with margin collapsing.

* Applied a white background to sidebar to handle the case of the
sidebar overflowing the `mw-page-container`. When that happens, we at
least want the text in the sidebar to be legible.

* Closely related, `mw-page-container`'s `overflow: hidden` style was
removed to prevent `mw-page-container` from cutting off the sidebar. The
purpose of this style was make it appear as if the sidebar was being
hidden by `mw-page-container`, but tweaking the sidebar's translation
animation to achieves this effect as well.

Bug: T257518
Change-Id: I89edf89b2ac4abe2053f0c9b366f143133ff420f
2020-07-13 18:26:18 -06:00
jdlrobson 7a16ae249e Rename template variables to mirror SkinMustache
The renames made in this patch mirror the upstream change in
I3f7b2e5f07d03ac04ecdcba585194d619abe35e0 in preparation for adopting
the SkinMustache class.

Renames:
* 'data-indicators => 'array-indicators'
* 'html-bodycontent' => 'html-body-content'
* 'html-undelete' => 'html-undelete-link'
* 'html-sitenotice' => 'html-site-notice'
* 'html-catlinks' =>  'html-categories'
* 'html-dataaftercontent' => 'html-after-content'
* 'html-userlangattributes' => 'html-user-language-attributes'

Adjustments
* 'html-debuglog' is moved into html-printtail for consistency with
SkinMustache in core
* html-printfooter is now a part of html-bodycontent for consistency with
SkinMustache in core
Note: the activity of removing html-printtail and html-headelement from
the templates will be done when we adopt SkinMustache.

Bug: T257630
Depends-On: Ibac9729eaa96a38bc730a0132b102a894f6a172d
Change-Id: Ie92bda7846767c3cc9a1937c96a7fc08415b1bae
2020-07-13 21:57:40 +00:00
jdlrobson c405ffb155 Cleanup: Template variables
- Remove unused html-prebodyhtml template variable
- Don't use html- prefixed variables as if statements - this is
not supported by Mustache. (set to '' to confirm)

Change-Id: I0c860b4b2277e1796afa3e482cf61e95ef4fb342
2020-07-13 14:10:14 -07:00
libraryupgrader c4cc51d744 build: Updating lodash to 4.17.19
* https://npmjs.com/advisories/1523
* CVE-2019-10744

Change-Id: Id98f8d8854499931f5d59de6ebfb02d56ea342a8
2020-07-11 15:46:35 +00:00
jenkins-bot 02c44e7302 Merge "[docs] Fix typos in comments" 2020-07-10 22:22:56 +00:00
jenkins-bot a6efa2ff11 Merge "Deprecate VectorTemplate" 2020-07-10 17:41:57 +00:00
jdlrobson 81daa1ab7a Deprecate VectorTemplate
In 1.36 we will be removing this class and adopting SkinMustache.
Signal to developers that this is considered an internal class
as notice of that intention.

Change-Id: Ib62a5352a73eb6189ba85f4034da1b0857fd31aa
2020-07-10 17:19:25 +00:00
jenkins-bot 3775356d54 Merge "Add enter/spacebar keyboard support to sidebar." 2020-07-09 21:45:50 +00:00
jenkins-bot 6a078bc246 Merge "VectorTemplate: use skin->Msg() instead of msg()" 2020-07-09 21:27:52 +00:00
Jan Drewniak 2b5857f624 Add enter/spacebar keyboard support to sidebar.
Bug: T255727
Depends-On: I388ac873997aa02d713ae7453216e0cb7d983993
Change-Id: Ie438db4f752c77aa40191d2bceb83f52d3371c6c
2020-07-09 22:38:15 +02:00
Volker E aaf8b7721a [docs] Fix typos in comments
Following-up Ib1ce934f3646cd8fe.

Change-Id: Id32cbfb5256d55e6c9d8b081a126ca0275b7565d
2020-07-09 00:47:27 -07:00
Jan Drewniak 1fac82f895 Sidebar persistence for logged-in users in modern Vector.
- Creates a new user-preference called 'VectorSidebarVisible'
which stores the sidebar hidden/collapsed state for logged-in
users.
- Updates that user-preference on the client whenever the sidebar
is expanded or collapsed.
- Refactors the sidebar related javascript into a separate file.

Bug: T255727
Change-Id: Ib1ce934f3646cd8feebf0d3b15c38b5b969ec957
2020-07-09 00:28:52 +02:00
daniel c9ff9c2856 VectorTemplate: use skin->Msg() instead of msg()
VectorTemplate was overriding msg() in QuickTemplate
 in a way that broke the method's
contract, and changed the return type in an incompatible way.

Note while getMsg would also work here, this will reduce the
risk in the upcoming I4e89beb96f6401ed7e51bafdf0aac408f5a2c42f
change.

Change-Id: I95e4e7dcd5ed353917d2706c78663f748775b365
2020-07-08 11:39:22 -07:00
jenkins-bot 36a1516f96 Merge "Implement Page, Workspace, Content, and Article Toolbar Containers" 2020-07-08 01:21:49 +00:00
Nicholas Ray 092a2957af Implement Page, Workspace, Content, and Article Toolbar Containers
This patch closely follows the desired guidelines/desired
styles Alex Hollender has put forth in his prototype, but uses
multiple containers to achieve this look since our DOM order/structure
is different than the DOM structure in the prototype. The following
containers are used, but unlike his prototype, they are sometimes used
more than once:

* Page Container: Contains every other container and limits the overall
max-width of the white part of the page.

* Workspace Container: Contains the sidebar and content container. The
sidebar is displaced ~30 pixels to the start (left) of the workspace
container at all times.

* Content Container: Contains the content. The max-width of this changes
depending on whether you are on a special page/history page vs. other
pages.

* Article Toolbar Container: Contains the article toolbar. The max-width
of this is always the same as the max-width of the article content as we
don't want the toolbar to move when going from the article page to the
history/special page.

Changes to be aware:

* To test locally, `$wgVectorLayoutMaxWidth = true;`. This design is
temporarily feature flagged and defaults to being "off".

* Note that layout-max-width.less is a temporary file made to meet the
feature flag requirement of T246420 (intended to derisk the deployment).
After the deploy, we should merge most if not all of the rules into
layout.less where the max-width design will become the default.

* Per Jon's code review comment, I have relaxed the indenting of
skin.mustache to make the diff easier to reason about. If desired, the
correct indenting can be achieved in a (much less risky) follow-up
commit.

Bug: T246420
Bug: T153043
Change-Id: Ie49f629bc705850c6996164a516957476c034048
2020-07-07 18:34:38 -06:00
jdlrobson 04bcd93adf Logo shouldn't import layout
This explains a few issues that were occuring in the storybook
relating to modern/legacy.

Follow up to 5195f5fd6 which doesn't reference why.

Components should not import styles relating to one of the Vector
versions. They should all be self contained.

Change-Id: I6f9ef974be97f8be593cd2b79ce37c3e517d549f
2020-07-07 22:22:24 +00:00
jenkins-bot 4ae06bff0a Merge "[modern] Fix rendering of `main` element in IE10 & 11 (again)" 2020-07-07 21:54:17 +00:00
Volker E 9efd8a9268 [modern] Fix rendering of `main` element in IE10 & 11 (again)
Add 'normalize' module to modern Vector.
In I420e5315aee74f59995c358083f969b059bfe3c0 the commit message
did not reflect the actual change and we added normalize to
legacy accidentally instead of modern. This patch adds it to modern correctly.
In that commit message we said
"Legacy Vector was not upgraded to use HTML5 semantic elements,
therefore does not need the module." however on further reflection
there is benefit to keeping this in legacy as after further changes
made in I4601cc938f7a1 this will bring the same consistency in all
Wikimedia deployed skins.
Following-up I420e5315aee74f59995c358083f969b059bfe3c0

Bug: T256092
Change-Id: I3ba46cb993524e8fa0ad262ab4b6cba829498e87
2020-07-07 21:28:02 +00:00
Peter Ovchyn ac140d53e6 Select initial side bar visibility depends on user login state and defaults
Bug: T254230
Change-Id: If121b6c8187ef6b8562d135bd1c40403be3e9564
2020-07-07 21:11:02 +03:00
Translation updater bot 5b28e0b014 Localisation updates from https://translatewiki.net.
Change-Id: Ic17c717f3d8d95344b66f22fe3e542bf1c564307
2020-07-07 09:33:06 +02:00
jenkins-bot f967641628 Merge "[modern] Fix rendering of `main` element in IE10 & 11" 2020-07-06 22:03:55 +00:00
jenkins-bot 08b26f072a Merge "Call MWDebug::getHTMLDebugLog() directly" 2020-07-06 16:09:04 +00:00
Translation updater bot c999645f27 Localisation updates from https://translatewiki.net.
Change-Id: Ie034abdfbe2c408be2f796815489cc4751ac2340
2020-07-06 09:57:41 +02:00
Ammar Abdulhamid 436d959304 Call MWDebug::getHTMLDebugLog() directly
Bug: T256927
Change-Id: If4c7f66198e65546ebc15401d345fbf990cb9eb2
2020-07-03 10:39:37 +01:00
Translation updater bot cface50471 Localisation updates from https://translatewiki.net.
Change-Id: I7bb6e81f3b4bf2f7cd98a3dafe3f4041e5a2ee01
2020-07-03 08:36:29 +02:00
Vas Jaremchuk 1874e40d87 Drop wgVectorResponsive support from modern Vector
Move the body of enableResponsiveMode method into the onBeforePageDisplayMobile hook.
Replace BeforePageDisplayMobile hook with BeforePageDisplay hook.

Bug: T254378
Change-Id: I63da1b67bf2b85c644e4af196bf894efc4797433
2020-07-02 22:08:37 +03:00
Translation updater bot 13ba8ebe6a Localisation updates from https://translatewiki.net.
Change-Id: I6a53604782ced348824c048851c43a226310a6f6
2020-07-02 08:45:21 +02:00
Ed Sanders 36e91dc04f build: Update devDependencies
Applies new ESLint documentation rules

Change-Id: I7fe458cf52e98baf92f3baec2d9ff54484326673
2020-07-01 14:43:39 -07:00
jenkins-bot 9a1897be82 Merge "Use core `.mixin-clearfix()` instead of DOM element" 2020-07-01 18:45:47 +00:00
Volker E a9b35fa2e4 Use core `.mixin-clearfix()` instead of DOM element
Removing  presentational `<div class="visualClear"></div>` in process.
Only leaving in for legacy/layout.less and adding comment for future
evaluation if clearfix is continuously needed. In modern we've
got all parts of Vector in our awareness without featuring `float`s.

Bug: T254195
Depends-On: Iddf8f1dffc2d30299b89b3f4966b7fe8ee63090b
Change-Id: I673c28c2d7da4f96c31121d9aec6558e390de24e
2020-07-01 11:20:26 -07:00
Translation updater bot 6dbd7337af Localisation updates from https://translatewiki.net.
Change-Id: I9b156cb82c81981af5ae6dd22d8961ade4ed0229
2020-07-01 08:45:25 +02:00
jenkins-bot a14e22fac4 Merge "Update CheckboxHack interface for future placement of `aria-expanded` on label button" 2020-06-30 01:13:42 +00:00
Volker E df6ed76ec8 [modern] Fix rendering of `main` element in IE10 & 11
Adding ResourceLoader 'normalize' feature module to the modern styles.
Legacy Vector was not upgraded to use HTML5 semantic elements,
therefore does not need the module.
Similar to Demian's approach with reverted 'html5'
I8f1c79037d14b89982e449708f4f1cefacab4439

Bug: T256092
Change-Id: I420e5315aee74f59995c358083f969b059bfe3c0
Depends-On: I4601cc938f7a10dce4f643e22356f8c5a39e4ac9
2020-06-29 17:21:10 -07:00
jenkins-bot 09100a9a45 Merge "Revert "[modern] Fix broken rendering of `main` and `dialog` elements in IE9-11"" 2020-06-29 20:25:02 +00:00
Jdlrobson 05f00d2adc Revert "[modern] Fix broken rendering of `main` and `dialog` elements in IE9-11"
This reverts commit 3926ffa8ca.

Reason for revert: After consideration of the new task T256520 this shipping a normalize CSS feature seems like a much better approach
to solving this problem, particularly since `template` and `dialog`
are unused in our code.

Change-Id: I20391cc6c1f5a50127cd84bd7c0f17a20ab92528
2020-06-29 20:01:55 +00:00
Nicholas Ray b40c3f3743 Update CheckboxHack interface for future placement of `aria-expanded` on label button
Currently, the `aria-expanded` attribute is placed on the checkbox
element. However, since Ife287fc8c6e0d2aee5facf42d5d4308dea918ee3, the
checkbox is excluded from the accessibility tree, and this attribute
should be placed on the label button instead.

This commit prepares for future changes [1] to the checkbox hack interface
in a backwards compatible way:

* Passes button to `updateAriaExpanded` function

* Passes button to `bindUpdateAriaExpandedOnInput` function

[1] Ia2755e189babbd70945b66a1a812fc3ece40b577

Change-Id: Icc6ba994d57ea1f8050aa408aebc8c81f03d8783
2020-06-29 13:31:24 -06:00
Translation updater bot 91597ec441 Localisation updates from https://translatewiki.net.
Change-Id: Idb350347f40aa506db72d94ea0adfc2324a9dffa
2020-06-29 16:28:38 +02:00
AronDemian 3926ffa8ca [modern] Fix broken rendering of `main` and `dialog` elements in IE9-11
Adds the new ResourceLoader feature_file 'html5' to the modern styles.
The legacy layout was not upgraded to use HTML5 semantic elements,
therefore does not need these.

Bug: T256092
Depends-On: I3e4abb5fc8e55b7138fc1c86543777c845bed88e
Change-Id: I8f1c79037d14b89982e449708f4f1cefacab4439
2020-06-26 17:17:07 +00:00
jenkins-bot 9aee83fbb8 Merge "[refactor] Drop form-id template property" 2020-06-26 11:50:32 +00:00
jenkins-bot d02a2d1d7e Merge "[refactor] encapsulate footer data in single function" 2020-06-26 11:42:30 +00:00
Nicholas Ray bfc95effdb Move sidebar into header to improve tab order
* Moves the sidebar into the header so that user can tab directly from
the sidebar button into the sidebar (when open).

* Because the sidebar is absolutely positioned inside the header and the
header applies a top-margin, we need to adjust the top position
calculation for the sidebar.

* Removes the checkbox from the accessibility tree through CSS `display:
none;` instead of HTML attributes.

* Given that the checkbox is not able to receive focus, the
`#mw-sidebar-checkbox:focus ~ .mw-header .mw-checkbox-hack-button` CSS
rule is obsolete and moved instead to the label button. An additional
outline: 0 rule was added to remove the dotted outline that Firefox
applies.

* Makes the "Skip to navigation" jump link point to the sidebar now.
After the sidebar has been tabbed through, the rest of the navigation
can be tabbed to.

Bug: T246420
Change-Id: I981da3650854568bb9cfbf3c6c59e7625e7d094c
2020-06-25 16:55:34 -06:00
jenkins-bot 1de7f38f4f Merge "[less] Merge 'content.less' and 'typography.less'" 2020-06-25 20:29:16 +00:00
jenkins-bot 7c6d6372c7 Merge "Put ARIA roles and attributes into context" 2020-06-25 19:20:34 +00:00
Volker E d2a0ae588a [less] Merge 'content.less' and 'typography.less'
This separation introduced in I8dbc29b7a19f7f doesn't work as well
as expected. All but strictly `.mw-jump-link` rule are typographic
rules.
In the current mish-mash of when to apply typographic styles only to
article content (`.mw-body`, `mw-body-content`, `.mw-parser-output`,
`#mw-data-after-content`?) inherited from core, it makes looking up
and finding issues between typographic styles harder, and leads to
unnecessary complexity instead of clean separation of concerns.
This question surfaced in where would link styles belong originated in
T213778.

Change-Id: I521185d505d8688f076dd09acbedb22e801f772e
2020-06-25 18:45:19 +00:00
jdlrobson 87f08dcf5b [refactor] Drop form-id template property
In preparation for using the SkinMustache class and
core buildSearchProps method [1],
and to reduce the risk of that change,
move the ID from the template
data to the template itself:

[1] https://github.com/wikimedia/mediawiki/blob/master/includes/skins/SkinMustache.php#L93

Change-Id: I8d62ea6b1adf6ef0cbfa20e1876806eba70b169f
2020-06-25 18:21:38 +00:00
jdlrobson a6940fe355 [refactor] encapsulate footer data in single function
Move the VectorBeforeFooter hook code into its own function
This adds consistency with the getMenuData function.

Change-Id: I6483fd200747852246e9cc587f57b1a21a2f0a44
2020-06-25 18:20:01 +00:00
Volker E e9a48021c2 Put ARIA roles and attributes into context
Hide checkbox from AT by adding `aria-hidden="true" to checkbox
and disable tabbing in via tabindex="-1". Both attributes are temporarily
added and might be removed when the checkbox receives `display: none` in
upcoming patch.

Add
- `role="button"`,
- `aria-controls` and
- `tabindex="0"
to button turned label for ATs via `role` definition, make it focusable
and use `aria-controls` for connection to sidebar id.

Bug: T254851
Change-Id: Ife287fc8c6e0d2aee5facf42d5d4308dea918ee3
2020-06-25 11:13:58 -07:00
Volker E 16abb4ff84 Remove unused `mw-checkbox-hack-target` class
Even if we were to use it, we might sign up for side-effects when
more than one checkbox hack is used per view.

Change-Id: Ic31e48a4bf3e39e903300acd522b7af0391fafa9
2020-06-24 17:31:11 -07:00
AronDemian 0e5cd53163 Make search jumplink's target the search input instead of the container
The exact search input element as target focus the searchbox. It saves 
AT users a user action, while still remaining read out due to connected 
label in screen readers.

Change-Id: I83003fbbb5b6903038d1ca8b323302cb8f52e841
2020-06-24 20:45:25 +00:00
Translation updater bot bee2dff1a6 Localisation updates from https://translatewiki.net.
Change-Id: I8ff936e553971ec195e9eae2822cc26db702973f
2020-06-24 08:31:03 +02:00
jenkins-bot 6838a29eff Merge "[modern] Move sidebar checkbox above content, sidebar button into header" 2020-06-23 16:21:53 +00:00
Translation updater bot 2f3986f501 Localisation updates from https://translatewiki.net.
Change-Id: Icb8e5296143b3023dca4efcda605e4af7e049c48
2020-06-23 08:55:00 +02:00
AronDemian 2ccc975f0a [modern] Move sidebar checkbox above content, sidebar button into header
- Sidebar's checkbox hack CSS selectors adjusted.

Bug: T246420
Change-Id: I1cc1ad4eb1938c4931b1ae881b3878fbd6bb7a39
2020-06-23 07:09:38 +02:00
jdlrobson 823c3f0bb9 Separate languages portal from other portals in sidebar
In preparation for moving the languages out of the sidebar (T256023)
and to facilitate experimentation in the Universal Language Selector
extension, we should separate the data from the languages portal
from other portals.

Note the languages portal has traditionally appeared at the bottom
of the sidebar, so this can be done safely in the same way we
introduced data-portals-first

Change-Id: I4be06278ec256cc55aee36c2946339fb49d21b46
2020-06-22 15:28:02 -07:00
Translation updater bot c34bcc71db Localisation updates from https://translatewiki.net.
Change-Id: I14df1edcd28fa331d195a9ccedc762cce2b431ca
2020-06-22 08:47:53 +02:00
Taavi Väänänen 9cd4a17c6c Drop unused override for deprecated method SkinVector::shouldPreloadLogo
The parent method was deprecated in MW 1.32 and this override has been unused
ever since.

Bug: T255474
Change-Id: I811f7b3a6dba0bb1eebf36ed52e363affc8511d2
2020-06-21 16:28:06 +03:00
Translation updater bot 94a9238fc2 Localisation updates from https://translatewiki.net.
Change-Id: I71631acc32b4a50877693d68198926555209f425
2020-06-19 08:44:40 +02:00
Ammar Abdulhamid a04fc71f30 Vector: Use OutputPageBodyAttributes hook to add body attributes
This means dropping usage of Skin::addToBodyAttributes method
from Skin to pave way for its deprecation/removal.

The parent method is no-op, so this will not create duplicate with
the hook

Bug: T255698
Change-Id: Ieeccdd9ec3fdb3e3fc1a3016cfa87e0b8364aa3a
2020-06-18 14:30:40 +01:00
Translation updater bot 15a584cc02 Localisation updates from https://translatewiki.net.
Change-Id: I706a07cfb14f35dd6423a87335ea26fdc0c58573
2020-06-18 08:40:55 +02:00
jenkins-bot 72afb66fb8 Merge "[less] Move `margin` and `padding` on `body` only" 2020-06-17 00:08:47 +00:00
AronDemian 772fb26683 Restore Watchlist star
Fixup for I8669d402b6b757cd5bf59a5e0df377b6023b0700:
Applied `.vector-tabs` selector instead of `.vector-menu-tabs`
Class `vector-menu-tabs` is added by VectorTemplate.php#383

Bug: T255574
Change-Id: Iae8176221662aa47dcd69123e9dd6a9d6693cd42
2020-06-16 19:09:44 +02:00
Translation updater bot cbc930eefd Localisation updates from https://translatewiki.net.
Change-Id: Iaab3c3ecdadac2edcc30121c59930ce84a335ca5
2020-06-16 08:37:47 +02:00
jenkins-bot 7ec918c3b8 Merge "[less] Remove default, already inherited user-agent properties" 2020-06-16 00:18:35 +00:00
Volker E 5691e4c7c4 [less] Move `margin` and `padding` on `body` only
Both properties are needed for normalizing different browsers (`padding`
infamous on older Operas) and are only needed on `body`.

Change-Id: I661869ed43491824cbfe86dc36e39f97e29ccf8a
2020-06-15 17:05:54 -07:00
Volker E 922daba0a9 [less] Remove default, already inherited user-agent properties
Also describe #simpleSearch reasoning clearer.

Change-Id: Ief3ebe9b1f1c519d6424dd8495a3522889efbbbc
2020-06-15 16:10:25 -07:00
jenkins-bot a2864cb5ef Merge "[less] Normalize focus styles in Blink based browsers" 2020-06-15 22:44:28 +00:00
Volker E 97566a026b [less] Amend subtle color to WikimediaUI Base default
Replace former non-base variables color with one from the standard
variables files in preparation for iit's usage in core and Vector.
Color is still confirming to WCAG level AA contrast ratio.

Bug: T254474
Change-Id: I06d981f05554b6429d11f19b8f5848ba5a7441a0
2020-06-15 22:20:41 +00:00
Volker E 41b0b6c434 [less] Normalize focus styles in Blink based browsers
Normalizing focus styles in Blink based browsers and aligning to
Design Style Guide components.

Bug: T245887
Change-Id: I4d571dcbbada5edffbfee631c8b438cf7c8d273a
2020-06-15 22:20:30 +00:00
Translation updater bot 710c19dbd9 Localisation updates from https://translatewiki.net.
Change-Id: Ie606dea9d1a24264551380580feb351944d5e02e
2020-06-15 08:43:14 +02:00
jenkins-bot 7786fd9d1f Merge "[less] Extract cross-browser normalization rules into new 'normalize.less'" 2020-06-12 22:40:20 +00:00
jenkins-bot 6d012b93b0 Merge "Vector: Drop support for SkinTemplateToolboxEnd" 2020-06-12 21:09:25 +00:00
Volker E 35b2f65914 [less] Extract cross-browser normalization rules into new 'normalize.less'
Change-Id: I23da024b47020212173380315acd37210b924327
2020-06-12 20:33:46 +00:00
Ammar Abdulhamid aa1f661276 Vector: Drop support for SkinTemplateToolboxEnd
No longer called by any deployed code.

Bug: T253783
Change-Id: I01b03983cb7109c61c2739bd26fd5662105e390e
2020-06-12 21:24:29 +01:00
Ammar Abdulhamid 14e794b109 Simplify Vector buildSidebar() method
Follow up: I76e3bea

Bug: T253416
Change-Id: Ie98a32dfd6c5675835cfc0fa8ab4da9a33409600
2020-06-12 19:05:03 +01:00
AronDemian 22a8b6c5d5 Fix dropdown menu checkbox hack's CSS selector
`ul.vector-menu-content-list` was wrapped into `div.vector-menu-content`, thus becoming the sibling of
`input.vector-menu-checkbox`:
https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/589395/39/includes/templates/Menu.mustache#15
Rename of `.vectorMenuCheckbox` to `.vector-menu-checkbox`:
https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/597849/7/includes/templates/Menu.mustache#7

Follow-up to: Id59234aa6b822a24848386bdc04d8d7ed37ca145 and I00b4d2fd795195cd9c8add650a3b3cafdced5465

Bug: T255069
Change-Id: I299f4648acf83d2abdad274851e0960fe09a70b1
2020-06-12 14:06:27 +02:00
Translation updater bot ed5b113ce9 Localisation updates from https://translatewiki.net.
Change-Id: Idc702e9f6c43a567fd25d0b91a974e2afae11897
2020-06-12 08:40:31 +02:00
libraryupgrader 74e19abeec build: Updating npm dependencies
* stylelint-config-wikimedia: 0.9.0 → 0.10.1
* webpack: 4.42.1 → 4.43.0
  * https://npmjs.com/advisories/1179
* markdown-to-jsx: 6.11.0 → 6.11.4
  * https://npmjs.com/advisories/1219

Change-Id: I9fcae139a55916c1ad881583361f41b61d5fe641
2020-06-12 05:51:50 +00:00
jenkins-bot f92df81fc5 Merge "[less] Put element selectors in the right place" 2020-06-12 00:07:22 +00:00
Volker E 0b1abe7a03 [less] Put element selectors in the right place
Element selectors need to come before class selectors.

Change-Id: I278adf4c5eb19e64fd0e2afdd4416dd45077389f
2020-06-11 16:41:44 -07:00
jenkins-bot 888e710976 Merge "Replace deprecated classes with modern ones" 2020-06-11 22:57:13 +00:00
jenkins-bot 58aa874951 Merge "Vector should not call BaseTemplate::getToolbox" 2020-06-11 21:27:50 +00:00
jenkins-bot a50bb109ae Merge "Pin bundlesizes to their exact values" 2020-06-11 21:15:28 +00:00
Volker E 7e7bdb4f54 Replace deprecated classes with modern ones
Following-up I00b4d2fd795195cd9c8add650a3b3cafdced5465
it's now time to settle on `.vector-menu*` classes.

Change-Id: I8669d402b6b757cd5bf59a5e0df377b6023b0700
2020-06-11 14:05:15 -07:00
Ammar Abdulhamid f4b548250d Vector should not call BaseTemplate::getToolbox
Because the method will soon be deprecated, and by calling it, it can
override hook modification on 'nav_urls' and 'feeds' arrays.

Bug: T253416
Depends-On: I3d7aa93bea47131371e58d2cd2e2d81fd1d7421e
Depends-On: Iab67e1430d55ef9bbf01bfb4e64dd5e36b954eda
Depends-On: I05dae74b5071ffc668c3569566239052575edfb9
Change-Id: I76e3bea5403e3a6994b911017e2254307588499c
2020-06-11 20:19:32 +00:00
jenkins-bot b577f8b73c Merge "Add bundlesize test for ResourceLoader modules." 2020-06-11 20:14:48 +00:00
jdlrobson 0c91442998 Pin bundlesizes to their exact values
Let's not let any of these values increase without us knowing

Bug: T244276
Change-Id: If6e88389846cd9a51faba4b074cf1054914e2953
2020-06-11 19:58:10 +00:00
Jan Drewniak a3acacc1a4 Add bundlesize test for ResourceLoader modules.
Adds a bundlesize test that measures the bytesize of
individual ResourceLoader modules.
This test depends on a running mediawiki instance as well as
the $MW_SERVER and $MW_SCRIPT_PATH environment variables.

ResourceLoader modules are fetched from a URL and piped
into a bundlesize command based on a custom configuration file.

The test can be run with `npm run test:size`.

Bug: T244276
Change-Id: I4f4534921ccbc6bd4f99229c8dd36b1279dde640
2020-06-11 19:51:20 +02:00
jdlrobson a6dd9b25c5 Model indicators as their own template rather than a block of HTML
This reverts commit be3843e2a3 and
makes a few corrections.

Bug: T251212
Change-Id: Icb17f94e7fa4a70b0a0ea0b9cb9a12f2e727946f
2020-06-09 14:30:08 -07:00
jdlrobson 31fd25b43d Move html-printtail template variable to SkinVector
As part as our move away from VectorTemplate construct html-printtail
using Skin methods. This copies the logic in
BaseTemplate::getTrail

Bug: T251212
Change-Id: I6a0c0b65f59fcf1f1550ec20d106f0143f681935
2020-06-09 14:28:23 -07:00
jenkins-bot 23393d3685 Merge "Fix portal heading border in Safari" 2020-06-09 20:54:26 +00:00
jenkins-bot 407705f413 Merge "Use semantic HTML5 elements where applicable" 2020-06-09 19:48:20 +00:00
Stephen Niedzielski 3003724a3a [fix][Less] disable sidebar animations on page load
There's a longstanding Chrome bug that causes CSS transitions to show in
their terminal states. This patch works around the issue by limiting
transitions to JavaScript users only via the `client-js` class which is
added to the root `html` Node some time after page content loads. The
effect is a better overall experience for everyone but transitions
unfortunately no longer appear for no-JS devices.

I am unable to reproduce this issue in Vector's configuration. This
patch should only be merged as a last resort.

Bug: T246419
Bug: T234570
Change-Id: Ifcb2bf1fddb85113a4858b7a210ded3954952e6e
2020-06-09 12:18:59 -06:00
Volker E 4466eb3a2f Use semantic HTML5 elements where applicable
`[role]`s are retained for now as they are harmless although
redundant when added to HTML5 elements.
`role="contentinfo"` on `footer` is a special case to address
a known VoiceOver bug.

Bug: T66477
Change-Id: I540d9a41fc7fd580c5d61b90480e8745ae145850
2020-06-09 17:43:45 +00:00
Translation updater bot 14790f2ea8 Localisation updates from https://translatewiki.net.
Change-Id: I2bb774d5d74c5fe7fdcd00c787c945ee8847e5e2
2020-06-09 11:10:04 +02:00
Volker E 3888b4075e Fix portal heading border in Safari
By using `rgba()` instead of `transparent` the color gradient
calculation works as expected in Safari as it does in all
other browsers.
Also using same distance 33%/66% for gradient start and end.

Bug: T254489
Change-Id: I64ec6aa51a9ea931a2351c9c7a9ffaf28c8d130b
2020-06-08 14:02:09 -07:00
jenkins-bot b2f4433d39 Merge "Drop VectorUseSimpleSearch config flag" 2020-06-08 17:55:22 +00:00
Translation updater bot 89db843149 Localisation updates from https://translatewiki.net.
Change-Id: Ic8eb16f1e9348020559630d7e8fc724230e257e5
2020-06-08 08:57:09 +02:00
AronDemian abf886d2b9 Drop VectorUseSimpleSearch config flag
For compatibility with gadgets always outputs the simpleSearch ID.

Bug: T254620
Change-Id: I0ed456f90f066129016f798a3ce65ba52bfc11e8
2020-06-06 23:16:07 +02:00
bkudiess-msft 3eea85aad9 Fixes "Contributions" control gets Overlapped in 200% Zoom mode
Bug: T253599
Change-Id: I37fa8b75982a2347bced878ae83e10e1af61360c
2020-06-05 00:29:18 +00:00
Umherirrender 88a3c354b3 build: Updating composer dependencies
* php-parallel-lint/php-console-highlighter: 0.4.0 → 0.5.0
* php-parallel-lint/php-parallel-lint: 1.0.0 → 1.2.0
* mediawiki/minus-x: 1.0.0 → 1.1.0
* mediawiki/mediawiki-codesniffer 29.0.0 → 31.0.0

Additional changes:
* Replaced "jakub-onderka" packages with "php-parallel-lint".

Change-Id: Idd53da60edc8521ca2915299d5ea1dd8606e0878
2020-06-04 18:48:01 +00:00
jenkins-bot 802ec0988b Merge "[fix][RTL] flip menu collapse button icon" 2020-06-04 03:47:48 +00:00
Stephen Niedzielski a0d2c2497b [fix][RTL] flip menu collapse button icon
Fix the icon button directionality in right-to-left languages.
Previously, the button was hardcoded to support left-to-right only.

- Replace the skin.vector.icons' `.mw-ui-icon-wikimedia-{name}:before`
  `selector` in skin.json with a placeholder, `{name}`. I don't think
  this selector should be needed but it seems to be erroneous not have
  one. I believe this issue of wanting a null selector was encountered
  in Minerva or MobileFrontend but am unable to locate the past
  discourse.

- Add check and unchecked menu button selectors to skin.json that set
  the appropriate background image. This shards some of the styles out
  of Less and into ResourceLoader-land but it's worthwhile.

- Revise the name of horizontal collapse icon to describe its form not
  function, "collapseHorizontal" to "chevronHorizontal". This has been
  an established convention that was missed a couple patches back.

- Add a flipped chevronHorizontal for RTL. I used Inkscape to do the
  flip and tried to match the style of the original by hand. Feel free
  to edit further.

- Drop the now unnecessary icon flipping JavaScript and initial Mustache
  class. This enables a real CSS-only solution for the icons.

Bug: T246419
Change-Id: I60f65b3c595bf18d309b667d9a0b066691b90c97
2020-06-03 17:09:38 -06:00
Jdlrobson be3843e2a3 Revert "Model indicators as their own template rather than a block of HTML"
This reverts commit 0536bda116 which had a few problems. Thanks Timo for pointing them out.

Change-Id: Ie43a2068fdb14cc7c65eb670e93787f1fe12c6b3
2020-06-03 19:41:15 +00:00
jdlrobson 0536bda116 Model indicators as their own template rather than a block of HTML
Bug: T251212
Change-Id: I44b1e17f21112896d2bef54d04f17df861bb3dbb
2020-06-03 18:25:51 +00:00
jenkins-bot ed0fc73f75 Merge "Avoid using `get` indirection in VectorTemplate" 2020-06-03 18:15:53 +00:00
jdlrobson 6022b032ea Avoid using `get` indirection in VectorTemplate
Begin our journey away from BaseTemplate by
moving VectorTemplate code to SkinVector. In future all
methods will live here but to lower risk, I've only targetted
the get method.

Bug: T251212
Change-Id: I58c2ff5edaacc2d5e45492c121cf0f87d08b623f
2020-06-03 17:53:13 +00:00
Volker E fd250975c4 Fix misconception on icon coloring
It's advisable to rely on default icon color and set it's color
by opacity. With that we've got a better playing field to respond
to user interaction with icon color changes, not relying on
several icons at once for different states and also being
backwards-compatible for a variety of browsers.

Change-Id: Iaff869774007ed962104d704103f0392a3516f4f
Bug: T246419
2020-06-02 23:06:49 -06:00
jenkins-bot ba05e760b9 Merge "[dev] Remove outdated selector now that cache has expired" 2020-06-01 22:08:45 +00:00
Volker E 4b30bceda3 [dev] Remove outdated selector now that cache has expired
Change-Id: Ia3f914c96f03e3c70c3cb4c8d7de96f34cb4b1f5
2020-06-01 21:45:08 +00:00
Stephen Niedzielski ca2b1a6972 [config] Change the sidebar's default state to open
The sidebar in Latest mode supports collapsing and expanding (or hidden
and visible). Initially, expanded is wanted.

Bug: T246419
Change-Id: I0777f58fb9441aa834a29afa1b52185ad1b58ca7
2020-06-01 21:44:44 +00:00
jenkins-bot 7f981d35e3 Merge "Cleanup: Standardise msg keys" 2020-06-01 21:34:21 +00:00
Stephen Niedzielski 909cbaac11 [fix][a11y][Less] use percentage for sidebar button icon size
The sidebar button's icon previously used pixel dimensions while the
button itself uses ems. This caused the button to scale with the user's
font such that the icon is distorted and unrecognizable.

This patch drops the vertical margin and sets the icon height to 100%.
The width is proportionally constrained so the effect is that the icon
may grow with the button but the margin stays consistently at 12px.

This approach deviates from other items in the header (globe,
notifications) and tab bar (watchstar, search icon), that were 
historically implemented without the user text zoom capability in mind.

Bug: T246419
Change-Id: I2ae46fd49dcb619004587b8b3560b9115c3bdaaa
2020-06-01 21:08:02 +00:00
jdlrobson e84809c44b Cleanup: Standardise msg keys
Keys prefixed with msg- should relate to i18n keys. Fix the existing
template variables where that's not the case.

Change-Id: I33587a09a9803a3667eaeea95ce3e1753439f413
2020-06-01 21:05:56 +00:00
jenkins-bot a4a3c17a99 Merge "Cleanup: Use consistent naming in SearchBox" 2020-06-01 20:46:23 +00:00
jdlrobson df2895f610 Cleanup: Use consistent naming in SearchBox
We have conventions about template variable naming.

* Drop camel case
* Prefix message keys with `msg-` followed by message key name
* Prefix HTML with `html-`

Change-Id: I34f04f3d217dc8caa4dcc29e60058951a6555b1e
2020-06-01 20:11:14 +00:00
AronDemian bdffc10fbb Fix bug: "dancing vector tabs"
Related: I0672b05bc3eb9564e1943ee8099bafb959dc474d
"Cannot rename `.emptyPortlet` to `.vector-menu-empty` yet." This is the JS part.
Given the regression, we can't make this rename just yet. Restore
the old class, we'll deal with this rename later.

Bug: T253819
Change-Id: Ia6bb33be807bfe98de09ce0b61924da232fc9941
2020-06-01 20:02:28 +00:00
Umherirrender ce79b63436 build: Bump phan to 0.10.2, remove taint-check
Change-Id: Id5853991646a39bf2e5d1670f3b0f9c7c9ec9f7e
2020-06-01 22:01:25 +02:00
Translation updater bot 0df5ca2313 Localisation updates from https://translatewiki.net.
Change-Id: I6be94dd96c01b1037bdaaef298b1d1ad34283396
2020-06-01 10:12:16 +02:00
jenkins-bot 1bdfdac199 Merge "Naming convention using 'skin' as entrance point" 2020-05-29 18:00:24 +00:00
Translation updater bot 035a94c7cc Localisation updates from https://translatewiki.net.
Change-Id: Icfbc0038f3e19570b31c3cdccdb814bdc9667d55
2020-05-29 08:35:03 +02:00
Volker E 4200a8665c Naming convention using 'skin' as entrance point
Using 'skin' as entrance point files, similar to already existing
convention in MediaWiki land with 'skin.json' or 'SkinVector.php' as
example in Vector skin. Replacing Apache inspired 'index' convention.
Also renaming legacy to 'skin-legacy' to be clear on file base that it's
a modification of 'skin'.

Bug: T249073
Change-Id: Ief1c469724d4ffe238d307407c3ddb46f2e1abfa
2020-05-28 20:58:01 -07:00
jdlrobson 56f7520120 Hotfix: Cannot rename emptyPortlet to empty-portlet yet.
Given the regression, we can't make this rename just yet. Restore
the old class with the documentation block that should have been there
before. We'll deal with this rename later.

Bug: T253912
Change-Id: I0672b05bc3eb9564e1943ee8099bafb959dc474d
2020-05-28 16:01:38 -07:00
jenkins-bot f3fa7d3298 Merge "Horizontally and vertically align menu icon to design templates" 2020-05-28 19:14:02 +00:00
Volker E feb025d8a1 Horizontally and vertically align menu icon to design templates
Put icon on one line with sidebar contents horizontally and with
logo vertically.

Bug: T246419
Change-Id: I6876e6f39a5f804ad4459cd9721c796ae7a8e3fb
2020-05-28 11:28:59 -07:00
Translation updater bot 896c6358f9 Localisation updates from https://translatewiki.net.
Change-Id: Ide0434c22d4548f662672ef4223c756a97c3da2d
2020-05-28 08:44:13 +02:00
jenkins-bot 15a30c26f8 Merge "[feature] add menu button to toggle panel visibility" 2020-05-28 02:57:14 +00:00
Stephen Niedzielski 5195f5fd67 [feature] add menu button to toggle panel visibility
Add a menu button that toggles the panel's (also referred to as a
sidebar) collapse state. When the screen is wide enough, animate the
transition.

The menu icon from OOUI is copied into Vector to avoid two
ResourceLoaders modules (collapseHorizontal icon isn't ready for
inclusion in the OOUI icon pack and ResourceLoaderOOUIIconPackModule
doesn't support images).

Additional polish and collaboration is needed but this patch fulfills
the scope of its referenced task.

Bug: T246419
Depends-On: I8e153c0ab927f9d880a68fb9efb0bf37b91d26b2
Change-Id: Ic9d54de7e19ef8d5dfd703d95a45b78c0aaf791a
2020-05-28 02:14:13 +00:00
jenkins-bot 6a1458eada Merge "Reduce distribution of legacy classes" 2020-05-26 21:01:55 +00:00
jdlrobson cb7ca11274 Reduce distribution of legacy classes
The .menu class historically only needs to apply to dropdowns.
the .vectorMenuCheckbox is inconsistent with the other classes on the
menu so we should begin its deprecation.

Bug: T253329
Change-Id: I00b4d2fd795195cd9c8add650a3b3cafdced5465
2020-05-26 20:22:08 +00:00
jdlrobson d49eb1e0ff Merge EmphasizedSidebarAction.less into Sidebar.less
The opt in link is part of the sidebar in the current modern version
of vector. The legacy sidebar has been split out and frozen. For this
reason I think it makes sense to move the styles for the button into
the sidebar stylesheet.

The class name is renamed to reflect the hierarchy. We are not using
BEM but we are using hyphens to describe location so the newly proposed
names `mw-sidebar` and `mw-sidebar-action` seem more applicable than
the previous generic class names.

This doesn't impact caching given anonymous users cannot see the opt
in/out link.

Change-Id: I2991e941592a0678f40c73bb6daeab71ada6b7c3
2020-05-26 18:53:25 +00:00
jdlrobson fbdda96d22 Drop unnecessary phan suppression
This is no longer needed with the changes in core
(Ie33f85a77299da8f3b98ab8b363761d1f8277708)

Change-Id: I103ab2d8e9f3aa65550823829b60ad9a0a04b7eb
2020-05-26 11:03:08 -07:00
jenkins-bot 30047cc70e Merge "BaseTemplate:makeListItem is deprecated" 2020-05-21 21:31:39 +00:00
Translation updater bot 582af18b97 Localisation updates from https://translatewiki.net.
Change-Id: Iefd91085b49ab95feb21f92fb61bc61103e3d1df
2020-05-21 08:21:40 +02:00
jdlrobson 5b31c49e15 BaseTemplate:makeListItem is deprecated
Use SkinTemplateNavigation hook instead and copy the collapsible
behavior to the menu function

The code inside getSkinData that checks VectorUseIconWatch is
redundant as it duplicates checks already inside
SkinTemplate::buildContentNavigationUrls
It is enough to simplify check whether watch or unwatch is
present in the array.

Bug: T251212
Change-Id: If6b10b0ddcbd4b21dd13a2813e60b604c3a23415
2020-05-19 16:02:01 -07:00
jenkins-bot 35b0675c5d Merge "[dev] use skin name constant instead of string" 2020-05-18 22:41:13 +00:00
jenkins-bot 048dc5da93 Merge "Make class attribute optional when empty" 2020-05-18 22:39:48 +00:00
Stephen Niedzielski 4d96738c7b [dev] use skin name constant instead of string
Use centralized symbol for "vector" instead of hardcoded string.

Change-Id: I44d6b3e64cd424b6624ce5c050616e5bb281fbc8
2020-05-18 14:56:13 -06:00
Translation updater bot 8eb631b05f Localisation updates from https://translatewiki.net.
Change-Id: Idc822f530dedf8aa6490c9069f46d6db38332f9b
2020-05-18 08:33:42 +02:00
Volker E eabfe6d16e Make class attribute optional when empty
Change-Id: I5a9d81f650dfa4178e7b1e4e835ef5efb5acacf0
2020-05-17 17:37:57 -07:00
DannyS712 6ac9079202 VectorTemplate: SkinTemplateToolboxEnd hook isn't deprecated
Bug: T252906
Change-Id: I6eedc41d02b9f64cefb9c8d749226489ada6aae2
2020-05-15 20:56:24 +00:00
Stephen Niedzielski 0fac9045ac [dev][Legacy] split sidebar Mustache and Less
Split out the sidebar in advance of significant Latest mode only
changes.

The Less split was made by adding a new Sidebar.less file that imports
the Legacy implementation.

The Mustache split was made by file copying the existing implementation
into a legacy/ subfolder. Both the Legacy and Latest implementations
were then stripped of templates not applicable to their modes.

These changes are aligned with the splits for JavaScript.

Bug: T246419
Change-Id: Ib82769ea16bfc09efe8a088220aab55bdde0d381
2020-05-15 18:05:30 +00:00
jenkins-bot 9d9ed35629 Merge "Show empty language portal if HTML has been added after portal" 2020-05-14 23:05:32 +00:00
jdlrobson 4086d850e5 Show empty language portal if HTML has been added after portal
Bug: T252800
Change-Id: Iefe0ed2728b6fd08da8f3e58edbfaae7d27d1a2d
2020-05-14 15:25:38 -07:00
Volker E 3cb19a771e Increase footer font size slightly to `12px`
Up from `11.2px` in order to address possible legibility and
accessibility issues.

Bug: T252267
Change-Id: I6f3564c065eae25ed2386c15e64bfa6e0cea311c
2020-05-14 15:19:50 -07:00
jdlrobson 0846c8463d Allow plain text labels in side bar
Follow up to I2549af3e24e5d51c09e9a88ca50a0d9b2e154c3f

Bug: T252727
Change-Id: I91e6e535e2da672b41d31cee709084beb87af47a
2020-05-14 08:23:49 -07:00
Volker E de788c6446 [dev] Remove `white-space` attribute from personal menu
Removing `white-space` on `.vector-menu` as we couldn't find any
use case of this any more and it's breaking DRY-ed up Menu in portals on
modern Vector.

Bug: T252717
Change-Id: I87a64e64c02a6690a7ecea93ce7712619457d575
2020-05-13 15:22:10 -07:00
jenkins-bot 4fb5f4e903 Merge "Show half-star when the page is temporarily watched" 2020-05-13 19:28:16 +00:00
jenkins-bot 8950f60eba Merge "[modern] Center the logo tagline beneath the wordmark" 2020-05-13 17:55:37 +00:00
Translation updater bot 640c894a71 Localisation updates from https://translatewiki.net.
Change-Id: I8bbe21385d98372dbc56845e8ce77ffad40d7452
2020-05-13 08:44:57 +02:00
AronDemian 450f7d237a [modern] Center the logo tagline beneath the wordmark
Bug: T252430
Change-Id: If16fa9e70c52a8cb51b4f297d0ed7db8e72cebcb
2020-05-13 05:33:49 +00:00
jdlrobson e048c2a729 Refactor: Simplify and standardize menu definitions
* Standardise the menu markup. This means all menus in Vector will now
be wrapped in a div and will have a heading.
* All menus now have the vector-menu class. Styles specific to personal tools
are moved to layout since these are concerned with placement.
* The ul class will always have menu class.
* emptyPortal class is generalised into vector-menu-empty for consistency
with other classes and moved from common.less into Menu.less
* Standardise hooks - BaseTemplateAfterPortlet can now be run on any
menu.

Changes to HTML:
* lang and dir attributes are moved from the h3 up to the div element
.vectorTabs, .portal(s) and #p-personal now has hidden span element inside h3
* for non portals ul.menu" is now wrapped in a div.vector-menu-content

This change does impact the following CSS selectors which will need to be updated:

I see no matches for these selectors in code search.

```
 #p-variants > ul
 #p-namespaces > ul
 #p-personal > ul
 #p-views > ul
 #p-cactions > ul

```
Using global-search.toolforge.org I see one match
for p-variants, 26 for p-namespaces, 30 for p-personal,
36 for p-views and 7 for p-cactions. I see this as acceptable
breakage provided a user notice is sent out which it has been
(T252447)

Bug: T249372
Change-Id: Id59234aa6b822a24848386bdc04d8d7ed37ca145
2020-05-12 15:17:38 -07:00
jenkins-bot 4e661112e8 Merge "[dev][Legacy][JS] Split Legacy mode JavaScript into new ResourceLoader module" 2020-05-12 22:05:18 +00:00
Stephen Niedzielski 14abeb0c2f [dev][Storybook] move to start script; report errors not status
Storybook seems to be our primary stackless development workflow. Move
the `storybook` script to `start` to support the standard `npm start`
command expected in every NPM repo.

Debugging Storybook tooling is the rare case that informational messages
(perhaps even more verbose than default) are wanted. Feature development
is the common workflow that should be optimized for.

Storybook's design philosophy seems to favor incredibly verbose output
by default, both for the CLI and the [browser console]. This is at odds
with Unix's rule of silence, sometimes expressed as "silence is golden."
That is, only report warnings and errors unless told otherwise.

This patch reduces the verbosity of the Storybook [CLIs] as able and its
setup script:

- Only report warnings and errors while building.
- Suppress build informational output when launching.
- Only report curl errors, not progress.

[browser console]: https://github.com/storybookjs/storybook/issues/8461
[CLIs]: https://storybook.js.org/docs/configurations/cli-options/

Change-Id: Ie38ae14e304f7f88f445c0c0fb3f2fbba49d134a
2020-05-12 13:42:01 -07:00
MusikAnimal ca71f762fa Show half-star when the page is temporarily watched
Bug: T248495
Depends-On: I61b24fddf6aaf5233f426602bfa1cc4fafce942b
Change-Id: I712af9a0646d22c3b7873bbf77dba363c5770181
2020-05-12 00:06:16 +00:00
Volker E 9581bdaa09 Revert "Use semantic HTML5 elements where applicable"
This reverts commit 125af06692.

Change-Id: I21fa5460017235c43f6ccf0ce815364d50bf1e34
2020-05-12 00:05:30 +00:00
jdlrobson 4679efc000 [build] Disable phan rule (for now)
This unblocks reverting HTML5 elements.
A longer term fix is brewing in
If6b10b0ddcbd4b21dd13a2813e60b604c3a23415

Change-Id: I85659d22dc2f2a803c2a7b1e57033b18900353df
2020-05-11 23:09:24 +00:00
Stephen Niedzielski 108393daf1 [dev][Legacy][JS] Split Legacy mode JavaScript into new ResourceLoader module
The collapsible sidebar adds a new JavaScript dependency and behavior to
Latest mode only. There are a number of ways of to make the deviation
but we think now is the time to start splitting by module.

This patch adds a new ResourceLoader module, skins.vector.legacy.js, and
moves the existing JavaScript into it. The old module, skins.vector.js,
has been given a currently matching index.js entry point that references
the collapsible tabs' files by reaching across directories. It's not
quite ideal as usually ResourceLoader modules and directory structures
strive for 1:1 correspondence but this patch makes the bold assertions
that it's better than a file copy, better than a new
"skins.vector.common.js" ResourceLoader module, more compatible than a
symlink, and the existing jQuery tabs implementation will eventually be
replaced in Latest mode.

A "Legacy" module was added instead of a "Latest" with the assumption
that active development should generally be considered "latest" and
Legacy an intentional distinction.

Bug: T246419
Change-Id: I9980403f1ee5897c27ac0331f0b51a5bcbdff778
2020-05-11 15:29:56 -06:00
Translation updater bot 185d9b28df Localisation updates from https://translatewiki.net.
Change-Id: If61268a2a60aa54f08445d58f9967eb7d85e2505
2020-05-11 08:41:47 +02:00
AronDemian c42739a200 [legacy] Merge 'background-gradient.less' into 'layout.less'
Bug: T249073
Change-Id: Icb4ef65fbc72b5793061d97194ef4b88836c0fe2
2020-05-08 20:05:56 +00:00
AronDemian 015bfa74d9 [modern] Move up color and background-color rule from content to body
Bug: T251583
Change-Id: I93e4ef82210e0f8c559f4476480a3c3b0b6474c8
2020-05-08 20:05:46 +00:00
Nicholas Ray 2a7dc60cc4 Remove stray quote from logged out menu story
This stray quote has been bugging me for hours if not years. I thought
my monitor had a speck of dust on it, but it turns out it is simply a
misplaced quote.

Change-Id: I93b408eb22830590d1f06ff5326cee9be0f5330a
2020-05-08 13:20:43 -06:00
AronDemian b4ce8210ca [modern] Drop the background gradient
Move content border rules to layout (will be removed).

Bug: T251583
Change-Id: I28b7a3fdd3f89a0aef93e64c1ae12f39ae430e66
2020-05-08 18:25:31 +00:00
jdlrobson ace1ffaba1 Minor: Remove unused Portal.mustache
Should have been removed in
I2549af3e24e5d51c09e9a88ca50a0d9b2e154c3f

Presumably got readded while addressing a rebase conflict

Bug: T249372
Change-Id: Iaff98d8b4770e82277463f39800dd7571e1ed50b
2020-05-08 10:05:18 -07:00
jenkins-bot 60a13aa4ac Merge "Don't "break" the variants by breaking early" 2020-05-08 15:29:49 +00:00
AronDemian b0281fa450 Add CSS class on body to mark the skin version
Adds class 'skin-vector-legacy' for legacy layout.

Bug: T251648
Change-Id: I52938689fc7d99a710510349aaa573a87864a367
2020-05-08 16:30:26 +02:00
jdlrobson 01dbda42ca Don't "break" the variants by breaking early
Hope you enjoyed the pun, as this is an unfortunate bug to have
slipped into production.

While previously we breaked after finding the selected items
prior to I098e6921e8f7ef65dacacf09b9c25f70c945e58e we shouldn't do
that any more as we're using the same loop to iterate through and
generate our items!

Bug: T251521
Change-Id: I92c28e8fba684d7977dfd207ff939ac07a7a07af
2020-05-08 07:21:59 -07:00
Translation updater bot 36f68d37d3 Localisation updates from https://translatewiki.net.
Change-Id: I59b8b5ba7fd6aef5c14220393166d78e2a351d1c
2020-05-08 09:30:13 +02:00
jdlrobson 9f2ca0d072 Refactor: Portal is also a Menu
To complete the refactor, the Portal is also refactored
as a Menu using the getMenu function.

An old code path supporting portals outputted by hooks with
strings is marked as deprecated to simplify this code in future.

array-portals-first -> data-portals-first (the value is not
an array)

Changes:
* $this->getLanguages and  $this->getToolbox() always returns an array (see BaseTemplate)
but we previously supported portals made using raw HTML. Let's move away from that
behaviour and deprecate it.
* Hooks are moved into buildSidebarProps and marked as deprecated where possible
(SkinTemplateToolboxEnd). SidebarBeforeOutput can be used instead.

Bug: T249372
Change-Id: I2549af3e24e5d51c09e9a88ca50a0d9b2e154c3f
2020-05-07 16:56:59 -07:00
jdlrobson e4a4050b81 Organize CSS by common, layout, typography and components
Moving styles from the existing styles to common/layout
or components stylesheets they should be associated with.

Components are identified using PascalCase. Lowercase names are used for things
that are not components. This distinction should help us reason with the code
better and make it clearer where CSS belongs, saving us lots of wasted
effort discussing conventions.

Patch isn't making actual CSS changes themselves - for testing purposes this
should be a NOOP.

In preparation for the gradient removal,
'background-gradient.less' is marked as legacy.

Merged 'externalLinks.less' into content.less, they belong to content.

Bug: T249073
Change-Id: I8dbc29b7a19f7613b57b0984a8befaeae9c08798
2020-05-07 22:57:13 +00:00
jenkins-bot 6f57028553 Merge "Use semantic HTML5 elements where applicable" 2020-05-07 22:14:50 +00:00
jenkins-bot 85e162caea Merge "Class names with hyphens preferred over camel case" 2020-05-07 22:12:51 +00:00
Volker E 125af06692 Use semantic HTML5 elements where applicable
Also remove superflous `role` attributes in modern Vector. Only leaving
`role="contentinfo"` on `footer` to address a known VoiceOver bug.
And leaving `role="main"` in legacy Vector due to possible old
Internet Explorer and screenreader combinations, which we can
test specifically for with this separation.

Bug: T66477
Bug: T252090
Change-Id: I422ef2a4cf7aa94e5cac4d95efb4b2d2c8c6617d
2020-05-07 14:45:35 -07:00
jdlrobson 4dfe4a97c9 Class names with hyphens preferred over camel case
The classes were recently changed so provided this is merged before
next branch cut no need to worry about cached HTML.

Bug: T249073
Change-Id: Ib20c7a359bda858df89ebb245e682d321dd5acd0
2020-05-07 14:43:13 -07:00
jenkins-bot c913a7ee23 Merge "Remove `#footer` selectors now that cache has expired" 2020-05-07 18:44:54 +00:00
Translation updater bot 0ac61e7ae5 Localisation updates from https://translatewiki.net.
Change-Id: Ie5ef3a30a952cca610b64436ac424ed65ef5988b
2020-05-07 08:37:24 +02:00
Volker E 9934783544 Remove `#footer` selectors now that cache has expired
Following-up Ica9f8c43617c624648fa12dc86ebb3daa10f0409.

Change-Id: I6f698ff98b9c474085bf7370ecaa78db3a3617e8
2020-05-06 18:55:50 -07:00
jdlrobson 9cd47c5339 Refactor: VectorMenu merged in to Menu
Bug: T249372
Change-Id: Ifaf78b507c12aa251228213c89751cbb4d111d9a
2020-05-06 16:09:22 -07:00
jenkins-bot 397da708e1 Merge "Refactor: Merge VectorTabs into Menu" 2020-05-06 22:54:46 +00:00
jenkins-bot 688ea75bfa Merge "Refactor: Generalise personal menu" 2020-05-06 22:31:13 +00:00
jdlrobson a43e79c1d3 Refactor: Merge VectorTabs into Menu
Bug: T249372
Change-Id: Ib6ae191b31564dc23a3b1d6aedf48cbaaad006af
2020-05-06 10:23:58 -07:00
Translation updater bot 718d0fe312 Localisation updates from https://translatewiki.net.
Change-Id: I577e47ec7c2f205d273443e34bebccf4b8950f7d
2020-05-06 08:34:34 +02:00
jdlrobson a3bb097cf8 Refactor: Generalise personal menu
the PersonalMenu should be generalised. In future we will use it as
the template for all menus

Bug: T249372
Change-Id: Id1c43d2e9eefef1d7aec45f0137e27f10ad935df
2020-05-05 17:34:44 -07:00
jenkins-bot 4086a4c824 Merge "Refactor: Remove indirection (where alternatives exist)" 2020-05-05 20:34:03 +00:00
jdlrobson 7efe7c3468 Refactor: Remove indirection (where alternatives exist)
The get method while well intended, adds an unnecessary level of
indirection to our code and can't be easily typechecked. Using
the methods directly (which if you review core code, these all
directly map to those methods) makes the code much more of a pleasure
to read.

Bug: T251212
Change-Id: Ibb2a69801d3b004a0a174308d3ac04d1d228807c
2020-05-05 13:07:14 -07:00
Nicholas Ray 91c25bc253 Add title attribute to opt-out link
The opt-out link was missing a tooltip which is important for
accessibility and to help people gain more context as to what it does.

Bug: T250093
Change-Id: Ie6cbaf5c941615d1662700415b8f1823987a563d
2020-05-05 09:52:20 -06:00
jenkins-bot 027af8656f Merge "Tests: Always set Skin" 2020-05-04 19:20:00 +00:00
Stephen Niedzielski 8a915e6829 [config] Temporarily default to Legacy mode
For all accounts, temporarily default to the Legacy skin version. This
is to prevent regressions for third-parties until master has a complete
logo and is in a shippable state. This change should be reverted as soon
as interim changes in Latest mode are finished.

Do these defaults need to be set elsewhere for development?

Change-Id: I3c39352efe276b8574ab5d27fdab22901bc30b46
2020-05-04 07:25:38 -06:00
Translation updater bot 3cba63147e Localisation updates from https://translatewiki.net.
Change-Id: Icd8591c3b3ecd100d27db2825a3134ee5e810f92
2020-05-04 09:19:17 +02:00
jdlrobson 6d9e7c07e5 Tests: Always set Skin
VectorTemplate relies on many of SkinVector's methods. To future
proof these tests we need to set the skin in the mocked object.

Bug: T251212
Change-Id: Ifd9bbc9c909626ecfe8ccd085673bc777423d560
2020-05-02 16:57:04 -07:00
jdlrobson 97121a228f [Minor] Favor msg and getConfig over getMsg and ->config
Change-Id: I69ff5b8fc51292f745e0aa496b8129053c9d2f23
2020-05-01 19:11:58 +00:00
Stephen Niedzielski 4b9d307c33 [doc] fix reference in VectorDefaultSkinVersionForNewAccounts config
Nick Ray identified in I7982b4c34283ba81d0232ee6f501c44cf0a74b98 that
the config documentation for `VectorDefaultSkinVersionForNewAccounts`
incorrectly referenced `VectorDefaultSkinVersion` for existing accounts.
This should be `VectorDefaultSkinVersionForExistingAccounts`. This patch
fixes the reference.

Bug: T251415
Change-Id: I840831773f4b5996c4b7ffb9f29576830d55916f
2020-05-01 07:58:16 -06:00
AronDemian ffcd4b6113 refactor: Move up `.portal` underline gradient from `.body` to `h3`
Change-Id: I3c057e048ada0601497ee6697c19bf207c3bc821
2020-04-30 22:16:29 +00:00
jenkins-bot 48b680744d Merge "Use consistent function names to SkinVector" 2020-04-30 22:16:06 +00:00
jenkins-bot 337244ebdf Merge "[modern] A new version of Vector with a new logo" 2020-04-30 21:47:44 +00:00
jdlrobson 6a9ee465bc [modern] A new version of Vector with a new logo
Changes to support feature:
* ResourceLoaderSkinModule logo features are dropped
* New layout provided given the fork in layout between legacy and new.
* Legacy sidebar styles now pulled out
* breakpoint styles are not carried over from legacy Vector
The new Vector layout for now has one breakpoint.

Changes to storybook:
* The storybook script now pulls down image assets so that the logos can
be shown in storybook. The script is adjusted to make use of a static folder to
serve these images.

Note:
* The legacy mode is not touched as part of this patchset.
* The personal menu is unaffected by this patch and is out of scope.
* The alignment issue is noted, but will be solved at a later date.
* Changes to portal are out of scope.
* Adding storybook for modern descoped, given its not possible to load
both legacy layout and modern layout inside a storybook at current time.

Sample config:

$wgLogos = [
        'icon' => 'https://di-logo-sandbox.firebaseapp.com/img/globe.png',
        'tagline' => [
                'src' => 'https://di-logo-sandbox.firebaseapp.com/img/tagline/en-tagline-117-13.svg',
                'width' => 117,
                'height' => 13,
        ],
        '1x' => 'https://en.wikipedia.org/static/images/project-logos/enwiki.png',
        'wordmark' => [
                'src' => 'https://en.wikipedia.org/static/images/mobile/copyright/wikipedia-wordmark-en.svg',
                'width' => 116,
                'height' => 18,
        ],
];

Coauthor: Aron Manning

Bug: T246170
Change-Id: Ibc4b055150761388a6b78f9127da342c451ce0e7
2020-04-30 14:11:54 -07:00
Libraryupgrader 1d0fd0bd1b build: Updating eslint-config-wikimedia to 0.15.3
Change-Id: Id8e58bed6af439ccbb12f8947b046c76e7b242c9
2020-04-30 12:47:54 -07:00
Translation updater bot 43e01426ba Localisation updates from https://translatewiki.net.
Change-Id: I622fc03c1be441ee035dc461e10a63f28d18833b
2020-04-30 08:43:11 +02:00
jenkins-bot ec6307e669 Merge "[fix] "Existing account only" skin version config" 2020-04-29 18:55:30 +00:00
Stephen Niedzielski 709772fa12 [fix] "Existing account only" skin version config
de76ab5 added the config,
`$wgVectorDefaultSkinVersionForExistingAccounts`. Its usage in
`Hooks::onUserGetDefaultOptions()` was invoked not only for existing
accounts but anonymous users _as well._  This is a bug, due to my own
misconceptions about the hook, that went against both the config's name
and its documentation.

Unfortunately, user sessions are unavailable in
`Hooks::onUserGetDefaultOptions()` so it does not seem to be possible to
determine whether the active user is an anonymous or existing account.
This patch drops the hook and centralizes all version determination
logic in SkinVersionLookup::getVersion(). SkinVersionLookup requires a
the active User object and can make the anonymous / existing account
determination by checking login state.

The issued was identified while responding to review feedback given by
@polishdeveloper / @pmiazga in
I52d80942b4270c008d4e45050589ed9220255a50.

Bug: T251415
Change-Id: I7982b4c34283ba81d0232ee6f501c44cf0a74b98
2020-04-29 18:36:03 +00:00
Sam Smith d4c2e2b441 [Hygiene] featureManager: ComplexRequirement -> Requirement
FeatureManager::registerRequirement registering an instance of
SimpleRequirement with ::registerComplexRequirement was awkward.

Changes:

* Rename FeatureManager::registerRequirement to
  ::registerSimpleRequirement, which is exactly what it does!

* Rename FeatureManager::registerComplexRequirement to
  ::registerRequirement

Bug: T244481
Change-Id: I612af959cee4cdcd0bdcda51a81b86ed61ee2e16
2020-04-29 15:26:50 +01:00
Translation updater bot 28c286526f Localisation updates from https://translatewiki.net.
Change-Id: Ic1b8a393170b921c1d9d55440c298ba34a88ebd0
2020-04-29 08:39:21 +02:00
jdlrobson d9f4a2b041 Use consistent function names to SkinVector
In future we'll convert VectorTemplate to SkinVector. In preparation
for this we create wrapper functions getMsg and getConfig so that
the interface for VectorTemplate is more similar to SkinVector.

Bug: T251212
Change-Id: I1f839d3147499d67e1c7cf71cf934bb7d20beedb
2020-04-28 15:32:06 -07:00
jenkins-bot db29a88ee0 Merge "Add buildSidebar method" 2020-04-28 20:49:31 +00:00
jenkins-bot 1a62d2d264 Merge "[cleanup] Drop empty `class` attribute from `#footer > ul` elements" 2020-04-28 18:41:40 +00:00
jdlrobson df681e031d Add buildSidebar method
Move all the sidebar generation logic into a new VectorTemplate
function.

The name mirrors the function name in SkinVector. In future,
( I7a14f74728703c50874935e9d77b35ad9434b436)
we will move this code into SkinVector where it will be able
to call parent::buildSidebar()

Bug: T251212
Change-Id: I0a4838120f6ffd3d3d798f876e3463a3f16af95b
2020-04-28 10:44:39 -07:00
jenkins-bot a06ccff66f Merge "[modern] Add Header element and styles" 2020-04-28 16:53:03 +00:00
jenkins-bot 5a525489a1 Merge "Refactor: Revert to previous ordering" 2020-04-28 16:51:58 +00:00
jenkins-bot 0f25ad1aa7 Merge "[doc] Add link in readme to hooks.txt" 2020-04-28 16:22:04 +00:00
AronDemian f6cbbbfd95 [modern] Add Header element and styles
- Removed `#mw-head-base`.
- `#mw-page-base` -> `.mw-header-placeholder`.
- `#mw-head` moved down to `@height-header` to make space for new header.
- Content moved down to `@height-header + @height-tabs`.

Added Less variables:
- @height-header: 69px;
- @height-logo-icon: 50px;
- @height-header--inner: 54px;
- @height-tabs: 2.5em;

Style splits:
- Added Header.less
- @height-header: 2.5em;

Bug: T246170
Change-Id: I07280c4c7a2054439153e76359f712281049df0b
2020-04-28 18:15:39 +02:00
Stephen Niedzielski 19edb3d612 [doc] Add link in readme to hooks.txt
I always forget hooks.txt exists but I guess it's a bit of a convention:

- extensions/CirrusSearch/docs/hooks.txt
- extensions/Echo/modules/hooks.txt

Add a link to hooks.txt in the readme to keep the convention but help
surface the documentation.

Change-Id: Ic40809ee79af2f40cb4b0d21e665441530439968
2020-04-28 09:29:52 -06:00
jdlrobson 95c80c4efe Refactor: Revert to previous ordering
In I23f18fc5f078da3331cad540bbaf533d348f2108 layout was pulled out
into a separate file and we changed the ordering of our CSS.

This was done with the thinking that media print queries would be
mixed with media screen.

After discussions with Volker, I have been convinced this was a
mistake.

media queries of the same type can be nested so the @media screen
is removed from layout.less and the media query in index.less will
be used instead.

Change-Id: I3aab00c9bcc734ea1ba5a9cf242c6e36ac1cc076
2020-04-28 14:37:54 +00:00
Translation updater bot 7ccb3a0fe1 Localisation updates from https://translatewiki.net.
Change-Id: I8f14ac016312a124d1220b2b864e9b2c47c6c45d
2020-04-28 08:34:40 +02:00
AronDemian 487eda02f4 [cleanup] Drop empty `class` attribute from `#footer > ul` elements
Change-Id: Ice0241b054cbc296e9f0adf1d2920023316c8ca0
2020-04-28 02:05:30 +00:00
jenkins-bot 54739cf1ba Merge "Replace deprecated `@colorFieldBorder` variable and use others" 2020-04-28 01:58:40 +00:00
Volker E f5d55bcf54 Replace deprecated `@colorFieldBorder` variable and use others
Replacing deprecated `@colorFieldBorder` with WikimediaUI Base equivalent
`@border-base` shorthand.
Also replace `@borderRadius` with new base and static `background-color`
values.

Depends-On: I2e2277957b79b81909b80a6c0b7b2220be6ba903
Change-Id: I90bb0eb0c2206483f71f0553dfb590d9df2c5781
2020-04-28 01:42:09 +00:00
jenkins-bot b2dee16b63 Merge "Add `.mw-footer` CSS class & replace `#footer` selector with it" 2020-04-27 22:49:47 +00:00
AronDemian c2e9a7b366 Add `.mw-footer` CSS class & replace `#footer` selector with it
Does not add `.mw-footer-*` CSS classes to `ul#footer-*` and
`li#footer-*-*` to save bandwidth.

NOTE:
- The former id selectors can be removed form the styles after the varnish cache
  is updated with the new DOM.
- The modern version still uses the legacy layout at this stage.

Bug: T248137
Change-Id: Ica9f8c43617c624648fa12dc86ebb3daa10f0409
2020-04-27 14:55:28 -07:00
jdlrobson b42493a476 Refactor: DRY up menu creation!
Bug: T249372
Change-Id: I098e6921e8f7ef65dacacf09b9c25f70c945e58e
2020-04-27 13:36:39 -07:00
jenkins-bot 358f26323e Merge "Refactor: Make VectorTabs template data conform with MenuDefinition" 2020-04-27 18:33:36 +00:00
jenkins-bot f522973a34 Merge "Refactor: Make VectorMenu template data conform with MenuDefinition" 2020-04-27 17:59:40 +00:00
Translation updater bot 75244528cd Localisation updates from https://translatewiki.net.
Change-Id: Icce49ef60b7ec0e8bba2b1ea82fadf403912fc39
2020-04-27 09:06:22 +02:00
Translation updater bot b320b618c1 Localisation updates from https://translatewiki.net.
Change-Id: I6009e6f3db2abd91bf0b193713fefd6520627309
2020-04-24 08:25:20 +02:00
Translation updater bot c745dc19f9 Localisation updates from https://translatewiki.net.
Change-Id: If0ab0ee83fada9b414263cafe633a93511207e52
2020-04-23 08:45:46 +02:00
Translation updater bot b5d0ecd71a Localisation updates from https://translatewiki.net.
Change-Id: Ic194a805168de29d4f83f39e023eccdaf52d7297
2020-04-22 08:58:36 +02:00
jdlrobson 0b8693ccec Refactor: Make VectorTabs template data conform with MenuDefinition
menu-id -> id
menu-label-id -> label-id
msg-label -> label
empty-portlet -> class

Bug: T249372
Change-Id: I15fd88269b3d111ff47e64f3669575afaeea9f97
2020-04-22 05:18:44 +00:00
jdlrobson 286b07b20a Refactor: Make VectorMenu template data conform with MenuDefinition
menu-id -> id
menu-label-id -> label-id
msg-label -> label
empty-portlet -> class

Bug: T249372
Change-Id: I50bf2424f9077ac987e03a1e552577bf7c48b3bb
2020-04-22 05:18:29 +00:00
Reedy 983bf1c9ac Load files from gerrit not phab
Bug: T250881
Change-Id: I963399cd1936e0e7645a09712c2ef589db70a17a
2020-04-22 02:21:00 +00:00
Sam Smith 37fc80d562 [Hygiene] featureManager: Move SimpleRequirement...
... to the Vector\FeatureManagement\Requirements namespace.

Change-Id: I205eff9d257c040874fe31e5eda33b4e8cb229cc
2020-04-21 18:22:07 +01:00
Sam Smith cee5ee0003 Make legacy mode a feature
Changes:

- Add the LatestSkinVersionRequirement requirement class, which lazily
  evaluates the application state to get the version of the skin for the
  request.

  This majority of this class is taken from Stephen Niedzielski's
  Vector\SkinVersionLookup class, which was introduced in d1072d0fdf.

- Register an instance of LatestSkinVersionRequirement and register the
  'LatestSkin' feature that requires that requirement

- Re-introduce SkinVector::isLegacy and make it defer to the Feature
  Manager

Bug: T244481
Change-Id: If6b82a514aa5afce73e571abdd8de60b16a62fa8
2020-04-21 10:57:11 -06:00
Translation updater bot 14aee3e147 Localisation updates from https://translatewiki.net.
Change-Id: Ifbf1cc7610dd582c423a79e7cf48809de8b34e1e
2020-04-20 08:46:42 +02:00
Reedy 46549db31e Move some more classes to AutoloadNamespaces
Bug: T187154
Change-Id: I7e9407c1b0e03ccb699e4a11b6b44529d70fee3d
2020-04-18 03:59:38 +01:00
libraryupgrader a89c424181 build: Updating grunt-banana-checker to 0.9.0
Change-Id: Ia656ffd71cdbf846cadff005ea34a47bb78bad78
2020-04-17 23:31:20 +00:00
Stephen Niedzielski 3b906fdd66 [dev] Fix indent in VectorTemplate data
Jon spotted this in Ic9d54de7e19ef8d5dfd703d95a45b78c0aaf791a.

Bug: T246419
Change-Id: Ie760610898c1754ac0640e8077faa6ec79da66c1
2020-04-17 14:23:56 -06:00
Translation updater bot 286fcb94d3 Localisation updates from https://translatewiki.net.
Change-Id: I322840b459b880e8c52f2ab5ea8f2933f7cf7f1f
2020-04-17 09:09:28 +02:00
jenkins-bot 697d796288 Merge "[Refactor] Move footer layout rules to layout.less" 2020-04-17 00:23:28 +00:00
Volker E c3f9194144 Fix Special:Preferences sub section link
Now links to nested sub sections are possible with
I33318b3fb73a27ce8013 in.

Bug: T248644
Change-Id: I92d0910191dcab0a7fe43ba6976c6773384688a7
2020-04-17 00:08:42 +00:00
jdlrobson 64f1f8d069 [Refactor] Move footer layout rules to layout.less
These layout rules should not be in Footer since they relate to
arrangement of components.

Change-Id: Id18c3a3969e09ec5512969e57c8019ad39627340
2020-04-16 16:52:24 -07:00
jenkins-bot 0260424cf4 Merge "[legacy] Split sidebar code and mark layout as legacy in preparation for new layout" 2020-04-16 20:39:08 +00:00
Volker E 2a8a116587 Bump Vector to depend on MediaWiki 1.35.0
To minimise reports from users with mismatched skins an MediaWiki and given the
pending changes anticipated by the updates to Vector, we will bump Vector's version.

This repo is not meant to have supported 1.31 in master for years
(since the REL1_31 branch point, which for this repo is f0327dc55 from 2018-04-17 yet very few
backports have been made to this repos REL1_31 branch.

This will massively reduce work for Wikimedia development teams; 
we don't need to try to maintain backwards compatibility.

Change-Id: Ie4635fa0a7cbc2d115b2093bc5bc1a72a160afaf
2020-04-16 18:36:17 +00:00
jdlrobson 703903daac [legacy] Split sidebar code and mark layout as legacy in preparation for new layout
Going into the new version of Vector, we'll want to rewrite the layout
rules entirely and decouple the sidebar from the logo.

To prepare for this we will move the layout file into a legacy folder.
We also separate Sidebar styles needed for the legacy mode from the old mode.

This will allow us to make changes to the header in new Vector without having to touch
or test the legacy codebase via a new file layout.less and using the existing sidebar
code.

Bug: T246170
Change-Id: Ieb4f8f2b2f0e4f48d76a210ab30acd08e3e83bcb
2020-04-16 11:29:03 -07:00
jdlrobson 4d91d52dfc Add a special class to identify the first portal
In new Vector, the logo will no longer be present, so we need a more
future proof way of determining what the first portal is.

A new class `portal-first` is added (no decision about adopting BEM
has been made yet).
Cached pages will continue to use the old selector for now.

Change-Id: I6ac4493bb1f63686b48ff0c22b18d50d9fffb51d
2020-04-15 23:39:33 +00:00
Volker E 2baa9291d8 Amend Base10 color and hover derivative
Amending Base10 to slightly darker `#202122` to fulfill WCAG
requirements in connection to Accent50.
Also sligthly adapting hover derivative to `#404244` and amending
corresponding opacity hover value.

Bug: T248393
Change-Id: Id72829d837d9e8d37bbec6092e5055f7c182db7a
2020-04-15 09:30:22 -07:00
Translation updater bot ab7dc57923 Localisation updates from https://translatewiki.net.
Change-Id: I09eb15ced351460329cd522ef069d9151262afe6
2020-04-15 08:27:40 +02:00
jdlrobson 835862fffc Layout is separated from "common" CSS
This unblocks work on the header which will rewrite the layout
code.

This corresponds to a 0.06kb increase in CSS size, which is zero
after gzipping.

Bug: T249073
Change-Id: I23f18fc5f078da3331cad540bbaf533d348f2108
2020-04-14 15:17:43 -07:00
jenkins-bot dd85a00f65 Merge "Refactor: Standardize menu data (DRY!)" 2020-04-13 23:37:52 +00:00
jdlrobson 63ee9450b7 Refactor: Standardize menu data (DRY!)
VectorTemplate has various functions that repeat themselves, only
differing in their choice of names.

This refactor begins by focusing on the personal menu and introducing
a generic getMenuData function. Hardcoded `p-personal` is replaced with
an `id` template key and `msg-label` is renamed `label`.

Future patches will simplify VectorTemplate by using this new
function.

You'll note the resulting PersonalMenu.mustache file is identical
to VectorTabs. These will be merged in I098e6921e8f7ef65dacacf09b9c25f70c945e58e

Bug: T249372
Change-Id: I5ae44a1008b065381eeff93f9fa625be5c5a9de9
2020-04-13 16:11:40 -07:00
Translation updater bot 15960b33c7 Localisation updates from https://translatewiki.net.
Change-Id: Ie7160c050f3aced480433fb77a367ae8c79c17be
2020-04-13 09:07:27 +02:00
Stephen Niedzielski c9d5b2e4fb [dev] [JS] Move JavaScript to package modules
Move all Vector JavaScript to ResourceLoader `packageFiles`[0] which are
much more compatible with modern development practices:

- The entrypoint is the first `packageFiles` entry (unless specified
  otherwise). All other JavaScript must be explicitly executed.

- Remove a level of indentation due to IIFEs from every JavaScript file.
  Regretfully, ESLint does not support modules except in ES6+ so the
  otherwise useful `no-implicit-globals` rule must be disable. The
  change comes with a comment so we always remember.

- IDEs and other tooling understand Node.js-like `module.exports` /
  `require()`.

This change seemed the most sensible way to start developing new
JavaScript in Vector needed by the collapsible sidebar.

[0]: https://www.mediawiki.org/wiki/ResourceLoader/Package_modules

Change-Id: I287e604d5b1055aa97b5f987c24872755757ea1a
2020-04-10 09:39:25 -06:00
Translation updater bot ce1c8709fc Localisation updates from https://translatewiki.net.
Change-Id: I923e235581d6fed875bc9b029cfc1d3a2bfa90eb
2020-04-09 08:41:40 +02:00
Stephen Niedzielski 16670834d7 [dev] [Mustache] replace spaces with tabs
The Mustache templates were a bit of a mix of tabs and spaces. I like
spaces personally but dislike inconsistency within the project more. Use
tabs.

Change-Id: I22b777489d7281b42d1ab1981b47b2a71d3b639a
2020-04-08 15:40:56 -06:00
jenkins-bot 63d9d37777 Merge "Revert "Move indicators underneath `#firstHeading` in DOM"" 2020-04-08 13:56:49 +00:00
VolkerE 087808ece6 Revert "Move indicators underneath `#firstHeading` in DOM"
This reverts commit f400fc57c3.

Bug: T248761
Change-Id: I3a4f1202d5e1cca9f82d1735cc498049fa25613c
2020-04-08 13:43:10 +00:00
Translation updater bot 6667b65c6c Localisation updates from https://translatewiki.net.
Change-Id: Ib1ee31fe83deb370809f4aaaa37be50cc2cfece5
2020-04-08 09:07:13 +02:00
jenkins-bot 2670c08817 Merge "Move indicators underneath `#firstHeading` in DOM" 2020-04-07 01:23:05 +00:00
Volker E f400fc57c3 Move indicators underneath `#firstHeading` in DOM
Adding `margin-top` property only with sibling selector for now
until cache is cleared.
Also removing already inherited from
`.mw-body-content` properties `position`,
`font-size` and `line-height` of same value.

Bug: T248761
Change-Id: I1ea5e08927a96ac69c1b65f248ae0420968b4d00
2020-04-06 17:06:31 -07:00
jdlrobson e326517213 Add and use LESS variable for personal menu top offset
Going into the header work, we'll need this variable available so
that we can align the header with the personal tools menu.

Per Volker's request we change the value to `px` from `em`s.
Previously it was 5.28333px. It will now be 6px.

Bug: T246170
Change-Id: Ic1514e8592db8ef168fc846b8f8e485fdd465e49
2020-04-06 22:39:03 +00:00
Translation updater bot 2939100fff Localisation updates from https://translatewiki.net.
Change-Id: I21f34b2e922b1970a14f33da0bc9c7579701839b
2020-04-06 09:06:21 +02:00
libraryupgrader bf16830b21 build: Updating npm dependencies
* webpack: 4.42.0 → 4.42.1
  * https://npmjs.com/advisories/1179
* cacache: 12.0.3 → 12.0.4
  * https://npmjs.com/advisories/1179
* mkdirp: 0.5.1 → 0.5.5
  * https://npmjs.com/advisories/1179
* postcss-sass: 0.4.2 → 0.4.4
  * https://npmjs.com/advisories/1179

Change-Id: I7d4b86c7bd6f0ce44007f2758e2b1612b69ba420
2020-04-05 14:08:32 +00:00
Timo Tijhof 87a1d25079 watchstar: Remove PNG fallback for watchstar icon
Instead, for the subset of Grade C browsers without SVG support (currently
IE8), we remove the icon and display the label text instead –
in a hacky, but acceptable way.

Bug: T248062
Change-Id: I87660b69fe65b9ec2989ea606e5f76d427c28fee
2020-04-03 20:49:39 +01:00
Translation updater bot 8a5fec19c5 Localisation updates from https://translatewiki.net.
Change-Id: I8ad09f3c059746952234c5d85f379b604d966a69
2020-04-03 08:30:14 +02:00
Stephen Niedzielski d1072d0fdf [dev] add skin version query parameter override
As described in the readme but not implemented until now, this patch
enables the skin version to be specified as a URL query parameter. This
is useful for testing both skin versions during development and on wiki,
as well as enabling sharing URLs with a specific skin (Vector) and skin
version (1 or 2).

Obtaining the actual skin version requires tying together three input
sources, WebRequest, User, and Config. It seems simple but it'd be easy
to botch. For this reason, a helper class to correctly interrogate them
and tests are provided.

Bug: T244481
Change-Id: I52d80942b4270c008d4e45050589ed9220255a50
2020-04-02 16:22:26 -06:00
Stephen Niedzielski b80ad85bb1 [dev] [Less] centralize z-indices
Move all the LESS `z-index` settings to variables.less so it's easy to
conceptualize how UI will be layered. jQuery CSS rules are untouched but
documented.

Also, remove the seemingly redundant re-setting of the `mw-searchButton`
`z-index`:

  #mw-searchButton
    z-index: 1;
  }

This rule was added in 0c77e4f.

The sidebar work will require `z-index` properties and this refactor
eases the comprehension of those changes, as well as prevents the
accrual of more `z-index` technical debt.

Bug: T246419
Change-Id: Ic112a0ee3f701f87432838797be45c6069fdb522
2020-04-02 15:05:22 -06:00
Translation updater bot 6dfae96ed2 Localisation updates from https://translatewiki.net.
Change-Id: I89a09c1be0737a6d30bcf4c23f04955a8243ecbb
2020-04-02 08:27:12 +02:00
AronDemian f2fad08fb7 Define the legacy and modern root template names in the same location (improve locality)
Follow-up to I580fe55ca6aeb35dae8afee41e87172a5a729c7b

Change-Id: Iea8be07c7a86c5ca258ffdfa07fa52713cb1d6d5
2020-04-02 01:55:55 +02:00
jenkins-bot 177891cc91 Merge "Split legacy and modern experience on template level" 2020-04-01 19:44:28 +00:00
Translation updater bot 72c44e60b0 Localisation updates from https://translatewiki.net.
Change-Id: Ic28331d6b0009db3e7c5720cf9f2da4409ce44dc
2020-04-01 08:27:11 +02:00
jdlrobson c8001f91b1 Split legacy and modern experience on template level
The new template 'index.mustache' drops the Navigation
template partial (component) - instead embedding it in
the master template given its lack of usability.

Note to reviewer: Please ensure index.mustache and
legacy.mustache are identical.

Change-Id: I580fe55ca6aeb35dae8afee41e87172a5a729c7b
2020-03-31 14:35:00 -07:00
Translation updater bot 13c6a959a9 Localisation updates from https://translatewiki.net.
Change-Id: Id859f5f0730f60b31ae13e6e6c4a08e9da81b1ea
2020-03-31 08:31:02 +02:00
jenkins-bot caf0fa023f Merge "Drop the Navigation component" 2020-03-30 23:20:21 +00:00
jdlrobson 872519ab94 Drop the Navigation component
It is not the most useful of components and adds an additional layer
of complexity similar to multiple inheritance chains that we find in
Object oriented programming.

I suggest we use index.mustache going forward for laying out the different
components and use components/template partials for reusable components.

Change-Id: I6fd5fe1c3d3826d737ccd8ed5a38890305664876
2020-03-30 15:26:34 -07:00
jenkins-bot a8685e3f0e Merge "Use `calc` in `font-size` to harmonize IE 9-11" 2020-03-30 21:07:26 +00:00
Nicholas Ray b9dc654a4f Add end margin to opt-out link
This adds the same end margin as the portal container making the
opt-out-link more visually pleasing if it overflows its container.

Bug: T243281
Change-Id: I42eb3ec4a18ad9e4f6bcdb451593fec7e6e4992a
2020-03-27 10:15:30 -06:00
Translation updater bot 633affb6cf Localisation updates from https://translatewiki.net.
Change-Id: Id05e808e2c18e4ef0ad917be73d11d395ded9bd6
2020-03-27 08:43:55 +01:00
Volker E 24749a3595 Use `calc` in `font-size` to harmonize IE 9-11
IE 9-11 cuts values 2 digits after the decimal point leading
to small miscalculations throughout the interface derived from `.mw-body-content`'s `em` value.
With `calc` it's forced to use same parent value for its
rendering calculations.

Bug: T102364
Change-Id: Id4ba39bc90174bab445ae0fb4d039c28a4f0b300
2020-03-26 20:18:49 -07:00
jenkins-bot 70c2f70262 Merge "Use `.transform-origin()` mixin" 2020-03-27 00:51:22 +00:00
jenkins-bot d2b19192c7 Merge "Add opt-out link to Sidebar for Vector/Logged-in Users Without Abstractions" 2020-03-27 00:36:29 +00:00
Nicholas Ray ec382a8c86 Add opt-out link to Sidebar for Vector/Logged-in Users Without Abstractions
This commit is singularly focused on adding a link to the sidebar for
Vector, logged-in users. It does the bare minimum to fulfill the
requirements of T243281.

Additionally, it will help to answer the question "Do we need to use
abstractions (other than maybe different templates) to separate Legacy
Vector from Vector" by intentionally leaving out any abstractions in
order to make it easier to compare with a follow-up patch
(Ib2ef15180df73360cc1de25b893e49d415d23e1a) which does use abstractions.

It is a good thing to question whether or not we need addtional
abstractions in VectorTemplate and if they will help us as unnecessary
abstractions can have the opposite effect and just lead to further
frustrations down the road.

Therefore, I urge you, the reviewer, to let me know your thoughts! If
abstractions are viewed as not making our lives any easier, the
follow-up patches may be completely discarded and that's totally okay
with me. :) I think it's a good think to talk about now though.

Important changes:

* The VectorTemplate constructor was changed to allow injecting the
config, templateParser, and isLegacy boolean (only the config was
allowed before this commit). According to MediaWiki's Stable Interface
Policy, "Constructor signatures are generally considered unstable unless
explicitly declared stable for calling" [3]. Given that VecorTemplate's
constructor is not marked as stable, it is justified to do this without
warning according to the policy.

* Due to the above, the 'setTemplate' method is no longer needed and was
marked as deprecated.

* VectorTemplateTest was made to adapt to the new VectorTemplate
constructor. Additionally, it now extends from
MediaWikiIntegrationTestCase which my intelliphense server can pick up.
I *think* MediaWikiTestCase is just an alias to
MediaWikiIntegrationTestCase [1] and MediaWikiTestCase file was renamed
to MediaWikiIntegrationTestCase in [2], but I'm willing to change it
back if there is pushback to this.

Open questions:

* What are VectorTemplate's responsibilities? To me, it acts right now
as a controller (because it echos the full HTML string from the
template), a model (because SkinTemplate::prepareQuickTemplate sets data
on it which it later retrieves through `$this->get()`), a presenter
(because it adds data tailored for a web-centric view), and a view
(because it renders HTML strings instead of letting the view/template be
solely responsible for that). Arguably, some business logic might be
mixed in there as well (because it checks to see if a User is logged
in/has necessary permissions to show x which my changes here add to).
This might not be a problem if we keep VectorTemplate relatively small,
but will it remain this way as we progress further in Desktop
Improvements?

* How do we write tests for VectorTemplate without exposing unnecessary
public methods? For example, if I want to test the `getSkinData()`
method to see what state will be sent to the template, how should I do
this? One option might be to use `TestingAccessWrapper` to expose these
private methods which is what
`VectorTemplateTest::testbuildViewsProps()` does. Another option is to
accept this method as public. Is there a better way? Keep in mind that
even with access to this method, there might be many things to mock.

[1] 0030cb525b/tests/common/TestsAutoLoader.php (L64)
[2] Ie717b0ecf4fcfd089d46248f14853c80b7ef4a76
[3] https://www.mediawiki.org/wiki/Stable_interface_policy

Bug: T243281
Change-Id: I0571b041bcd7f19bec9f103fa7bccdd093f6394d
2020-03-26 17:39:47 -06:00
Volker E d9d9fdc522 Use `.transform-origin()` mixin
Adding support for older Firefox and IE 9.

Change-Id: I9b9e1f4923707676a751ae58edd6b11d1182c01d
2020-03-26 15:50:05 -07:00
Stephen Niedzielski 6b6bed86ed [docs] [dev] [PHP] [FeatureManager] revise docs and add DynamicConfigRequirement test
Address some feedback from I7a2cdc2dfdf20d78e4548f07cf53994563b234b3:

- Miscellaneous documentation improvements.
- Add a false case test to `DynamicConfigRequirement->isMet()`.

Bug: T244481
Change-Id: Ic5637f42da755f871c5a6d545e14effd3ac8c670
2020-03-26 20:39:40 +00:00
Translation updater bot ac79997d87 Localisation updates from https://translatewiki.net.
Change-Id: Iacb49685bda1c21698f13d1f70682b7c04eb3edd
2020-03-26 08:34:53 +01:00
jdlrobson 4091a6729f Document setupTemplate method and mark Vector as @final
Various skins may extend SkinVector (although none are in production)
(https://github.com/search?q=%22extends+SkinVector%22&type=Code)
This makes it clear we no longer support that behaviour.

Because of the skins that are extending SkinVector currently we have
not resorted to using the final keyword at this time.

Depends-On: Ie3759c2acbf53c628577f6b05cfed17e0998a6bb
Bug: T248399
Change-Id: I2af8b2930c80f888791247bdaa2ae1c80576317e
2020-03-25 18:04:16 +00:00
jenkins-bot f855c3948e Merge "featureManager: Add DynamicConfigRequirement requirement" 2020-03-25 15:20:47 +00:00
Translation updater bot 04e539c531 Localisation updates from https://translatewiki.net.
Change-Id: I4d499dbbcd0729f2d09ad63e61251f19fe991b5a
2020-03-25 08:36:06 +01:00
jenkins-bot 3677f1901d Merge "Use only JSON syntax in .eslintrc.json" 2020-03-23 21:21:15 +00:00
Kunal Mehta b10df06c91 Use only JSON syntax in .eslintrc.json
Breaks libup otherwise.

Change-Id: Ib1aeb412939e14911e1afec29336c63ea3e8ef8a
2020-03-23 14:05:42 -07:00
Volker E eecd2a73f9 docs: Remove overqualified element-id combination selectors
Bug: T248137
Change-Id: I8b2bc0843f9151269d4dbcbf278f8ce43ee8f872
2020-03-23 13:25:45 -07:00
Translation updater bot 70f33d106d Localisation updates from https://translatewiki.net.
Change-Id: I74692926553636a9a5c6cea27022a2e0d2afdb9e
2020-03-23 09:08:05 +01:00
Umherirrender af4ce06bf6 Fix indent in en.json
Change-Id: I240883c739175b7b242b4bdd7c29c8e0997c8efd
2020-03-20 22:04:04 +01:00
Translation updater bot 6365eff58c Localisation updates from https://translatewiki.net.
Change-Id: If4e36572cc91c4e8aad2ea78e5c93a5d8bd41d8d
2020-03-20 08:27:04 +01:00
jenkins-bot 68d2cb26ae Merge "skins.vector.styles.legacy needs to define legacy feature" 2020-03-19 03:41:26 +00:00
jdlrobson 4615f7d6d1 skins.vector.styles.legacy needs to define legacy feature
Caused by If32b59036e5cd62cbb804944ca93fa1a101c5129. Looks like
that patch clashed with Ic7af947cfd5a5df4218f006232ede4ee7ed36c62
which touched same good without a merge conflict.

Bug: T247566
Change-Id: I0c918842ac2243e47bda702fb8fdc19ce57b005e
2020-03-18 20:20:43 -07:00
jenkins-bot 49b7140a99 Merge "Mustache Documentation: Cleanup/Clarify Mustache template params" 2020-03-18 22:26:21 +00:00
Nicholas Ray 9964e56156 Mustache Documentation: Cleanup/Clarify Mustache template params
* Content.mustache doc param order was modified to follow the html structure
order (with html-dataAfterContent at bottom ). `html-userlangattributes`
was added to param documention since it was absent.

* Footer.mustache doc param order was modified to follow the html structure
order (with `html-userlangattributes` placed after `html-vector-before-footer`)

* Navigation.mustache was modified to remove `html-sidebar`,
`html-navigation-left-tabs` and `html-navigation-right-tabs` params from
doc since those are absent from Navigation.mustache.

* `data-namespace-tabs`, `data-variants`, `data-page-actions`,
`data-page-actions-more`, `data-search-box`, `data-sidebar` params were
added in Navigation.mustache documentation since those are present.

Bug: T243281
Change-Id: I321f8d61ad0305f508521e8d4d805e846103b357
2020-03-18 14:47:31 -07:00
jenkins-bot 3618a6dede Merge "Add script 'npm run lint:fix:js' and 'lint:fix:styles', remove 'lint:fix'" 2020-03-18 19:26:11 +00:00
Sam Smith 84226b41b6 featureManager: Add DynamicConfigRequirement requirement
We expect the vast majority of requirements and features to be defined
in services as possible. However, there are some "complex" requirements
that require additional application/HTTP request state. Unfortunately,
service wiring is done before some of that state is available.

I65702426 attempted to work around this by requiring clients of the
Feature Manager to pass that additional state on every interaction with
the system. Those complex requirements would then select the parts of
the state that they required when it was required. However
implementations of \IContextSource are God objects and their use should
be limited.

Whilst reviewing I65702426, Stephen Niedzielski mentioned that the
application state being available is a requirement. This remarkably
simple solution:

- Keeps the Requirement interface and FeatureManager API free of God
  objects;

- Is true to the nature of the Feature Manager - it makes clear and
  centralizes the various checks for application state being available
  across the codebase; and

- Inject a Requirement implementations' dependencies at construction
  time

It just so happens that the $wgFullyInitialised variable flags whether
the application state is available...

Changes:

- Add the the FeatureManager\Requirements\DynamicConfigRequirement class
  and tests. The DynamicConfigRequirement lazily evaluates a single
  configuration value whenever ::isMet is invoked

- Register an DynamicConfigRequirement instance, configured to evaluate
  $wgFullyInitialised while constructing the Vector.FeatureManager
  service

Bug: T244481
Change-Id: I7a2cdc2dfdf20d78e4548f07cf53994563b234b3
2020-03-18 10:10:42 +00:00
jenkins-bot c85c0700a9 Merge "Add comments to the font-stacks, reference documentation" 2020-03-16 18:29:48 +00:00
jenkins-bot 8d65373883 Merge "[JavaScript] Validate types" 2020-03-16 15:59:53 +00:00
Stephen Niedzielski bd7bd75569 [JavaScript] Validate types
Lift the mists of confusion by checking that all JavaScript types align.
No ignores! This is the JavaScript equivalent to Phan.

This patch adds the necessary infrastructure for verifying typing and
fixes the few flaws found.

Bug: T239262
Change-Id: I2557471421196ea46cd13dfb786a52968fbfcc97
2020-03-16 09:10:08 -06:00
jenkins-bot 79042c53e9 Merge "Localisation updates from https://translatewiki.net." 2020-03-16 15:09:13 +00:00
Translation updater bot 8aeef146d9 Localisation updates from https://translatewiki.net.
Change-Id: I7b74e23054593f2285fa4a7d9530f83ba2c5f125
2020-03-16 16:05:25 +01:00
jenkins-bot 7d42117f7f Merge "Remove unnecessary devdependency 'stylelint'" 2020-03-16 15:04:48 +00:00
AronDemian 349d496808 Add comments to the font-stacks, reference documentation
Bug: T244794
Change-Id: Ie8f357ff747ffda9a41eb65856839e0f83f3853d
2020-03-16 15:07:43 +01:00
AronDemian ecf7f811e6 Add script 'npm run lint:fix:js' and 'lint:fix:styles', remove 'lint:fix'
Bug: T247004
Change-Id: I4187799d56c1bae537730af832fe35c655e8ec22
2020-03-16 15:05:33 +01:00
jenkins-bot cad658603e Merge "[fix] [LESS] Move print style variables to query" 2020-03-13 18:07:25 +00:00
Translation updater bot ac41baaf12 Localisation updates from https://translatewiki.net.
Change-Id: I11369a70d7a6faf7175cccb7baffbe5f0e18b203
2020-03-13 08:30:49 +01:00
AronDemian cc6a7cca61 Remove unnecessary devdependency 'stylelint'
package-lock.json regenerated using the following process to ensure a clean slate:
rm -r node_modules package-lock.json  ;  npm i

Bug: T247004
Change-Id: Ie7720509ef37b178538a54854c28153ed73e375e
2020-03-13 06:50:23 +01:00
jenkins-bot f1d8a9e472 Merge "Ship different ResourceLoader module for different versions" 2020-03-12 21:30:38 +00:00
jenkins-bot 09fedcc4bb Merge "[Refactor] Move HD styles into separate importable LESS file" 2020-03-12 20:57:50 +00:00
jdlrobson 9a3a3d3c96 Ship different ResourceLoader module for different versions
To have a clean break for upcoming changes we will duplicate
index.less into legacy.less and create a new module to clearly
separate new styles from old.

The preferred name however does come with some caching challenges.
Cached HTML served to anons will continue to load the style module
`skins.vector.styles` for a period of 1-4 weeks

Provided we are careful with our changes during this period this
should be okay.

Change-Id: If32b59036e5cd62cbb804944ca93fa1a101c5129
2020-03-12 13:36:52 -07:00
jdlrobson aecd83e528 [Refactor] Move HD styles into separate importable LESS file
Change-Id: Ie596a7906b0e876fc00c1b821c23ceb9d13147e2
2020-03-12 12:52:44 -07:00
jdlrobson b8a8c56284 Get legacy styles from ResourceLoaderSkinModule
Instead of relying on Skin::getDefaultModules to get
`mediawiki.legacy.styles` make the legacy style feature an explicit
opt in choice by including it in the features list.

This is done on the assumption that Icb910a563273bde92a09b1bb92857d5b6e3
will shortly be merged to deprecate this module to avoid double loading
the styles.

Bug: T242177
Depends-On: Icb910a563273bde92a09b1bb92857d5b6e348baa
Change-Id: Ic7af947cfd5a5df4218f006232ede4ee7ed36c62
2020-03-12 19:52:18 +00:00
Stephen Niedzielski 46276cd9dd [fix] [LESS] Move print style variables to query
Move print LESS variables within the print media query. When these
styles were collapsed into an index.less import via ac069fb, they lost
their outer print media query which caused them to override screen
styles.

Bug: T247537
Change-Id: I45502facd27f4a7a6c33436da2f1870bbd91a4ff
2020-03-12 10:49:44 -06:00
Translation updater bot 864cc97092 Localisation updates from https://translatewiki.net.
Change-Id: I17512d362f5a5f94b7c74914a02d2bbc5152226d
2020-03-12 08:20:11 +01:00
jdlrobson 59747a58c8 Separate first portal in sidebar from rest
This allows us to insert HTML underneath the first portal or wrap
the portal in a containing element in future if we want to target
additional CSS to it

Change-Id: Ied28d95407b8d59fc819bb07a2cce3242bd93088
2020-03-11 23:34:11 +00:00
jenkins-bot af4cbc2f57 Merge "[dev] Run `npm t` on Git pre-commit hook" 2020-03-11 21:54:08 +00:00
jenkins-bot c3bbe2acb3 Merge "docs: Improve VectorTemplate Mustache param docs" 2020-03-11 20:25:56 +00:00
Stephen Niedzielski f4f7f3623c [dev] Run `npm t` on Git pre-commit hook
Execute `npm test` prior to committing. This saves back-and-forth with
Jenkins. This is the same configuration used by Popups,
MobileFrontend, MinervaNeue, NearbyPages, ContentTranslation, and
others.

Change-Id: If61ab4f28b0ccd38492d11a4cd8a92a97b2eb582
2020-03-11 07:49:48 -06:00
jenkins-bot f1cad1b040 Merge "[dev] Consolidate ResourceLoader LESS style files" 2020-03-11 11:51:02 +00:00
AronDemian ea22d059f2 Fix iOS Safari searchbox appearance
Sets
* `-webkit-appearance: none;` for iOS and
* `-moz-appearance: textfield;` for Firefox that also applies 
  `-webkit-appearance`.

Bug: T247299
Change-Id: Iefc77bba54b85442862176e1875974f19b64193b
2020-03-10 22:16:28 +00:00
Stephen Niedzielski ac069fbec1 [dev] Consolidate ResourceLoader LESS style files
Move styles.less to index.less and import print.less from it. This keeps
the reasoning about styles constrained to LESS instead of spread out
over LESS _and_ ResourceLoader. The former is preferable since LESS is
more standardized than ResourceLoader.

The approach of moving styles.less to index.less and then referencing
print.less was chosen with the intent that it'd be easier to assume
styles are screen styles unless a media query says otherwise.

This patch also makes the variables import common among print and screen
styles.

Bug: T246419
Change-Id: I981d0937aaacb7cba082c337f98c90e90b46b340
2020-03-10 15:29:15 -06:00
Stephen Niedzielski 713d0ac2fd [dev] Favor LESS media queries to ResourceLoader
Prior to this patch, Vector used a mixture of LESS media queries and
ResourceLoader (RL) media queries[0]. So far as I can tell[1], the
latter only instructs RL to wrap the contents of a LESS file within a
query (there are no conditionals placed on style loading). Further,
according to a coauthor of RL (Roan), RL media query support was most
likely a replacement for `@media foo { @import foo.css }` to inline
print styles from a separate style sheet which Vector itself does not
use. The LESS solution is much more intuitive since it's not MediaWiki-
specific and only the LESS code needs to be considered instead of LESS
_and_ the RL configuration in skin.json.

This patch moves both screen media queries to screen.less for the
aforementioned consistency and to avoid nesting queries. It is hoped
that these changes will help make future work easier, such as those to
margin likely to take place in making the sidebar collapsible.

[0]: https://www.mediawiki.org/wiki/ResourceLoader/Developing_with_ResourceLoader#Media_queries
[1]: http://localhost:8181/w/load.php?debug=true&lang=en&modules=skins.vector.styles&only=styles&skin=vector

Bug: T246419
Change-Id: Ic0adfa254f3e81dfa87a26899f3aa585645956f1
2020-03-10 13:13:42 -06:00
jenkins-bot 524b534e14 Merge "featureManager: Add Requirement interface" 2020-03-10 17:08:59 +00:00
jenkins-bot fbc24715e7 Merge "featureManager: Add typehints" 2020-03-10 17:08:57 +00:00
Nicholas Ray 892eb489e6 Move watchstar import out of VectorTabs.less and into screen.less
* VectorTabs.stories.js and Navigation.stories.js were updated to
reflect this change.

Bug: T243281
Change-Id: I96a3b9b2c9a8d799a5835de1f296bc1a779803ee
2020-03-10 10:04:46 -06:00
libraryupgrader 15041cf0ee build: Updating acorn to 6.4.1
* https://npmjs.com/advisories/1488

Change-Id: Ifed5a93c0cb894d5a15d5134bf72e0f8aab92c5a
2020-03-09 21:48:09 +00:00
Sam Smith d14caf2f11 featureManager: Add Requirement interface
FeatureManager::registerRequirement established the interface for a
requirement: its name and whether it's met.

However, the Feature Manager also needs to handle scenarios where a
requirement needs additional context before it can be considered met.
That context may not be available when the application is booting, e.g.
checking if the user is logged in; or the logic is complicated enough
that it should be under test.

Changes:

- Add the Requirement interface and update FeatureManager to work with
  implementations of it

- Maintain B/C by constructing an instance of a the SimpleRequirement
  DTO

Bug: T244481
Change-Id: Id95d9e5d7125492968d0e15515224aadbc3075f8
2020-03-09 11:06:26 +00:00
Sam Smith 64bd4601b4 featureManager: Add typehints
I735fd640 bumped the required MediaWiki version to 1.31. That version
dropped support for PHP 5.x.

Wherever possible, update FeatureManager's methods to use PHP 7.0.x's
scalar and return type declarations.

Bug: T244481
Change-Id: Ib5636d0ec5ec7f0c93b5b3317a12635668b589e2
2020-03-09 11:05:21 +00:00
libraryupgrader e9d9949048 build: Updating acorn to 7.1.1
* https://npmjs.com/advisories/1488

Change-Id: I4a6240c578be9b490cb824e24dbc252be60d9c7b
2020-03-08 19:06:33 +00:00
AronDemian 6ebd95832d Re-crush SVG files with unified SVGO rules
Bug: T178867
Change-Id: Ia8b2db651d2c8fd5fd949dcd07e45beed82f33a4
2020-03-08 04:12:50 +00:00
AronDemian b9968d9d93 build: Add 'svgo', SVG minifier script and unify SVGO rules
Adds:
- npm run svgmin
- .svgo.yaml: unified SVGO rules from Wikimedia coding conventions

Bug: T247004
Change-Id: I7017ecfebb811fa8d626747a830ad000774bbf2f
2020-03-07 19:47:58 -08:00
Timo Tijhof 406012f863 docs: Improve VectorTemplate Mustache param docs
Separate value type from value groups, to clarify that e.g.
something coming from a hook does not mean it should not have "html-".

Change-Id: I52fdd6995241e1d64f23fd8154997de813f674f4
2020-03-06 22:53:04 +00:00
jenkins-bot ecfd7a2b28 Merge "featureManager: Set -> Requirement" 2020-03-06 21:45:20 +00:00
Sam Smith 3f95820467 featureManager: Set -> Requirement
As was noted in https://phabricator.wikimedia.org/T244481#5859513, the
term "set" doesn't seem natural. Piotr Miazga (polishdeveloper, pmiazga)
and Nicholas Ray (nray) suggested a number of good replacements,
including "requirement." Serendipitously, this term is already used in
FeatureManager's documentation.

Bug: T244481
Change-Id: I559c2d4149db69235cdd4bb880697deb1a145743
2020-03-06 17:23:46 +00:00
Translation updater bot 478f0b5b24 Localisation updates from https://translatewiki.net.
Change-Id: I0888ea0891fb103e6429923f638d1cbe3e6956ff
2020-03-06 07:55:41 +01:00
AronDemian 1b340724d4 Separate scripts `npm test` and `npm run build`, remove `npm run doc` from `test`
- npm doc: unchanged, but no longer called by 'test'
  * it is run on its own by 'mwext-node10-rundoc-docker' CI job.
  * successful build of the documentation is necessary for JenkinsBot to accept the patch
- npm test: runs only 'lint' as of now, future possibility: qunit tests too
  * run by CI job 'mwgate-node10-docker'
- npm build: runs 'test' and 'doc'
  * NOT run by CI jobs

Bug: T247004
Change-Id: I3e6e1ebb220ceb1a1591cb7087bbd071b1bacf8f
2020-03-05 23:43:39 +00:00
AronDemian 71ec758beb Add script 'npm run lint:fix' to fix trivial lint errors
Bug: T247004
Change-Id: Id40b82f64a5c29af4a8e2c7935623df6761d25b1
2020-03-05 22:26:06 +01:00
AronDemian 834f4f837f Port 'storybook' scripts to windows, merge 'jsdoc' into 'doc'
additional changes:
* the jsdoc npm command is removed intentionally to
avoid polluting package.json with too many jobs.

Change-Id: Ie49de1c4b7a40a835ea1b3f8bcdbb779ba919860
2020-03-05 17:48:01 +00:00
Nicholas Ray e8a403e342 Rename Storybook Files to Reflect Their Respective Component
* Following up on the work from
Idf90ee2a0f1c1d08a31cf50099c0bebc7b67e619, this commit renames the
storybook files/storybook names to their respective component name.

e.g. personalNavigation.stories.js => PersonalMenu.stories.js

Bug: T243281
Change-Id: I68054663c5a597f90a826b6f75bf399382dca609
2020-03-03 18:32:55 +00:00
Nicholas Ray 9823538683 Isolate Vector Styles to their Respective Component
This will help with the encapsulation/reusability of each component.

* Stylesheets were renamed to reflect their respective component name
(e.g. search.less became SearchBox.less)

* Styles were isolated to each component:

* navigation.less now only contains classes that are relevant to
Navigation.mustache.
  * personalNavigation.less, search.less, and tabs.less
    imports were removed and made first-class styles.
  * several selectors were moved into common.less
  * #p-logo was moved into sidebar

* tabs.less was renamed to VectorTabs.less and styles specific to
VectorMenu.less were put into VectorMenu.less

* Storybook was updated to reflect changes

Bug: T243281
Change-Id: Idf90ee2a0f1c1d08a31cf50099c0bebc7b67e619
2020-03-03 18:20:19 +00:00
jdlrobson cdd5ebd74d Use template partials rather than HTML strings
CHANGES to  index.mustache:
Changes can be understood by looking at the diff of
the file stories/skin.stories.js

The additional changes in stories folder export the data passed to
those templates. A new file is used as exporting any variable in a
file suffixed stories.js will be assumed to be a story entry.

The changes to index.mustache are as follows:
* html-footer is replaced with data-footer and Footer
component is rendered via template partial
* html-navigation is replaced with data-navigation and
Navigation component is rendered via template partial

CHANGES to Navigation.mustache:
Changes are best explained by looking at the diff to
stories/navigation.stories.js
and navigation.stories.data.js
* html-personal-menu is replaced with data-personal-menu

Bug: T245456
Change-Id: Ie96e92447a932b8a7f3844df277a1d31a2af423c
2020-03-03 09:28:52 -08:00
Translation updater bot d6f9d0c1ff Localisation updates from https://translatewiki.net.
Change-Id: I8fbe972c796aac6ddda091764bcd146ab62eb2c6
2020-03-03 07:57:51 +01:00
Translation updater bot 3683a52f91 Localisation updates from https://translatewiki.net.
Change-Id: Ib604ee279875b1f518e7dc53902006bd0667f05e
2020-03-02 08:39:02 +01:00
jdlrobson 0ba99a1e97 Make sure Vector skin preferences always follows skin
Sections can be nested. Using rendering/skin as the parent
means that Vector's skin preference will always come straight
after the skin preference and before Popups.

A change in core is needed to update the selector for the element which
shows/hides the subsection as well as provide a generic message key to
replace the one inside this repository.

Note: If the "Vector" specific heading is needed, we can achieve this
with a little more work but that is a conversation for another time.

Depends-On: Idd06bcfe7935e16732a6a95c1253dbf95c8aca2e
Bug: T246162
Change-Id: I4be9764ddca186e5bfd493678afd62d446072e8f
2020-02-29 00:35:50 +00:00
polishdeveloper 48988c8ab0 Instead of accessing $data property use set/get/html methods
For better encapsulation and future possibility to create Skin API
we have to stop accesing properties and start using getters/setters
instead. Once we start doing that we should be able to provide a
clear interface for our templating system.

Bug: T246161
Change-Id: Ib3539b1e3bc12341c79913af3c95acad8619cff4
2020-02-28 22:06:00 +01:00
Translation updater bot 611c4ae035 Localisation updates from https://translatewiki.net.
Change-Id: I29b92bc0a9af7559e9d366bd5cba179ab12712da
2020-02-28 07:57:34 +01:00
jenkins-bot 5b1d77fb9d Merge "Replace Grunt tasks with npm scripts in package.json" 2020-02-27 17:48:52 +00:00
Jan Drewniak 98b70067c9 Replace Grunt tasks with npm scripts in package.json
Adds the following npm scripts:
- npm run lint
- npm run lint:js
- npm run lint:styles
- npm run lint:i18n

Bug: T242781
Change-Id: I0c2cfce73a02029b9d0c4d329309aff477cb02d4
2020-02-27 16:32:12 +01:00
Translation updater bot 2b5c6563c8 Localisation updates from https://translatewiki.net.
Change-Id: Idc32101f93d2554652f01c58f8327dc04fd7a6d0
2020-02-27 08:12:32 +01:00
jenkins-bot 0588f817b9 Merge "Add 'jsdoc-wmf-theme' to jsdoc" 2020-02-26 23:14:08 +00:00
jdlrobson 698752e38a [Dev] processTemplate used in one place
Moving all the templateParser calls to one function
so its easier to see how the template is composed.

The diff of changes to the stories folder highlight
the internal changes which are:

* html-portals replaced with html-sidebar in main template
* new Sidebar template added which outputs to html-sidebar
* Mention of "MainMenu" replaced with better understood "Sidebar"

This is precursory work to adopt templatePartials

Change-Id: I6b2196e39087f818e774d04b2d1b9ab8cb8816a1
2020-02-26 12:28:40 -08:00
Stephen Niedzielski de76ab59c1 [Special:Preferences] [PHP] Add skin version user preference and configs
Add a Vector-specific user preference to Special:Preferences for
toggling skin version, either Legacy Vector or the latest Vector.

The presentation of the new preference section and the default values
for anonymous, new, and existing accounts are configurable via
$wgVectorShowSkinPreferences, $wgVectorDefaultSkinVersion (to be used by
the feature manager in T244481),
$wgVectorDefaultSkinVersionForExistingAccounts, and
$wgVectorDefaultSkinVersionForNewAccounts. These configurations default
to the fullest experience so that third-party configuration is minimal.
See skin.json for details. The configurations are each tested in
VectorHooksTest.php.

When presentation is enabled, the new preference appears as a checkbox;
enabled is Legacy mode and disable is latest. There are a number of
unfortunate details:

- Showing and hiding a checkbox is supported by OOUI. Showing and hiding
  a whole section (Vector skin preferences, in this case) is not so this
  additional client JavaScript functionality is added in Core (see
  Iaf68b238a8ac7a4fb22b9ef5d6c5a3394ee2e377).
- Stylization as a checkbox is wanted. However, the implied storage type
  for OOUI checkboxes is a boolean. This is not wanted in the event that
  another skin version is added (e.g., '3' or 'alpha'). As a workaround,
  the preference is converted from a boolean to a version string ('1' or
  '2') on save in Hooks::onPreferencesFormPreSave() and from a version
  string to a checkbox enable / disable string ('1' or '0') in
  onGetPreferences(). There a number of test cases to help cover these
  concerning details.

Documentation for overriding the skin version as a URL query parameter
is provided in anticipation of T244481.

Bug: T242381
Bug: T245793
Depends-On: Iaf68b238a8ac7a4fb22b9ef5d6c5a3394ee2e377
Depends-On: Ifc2863fca9cd9efd11ac30c780420e8d89e8cb22
Change-Id: I177dad88fc982170641059b6a4f53fbb38eefad6
2020-02-26 12:56:10 -07:00
polishdeveloper 4819772ac5 Bump required MediaWiki version
1. As MediaWiki documentation says, in order to use AutoloadNamespaces,
   we require at MediaWiki 1.31. See
   https://www.mediawiki.org/wiki/Manual:Extension.json/Schema#AutoloadNamespaces

2. The most recent obsolete version of MW is v1.30. Bump the required
   version to the most recent LTS version, v1.31

Bug: T244481
Change-Id: I735fd64085601376bf1917b2df5a7dbeeb55108f
2020-02-26 16:58:14 +00:00
jenkins-bot 6b0958c56b Merge "features: Add minimalist feature manager" 2020-02-26 16:06:32 +00:00
Sam Smith 9177c22365 features: Add minimalist feature manager
With complex additions to Vector's codebase like the Desktop Improvement
Program upcoming, it's important that we have a shared, intuitive
language to talk about features and their requirements. Centralising
the registration of features and creating an API satisfies does exactly
this.

This change introduces a greatly-reduced version of Piotr Miazga's
(polishdeveloper, pmiazga) original proposed API and associated
scaffolding classes for feature management in Vector, which itself was
based upon his work in MobileFrontend/MinervaNeue. This is done to
establish a foundation upon which we can build the more sophisticated
parts of Piotr's proposal in a piecemeal basis, thereby minimising risk.

Distinct from Piotr's proposed API is the ability to register sets and
features that are always enabled or disabled.

Additionally:

- A Vector.FeatureManager service is registered but not used

- A list of proposed immediate next steps is included

Bug: T244481
Change-Id: Ie53c41d479eaf15559d5bb00f269774760360bde
2020-02-26 11:49:29 +00:00
Translation updater bot 029ebd1cba Localisation updates from https://translatewiki.net.
Change-Id: I591eda4685ffbb18881b999a0c1ef09bfcdfbfbe
2020-02-26 07:59:09 +01:00
Translation updater bot 2dbb1c1721 Localisation updates from https://translatewiki.net.
Change-Id: I7412b9e9ceac048fff33fa5644708eb7f5707fdf
2020-02-25 08:25:50 +01:00
Sam Smith 19fd1a03dc docs: Generate documentation with Doxygen
doc.wikimedia.org is a helpful resource when iterating on a codebase.
Now that the Desktop Improvements Project is underway, Vector will be
iterated on heavily. Like MobileFrontend, generate documentation with
Doxygen so that it can be published on doc.wikimedia.org.

Note well that:

- The CALL_GRAPH and CALLER_GRAPH statements have been removed as they
  were being set to the default value (NO)

- DOT_FONTSIZE was increased from 10 to 12

Bug: T242779
Change-Id: I7cc2eae2cf950293eee0028873bc6f1c89443977
2020-02-24 16:49:38 +00:00
Translation updater bot a6790169a9 Localisation updates from https://translatewiki.net.
Change-Id: I33f52c4d3fd6ac6023dc4eb1794a0873ffa4d9c7
2020-02-24 08:33:17 +01:00
Translation updater bot 37874d4484 Localisation updates from https://translatewiki.net.
Change-Id: I234921da6b7f95a2983330fd7766ba0457067af8
2020-02-21 09:18:41 +01:00
Translation updater bot e19f6da3e0 Localisation updates from https://translatewiki.net.
Change-Id: Ief8b9f4e7a9271bbe9a754e8e95738a932cf5cbb
2020-02-20 09:05:57 +01:00
jenkins-bot c4dc88114c Merge "Unify user messages for Vector.js and Vector.css" 2020-02-19 22:56:07 +00:00
Volker E 5a4a589916 Unify user messages for Vector.js and Vector.css
Those messages have been untouched since introduction, but should be
unified. They are put on top of corresponding pages like
https://en.m.wikipedia.org/wiki/MediaWiki:Vector.js

Change-Id: Ib40a38dba553bf10070fedf368ba8ea581d2b4b9
2020-02-19 14:10:42 -08:00
Volker E bedb0ea8f4 Remove Webkit search cancel button for cross-browser consistency
Use same code as in MinervaNeue. For unknown reason, Chrome
decides in 2020 to suddenly show search cancel button.

Change-Id: I5c813a2ea68929c05f5d061d46c027934853dbf8
2020-02-18 22:30:19 -08:00
James D. Forrester 1cbb7ee653 Follow-up 2dbe4d7: Stop documenting wgVectorPrintLogo, never read
Change-Id: Ia968e72e1672e9afb4a11ddbfc89ef7e891dc0d3
2020-02-18 13:22:35 -08:00
jdlrobson 2d914d04ea Remove renderNavigation function for readability
The renderNavigation function provides an unnecessary level of
abstraction which I'd argue hurts readability of these functions.
Let's remove it.

Change-Id: Iad1c4db606404fecf4d5ae98981df9f05d3f661e
2020-02-17 22:20:18 +00:00
Nicholas Ray 7b7c948bf6 Add 'jsdoc-wmf-theme' to jsdoc
This adds the wmf theme styles to our jsdoc as can be seen on
https://doc.wikimedia.org/Parsoid/master/.

There is a caveat with this though. jsdoc-wmf-theme adds warnings for
unlinked symbols (e.g. 'return {jQuery}') [1] which causes the jsdoc doc
generation to fail since it is set to fail on warnings (we have it
configured with `pedantic: true`).

If we add the jsdoc-wmf-theme, we will need to be stricter about our
symbol usage which could be a good thing or just be tedious and
annoying.

What do you think?

[1] https://github.com/cscott/jsdoc-wmf-theme/blob/master/publish.js#L29

Bug: T239258
Change-Id: Icade62a278d7e685cbda28a8ca26a1b703e64f19
2020-02-14 10:43:46 -07:00
Nicholas Ray a79bb8dff4 build: Replace JSDuck with JSDoc
* jsdoc.json was copied from Minerva. The markdown plugin from that
config was removed since there no usages of that in Vector.

* Added latest jsdoc dependency to package.json

* Copied 'jsdoc' task from Minerva into Vector. Revised storybook output
so that multiple docs (storybook + jsdoc) could be in /docs

* Made collapsibleTabs.js JSDoc compliant (This was really the only
thing using jsduck syntax)

* Modified Gruntfile stylelinter to ignore docs folder

Bug: T239258
Change-Id: Id07d591ffe7bf0ac021109051e89b91ffdcf4c78
2020-02-14 10:29:00 -07:00
Translation updater bot 1609747972 Localisation updates from https://translatewiki.net.
Change-Id: Ie13d077807d8e7a1a8f9ae52b4908a8249275609
2020-02-11 07:56:02 +01:00
Translation updater bot 0662f28024 Localisation updates from https://translatewiki.net.
Change-Id: Ice0d0138a11cd2ad058f49be4d3492080d206440
2020-02-10 07:57:44 +01:00
Translation updater bot 70eb612824 Localisation updates from https://translatewiki.net.
Change-Id: I2f01a3384e2ab9d1812d582702f63c41f94682b2
2020-02-07 08:48:36 +01:00
jenkins-bot fc3ac16b54 Merge "Add Coding Conventions Section to Vector README" 2020-02-06 21:32:13 +00:00
Nicholas Ray 356c976bb3 Add Coding Conventions Section to Vector README
Although the convention of where to put conventions remains somewhat
contentious, the team's desired conventions for Desktop Improvments have
so far been, for the most part, general and could be useful for any
project our team owns (e.g. MobileFrontend, Minerva, etc).

Therefore, I added/made revisions to the
https://www.mediawiki.org/wiki/Reading/Web/Coding_conventions wiki page
as this seems the be the single source of truth of our team specific
conventions that span across repos.

This commit just links to these changes which follows the same pattern
as Minerva and MobileFrontend.

Additional Changes:

* Added installation section similar to Minerva Skin

Bug: T239269
Change-Id: I41c71fba1228086f1830d8bb0808227b62ebf5cd
2020-02-05 15:26:15 -07:00
jdlrobson 2dbe4d7af1 Drop usage of mediawiki.skinning.interface module in favor of SkinModule
Thanks to the dependent change, the print logo is now provided
in core so we can remove the custom Vector ResourceLoader module

ResourceLoaderLessModule is replaced with a ResourceLoaderSkinModule
and gains the features capability replacing the need for
'mediawiki.skinning.interface' making use of the changes added in
6845912bcf1.

Note that for cached HTML both 'mediawiki.skinning.interface'
and skins.vector.styles will be loaded. We can avoid this
by renaming skins.vector.styles if necessary (but I'm not
sure if we'd want to do that)

Bug: T232140
Depends-On: I00899c16c0325f36b671baf17e88c2b5187b3526
Change-Id: I569e0d800e147eabc7852567acd140108613f074
2020-02-05 10:02:47 +08:00
Translation updater bot 1f53b4c99b Localisation updates from https://translatewiki.net.
Change-Id: I7e0c298c35b405dfe4331a6e6a3046f706f20563
2020-02-04 08:10:46 +01:00
Stephen Niedzielski 9f492ad5c9 [fix] [jsduck] Update config JavaScript path
Bug: T242674
Change-Id: Ic9a2395ae67065bb7efee431edf16ebaa41b231b
2020-02-03 09:43:56 -07:00
Translation updater bot 30217757c6 Localisation updates from https://translatewiki.net.
Change-Id: I59525a36df1902d56da2398b725855d0399c2e3e
2020-02-03 08:03:12 +01:00
jenkins-bot c0e7cff97a Merge "Introduce PHPUnit tests in Vector" 2020-01-31 17:30:33 +00:00
polishdeveloper 09671d768f Introduce PHPUnit tests in Vector
To make it happen, we also need to provide a way to
inject different TemplateParser.

Change-Id: I14d8474a2b52f040b688245cbd5bd6f12dddf846
2020-01-31 16:48:43 +01:00
jenkins-bot 0c27e8deb8 Merge "Add storybook to Vector" 2020-01-31 15:01:44 +00:00
jdlrobson ea2bcd44f2 Add storybook to Vector
- Update package.json with the new dependencies.
- A script storybook.sh pulls down CSS and LESS imports from external
dependencies. This copies the approach taken in Popups and MobileFrontend.
- Icons from external repos are maintained within the repo in SVG-only form.
Using load.php modules is also possible, but will pull down other unnecessary icons
and break if any of these modules are changed. Decided that we should manually maintain
these for the time being given there are only 3 icons.
- Several LESS files now import the variables file. I think it's useful for stories
to only import the CSS they use as this encourages us to modularise our CSS. Before these
imports were not necessary as they inherit imports from index.less. This will have no impact
on the bundle size as the LESS compiler silently discards duplicate imports
- stories/utils.js provides a useful placeholder function for generalising our hook entry
points.

Bug: T242674
Change-Id: I722e84d2fb57653a2f96142dc3e5248043261746
2020-01-31 16:59:15 +08:00
libraryupgrader 2adc7af88c build: Updating composer dependencies
* jakub-onderka/php-console-highlighter: 0.3.2 → 0.4.0
* mediawiki/minus-x: 0.3.2 → 1.0.0
* mediawiki/mediawiki-phan-config: 0.9.0 → 0.9.1

Change-Id: I724524483e1f2071fbc839dcd2274b5f78b5da1f
2020-01-30 20:11:34 +00:00
jdlrobson 12e2287894 Simplify logo generation
Use a template variable only for html attributes of the logo
Move static HTML into Navigation.mustache

Change-Id: If37015b9ce4f37e264b6f25956e4d0ca35e8cdff
2020-01-30 02:11:05 +00:00
jdlrobson 0cdf0c238a Dev: Complete initial porting of Vector to Mustache
Bug: T240062
Change-Id: I18cb1fda6850646a38314a7d2dd356103f04ec28
2020-01-29 13:21:34 +00:00
Translation updater bot 052b26f684 Localisation updates from https://translatewiki.net.
Change-Id: I4eada4bdb013b6401333af5f3711d993f36925f4
2020-01-29 07:57:13 +01:00
jenkins-bot 4d18966973 Merge "Dev: Vector is rearranged like other skins and extensions" 2020-01-28 10:54:11 +00:00
jdlrobson 58457f8ae8 Dev: Vector is rearranged like other skins and extensions
A resources folder is the defacto-standard across mediawiki repos.
Vector now mirrors those by describing where files served by ResourceLoader
are located.

Change-Id: Ib7d8575112e8afaaa84221a6f30a15b34b51eb24
2020-01-28 16:57:38 +08:00
polishdeveloper efe0ec6356 Deprecation: Deprecate Vector specific hooks
Vector provides two vector specific hooks:
 - VectorAfterToolbox
 - VectorBeforeToolbox

Instead of supporting Vector specific stuff we should aim
for a nice global skin api and allow other 3rd party to
extend MediaWiki functionality no matter which skin is currently
on.

Bug: T240062
Change-Id: I245f1316e79f814ba04f4e0a0223d4f0596cf39e
2020-01-24 16:20:50 +00:00
jenkins-bot c46dbb573f Merge "Dev: Break Footer out into template" 2020-01-22 18:54:36 +00:00
James D. Forrester 84a95ae650 composer: Stop claiming this skin supports PHP 5.5+, it uses PHP 7.1+ features
Change-Id: I04429c4754d2c13ade8d84e2bcb129be9c644ac9
2020-01-21 08:45:44 -08:00
Translation updater bot 183fef57cb Localisation updates from https://translatewiki.net.
Change-Id: I6b0254a0fb474c1e4b369a1387632f5f3a993aa1
2020-01-21 08:01:51 +01:00
Translation updater bot eedf2f582b Localisation updates from https://translatewiki.net.
Change-Id: I9bc149025518f06128df77e68135ce5f810d1cb4
2020-01-20 08:05:56 +01:00
jdlrobson 80b5ccc634 Dev: Break Footer out into template
Add a new Footer template for modelling the footer of
Vector.

Bug: T240062
Change-Id: I60a243abeb5650542ca6f6fac8401a622faaabac
2020-01-17 13:10:37 -08:00
Stephen Niedzielski 11d60dd88a [hygiene] [skin.json] simplify BeforePageDisplayMobile hook
Since only one hook is specified for the BeforePageDisplayMobile hook,
replace the array of hooks with the single hook used.

Change-Id: Ic89a262f3fdba93c3ee10387b3b05137ce9dc4ad
2020-01-17 20:08:01 +00:00
jdlrobson 9f82f58ea9 Dev: Include closed body and html tags in getTrail
This will allow us to render in Storybook without having issues
with unclosed tags. it also mirrors how html-headelement works
(obscuring the opening of the body and html tags)

Bug: T240062
Bug: T242674
Change-Id: I216a920c68bf3da9de55a75fc53451c68c9cc753
2020-01-17 19:16:32 +00:00
Translation updater bot 746c05a0d1 Localisation updates from https://translatewiki.net.
Change-Id: Ic4bce80e3d543ce4ebcd6fc3df7facb568730b3c
2020-01-16 09:12:02 +01:00
jenkins-bot 4ce1e8c1f2 Merge "SkinTemplateToolboxEnd hook output not displaying in Vector" 2020-01-14 22:58:53 +00:00
jdlrobson f416e21bc5 SkinTemplateToolboxEnd hook output not displaying in Vector
Broken in I882db161e5462cf88aa48c9cfd91448eb97a4a77

Bug: T240062
Change-Id: I94bbf79c6c2743a5769935287593aa48780bfb71
2020-01-14 14:37:12 -08:00
jenkins-bot f1aaa1ec91 Merge "Replaces $user->isWatching call with WatchedItemStore isWatching service call" 2020-01-14 22:30:09 +00:00
Jan Drewniak 361e0d6f71 Extract Portal mustache component from VectorTemplate.php
A Portal (or portlet) in the Vector context is a section of the
sidebar menu (e.g. Tools, Languges etc.).

The hook that places content between the portals (or portlets?)
such as `SkinTemplateToolboxEnd` and `otherlanguages` has been
enclosed inside of an output buffer so that any content it
produces can be passed to a template.

Bug: T239248, T240062
Change-Id: I882db161e5462cf88aa48c9cfd91448eb97a4a77
2020-01-14 22:44:58 +01:00
Jan Drewniak 093cc20ee0 Extract VectorMenu.mustache component from VectorTemplate
Extracts a new VectorMenu mustache component from VectorTemplate.
VectorMenu is the "more" menu that appears at small widths instead of the
Read/Edit/View History menu near the top of the Vector skin.

Bug: T239248, T240062
Change-Id: I41b1ec949d81303abddadb981741445572c939e3
2020-01-14 10:38:46 -08:00
jenkins-bot 9cf4eb0e7e Merge "Hygiene: remove vectorConfig and use the getConfig" 2020-01-13 22:43:12 +00:00
Piotr Miazga 02d4e4929f Hygiene: remove vectorConfig and use the getConfig
The SkinVector implements IContextSource, thus it has to provide
the getConfig() method. Vector skin is currently using
it's own `vectorConfig` in one place and it passes the VectorConfig
to the VectorTemplate class. Sadly the VectorConfig is the same
thing what $this->getConfig() provides. There is no need to make
this code more complex by handling two different config containers
which at the end are the same GlobalVarConfig instances.

If we decide to handle VectorConfigs differently, let's thing it
through, for now we should simplify code and remove all uncessary
logic. Thanks to that, there is also no need to override the
setupTemplate().

Change-Id: I89c8a77f7d96f867c8c72e61f9e104e14d9512d9
2020-01-13 23:01:42 +01:00
jenkins-bot f40247a9d4 Merge "Hygiene: remove SkinVector::setupSkinUserCss" 2020-01-13 19:38:35 +00:00
jenkins-bot 68af887faf Merge "Convert $templateParser in VectorTemplate.php into an instance variable" 2020-01-13 19:37:56 +00:00
jenkins-bot d4bfcd02ce Merge "build: Updating mediawiki/mediawiki-codesniffer to 29.0.0" 2020-01-13 17:07:55 +00:00
Jan Drewniak a706618a9d Convert $templateParser in VectorTemplate.php into an instance variable
Change-Id: Iaebfaefdd0722d1e63cb73585e0148f54fcdd77e
2020-01-13 15:40:57 +01:00
Piotr Miazga 8a8a44ca00 Hygiene: remove SkinVector::setupSkinUserCss
Tthe SkinVector::steupSkinUserCss is deprecated and
we should use the ::getDefaultModules instead.

Change-Id: I359049d0f159a0dfc374d1c0124e8989aeb4182d
2020-01-13 14:14:39 +01:00
libraryupgrader b1978d572f build: Updating mediawiki/mediawiki-codesniffer to 29.0.0
Change-Id: I336d23b2d322d1ae1a4c3101e69088c11eb9f43c
2020-01-13 06:06:46 +00:00
Ammar Abdulhamid 672dd7b9a8 Upgrade skin.json schema to manifest_version 2
Bug: T242469
Change-Id: Idb96560efc8517ee8d353e856eb3a272af51ed4c
2020-01-13 04:40:02 +01:00
libraryupgrader 24b72c8bfa build: Updating npm dependencies
* grunt-stylelint: 0.12.0 → 0.13.0
* stylelint-config-wikimedia: 0.7.0 → 0.8.0

Additional changes:
* Also sorted "composer fix" command to run phpcbf last.

Change-Id: I59abf3b90868ae225a70bc3c0ba287f2c2335c8b
2020-01-10 18:36:03 +00:00
Jan Drewniak d29adb5dcc Fix uerlangattributes echoing output from PersonalMenu component
Followup to 4f471bfa5e

Bug: T240062
Change-Id: I13c099befc98b42f28e58a669df495b9324190f4
2020-01-10 13:15:17 +01:00
Vedmaka 2fce68778c Replaces $user->isWatching call with WatchedItemStore isWatching service call
Bug: T208766
Change-Id: I178b1a1aa0106d82f1b336f2bda5c6371468d741
2020-01-09 21:50:40 +00:00
Jan Drewniak 4f471bfa5e Extract PersonalMenu,mustache component from VectorTemplate
PersonalMenu is the login/logout notifications etc. menu at the very
top of the Vector skin.

Bug: T239248, T240062
Change-Id: Iae224cbd838e44669a9f27e6dd303c6c3b402d41
2020-01-09 16:01:46 +01:00
Translation updater bot 05aab42559 Localisation updates from https://translatewiki.net.
Change-Id: Ifc5454f72af675170317630447a40b8f2db74dac
2020-01-06 08:21:20 +01:00
Translation updater bot 6abb5bffc2 Localisation updates from https://translatewiki.net.
Change-Id: I08b11aa759a21186847b0ca97f89e058382bdf80
2020-01-03 08:22:32 +01:00
Translation updater bot 14567269b7 Localisation updates from https://translatewiki.net.
Change-Id: I6037449a8ed1a106d23420d96d2bdc4524c59daa
2020-01-02 08:32:21 +01:00
libraryupgrader cfe2ff0864 build: Updating mediawiki/mediawiki-phan-config to 0.9.0
Additional changes:
* Added .eslintcache to .gitignore.

Add check for unset 'class' attribute.

Change-Id: Ib5b8993e89f4cb8f2f5325cbbc1e02401dd19d81
2019-12-22 20:11:34 +01:00
libraryupgrader 36f3475c52 build: Updating mediawiki/minus-x to 0.3.2
Additional changes:
* Added .eslintcache to .gitignore.
* Removing manual reportUnusedDisableDirectives for eslint.

Change-Id: I3de49aad51738d3c0af1cef9af0b714a597a3e2a
2019-12-19 03:47:15 +00:00
Translation updater bot 52a272216b Localisation updates from https://translatewiki.net.
Change-Id: I683e3f1e7cdea2bc71431546aca26c3150977c62
2019-12-16 11:21:35 +01:00
Volker E bf365aa1ac Fix CSS selector in 'print.less'
Change-Id: I630132f551fa49513058f937ee4a845c02acdc2a
2019-12-13 16:43:42 -08:00
Translation updater bot 470870cd6d Localisation updates from https://translatewiki.net.
Change-Id: Ic625474a2ca63ff60f06998f998c2aa5078b3805
2019-12-12 08:55:08 +01:00
Stephen Niedzielski 9d427dcb30 [Hygiene] [Mustache] rename SearchComponent to SearchBox
For consistency with VectorTabs, rename SearchComponent to only imply
component. At least two word names seems like a good target (instead of
just "Search") for grepability and standard component style conventions.

Bug: T239248
Change-Id: I1e4f7270ba29c2f35f08e92f8a28cd8a2ec8fe87
2019-12-06 17:00:42 -07:00
Stephen Niedzielski 60148a1a92 [Hygiene] [Mustache] improve template parameters and docs
Add typing expectations to search box template parameters. Add context
expectations to search box and tabs templates.

Bug: T239248
Change-Id: I4ff1920f5489b68ef73a219ceeceb1f5511fc9e8
2019-12-06 17:00:42 -07:00
Stephen Niedzielski e0b29624d1 Fix: tab attributes
The tab attributes were mistakenly being echoed instead of passed by
value. E.g., http://localhost:8181/wiki/A?uselang=he.

Bug: T239248
Change-Id: Ia0af96df717948743a2d66f8432b47e6f8a9c8f1
2019-12-06 17:00:39 -07:00
jenkins-bot 11ad91633f Merge "Move namespace & view tabs into a VectorTabs.mustache component" 2019-12-04 15:44:38 +00:00
Jan Drewniak c12c5f06db Move namespace & view tabs into a VectorTabs.mustache component
Creates a new VectorTabs.mustache component and uses it to render
the namespace & view tabs.

Bug: T239248
Change-Id: I859e4e95a2a12470f66564db547679c9f0a16727
2019-12-04 15:51:02 +01:00
jenkins-bot 72e5a640f0 Merge "Fix: search header attribute escaping" 2019-12-03 23:37:17 +00:00
Stephen Niedzielski 71672d60b3 Fix: search header attribute escaping
Broken in my previous commit, d6f4aaa. This causes attributes to be
doubly escaped. For example,
http://localhost:8181/wiki/Main_Page?uselang=he.

Change-Id: I9776a3c355081dc5fec7753edf256f55dfe6045b
2019-12-03 16:05:56 -07:00
Fomafix 4102f69d0e Restore arrow flipping for menu indicator
Bug: T239718
Change-Id: I3ff5c40d99aa9bab4d930881a1a4d13f2f18109f
2019-12-03 17:29:14 +01:00
Translation updater bot f790133284 Localisation updates from https://translatewiki.net.
Change-Id: I3b721a7b6fa8bd02316c5813f865d2e10618c271
2019-11-29 08:44:40 +01:00
Translation updater bot d97834d65d Localisation updates from https://translatewiki.net.
Change-Id: I375b30a4689d5b2dbd80b8cec84926b6f586a8ef
2019-11-25 08:29:51 +01:00
Stephen Niedzielski d6f4aaa88e Hygiene: extract VectorTemplate inline HTML to SearchComponent Mustache file
Extract SearchComponent.mustache from VectorTemplate. The "search"
message is now escaped by the template parser. As is, htmlspecialchars()
for "wgScript".

A later patch will change each component renderer function as well as
renderNavigation() to return a string.

Change-Id: I3084b7e0ef73d320c85ee780c9eff13ecea92906
2019-11-20 16:41:05 -05:00
Stephen Niedzielski c9f15a4206 Hygiene: move VectorTemplate inlined PHP to variables
Move template logic outside of the template and into variables. This
will allow a future refactor to move the template to a separate
template-only file.

Change-Id: I91c2df11106cf09428a890a2d96ecbddb18ef0fe
2019-11-20 16:35:04 -05:00
jenkins-bot 501b94f1b4 Merge "Hygiene: divide VectorTemplate.renderNavigation()" 2019-11-20 20:00:40 +00:00
jenkins-bot 546560c755 Merge "Set `overflow-y` to `scroll` to prevent reflow" 2019-11-19 14:21:34 +00:00
jenkins-bot 7aa2e8f19a Merge "Hygiene: remove getPageClasses" 2019-11-18 22:59:52 +00:00
Volker E c8e0ea32b1 Set `overflow-y` to `scroll` to prevent reflow
Setting `overflow-y: scroll` to prevent reflow as soon as content
comes in. Adding it to `body` as there might be side-effects when
it's set on both, `html` and `body` and latter seems to be the
place where volunteers or third parties would have set it already.

Bug: T204084
Change-Id: Id9ee2e85225f969b6a286628b70fb7a4e447040c
2019-11-18 14:42:03 -08:00
Volker E 6d6e1f1121 Bump `h3` to `14pt` to set apart from running text
Bug: T183105
Change-Id: I56ebe653a49f548a84643944fd96453219cad804
2019-11-18 14:22:03 -08:00
Stephen Niedzielski 625ec18f81 Hygiene: divide VectorTemplate.renderNavigation()
Cut up renderNavigation() into several discrete methods. Smaller methods
are easier to read and reason about.

Change-Id: I4e55d858ab1745fb2baddef02f7046ec842eb149
2019-11-18 15:26:20 -05:00
Piotr Miazga 2f355a3e11 Hygiene: remove getPageClasses
Looks like the SkinVector::getPageClasses is doing nothing, only
calling the Skin::getPageClasses and returning the output.

Change-Id: I5becaa1505d46cbf9a07b8bfe73ddf324b740876
2019-11-18 15:13:24 -05:00
Translation updater bot 6ce3b83954 Localisation updates from https://translatewiki.net.
Change-Id: I42bcb178a4fe1df0e617b218e7cce99c8d7fae87
2019-11-18 08:35:36 +01:00
jenkins-bot dca39c79cc Merge "Bump running text to more generally readable `12pt` on print stylesheet" 2019-11-12 10:45:43 +00:00
Volker E 1d68f1dec3 Bump running text to more generally readable `12pt` on print stylesheet
Also bumping headings to not go smaller than running text and
leaving footer text unchanged.

Bug: T183105
Change-Id: Ifb57a6261b6908f23dca52e4544c58ec1935009a
2019-11-12 10:30:24 +00:00
Translation updater bot 45f66ed038 Localisation updates from https://translatewiki.net.
Change-Id: Iaf9ec4c1d26fbc0c580ae03c2edbe8159f8d7f07
2019-11-11 08:40:46 +01:00
Translation updater bot 28b575ddff Localisation updates from https://translatewiki.net.
Change-Id: Ia65aaa9ca4b598f45f1a4b9c5957cab46aa4b6c8
2019-11-07 08:52:29 +01:00
Translation updater bot e8c9b1e47d Localisation updates from https://translatewiki.net.
Change-Id: I4730c4ffcfa25dac408e2449dfa734b4661ee8d8
2019-11-04 08:41:24 +01:00
Umherirrender c19da7d224 build: Updating mediawiki/mediawiki-phan-config to 0.8.0
Bug: T235049
Change-Id: If87fa3451b328419055ddb1700d9fd3a770f8c76
2019-11-02 19:50:52 +01:00
Ed Sanders c61f6469db build: Update linters
Change-Id: I17a65638e0c7d074d4c1db282b278798e875fbe1
2019-10-31 21:43:20 +00:00
Translation updater bot 04c50cedc4 Localisation updates from https://translatewiki.net.
Change-Id: I56654ae229775b3671161fad50175242bc2aaad0
2019-10-30 08:38:51 +01:00
jenkins-bot ac483a78ed Merge "hygiene: Make LESS imports non-ambigious" 2019-10-28 08:31:27 +00:00
Translation updater bot acc1405a32 Localisation updates from https://translatewiki.net.
Change-Id: Ibba4fb2168893e58b1b4570a1e41b97fdc432874
2019-10-28 08:58:20 +01:00
Volker E f2695a5bf3 hygiene: Make LESS imports non-ambigious
Some LESS parsers will get confused with the lack of file extension.
It's better to be explicit and in alignment with recent change in core
I379334d7729e587a2a00.
It was already weirdly mixed in this repo with some imports featuring
extension and some not.

Change-Id: If5065cf9e30289de9b4fd33315bd65b75959ecb7
2019-10-25 20:54:49 +00:00
Timo Tijhof a5fe72696b Remove extra <span> from Vector tabs
No longer needed as of I8237976e0587.

Bug: T236410
Change-Id: I5a59c136de4572e5f11b52cc11bc93251c972369
2019-10-25 15:22:57 +00:00
Timo Tijhof 481c90798e Make extra `<span>` in Vector tabs optional
Applying calculation measurments to have full pixel equivalent to
`em` based properties that are necessary for user font scaling
preference ability.

Also:
* Changing watchlist icon to `em` based sizing and remodulate positioning
  by putting it on `:before` elements.
* Changing calculation of `.vectorMenu h3` to acommodate down arrow indicator.

TODO:
* Remove the extra <span> (in separate commit, to make it easier
  to rest cache compat during code review).

Bug: T236410
Change-Id: I8237976e05870378be3430e3e14c3e6993de3dc1
2019-10-24 22:42:32 -07:00
jenkins-bot 0e2f5de63c Merge "Don't overspecify selector" 2019-10-24 17:13:11 +00:00
Volker E c27700d811 Don't overspecify selector
Remove unneeded `div` from selector.

Change-Id: I7f69b8cde8a721d13b2578bac11db2c3dea690f2
2019-10-23 15:11:30 -07:00
Volker E 51dd4bb7d9 Remove ignored properties in certain combinations
Removing
- `clear` when used with `position: absolute`
- `float` when used with `position: absolute`

Change-Id: I14661c4078e4d5f776596842674cef7e7ddcf708
2019-10-23 14:54:45 -07:00
Fomafix 2f94748938 Use stroke-width="1" instead of stroke-width=".99992"
This make the file size smaller without any visible change.

Change-Id: Ib840585b1a06a42e7ebfc64fa04d840716fc81b7
2019-10-17 09:26:05 +02:00
Translation updater bot 2a7e8ea8c6 Localisation updates from https://translatewiki.net.
Change-Id: Iff06025f9a08a353dc3981410e8a73faef6cf514
2019-10-17 09:12:35 +02:00
Timo Tijhof b7b8c77c1e Update ResourceModuleSkinStyles for jquery.ui change
Follows-up I9070ad905 in MediaWiki core.

Depends-On: I9070ad9052319f5ca2bc67e0ffaf502db0f13ceb
Bug: T219604
Change-Id: Ib13bf24f4d8fa8da932b57439e2b52ec10545f3c
2019-10-16 23:44:40 +01:00
Translation updater bot 1232a9bfdd Localisation updates from https://translatewiki.net.
Change-Id: I7bdc3fbbef521fad5be543319b24ea2ede3713c5
2019-10-16 20:47:07 +02:00
Translation updater bot 6234e6c1d2 Localisation updates from https://translatewiki.net.
Change-Id: Ifd5544868b795f577f1b515ba4a68f7d8ca1e68b
2019-10-16 09:29:39 +02:00
jenkins-bot 1372dd2258 Merge "Print: Remove underline for image links" 2019-10-15 13:53:22 +00:00
Derk-Jan Hartman 202205c0d0 Print: Remove underline for image links
Bug: T225093
Change-Id: I80efccab2dd2e5a0808eb57fab06e9cde73c1844
2019-10-15 12:48:10 +00:00
Bartosz Dziewoński 34c3da2ecb Apply transparent background to both search buttons
Bug: T235319
Change-Id: I7c0f64cef0d429166ad044ea9ddd55c4c7d1dec2
2019-10-14 16:50:17 +02:00
James D. Forrester 82bed7da8c build: Upgrade mediawiki-codesniffer to v28.0.0
Change-Id: I61a3c466aa3deba61f2cc437498dc941cd9ee426
2019-10-11 12:13:38 -07:00
Jforrester d2b6a3524a Revert "Localisation updates from https://translatewiki.net."
This reverts commit 31b53496e8.

Reason for revert: Corrupted export.

Bug: T235188.
Change-Id: I823d47d3f9657b7268ad264fd068f35ded2a187e
2019-10-10 16:44:13 +00:00
Translation updater bot 31b53496e8 Localisation updates from https://translatewiki.net.
Change-Id: I2bfcdc0dfc1a0bdd4b361873f3a59140933dfe5d
2019-10-10 08:37:48 +02:00
Ed Sanders 370f52e692 build: Update linters
Change-Id: I58969b531c70eba70a7fa7a8fc0ba1ad521ba9f5
2019-10-07 16:41:27 +01:00
Volker E 9fc3d8d684 Remove IE 6 & 7 hasLayout hacks
Bug: T234582
Change-Id: I43b2feb6941769524dfe2c728dfb62f999d5f65b
2019-10-03 20:00:54 -07:00
Volker E 9bc73009cb Remove IE 6 & 7 specific star hack
Internet Explorer 6 & 7 support. Gone.

Bug: T234582
Change-Id: I0878fa73146596362c88a0c4cbfd6121440bbde3
2019-10-03 18:10:51 -07:00
Timo Tijhof e5c837e3eb Remove unused 'jquery.tabIndex' dependency
Follows-up bfc5a57.

Bug: T226148
Bug: T233676
Change-Id: Icb4a2458c40482a45172ce09f6ec14c4f7d1ccdf
2019-10-04 00:07:44 +00:00
Volker E ef18f498a8 Remove obsolete `@content-line-height` LESS var
Made obsolete in I514467e4065d2.

Change-Id: I83489b899be62c2f0f2f6fc34ac6c0bc8a4caa34
2019-10-02 14:59:22 -07:00
jenkins-bot 37e2db256f Merge "Lighten up search input background slightly" 2019-10-02 19:30:34 +00:00
jenkins-bot 5b03d18ce9 Merge "Re-order `background*` properties to unify across files" 2019-10-02 19:30:33 +00:00
Volker E a10382b144 Lighten up search input background slightly
Increasing contrast by ligthened search input background and moving
properties to search input alone.

Bug: T225331
Change-Id: If888d32b829b01b2457f3f5c727fb59a6219f940
2019-10-02 00:24:25 -07:00
Translation updater bot 59eb70d648 Localisation updates from https://translatewiki.net.
Change-Id: I4ac823ac48c53b4f82c02f891c14e819aeb5eec2
2019-10-02 08:28:01 +02:00
Timo Tijhof e32df2ad20 vector.js: Remove eager calculation of p-cactions width on page load
With these optimisations applied, there is no longer any need for
the width value during most page views, and even for most resize
operations. As such, eagerly computing it ahead of time, even from an
idle callback, no longer makes sense.

It is still memoised because it's worth avoiding a recalc during
some of the code paths that need it. Also because this way the
logic stays compatible. I don't know for sure if all involved logic
would be able to handle the value changing over time.

Optimisations:

* Where possible, don't depend on jQuery width() working on invisible
  elements. Specifically, don't depend on it giving you the width of the
  element *as if* it were visible when it is invisible. When logged-out and,
  when navigating special pages (e.g. Special:Blankpage), the #p-cactions
  element is an emptyPortlet with `display: none;` set.

  The animation logic was depending on initialCactionsWidth() providing
  the width the element would have if it were visible. This is because
  jQuery width(), will actually change 'display: none' to 'display: block',
  force render virtually, compute the width, and then change back.
  Instead of depending on this discouraged feature [1], move this calculation
  to the code dealing with the animation and calculating it there, ourselves,
  right after making it visible for real (but before shrinking it for the
  hidden-to-visible growing expansion animation).

* Document our reliance on this discouraged feature for the remaining two
  callers in expandCondition() and collapseCondition(). Both of those
  need the initial width as-if visible and generally are not in charge
  direclty of making it visible (so there's no better place to measure
  it), and are in fact almost always called when the element is invisible,
  thus pretty much exclusively depending on it, not even as an edge case.

* In collapseCondition(), optimise the logic to remember whether
  collapsing is needed. This way, it won't need to call initialCactionsWidth()
  if the loop iterated zero times (turns out to be impossible, but not
  obvious from the code).

Follows-up 46f1d41 and 9b2bcbb.

Change-Id: I6f3a5c937eb17d194a7e00ab273768a5f2cb7cd2
2019-10-02 05:58:13 +00:00
Volker E 7446c28f79 Re-order `background*` properties to unify across files
Orienting on https://www.mediawiki.org/wiki/Topic:Tv3wddg7n9nz8ft8

Change-Id: I4504600fcc0c54f684eddde9c66cbc6b4d419846
2019-10-01 17:14:30 -07:00
jenkins-bot 60c59736da Merge "Replace raster image gradients with CSS where easily applicable" 2019-10-01 21:52:23 +00:00
Volker E 0e0d77fef3 Replace raster image gradients with CSS where easily applicable
Replace raster image gradients (before base64 embedded) for modern
browsers by CSS gradients. Only relying on conventional image URLs
in browsers that don't support linear-gradient.
Also
- adding a darkened border for inactive tabs to harmonize visual
  perception of border as one continuous line and
- DRYing tab separator selectors, saving ~8 bytes gzipped.

Bug: T63099
Bug: T121730
Change-Id: I76d32b84ddff06a2c7ef983e6f89ca6e74257a67
2019-10-01 14:24:07 -07:00
jenkins-bot ad3c268a93 Merge "Replace portal break image by SVG gradient" 2019-10-01 19:11:24 +00:00
Volker E 5ed9bf8be6 Replace portal break image by SVG gradient
Replace raster image gradients (before base64 embedded) for modern
browsers by CSS gradients. Only relying on conventional image URLs
in browsers that don't support linear-gradient.
Also updating color to Wikimedia Design Style Guide color and
removing obsolete *-ltr/*-rtl images that have been introduced in
MW core 1.16.0beta1 but have been replaced by unified 'portal-break'
image afterwards.

Bug: T63099
Bug: T121730
Change-Id: Id0ab5eb7d4a5751316ce750aff2dffbda62f6b09
2019-10-01 19:39:34 +01:00
Translation updater bot 46ad65a7b8 Localisation updates from https://translatewiki.net.
Change-Id: I656224205bd85d4c3ec95df6e18a0e7a4ee0bc82
2019-10-01 08:34:32 +02:00
Volker E 0175a2be2e Remove unneeded portal background properties.
Have been in since before Idfc38503d8397ffe where 'portal-break.png'
was still applied on `div.portal` and not ever after on `.portal .body`.

Change-Id: Icbaed3f9d41a46a0f5d17266c29703024ffc1412
2019-09-30 19:09:38 -07:00
Volker E 7227e50b0a Simplify watch link selectors
Change-Id: I51b1f66900dbc4982156b5356783a69a7025ebe7
2019-09-30 14:05:31 -07:00
Volker E 190d9830ca Reduce specificity by using classes without element selector addition
That's not only good practice, it also allows to widely simplify
'watchstar.less' selectors.

Change-Id: Ic31452f985e99d60f6fc71473be7de08bdc16148
2019-09-30 00:36:32 -07:00
Volker E 1d7c3fac99 Remove unneeded selector
Has been added in 8db5779682, but there's no `span` as direct child
of the watchstar `a` (any more).

Change-Id: I989cfd0c1fe30a0b4821f79e1d9377b8d888c24b
2019-09-30 00:07:17 -07:00
Volker E e3f9cdcf70 Variablize all `color` property values
Also going with `--modifier` naming scheme when direct pseudo-class
modifying variable. And fixing small typo.

Change-Id: Ife2f9dc9cb57c063a43e4b3dfad3c737aaf3b72b
2019-09-29 23:36:58 -07:00
Volker E 2b0a28cdcb Unify on variables and file names on 'navigation'
Navigation is the appropriate, general term – settling on it and
unifying file name and common abbreviation 'nav' for variable names.

Change-Id: I237b56320544de15e3b97c4806f6e2387bc54ca0
2019-09-29 13:27:15 -07:00
Volker E daa3611bce Unify LESS variable naming scheme for remaining `@color-*` variable
Unifying remaining navigation variable.

Change-Id: I9ff7f1d33e06d175c6e2fdd1ec5b58306d63e737
2019-09-28 01:16:24 -07:00
Volker E f29a1eba0a Unify LESS variable naming scheme for `@border-*` variables
Unifying variable naming to property-identifier-modifier scheme and
use already existing variables out of mediawiki.ui variables file,
which gets imported by Vector and its variables (like
`@border-width-base`) are already in use in a few places.

Change-Id: Ic25b1517bf180a9bce437215c1309bb9f4dd15be
2019-09-28 00:35:16 -07:00
Volker E 62560debb9 Unify LESS variable naming scheme for `@margin-*`/`@padding-*` variables
Unifying variable naming to property-identifier-modifier scheme.
Also removing `@padding` variable with only one single usage, instead of
extracting it from its place of application enable simpler readability.

Change-Id: I602fe645b233000bcecaeee6cf19d20e49a64c78
2019-09-27 23:24:34 -07:00
Volker E 0a2aa9f683 Unify heading font size variable naming
Follow-up to I378e8a2af91fe079

Change-Id: Ib1affae440f23e7d9b648ce4b8b85cf2d3a2e1d2
2019-09-27 22:45:01 -07:00
Volker E 83fbe68b5f Unify LESS variable naming scheme for `@line-height-*` variables
Unifying variable naming to property-identifier-modifier scheme.
Settling on non-em-based `line-height` values with one exception
of Vector tabs, where removing `em` would lead to different
calculation.
Also removing unneeded `inherit` assignment on content paragraphs
that has been part since Ic5ba836364.

Bug: T4013
Change-Id: I514467e4065d27de8d0ea82cdd3d23ccef6cffe3
2019-09-27 21:41:23 -07:00
jenkins-bot 0d097a2a43 Merge "Remove @embed page load delays (and misc optimisations)" 2019-09-28 02:06:38 +00:00
Volker E 78252928da Improve print LESS variable setting and handling
Print-only variables should belong only to print stylesheet.
Also clarifying usage and naming throughout file.

Change-Id: I40dec1baadcf3dbbcf44252a8f577f19017fcbbc
2019-09-27 16:11:40 -07:00
DannyS712 5de3655dfc Fix typo in skin.json ResourceModuleSkinStyles
Bug: T234003
Change-Id: I75ca8af43f68ea88eaed2244abac312de6d3edc4
2019-09-27 18:35:00 +00:00
Timo Tijhof 9cf7901ec9 Remove @embed page load delays (and misc optimisations)
* page-fade:
  Remove redundant 'background-image' PNG fallback for
  IE6-8 in '#mw-page-base' because the vertical-gradient() already
  creates a solid fallback color which seems good enough for IE6-8.

  Remove the 'background-color' rule which was only there to fill
  the gap above the the IE6-8 PNG image fallback, which in turn
  overrode the background-color rule from vertical-gradient.
  The background-repeat rule is also redundant with background-image
  gone.

* watch-icon-loading:
  This is only used when the JS code is active and the user
  clicks the watch star. It does not need a PNG fallback, as it
  is only needed in Grade A browsers where the JS executes,
  which are expected to support SVG.
  Also removed the embedding as the rendering of article text
  on page load should not be delayed by an icon that might
  be used if and when the user clicks on the watchstar (and
  irrelevant to logged-out users).

Bug: T121730
Change-Id: Ief4b80432fbe2ce7ebddf429f02c161048ed61d1
2019-09-27 18:03:25 +01:00
Translation updater bot 62d3053bf2 Localisation updates from https://translatewiki.net.
Change-Id: Ie347628c1ec3baed5aeda3711594c5b0fe72a620
2019-09-27 08:33:21 +02:00
Volker E 6cc10e47ac Replace fixed value with mediawiki.ui variable
Change-Id: Ie2f2c0519f543f7131ef62c0d94c8de27481d008
2019-09-26 18:54:56 -07:00
Volker E 9055676640 Unify LESS variable naming scheme for `@font-size-*` variables
Unifying variable naming to property-identifier-modifier scheme, while
also collecting all non-print values variables in corresponding file.
We will amend the `em` based values to calculations that will enable
rendered full pixel values and also fix some connected
usability issues in the future.

Change-Id: I378e8a2af91fe0790708e6fb2d2e7a5718ce93c5
2019-09-26 18:53:00 -07:00
jenkins-bot 0dcc6bf431 Merge "Update LESS variable naming scheme for `@font-family*` variables" 2019-09-27 00:25:18 +00:00
jenkins-bot fcfe5e3fd3 Merge "Align LESS color variables to naming scheme, combine and cleanup" 2019-09-27 00:25:17 +00:00
Volker E 258fdde8bf Update LESS variable naming scheme for `@font-family*` variables
Reyling only on base font family variables. It's debatable if
something like `@font-family-base` would make sense, but with only
3 variables the abstraction would seem over-engineered for the time being.

Change-Id: I294ef8753dd3c73f4ed3fd89d43978dfaf6e0f06
2019-09-26 15:54:46 -07:00
jenkins-bot 9a2ae86110 Merge "Remove `tabindex` attribute from search input" 2019-09-26 22:53:32 +00:00
Volker E 66aaf36bf6 Align LESS color variables to naming scheme, combine and cleanup
Merging similar value applications in generalized variables,
and aligning to property-identifier-modifier scheme.

Change-Id: I274ef24140a36e285c67b33a41ab6afe7c98676b
2019-09-26 15:39:25 -07:00
jenkins-bot dca6da5767 Merge "Increase distance of button to container" 2019-09-26 22:12:09 +00:00
Volker E bfc5a578d2 Remove `tabindex` attribute from search input
Relying on natural tab order seems to be the appropriate approach here.

Bug: T226148
Change-Id: I304996bfb8fba0e4172e01e0969162fd8cf0e0ee
2019-09-26 13:20:06 -07:00
Volker E 484077de01 Increase distance of button to container
Increasing the distance of the button slightly changes the position
from end, putting the icon in a more appropriate place (harmonized
whitespace of input value and icon).
Also simplifying `font-size` calculations readability and equalling
their values in search input and button.

Bug: T225331
Change-Id: I57f7efc61f3b770d7470d820402e2ea533364238
2019-09-26 12:15:38 -07:00
Translation updater bot 6f1afed52a Localisation updates from https://translatewiki.net.
Change-Id: I5c1b7f440d3cb862ff695b4605c11f53f89a2cc5
2019-09-25 08:41:33 +02:00
Translation updater bot d70b90e169 Localisation updates from https://translatewiki.net.
Change-Id: Ib3ffdfde2ad21589976a20346a71a2c9b48b7869
2019-09-23 08:30:09 +02:00
jenkins-bot 0f4c3f1197 Merge "Reduce footer selector specificity and clean up CSS" 2019-09-20 22:40:57 +00:00
jenkins-bot c15f05d7c9 Merge "Remove obsolete `.vectorMenu ul` selector" 2019-09-19 20:43:08 +00:00
Translation updater bot 1821589eb7 Localisation updates from https://translatewiki.net.
Change-Id: I3bbed8a105a4ed889c2cf801e784f66f7e56906c
2019-09-19 09:09:06 +02:00
Volker E 606365367f Reduce footer selector specificity and clean up CSS
Reducing specificity, simplifying output and merging `padding`
in one place into one shorthand attribute.

Change-Id: Ida96f18e9d90d55492ea114a7b5e3e1b8020c71f
2019-09-18 22:37:22 -07:00
Volker E b11b5d44f9 Remove obsolete `.vectorMenu ul` selector
Has been made obsolete in I8e45af51ffc.

Change-Id: I23c69b5615199899be9bc16ba012ed21e920f317
2019-09-18 15:37:36 -07:00
Translation updater bot 9e37e6b177 Localisation updates from https://translatewiki.net.
Change-Id: I946aaec653c69845f529a71b60f35232320949dd
2019-09-17 08:25:06 +02:00
Translation updater bot 4c4f944c05 Localisation updates from https://translatewiki.net.
Change-Id: I9e9c98b2c2c8df62d6c25a48ba6416e5607cbdcc
2019-09-16 09:16:43 +02:00
Translation updater bot 03da028209 Localisation updates from https://translatewiki.net.
Change-Id: I31c9a765064759519b1772d048d6102f70a53358
2019-09-13 09:34:57 +02:00
Translation updater bot 7e1a843ab2 Localisation updates from https://translatewiki.net.
Change-Id: Ie66b1a154f5722d042f4ee6d9897ec980afaa472
2019-09-12 08:38:51 +02:00
jenkins-bot bfb8ca9724 Merge "Decrease onresize debounce from 100ms to 10ms" 2019-09-11 21:04:22 +00:00
jenkins-bot a29c815a4f Merge "Use mw.util.debounce() in collapsibleTabs.js" 2019-09-11 21:01:37 +00:00
Timo Tijhof 75af9ec9b5 Decrease onresize debounce from 100ms to 10ms
The debounce is trailing, not leading/throttled. This means
the value doesn't decide how often it runs while the user is
resizing. It decides how long after they stop resizing will
it first run.

Given the calculation isn't super expensive, a much lower value
should suffice. The main thing we want is that while the user
is actively resizing and 100s of events are queued up (faster than
JS can process), that we wait until the end of the chain before
computing it (once). If the user actually stops moving, even for
a little bit, that little bit however small should be more than
long enough for a repaint to take place.

Test Plan:
* Open two tabs, one after checking out master, and
  one after checking out this patch. Make sure you are logged-in
  on MW as an administrator user (to get more tabs).
* Verify that `mw.loader.getVersion('skins.vector.js')` returns
  different values from the console for each.
* Resize the window from wide to very narrow and back.
  Before, the tab bar updates relatively late it feels sluggish.
  After, the tab bar appears to update as/while you let go.

Change-Id: If02338559abc71668d0655e8b3be1a5f73e646a9
2019-09-11 19:44:04 +00:00
Timo Tijhof f169c8b3f9 Use mw.util.debounce() in collapsibleTabs.js
Bug: T213426
Depends-On: If370b959b2617d0f506ac3ed344af8c6a667e70d
Change-Id: Ib006a570f9405bbd48bb7e81a3d98b562df22b00
2019-09-11 19:29:46 +00:00
jenkins-bot b5b5b3c5e3 Merge "vector.js: Use idle callback (not rAF) for computed style read" 2019-09-11 19:16:35 +00:00
Timo Tijhof 9b2bcbbcae vector.js: Use idle callback (not rAF) for computed style read
requestAnimationFrame (rAF) is called before styles are computed.
Performing a style read there can require a forced style
recalcution which interrupts the browser's natural rendering
life cycle.

To gracefully observe layout of the page without inducing the
cost to render it, it should be accessed after rendering.
A suitable API to schedule time there is requestIdleCallback.

In any event, if the code that needs this measurement executes
very early for some reason, it is still computed on-demand which
means it can't cause any functional regression.

Change-Id: I0d8d3a0b158fa3d9e0895760d0691757f918d91d
2019-09-11 02:18:04 +01:00
Translation updater bot be43cb9628 Localisation updates from https://translatewiki.net.
Change-Id: Ie704a4a2de9612b6078f8e6dc990d9b5fdf88af8
2019-09-09 08:32:50 +02:00
Translation updater bot 42f1a3d605 Localisation updates from https://translatewiki.net.
Change-Id: Ibaa1252d2741b54a1dbeb7e4fac5502b2a41eb4d
2019-09-04 09:16:36 +02:00
libraryupgrader 9eacb7ea30 build: Updating eslint-utils to 1.4.2
* https://npmjs.com/advisories/1118

Additional changes:
* Added .eslintcache to .gitignore.

Change-Id: I4a30cdbb28b52a7b2f2745ba5d644778cd301fdf
2019-08-24 03:17:50 +00:00
Translation updater bot c895043ed9 Localisation updates from https://translatewiki.net.
Change-Id: I98f383e7cc47b3976e7d6a4214a01b90a129947d
2019-08-23 09:58:49 +02:00
jenkins-bot 9a73dd93fd Merge "Cleaning a[redundant] is done in BaseTemplate" 2019-08-21 18:25:20 +00:00
Simon Legner 6b99f35cbe Cleaning a[redundant] is done in BaseTemplate
Relates to I630410aea2852f7a72fea67bbf256b3561ea0f3f.

Change-Id: I0e0ccad14236dfbfc82f38e8e4316a431dd38d7a
2019-08-21 18:03:47 +00:00
Translation updater bot 8189f42aae Localisation updates from https://translatewiki.net.
Change-Id: I1a25531233fbfd8f2b90f03d447c0e64574c6ad0
2019-08-21 10:20:16 +02:00
Translation updater bot 9f51a5d723 Localisation updates from https://translatewiki.net.
Change-Id: I3bf1d64798380d2488e53c863cfa0d4caa7cf759
2019-08-14 08:34:43 +02:00
Translation updater bot 1977d10939 Localisation updates from https://translatewiki.net.
Change-Id: Ic6216e150f7838b0c25350330c09b0c6f40faa58
2019-08-09 08:26:07 +02:00
Translation updater bot 62c0756ea3 Localisation updates from https://translatewiki.net.
Change-Id: I4f41e5d10e72a19bb92cb768079ad5a4d490aaf1
2019-07-29 08:32:28 +02:00
jenkins-bot b60d11851e Merge "Style RelatedArticle cards" 2019-07-26 19:35:32 +00:00
Translation updater bot af5258ac9a Localisation updates from https://translatewiki.net.
Change-Id: I86ab3bd65b83302e7e0169391b45f9138c22afb6
2019-07-22 22:16:51 +02:00
Volker E f4e6acb206 Remove falesly introduced RTL version of 'search' icon
It's not useful to mirror it for RTL languages, as it's a real world
object metaphor and is held in right hand for most users, no matter
what language. Sorry, left-hand users. Unify with Design Style Guide
search icon treatment.

Bug: T228435
Change-Id: I9ff688e4be801779a84b1026ca57cfb50209b53d
2019-07-18 11:22:31 -07:00
libraryupgrader 7cc8756e6f build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 24.0.0 → 26.0.0

npm:
* lodash: 4.17.11 → 4.17.14
  * https://npmjs.com/advisories/1065
  * CVE-2019-10744
* set-value: 2.0.0 → 2.0.1
  * https://npmjs.com/advisories/1012
  * CVE-2019-10747
* union-value: 1.0.0 → 1.0.1
  * https://npmjs.com/advisories/1012
  * CVE-2019-10747
* mixin-deep: 1.3.1 → 1.3.2
  * https://npmjs.com/advisories/1013
  * CVE-2019-10746

Change-Id: If00a2166eb92474205bda4823643565eab6acb8f
2019-07-16 07:51:49 +00:00
Translation updater bot 43d6b88ec6 Localisation updates from https://translatewiki.net.
Change-Id: Ic857b5f71de39ac0555c6aebe0f37ab3ec7fe1e2
2019-07-14 22:20:34 +02:00
James D. Forrester ac812a881b build: Upgrade phan-taint-check-plugin from 1.5.x to 2.0.1
Change-Id: I5e76e2f048d3c603a200f9019929e11c002b4a5c
2019-07-09 15:20:06 -07:00
jenkins-bot 7d46396dc1 Merge "Move DataAfterContent outside of main content block" 2019-07-08 21:18:34 +00:00
Translation updater bot c93bdc6410 Localisation updates from https://translatewiki.net.
Change-Id: I1b5aeb9b46f4f135c077d9c6129a66e7ea635b6c
2019-07-08 22:17:20 +02:00
Translation updater bot 5a123d8a2d Localisation updates from https://translatewiki.net.
Change-Id: I1f83e64c08c333788fceb697834efb5bf66efbd6
2019-07-07 22:11:01 +02:00
Translation updater bot 8d2959dad3 Localisation updates from https://translatewiki.net.
Change-Id: Ia120c766797309200ff0897f6da8f19ee96f9e5a
2019-07-03 22:12:46 +02:00
jenkins-bot d23885d297 Merge "Localisation updates from https://translatewiki.net." 2019-07-02 20:14:29 +00:00
Translation updater bot 521b8e97ff Localisation updates from https://translatewiki.net.
Change-Id: I80fd9e3553b67ad04714c859b242683a7c058efc
2019-07-02 22:14:11 +02:00
jenkins-bot 28bfa29dea Merge "SimpleSearch: Standardize input appearance" 2019-07-02 20:14:01 +00:00
Volker E 0c77e4f223 SimpleSearch: Standardize input appearance
Unifying Vector input appearance to follow Design Style Guide and OOUI,
additionally:
- Simplifying LESS code, reducing specificity to minimum needed
- Providing fallbacks where necessary to a wide range of browsers including IE8
- Better positioning and larger click area of search button

Bug: T225331
Change-Id: Iafeddf670a9c087e66acf5463c99351fc2d5d78c
2019-07-02 00:18:47 +00:00
Ed Sanders a4f61a832e CollapsibleTabs: Avoid Sizzle selectors
Change-Id: I199a11602df50f2120dce6f861bb4b6260ab9380
2019-07-01 16:02:07 +01:00
Translation updater bot a5c492414a Localisation updates from https://translatewiki.net.
Change-Id: I0ad6f5a7df0111e11a9f33d449e40ac48862e29d
2019-06-28 22:11:47 +02:00
Translation updater bot 62f4f2628c Localisation updates from https://translatewiki.net.
Change-Id: I25b9a034018c6e2801b0bcc07aa3de65a69330b2
2019-06-25 22:04:13 +02:00
Translation updater bot 81b7cb666f Localisation updates from https://translatewiki.net.
Change-Id: I1ad59195c945c6f27a5991dfd06330f10d96c87a
2019-06-23 22:11:27 +02:00
Isarra e08fc06fbd Style RelatedArticle cards
If RelatedArtcles uses the SkinAfterContent hook (depends-on patch)
and we move the hook out of the main content block (parent patch),
it needs some styles to remain consistent.

Bug: T181242
Change-Id: I2c5d4034890a5164896c1ef0570b31465a275890
Depeds-on: Iebd759c0d1a536768d18953f372664df762d9e04
2019-06-20 18:14:27 +00:00
Isarra 411a015ec5 Move DataAfterContent outside of main content block
Bug: T226199
Change-Id: Ie04d8d2bb1d44ec8a1c03fcc6f807668bab0377c
2019-06-20 17:55:55 +00:00
Volker E 609c11c51e De-specify selectors in 'responsive.less'
Reduce selector specificity in 'responsive.less' to a saner level.

Change-Id: I5f3a84b86e901589ce8b0cdec36e423693b693e9
2019-06-17 19:05:04 -07:00
Translation updater bot ad5e1e12ce Localisation updates from https://translatewiki.net.
Change-Id: I6caada187e086821caab9440d01ac22d95375a8f
2019-06-10 22:25:52 +02:00
libraryupgrader 881d96018f build: Updating mediawiki/mediawiki-phan-config to 0.6.1
Change-Id: I24f65c54517f4abbdca37e4c48b69eba3c41ab40
2019-06-10 15:49:21 +00:00
libraryupgrader 5914274354 build: Updating npm dependencies for security issues
* Updated stylelint-config-wikimedia to 0.6.0, addressing:
  * https://npmjs.com/advisories/786

Committed package-lock.json (T179229) too.

Change-Id: I8eafeb13195b405344ea6ce3da85a4c0f1c4e2a8
2019-06-09 06:51:07 +00:00
Translation updater bot a112518355 Localisation updates from https://translatewiki.net.
Change-Id: Ifb7fd7679d8b440a2160e780426121bde4931b9f
2019-06-08 22:12:38 +02:00
Translation updater bot e74d411edb Localisation updates from https://translatewiki.net.
Change-Id: I621356f47e03464f305ee2cc2846b91522649dc5
2019-06-06 22:22:14 +02:00
WMDE-Fisch 673fed9ac0 build: Upgrade eslint-config-wikimedia 0.12.0, drop grunt-jsonlint
Change-Id: Ie898fb12b4f144fcfa19c654fed48805df1ebe2d
2019-06-06 18:08:32 +02:00
Translation updater bot 3c28de8711 Localisation updates from https://translatewiki.net.
Change-Id: Id56d7bbdfbb8a2cf2527bc5a99212af152965e01
2019-06-02 22:01:05 +02:00
Translation updater bot 233cb3461b Localisation updates from https://translatewiki.net.
Change-Id: Ic90737d2c5d4ab450b5cb9d4a6c53334b4232a33
2019-05-26 21:59:11 +02:00
Translation updater bot 709ee12f3c Localisation updates from https://translatewiki.net.
Change-Id: Iafd8a937b3245ee9761bbc73d08feec043d25819
2019-05-23 22:42:38 +02:00
Translation updater bot e0ba61e4b8 Localisation updates from https://translatewiki.net.
Change-Id: Iafab1215f0d35e3a42e615ddbebec59b1abc1465
2019-05-22 22:06:07 +02:00
Translation updater bot 0e115cd70a Localisation updates from https://translatewiki.net.
Change-Id: Ib026d38157b7dffe07f801301b7bee62ce3b7c94
2019-05-20 21:57:54 +02:00
James D. Forrester be1a67018a build: Upgrade mediawiki/mediawiki-phan-config from 0.5.0 to 0.6.0
Change-Id: I0008085f6e5bf9a97eacaa29ae465916db90131a
2019-05-19 13:49:15 +02:00
Fomafix 3aeac1615b SkinVector: Call parent::__construct in constructor
With this change the constructor of the parent class gets called like if
there is no local constructor. This allows the ancestor classes to
initialize themself in their constructor.

Change-Id: I4ec1ec935afa25b59be4020fca9ac71f23e62ad0
2019-05-12 11:36:38 +02:00
Translation updater bot afbe0aa76a Localisation updates from https://translatewiki.net.
Change-Id: Ic1351f7569641450ac5c795d151c280d499551a0
2019-05-10 08:35:21 +02:00
Translation updater bot d73cd16e0a Localisation updates from https://translatewiki.net.
Change-Id: I65e227e2f36784e47e1f0b94563f12f284825d7e
2019-05-08 22:02:23 +02:00
Translation updater bot b1dc5e3f48 Localisation updates from https://translatewiki.net.
Change-Id: Id514797baa51581aae8c2367ba5a48572f5a725c
2019-05-05 21:58:31 +02:00
Translation updater bot 117a0abb98 Localisation updates from https://translatewiki.net.
Change-Id: Ie5dd52acd195e1bcb0b2ac667c09e5d5f900e62c
2019-05-03 22:06:46 +02:00
Translation updater bot 794e7523b7 Localisation updates from https://translatewiki.net.
Change-Id: I0456232b12ca0e4b1760262597cbaa547ef51848
2019-04-29 21:58:50 +02:00
Translation updater bot 250013c90c Localisation updates from https://translatewiki.net.
Change-Id: I11cf90e7977f2f666b98cfa9ace95791d6428322
2019-04-26 22:03:35 +02:00
Translation updater bot 0ce056c909 Localisation updates from https://translatewiki.net.
Change-Id: Ie58065cd015cda9bbdef5fd0b2ab1857ebb973d0
2019-04-22 09:04:04 +02:00
Translation updater bot 22a8380609 Localisation updates from https://translatewiki.net.
Change-Id: I3aaa0463bbd73ba1c2e2e123c901a4a7a874a672
2019-04-14 22:03:37 +02:00
Translation updater bot 878c1e8987 Localisation updates from https://translatewiki.net.
Change-Id: I25d9db143af9b5bb81aceaa06561dffa38d10993
2019-04-09 08:42:21 +02:00
Volker E 835bfa785f Update list bullet icon
Removing IE 6-8 fallback treatment and only provide SVG as
`list-style-image`. Also updating SVG fill color to use
text color.

Bug: T220327
Bug: T220328
Change-Id: I50ed85e420d6158e9ace5d879b6cf218a6a591b9
2019-04-07 23:08:38 -07:00
Volker E ec6b201456 Remove re-definition of default `list-style-type` value
Bug: T220317
Change-Id: I5bc0668011ee0ae553391888de35208acb8105b3
2019-04-07 17:42:39 -07:00
Timo Tijhof d56792addb Fix <h1> to be present even if title is "0"
Regression from 74b9803d9a, caused by a bug in LightNCandy which
caused {{foo}} to render "0", and {{#foo}} to pass as true with "0", but then
in {{#foo}}<b>{{foo}}</b>{{/foo} render as empty string producing "<b></b>".
In other words, the conditional is passing and the inner block is executed,
but the placeholder is mistakenly converting "0" => null => "" (empty string),
causing the <h1> to render but without any text in it.

Work around this bug by simply removing the conditional. Several other skins
already don't have this conditional and it's unclear why or in what
situation MediaWiki would send OutputPage to SkinTemplate without a title.

I think it would make sense in such rare case to still have a consistent
layout for extensions and gadgets to interact with and not omit the H1
element, but render it with the value that OutputPage gave it, even if it
is the empty string.

Bug: T219864
Change-Id: I6e04b512d2fe2e949ff5385cb38ceebe392fb255
2019-04-02 19:47:38 +01:00
jenkins-bot 10eaeeb5d3 Merge "Match frame and overlay appearance of ui-dialog to match WMUI" 2019-04-01 19:39:47 +00:00
Ed Sanders e2abfbd0db Match frame and overlay appearance of ui-dialog to match WMUI
Change-Id: I2098d28310e7fad61e7e9961b536bcac2890e1fd
2019-04-01 15:10:12 +01:00
Translation updater bot 6f2751d0e2 Localisation updates from https://translatewiki.net.
Change-Id: I1620304a2b222c56f3050cb63061f146064a8e17
2019-03-31 22:00:07 +02:00
jenkins-bot 9a0acd0288 Merge "Remove jquery.ui.spinner skin styles" 2019-03-28 21:17:15 +00:00
Ed Sanders 10ed1061bf Remove jquery.ui.spinner skin styles
Bug: T219403
Depends-On: Ifed9074cb49d146b4cd7e366bfc028854daf027b
Change-Id: If10a09e2bd2266244c4916ce480a77048de8736d
2019-03-28 19:19:41 +00:00
Michael Große 3669843c9f Fix invalid lang attribute on first heading
Bug: T219359
Change-Id: I0d6e036b65da024278fb492c6dfe44c79efb1e98
2019-03-28 11:54:40 +01:00
Translation updater bot 8b3688c946 Localisation updates from https://translatewiki.net.
Change-Id: Ib8c4cdf22b5822be8a6d1e9f34fc9fc7ce8a2180
2019-03-27 22:06:52 +01:00
Translation updater bot 558488b792 Localisation updates from https://translatewiki.net.
Change-Id: Ic0ce4e242abd430ddfe8921dc6fed8c4a41509f5
2019-03-26 08:53:30 +01:00
jenkins-bot 671d14d351 Merge "Upgrade to newer phan" 2019-03-21 06:55:46 +00:00
Kunal Mehta a21735b270 Upgrade to newer phan
Change-Id: If7d8badf4f5c564b7a9d6ab3575f9307ee98e9e7
2019-03-20 19:37:59 -07:00
jenkins-bot 787057fe20 Merge "Start extracting rendering from PHP into Mustache" 2019-03-18 22:34:11 +00:00
Translation updater bot 1923944b49 Localisation updates from https://translatewiki.net.
Change-Id: Id918dbc4611489bac3605a34a78ec77f5332daf5
2019-03-17 21:57:53 +01:00
Translation updater bot 0c147dd7aa Localisation updates from https://translatewiki.net.
Change-Id: I31469ee041516071fe116df93be632b3e7779415
2019-03-15 22:08:42 +01:00
Translation updater bot 34315f0311 Localisation updates from https://translatewiki.net.
Change-Id: I90ef1cbcf8131f3370fad18b94a426790a955404
2019-03-14 22:45:55 +01:00
Ed Sanders 7e76377bf8 build: Update eslint-config-wikimedia to 0.11.0
Change-Id: Idae38d2dff51827f7aff510d40b2358bf939b5e2
2019-03-13 23:23:14 +00:00
Translation updater bot f0b209ba50 Localisation updates from https://translatewiki.net.
Change-Id: I4ee588f853d72a26dc18cc1b70e66d62f4e8449c
2019-03-12 22:13:15 +01:00
Translation updater bot 5ffc988b5b Localisation updates from https://translatewiki.net.
Change-Id: Ieb33c15a3d01536980129c22e3bdc7e7364ad58e
2019-03-11 21:59:31 +01:00
Translation updater bot 5892f66a95 Localisation updates from https://translatewiki.net.
Change-Id: I121a379be3c2ddb86273cbc95c4b1d4f55266197
2019-03-08 22:08:01 +01:00
Translation updater bot 9fff19a87f Localisation updates from https://translatewiki.net.
Change-Id: I4b3f25e1086202a0e7f9116c50c486404851e906
2019-03-06 23:27:30 +01:00
Jdlrobson 74b9803d9a Start extracting rendering from PHP into Mustache
This reverts commit 8d0377d926
now a conversation has happened.

Bug: T217172
Change-Id: Id51bbd4358bdcc1131c11e13d5548e9c0474e711
2019-03-05 13:22:24 +00:00
Translation updater bot 26e880061f Localisation updates from https://translatewiki.net.
Change-Id: I95d4c187808d14b27eb4dc68523c83b8ae725ac5
2019-02-24 22:25:05 +01:00
Translation updater bot fa2831da39 Localisation updates from https://translatewiki.net.
Change-Id: I6993f81f8dbb8f67af593bcef565e1dc29610ee3
2019-02-21 21:58:58 +01:00
Translation updater bot 36e5af4cba Localisation updates from https://translatewiki.net.
Change-Id: I851311d2ca6f305ee796e1400d9b7ccfcfc9e90b
2019-02-19 22:03:45 +01:00
Translation updater bot bf675c6c53 Localisation updates from https://translatewiki.net.
Change-Id: I17c7ff15542316b62bbb5e5d8a2d719bfe03762a
2019-02-18 22:08:36 +01:00
Translation updater bot 255c18bb39 Localisation updates from https://translatewiki.net.
Change-Id: Ic0e005a51305062dafc9d9366d85b2f9101e552c
2019-02-17 21:57:51 +01:00
Translation updater bot 3a406ba1c1 Localisation updates from https://translatewiki.net.
Change-Id: I39150c4d3e169c80a3e3da9367794a0740b14203
2019-02-14 22:11:57 +01:00
Translation updater bot 4a62987dfa Localisation updates from https://translatewiki.net.
Change-Id: Ie04bcb62c257bb2bbdd371fdff0d03374c1b72d9
2019-02-11 22:01:21 +01:00
Translation updater bot 7d491a9ca0 Localisation updates from https://translatewiki.net.
Change-Id: I650f355551fbcbf982ffd847d8fedab8a43c5a4d
2019-02-10 22:02:30 +01:00
Ed Sanders e09e880e2f build: Update to eslint-config-wikimedia 0.10.1
Change-Id: Ie4363abc9c60291ef4a69f35973f3c25f5e3a3ec
2019-02-09 18:17:44 +00:00
libraryupgrader 317127137d build: Updating mediawiki/mediawiki-codesniffer to 24.0.0
Change-Id: I489f9a1e7d84de1cafe350e6a68c5ce2e29e93a3
2019-02-07 07:56:01 +00:00
Translation updater bot 6f7d0f8df4 Localisation updates from https://translatewiki.net.
Change-Id: I57ff218eb2ee6d364708127cc9fe3c1a99f313de
2019-02-05 22:15:24 +01:00
Translation updater bot 33833249a5 Localisation updates from https://translatewiki.net.
Change-Id: I22d3b8482787be33078f955f629cd0a9a350d7e2
2019-02-03 22:03:14 +01:00
Translation updater bot 479d13c0b9 Localisation updates from https://translatewiki.net.
Change-Id: Ib2708d4ea2d5d7d2981f2027448f1fe1d171b0c4
2019-01-30 21:56:09 +01:00
Translation updater bot 0161ab11ea Localisation updates from https://translatewiki.net.
Change-Id: Ie7662871bc4ee5b1f9a8b8d1eaf1ba70e99d2e71
2019-01-28 22:11:52 +01:00
Isarra 8d0377d926 Revert "Start extracting rendering from PHP into Mustache"
This reverts commit a3ca2c3e16.

Reason for revert: This requires wider discussion before moving
forward, and a more complete implementation even once we do have
consensus.

No associated task exists on which to view or continue this
discussion: linked task briefly mentions Mustache in general as an
option as part of a much wider topic, but doesn't concern this
specifically.

Issues that should be discussed include:
* What the intent even is here: is this for one skin only? Is this
  the intended path forward for all of them? Depending on which, we
  have other issues: for the former case, that it is quite
  unhelpful in terms of maintenance and further development having
  more random code diversity out there, especially in this
  half-completed state; or if it is indeed intended for all of them,
  that an RfC is needed before anything is merged, as that is a very
  significant change.
* That using Mustache in MediaWiki does add (usually minor)
  performance overhead; we need to clearly establish in the task that
  this is indeed worth it here.

Change-Id: I0bafa55b554aa8a38553e20c75859ec5eec2c062
2019-01-28 16:49:48 +00:00
Translation updater bot 8234491577 Localisation updates from https://translatewiki.net.
Change-Id: I73cf495e717fd3f4d9a175bad03d6999a76dc689
2019-01-24 22:37:48 +01:00
Timo Tijhof d306e07824 template: Avoid raw HTML parameter for jump link labels
Change-Id: I6c638118988b6fbea95697817edf8c59c0ef6a6b
2019-01-22 21:13:05 -08:00
Timo Tijhof 9cc0ca983c template: Remove is_callable check for getIndicators()
The VectorTemplate class extends BaseTemplate, which has defined
this method since MW 1.25. The Vector skin master branch supports
MW 1.29+ only.

Change-Id: I83c6add9e8c02df028ca5905934e7d367dbe2209
2019-01-22 21:13:05 -08:00
Timo Tijhof a3ca2c3e16 Start extracting rendering from PHP into Mustache
Bug: T140664
Change-Id: I249fead8e1c7bc5dc295457bd46b05e7ed389414
2019-01-22 21:13:05 -08:00
Translation updater bot 4927c84ac6 Localisation updates from https://translatewiki.net.
Change-Id: I4a645f2affc41e1f0791c3ca41428d5191a10a8f
2019-01-22 21:59:19 +01:00
Translation updater bot c2a11b4e36 Localisation updates from https://translatewiki.net.
Change-Id: If388699ad4274f195eaa5b5c45657a5530303ef7
2019-01-19 21:55:43 +01:00
Translation updater bot 9e9c6a6604 Localisation updates from https://translatewiki.net.
Change-Id: Ic7fa953763c11e824f83a396897d7f8f4d99954f
2019-01-18 21:56:54 +01:00
Fomafix c68a21e78a Remove space before Xml::expandAttributes()
Xml::expandAttributes() outputs a space at the beginning before it
outputs the attributs.
This change avoids a double space between the attributes.

Before this change the HTML contains:

  <a class="mw-wiki-logo" href="..."  title="...">

After this change the HTML contains:

  <a class="mw-wiki-logo" href="..." title="...">

Change-Id: I486d26bd56a4410766f40b78466c2f3559f3a1ff
2019-01-14 06:46:33 +01:00
jenkins-bot e646669f1e Merge "Avoid empty class="" without value" 2019-01-13 22:55:05 +00:00
Translation updater bot fe252bb744 Localisation updates from https://translatewiki.net.
Change-Id: I03bd19f652bdf8b4338ccbfb1f5106f32d41de50
2019-01-13 21:56:54 +01:00
Fomafix 82cbdb8111 Avoid empty class="" without value
Before this change the HTML contains:

<div id="p-personal" role="navigation" class="" ...>
or
<div id="p-personal" role="navigation" class=" emptyPortlet" ...>

After this change the HTML contains:

<div id="p-personal" role="navigation" ...>
or
<div id="p-personal" role="navigation" class="emptyPortlet" ...>

Change-Id: Ic686b958940afc958693d0031ac31e5f783960a9
2019-01-13 20:02:01 +01:00
Translation updater bot 8994137e2a Localisation updates from https://translatewiki.net.
Change-Id: I4d336a357deda6ef021b979e7d4d5e38471ed607
2019-01-12 22:14:03 +01:00
Ed Sanders 8634a77d0e build: Update linters
Change-Id: I8b99db813f12dc2031b5a1c195e6480f5512792a
2019-01-11 13:03:15 +00:00
jenkins-bot b4355e039f Merge "Use `opacity` for a WikimediaUI aligned transition on opening menu" 2019-01-10 07:04:38 +00:00
Volker E 20cbac1f5b build: Remove 'stylelint' package as it gets pulled-in by 'stylelint-config-wikimedia'
Change-Id: I164512519c0b34fc9d9a9415e55f265ebf3d1ad0
2019-01-09 13:14:10 -08:00
Translation updater bot 41ae520d7a Localisation updates from https://translatewiki.net.
Change-Id: I4235d19bb182522d6375eb7c0e672e8d95f56882
2019-01-09 22:02:25 +01:00
Translation updater bot 6823fbd99e Localisation updates from https://translatewiki.net.
Change-Id: I2ffd35199f3a46bd8b680c520fd5219016d990b2
2019-01-07 22:21:59 +01:00
Translation updater bot a89613802d Localisation updates from https://translatewiki.net.
Change-Id: I91492a2b55201c1fd239df60d55db617fe4f6b7a
2019-01-06 22:15:11 +01:00
Translation updater bot 210c282aa5 Localisation updates from https://translatewiki.net.
Change-Id: I1526f8e073972336ebf463a588232c085fce70a7
2019-01-01 22:00:02 +01:00
Translation updater bot b2a37bc6a5 Localisation updates from https://translatewiki.net.
Change-Id: I530e257d1ed5e710decb33d849b5e914ebfe6887
2018-12-27 09:20:15 +01:00
Translation updater bot bd058c4940 Localisation updates from https://translatewiki.net.
Change-Id: I6a12a722d5cdcc30d590f24130496f3fc57602e6
2018-12-18 22:29:58 +01:00
Kunal Mehta 872da65bb0 build: Set "root": true, in .eslintrc.json
This ensures that each repository's "npm test" command is fully
independent of wherever it might be in the filesystem.

Bug: T206485
Change-Id: If3491ee3453bbd7591027986a2f0b678c1a51794
2018-12-17 19:02:54 -08:00
Translation updater bot 148aeb6260 Localisation updates from https://translatewiki.net.
Change-Id: Ia59b1ffd5b5a0ddeb296d06d8e0698f759663242
2018-12-05 22:09:38 +01:00
Translation updater bot 3a94725934 Localisation updates from https://translatewiki.net.
Change-Id: Ie7ded64b3058087e5ab8340026bdfa1b896a7242
2018-12-04 21:57:00 +01:00
Volker E 0e089a0d4c build: Update 'stylelint-config-wikimedia' and make pass
Change-Id: I147ea18307c58c5091c5ad79585b5acec9d46235
2018-12-02 14:40:28 -08:00
Translation updater bot da0fa6280b Localisation updates from https://translatewiki.net.
Change-Id: I2e70b81c0f321f489544e8f6edfc59f0df4ed098
2018-12-01 22:02:07 +01:00
Volker E 85cce3dcaa Use `opacity` for a WikimediaUI aligned transition on opening menu
Replacing `display` with `visibility` and add a transition to
overflow menu.

Change-Id: Iaef15dcd342c15410c56e00988f130056fe269e2
2018-11-26 20:08:53 -08:00
jenkins-bot b9555e4bb3 Merge "Vector menu: Simplify and cleanup LESS structure" 2018-11-27 00:27:36 +00:00
Ed Sanders 828452ff27 build: Update eslint-config-wikimedia to 0.9.0
Change-Id: I3ea907f6ef3b6337c1e793668ae889610fc6a635
2018-11-26 23:39:36 +00:00
Volker E d0360d0b04 Vector menu: Simplify and cleanup LESS structure
Grouping related things, nest selectors in LESS way for easier
readability.
Placing `.vectorTabs li` & `.vectorMenuCheckbox` styles mostly
in its own nested selector to lower specificity.

Change-Id: I8e45af51ffcec618d585a54417e6a7cc3a9b82ad
2018-11-26 10:21:42 -08:00
Translation updater bot 170d7c07a2 Localisation updates from https://translatewiki.net.
Change-Id: Idb0f4ec0107c8f413e5fdfda75d98babde993eff
2018-11-19 21:59:25 +01:00
Translation updater bot bef5514c56 Localisation updates from https://translatewiki.net.
Change-Id: If1797c95f1d35c54f50f7c8b05771d04c46488e8
2018-11-18 22:27:48 +01:00
Translation updater bot ecb9a60c35 Localisation updates from https://translatewiki.net.
Change-Id: I116a78b4423d3398818eb722cf2e0214af143889
2018-11-16 22:08:19 +01:00
jenkins-bot 9744648ffc Merge "Remove obsolete aliases from closures" 2018-11-16 17:28:18 +00:00
Ed Sanders b61ad3a9a7 Remove obsolete aliases from closures
Bug: T208951
Change-Id: I6ca9ca80473317e44a10c268c7058bc2cf4d7b58
2018-11-16 15:35:52 +00:00
libraryupgrader 0388cd7f69 build: Updating mediawiki/mediawiki-codesniffer to 23.0.0
Change-Id: I1f518ca56c9eb193e9ca198a3a94600168bbc3dc
2018-11-16 14:47:11 +00:00
Volker E da6d4eb280 Remove unnecessary div wrapper on overflow menu
Unordered lists can be absolute positioned down to IE 7.
Outdated selector `.vectorMenu ul` remains for a release cycle
until HTML cache is renewed.

Bug: T209558
Change-Id: Id18ca9a8d705572b1f7e17920ef52b80e9aec373
2018-11-14 20:41:08 -08:00
Translation updater bot 8d7fa67747 Localisation updates from https://translatewiki.net.
Change-Id: I3b1bfe78bb932b1139bbea0fd71ff7bdd4ecbe51
2018-11-12 21:58:12 +01:00
Translation updater bot 155be74428 Localisation updates from https://translatewiki.net.
Change-Id: Ie15f225d9d60a4bcfb4f87d1ec0717b09e0a01e9
2018-11-11 21:54:42 +01:00
Translation updater bot 046a79ed2e Localisation updates from https://translatewiki.net.
Change-Id: I9e89df0ac95093efe92cff1b8a1817433a427188
2018-11-08 22:00:23 +01:00
jenkins-bot 3b6815c4d1 Merge "Remove obsolete Special:Preferences styles after its transformation to OOUI" 2018-11-08 11:41:01 +00:00
Translation updater bot 4e115ac969 Localisation updates from https://translatewiki.net.
Change-Id: I9a3656e2187a8204e3510083b3d81e265cc428e1
2018-11-07 22:03:12 +01:00
Volker E 221b0b165a Remove obsolete Special:Preferences styles after its transformation to OOUI
These removed styles match no elements in the
Special:Preferences page since the OOUI transformation.

Bug: T208923
Change-Id: Iccbdcea5d5f769edfd8640c536e31289da9ee954
2018-11-07 12:50:57 -08:00
Translation updater bot b4b48b1836 Localisation updates from https://translatewiki.net.
Change-Id: Ie824945ffb43387ecb03006d50257106f27ddba7
2018-11-03 10:39:58 +01:00
jenkins-bot 675e557b75 Merge "Add method scope visibility" 2018-11-01 20:28:10 +00:00
Umherirrender 4b5f4256e1 Add method scope visibility
Change-Id: If1705b4834fb1ebeb1260cde26a2e3e3c4ca94a0
2018-11-01 21:01:32 +01:00
Ed Sanders 329f0c7327 build: Update devDependencies
eslint-config-wikimedia  0.7.2  →  0.8.1

Change-Id: I7a5553e9abf44fb681825c83c1984aae883f9c72
2018-11-01 11:20:46 +00:00
Translation updater bot aa08cd2118 Localisation updates from https://translatewiki.net.
Change-Id: I4777d5f54a4484a985d2ea4fe410bb7895f59061
2018-10-25 22:21:40 +02:00
Translation updater bot a2d4ff658e Localisation updates from https://translatewiki.net.
Change-Id: If6f5b29bb2a5e86b0fd14e259c6d8cf24319c93d
2018-10-18 22:19:05 +02:00
Volker E 6c3e0b62f2 Use `list-style` shorthand with x-browser compatible values
Change-Id: I6e47cb2dc406b9cfa3e2ca9b63f8cecce7c59ce1
2018-10-15 19:13:07 -07:00
Volker E f42faabb49 Bring personal tools' icons on baseline with label
Put icons on baseline as good as possible cross-browser. It's
complete waste of time trying. And is partly originated
in different internal text node sizing in various browsers,
biggest browser share difference is Chrome/Yandex/Safari 5 on Windows
against all others. Partly it's a result of us relying on `sans-serif`
generic font family instead of `Arial` – it results in different letter
baseline position within font's virtual letter box, which eats my limited
time on Planet Earth uselessly away.
Also adding and renaming LESS variable for proper code style.

Bug: T207075
Change-Id: I92acb9851a3c0acdbc40a4a4528a91c7332c9293
2018-10-15 19:02:18 -07:00
648 changed files with 45059 additions and 3566 deletions

7
.eslintignore Normal file
View File

@ -0,0 +1,7 @@
/.storybook/
/docs/
/a11y/
/i18n/
/node_modules/
/vendor/
/coverage/

View File

@ -1,7 +1,17 @@
{
"extends": "wikimedia",
"env": {
"browser": true,
"jquery": true
"root": true,
"extends": [
"wikimedia/client-es5",
"wikimedia/jquery",
"wikimedia/mediawiki"
],
"rules": {
"//": [
"off",
"ResourceLoader's `packageFiles` do not require wrapping but the `module` option is only available in ES6+."
],
"no-implicit-globals": "off",
"compat/compat": "warn",
"mediawiki/class-doc": "off"
}
}

27
.eslintrcEs6.json Normal file
View File

@ -0,0 +1,27 @@
{
"root": true,
"extends": [
"wikimedia/client-es6",
"wikimedia/jquery",
"wikimedia/mediawiki"
],
"env": {
"browser": true
},
"globals": {
"exports": true
},
"parserOptions": {
"sourceType": "module"
},
"settings": {
"jsdoc": {
"preferredTypes": {
"VectorHeaderObserver": "VectorHeaderObserver"
}
}
},
"rules": {
"mediawiki/class-doc": "off"
}
}

11
.gitignore vendored
View File

@ -20,9 +20,10 @@ sftp-config.json
# Building & testing
/composer.lock
/docs
/a11y
/node_modules
/vendor
/tests/phan/issues
/coverage
# Operating systems
## Mac OS X
@ -40,3 +41,11 @@ Thumbs.db
/tags
/.htaccess
/.htpasswd
.eslintcache
# storybook
/.storybook/resolve-less-imports/
/.storybook/resolve-imports/
/.storybook/integration.less
.vscode
/.phpunit.result.cache

1
.nvmrc Normal file
View File

@ -0,0 +1 @@
14.17.5

View File

@ -16,9 +16,4 @@
*
*/
$cfg = require __DIR__ . '/../../vendor/mediawiki/mediawiki-phan-config/src/config.php';
// phan doesn't support @inheritDoc yet
$cfg['suppress_issue_types'][] = 'PhanParamSignatureMismatch';
return $cfg;
return require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php';

View File

@ -1,9 +1,7 @@
<?xml version="1.0"?>
<ruleset>
<rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
<exclude name="Squiz.Scope.MethodScope.Missing" />
</rule>
<rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki" />
<file>.</file>
<arg name="extensions" value="php,php5,inc"/>
<arg name="extensions" value="php"/>
<arg name="encoding" value="UTF-8"/>
</ruleset>

28
.storybook/common.less Normal file
View File

@ -0,0 +1,28 @@
@import '../resources/common/variables.less';
@import './integration.less';
@import './icons.less';
body {
font-family: @font-family-sans;
margin: 0;
}
a {
text-decoration: none;
}
ul {
padding: 0;
}
#mw-panel {
background-color: @background-color-secondary;
}
.printfooter {
display: none;
}
.vector-storybook-example-table tr {
vertical-align: top;
}

5
.storybook/config.js Normal file
View File

@ -0,0 +1,5 @@
import { configure } from '@storybook/html';
import './common.less';
// automatically import all files ending in *.stories.js
configure(require.context('../stories', true, /\.stories\.js$/), module);

101
.storybook/icons.less Normal file
View File

@ -0,0 +1,101 @@
.vector-menu-dropdown .vector-menu-heading:after {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23202122' d='m11.05 3.996-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5'/%3E%3C/svg%3E%0A") !important;
}
.mw-wiki-logo {
background-image: url(https://en.wikipedia.org/static/images/project-logos/enwiki-2x.png);
background-size: 135px auto;
}
.oo-ui-icon-bell {
opacity: 0.51;
background-image: linear-gradient(transparent,transparent),
url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 0 0-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 0 0 4 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 0 0 3-3H7a3 3 0 0 0 3 3z%22/%3E%3C/svg%3E");
}
.oo-ui-icon-tray {
background-image: linear-gradient(transparent,transparent),
url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22/%3E%3C/svg%3E");
}
.mw-ui-icon-add:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elanguage%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M11 9V4H9v5H4v2h5v5h2v-5h5V9z'/%3E%3C/g%3E%3C/svg%3E");
}
.mw-ui-icon-add-invert:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elanguage%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11 9V4H9v5H4v2h5v5h2v-5h5V9z'/%3E%3C/g%3E%3C/svg%3E");
}
.mw-ui-icon-add-progressive:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elanguage%3C/title%3E%3Cg fill='%23447ff5'%3E%3Cpath d='M11 9V4H9v5H4v2h5v5h2v-5h5V9z'/%3E%3C/g%3E%3C/svg%3E");
}
.mw-ui-icon-add-destructive:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elanguage%3C/title%3E%3Cg fill='%23ff4242'%3E%3Cpath d='M11 9V4H9v5H4v2h5v5h2v-5h5V9z'/%3E%3C/g%3E%3C/svg%3E");
}
.uls-trigger {
background-image: linear-gradient(transparent,transparent),
url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E %3Ctitle%3E language %3C/title%3E %3Cpath d=%22M20 18h-1.44a.61.61 0 0 1-.4-.12.81.81 0 0 1-.23-.31L17 15h-5l-1 2.54a.77.77 0 0 1-.22.3.59.59 0 0 1-.4.14H9l4.55-11.47h1.89zm-3.53-4.31L14.89 9.5a11.62 11.62 0 0 1-.39-1.24q-.09.37-.19.69l-.19.56-1.58 4.19zm-6.3-1.58a13.43 13.43 0 0 1-2.91-1.41 11.46 11.46 0 0 0 2.81-5.37H12V4H7.31a4 4 0 0 0-.2-.56C6.87 2.79 6.6 2 6.6 2l-1.47.5s.4.89.6 1.5H0v1.33h2.15A11.23 11.23 0 0 0 5 10.7a17.19 17.19 0 0 1-5 2.1q.56.82.87 1.38a23.28 23.28 0 0 0 5.22-2.51 15.64 15.64 0 0 0 3.56 1.77zM3.63 5.33h4.91a8.11 8.11 0 0 1-2.45 4.45 9.11 9.11 0 0 1-2.46-4.45z%22/%3E %3C/svg%3E") !important;
}
.mw-ui-icon-wikimedia-language:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elanguage%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M20 18h-1.44a.61.61 0 01-.4-.12.81.81 0 01-.23-.31L17 15h-5l-1 2.54a.77.77 0 01-.22.3.59.59 0 01-.4.14H9l4.55-11.47h1.89zm-3.53-4.31L14.89 9.5a11.62 11.62 0 01-.39-1.24q-.09.37-.19.69l-.19.56-1.58 4.19zm-6.3-1.58a13.43 13.43 0 01-2.91-1.41 11.46 11.46 0 002.81-5.37H12V4H7.31a4 4 0 00-.2-.56C6.87 2.79 6.6 2 6.6 2l-1.47.5s.4.89.6 1.5H0v1.33h2.15A11.23 11.23 0 005 10.7a17.19 17.19 0 01-5 2.1q.56.82.87 1.38a23.28 23.28 0 005.22-2.51 15.64 15.64 0 003.56 1.77zM3.63 5.33h4.91a8.11 8.11 0 01-2.45 4.45 9.11 9.11 0 01-2.46-4.45z'/%3E%3C/g%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-userTalk:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser talk%3C/title%3E%3Cpath d='M18 0H2a2 2 0 00-2 2v18l4-4h14a2 2 0 002-2V2a2 2 0 00-2-2zm-4 4a1.5 1.5 0 11-1.5 1.5A1.5 1.5 0 0114 4zM6 4a1.5 1.5 0 11-1.5 1.5A1.5 1.5 0 016 4zm4 8c-2.61 0-4.83-.67-5.65-3h11.3c-.82 2.33-3.04 3-5.65 3z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-sandbox:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esandbox%3C/title%3E%3Cpath d='M8 12V9l6-6 3 3-6 6H8zm10-7l-3-3 2-2 3 3-2 2zM8 2h2v2H8zM4 2h2v2H4zM0 3a1 1 0 011-1h1v2H0V3zm0 3h2v2H0zm0 4h2v2H0zm0 4h2v2H0zm0 4h2v2H1a1 1 0 01-1-1v-1zm4 0h2v2H4zm4 0h2v2H8zm4 0h2v1a1 1 0 01-1 1h-1v-2zm0-4h2v2h-2z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-settings:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse transform='rotate(45)' xlink:href='%23a'/%3E%3Cuse transform='rotate(90)' xlink:href='%23a'/%3E%3Cuse transform='rotate(135)' xlink:href='%23a'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 000 15 7.5 7.5 0 000-15v4a3.5 3.5 0 010 7 3.5 3.5 0 010-7'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-unStar:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eun-star%3C/title%3E%3Cpath d='M20 7h-7L10 .5 7 7H0l5.46 5.47-1.64 7 6.18-3.7 6.18 3.73-1.63-7z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-userContributions:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser contributions%3C/title%3E%3Ccircle cx='2' cy='4' r='2'/%3E%3Ccircle cx='2' cy='10' r='2'/%3E%3Ccircle cx='2' cy='16' r='2'/%3E%3Ccircle cx='15.5' cy='10.5' r='2.5'/%3E%3Cpath d='M6 15h3v2H6zm0-6h5v2H6zm0-6h11v2H6zm9.5 10.556c-3.33 0-4.5 1.666-4.5 2.777V18h9v-1.667c0-1.11-1.17-2.777-4.5-2.777z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-logIn:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elog in%3C/title%3E%3Cpath d='M1 11v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V3c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6h8V5l4.75 5L9 15v-4H1z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-logOut:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Elog out%3C/title%3E%3Cpath d='M3 3h8V1H3a2 2 0 00-2 2v14a2 2 0 002 2h8v-2H3z'/%3E%3Cpath d='M13 5v4H5v2h8v4l6-5z'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-ellipsis:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eellipsis%3C/title%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Ccircle cx='3' cy='10' r='2'/%3E%3Ccircle cx='17' cy='10' r='2'/%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-search:before {
background-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%3Ctitle%3Esearch%3C%2Ftitle%3E%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M12.2%2013.6a7%207%200%20111.4-1.4l5.4%205.4-1.4%201.4-5.4-5.4zM13%208A5%205%200%20113%208a5%205%200%200110%200z%22%2F%3E%3C%2Fsvg%3E");
}
.mw-ui-icon-wikimedia-userAvatar:before {
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='UTF-8'?%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cpath d='M10 11c-5.92 0-8 3-8 5v3h16v-3c0-2-2.08-5-8-5z'/%3E%3Ccircle cx='10' cy='5.5' r='4.5'/%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-watchlist:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E watchlist %3C/title%3E%3Cpath d='M1 3h16v2H1V3Zm0 6h6v2H1V9Zm0 6h8v2H1v-2Zm8-4.24h3.85L14.5 7l1.65 3.76H20l-3 3.17.9 4.05-3.4-2.14L11.1 18l.9-4.05-3-3.19Z'/%3E%3C/svg%3E")
}
.vector-user-menu-legacy #pt-anonuserpage,
.vector-user-menu-legacy #pt-tmpuserpage,
.vector-user-menu-legacy #pt-userpage a {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAx0lEQVQ4jdXSzQmEQAwFYEuYUixhSwgkA8mQgKXYgS3YgXZgCZagHWgHuxf14t8osssGcv145CVJvjk+hBRFK2TrkK1D0cqHkN7CUBRI7L21KAqXMIDModiwD9oAkLlH0i3L+ooGiTWPAPPfJQTIHLGOB9h46YZnKS+3PI8PISW2GkV7FO2Jrb79h4+ODyElsYJYm437NSRWRCWdylgj++U0u+UAZI5E22hsWW03UWQtr2NT66zlCjz8uzNQbFiDN7F5/xB8aj57Ynp2FKI0bAAAAABJRU5ErkJggg==") !important;
}
.mw-ui-icon-wikimedia-speechBubbles:before {
background-image: linear-gradient(transparent, transparent), url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Espeech bubbles%3C/title%3E%3Cg fill=%22%23000%22%3E%3Cpath d=%22M17 4v7a2 2 0 01-2 2H4v1a2 2 0 002 2h10l4 4V6a2 2 0 00-2-2zM6 10H0v6z%22/%3E%3Crect width=%2216%22 height=%2212%22 rx=%222%22/%3E%3C/g%3E%3C/svg%3E");
}
.mw-ui-icon-wikimedia-history:before {
background-image: linear-gradient(transparent, transparent), url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ehistory%3C/title%3E%3Cg fill=%22%23000%22%3E%3Cpath d=%22M9 6v5h.06l2.48 2.47 1.41-1.41L11 10.11V6z%22/%3E%3Cpath d=%22M10 1a9 9 0 00-7.85 13.35L.5 16H6v-5.5l-2.38 2.38A7 7 0 1110 17v2a9 9 0 000-18z%22/%3E%3C/g%3E%3C/svg%3E");
}

View File

@ -0,0 +1,79 @@
const path = require( 'path' );
module.exports = {
resolve: {
alias: {
// FIXME: These imports should be updated in the story files instead of here.
'../resources/skins.vector.styles/Footer.less': '../resources/common/components/Footer.less',
'../resources/skins.vector.styles/LanguageButton.less': '../resources/skins.vector.styles/components/LanguageButton.less',
'../resources/skins.vector.styles/skin-legacy.less': '../resources/skins.vector.styles.legacy/skin-legacy.less',
'../resources/skins.vector.styles/Logo.less': '../resources/skins.vector.styles/components/Logo.less',
'../resources/skins.vector.styles/Menu.less': '../resources/common/components/Menu.less',
'../.storybook/common.less': '../resources/common/common.less',
'../resources/skins.vector.styles/MenuDropdown.less': '../resources/common/components/MenuDropdown.less',
'../resources/skins.vector.styles/MenuPortal.less': '../resources/common/components/MenuPortal.less',
'../resources/skins.vector.styles/MenuTabs.less': '../resources/common/components/MenuTabs.less',
'../resources/skins.vector.styles/TabWatchstarLink.less': '../resources/common/components/TabWatchstarLink.less',
'../resources/skins.vector.styles/SearchBox.less': '../resources/common/components/SearchBox.less',
'../resources/skins.vector.styles/Sidebar.less': '../resources/skins.vector.styles/components/Sidebar.less',
'../resources/skins.vector.styles/SidebarLogo.less': '../resources/common/components/SidebarLogo.less',
'../resources/skins.vector.styles/MenuPortal.less': '../resources/common/components/MenuPortal.less'
}
},
module: {
rules: [ {
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
// Beware of https://github.com/babel/babel-loader/issues/690. Changes to browsers require
// manual invalidation.
cacheDirectory: true
}
}
},
{
test: /\.css$/,
use: [ {
loader: 'style-loader'
}, {
loader: 'css-loader'
} ]
},
{
test: /\.(gif|png|jpe?g|svg)$/i,
loader: 'file-loader',
options: {
paths: [
path.resolve( __dirname, './resolve-imports' )
]
}
},
{
// in core some LESS imports don't specify filename
test: /\.less$/,
use: [ {
loader: 'style-loader'
}, {
loader: 'css-loader',
options: {
// FIXME: Disable resolving of CSS urls until Storybook is upgraded
// to use Webpack 5 and array values for aliases
// (which would cleanly resolve urls in LESS partial starting with `url(images/...)` )
url: false
}
}, {
loader: 'less-loader',
options: {
relativeUrls: true,
strictUnits: true,
paths: [
path.resolve( __dirname, 'resolve-imports' )
]
}
} ]
},
]
}
};

6
.stylelintignore Normal file
View File

@ -0,0 +1,6 @@
/.storybook/
/docs/
/node_modules/
/skinStyles/jquery.ui/
/vendor/
/coverage/

View File

@ -1,7 +1,13 @@
{
"extends": "stylelint-config-wikimedia",
"extends": [
"stylelint-config-wikimedia/support-modern",
"stylelint-config-wikimedia/mediawiki"
],
"reportNeedlessDisables": true,
"rules": {
"selector-max-id": null,
"no-descending-specificity": null
"declaration-property-unit-disallowed-list": null,
"no-descending-specificity": null,
"selector-class-pattern": null,
"selector-max-id": null
}
}

40
.svgo.config.js Normal file
View File

@ -0,0 +1,40 @@
/**
* SVGO Configuration
* Compatible to v2.4.0+
* Recommended options from:
* https://www.mediawiki.org/wiki/Manual:Coding_conventions/SVG#Exemplified_safe_configuration
*/
module.exports = {
plugins: [
{
// Set of built-in plugins enabled by default.
name: 'preset-default',
params: {
overrides: {
cleanupIDs: false,
removeDesc: false,
removeTitle: false,
removeViewBox: false,
// If the SVG doesn't start with an XML declaration, then its MIME type will
// be detected as "text/plain" rather than "image/svg+xml" by libmagic and,
// consequently, MediaWiki's CSSMin CSS minifier. libmagic's default database
// currently requires that SVGs contain an XML declaration:
// https://github.com/threatstack/libmagic/blob/master/magic/Magdir/sgml#L5
removeXMLProcInst: false
}
}
},
'removeRasterImages',
'sortAttrs'
],
// Set whitespace according to Wikimedia Coding Conventions.
// @see https://github.com/svg/svgo/blob/v2.8.0/lib/stringifier.js#L41 for available options.
js2svg: {
eol: 'lf',
finalNewline: true,
// Configure the indent to tabs (default 4 spaces) used by `--pretty` here.
indent: '\t',
pretty: true
},
multipass: true
};

36
Doxyfile Normal file
View File

@ -0,0 +1,36 @@
PROJECT_NAME = Vector
PROJECT_BRIEF = "Vector is a skin for MediaWiki. Vector has been the default skin on all Wikimedia wikis since 2010."
OUTPUT_DIRECTORY = docs
HTML_OUTPUT = php
# Intepret the first line of a comment as a brief description?
JAVADOC_AUTOBRIEF = YES
QT_AUTOBRIEF = YES
WARN_NO_PARAMDOC = YES
INPUT = .
EXCLUDE_PATTERNS = doc docs vendor node_modules tests
FILE_PATTERNS = *.php
# Search through subdirectories for input files?
RECURSIVE = YES
# NOTE: USE_MDFILE_AS_MAINPAGE requires that the specified file is included as an input file.
USE_MDFILE_AS_MAINPAGE = ./README.md
INPUT += ./README.md
HTML_DYNAMIC_SECTIONS = YES
GENERATE_TREEVIEW = YES
TREEVIEW_WIDTH = 250
GENERATE_LATEX = NO
HAVE_DOT = YES
DOT_FONTNAME = Helvetica
DOT_FONTSIZE = 12
TEMPLATE_RELATIONS = YES
# Makes dot run faster. Requires graphviz >1.8.10
DOT_MULTI_TARGETS = YES

View File

@ -1,43 +0,0 @@
/* eslint-env node */
module.exports = function ( grunt ) {
var conf = grunt.file.readJSON( 'skin.json' );
grunt.loadNpmTasks( 'grunt-banana-checker' );
grunt.loadNpmTasks( 'grunt-eslint' );
grunt.loadNpmTasks( 'grunt-jsonlint' );
grunt.loadNpmTasks( 'grunt-stylelint' );
grunt.initConfig( {
eslint: {
all: [
'*.js',
'**/*.js',
'!node_modules/**',
'!vendor/**'
]
},
jsonlint: {
all: [
'*.json',
'**/*.json',
'!node_modules/**',
'!vendor/**'
]
},
banana: conf.MessagesDirs,
stylelint: {
options: {
syntax: 'less'
},
all: [
'*.{less,css}',
'**/*.{less,css}',
'!node_modules/**',
'!skinStyles/jquery.ui/**',
'!vendor/**'
]
}
} );
grunt.registerTask( 'test', [ 'eslint', 'jsonlint', 'banana', 'stylelint' ] );
grunt.registerTask( 'default', 'test' );
};

View File

@ -1,28 +1,53 @@
Vector Skin
========================
Configuration options
---------------------
Installation
------------
### $wgVectorPrintLogo
See <https://www.mediawiki.org/wiki/Skin:Vector>.
Logo used in print styles. Keys are `url`, `width`, and `height` (in
pixels). Note that this solution only works correctly if the image
pointed to by `url` is an SVG that does not specify width and height
attributes, or its width and height match the corresponding variables
below. Alternatively, a PNG or other type of image can be used, but
its dimensions also need to match the corresponding variable below.
That in turn may result in blurry images, though.
### Configuration options
The URL can be absolute or relative.
See [skin.json](skin.json).
Example configuration:
Development
-----------
$wgVectorPrintLogo = [
'url' => 'https://en.wikipedia.org/static/images/mobile/copyright/wikipedia-wordmark-en.svg',
'width' => 174,
'height' => 27
];
### Node version
* Type: `Array`
* Default: `false`
It is recommended to use [nvm](https://github.com/nvm-sh/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`:
```bash
$ export PRE_COMMIT=0
$ git commit
```
Or more succinctly:
```bash
$ PRE_COMMIT=0 git commit
```
Skipping the pre-commit tests has no impact on Gerrit change identifier hooks.
### Hooks
See [hooks.txt](hooks.txt).

22
bundlesize.config.json Normal file
View File

@ -0,0 +1,22 @@
[
{
"resourceModule": "skins.vector.styles.legacy",
"maxSize": "7.9 kB"
},
{
"resourceModule": "skins.vector.styles",
"maxSize": "11.0 kB"
},
{
"resourceModule": "skins.vector.legacy.js",
"maxSize": "2.2 kB"
},
{
"resourceModule": "skins.vector.search",
"maxSize": "3 kB"
},
{
"resourceModule": "skins.vector.icons",
"maxSize": "1 kB"
}
]

View File

@ -1,167 +0,0 @@
/*
* Any rules which should not be flipped automatically in right-to-left situations should be
* prepended with @noflip in a comment block.
*
*/
@import 'mediawiki.mixins';
/* Framework */
html {
font-size: @html-font-size;
}
html,
body {
height: 100%;
margin: 0;
padding: 0;
font-family: @content-font-family;
}
body {
background-color: @menu-background-color;
}
/* Content */
.mw-body,
.parsoid-body {
padding: @content-padding;
background-color: @body-background-color;
color: @content-font-color;
direction: ltr;
}
.mw-body {
margin-left: 10em;
/* Border on top, left, and bottom side */
border: 1px solid @content-border-color;
border-right-width: 0;
/* Merge the border with tabs' one (in their background image) */
margin-top: -1px;
// h1's can exist outside of mw-body-content so some heading styles
// need to be defined in mw-body as well
& h1,
&-content h1,
&-content h2 {
font-family: @content-heading-font-family;
line-height: @heading-line-height;
margin-bottom: 0.25em;
padding: 0;
/* Fallback heading font for scripts which render poorly in @content-heading-font-family. */
/* See T73240 */
&:lang( ja ), /* See T65817 */
&:lang( he ), /* See T65843 and T65844 */
&:lang( ko ) { /* See T65827 */
font-family: @content-heading-font-family-generic;
}
/* Burmese (Myanmar) language headlines would be cropped with set `line-height` */
/* See T193270 */
&:lang( my ) {
line-height: normal;
}
}
& h1,
&-content h1 {
font-size: @content-heading-font-size;
}
.firstHeading {
/* Change the default from mediawiki.skinning CSS to let indicators float into heading area */
overflow: visible;
}
.mw-indicators {
float: right;
line-height: @content-line-height;
font-size: @content-font-size;
/* Ensure that this is displayed on top of .mw-body-content and clickable */
position: relative;
z-index: 1;
}
.mw-indicator {
display: inline-block;
zoom: 1;
// Support: IE7
*display: inline; // stylelint-disable declaration-block-no-duplicate-properties
}
}
.mw-body-content {
position: relative;
line-height: @content-line-height;
font-size: @content-font-size;
z-index: 0;
p {
line-height: inherit;
margin: 0.5em 0;
}
h1 {
margin-top: 1em;
}
h2 {
font-size: 1.5em;
margin-top: 1em;
}
h3,
h4,
h5,
h6 {
line-height: @content-line-height;
margin-top: 0.3em;
margin-bottom: 0;
padding-bottom: 0;
}
h3 {
font-size: 1.2em;
}
h3,
h4 {
font-weight: bold;
}
h4,
h5,
h6 {
font-size: 100%; /* (reset) */
}
.toc h2 {
font-size: 100%; /* (reset) */
font-family: @content-font-family;
}
}
/* Allow edit sections outside of mw-body-content (T160269) */
.mw-editsection,
.mw-editsection-like {
font-family: @content-font-family;
}
/* Hide empty portlets */
div.emptyPortlet {
display: none;
}
ul {
list-style-type: disc;
.list-style-image-svg('images/bullet-icon.svg', 'images/bullet-icon.png');
}
pre,
.mw-code {
line-height: 1.3em;
}
/* Site Notice (includes notices from CentralNotice extension) */
#siteNotice {
font-size: 0.8em;
}

View File

@ -1,10 +0,0 @@
@import 'mediawiki.mixins.less';
// External links
.mw-parser-output {
.external {
background-position: center right;
background-repeat: no-repeat;
.background-image-svg( 'images/external-link-ltr-icon.svg', 'images/external-link-ltr-icon.png' );
padding-right: 13px;
}
}

View File

@ -1,48 +0,0 @@
/* Footer */
#footer {
margin-left: 10em;
margin-top: 0;
padding: 0.75em;
direction: ltr;
ul {
list-style-type: none;
list-style-image: none;
margin: 0;
padding: 0;
li {
color: #222;
margin: 0;
padding: 0;
padding-top: 0.5em;
padding-bottom: 0.5em;
font-size: 0.7em;
}
}
#footer-icons {
float: right;
li {
float: left;
margin-left: 0.5em;
line-height: 2em;
text-align: right;
}
}
#footer-info {
li {
line-height: 1.4em;
}
}
#footer-places {
li {
float: left;
margin-right: 1em;
line-height: 2em;
}
}
}

View File

@ -1,142 +0,0 @@
@import 'mediawiki.mixins';
@import 'personalMenu';
@import 'search';
@import 'tabs';
/* Hide, but keep accessible for screen-readers */
#mw-navigation h2 {
position: absolute;
top: -9999px;
}
.mw-jump-link:not( :focus ) {
.mixin-screen-reader-text;
}
/* Head */
#mw-page-base {
height: 5em;
background-position: bottom left;
background-repeat: repeat-x;
/* This image is only a fallback (for IE 6-9), so we do not @embed it. */
background-image: url( images/page-fade.png );
.vertical-gradient( @body-background-color, @menu-background-color, 50%, 100% );
background-color: @body-background-color;
}
#mw-head-base {
margin-top: -5em;
margin-left: 10em;
height: 5em;
}
#mw-head {
position: absolute;
top: 0;
right: 0;
width: 100%;
}
/* Navigation Containers */
#left-navigation {
float: left;
margin-left: 10em;
margin-top: 2.5em;
/* When right nav would overlap left nav, it's placed below it
(normal CSS floats behavior). This rule ensures that no empty space
is shown between them due to right nav's margin-top. Page layout
is still broken, but at least the nav overlaps only the page title
instead of half the content. */
margin-bottom: -2.5em;
}
#right-navigation {
float: right;
margin-top: 2.5em;
}
/* Logo */
#p-logo {
width: 10em;
height: 160px;
a {
display: block;
width: 10em;
height: 160px;
background-repeat: no-repeat;
background-position: center center;
text-decoration: none;
}
}
/* Panel */
#mw-panel {
font-size: @menu-main-font-size;
position: absolute;
top: 0;
width: 10em;
left: 0;
.portal {
margin: 0 0.6em 0 0.7em;
padding: 0.25em 0;
direction: ltr;
background-position: top left;
background-repeat: no-repeat;
h3 {
font-size: @menu-main-heading-font-size;
color: @menu-main-heading-color;
font-weight: normal;
margin: 0.5em 0 0 (@menu-main-body-margin-left/@menu-main-heading-font-size);
padding: 0.25em 0;
cursor: default;
border: 0;
}
.body {
margin-left: @menu-main-body-margin-left;
padding-top: 0;
.background-image( 'images/portal-break.png' );
background-repeat: no-repeat;
ul {
list-style: none none;
margin: 0;
padding: @menu-main-body-padding;
}
li {
line-height: 1.125em;
margin: 0;
padding: 0.25em 0;
font-size: @menu-main-body-font-size;
word-wrap: break-word;
a {
color: @menu-main-body-link-color;
&:visited {
color: @menu-main-body-link-visited-color;
}
}
}
}
}
/* First sidebar portlet. Not using :first-of-type for IE<=8 support. */
#p-logo + .portal {
background-image: none;
margin-top: 1em;
h3 {
display: none;
}
.body {
background-image: none;
margin-left: @menu-main-body-margin-left;
}
}
}

View File

@ -1,45 +0,0 @@
/* Personal */
#p-personal {
position: absolute;
top: 0.33em;
right: 0.75em;
/* Display on top of page tabs - bugs 37158, 48078 */
z-index: 100;
h3 {
display: none;
}
ul {
list-style-type: none;
list-style-image: none;
margin: 0;
padding-left: 10em; /* Keep from overlapping logo */
}
li {
float: left;
margin-left: 0.75em;
margin-top: 0.5em;
font-size: @menu-personal-font-size;
line-height: @line-height-menu-personal;
white-space: nowrap;
}
}
/* Icon for Usernames */
#pt-userpage a,
#pt-anonuserpage {
// SVG support using a transparent gradient to guarantee cross-browser
// compatibility (browsers able to understand gradient syntax support also SVG)
.background-image-svg( 'images/user-avatar.svg', 'images/user-avatar.png' );
background-position: left top;
background-repeat: no-repeat;
background-size: @line-height-menu-personal @line-height-menu-personal;
padding-left: 16px !important; // stylelint-disable-line declaration-no-important
}
/* Show "Not logged in" text in gray */
#pt-anonuserpage {
color: #54595d;
}

View File

@ -1,111 +0,0 @@
@import 'mediawiki.mixins';
@import 'mediawiki.ui/variables';
/* Search */
#p-search {
float: left;
margin-right: 0.5em;
margin-left: 0.5em;
h3 {
.mixin-screen-reader-text;
}
form,
input {
margin: 0.4em 0 0;
}
}
#simpleSearch {
background-color: #fff;
.background-image( 'images/search-fade.png' );
background-position: top left;
background-repeat: repeat-x;
color: #000;
display: block;
width: 12.6em;
width: 20vw; /* responsive width */
min-width: 5em;
max-width: 20em;
padding-right: 1.4em;
height: 1.4em;
margin-top: 0.65em;
position: relative;
min-height: 1px; /* Gotta trigger hasLayout for IE7 */
border: 1px solid @colorGray10;
border-radius: @borderRadius;
.transition( border-color 250ms );
&:hover {
border-color: @colorGray7;
}
// Styles for both the search input and the button
input {
background-color: transparent;
color: #000;
margin: 0;
padding: 0;
border: 0;
}
// The search input
#searchInput {
width: 100%;
padding: 0.2em 0 0.2em 0.2em;
font-size: 0.8125em; // equals `13px` at browser default of `16px`
direction: ltr;
&:focus {
outline: 0;
}
/* stylelint-disable indentation */
.mixin-placeholder( {
color: @colorGray7;
opacity: 1;
} );
/* stylelint-enable indentation */
// Undo the styles Webkit browsers apply to type=search fields,
// we provide our own
-webkit-appearance: textfield;
&::-webkit-search-decoration,
&::-webkit-search-cancel-button,
&::-webkit-search-results-button,
&::-webkit-search-results-decoration {
-webkit-appearance: textfield;
}
}
// The buttons. They are displayed in the same position, and if both are
// present the fulltext search one obscures the 'Go' one.
#searchButton,
#mw-searchButton {
position: absolute;
top: 0;
right: 0;
width: 1.65em;
height: 100%;
cursor: pointer;
/* Hide button text and replace it with the image. */
text-indent: -99999px;
/* Opera 12 on RTL flips the text in a funny way without this. */
/* @noflip */
direction: ltr;
white-space: nowrap;
overflow: hidden;
}
#searchButton {
.background-image-svg( 'images/search-ltr.svg', 'images/search-ltr.png' );
background-position: center center;
background-repeat: no-repeat;
}
#mw-searchButton {
z-index: 1;
}
}

View File

@ -1,242 +0,0 @@
/**
* Styling for namespace tabs (page, discussion) and views (read, edit, view history, watch and other actions)
*/
/* Navigation Labels */
.vectorTabs h3 {
display: none;
}
/* Namespaces and Views */
.vectorTabs {
float: left;
height: 2.5em;
.background-image('images/tab-break.png');
background-position: bottom left;
background-repeat: no-repeat;
padding-left: 1px;
ul {
float: left;
height: 100%;
list-style-type: none;
list-style-image: none;
margin: 0;
padding: 0;
.background-image('images/tab-break.png');
background-position: right bottom;
background-repeat: no-repeat;
li {
float: left;
line-height: 1.125em;
display: block;
height: 100%;
margin: 0;
padding: 0;
.background-image('images/tab-normal-fade.png');
background-position: bottom left;
background-repeat: repeat-x;
white-space: nowrap;
}
}
li {
&.new {
a,
a:visited {
color: #a55858;
}
}
&.selected {
.background-image('images/tab-current-fade.png');
a,
a:visited {
color: #222;
text-decoration: none;
}
}
&.icon {
a {
background-position: bottom right;
background-repeat: no-repeat;
}
}
a {
display: block;
height: 1.9em;
padding-left: 0.615em; // equals `8px` at computed `font-size` of `13px` below
padding-right: 0.615em;
color: @menu-link-color;
cursor: pointer;
font-size: 0.8125em; // equals `13px` at browser default of `16px`
}
}
span {
display: inline-block;
.background-image('images/tab-break.png');
background-position: bottom right;
background-repeat: no-repeat;
height: 100%;
a {
float: left;
display: block;
position: relative;
padding-top: 1.25em;
}
}
}
/* Variants and Actions */
.vectorMenu {
direction: ltr;
float: left;
cursor: pointer;
position: relative;
line-height: 1.125em;
}
#mw-head .vectorMenu h3 {
float: left;
.background-image('images/tab-break.png');
background-repeat: no-repeat;
background-position: bottom right;
font-size: 1em;
height: 2.5em;
// `padding-right` >= `1px` effectively moves the "background border" outside of the element to
// act like a real border. It is necessary for `.vectorMenu .menu` dropdown to align well.
// 0.5em equals `8px` at computed `font-size` of `14px` as visually harmonically with
// `padding-left` in `.vectorMenu h3 span`
padding: 0 0.5em 0 0;
margin: 0 -1px 0 0;
}
.vectorMenu h3 {
span {
position: relative;
display: block;
font-size: 0.8125em;
padding-left: 0.615em;
padding-top: 1.25em;
padding-right: 16px;
font-weight: normal;
color: #444;
&:after {
content: '';
position: absolute;
top: 1.25em;
right: 0;
bottom: 0;
left: 0;
.background-image-svg('images/arrow-down.svg', 'images/arrow-down.png');
background-position: 100% 50%;
background-repeat: no-repeat;
// Modify the color of the image from the default #222 to approx. #444 to match the text.
opacity: 0.85;
}
}
&:hover span,
&:focus span {
color: @content-font-color;
&:after {
opacity: 1;
}
}
}
.vectorMenu .vectorMenuCheckbox:checked + h3 span:after {
transform: scaleY( -1 );
}
.vectorMenu .vectorMenuCheckbox:focus + h3 {
// Simulate browser focus ring
outline: dotted 1px; // Firefox style
outline: auto -webkit-focus-ring-color; // Webkit style
}
.vectorMenu .menu {
// Match the width of the dropdown "heading" (the tab)
min-width: 100%;
position: absolute;
top: 2.5em;
left: -1px;
background-color: @body-background-color;
border: 1px solid #a2a9b1;
border-top-width: 0;
clear: both;
box-shadow: 0 1px 1px 0 rgba( 0, 0, 0, 0.1 );
text-align: left;
display: none;
// Menus must overlap indicators (z-index: 1) and VisualEditor toolbar (z-index: 2)
z-index: 2;
}
.vectorMenu:hover .menu {
display: block;
}
// This is in a separate block, so that browsers supporting :hover but not :checked still apply the rule above
// Support: IE8
.vectorMenu .vectorMenuCheckbox:checked ~ .menu {
display: block;
}
.vectorMenu ul {
list-style-type: none;
list-style-image: none;
padding: 0;
margin: 0;
text-align: left;
}
.vectorMenu li {
padding: 0;
margin: 0;
text-align: left;
line-height: 1em;
}
.vectorMenu li a {
display: block;
padding: 0.625em;
white-space: nowrap;
color: @menu-link-color;
cursor: pointer;
font-size: 0.8125em;
}
.vectorMenu li.selected a,
.vectorMenu li.selected a:visited {
color: #222;
text-decoration: none;
}
// Invisible checkbox covering the dropdown menu handle
.vectorMenuCheckbox {
cursor: pointer;
position: absolute;
top: 0;
left: 0;
z-index: 1;
opacity: 0;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
// Hide the checkbox completely in browsers that don't support :checked
display: none;
}
:not( :checked ) > .vectorMenuCheckbox {
// When the browser supports :checked, display it
display: block;
}
@import 'watchstar.less';

View File

@ -1,51 +0,0 @@
@import 'mediawiki.mixins.rotation';
/* Watch/Unwatch Icon Styling */
/* Only use icon if the menu item is not collapsed into the "More" dropdown
* (in which case it is inside .vectorMenu instead of .vectorTabs). */
.vectorTabs {
#ca-unwatch.icon a,
#ca-watch.icon a {
margin: 0;
padding: 0;
display: block;
width: 28px;
/* This hides the text but shows the background image */
/* Must not exceed parent's height, otherwise the background disappears on Chrome (T196610) */
padding-top: 2.5em / 0.8125;
height: 0;
overflow: hidden;
background-position: 5px 60%;
background-repeat: no-repeat;
}
#ca-unwatch.icon a {
.background-image-svg( 'images/unwatch-icon.svg', 'images/unwatch-icon.png' );
}
#ca-watch.icon a {
.background-image-svg( 'images/watch-icon.svg', 'images/watch-icon.png' );
}
#ca-unwatch.icon a:hover,
#ca-unwatch.icon a:focus {
.background-image-svg( 'images/unwatch-icon-hl.svg', 'images/unwatch-icon-hl.png' );
}
#ca-watch.icon a:hover,
#ca-watch.icon a:focus {
.background-image-svg( 'images/watch-icon-hl.svg', 'images/watch-icon-hl.png' );
}
#ca-unwatch.icon a.loading,
#ca-watch.icon a.loading {
.background-image-svg( 'images/watch-icon-loading.svg', 'images/watch-icon-loading.png' );
.rotation( 700ms );
/* Suppress the hilarious rotating focus outline on Firefox */
outline: 0;
cursor: default;
pointer-events: none;
background-position: 50% 60%;
-webkit-transform-origin: 50% 57%;
transform-origin: 50% 57%;
}
#ca-unwatch.icon a span,
#ca-watch.icon a span {
display: none;
}
}

View File

@ -20,36 +20,44 @@
"support": {
"wiki": "https://www.mediawiki.org/wiki/Skin:Vector",
"forum": "https://www.mediawiki.org/wiki/Skin_talk:Vector",
"source": "https://phabricator.wikimedia.org/diffusion/SVEC/",
"irc": "irc://irc.freenode.org/mediawiki"
"source": "http://gerrit.wikimedia.org/g/mediawiki/skins/Vector",
"irc": "irc://irc.libera.chat/mediawiki"
},
"require": {
"php": ">=5.5.9",
"composer/installers": ">1.0.12"
},
"extra": {
"branch-alias": {
"dev-master": "1.x-dev"
},
"installer-name": "Vector",
"phan-taint-check-plugin": "1.5.0"
"installer-name": "Vector"
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "1.0.0",
"mediawiki/mediawiki-codesniffer": "22.0.0",
"jakub-onderka/php-console-highlighter": "0.3.2",
"mediawiki/minus-x": "0.3.1",
"mediawiki/mediawiki-phan-config": "0.3.0"
"johnkary/phpunit-speedtrap": "^3.1",
"mediawiki/mediawiki-codesniffer": "39.0.0",
"mediawiki/mediawiki-phan-config": "0.11.1",
"mediawiki/minus-x": "1.1.1",
"php-parallel-lint/php-console-highlighter": "1.0.0",
"php-parallel-lint/php-parallel-lint": "1.3.2",
"phpunit/phpunit": "^8.5.0"
},
"scripts": {
"fix": [
"phpcbf",
"minus-x fix ."
"minus-x fix .",
"phpcbf"
],
"test": [
"parallel-lint . --exclude node_modules --exclude vendor",
"phpcs -p -s",
"@phpcs",
"minus-x check ."
]
],
"test:size": "phpunit -c ../../phpunit.xml.dist tests/phpunit/structure/BundleSizeTest.php --verbose",
"phan": "phan -d . --long-progress-bar",
"phpcs": "phpcs -sp --cache"
},
"config": {
"allow-plugins": {
"composer/installers": true
}
}
}

24
dev-scripts/setup-storybook.sh Executable file
View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
set -euo pipefail
IFS=$'\n\t'
mkdir -p .storybook/resolve-imports/mediawiki.ui
mkdir -p .storybook/resolve-imports/assets
rm -f .storybook/resolve-imports/mediawiki.skin.variables.less
cp resources/mediawiki.less/mediawiki.skin.variables.less .storybook/resolve-imports/
# Fetch resources via curl, `-sSL` silently, Show only errors, Location header and also with a 3XX response code.
curl -sS "https://www.mediawiki.org/w/load.php?only=styles&skin=vector&debug=true&modules=ext.echo.styles.badge|ext.uls.pt|wikibase.client.init|mediawiki.skinning.interface|mediawiki.ui.icon|mediawiki.ui.button" -o .storybook/integration.less
curl -sSL "https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/resources/src/mediawiki.less/mediawiki.skin.defaults.less?format=TEXT" | base64 --decode > .storybook/resolve-imports/mediawiki.skin.defaults.less
curl -sSL "https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/resources/src/mediawiki.less/mediawiki.mixins.less?format=TEXT" | base64 --decode > .storybook/resolve-imports/mediawiki.mixins.less
curl -sSL "https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/resources/src/mediawiki.less/mediawiki.ui/variables.less?format=TEXT" | base64 --decode > .storybook/resolve-imports/mediawiki.ui/variables.less
curl -sSL "https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/resources/src/mediawiki.less/mediawiki.mixins.rotation.less?format=TEXT" | base64 --decode > .storybook/resolve-imports/mediawiki.mixins.rotation.less
curl -sSL "https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/resources/src/mediawiki.less/mediawiki.mixins.animation.less?format=TEXT" | base64 --decode > .storybook/resolve-imports/mediawiki.mixins.animation.less
curl -sS "https://en.m.wikipedia.org/static/images/mobile/copyright/wikipedia-wordmark-en.svg" -o ".storybook/resolve-imports/assets/wordmark.svg"
curl -sS "https://en.m.wikipedia.org/static/images/mobile/copyright/wikipedia.png" -o ".storybook/resolve-imports/assets/icon.png"
curl -sS "https://en.wikipedia.org/static/images/mobile/copyright/wikipedia-tagline-en.svg" -o ".storybook/resolve-imports/assets/tagline.svg"
# Add less variable support
echo "@msg-parentheses-start: '(';" >> .storybook/resolve-imports/mediawiki.skin.defaults.less
echo "@msg-parentheses-end: ')';" >> .storybook/resolve-imports/mediawiki.skin.defaults.less

View File

@ -1,12 +0,0 @@
Hooks provided by the Vector skin.
'VectorAfterToolbox': Called after rendering the toolbox portlet (div#p-tb).
You can use this to inject items (such as ads or a hit counter, for example)
from an extension.
This is the Vector couterpart to the MonoBookAfterToolbox hook in the MonoBook
skin.
'VectorBeforeFooter': Called before the footer (div#footer) is output, but after
div#mw-navigation has been closed.
You can use this to inject items (such as ads or a hit counter, for example)
from an extension.

View File

@ -1,13 +1,19 @@
{
"@metadata": {
"authors": [
"Fraxinus.cs",
"Pupsik-ipa",
"Temuri rajavi"
]
},
"vector-action-move": "Ахьӡ аҧсахра",
"vector-language-button-label": "{{PLURAL:$1|$1 абызшәа|$1 абызшәақәа}}",
"vector-action-addsection": "Атема ацҵатәуп",
"vector-action-delete": "Ианыхтәуп",
"vector-action-move": "Ахьӡ аԥсахра",
"vector-view-create": "Арҿиара",
"vector-view-edit": "Ариашамҭа",
"vector-view-edit": "Аредакциазура",
"vector-view-history": "Аҭоурых",
"vector-view-view": "Аҧхьара",
"vector-view-viewsource": "Ахәаҧшра"
"vector-view-view": "Аԥхьара",
"vector-view-viewsource": "Ахәаԥшра",
"vector-more-actions": "Еиҭа"
}

View File

@ -5,6 +5,7 @@
"Si Gam Acèh"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 bahsa}}",
"vector-action-addsection": "Tamah bhaih",
"vector-action-delete": "Sampôh",
"vector-action-move": "Pupinah",

15
i18n/acm.json Normal file
View File

@ -0,0 +1,15 @@
{
"@metadata": {
"authors": [
"Ahmedadeljaff"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 لغـة|$1 لغـات}}",
"vector-action-addsection": "شارك مقالة",
"vector-view-create": "سوي",
"vector-view-edit": "تعديل",
"vector-view-history": "شوف التاريخ",
"vector-view-view": "اقرأ",
"vector-more-actions": "بعد",
"vector-searchsuggest-containing": "بحث عن صفحات تحوي <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -4,12 +4,12 @@
"Adamsa123",
"Amire80",
"Celekan",
"Siklawy",
"GR44 Luc",
"SamGamgee",
"SmartNart12",
"Highlander45temp",
"Inyzh",
"Highlander45temp"
"SamGamgee",
"Siklawy",
"SmartNart12"
]
},
"vector-action-addsection": "Ӏофтхьабз",

View File

@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
"علاء",
"Csisc"
"Csisc",
"Meno25",
"Michel Bakni",
"علاء"
]
},
"vector-action-addsection": "أضف موضوعاً",
@ -15,6 +17,6 @@
"vector-view-edit": "بدّل",
"vector-view-history": "ورّي الپاج",
"vector-view-view": "أقرا",
"vector-view-viewsource": "اعرض المصدر",
"vector-view-viewsource": "عرض المصدر",
"vector-more-actions": "زادة"
}

View File

@ -1,21 +0,0 @@
{
"@metadata": {
"authors": [
"Csisc",
"Malekbr",
"GeekEmad"
]
},
"vector-action-addsection": "أضف موضوعا",
"vector-action-delete": "احذف",
"vector-action-move": "انقل",
"vector-action-protect": "احم",
"vector-action-undelete": "استرجع الحذف",
"vector-action-unprotect": "غير الحماية",
"vector-view-create": "أنشئ",
"vector-view-edit": "Baddel",
"vector-view-history": "Warri listorik",
"vector-view-view": "Aqrê",
"vector-view-viewsource": "اعرض المصدر",
"vector-more-actions": "Akŧar"
}

View File

@ -1,10 +1,14 @@
{
"@metadata": {
"authors": [
"Amire80",
"Byeboer",
"Naudefj"
"Naudefj",
"Rooiratel"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 taal|$1 tale}}",
"vector-no-language-button-label": "Voeg tale by",
"vector-action-addsection": "Nuwe onderwerp",
"vector-action-delete": "Skrap",
"vector-action-move": "Skuif",
@ -16,5 +20,11 @@
"vector-view-history": "Wys geskiedenis",
"vector-view-view": "Lees",
"vector-view-viewsource": "Wys bronteks",
"vector-more-actions": "Meer"
"vector-more-actions": "Meer",
"vector-searchsuggest-containing": "Soek vir bladsye wat <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> bevat",
"vector-toc-heading": "Inhoud",
"vector-toc-toggle-position-title": "versteek",
"vector-toc-beginning": "Begin",
"vector-toc-menu-tooltip": "Inhoudsopgawe",
"vector-toc-collapsible-button-label": "Wissel die inhoudsopgawe"
}

22
i18n/alt.json Normal file
View File

@ -0,0 +1,22 @@
{
"@metadata": {
"authors": [
"Agilight",
"Altai uul",
"HalanTul",
"Батыр Комдошев"
]
},
"vector-action-addsection": "Тема кожор",
"vector-action-delete": "Јоголтор",
"vector-action-move": "Адын солыыр",
"vector-action-protect": "Корыыр",
"vector-action-undelete": "Орныктырар",
"vector-action-unprotect": "Корышты солыыр",
"vector-view-create": "Јайалга",
"vector-view-edit": "Тӱзедери",
"vector-view-history": "Тӱӱкини кӧргӱзер",
"vector-view-view": "Кычырар",
"vector-view-viewsource": "Темдектерин кӧрӧр",
"vector-more-actions": "Кӧптӧдӧ"
}

View File

@ -1,14 +1,19 @@
{
"@metadata": {
"authors": [
"Akamycoco",
"Amire80",
"Vickylin77s"
]
},
"vector-action-addsection": "micomod hasasowalen",
"vector-action-delete": "masopitay to",
"vector-action-move": "malinah",
"vector-view-create": " misanga",
"vector-action-protect": "midipot",
"vector-view-create": "misanga",
"vector-view-edit": "misinanot",
"vector-view-history": " misongila a minengneng to likisi",
"vector-view-view": " miasip",
"vector-view-history": "misongila a minengneng to likisi",
"vector-view-view": "miasip",
"vector-view-viewsource": "misongila a minengneng to yin-se-ma",
"vector-more-actions": "matongal ko adihay"
}

View File

@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Juanpabl",
"Carlos Cristia"
"Carlos Cristia",
"Juanpabl"
]
},
"skinname-vector": "Vector",

View File

@ -2,19 +2,20 @@
"@metadata": {
"authors": [
"Gott wisst",
"Heahwrita",
"JJohnson1701"
]
},
"vector-action-addsection": "Besettan mearcunge",
"vector-action-delete": "Forlēosan",
"vector-action-delete": "Forleos",
"vector-action-move": "Wegan",
"vector-action-protect": "Beorgan",
"vector-action-undelete": "Scieppan tramet eft",
"vector-action-unprotect": "Andwendan beorgunge",
"vector-view-create": "Scieppan",
"vector-view-edit": "Ādihtan",
"vector-view-history": "Sr",
"vector-view-view": "Rǣdan",
"vector-view-edit": "Adiht",
"vector-view-history": "Seoh stær",
"vector-view-view": "Ræd",
"vector-view-viewsource": "Sēon fruman",
"vector-more-actions": "Mā"
"vector-more-actions": "Ma"
}

15
i18n/ann.json Normal file
View File

@ -0,0 +1,15 @@
{
"@metadata": {
"authors": [
"Katelem"
]
},
"vector-action-addsection": "Tap Ibot-ikọ gbaalek",
"vector-action-delete": "Chọk",
"vector-action-move": "Nwene erieen̄",
"vector-view-create": "Nama",
"vector-view-edit": "Nen̄e ge",
"vector-view-history": "Kpọ mfufuk",
"vector-view-view": "Fuk",
"vector-more-actions": "Ofifi si"
}

View File

@ -1,16 +1,19 @@
{
"@metadata": {
"authors": [
"Angpradesh"
"Angpradesh",
"Proabscorp!"
]
},
"vector-action-addsection": "विषय जोड़ऽ",
"vector-action-delete": "मेटाबऽ",
"vector-action-move": "चलऽ",
"vector-action-protect": "सुरक्षित करऽ",
"vector-view-create": "सृजन करऽ",
"vector-view-edit": "संपादन करऽ",
"vector-view-history": "इतिहास देखऽ",
"vector-view-view": "पढ़ऽ",
"vector-more-actions": "आरू जादा"
"vector-language-button-label": "{{PLURAL:$1|$1 भाषा|$1 भाषा सिनी}}",
"vector-action-addsection": "विषय जोड़ौ",
"vector-action-delete": "मेटाबौ",
"vector-action-move": "स्थानांतरित करौ",
"vector-action-protect": "सुरक्षित करौ",
"vector-view-create": "बनाबौ",
"vector-view-edit": "संपादन करौ",
"vector-view-history": "इतिहास देखौ",
"vector-view-view": "पढ़ौ",
"vector-more-actions": "आरू जादा",
"vector-searchsuggest-containing": "<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> सँ युक्त पन्ना खोजौ"
}

View File

@ -2,33 +2,73 @@
"@metadata": {
"authors": [
"Abanima",
"Amire80",
"Bachounda",
"Beginneruser",
"Calak",
"Meno25",
"Mido",
"OsamaK",
"أحمد",
"زكريا",
"Dyolf77 (WMF)",
"Khaled",
"Meno25",
"Michel Bakni",
"Mido",
"NEHAOUA",
"OsamaK",
"Shbib Al-Subaie",
"Wahrani",
"أحمد",
"ديفيد",
"زكريا",
"علاء",
"ديفيد"
"محمد أحمد عبد الفتاح"
]
},
"skinname-vector": "فكتور",
"vector-skin-desc": "نسة حديثة من مونوبوك بمظهر جديد وسهولة الاستخدام",
"vector.css": "/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمي واجهة فكتور */",
"vector.js": "/* أي جافاسكريبت هنا سيتم تحميلها للمستخدمين الذين يستعملون واجهة فكتور */",
"vector-action-addsection": "أضف موضوعاً",
"skinname-vector": "فكتور القديم (2010)",
"skinname-vector-2022": "فيكتور (2022)",
"vector-skin-desc": "توفر نسختان من مظهر فيكتور:\n* 2021 - النسخة الحديثة من مظهر مونوبوك بمظهر أحدث وتحسينات لسهولة الاستخدام.\n* 2022 - نسخة فيكتور المبنيّة كجزءٍ من مشروع مؤسسة ويكيميديا [[mw:Desktop Improvements|لتحسينات نسخة سطح المكتب]].",
"prefs-vector-enable-vector-1-label": "استخدم النسخة القديمة لفيكتور",
"prefs-vector-enable-vector-1-help": "على مدار السنوات القليلة القادمة، سنقوم بتحديث واجهة فيكتور بشكل تدريجي. ستسمح لك النسخة القديمة لفيكتور بمشاهدة الإصدار القديم من فيكتور (اعتبارا من ديسمبر 2019). لمعرفة المزيد حول التحديثات، انتقل إلى [[mw:Reading/Web/Desktop_Improvements|صفحة المشروع]].",
"vector-opt-out": "التبديل إلى الشكل القديم",
"vector-opt-out-tooltip": "غيِّر الإعدادت للعودة إلى طريقة العرض القديمة (النسخة القديمة لفيكتور)",
"vector.css": "/* ستؤثِّر الأنماط المتراصة CSS المعروضة هنا على مستخدمي واجهة فكتور */",
"vector.js": "/* سيُحمَّل أي نص برمجي مكتوب بلغة جافا للمستخدمين الذين يستعملون واجهة فكتور */",
"vector-action-toggle-sidebar": "تبديل الشريط الجانبي",
"vector-languages": "لغات",
"vector-language-button-aria-label": "{{GENDER:|اذهب|اذهبي}} إلى المقالة في لغةٍ أخرى. مُتاحة في {{PLURAL:$1|لا لغة|لغة واحدة|لغتين|$1 لغات|$1 لغة}}",
"vector-language-button-label": "{{PLURAL:$1|$1 لغة|$1 لغات}}",
"vector-no-language-button-label": "أضف لغات",
"vector-no-language-button-aria-label": "هذه المقالة تتواجد فقط في هذه اللغة. أضفها إلى اللغات الأخرى.",
"vector-language-redirect-to-top": "في نسخة {{SITENAME}} هذه، وصلات اللغات موجودة في الزاوية العليا اليسرى بجانب العنوان. [[#p-lang-btn|انتقل إلى الأعلى]].",
"vector-language-variant-switcher-label": "غيّر لهجة اللغة",
"vector-action-addsection": "أضف موضوعًا",
"vector-action-delete": "احذف",
"vector-action-move": "انقل",
"vector-action-protect": "احم",
"vector-action-undelete": "ألغ الحذف",
"vector-action-unprotect": "غير الحماية",
"vector-action-move": "انقُل",
"vector-action-protect": "احمِ",
"vector-action-undelete": "ألغِ الحذف",
"vector-action-unprotect": "غيِّر الحماية",
"vector-view-create": "أنشئ",
"vector-view-edit": "عدل",
"vector-view-edit": "عدِّل",
"vector-view-history": "تاريخ",
"vector-view-view": "اقرأ",
"vector-view-viewsource": "اعرض المصدر",
"vector-jumptonavigation": "اذهب إلى التنقل",
"vector-jumptosearch": "اذهب إلى البحث",
"vector-more-actions": "المزيد"
"vector-jumptocontent": "انتقل إلى المحتوى",
"vector-more-actions": "المزيد",
"vector-search-loader": "تحميل اقتراحات البحث",
"vector-searchsuggest-containing": "ابحث عن صفحات تحتوي <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-intro-page": "ويكيبيديا:مقدمة",
"vector-toc-heading": "المحتويات",
"vector-toc-toggle-position-sidebar": "انقل للشريط الجانبي",
"vector-toc-toggle-position-title": "أخف",
"vector-toc-beginning": "المقدمة",
"vector-toc-toggle-button-label": "ثبِّت القسم الفرعي $1",
"vector-anon-user-menu-pages": "صفحات للمحررين الذين سجَّلوا خروجهم",
"vector-anon-user-menu-pages-learn": "تعلَّم المزيد",
"vector-anon-user-menu-pages-label": "تعلَّم المزيد بخصوص التحرير",
"vector-main-menu-tooltip": "القائمة الرئيسة",
"vector-toc-menu-tooltip": "جدول المحتويات",
"vector-toc-collapsible-button-label": "تبديل عرض جدول المحتويات",
"vector-site-nav-label": "الموقع",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|نقاش]]",
"tooltip-vector-anon-user-menu-title": "المزيد من الخيارات"
}

View File

@ -2,19 +2,22 @@
"@metadata": {
"authors": [
"Clerc",
"Fiestoforo"
"Fiestoforo",
"Manke ruLpa"
]
},
"vector-action-addsection": "Püñamtun dungu",
"vector-language-button-label": "{{PLURAL:$1|$1 zugun}}",
"vector-action-addsection": "Püñamtun zungu",
"vector-action-delete": "Liftun",
"vector-action-move": "Wiñamün",
"vector-action-move": "Nengümün",
"vector-action-protect": "Nürüfkünun",
"vector-action-undelete": "Wüñoñamümün",
"vector-action-unprotect": "Kalekünun Nürüfkünun",
"vector-view-create": "Dewman",
"vector-view-create": "Zewman",
"vector-view-edit": "Kümeelün",
"vector-view-history": "Pengelün rupañmael",
"vector-view-history": "Pengepe tukulpan",
"vector-view-view": "Chillkatun",
"vector-view-viewsource": "Kimam chew küpan chi wirin",
"vector-more-actions": "Doy"
"vector-more-actions": "Zoy",
"vector-searchsuggest-containing": "Kintun kom tapülh nielu <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"Bachounda",
"Oldstoneage",
"GeekEmad"
"GeekEmad",
"Oldstoneage"
]
},
"vector-skin-desc": "طبعة جديدة تاع مونوبوك، ب شبحة جديدة و تحسانات فل إستعماليّة",

View File

@ -1,22 +1,28 @@
{
"@metadata": {
"authors": [
"Enzoreg",
"Zanatos",
"Abdeaitali",
"Reda Benkhadra"
"Amire80",
"Enzoreg",
"Reda Benkhadra",
"SADI9I",
"SADIQUI",
"Zanatos"
]
},
"vector-action-addsection": "Zid topic",
"vector-action-delete": "Suprimi",
"vector-action-move": "Neqel",
"vector-action-protect": "Ḫami",
"vector-action-undelete": "rja lhadf",
"vector-action-unprotect": "Ḫiyed l-ḫimaya",
"vector-view-create": "Ĥṫareĝ",
"vector-view-edit": "Ĝedel",
"vector-view-history": "Ṫariĥ l-fiċyé",
"vector-language-button-label": "{{PLURAL:$1|$1 لوغة|$1 لوغات}}",
"vector-language-redirect-to-top": "ف هاد لويكيپيديا ليانات د لوغات كاينين ف لفوق د صفحة حدا لعنوان. [[#p-lang-btn|سير لفوق]].",
"vector-action-addsection": "زيد شي موضوع",
"vector-action-delete": "محي",
"vector-action-move": "حوّل",
"vector-action-protect": "حمي",
"vector-action-undelete": "لغي الحدف",
"vector-action-unprotect": "بدّل الحماية",
"vector-view-create": "أنشئ",
"vector-view-edit": "بدل",
"vector-view-history": "تاريخ",
"vector-view-view": "قرا",
"vector-view-viewsource": "Ċof l-masdar",
"vector-more-actions": "زيد"
"vector-view-viewsource": "شوف لمصدر",
"vector-more-actions": "كتر",
"vector-searchsuggest-containing": "قلب علا صفاحي فيهم <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -8,6 +8,7 @@
},
"vector.css": "/* CSS اللى هنا حتأثر على اليوزرز اللى بيستخدموا واجهة فكتور */",
"vector.js": "/* اى جافاسكريبت هنا حتتحمل لكل يوزر بيستخدم واجهة فكتور */",
"vector-language-button-label": "{{PLURAL:$1|$1 لغه|$1 لغات}}",
"vector-action-addsection": "ضيف موضوع",
"vector-action-delete": "مسح",
"vector-action-move": "نقل",

View File

@ -1,11 +1,31 @@
{
"@metadata": {
"authors": [
"Amire80",
"Bishnu Saikia",
"Chaipau",
"Gitartha.bordoloi"
"Gitartha.bordoloi",
"Simbu123"
]
},
"skinname-vector": "পুৰণা ভেক্টৰ (২০১০)",
"skinname-vector-2022": "ভেক্টৰ (২০২২)",
"vector-specialversion-name": "ভেক্টৰ",
"vector-skin-desc": "২টা ভেক্টৰ ৰূপ প্ৰদান কৰে:\n* ২০১১ - নতুন ৰূপ আৰু বহুতো ব্যৱহাৰযোগ্যতাৰ উন্নতিৰ সৈতে ম'ন'বুকৰ আধুনিক সংস্কৰণ।\n* ২০২২ - WMF-ৰ [[mw:Desktop Improvements]] প্ৰকল্পৰ অংশ হিচাপে নিৰ্মিত ভেক্টৰ।",
"prefs-vector-enable-vector-1-label": "পুৰণা ভেক্টৰ ব্যৱহাৰ কৰক",
"prefs-vector-enable-vector-1-help": "পৰৱৰ্তী কেইবছৰমানত, আমি ক্ৰমান্বয়ে ভেক্টৰ আৱৰণ আপডেট কৰিম। পুৰণা ভেক্টৰ আৱৰণে আপোনাক ভেক্টৰৰ পুৰণি সংস্কৰণ চাবলৈ অনুমতি দিব (ডিচেম্বৰ ২০১৯ লৈকে)। আপডেটবোৰৰ বিষয়ে অধিক জানিবলৈ, আমাৰ [[mw:Reading/Web/Desktop_Improvements|প্ৰকল্প পৃষ্ঠালৈ]] যাওক।",
"vector-opt-out": "পুৰণি ৰূপলৈ যাওক",
"vector-opt-out-tooltip": "আৱৰণৰ পুৰণি ৰূপলৈ ঘূৰি যাবলৈ আপোনাৰ ছেটিংছ সলনি কৰক (পুৰণা ভেক্টৰ)",
"vector.css": "/* ভেক্টৰ আৱৰণৰ ব্যৱহাৰকাৰীসকলৰ বাবে ইয়াত সকলো CSS লোড কৰা হ'ব */",
"vector.js": "/* ভেক্টৰ আৱৰণৰ ব্যৱহাৰকাৰীসকলৰ বাবে ইয়াত সকলো জাভাস্ক্ৰিপ্ট লোড কৰা হ'ব */",
"vector-action-toggle-sidebar": "পাৰ্শ্বদণ্ড টগ'ল কৰক",
"vector-languages": "ভাষা",
"vector-language-button-aria-label": "অন্য এটা ভাষাৰ প্ৰবন্ধলৈ যাওক। {{PLURAL:$1|$1টা ভাষাত}} উপলব্ধ।",
"vector-language-button-label": "{{PLURAL:$1|$1টা ভাষা}}",
"vector-no-language-button-label": "ভাষা যোগ কৰক",
"vector-no-language-button-aria-label": "এই প্ৰবন্ধটো কেৱল এই ভাষাতহে আছে। অন্য ভাষাত প্ৰবন্ধটো যোগ কৰক",
"vector-language-redirect-to-top": "এই {{SITENAME}}ত ভাষাৰ সংযোগসমূহ প্ৰবন্ধৰ শিৰোনামৰ কাষত পৃষ্ঠাৰ ওপৰত আছে। [[#p-lang-btn|ওপৰলৈ যাওক]]।",
"vector-language-variant-switcher-label": "ভাষাৰ প্ৰকাৰ সলনি কৰক",
"vector-action-addsection": "বিষয় যোগ",
"vector-action-delete": "বিলোপ কৰক",
"vector-action-move": "স্থানান্তৰ কৰক",
@ -17,5 +37,25 @@
"vector-view-history": "ইতিহাস চাওক",
"vector-view-view": "পঢ়ক",
"vector-view-viewsource": "উৎস চাওক",
"vector-more-actions": "অধিক"
"vector-jumptonavigation": "নেভিগেশ্যনলৈ যাওক",
"vector-jumptosearch": "সন্ধানলৈ যাওক",
"vector-jumptocontent": "সমললৈ যাওক",
"vector-more-actions": "অধিক",
"vector-search-loader": "সন্ধান পৰামৰ্শ লোড কৰা হৈছে",
"vector-searchsuggest-containing": "<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> থকা পৃষ্ঠাসমূহ সন্ধান কৰক",
"vector-intro-page": "Help:পৰিচয়",
"vector-toc-heading": "সূচী",
"vector-toc-toggle-position-sidebar": "পাৰ্শ্বদণ্ডলৈ যাওক",
"vector-toc-toggle-position-title": "লুকুৱাওক",
"vector-toc-beginning": "পাতনি",
"vector-toc-toggle-button-label": "$1 উপ-অনুচ্ছেদ টগ'ল কৰক",
"vector-anon-user-menu-pages": "লগ-আউট কৰা সদস্যৰ বাবে পৃষ্ঠাসমূহ",
"vector-anon-user-menu-pages-learn": "অধিক শিকক",
"vector-anon-user-menu-pages-label": "সম্পাদনাৰ বিষয়ে অধিক জানক",
"vector-main-menu-tooltip": "মুখ্য মেনু",
"vector-toc-menu-tooltip": "সূচীপত্ৰ",
"vector-toc-collapsible-button-label": "সূচীপত্ৰ টগ'ল কৰক",
"vector-site-nav-label": "ছাইট",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|আলোচনা]]",
"tooltip-vector-anon-user-menu-title": "অধিক বিকল্প"
}

View File

@ -2,13 +2,16 @@
"@metadata": {
"authors": [
"Esbardu",
"Tokvo",
"Xuacu"
]
},
"skinname-vector": "Vector",
"vector-skin-desc": "Versión moderna de MonoBook, con un aspeutu frescu y munchos ameyoramientos d'usabilidá",
"prefs-vector-enable-vector-1-label": "Utilizar versión anticuada de Vector",
"vector.css": "/* Los CSS allugaos equí afeutarán a los usuarios del aspeutu Vector */",
"vector.js": "/* Cualesquier JavaScript que tea equí se cargará pa los usuarios del aspeutu Vector */",
"vector-language-button-label": "{{PLURAL:$1|$1 llingua|$1 llingües}}",
"vector-action-addsection": "Amestar seición",
"vector-action-delete": "Desaniciar",
"vector-action-move": "Treslladar",

View File

@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Benoit Rochon",
"Amqui",
"Benoit Rochon",
"Jean-paul echaquan"
]
},

View File

@ -1,21 +1,24 @@
{
"@metadata": {
"authors": [
"Умар",
"Gazimagomedov"
"Gazimagomedov",
"Omarov M.",
"Умар"
]
},
"vector-skin-desc": "MonoBook'алъул цӀияб версия цияб куцгун ва цӀиял юзабилитиялгун",
"vector-skin-desc": "Бихьизабула 2 векторияб скин:\n* 2011 - The Modern version of MonoBook with fresh look and many usability improvements.\n* 2022 - The Vector built as part of the WMF [[mw:Desktop Improvements]] project.",
"vector-languages": "МацӀал",
"vector-language-button-label": "{{PLURAL:$1|$1 мацӀ}}",
"vector-action-addsection": "Тема жубазе",
"vector-action-delete": ацIцIине",
"vector-action-delete": "Гилдизабизе",
"vector-action-move": "ЦӀар хисизе",
"vector-action-protect": "Хиса-басияздасан цIунизе",
"vector-action-undelete": "БукӀараб гӀадин гьабизе",
"vector-action-protect": "ЦӀунизе",
"vector-action-undelete": "БукӀахъинабизе",
"vector-action-unprotect": "ЦӀуни хисизе",
"vector-view-create": ьабизе",
"vector-view-create": IуцIизе",
"vector-view-edit": "Хисизабизе",
"vector-view-history": "Тарих балагьизе",
"vector-view-history": "Тарихалъухъ ралагьизе",
"vector-view-view": "ЦӀализе",
"vector-view-viewsource": "Вики-текст балагьизе",
"vector-view-viewsource": "Кодалъухъ ралагьизе",
"vector-more-actions": "Жеги"
}

View File

@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"Axel xadolik",
"Wikimistusik"
]
},
@ -12,5 +13,6 @@
"vector-view-edit": "Betara",
"vector-view-history": "Wira va izvot",
"vector-view-view": "Belira",
"vector-view-viewsource": "klitawira"
"vector-view-viewsource": "klitawira",
"vector-more-actions": "Loon"
}

View File

@ -4,18 +4,26 @@
"AZISS",
"Arystanbek",
"Gulmammad",
"NMW03",
"Sortilegus",
"Toghrul Rahimli",
"Vago",
"Vugar 1981",
"Wertuose"
]
},
"skinname-vector": "Vector",
"prefs-vector-enable-vector-1-label": "Legacy Vector istifadə edin",
"prefs-vector-enable-vector-1-help": "Növbəti bir neçə il ərzində Vector dizaynını tədricən yeniləyəcəyik. Legacy Vector, Vector-un köhnə versiyasına baxmağa imkan verəcəkdir (dekabr 2019-cu ildən etibarən). Yeniləmələr haqqında daha çox məlumat üçün [[mw:Reading/Web/Desktop_Improvements|layihə səhifəmizə]] nəzər yetirin.",
"vector-opt-out": "Əvvəlki dizayna keç",
"vector.css": "/* Burada yerləşən CSS Vector istifadəçilərinə tətbiq olunur */",
"vector.js": "/* Burada Vector skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */",
"vector-language-button-label": "{{PLURAL:$1|$1 dildə|$1 dildə}}",
"vector-no-language-button-label": "Dil əlavə et",
"vector-language-redirect-to-top": "Bu {{SITENAME}} layihəsində dil keçidləri məqalənin başlıq hissəsində verilmişdir. [[#p-lang-btn|Yuxarı get]].",
"vector-action-addsection": "Mövzu əlavə et",
"vector-action-delete": "Sil",
"vector-action-move": "Adını dəyişdir",
"vector-action-move": "Adını dəyiş",
"vector-action-protect": "Mühafizə et",
"vector-action-undelete": "Bərpa et",
"vector-action-unprotect": "Mühafizəni kənarlaşdır",
@ -24,5 +32,12 @@
"vector-view-history": "Tarixçəyə bax",
"vector-view-view": "Oxu",
"vector-view-viewsource": "Mənbəyə bax",
"vector-more-actions": "Daha"
"vector-more-actions": "Daha çox",
"vector-search-loader": "Axtarış təklifləri yüklənir",
"vector-searchsuggest-containing": "<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> ehtiva edən səhifələri axtar",
"vector-toc-heading": "Mündəricat",
"vector-toc-toggle-position-sidebar": "yan panelə keçir",
"vector-toc-toggle-position-title": "gizlə",
"vector-toc-beginning": "Giriş",
"vector-toc-toggle-button-label": "$1 alt bölməsini göstər/gizlə"
}

View File

@ -1,14 +1,16 @@
{
"@metadata": {
"authors": [
"Alp Er Tunqa",
"Amir a57",
"Bir morty",
"E THP",
"Ebrahimi-amir",
"Mousa",
"Amir a57",
"Alp Er Tunqa",
"Ilğım"
"Ilğım",
"Mousa"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 دیل|$1 دیل‌لر}}",
"vector-action-addsection": "مؤوضوع آرتیر",
"vector-action-delete": "سیل",
"vector-action-move": "داشی",

View File

@ -3,8 +3,8 @@
"authors": [
"Assele",
"Haqmar",
"Рустам Нурыев",
"Sagan"
"Sagan",
"Рустам Нурыев"
]
},
"skinname-vector": "Векторлы",

17
i18n/ban-bali.json Normal file
View File

@ -0,0 +1,17 @@
{
"@metadata": {
"authors": [
"Carma Citrawati",
"Chinamoonroll",
"Tok Pisin"
]
},
"vector-action-addsection": "ᬯᭂᬯᭂᬄᬢᭀᬧᬶᬓ᭄",
"vector-action-delete": "ᬳᬸᬲᬧ᭄",
"vector-action-move": "ᬕᬶᬗ᭄ᬲᬶᬭᬗ᭄",
"vector-view-create": "ᬓᬃᬤᬶ",
"vector-view-edit": "ᬳᬸᬳᬄ",
"vector-view-history": "ᬘᬶᬗᬓ᭄ᬩᬩᬤ᭄",
"vector-view-view": "ᬯᬘᬾᬦ᭄",
"vector-more-actions": "ᬮᬶᬬᬦᬦ᭄"
}

View File

@ -2,16 +2,34 @@
"@metadata": {
"authors": [
"Adi Mayndra",
"BASAbali"
"Amire80",
"BASAbali",
"Carma citrawati",
"Chinamoonroll",
"Joseagush",
"NoiX180"
]
},
"vector-action-addsection": "imbuhin indik wacana",
"vector-action-delete": "ngapus",
"vector-action-move": "kisidang",
"vector-action-protect": "nyaga",
"vector-view-create": "ngawe",
"vector-view-edit": "mecikang",
"vector-view-history": "indik sane lintang",
"vector-view-view": "Waca",
"vector-view-viewsource": "cingak witnyane"
"vector-opt-out": "Alih nuju cingakan sadurungné",
"vector-opt-out-tooltip": "Uahin setélan Ida antuk mawali nuju cingakan sadurungné saking kules puniki (Vektor warisan)",
"vector-action-toggle-sidebar": "Tugel wilah sisi",
"vector-language-button-label": "{{PLURAL:$1|$1 basa}}",
"vector-action-addsection": "Weweh topik",
"vector-action-delete": "Usap",
"vector-action-move": "Gingsirang",
"vector-action-protect": "Saib",
"vector-action-undelete": "Tan kausap",
"vector-action-unprotect": "Uah saiban",
"vector-view-create": "Kardi",
"vector-view-edit": "Uah",
"vector-view-history": "Cingak babad",
"vector-view-view": "Wacén",
"vector-view-viewsource": "Cingak wit",
"vector-jumptonavigation": "Cebur nuju navigasi",
"vector-jumptosearch": "Cebur nuju parerehan",
"vector-jumptocontent": "Cebur nuju daging",
"vector-more-actions": "Lianan",
"vector-search-loader": "Ngamuat saran parerehan",
"vector-searchsuggest-containing": "Selehin kaca sané madaging <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-anon-user-menu-pages-learn": "pelajahin malih"
}

View File

@ -2,14 +2,15 @@
"@metadata": {
"authors": [
"Bua333",
"Joe Watzmo",
"Mucalexx",
"Joe Watzmo"
"WikiBayer"
]
},
"vector-action-addsection": "An Obschnitt dazua doa",
"vector-action-delete": "Leschn",
"vector-action-move": "Vaschiabm",
"vector-action-protect": "Schitzn",
"vector-action-protect": "schitzn",
"vector-action-undelete": "Wiederherstön",
"vector-action-unprotect": "freigeem",
"vector-view-create": "Aufbaun",

8
i18n/bas.json Normal file
View File

@ -0,0 +1,8 @@
{
"@metadata": {
"authors": [
"Danielgwd"
]
},
"vector-more-actions": "ǹtoŋ"
}

View File

@ -2,6 +2,8 @@
"@metadata": {
"authors": [
"Daniel Harahap",
"NoiX180",
"Salomo Christian Hutajulu",
"WBT003Bugari",
"WBT006Hendra",
"WBT009Anju"
@ -14,8 +16,9 @@
"vector-action-undelete": "unang sesa",
"vector-action-unprotect": "Uba parlindungan",
"vector-view-create": "Tompa",
"vector-view-edit": "Paubah",
"vector-view-history": "Patudu andorang na",
"vector-view-edit": "Patota",
"vector-view-history": "Patudu turihonna",
"vector-view-view": "Jaha",
"vector-view-viewsource": "Ida haroanna"
"vector-view-viewsource": "Ida haroanna",
"vector-more-actions": "Lobian"
}

View File

@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Mostafadaneshvar",
"RigiMahnoor"
"RigiMahnoor",
"Sultanselim baloch"
]
},
"vector-action-addsection": "هور کتن عنوان",
@ -12,9 +13,9 @@
"vector-action-undelete": "ترینگ",
"vector-action-unprotect": "پروتکشنء ٹگل بدئ",
"vector-view-create": "شرکتن",
"vector-view-edit": "اصلاح",
"vector-view-history": "چارتن تاریح",
"vector-view-view": "وانتن",
"vector-view-edit": "ٹگلݔنگ",
"vector-view-history": "رمسءِ چارگ",
"vector-view-view": "وانگ",
"vector-view-viewsource": "پیشدارگ بن جاه",
"vector-more-actions": یشتر"
"vector-more-actions": ݔشتِر"
}

19
i18n/bci.json Normal file
View File

@ -0,0 +1,19 @@
{
"@metadata": {
"authors": [
"Amire80",
"Kjeanclaude"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 aniein|$1 aniein moun}}",
"vector-action-addsection": "Fa ndè ouflè goua sou",
"vector-action-delete": "Nounnoun",
"vector-action-move": "Katchi floua boué nga i douman",
"vector-action-protect": "Sassawa",
"vector-view-create": "Yi",
"vector-view-edit": "Klè noun",
"vector-view-history": "Nian laa sa",
"vector-view-view": "Kanngan",
"vector-more-actions": "Ouflè ékun",
"vector-searchsuggest-containing": "Kounndè floué boué moun nga liké nga wo noun: <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -1,20 +1,26 @@
{
"@metadata": {
"authors": [
"Amire80",
"Daramlagon",
"Filipinayzd",
"Geopoet"
"Geopoet",
"Kunokuno",
"ShimunUfesoj"
]
},
"vector-action-addsection": "Idagdag an topic",
"vector-action-delete": "puráon",
"vector-action-move": "Ibalyó",
"vector-language-button-label": "{{PLURAL:$1|$1 lenggwahe|$1 mga lenggwahe}}",
"vector-action-addsection": "Magdagdag nin pag-uulayan",
"vector-action-delete": "puraon",
"vector-action-move": "Ibalyo",
"vector-action-protect": "Protektaran",
"vector-action-undelete": "Bawion sa pagkapara",
"vector-action-unprotect": "Ribayan an proteksyon",
"vector-view-create": "Magmukna",
"vector-view-edit": "Liwatón",
"vector-view-history": "Tanawon sa historiya",
"vector-view-view": "Basáha",
"vector-view-create": "Gibuhon",
"vector-view-edit": "Baguhon",
"vector-view-history": "Hilingon an kasaysayan",
"vector-view-view": "Basahon",
"vector-view-viewsource": "Hilingón an ginikánan",
"vector-more-actions": "Kadugangan"
"vector-more-actions": "Labi pa",
"vector-searchsuggest-containing": "Maghanap nin mga pahinang igwang <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

14
i18n/bdr.json Normal file
View File

@ -0,0 +1,14 @@
{
"@metadata": {
"authors": [
"Tofeiku"
]
},
"vector-action-delete": "Penelanyap",
"vector-action-move": "Pinali",
"vector-action-protect": "Sindung",
"vector-view-edit": "Niuba",
"vector-view-history": "Ngenda' kisa dau-dau",
"vector-view-view": "Boso",
"vector-more-actions": "Iko"
}

View File

@ -2,12 +2,25 @@
"@metadata": {
"authors": [
"EugeneZelenko",
"Nieszczarda2",
"Red Winged Duck",
"Renessaince",
"Wizardist"
]
},
"skinname-vector": "Вэктар",
"vector-skin-desc": "Сучасная вэрсія MonoBook з абноўленым выглядам і шматлікімі паляпшэньнямі",
"skinname-vector": "Стары Вэктар (2010)",
"skinname-vector-2022": "Вэктар (2022)",
"vector-specialversion-name": "Вэктар",
"vector-skin-desc": "Прадастаўляе 2 тэмы Вэктару:\n* 2011 — сучасная вэрсія MonoBook з абноўленым выглядам і шматлікімі паляпшэньнямі;\n* 2022 — Вэктар, збудаваны ў межах праекту ФВМ [[mw:Desktop Improvements]].",
"prefs-vector-enable-vector-1-label": "Выкарыстаць стары Вэктар",
"prefs-vector-enable-vector-1-help": "Цягам наступных некалькіх гадоў мы будзем паступова абнаўляць тэму „Вэктар“. Пераемны Вэктар дазволіць вам праглядаць старую вэрсію Вэктара (паводле стану на сьнежань 2019 року). Каб даведацца пра абнаўленьні болей, зайдзіце на старонку [[mw:Reading/Web/Desktop_Improvements|нашага праекту]].",
"vector-opt-out": "Пераключыцца на стары выгляд",
"vector-opt-out-tooltip": "Зьмяніце налады, каб вярнуцца да старой тэмы (старога Вэктару)",
"vector.css": "/* Усе зьмешчаныя тут CSS будуць загружаныя для ўдзельнікаў, якія выкарыстоўваюць тэму афармленьня Вэктар */",
"vector.js": "/* Увесь зьмешчаны тут JavaScript будзе загружаны для ўдзельнікаў, якія выкарыстоўваюць тэму афармленьня Вэктар */",
"vector-language-button-aria-label": "Перайсьці да артыкула на іншай мове. Выбраць з: {{PLURAL:$1|$1 language|$1 languages}}",
"vector-language-button-label": "{{PLURAL:$1|$1 мова|$1 мовы|$1 моваў}}",
"vector-language-redirect-to-top": "У гэтым праекце {{SITENAME}} моўныя спасылкі знаходзяцца ўверсе старонкі насупраць назвы артыкулу. [[#p-lang-btn|Перайсьці ўгору]].",
"vector-action-addsection": "Дадаць тэму",
"vector-action-delete": "Выдаліць",
"vector-action-move": "Перанесьці",
@ -21,5 +34,6 @@
"vector-view-viewsource": "Паказаць крыніцу",
"vector-jumptonavigation": "Перайсьці да навігацыі",
"vector-jumptosearch": "Перайсьці да пошуку",
"vector-more-actions": "Болей"
"vector-more-actions": "Болей",
"vector-searchsuggest-containing": "Пошук старонак, якія маюць <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -1,14 +1,31 @@
{
"@metadata": {
"authors": [
"Amire80",
"Artsiom91",
"Chadyka",
"Kareyac",
"Mikalai Udodau",
"No Sleep till Krupki",
"Tomato Cream",
"Yury Tarasievich",
"Дзяніс Тутэйшы",
"Хомелка",
"Artsiom91"
"Хомелка"
]
},
"vector-skin-desc": "Сучасная версія вокладкі Манабук, з абноўленым відам і шматлікімі зручнымі паляпшэннямі",
"vector-skin-desc": "Забяспечвае 2 вокладкі Вектар:\n* 2011 — Сучасная версія вокладкі Манабук, з абноўленым відам і шматлікімі зручнымі паляпшэннямі.\n* 2022 — Вектар, створаны ў рамках праекта WMF [[mw:Desktop Improvements]].",
"prefs-vector-enable-vector-1-label": "Ужыць Legacy Vector",
"prefs-vector-enable-vector-1-help": "Цягам наступных некалькіх гадоў мы будзем паступова абнаўляць шаблон Vector. Legacy Vector дазволіць праглядаць старую версію Vector (станам на снежань 2019 года). Каб даведацца больш, перайдзіце на нашу [[mw:Reading/Web/Desktop_Improvements|старонку праекта]].",
"vector-opt-out": "Пераключыцца на стары выгляд",
"vector-opt-out-tooltip": "Змяніце налады, каб вярнуцца да старога выгляду вокладкі (Стары Vector)",
"vector-action-toggle-sidebar": "Пераключыць бакавую панэль",
"vector-languages": "Мовы",
"vector-language-button-aria-label": "Перайсці да артыкула на іншай мове. Даступны на $1 {{PLURAL:$1|мове|мовах}}.",
"vector-language-button-label": "{{PLURAL:$1|$1 мова|$1 мовы|$1 моваў}}",
"vector-no-language-button-label": "Дадаць мовы",
"vector-no-language-button-aria-label": "Гэты артыкул ёсць толькі на гэтай мове. Дадайце артыкул для іншых моў",
"vector-language-redirect-to-top": "У гэтай пляцоўцы {{SITENAME}} моўныя спасылкі знаходзяцца ўверсе старонкі насупраць загалоўка артыкула. [[#p-lang-btn|Перайсці ўверх]].",
"vector-language-variant-switcher-label": "Зменіць моўны варыянт",
"vector-action-addsection": "Дадаць тэму",
"vector-action-delete": "Выдаліць",
"vector-action-move": "Перанесці",
@ -20,5 +37,25 @@
"vector-view-history": "Паказаць гісторыю",
"vector-view-view": "Чытаць",
"vector-view-viewsource": "Паказаць зыходны тэкст",
"vector-more-actions": "Яшчэ"
"vector-jumptonavigation": "Перайсці да навігацыі",
"vector-jumptosearch": "Перайсці да пошуку",
"vector-jumptocontent": "Перайсці да зместу",
"vector-more-actions": "Яшчэ",
"vector-search-loader": "Загрузка прапановаў пошуку",
"vector-searchsuggest-containing": "Шукаць старонкі, якія змяшчаюць <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-intro-page": "Help:Даведка",
"vector-toc-heading": "Змест",
"vector-toc-toggle-position-sidebar": "перанесці да бакавой панэлі",
"vector-toc-toggle-position-title": "схаваць",
"vector-toc-beginning": "Пачатак",
"vector-toc-toggle-button-label": "Змяніць стан падраздзелу $1",
"vector-anon-user-menu-pages": "Старонкі для ананімных рэдактараў",
"vector-anon-user-menu-pages-learn": "даведацца больш",
"vector-anon-user-menu-pages-label": "Даведацца больш пра праўку",
"vector-main-menu-tooltip": "Галоўнае меню",
"vector-toc-menu-tooltip": "Змест",
"vector-toc-collapsible-button-label": "Пераключыць змест",
"vector-site-nav-label": "Праект",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|Размова]]",
"tooltip-vector-anon-user-menu-title": "Больш магчымасцей"
}

View File

@ -1,13 +1,19 @@
{
"@metadata": {
"authors": [
"Amire80",
"Borislav",
"DCLXVI",
"ShockD",
"Spiritia",
"StanProg"
]
},
"vector-skin-desc": "Модерна версия на MonoBook с обновен дизайн и много подобрения на ползваемостта",
"prefs-vector-enable-vector-1-label": "Използване на стария Vector",
"vector-opt-out": "Превключване към стария изглед",
"vector-action-toggle-sidebar": "Превключване на страничната лента",
"vector-language-button-label": "{{PLURAL:$1|$1 език|$1 езика}}",
"vector-action-addsection": "Добавяне на тема",
"vector-action-delete": "Изтриване",
"vector-action-move": "Преместване",
@ -21,5 +27,7 @@
"vector-view-viewsource": "Преглед на кода",
"vector-jumptonavigation": "Направо към навигацията",
"vector-jumptosearch": "Направо към търсенето",
"vector-more-actions": "Още"
"vector-jumptocontent": "Направо към съдържанието",
"vector-more-actions": "Още",
"vector-searchsuggest-containing": "Търсене на страници съдържащи <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

View File

@ -1,10 +1,13 @@
{
"@metadata": {
"authors": [
"Amire80",
"Ezagren",
"J Subhi"
"J Subhi",
"Mnam23"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1 basa}}",
"vector-action-addsection": "Tambahi tupik",
"vector-action-delete": "Hapus",
"vector-action-move": "Pindahakan",
@ -13,7 +16,11 @@
"vector-action-unprotect": "Palindungan",
"vector-view-create": "Ulah",
"vector-view-edit": "Babak",
"vector-view-history": "Tiringi halam",
"vector-view-history": "Janaki riwayat",
"vector-view-view": "Baca",
"vector-view-viewsource": "Tiringi asal mula"
"vector-view-viewsource": "Janaki asal-mulanya",
"vector-more-actions": "Lainnya",
"vector-searchsuggest-containing": "Gagai laman nang baisi <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-anon-user-menu-pages-learn": "palajari labih lanjut",
"vector-anon-user-menu-pages-label": "Palajari labih lanjut pasal mambabak"
}

14
i18n/blc.json Normal file
View File

@ -0,0 +1,14 @@
{
"@metadata": {
"authors": [
"Muskwatch"
]
},
"vector-language-button-label": "{{PLURAL:$1|smawiixw wa slhk'msta|$1 wa slhk'msta}}",
"vector-action-move": "sasttxw",
"vector-view-create": "sikstucw ti umat t'ayc",
"vector-view-edit": "qw'lasiitucw",
"vector-view-history": "sik'cicw ti s7alh7ayts ti umat t'ayc alh tu patsalh txw",
"vector-view-view": "sipaapqanu",
"vector-more-actions": "inic7acwlh"
}

27
i18n/blk.json Normal file
View File

@ -0,0 +1,27 @@
{
"@metadata": {
"authors": [
"Khun Kt",
"Ninjastrikers",
"咽頭べさ"
]
},
"vector-languages": "ဘာႏသာႏငဝ်းငွါဖုံႏ",
"vector-language-button-label": "{{PLURAL:$1|$1 ဘာႏသာႏငဝ်းငွါ|$1 ဘာႏသာႏငဝ်းငွါဖိုင်ႏ}}",
"vector-action-addsection": "ထဲမ်သော့ꩻထဲင်း အကျောင်ꩻခရာႏတသာ",
"vector-action-delete": "ယားကုဲင်",
"vector-action-move": "ခြုဲင်း",
"vector-action-protect": "ရဲးကမ်းသွော့",
"vector-action-undelete": "ယားကုဲင်တဝ်းဒုမ်",
"vector-action-unprotect": "ပြောင်ꩻလုဲင်ႏ အရဲးအကမ်း",
"vector-view-create": "ဖန်ဆင်ꩻ",
"vector-view-edit": "မွဉ်းဖျင်",
"vector-view-history": "ထွားရာႏဇာႏဝင်ႏ",
"vector-view-view": "ဟော်ꩻ",
"vector-view-viewsource": "ထွားအရွီးအခိုႏ",
"vector-more-actions": "ထဲင်းယင်း",
"vector-intro-page": "Help:ငဝ်းတယ်ႏအွဉ်",
"vector-anon-user-menu-pages-learn": "လွူꩻထွားထဲင်းအသွုပ်",
"vector-anon-user-menu-pages-label": "လွူꩻထွားထဲင်း မွဉ်းဖျင်ခရာႏအထဲင်း",
"tooltip-vector-anon-user-menu-title": "လွိုက်ခရာႏအထဲင်းဖိုင်ႏ"
}

View File

@ -2,20 +2,38 @@
"@metadata": {
"authors": [
"Aftab1995",
"Aftabuzzaman",
"Amire80",
"Bellayet",
"Leemon2010",
"Nasir8891",
"Sourav Halder",
"Tauhid16",
"Wikitanvir",
"Aftabuzzaman",
"Yahya",
"আজিজ",
"আফতাবুজ্জামান"
]
},
"skinname-vector": "ভেক্টর",
"vector-skin-desc": "নতুন চেহারা মনোবুকের আধুনিক সংস্করণ এবং আরো অনেক ব্যবহারযোগ্যতার উন্নতি",
"vector.css": "/* এখানে স্থাপিত CSS ভেক্টর আবরণ ব্যবহারকারীদের প্রভাবিত করবে */",
"vector.js": "/* এখানের যে কোন জাভাস্ক্রিপ্ট ভেক্টর আবরণ ব্যবহারকারীদের জন্য লোড হবে */",
"vector-action-addsection": "বিষয় যোগ",
"skinname-vector": "ভেক্টর উত্তরাধিকার (২০১০)",
"skinname-vector-2022": "ভেক্টর (২০২২)",
"vector-specialversion-name": "ভেক্টর",
"vector-skin-desc": "২টি ভেক্টর আবরণ প্রদান করে:\n* ২০১১ - নতুন চেহারায় মনোবুকের আধুনিক সংস্করণ এবং ব্যবহারযোগ্যতায় আরো অনেক উন্নতি।\n* ২০২২ - ডব্লিউএমএফ [[mw:Desktop Improvements|ডেক্সটপ উন্নয়ন]] প্রকল্পের অংশ হিসেবে নির্মিত ভেক্টর।",
"prefs-vector-enable-vector-1-label": "উত্তরাধিকার ভেক্টর ব্যবহার করুন",
"prefs-vector-enable-vector-1-help": "আগামী কয়েক বছর ধরে, আমরা ধীরে ধীরে ভেক্টর আবরণ হালনাগাদ করব। উত্তরাধিকার ভেক্টর আপনাকে ভেক্টরের পুরনো সংস্করণ দেখার অনুমতি দেবে (ডিসেম্বর ২০১৯ অনুযায়ী)। এই হালনাগাদ সম্পর্কে আরও জানতে, আমাদের [[mw:Reading/Web/Desktop_Improvements|প্রকল্প পাতায়]] যান।",
"vector-opt-out": "পুরনো চেহারাতে যান",
"vector-opt-out-tooltip": "আবরণটির পুরনো চেহারাতে ফিরে যেতে আপনার সেটিংস পরিবর্তন করুন (উত্তরাধিকার ভেক্টর)",
"vector.css": "/* এখানের সকল সিএসএস ভেক্টর আবরণ ব্যবহারকারীদের জন্য লোড হবে */",
"vector.js": "/* এখানের সকল জাভাস্ক্রিপ্ট ভেক্টর আবরণ ব্যবহারকারীদের জন্য লোড হবে */",
"vector-action-toggle-sidebar": "পার্শ্বদণ্ড দেখান",
"vector-languages": "ভাষা",
"vector-language-button-aria-label": "অন্য ভাষার একটি নিবন্ধে যান। {{PLURAL:$1|$1টি ভাষায়}} উপলব্ধ রয়েছে।",
"vector-language-button-label": "{{PLURAL:$1|$1টি ভাষা}}",
"vector-no-language-button-label": "ভাষা যোগ করুন",
"vector-no-language-button-aria-label": "এই নিবন্ধটি শুধুমাত্র এই ভাষায় বিদ্যমান। অন্যান্য ভাষার জন্য নিবন্ধ যোগ করুন",
"vector-language-redirect-to-top": "এই উইকিতে, ভাষার লিঙ্কগুলি পাতার উপরের দিকে নিবন্ধের শিরোনামের পাশে রয়েছে। [[#p-lang-btn|উপরে চলুন]]।",
"vector-language-variant-switcher-label": "ভাষার রূপভেদ পরিবর্তন করুন",
"vector-action-addsection": "আলোচনা যোগ করুন",
"vector-action-delete": "অপসারণ",
"vector-action-move": "স্থানান্তর",
"vector-action-protect": "সুরক্ষা",
@ -26,5 +44,25 @@
"vector-view-history": "ইতিহাস দেখুন",
"vector-view-view": "পড়ুন",
"vector-view-viewsource": "উৎস দেখুন",
"vector-more-actions": "আরও"
"vector-jumptonavigation": "পরিভ্রমণে চলুন",
"vector-jumptosearch": "অনুসন্ধানে চলুন",
"vector-jumptocontent": "বিষয়বস্তুতে চলুন",
"vector-more-actions": "আরও",
"vector-search-loader": "অনুসন্ধানের পরামর্শ লোড করা হচ্ছে",
"vector-searchsuggest-containing": "<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> থাকা পাতাগুলিতে অনুসন্ধান করুন",
"vector-intro-page": "Help:ভূমিকা",
"vector-toc-heading": "পরিচ্ছেদসমূহ",
"vector-toc-toggle-position-sidebar": "পার্শ্বদণ্ডে নিন",
"vector-toc-toggle-position-title": "লুকান",
"vector-toc-beginning": "শুরু",
"vector-toc-toggle-button-label": "$1 উপঅনুচ্ছেদ টগল করুন",
"vector-anon-user-menu-pages": "অনিবন্ধিত সম্পাদকের জন্য পাতা",
"vector-anon-user-menu-pages-learn": "আরও জানুন",
"vector-anon-user-menu-pages-label": "সম্পাদনা করা সম্পর্কে আরও জানুন",
"vector-main-menu-tooltip": "প্রধান মেনু",
"vector-toc-menu-tooltip": "সূচিপত্র",
"vector-toc-collapsible-button-label": "সূচিপত্র টগল করুন",
"vector-site-nav-label": "সাইট",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|আলোচনা]]",
"tooltip-vector-anon-user-menu-title": "আরও বিকল্প"
}

View File

@ -14,5 +14,6 @@
"vector-view-edit": "পতানি",
"vector-view-history": "ইতিহাস চেইক",
"vector-view-view": "পাকরিক",
"vector-view-viewsource": "সোর্স চেইক"
"vector-view-viewsource": "সোর্স চেইক",
"vector-more-actions": "আরকউ"
}

View File

@ -1,14 +1,17 @@
{
"@metadata": {
"authors": [
"Isevand",
"Mogoeilor"
]
},
"vector-action-addsection": "داسون اضاف کونین",
"vector-action-addsection": "داسۊن اْزاف کونین",
"vector-action-delete": "پاکسا کردن",
"vector-action-move": "جابجا کردن",
"vector-action-protect": "هناڌاری ۉ پٱلڌاری",
"vector-view-create": "راس كردن",
"vector-view-edit": "ڤیرایئشت کاری",
"vector-view-history": "ديئن ڤیرگار",
"vector-view-edit": "آلشدکاری کردن",
"vector-view-history": "ديڌن ڤیرگار",
"vector-view-view": "خوندن",
"vector-more-actions": "بیشتر"
}

View File

@ -1,24 +1,61 @@
{
"@metadata": {
"authors": [
"Adriendelucca",
"Amire80",
"Fulup",
"Huñvreüs",
"Y-M D"
]
},
"skinname-vector": "Vektor",
"vector-skin-desc": "Stumm modern MonoBook freskaet e dres hag enni meur a wellaenn implijout",
"vector.css": "/* Talvezout a raio ar CSS lakaet amañ evit implijerien ar gwiskadur Vektor */",
"vector.js": "/* Kement JavaScript amañ a vo karget evit an implijerien a ra gant ar gwiskadur Vektor */",
"skinname-vector": "Vektor mod kozh (2010)",
"skinname-vector-2022": "Vektor (2022)",
"vector-specialversion-name": "Vektor",
"vector-skin-desc": "Pourchas a ra 2 wiskadur Vektor:\n* 2011 - Stumm modern MonoBook freskaet e dres hag ennañ meur a wellaenn implijout\n* 2022 - Vektor aozet evel perzh eus raktres [[mw:Desktop Improvements|Gwellaat ar burev]] ar WMF.",
"prefs-vector-enable-vector-1-label": "Ober gant stumm kozh Vektor",
"prefs-vector-enable-vector-1-help": "E-pad ar bloavezhioù a zeu e vo nevesaet ar gwiskadur Vektor tamm-ha-tamm. Gant stumm kozh Vektor e chelloch gwelout stumm Vektor eus miz Du 2019. Evit gouzout hiroch diwar-benn an nevesaat, kit da [[mw:Reading/Web/Desktop_Improvements|bajenn ar raktres]].",
"vector-opt-out": "Distreiñ d'an tres kozh",
"vector-opt-out-tooltip": "Kemmañ hoc'h arventennoù evit distreiñ da dres kozh ar gwiskadur (Vector istorel)",
"vector.css": "/* Kement CSS a zo amañ a vo karget evit implijerien ar gwiskadur Vektor */",
"vector.js": "/* Kement JavaScript a zo amañ a vo karget evit implijerien ar gwiskadur Vektor */",
"vector-action-toggle-sidebar": "Diskwel/kuzhat ar varrenn gostez",
"vector-languages": "Yezhoù",
"vector-language-button-aria-label": "Mont dur pennad en ur yezh all. {{PLURAL:$1|$1 yezh}} a zo.",
"vector-language-button-label": "{{PLURAL:$1|$1 yezh}}",
"vector-no-language-button-label": "Ouzhpennañ yezhoù",
"vector-no-language-button-aria-label": "Neus eus ar pennad-mañ nemet er yezh-mañ. Ouzhpennit ar pennad e yezhoù all.",
"vector-language-redirect-to-top": "Er {{SITENAME}}-mañ emañ al liammoù yezh e deroù ar bajenn en tu all da ditl ar pennad. [[#p-lang-btn|Mont dan deroù]].",
"vector-language-variant-switcher-label": "Kemmañ adstumm yezh",
"vector-action-addsection": "Rannbennad nevez",
"vector-action-delete": "Diverkañ",
"vector-action-move": "Adenvel",
"vector-action-protect": "Gwareziñ",
"vector-action-undelete": "Diziverkañ",
"vector-action-unprotect": "Cheñch gwarez",
"vector-action-unprotect": "Kemmañ ar gwarez",
"vector-view-create": "Krouiñ",
"vector-view-edit": "Kemmañ",
"vector-view-history": "Gwelet an istor",
"vector-view-view": "Lenn",
"vector-view-viewsource": "Sellet ouzh tarzh an destenn",
"vector-more-actions": "Muioc'h"
"vector-jumptonavigation": "Mont dar merdeerezh",
"vector-jumptosearch": "Mont dar chlask",
"vector-jumptocontent": "Mont dan endalchad",
"vector-more-actions": "Muioc'h",
"vector-search-loader": "O kargañ alioù klask",
"vector-searchsuggest-containing": "Klask pajennoù a zo <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> enno",
"vector-intro-page": "Help:Introduction",
"vector-toc-heading": "Taolenn",
"vector-toc-toggle-position-sidebar": "mont dar varrenn gostez",
"vector-toc-toggle-position-title": "kuzhat",
"vector-toc-beginning": "Deroù",
"vector-toc-toggle-button-label": "Diskwel/kuzhat isrann $1",
"vector-anon-user-menu-pages": "Pajennoù evit implijerien digevreet",
"vector-anon-user-menu-pages-learn": "gouzout hiroc'h",
"vector-anon-user-menu-pages-label": "Gouzout hiroch a-zivout degas kemmoù",
"vector-main-menu-tooltip": "Lañser pennañ",
"vector-toc-menu-tooltip": "Taolenn",
"vector-toc-collapsible-button-label": "Gwintañ an daolenn",
"vector-site-nav-label": "Lec'hienn",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|Kaozeadenn]]",
"tooltip-vector-anon-user-menu-title": "Muioc'h a zibaboù"
}

View File

@ -1,10 +1,17 @@
{
"@metadata": {
"authors": [
"Brxeditor",
"Mr. Nijwmsa Boro",
"Ⓝⓘⓙⓦⓜ",
"ⓝⓘⓙⓦⓜ"
]
},
"vector-action-move": "दोरोद",
"vector-action-protect": "रैखा खालाम",
"vector-view-create": "दा",
"vector-view-edit": "सोलाय",
"vector-view-history": "जारिमिन नाय",
"vector-view-view": "फराय",
"vector-more-actions": "गोबां"
}

View File

@ -3,22 +3,38 @@
"authors": [
"CERminator",
"DzWiki",
"KWiki",
"Edinwiki",
"Srdjan m"
"KWiki",
"Srdjan m",
"Srđan"
]
},
"vector-skin-desc": "Moderna verzija MonoKnjige s novijim izgledom i mnogim poboljšanjima u pogledu upotrebljivosti",
"prefs-vector-enable-vector-1-label": "Koristi stari Vector",
"prefs-vector-enable-vector-1-help": "Kroz narednih nekoliko godina postepeno ćemo ažurirati temu Vector. Stari Vector pružit će Vam mogućnost da koristite raniju verziju Vectora (zamrznutu u decembru 2019). Za detalje o ažuriranjima, posjetite našu [[mw:Reading/Web/Desktop_Improvements|projektnu stranicu]].",
"vector-opt-out": "Prebaci na stari izgled",
"vector-opt-out-tooltip": "Promijenite postavke da biste vratili stari izgled teme (stari Vector)",
"vector-languages": "Jezici",
"vector-language-button-label": "{{PLURAL:$1|$1 jezik|$1 jezika}}",
"vector-language-redirect-to-top": "Linkovi na druge jezike nalaze se u gornjem desnom uglu stranice pored naslova članka. [[#p-lang-btn|Idi na vrh]].",
"vector-action-addsection": "Dodaj temu",
"vector-action-delete": "Obriši",
"vector-action-delete": "Izbriši",
"vector-action-move": "Premjesti",
"vector-action-protect": "Zaštiti",
"vector-action-undelete": "Vrati obrisano",
"vector-action-undelete": "Vrati izbrisano",
"vector-action-unprotect": "Promijeni zaštitu",
"vector-view-create": "Napravi",
"vector-view-edit": "Uredi",
"vector-view-history": "Historija",
"vector-view-view": "Čitaj",
"vector-view-viewsource": "Pogledaj izvor",
"vector-more-actions": "Više"
"vector-jumptonavigation": "Idi na navigaciju",
"vector-jumptosearch": "Idi na pretragu",
"vector-more-actions": "Više",
"vector-search-loader": "Učitavam prijedloge pretrage",
"vector-toc-heading": "Sadržaj",
"vector-toc-beginning": "Početak",
"vector-anon-user-menu-pages-learn": "detaljnije",
"vector-main-menu-tooltip": "Glavni meni",
"tooltip-vector-anon-user-menu-title": "Više opcija"
}

View File

@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Simartampua",
"Apundung"
"Apundung",
"Simartampua"
]
},
"vector-action-addsection": "Baen tema",

View File

@ -4,6 +4,7 @@
"Filipinayzd"
]
},
"vector-action-addsection": "Magrugang sa paksa",
"vector-action-delete": "Puraon",
"vector-action-move": "Ilipat",
"vector-action-protect": "Protektaran",

View File

@ -1,12 +1,14 @@
{
"@metadata": {
"authors": [
"Kurniasan"
"Kurniasan",
"Notanotheramy"
]
},
"vector-action-move": "Paléccé'",
"vector-view-create": "Ebbu",
"vector-view-create": "ᨆᨙᨅᨘ",
"vector-view-edit": "Padéccéng",
"vector-view-view": "Baca",
"vector-view-viewsource": "Ita sumber"
"vector-view-view": "ᨅᨌ",
"vector-view-viewsource": "Ita sumber",
"vector-more-actions": "ᨒᨕᨗᨊᨕᨙ"
}

View File

@ -1,20 +1,33 @@
{
"@metadata": {
"authors": [
"Abella",
"Aleator",
"Amire80",
"Anskar",
"Calak",
"Paucabot",
"Ssola",
"Vriullop",
"Toniher",
"Fitoschido",
"Abella",
"Townie"
"Paucabot",
"SMP",
"Ssola",
"Toniher",
"Townie",
"Vriullop"
]
},
"skinname-vector": "Vector",
"vector-skin-desc": "Versió moderna del MonoBook amb un nou aspesctes i moltes millores en la usabilitat",
"skinname-vector": "Vector (versió 2010)",
"vector-skin-desc": "Proporciona dues aparences Vector:\n* 2011 - La versió moderna de MonoBook amb aspecte refrescat i moltes millores d'usabilitat.\n* 2022 - La versió Vector construïda com a part del projecte [[mw:Desktop Improvements]] de la Fundació Wikimedia.",
"prefs-vector-enable-vector-1-label": "Usa la versió antiga de Vector",
"prefs-vector-enable-vector-1-help": "En els propers anys, s'anirà actualitzant gradualment l'aparença Vector. La versió antiga de Vector us permet deixar-la tal com està a desembre de 2019. Per a saber més sobre les actualitzacions, vegeu la [[mw:Reading/Web/Desktop_Improvements|pàgina del projecte]].",
"vector-opt-out": "Canvia a l'aspecte d'abans",
"vector-opt-out-tooltip": "Canvia la configuració a la versió antiga (legacy Vector)",
"vector-action-toggle-sidebar": "Mostra o oculta la barra lateral",
"vector-languages": "Llengües",
"vector-language-button-aria-label": "Vés a un article en una altra llengua. Disponible en {{PLURAL:$1|$1 llengua|$1 llengües}}",
"vector-language-button-label": "{{PLURAL:$1|$1 llengua|$1 llengües}}",
"vector-no-language-button-label": "Afegeix llengües",
"vector-language-redirect-to-top": "En aquest projecte {{SITENAME}}, els enllaços de llengua són a dalt de la pàgina a l'altre costat del títol. [[#p-lang-btn|Vés a dalt]].",
"vector-language-variant-switcher-label": "Canvia la variant de llengua",
"vector-action-addsection": "Afegeix un tema",
"vector-action-delete": "Esborra",
"vector-action-move": "Reanomena",
@ -26,5 +39,22 @@
"vector-view-history": "Mostra l'historial",
"vector-view-view": "Mostra",
"vector-view-viewsource": "Mostra el codi",
"vector-more-actions": "Més"
"vector-jumptonavigation": "Salta a la navegació",
"vector-jumptosearch": "Salta a la cerca",
"vector-jumptocontent": "Vés al contingut",
"vector-more-actions": "Més",
"vector-search-loader": "Carregant els suggeriments de cerca",
"vector-searchsuggest-containing": "Cerca les pàgines que continguin <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-intro-page": "Help:Introducció",
"vector-toc-heading": "Contingut",
"vector-toc-beginning": "Inici",
"vector-toc-toggle-button-label": "Commuta la subsecció $1",
"vector-anon-user-menu-pages": "Pàgines per a editors no registrats",
"vector-anon-user-menu-pages-learn": "més informació",
"vector-anon-user-menu-pages-label": "Vegeu més informació sobre l'edició",
"vector-main-menu-tooltip": "Menú principal",
"vector-toc-menu-tooltip": "Taula de continguts",
"vector-site-nav-label": "Lloc",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|Discussió]]",
"tooltip-vector-anon-user-menu-title": "Més opcions"
}

View File

@ -1,9 +1,9 @@
{
"@metadata": {
"authors": [
"GnuDoyng",
"Yejianfei",
"唐吉訶德的侍從",
"GnuDoyng"
"唐吉訶德的侍從"
]
},
"vector-action-addsection": "Gă uâ-dà̤",
@ -16,6 +16,6 @@
"vector-view-edit": "Siŭ-gāi",
"vector-view-history": "Káng lĭk-sṳ̄",
"vector-view-view": "Tĕ̤k",
"vector-view-viewsource": "看源代碼",
"vector-view-viewsource": "Káng nguòng-dâi-mā",
"vector-more-actions": "Gó-sâ̤"
}

View File

@ -2,22 +2,44 @@
"@metadata": {
"authors": [
"Sasan700",
"Умар",
"Исмаил Садуев"
"Исмаил Садуев",
"Умар"
]
},
"skinname-vector": "Векторан",
"skinname-vector": "Вектор, ширйеларг (2010)",
"skinname-vector-2022": "Вектор (2022 шо)",
"vector-specialversion-name": "Векторан",
"vector-skin-desc": "ХӀокху хенан MonoBook-ан верси кечдинчу карладахаршца а, дуккха а тодаршца юзабилити чохь",
"prefs-vector-enable-vector-1-label": "Лелайе Векторан темин шира верси",
"prefs-vector-enable-vector-1-help": "ТӀедогӀучу массийта шарахь «Векторан» тема карлайоккхура йу. «Векторан хьалхара версис» шуьна аьтту бо «Векторан» хьалхара вариант лело (2019 декабрь). Кхин сов цуьнах лаьцна хаа хьажа [[mw:Special:MyLanguage/Reading/Web/Desktop_Improvements|проектан агӀонга]].",
"vector-opt-out": "Латайе шира хатӀ",
"vector-opt-out-tooltip": "Шира тема латайан, хийца нисдаран гӀирс (Ширйелла векторан)",
"vector-action-toggle-sidebar": "АгӀорара панель хийца",
"vector-languages": "Меттанаш",
"vector-language-button-label": "{{PLURAL:$1|$1 мотт}}",
"vector-language-redirect-to-top": "ХӀокху сайтехь меттанийн хьажоргаш йу агӀонан йуьхьегехь, йаззаман цӀеран дуьхьала. [[#p-lang-btn|Йуьхье гӀо]].",
"vector-action-addsection": "Тема тӀетоха",
"vector-action-delete": "ДӀаяккхар",
"vector-action-delete": "ДӀайаккхар",
"vector-action-move": "ЦӀе хийцар",
"vector-action-protect": "Ларъяр",
"vector-action-undelete": "МеттахӀоттае",
"vector-action-unprotect": "Ларъяр хийцар",
"vector-view-create": "Кхоллар",
"vector-view-edit": "Нисъе",
"vector-view-history": "АгӀона хийцамаш",
"vector-view-view": "Éшар",
"vector-view-viewsource": "Билглонашка хьажа",
"vector-more-actions": "Кхин"
"vector-action-protect": "Ларйар",
"vector-action-undelete": "МеттахӀоттайе",
"vector-action-unprotect": "Ларйар хийцар",
"vector-view-create": "БӀаьра кхолла",
"vector-view-edit": "Нисйе бӀаьра",
"vector-view-history": "АгӀонан хийцамаш",
"vector-view-view": "Йеша",
"vector-view-viewsource": "Коде хьажар",
"vector-jumptonavigation": "Навигацин тӀегӀо",
"vector-jumptosearch": "Лахарна тӀегӀо",
"vector-jumptocontent": "Чулацаман тӀегӀо",
"vector-more-actions": "Кхин а",
"vector-search-loader": "Чудохуш ду лахаран кховдинарш",
"vector-intro-page": "Help:Хаам",
"vector-toc-heading": "Чулацам",
"vector-toc-beginning": "Йуьхь",
"vector-anon-user-menu-pages-learn": "совнаха хаа",
"vector-anon-user-menu-pages-label": "Хийцамашбарах мадарра",
"vector-main-menu-tooltip": "Коьрта меню",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|Дискусси]]",
"tooltip-vector-anon-user-menu-title": "Дукха таронаш"
}

View File

@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Jordz",
"Bentong Isles"
"Bentong Isles",
"Jordz"
]
},
"vector-action-addsection": "Pagdugang og topiko",

View File

@ -1,10 +0,0 @@
{
"@metadata": {
"authors": [
"Fanjiayi"
]
},
"vector-action-protect": "Protehi",
"vector-view-create": "Fa'tinas",
"vector-view-edit": "Tulaika"
}

View File

@ -1,12 +1,21 @@
{
"@metadata": {
"authors": [
"Aram",
"Asoxor",
"Calak",
"Sarchia"
"Muhammed taha",
"Sarchia",
"ئارام بکر"
]
},
"skinname-vector": "ڤێکتۆر",
"skinname-vector-2022": "ڤێکتۆر (٢٠٢٢)",
"prefs-vector-enable-vector-1-label": "ڤێکتۆری سپاردە بەکاربێنە",
"prefs-vector-enable-vector-1-help": "لەماوەی چەند ساڵی داھاتوو، ھەوڵی نوێکردنەوەی پێستەی ڤێکتۆر دەدەین. ڤێکتۆری سپاردە ڕێگەت پێ دەدات کە وەشانە کۆنەکەی ڤێکتۆر (لە کانوونی یەکەمی ٢٠١٩) ببینیت. بۆ زیاتر زانیاری لەسەر نوێکردنەوەکان، بڕۆ بۆ [[mw:Reading/Web/Desktop_Improvements|پەڕەی پرۆژەکەمان]].",
"vector-opt-out": "بۆ دیمەنە کۆنەکە بیگۆڕە",
"vector-opt-out-tooltip": "ڕێکخستنەکانت بۆ گەڕانەوەی دیمەنە کۆنەکەی پێستەکە (ڤێکتۆری سپاردە) بگۆڕە",
"vector-language-button-label": "{{{{PLURAL:$1|$1 زمان|$1 زمان}}}}",
"vector-action-addsection": "بابەت دابنێ",
"vector-action-delete": "سڕینەوە",
"vector-action-move": "گواستنەوە",

16
i18n/cnr-latn.json Normal file
View File

@ -0,0 +1,16 @@
{
"@metadata": {
"authors": [
"Bellatrix10"
]
},
"vector-action-addsection": "Dodaj temu",
"vector-action-delete": "Izbriši",
"vector-action-move": "Premjesti",
"vector-action-protect": "Zaštiti",
"vector-view-create": "Napravi",
"vector-view-edit": "Uredi",
"vector-view-history": "Pregledaj istoriju",
"vector-view-view": "Čitaj",
"vector-more-actions": "Više"
}

View File

@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"Jun Misugi",
"Paulu"
]
},
@ -13,5 +14,6 @@
"vector-view-edit": "Mudificà",
"vector-view-history": "Vede a cronolugia",
"vector-view-view": "Leghje",
"vector-view-viewsource": "Vede a surghjente"
"vector-view-viewsource": "Vede a surghjente",
"vector-more-actions": "Più"
}

View File

@ -1,9 +1,12 @@
{
"@metadata": {
"authors": [
"Bloomaround",
"ⲁϩⲙⲉⲧ"
]
},
"vector-action-addsection": "ⲧⲟⲩϩⲟ ⲟⲩⲑⲉⲙⲁ",
"vector-action-move": "ⲕⲓⲙ",
"vector-view-create": "ⲑⲁⲙⲓⲟ",
"vector-view-edit": "ϫⲓⲛⲫⲱⲛϩ",
"vector-view-history": "ⲁⲛⲁⲩ ⲉϯϩⲓⲥⲧⲟⲣⲓⲁ",

19
i18n/cpx.json Normal file
View File

@ -0,0 +1,19 @@
{
"@metadata": {
"authors": [
"ChoiChong",
"Kahin He"
]
},
"vector-language-button-label": "{{PLURAL:$1|$1语言}}",
"vector-action-addsection": "添加话题",
"vector-action-delete": "刪",
"vector-action-move": "移动",
"vector-action-protect": "保护",
"vector-view-create": "創建",
"vector-view-edit": "修改",
"vector-view-history": "看历史",
"vector-view-view": "读",
"vector-more-actions": "価兮",
"vector-searchsuggest-containing": "寻讨含有<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>兮页面"
}

View File

@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Don Alessandro",
"Danvintius Bookix"
"Danvintius Bookix",
"Don Alessandro"
]
},
"vector-action-addsection": "Мевзу къош",

View File

@ -1,9 +1,13 @@
{
"@metadata": {
"authors": [
"Don Alessandro"
"Amire80",
"Don Alessandro",
"TayfunEt."
]
},
"vector-languages": "Tiller",
"vector-language-button-label": "{{PLURAL:$1|$1 til|$1 tiller}}",
"vector-action-addsection": "Mevzu qoş",
"vector-action-delete": "Yoq et",
"vector-action-move": "Adını deñiştir",
@ -15,5 +19,6 @@
"vector-view-history": "Keçmişini köster",
"vector-view-view": "Oqu",
"vector-view-viewsource": "Menba kodunı köster",
"vector-more-actions": "Başqa areketler"
"vector-more-actions": "Başqa areketler",
"vector-searchsuggest-containing": "<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong> içeren saifelerni qıdır"
}

View File

@ -1,14 +1,34 @@
{
"@metadata": {
"authors": [
"Amire80",
"Dvorapa",
"Fraxinus.cs",
"Jaroslav Cerny",
"Kareyac",
"Matěj Suchánek",
"Mormegil",
"Dvorapa"
"Patriccck",
"Patrik L."
]
},
"skinname-vector": "Vektor",
"vector-skin-desc": "Moderní verze MonoBooku s novějším vzhledem a vylepšenou použitelností",
"vector.css": "/* Zde uvedené CSS bude ovlivňovat pouze styl „Vektor“ */",
"vector.js": "/* JavaScript pro uživatele používající vzhled „Vektor“ */",
"skinname-vector": "Starý Vektor (2010)",
"skinname-vector-2022": "Vektor (2022)",
"vector-specialversion-name": "Vektor",
"vector-skin-desc": "Poskytuje 2 vzhledy Vektor:\n* 2011 - Moderní verze vzhledu Kniha s novějším vzhledem a vylepšenou použitelností.\n* 2022 - Vektor vytvořený jako součást projektu WMF [[mw:Desktop Improvements]].",
"prefs-vector-enable-vector-1-label": "Použít starý Vektor",
"prefs-vector-enable-vector-1-help": "V následujících letech budeme postupně aktualizovat vzhled Vektor. Starý Vektor vám umožní používat starou verzi Vektoru z prosince 2019. Více o aktualizacích se dozvíte na naší [[mw:Reading/Web/Desktop_Improvements|projektové stránce]].",
"vector-opt-out": "Přepnout na starý vzhled",
"vector-opt-out-tooltip": "Změnit nastavení a vrátit se zpět ke staré podobě vzhledu (starý Vektor)",
"vector.css": "/* Veškeré zde uvedené CSS bude načítáno uživatelům vzhledu „Vektor“ */",
"vector.js": "/* Veškerý zde uvedený JavaScript bude načítán uživatelům vzhledu „Vektor“ */",
"vector-action-toggle-sidebar": "Přepnout postranní panel",
"vector-languages": "Jazyky",
"vector-language-button-aria-label": "Přejděte k článku v jiném jazyce. Je dostupný v {{PLURAL:$1|$1 jazyce|$1 jazycích}}",
"vector-language-button-label": "{{PLURAL:$1|$1 jazyk|$1 jazyky|$1 jazyků}}",
"vector-no-language-button-label": "Přidat jazyky",
"vector-language-redirect-to-top": "Tady na {{GRAMMAR:6sg|{{SITENAME}}}} jsou mezijazykové odkazy nahoře na stránce, napravo od názvu článku. [[#p-lang-btn|Jít nahoru]].",
"vector-language-variant-switcher-label": "Změnit variantu jazyka",
"vector-action-addsection": "Přidat téma",
"vector-action-delete": "Smazat",
"vector-action-move": "Přesunout",
@ -22,5 +42,21 @@
"vector-view-viewsource": "Zobrazit zdrojový kód",
"vector-jumptonavigation": "Skočit na navigaci",
"vector-jumptosearch": "Skočit na vyhledávání",
"vector-more-actions": "Další"
"vector-jumptocontent": "Přeskočit na obsah",
"vector-more-actions": "Další",
"vector-search-loader": "Načítají se návrhy pro hledání",
"vector-searchsuggest-containing": "Vyhledat stránky obsahující „<strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>“",
"vector-intro-page": "Nápověda:Úvod",
"vector-toc-heading": "Obsah",
"vector-toc-toggle-position-sidebar": "přesunout do postranního panelu",
"vector-toc-toggle-position-title": "skrýt",
"vector-toc-beginning": "Začátek",
"vector-anon-user-menu-pages": "Stránky pro odhlášené editory",
"vector-anon-user-menu-pages-learn": "dozvědět se více",
"vector-anon-user-menu-pages-label": "Více informací o editování",
"vector-main-menu-tooltip": "Hlavní menu",
"vector-toc-menu-tooltip": "Obsah",
"vector-toc-collapsible-button-label": "Přepnout obsah",
"vector-2022-prefs-talkpage": "[[mw:Talk:Reading/Web/Desktop_Improvements|Diskuse]]",
"tooltip-vector-anon-user-menu-title": "Další možnosti"
}

View File

@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"Kaszeba",
"Kuvaly",
"Kirsan"
"Kirsan",
"Kuvaly"
]
},
"vector-action-addsection": "Dodôj témã",

View File

@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"NR Deblocked",
"ОйЛ"
]
},
@ -14,5 +15,7 @@
"vector-view-history": "їсторїꙗ",
"vector-view-view": "чьтѥниѥ",
"vector-view-viewsource": "страницѧ источьнъ обраꙁъ",
"vector-more-actions": "вѧщє"
"vector-more-actions": "вѧщє",
"vector-main-menu-tooltip": "​Главное​ ​меню​",
"tooltip-vector-anon-user-menu-title": "Бо́льше ѻпцїй"
}

View File

@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"Chavash",
"FLAGELLVM DEI",
"Chuvash2014"
"Chuvash2014",
"FLAGELLVM DEI"
]
},
"vector-action-addsection": "Тема хуш",

View File

@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
"JonesT143",
"Lloffiwr"
]
},
"vector-language-button-label": "$1 iaith",
"vector-action-addsection": "Ychwanegu adran",
"vector-action-delete": "Dileu",
"vector-action-move": "Symud",

View File

@ -1,14 +1,28 @@
{
"@metadata": {
"authors": [
"Amire80",
"Antonla",
"Byrial",
"Christian List",
"Jan Friberg",
"Peter Alberti",
"Saederup92"
"Saederup92",
"Weblars"
]
},
"vector-skin-desc": "Moderne version af MonoBook med frisk udseende og mange forbedringer af brugervenligheden",
"vector-action-addsection": "Nyt emne",
"vector-skin-desc": "Der findes 2 Vector skins:\n\n* 2011 - Den moderne version af MonoBook med frisk udseende og mange forbedringer af brugervenligheden.\n* 2022 - Den version som er udviklet som en del af WMFs [[mw:Desktop Improvements]] project.",
"prefs-vector-enable-vector-1-label": "Brug klassisk Vector",
"prefs-vector-enable-vector-1-help": "I løbet af de næste år vil vi gradvis opdatere Vector-udseendet. Klassisk Vector vil vise den gamle version af Vector (per december 2019). For at læse mere om opdateringen, se [[mw:Reading/Web/Desktop_Improvements|vores projektside]].",
"vector-opt-out": "Skift til det gamle udseende",
"vector-opt-out-tooltip": "Ændr indstillingerne for at gå tilbage til det gamle udseende (klassisk Vector)",
"vector-action-toggle-sidebar": "Vis/skjul venstremenuen",
"vector-languages": "Sprog",
"vector-language-button-aria-label": "Gå til en artikel på et andet sprog. Tilgængelig på {{PLURAL:$1|$1 sprog}}",
"vector-language-button-label": "{{PLURAL:$1|$1 sprog}}",
"vector-language-redirect-to-top": "På denne {{SITENAME}} er sproglinkene i toppen af siden overfor artiklens titel.\n[[#p-lang-btn|Gå til toppen]].",
"vector-language-variant-switcher-label": "Ændr sprogvariant",
"vector-action-addsection": "Tilføj emne",
"vector-action-delete": "Slet",
"vector-action-move": "Flyt",
"vector-action-protect": "Beskyt",
@ -21,5 +35,14 @@
"vector-view-viewsource": "Se kilden",
"vector-jumptonavigation": "Spring til navigation",
"vector-jumptosearch": "Spring til søgning",
"vector-more-actions": "Mere"
"vector-jumptocontent": "Spring til indhold",
"vector-more-actions": "Mere",
"vector-search-loader": "Henter søgeforslag",
"vector-searchsuggest-containing": "Søgning for sider der indeholder <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>",
"vector-intro-page": "Help:Introduktion",
"vector-anon-user-menu-pages": "Sider for redaktører som er logget ud",
"vector-anon-user-menu-pages-learn": "lær mere",
"vector-anon-user-menu-pages-label": "Læs mere om redigering",
"vector-main-menu-tooltip": "Hovedmenu",
"tooltip-vector-anon-user-menu-title": "Flere mugligheder"
}

26
i18n/dag.json Normal file
View File

@ -0,0 +1,26 @@
{
"@metadata": {
"authors": [
"Achiri Bitamsimli",
"Alhaj Darajaati",
"Chirifo",
"Dnshitobu",
"Jahinfo",
"Masssly",
"Musahfm",
"Ruky Wunpini"
]
},
"vector-language-button-aria-label": "Kpemi lahabali bali sheli ni. Din be {{PLURAL:$1|$1 Balli |$1 Bala}}",
"vector-language-variant-switcher-label": "Taɣimi balli woliginsima",
"vector-action-addsection": "Pahimi yaɣili",
"vector-action-delete": "Nyahima",
"vector-action-move": "Tirisibu",
"vector-action-protect": "Gubu",
"vector-view-create": "Namma",
"vector-view-edit": "Mali niŋ",
"vector-view-history": "Lihimi tarihi",
"vector-view-view": "Karimma",
"vector-more-actions": "Lihimi n pahi",
"vector-searchsuggest-containing": "Yuli bo yaɣi shɛŋa din mali <strong class=\"cdx-typeahead-search__search-footer__query\">$1</strong>"
}

9
i18n/dar.json Normal file
View File

@ -0,0 +1,9 @@
{
"@metadata": {
"authors": [
"Soul Train"
]
},
"vector-view-view": "БелчӀес",
"vector-more-actions": "ГӀурра"
}

View File

@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
"Marcell0",
"L*E*D"
"Inkowik",
"L*E*D",
"Marcell0"
]
},
"vector-view-edit": "Bearbeiten",
"vector-view-history": "Versionsgeschichte anzeigen",
"vector-view-history": "Versionsgeschichte",
"vector-view-view": "Lesen",
"vector-more-actions": "Mehr"
}

Some files were not shown because too many files have changed in this diff Show More