bootstrap_italia-8.x-0.x-dev/components/field/field-image--format-image--component-gallery.html.twig
components/field/field-image--format-image--component-gallery.html.twig
{# /** * @file * Default theme implementation for a field. * * To override output, copy the "field.html.twig" from the templates directory * to your theme's directory and customize it, just like customizing other * Drupal templates such as page.html.twig or node.html.twig. * * Instead of overriding the theming for all fields, you can also just override * theming for a subset of fields using * @link themeable Theme hook suggestions. @endlink For example, * here are some theme hook suggestions that can be used for a field_foo field * on an article node type: * - field--node--field-foo--article.html.twig * - field--node--field-foo.html.twig * - field--node--article.html.twig * - field--field-foo.html.twig * - field--text-with-summary.html.twig * - field.html.twig * * Available variables: * - attributes: HTML attributes for the containing element. * - label_hidden: Whether to show the field label or not. * - title_attributes: HTML attributes for the title. * - label: The label for the field. * - multiple: TRUE if a field can contain multiple items. * - items: List of all the field items. Each item contains: * - attributes: List of HTML attributes for each item. * - content: The field item's content. * - entity_type: The entity type to which the field belongs. * - field_name: The name of the field. * - field_type: The type of the field. * - label_display: The display settings for the label. * - field_container_vertical_padding: Automatic vertical padding. * - field_container_vertical_margin: Automatic vertical margin. * - field_label_tag: choose label tag, default('div'). * - field_view_mode: View mode. * * - show_image_caption (boolean) (default: true) * - grid_type (string) (default: '') * - options ["quilted", "masonry"] * - icon_name (string) (default: '') * - overlay (boolean) (default: false) * * @see template_preprocess_field() * * @ingroup themeable * * Examples: {% include '@bi-field/field-image--format-image--component-gallery.html.twig' with { show_image_caption: true, grid_type: '', icon_name: '', overlay: false, } %} */ #} {% apply spaceless %} {% set _show_image_caption = show_image_caption ?? true %} {% set _grid_type = grid_type|default('') %} {% set _icon_name = icon_name|default('') %} {% set _overlay = overlay ?? false %} {% set container_classes = [ 'field', 'field--type-' ~ field_type|clean_class, 'field--name-' ~ field_name|clean_class, 'field--entity-' ~ entity_type|clean_class, multiple ? 'field-multiple', 'field--label-' ~ label_display|clean_class, field_view_mode ? 'field--view-mode-' ~ field_view_mode|clean_class, field_container_vertical_padding is not empty and field_view_mode == 'full' ? field_container_vertical_padding, field_container_vertical_margin is not empty and field_view_mode == 'full' ? field_container_vertical_margin, ] %} {% set container_with_label_classes = [ label_display == 'inline' ? 'd-flex' ]|merge(container_classes) %} {% if label_hidden %} {% embed '@bi-bcl/gallery/gallery.html.twig' with { show_image_caption: _show_image_caption, grid_type: _grid_type, gallery_attributes: attributes.addClass(container_classes), } %} {% block galleryItems %} {% for item in items %} <div class="{{ _grid_type == 'masonry' ? 'col-sm-6 col-lg-4 mb-4' : 'col-6 col-lg-4' }}"> {% embed '@bi-bcl/gallery/gallery-item.html.twig' with { image_description: item.content['#item'].alt, show_image_caption: _show_image_caption, icon_name: _icon_name, overlay: _overlay, gallery_item_attributes: item.attributes, } %} {% block galleryItemImage %} {{ item.content }} {% endblock %} {% endembed %} </div> {% endfor %} {% endblock %} {% endembed %} {% else %} <div{{ attributes.addClass(container_with_label_classes) }}> {% block label %} {% include '@bi-field/_partial.field-label.html.twig' %} {% endblock %} {% embed '@bi-bcl/gallery/gallery.html.twig' with { show_image_caption: _show_image_caption, grid_type: _grid_type, } %} {% block galleryItems %} {% for item in items %} <div class="{{ _grid_type == 'masonry' ? 'col-sm-6 col-lg-4 mb-4' : 'col-6 col-lg-4' }}"> {% embed '@bi-bcl/gallery/gallery-item.html.twig' with { image_description: item.content['#item'].alt, show_image_caption: _show_image_caption, icon_name: _icon_name, overlay: _overlay, gallery_item_attributes: item.attributes, } %} {% block galleryItemImage %} {{ item.content }} {% endblock %} {% endembed %} </div> {% endfor %} {% endblock %} {% endembed %} </div>{# End main container. #} {% endif %} {% endapply %}