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

{# CMS Element - Cross Selling #}
{% set crossSellingSlots = page.cmsPage.sections.blocks.slots|filter(slot => slot.type == 'cross-selling') %}

{% for crossSellingSlot in crossSellingSlots %}
    {% set crossSellings = crossSellingSlot.data.crossSellings %}

    {% for crossSelling in crossSellings %}
        {% set products = crossSelling.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 %}
{% endfor %}
