mediawiki-skins-MinervaNeue/components/ToggleList/ToggleList.mustache

33 lines
1.1 KiB
Plaintext
Raw Normal View History

{{!
A list with visibility toggled by a checkbox.
string|null class Optional CSS class for the root element.
string checkboxID CSS identifier unique to the page needed to connect label and input.
string|null toggleID Optional toggle button CSS identifier to connect label and toggle aria.
string|null toggleClass Optional toggle button CSS class.
string|null analyticsEventName Optional analytics event, sent element is clicked
string|null listClass Optional list CSS class.
string|null text Optional text and aria label for the toggle button.
array|null items Optional array of drop down list items for the unordered list.
}}
<div class="toggle-list {{class}}">
<input
type="checkbox"
id="{{checkboxID}}"
class="toggle-list__checkbox"
role="button"
aria-labelledby="{{toggleID}}"
aria-expanded="false">
<label
id="{{toggleID}}"
class="toggle-list__toggle {{toggleClass}}"
for="{{checkboxID}}"
data-event-name="{{analyticsEventName}}">
{{text}}
</label>
<ul class="toggle-list__list {{listClass}}">
{{#items}}
{{> ToggleList/ToggleListItem}}
{{/items}}
</ul>
</div>