Commit graph

32 commits

Author SHA1 Message Date
Umherirrender d3b251de52 Use namespaced classes
Changes to the use statements done automatically via script
Addition of missing use statement done manually

Change-Id: I84dc0ec8a909fce94db2b958eadac9caf661972b
2024-06-10 22:28:40 +02:00
bwang 0109218ab9 Rename client preference menu to appearance menu
Bug: T362808
Change-Id: Id6800d38eebf433cf0c9e3f179dd83df2eefd1fb
2024-04-29 15:38:20 +00:00
Umherirrender 558359c06d Type hint UserIdentity in Requirements/Components
Only id or registered state is needed.

Change-Id: I184db486ed2763e0402fe75ed9afb0e71a0d57c6
2024-03-13 21:59:40 +01:00
Umherirrender 7afaa93ab2 build: Upgrade mediawiki/mediawiki-codesniffer to v43.0.0
Change-Id: Ic8e1a7bc4bab091b0e959deae5258181fc54891b
2024-03-12 20:51:09 +01:00
bwang 230c837052 Remove language notice
Bug: T353619
Change-Id: I75430c8b1e66158f798fbe27eec4942a089f3931
2024-02-29 17:04:16 -06:00
jenkins-bot 450b84603e Merge "Add PHPUnit tests for VectorComponentMainMenu" 2024-02-27 00:50:27 +00:00
jenkins-bot 2470c2b332 Merge "Add PHPUnit tests for VectorComponentMainMenuAction" 2024-02-12 22:14:14 +00:00
Doğu Abaris 71f9552bb2 Add PHPUnit tests for VectorComponentMenu
Adds tests for VectorComponentMenu in Vector skin.
The test suite includes the following validations:
- Constructor initialization with expected parameters and behaviors.
- Validate counting logic for menu items.
- Validates `getTemplateData` method's output for correctness.

Change-Id: Ia52aa70e9213f6627d063d520fdbb2e353f0bfcb
2024-02-10 09:16:39 +00:00
Doğu Abaris fab1b342e0 Add PHPUnit tests for VectorComponentMainMenu
Adds tests for VectorComponentMainMenu in Vector skin.
The test suite includes the following validations:
- Constructor initialization with expected parameters and behaviors.
- Correct identification of 'is-pinned' state
- Inclusion of data for first portlet and rest portlets
- Handling of pin/unpin actions and language alert considerations
- Proper integration of menu elements based on user and feature flags

Change-Id: Ie408ff668893d1de2cf9dd1211a9c82c0b882f99
2024-02-10 01:38:59 +00:00
Doğu Abaris f1c6c828a9 Add PHPUnit tests for VectorComponentMainMenuAction
Adds tests for VectorComponentMainMenuAction in Vector skin.
The test suite includes the following validations:
- Constructor initialization with expected parameters and behaviors.
- Validates `getTemplateData` method's output for correctness.

Change-Id: I5deda64dc1bd3db85df69d0bb5a5a27f6fb8c1ff
2024-02-10 01:38:47 +00:00
Doğu Abaris 6212b8feac Add PHPUnit tests for VectorComponentLanguageDropdown
Adds tests for VectorComponentLanguageDropdown in Vector skin.
The test suite includes the following validations:
- Proper handling based on page type (subject/talk).
- Correct labeling and icon selection.
- Accurate class and aria label configuration.

Change-Id: I145cb250c513f3f81e780195485907897788f5c4
2024-02-10 00:20:12 +00:00
Doğu Abaris cd032f4c4c Add PHPUnit tests for VectorComponentDropdown
Adds tests for VectorComponentDropdown in Vector skin.
The test suite includes the following validations:
- Correct template data generation.
- Proper label, tooltip, and icon handling.
- Accurate CSS class construction for various states.

Change-Id: Iafd28cfe62eb4b8c6039f819b9d8f005b0b32d48
2024-02-07 10:40:26 +00:00
Doğu Abaris 4b1a4726a0 Add PHPUnit tests for VectorComponentClientPrefs
Adds tests for VectorComponentClientPrefs in Vector skin.
The test suite includes the following validations:
- Both pinned and unpinned states
- Correct structuring of 'data-pinnable-header'

Change-Id: I745559b2f738b4bed0f152fc8de3af1653b96ecd
2024-02-07 10:18:11 +00:00
Doğu Abaris 880ae42fde Add PHPUnit tests for VectorComponentButton
Adds tests for VectorComponentButton in Vector skin.
The test suite includes the following validations:
- Various button configurations and expected CSS classes.
- Accurate template data for label, icon, href, and custom attributes.
- CSS classes according to weight, action, and iconOnly.

Change-Id: I228c197e5adee59a79ab6e2aad74ff0f18ef6b38
2024-02-07 00:21:14 +00:00
Doğu Abaris 4775215a5c Add PHPUnit tests for VectorComponentPinnableHeader
Adds tests for VectorComponentPinnableHeader in Vector skin.
The test suite includes the following validations:
- Correct template data generation based on constructor parameters.
- Accurate label generation from MessageLocalizer.
- Conditional logic for 'moveElement' affecting container ID attributes.

Change-Id: I2412c86e08dfca088ca57330b4dd078c212513f9
2024-02-07 00:11:15 +00:00
Doğu Abaris be11774875 Add PHPUnit tests for VectorComponentPinnableContainer
Adds tests for VectorComponentPinnableContainer in Vector skin, ensuring:
- Proper initialization with ID and pin status.
- Correct template data based on init params.
- Consistent template data for pinned/unpinned states.

Change-Id: Iec33c11b0afbe2bea5b6708b83b9ea618f7e809b
2024-02-06 23:41:35 +01:00
Doğu Abaris 8353c535c6 Add PHPUnit tests for VectorComponentPinnableElement
Adds tests for VectorComponentPinnableElement in Vector skin, ensuring:
- Proper instantiation with an ID parameter.
- Correct return of template data containing the ID.
- Reliability in handling element ID for use in templates and UI.

Change-Id: I3758f042ad43b90ee94a3b5aa14537fa1b0657d1
2024-02-06 23:41:35 +01:00
Doğu Abaris 2414a69730 Add PHPUnit tests for VectorComponentLink
Adds tests for VectorComponentLink in Vector skin, ensuring:
- Initialization with parameters.
- Generation of html-attributes string with title and aria-label.
- Consistency in link attributes for accessibility and UX.

Change-Id: I80b8a84d1d10bc7274ba5267910206d7f6e68534
2024-02-06 23:41:35 +01:00
Umherirrender 829fb38450 VectorComponentPageTools: Remove unused User
Usage was removed in 448a9066

Follow-Up: Idca2ccfe4aeef0a2ac0970f7baf54849a64a4070
Change-Id: I001805e955711c8343097f72370719310f63ed94
2024-01-11 23:00:37 +01:00
Umherirrender f8ffcd20d2 Use namespaced classes
Changes to the use statements done automatically via script
Addition of missing use statements done manually

Change-Id: I9b8f447ea4d715bc815cc782184bca288ee001a0
2024-01-02 20:54:08 +01:00
James D. Forrester 507de0f4e2 VectorComponentTableOfContentsTest: Add mocks for Message:: escaped() and rawParams()
Needed for new security patch.

Change-Id: I9295a8e0f9f00b62d5206f6d7e40bb657f436510
2023-09-28 20:30:48 -04:00
Umherirrender 0583639a6a tests: Make PHPUnit data providers static
Initally used a new sniff with autofix (T333745)

Bug: T332865
Change-Id: Ia03ad50ac5d34e9c012a8fad068adabd2e5d8669
2023-05-20 11:11:30 +02:00
bwang 6f13caa775 Remove VectorTableOfContentsBeginning flag
Bug: T334969
Change-Id: I9e931b7cdc443e73a41c92f5368f81b35285437e
2023-05-08 22:25:03 +00:00
Moh'd Khier Abualruz 098811f200 Adjust table of collapsing auto-collapse algorithm for articles with few top level sections
Bug: T333021
Change-Id: I9eef0fc0715f5f1917c205b7b7987b0ed76f31a2
2023-04-04 10:35:12 +02:00
Nicholas Ray 448a90665d Enable the pinning for anonymous users when page tools is enabled.
Bug: T331657
Change-Id: Idca2ccfe4aeef0a2ac0970f7baf54849a64a4070
2023-03-13 23:49:59 +00:00
ksarabia aba94865c2 Removes old style rule
This patch removes the old style rules for .vector-toc-pinned after one
week of cache.
Also removes 'data-name' which was no longer used

Bug: T325032
Change-Id: I7c8d8e51a61646151706b71a1733b1daac5dbd45
2023-03-10 14:31:44 -06:00
ksarabia 74addde337 [WIP] Removes the TOC class in body and adds in html
Adds new constants for TOC and registers feature.

Bug: T325032
Change-Id: I5e0f5f3a6d186b245bdbc98c2bb9e4cc17a03fdb
2023-02-28 17:21:16 -06:00
bwang 0032b7b970 Remove VectorComponentTableOfContentsContainer in favor of directly using VectorComponentPinnableContainer,
- Remove all TOC components from markup when TOC isnt available
- Ensure TOC components have a consistent naming convention

Follow-up: Icd871e1bdf4ab0c7aa5b906b913416f4b1747750
Change-Id: I63519b5e5392b9eb546876e7eea060b9a6c147dc
2023-01-16 17:20:03 -06:00
Jon Robson 0c0ce631ee Components: Model table of contents in title bar.
Bug: T320927
Change-Id: Icd871e1bdf4ab0c7aa5b906b913416f4b1747750
2023-01-11 15:42:23 -08:00
bwang 9abdaf54c3 Remove -pinnable-element postfix from PinnableElement.mustache
This allows '.vector-main-menu' to correspond to MainMenu.mustache, and 'vector-page-tools' with PageTools.mustache

Bug: T317900
Change-Id: I65c0d7cffbdf1cf9e59cde0c0fc4dca788e799de
2022-12-15 22:46:51 +00:00
bwang 97de09dcba Refactor page tools, main menu, and TOC components
- getTocData is moved into VectorComponentTableOfContents and it's test file
The following changes were made to the main menu, toc and page tools PHP components
- Avoid passing in $skin to the constructor
- Handle isPinned logic inside the component
- Add a public ID constant to the components
- Dropdown data for each feature use the same naming convention

Bug: T317900
Change-Id: I77a617a6c1d93bccd3b6e59353299f5534624e53
2022-12-15 14:23:25 -08:00
Jon Robson c10ef66e6e Refactor: PageTools composes several different components
* Introduce Dropdownmenu, PinnableElement and PinnedContainer components

Additional changes:
* Drops unused has-multiple-menus
* Update TableOfContents to use PinnedContainer and PinnableElement

Bug: T317900
Change-Id: I0a740f8543831e266f2b1b874b40e44c8241d4cb
2022-12-12 22:17:24 +00:00