{{ 'section-header-v3.css' | asset_url | stylesheet_tag }}

{% liquid
  assign background_color = '--bg-color: ' | append: section.settings.background_color | append: ';'
  assign background_gradient = '--bg-gradient: ' | append: section.settings.background_gradient | append: ';'
%}

<header
  class='header-v24 {% if section.settings.transparent and template contains 'index' or template contains 'home' %} header-v24--transparent {% endif %}'
>
  <xo-sticky
    xo-direction='{{ section.settings.sticky_type }}'
    {% if section.settings.sticky_type == 'none' %}
      xo-disabled
    {% endif %}
    style='z-index: 10000; height: unset'
  >
    <xo-animate
      xo-type='fade-up'
      class='header-v24__sticky {% if section.settings.color_scheme %} color-{{ section.settings.color_scheme }}{% endif %}'
      style='{{ background_color -}} {{- background_gradient -}}'
    >
      <xo-container {% render 'section-layout' %}>
        <xo-grid>
          <div
            class='
              header-v24__logo {% if section.settings.menu_type == 'hamburger' %}
                header-v24__logo--center
              {% endif %}
            '
            style='
              --xs: 4; {% if section.settings.menu_type != 'hamburger' %}
                --xl: 2;
              {% endif %}
            '
          >
            <a href='/' class='header-v24__logo-desktop'>
              {%- if section.settings.logo_desktop != blank -%}
                {%- assign logo_alt = section.settings.logo_desktop.alt | default: shop.name | escape -%}
                {%- assign width = section.settings.logo_desktop_width %}
                {%- assign height = section.settings.logo_desktop_width | divided_by: section.settings.logo_desktop.aspect_ratio %}
                <img
                  src='{{ section.settings.logo_desktop | image_url }}'
                  alt='{{ logo_alt }}'
                  style='width: {{ width }}px; height: {{ height }}px'
                  loading='lazy'
                  height='auto'
                  width='auto'
                >
              {%- else -%}
                <span class='h4 header-v24__logo-placeholder'>{{ shop.name }}</span>
              {%- endif -%}
            </a>
            <a href='/' class='header-v24__logo-mobile'>
              {%- if section.settings.logo_mobile != blank -%}
                {%- assign logo_alt = section.settings.logo_mobile.alt | default: shop.name | escape -%}
                {%- assign width = section.settings.logo_mobile_width %}
                {%- assign height = section.settings.logo_mobile_width | divided_by: section.settings.logo_mobile.aspect_ratio %}
                <img
                  src='{{ section.settings.logo_mobile | image_url }}'
                  alt='{{ logo_alt }}'
                  style='width: {{ width }}px; height: {{ height }}px'
                  loading='lazy'
                  height='auto'
                  width='auto'
                >
              {%- else -%}
                <span class='h4 header-v24__logo-placeholder'>{{ shop.name }}</span>
              {%- endif -%}
            </a>
          </div>
          <nav
            class='header-v24__navigation'
            style='
              --xs: 4; --order-xs: -1; {% if section.settings.menu_type != 'hamburger' %}
                --xl: 6; --order-xl: 0
              {% endif %}
            '
          >
            {% if section.settings.menu_type == 'hamburger' %}
              {% render 'menu-hamburger',
                menu: section.settings.menu,
                event_type: section.settings.event_type,
                hamburger_type: section.settings.hamburger_type,
                top: '5rem',
                submenu_color_scheme: section.settings.submenu_color_scheme,
                hamburger_drawer_color_scheme: section.settings.hamburger_drawer_color_scheme
              %}
            {% else %}
              <div class='header-v24__navigation-desktop'>
                {% render 'menu-horizontal',
                  menu: section.settings.menu,
                  event_type: section.settings.event_type,
                  navigation_show_arrow: false,
                  navigation_padding_item: '3rem',
                  submenu_color_scheme: section.settings.submenu_color_scheme
                %}
              </div>
              <div class='header-v24__navigation-mobile'>
                {% render 'menu-hamburger',
                  menu: section.settings.menu,
                  event_type: section.settings.event_type,
                  hamburger_type: section.settings.hamburger_type,
                  top: '5rem',
                  submenu_color_scheme: section.settings.submenu_color_scheme,
                  hamburger_drawer_color_scheme: section.settings.hamburger_drawer_color_scheme
                %}
              </div>
            {% endif %}
          </nav>
          <div class='header-v24__utilities-wrap' style='--xs: 4'>
            <div class='header-v24__selector'>
              {% if section.settings.language_selector %}
                <div class='header-v24__language'>
                  {% render 'language-select' %}
                </div>
              {% endif %}
              {% if section.settings.currency_selector %}
                <div class='header-v24__currency'>
                  {% render 'currency-select' %}
                </div>
              {% endif %}
            </div>
            <div class='header-v24__utilities'>
              <xo-tooltip
                xo-title='{%- if customer -%}{{ 'customer.account.title' | t }}{%- else -%}{{ 'customer.login_page.title' | t }}{%- endif -%}'
                xo-placement='bottom-center'
                class='header-v24__account-text'
              >
                <a
                  href='{%- if customer -%}{{ routes.account_url }}{%- else -%}{{ routes.account_login_url }}{%- endif -%}'
                >
                  {%- if customer -%}{{ 'customer.account.title' | t }}{%- else -%}{{ 'customer.login_page.title' | t }}{%- endif -%}
                </a>
              </xo-tooltip>
              <xo-tooltip xo-title='{{ 'general.search.search' | t }}' xo-placement='bottom-center' class='header-v24__icon-wrap'>
                <xo-modal-trigger xo-name='search' class='header-v24__icon header-v24__icon--search'>
                  {% render 'icon', name: 'search', icon_size: '24', color: 'rgba(var(--color-foreground))' %}
                </xo-modal-trigger>
              </xo-tooltip>
              <xo-tooltip xo-title='{{ 'general.wishlist.wishlist' | t }}' xo-placement='bottom-center' class='header-v24__icon-wrap header-v24__icon-wrap--desktop'>
                <a href='/pages/wishlist' aria-label='Wishlist' title='Wishlist' class='header-v24__icon'>
                  {% render 'icon', name: 'heart', icon_size: '24', color: 'rgb(var(--color-foreground))' %}
                  <xo-products-fetcher-size xo-type='wishlist' class='header-v24__wishlist-count'></xo-products-fetcher-size>
                </a>
              </xo-tooltip>
              <xo-tooltip xo-title='{{ 'general.cart.cart' | t }}' xo-placement='bottom-center' class='header-v24__icon-wrap'>
                {% if settings.cart_type == 'page' %}
                  <a href='{{ routes.cart_url }}' class='header-v24__icon'>
                    {% render 'icon', name: 'cart', icon_size: '24', color: 'rgba(var(--color-foreground))' %}
                    <span class='header-v24__cart-count'>
                      <xo-cart-size>{{ cart.item_count }}</xo-cart-size>
                    </span>
                  </a>
                {% else %}
                  <xo-modal-trigger xo-name='cart' class='header-v24__icon'>
                    {% render 'icon', name: 'cart', icon_size: '24', color: 'rgba(var(--color-foreground))' %}
                    <span class='header-v24__cart-count'>
                      <xo-cart-size>{{ cart.item_count }}</xo-cart-size>
                    </span>
                  </xo-modal-trigger>
                {% endif %}
              </xo-tooltip>
            </div>
          </div>
        </xo-grid>
      </xo-container>
    </xo-animate>
  </xo-sticky>
</header>

{% render 'header-ld-json' %}

{% schema %}
{
  "name": "t:sections.header_v3.name",
  "class": "section-header",
  "settings": [
    {
      "type": "select",
      "id": "width",
      "label": "t:sections.all.width.label",
      "default": "box",
      "options": [
        {
          "value": "box",
          "label": "t:sections.all.width.options__1.label"
        },
        {
          "value": "wide",
          "label": "t:sections.all.width.options__2.label"
        },
        {
          "value": "fullwidth",
          "label": "t:sections.all.width.options__3.label"
        }
      ]
    },
    {
      "type": "number",
      "id": "fullwidth_margin",
      "label": "t:sections.all.fullwidth_margin.label",
      "info": "t:sections.all.fullwidth_margin.info",
      "default": 0,
      "visible_if": "{{ section.settings.width == 'fullwidth' }}"
    },
    {
      "type": "select",
      "id": "sticky_type",
      "options": [
        {
          "value": "down",
          "label": "t:sections.header_v3.settings.sticky_type.options_1.label"
        },
        {
          "value": "up",
          "label": "t:sections.header_v3.settings.sticky_type.options_2.label"
        },
        {
          "value": "none",
          "label": "t:sections.header_v3.settings.sticky_type.options_3.label"
        }
      ],
      "default": "down",
      "label": "t:sections.header_v3.settings.sticky_type.label"
    },
    {
      "type": "checkbox",
      "id": "transparent",
      "default": false,
      "label": "t:sections.header_v3.settings.transparent.label",
      "info": "t:sections.header_v3.settings.transparent.info"
    },
    {
      "type": "checkbox",
      "id": "currency_selector",
      "default": true,
      "label": "t:sections.header_v3.settings.currency_selector.label"
    },
    {
      "type": "checkbox",
      "id": "language_selector",
      "default": true,
      "label": "t:sections.header_v3.settings.language_selector.label"
    },
    {
      "type": "header",
      "content": "t:sections.header_v3.settings.logo_header.content"
    },
    {
      "type": "image_picker",
      "id": "logo_desktop",
      "label": "t:sections.header_v3.settings.logo_desktop.label",
      "info": "t:sections.header_v3.settings.logo_desktop.info"
    },
    {
      "type": "range",
      "id": "logo_desktop_width",
      "min": 50,
      "max": 250,
      "step": 10,
      "default": 150,
      "unit": "px",
      "label": "t:sections.header_v3.settings.logo_desktop_width.label"
    },
    {
      "type": "image_picker",
      "id": "logo_mobile",
      "label": "t:sections.header_v3.settings.logo_mobile.label",
      "info": "t:sections.header_v3.settings.logo_mobile.info"
    },
    {
      "type": "range",
      "id": "logo_mobile_width",
      "min": 50,
      "max": 250,
      "step": 10,
      "default": 100,
      "unit": "px",
      "label": "t:sections.header_v3.settings.logo_mobile_width.label"
    },
    {
      "type": "header",
      "content": "t:sections.header_v3.settings.menu_header.content"
    },
    {
      "type": "link_list",
      "id": "menu",
      "default": "main-menu",
      "label": "t:sections.header_v3.settings.menu.label"
    },
    {
      "type": "select",
      "id": "menu_type",
      "options": [
        {
          "value": "default",
          "label": "t:sections.header_v3.settings.menu_type.options__1.label"
        },
        {
          "value": "hamburger",
          "label": "t:sections.header_v3.settings.menu_type.options__2.label"
        }
      ],
      "default": "default",
      "label": "t:sections.header_v3.settings.menu_type.label"
    },
    {
      "type": "select",
      "id": "event_type",
      "options": [
        {
          "value": "hover",
          "label": "t:sections.header_v3.settings.event_type.options_1.label"
        },
        {
          "value": "click",
          "label": "t:sections.header_v3.settings.event_type.options_2.label"
        }
      ],
      "default": "hover",
      "label": "t:sections.header_v3.settings.event_type.label"
    },
    {
      "type": "select",
      "id": "hamburger_type",
      "options": [
        {
          "value": "drawer",
          "label": "t:sections.header_v3.settings.hamburger_type.options__1.label"
        },
        {
          "value": "horizontal",
          "label": "t:sections.header_v3.settings.hamburger_type.options__2.label"
        },
        {
          "value": "vertical",
          "label": "t:sections.header_v3.settings.hamburger_type.options__3.label"
        }
      ],
      "default": "drawer",
      "label": "t:sections.header_v3.settings.hamburger_type.label"
    },
    {
      "type": "header",
      "content": "t:sections.header_v3.settings.hamburger_drawer_header.content"
    },
    {
      "type": "color_scheme",
      "id": "hamburger_drawer_color_scheme",
      "label": "t:sections.header_v3.settings.hamburger_drawer_color_scheme.label"
    },
    {
      "type": "color",
      "id": "hamburger_drawer_background_color",
      "label": "t:sections.header_v3.settings.hamburger_drawer_background_color.label",
      "default": "#ffffff"
    },
    {
      "type": "color_background",
      "id": "hamburger_drawer_background_gradient",
      "label": "t:sections.header_v3.settings.hamburger_drawer_background_gradient.label"
    },
    {
      "type": "header",
      "content": "t:sections.header_v3.settings.submenu_header.content"
    },
    {
      "type": "color_scheme",
      "id": "submenu_color_scheme",
      "label": "t:sections.header_v3.settings.submenu_color_scheme.label"
    },
    {
      "type": "color",
      "id": "submenu_background_color",
      "label": "t:sections.header_v3.settings.submenu_background_color.label",
      "default": "#ffffff"
    },
    {
      "type": "color_background",
      "id": "submenu_background_gradient",
      "label": "t:sections.header_v3.settings.submenu_background_gradient.label"
    },
    {
      "type": "header",
      "content": "t:sections.header_v3.settings.general_header.content"
    },
    {
      "type": "color_scheme",
      "id": "color_scheme",
      "label": "t:sections.header_v3.settings.color_scheme.label"
    },
    {
      "type": "color",
      "id": "background_color",
      "label": "t:sections.header_v3.settings.background_color.label",
      "default": "#ffffff"
    },
    {
      "type": "color_background",
      "id": "background_gradient",
      "label": "t:sections.header_v3.settings.background_gradient.label"
    }
  ]
}
{% endschema %}
