Version 1
[yaffs-website] / web / core / themes / classy / templates / dataset / item-list.html.twig
1 {#
2 /**
3  * @file
4  * Theme override for an item list.
5  *
6  * Available variables:
7  * - items: A list of items. Each item contains:
8  *   - attributes: HTML attributes to be applied to each list item.
9  *   - value: The content of the list element.
10  * - title: The title of the list.
11  * - list_type: The tag for list element ("ul" or "ol").
12  * - wrapper_attributes: HTML attributes to be applied to the list wrapper.
13  * - attributes: HTML attributes to be applied to the list.
14  * - empty: A message to display when there are no items. Allowed value is a
15  *   string or render array.
16  * - context: A list of contextual data associated with the list. May contain:
17  *   - list_style: The custom list style.
18  *
19  * @see template_preprocess_item_list()
20  */
21 #}
22 {% if context.list_style %}
23   {%- set wrapper_attributes = wrapper_attributes.addClass('item-list--' ~ context.list_style) %}
24   {%- set attributes = attributes.addClass('item-list__' ~ context.list_style) %}
25 {% endif %}
26 {% if items or empty -%}
27   <div{{ wrapper_attributes.addClass('item-list') }}>
28     {%- if title is not empty -%}
29       <h3>{{ title }}</h3>
30     {%- endif -%}
31     {%- if items -%}
32       <{{ list_type }}{{ attributes }}>
33         {%- for item in items -%}
34           <li{{ item.attributes }}>{{ item.value }}</li>
35         {%- endfor -%}
36       </{{ list_type }}>
37     {%- else -%}
38       {{- empty -}}
39     {%- endif -%}
40   </div>
41 {%- endif %}