{{ 'section-featured-collection.css' | asset_url | stylesheet_tag }}

{% liquid
  if section.settings.show_navigation
    assign display_navigation_desktop = 'flex'
  else
    assign display_navigation_desktop = 'none'
  endif
  if section.settings.show_navigation_mobile
    assign display_navigation_mobile = 'flex'
  else
    assign display_navigation_mobile = 'none'
  endif
  if section.settings.show_pagination
    assign display_pagination_desktop = 'block'
  else
    assign display_pagination_desktop = 'none'
  endif
  if section.settings.show_pagination_mobile
    assign display_pagination_mobile = 'block'
  else
    assign display_pagination_mobile = 'none'
  endif
%}

<div {% render 'section-attr' %}>
  {% render 'section-bg-image' %}
  <xo-container>
    {% if section.settings.distinct_color_scheme == true %}
      {% assign color_scheme_chosen = section.settings.product_card_color_scheme %}
    {% else %}
      {% assign color_scheme_chosen = settings.card_color_scheme %}
    {% endif %}
    {% render 'section-heading', title: section.settings.heading_title, description: section.settings.heading_description, align: section.settings.heading_align %}
    {% render 'space', value: '2rem' %}
    <xo-carousel
      xo-per-view='{{ section.settings.columns_desktop }}'
      xo-breakpoints="
        {
          600: {
            gap: 10,
            perView: '{{ section.settings.columns_mobile }}'
          },
          992: {
            perView: '{{ section.settings.columns_desktop | minus: 1  }}'
          }
        }
      "
      xo-render-bullet='<span></span>'
    >
      <xo-carousel-inner>
        <xo-carousel-list>
          {%- for product in section.settings.collection.products limit: section.settings.limit -%}
            {%- assign placeholder_image_index = forloop.index0 | modulo: 4 | plus: 1 -%}
            {%- assign placeholder_image = 'product-apparel-' | append: placeholder_image_index -%}
            <xo-carousel-slide>
              {% case settings.product_card_style_layout %}
                {% when 'style9' %}
                  {% render 'product-card-style9',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style8' %}
                  {% render 'product-card-style8',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style7' %}
                  {% render 'product-card-style7',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style6' %}
                  {% render 'product-card-style6',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style5' %}
                  {% render 'product-card-style5',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style4' %}
                  {% render 'product-card-style4',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style3' %}
                  {% render 'product-card-style3',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style2' %}
                  {% render 'product-card-style2',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
                {% when 'style1' %}
                  {% render 'product-card-style1',
                    product: product,
                    show_image: settings.product_card_show_image,
                    show_secondary_image: settings.product_card_show_secondary_image,
                    show_vendor: settings.product_card_show_vendor,
                    show_description: settings.product_card_show_description,
                    show_quick_add: settings.product_card_show_quick_add,
                    show_quick_view: settings.product_card_show_quick_view,
                    show_price: settings.product_card_show_price,
                    show_badge: settings.product_card_show_badge,
                    media_aspect_ratio: settings.product_card_aspect_ratio,
                    color_scheme: color_scheme_chosen,
                    placeholder_image: placeholder_image
                  -%}
              {% endcase %}
            </xo-carousel-slide>
          {%- endfor -%}
        </xo-carousel-list>
      </xo-carousel-inner>
      {% render 'carousel-navigation-style1', display_navigation_desktop: display_navigation_desktop, display_navigation_mobile: display_navigation_mobile %}
      <div class='featured-collection__pagination' style='--display-desktop: {{ display_pagination_desktop }}; --display-mobile: {{ display_pagination_mobile }}'>
        {% render 'carousel-pagination-style3' %}
      </div>
    </xo-carousel>
  </xo-container>
</div>

{% schema %}
{
  "name": "t:sections.featured_collection.name",
  "tag": "section",
  "class": "section",
  "settings": [
    {
      "type": "text",
      "id": "heading_title",
      "label": "t:sections.all.title.label",
      "default": "Section title"
    },
    {
      "type": "select",
      "id": "heading_align",
      "label": "t:sections.all.heading_align.label",
      "default": "center",
      "options": [
        {
          "value": "left",
          "label": "t:sections.all.heading_align.option__1.label"
        },
        {
          "value": "center",
          "label": "t:sections.all.heading_align.option__2.label"
        },
        {
          "value": "right",
          "label": "t:sections.all.heading_align.option__3.label"
        }
      ]
    },
    {
      "type": "collection",
      "id": "collection",
      "label": "t:sections.featured_collection.settings.collection.label"
    },
    {
      "type": "range",
      "id": "limit",
      "min": 2,
      "max": 20,
      "step": 1,
      "default": 12,
      "label": "t:sections.featured_collection.settings.limit.label"
    },
    {
      "type": "range",
      "id": "columns_desktop",
      "min": 3,
      "max": 5,
      "step": 1,
      "default": 3,
      "label": "t:sections.featured_collection.settings.columns_desktop.label"
    },
    {
      "type": "select",
      "id": "columns_mobile",
      "default": "2",
      "label": "t:sections.featured_collection.settings.columns_mobile.label",
      "options": [
        {
          "value": "1",
          "label": "t:sections.featured_collection.settings.columns_mobile.options__1.label"
        },
        {
          "value": "2",
          "label": "t:sections.featured_collection.settings.columns_mobile.options__2.label"
        }
      ]
    },
    {
      "type": "header",
      "content": "t:sections.featured_collection.settings.navigation_heading.content"
    },
    {
      "type": "checkbox",
      "id": "show_navigation",
      "default": true,
      "label": "t:sections.featured_collection.settings.show_navigation.label"
    },
    {
      "type": "checkbox",
      "id": "show_navigation_mobile",
      "default": false,
      "label": "t:sections.featured_collection.settings.show_navigation_mobile.label"
    },
    {
      "type": "header",
      "content": "t:sections.featured_collection.settings.pagination_heading.content"
    },
    {
      "type": "checkbox",
      "id": "show_pagination",
      "default": true,
      "label": "t:sections.featured_collection.settings.show_pagination.label"
    },
    {
      "type": "checkbox",
      "id": "show_pagination_mobile",
      "default": false,
      "label": "t:sections.featured_collection.settings.show_pagination_mobile.label"
    },
    {
      "type": "header",
      "content": "t:sections.featured_collection.settings.color_scheme_heading.content"
    },
    {
      "type": "checkbox",
      "id": "distinct_color_scheme",
      "label": "t:sections.featured_collection.settings.distinct_color_scheme.label",
      "default": false
    },
    {
      "type": "color_scheme",
      "id": "product_card_color_scheme",
      "default": "scheme_1",
      "label": "t:sections.featured_collection.settings.color_scheme.label"
    },
    {
      "type": "header",
      "content": "t:sections.all.heading.content"
    },
    {
      "type": "color_scheme",
      "id": "color_scheme",
      "label": "t:sections.all.color_scheme.label"
    },
    {
      "type": "color",
      "id": "background_color",
      "label": "t:sections.all.bg_color.label"
    },
    {
      "type": "color_background",
      "id": "background_gradient",
      "label": "t:sections.all.bg_gradient.label"
    },
    {
      "type": "image_picker",
      "id": "background_image_desktop",
      "label": "t:sections.all.background_image_desktop.label"
    },
    {
      "type": "image_picker",
      "id": "background_image_mobile",
      "label": "t:sections.all.background_image_mobile.label"
    },
    {
      "type": "checkbox",
      "id": "use_parallax",
      "label": "t:sections.all.use_parallax.label",
      "default": true
    },
    {
      "type": "number",
      "id": "padding_top",
      "label": "t:sections.all.padding_top.label",
      "default": 50
    },
    {
      "type": "number",
      "id": "padding_bottom",
      "label": "t:sections.all.padding_bottom.label",
      "default": 50
    }
  ]
}
{% endschema %}
