{% import 'include/spatial-preview-repository.twig' as spatialPreviewRepository %}

{# CMS Element - Product slider #}
{% set productSliderSlots = page.cmsPage.sections.blocks.slots|filter(slot => slot.type == 'product-slider') %}

{% for productSliderSlots in productSliderSlots %}
    {% set products = productSliderSlots.data.products %}

    {% if products|length > 0 %}
        {% set coverIds = products|map(product => product.cover.mediaId) %}
        {% set previewMedia = spatialPreviewRepository.getPreviewFromMedia(coverIds) %}

        {% for preview in previewMedia %}
            {% set product = products|filter(product => product.cover.mediaId == preview.mediaId)|first %}

            {% if product %}
                {% do product.cover.assign({'media': preview.preview}) %}
            {% endif %}
        {% endfor %}
    {% endif %}
{% endfor %}
