mediawiki-skins-Vector/includes/templates/Menu.mustache
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

28 lines
727 B
Plaintext

{{!
See @typedef MenuDefinition
}}
<nav id="{{id}}" class="{{class}}" aria-labelledby="{{label-id}}" {{{html-tooltip}}}>
{{#is-dropdown}}
<input type="checkbox" class="vectorMenuCheckbox" aria-labelledby="{{label-id}}" />
<h3 id="{{label-id}}" {{{html-userlangattributes}}}>
<span>{{label}}</span>
</h3>
{{/is-dropdown}}
{{^is-dropdown}}
<h3 id="{{label-id}}">{{label}}</h3>
{{/is-dropdown}}
{{#is-portal}}
<div class="body">
<ul>{{{html-items}}}</ul>
{{{html-after-portal}}}
</div>
{{/is-portal}}
{{^is-portal}}
<ul class="menu" {{{html-userlangattributes}}}>
{{{html-items}}}
</ul>
{{/is-portal}}
</nav>
{{! Note: html-hook-vector-after-toolbox is deprecated. }}
{{{html-hook-vector-after-toolbox}}}