Implicitly marking parameter $... as nullable is deprecated in PHP
8.4. The explicit nullable type must be used instead.
Bug: T376276
Change-Id: I40bb7a0a02aaa467cbf0ae182adf5601ccbcb58e
After the first submit the URL contains &namespaces= with empty value.
This must be handled like a missing URL parameter.
Restore the default value '' removed in aec8d755.
Bug: T334289
Change-Id: I22d0eb334365472d411252f805d0d78a3cc265ab
The old code relies on CSS Janus to transform the default case outside
mw-content-{ltr,rtl} which can't be applied here so let's consider
this case also by relying only on dir attributes, the same direction
as T371265.
In future we can use &:dir( ltr ) and &:dir( rtl ) as we do in new
codes but as that isn't supported on all browsers we support.
Change-Id: Icf6b8e184ce981e6e8f16dafa9e14a19154ff0e3
Modules loaded with packageFiles are always executed in module scope
(with a closure), even in debug mode.
The behaviour of non-packageFiles debug mode is the only reason files
have closures.
https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript#Closure
Change-Id: I7ea2057029a63148a96333af7ff09a7885d2daa8
I believe having arrows linked to the actual pages can
be much more useful than linking to '#' of the same
page. Linking to the correct page makes user to notice
if the page is already visited also using color of
the arrow.
If we didn't like link visited logic to be not used we
could've used a different link rather than color of links
and going makes us able to :visited logic of
If8b2b45b24351ee5c8fc9ee1380563f5d5b88678 also.
Personally however I'm in believe that having a useful
link that can be opened on a different tab using
Ctrl (or long click on phones) is always more useful.
Change-Id: Ib56fad0b711853d67b2d55617b36deff56141c74
It also adds an animation for the arrow matching other
recently Codex provided arrow icons adopted animations.
Change-Id: If8b2b45b24351ee5c8fc9ee1380563f5d5b88678
CategoryTree::makeTitle also makes a trim and an early return.
A trim on the return value of renderChildren() is not needed.
Change-Id: I1fc2705277491797eb6c0d0900152b63913ca875
This change avoids a super category expand button on not existing
categories.
This change even avoids loading the modules if there are no valid
categories.
Change-Id: I38a2b49aaef7cf46d9f89e1cc9fd65e2382155f5