1{# 2/** 3 * @file 4 * Theme override for main view template. 5 * 6 * Available variables: 7 * - attributes: Remaining HTML attributes for the element. 8 * - css_name: A CSS-safe version of the view name. 9 * - css_class: The user-specified classes names, if any. 10 * - header: The optional header. 11 * - footer: The optional footer. 12 * - rows: The results of the view query, if any. 13 * - empty: The content to display if there are no rows. 14 * - pager: The optional pager next/prev links to display. 15 * - exposed: Exposed widget form/info to display. 16 * - feed_icons: Optional feed icons to display. 17 * - more: An optional link to the next page of results. 18 * - title: Title of the view, only used when displaying in the admin preview. 19 * - title_prefix: Additional output populated by modules, intended to be 20 * displayed in front of the view title. 21 * - title_suffix: Additional output populated by modules, intended to be 22 * displayed after the view title. 23 * - attachment_before: An optional attachment view to be displayed before the 24 * view content. 25 * - attachment_after: An optional attachment view to be displayed after the 26 * view content. 27 * - dom_id: Unique id for every view being printed to give unique class for 28 * JavaScript. 29 * 30 * @see template_preprocess_views_view() 31 */ 32#} 33{% 34 set classes = [ 35 dom_id ? 'js-view-dom-id-' ~ dom_id, 36 ] 37%} 38<div{{ attributes.addClass(classes) }}> 39 {{ title_prefix }} 40 {{ title }} 41 {{ title_suffix }} 42 43 {% if header %} 44 <header> 45 {{ header }} 46 </header> 47 {% endif %} 48 49 {{ exposed }} 50 {{ attachment_before }} 51 52 {% if rows -%} 53 {{ rows }} 54 {% elseif empty -%} 55 {{ empty }} 56 {% endif %} 57 {{ pager }} 58 59 {{ attachment_after }} 60 {{ more }} 61 62 {% if footer %} 63 <footer> 64 {{ footer }} 65 </footer> 66 {% endif %} 67 68 {{ feed_icons }} 69</div> 70