web/wp-content/themes/mozilla-builders/blocks/image-layout/image-layout.twig (71 lines of code) (raw):

{% set imageCountToUse = 6 %} {% if layout == "asymmetrical" %} {% set imageCountToUse = 3 %} {% elseif layout == "row" %} {% set imageCountToUse = 4 %} {% endif%} {% set assets = images|slice(0, imageCountToUse) %} {% if layout == "row" %} <figure data-block="image-layout" class="{{ alignclass }}"> <div class="flex justify-between gap-px md:gap-3"> {% for asset in assets %} <figure class="flex-1"> {% include 'components/articles/blocks/asset.twig' with { mod_class: crop_to_same_ratio ? 'aspect-square', class: crop_to_same_ratio ? 'w-full h-full object-cover', asset: asset, aspectRatio: crop_to_same_ratio == false } %} </figure> {% endfor %} </div> {% include 'components/articles/blocks/caption.twig' with { 'caption': caption } %} </figure> {% elseif layout == "asymmetrical" %} <figure data-block="image-layout" class="{{ alignclass }}"> <div class="flex gap-px md:gap-3"> <div class="flex-[2] relative"> {% for asset in assets|slice(0,1) %} {% include 'components/articles/blocks/asset.twig' with { mod_class: crop_to_same_ratio ? 'absolute inset-0', class: crop_to_same_ratio ? 'w-full h-full object-cover', asset: asset, aspectRatio: crop_to_same_ratio == false } %} {% endfor %} </div> <div class="flex-1 flex flex-col gap-px md:gap-3"> {% for asset in assets|slice(1,2) %} <div class="{{ crop_to_same_ratio ? 'flex-1' }}"> {% include "components/articles/blocks/asset.twig" with { mod_class: crop_to_same_ratio ? 'aspect-square', class: crop_to_same_ratio ? 'w-full h-full object-cover', asset: asset, aspectRatio: crop_to_same_ratio == false } %} </div> {% endfor %} </div> </div> {% include 'components/articles/blocks/caption.twig' with { 'caption': caption } %} </figure> {% elseif layout == "symmetrical" %} {% set asset_class = assets|length > 4 ? 'md:grid-cols-3' %} <figure data-block="image-layout" class="{{ alignclass }}"> <ul class="grid grid-cols-2 {{ asset_class }} gap-px md:gap-3"> {% for asset in assets %} <li class="blocks-gallery-item flex-1"> <figure> {% include 'components/articles/blocks/asset.twig' with { mod_class: crop_to_same_ratio ? 'aspect-square', class: crop_to_same_ratio ? 'w-full h-full object-cover', asset: asset, aspectRatio: crop_to_same_ratio == false } %} </figure> </li> {% endfor %} </ul> {% include 'components/articles/blocks/caption.twig' with { 'caption': caption } %} </figure> {% endif %}