{{ ‘component-list-menu.css’ | asset_url | stylesheet_tag }}
{{ ‘component-search.css’ | asset_url | stylesheet_tag }}
{{ ‘component-menu-drawer.css’ | asset_url | stylesheet_tag }}
{{ ‘component-cart-notification.css’ | asset_url | stylesheet_tag }}
{{ ‘component-cart-items.css’ | asset_url | stylesheet_tag }}
{%- style -%}
.section-header {
margin-bottom: {{ section.settings.margin_bottom | times: 0.75 | round: 0 }}px;
}
@media screen and (min-width: 750px) {
.section-header {
margin-bottom: {{ section.settings.margin_bottom }}px;
}
}
{%- endstyle -%}
{% render 'icon-hamburger' %} {% render 'icon-close' %}
-
{%- for link in section.settings.menu.links -%}
-
{%- if link.links != blank -%}
{%- else -%} {{ link.title | escape }} {%- endif -%}
{{ link.title | escape }} {% render 'icon-arrow' %} {% render 'icon-caret' %}
{% render 'icon-arrow' %} {{ link.title | escape }}-
{%- for childlink in link.links -%}
-
{%- if childlink.links == blank -%}
{{ childlink.title | escape }}
{%- else -%}
{%- endif -%}
{{ childlink.title | escape }} {% render 'icon-arrow' %} {% render 'icon-caret' %}
{% render 'icon-arrow' %} {{ childlink.title | escape }}-
{%- for grandchildlink in childlink.links -%}
- {{ grandchildlink.title | escape }} {%- endfor -%}
{%- endfor -%}
{%- endfor -%}
-
{%- if childlink.links == blank -%}
{{ childlink.title | escape }}
{%- else -%}
-
{%- if settings.social_twitter_link != blank -%}
- {%- render 'icon-twitter' -%} {{ 'general.social.links.twitter' | t }} {%- endif -%} {%- if settings.social_facebook_link != blank -%}
- {%- render 'icon-facebook' -%} {{ 'general.social.links.facebook' | t }} {%- endif -%} {%- if settings.social_pinterest_link != blank -%}
- {%- render 'icon-pinterest' -%} {{ 'general.social.links.pinterest' | t }} {%- endif -%} {%- if settings.social_instagram_link != blank -%}
- {%- render 'icon-instagram' -%} {{ 'general.social.links.instagram' | t }} {%- endif -%} {%- if settings.social_tiktok_link != blank -%}
- {%- render 'icon-tiktok' -%} {{ 'general.social.links.tiktok' | t }} {%- endif -%} {%- if settings.social_tumblr_link != blank -%}
- {%- render 'icon-tumblr' -%} {{ 'general.social.links.tumblr' | t }} {%- endif -%} {%- if settings.social_snapchat_link != blank -%}
- {%- render 'icon-snapchat' -%} {{ 'general.social.links.snapchat' | t }} {%- endif -%} {%- if settings.social_youtube_link != blank -%}
- {%- render 'icon-youtube' -%} {{ 'general.social.links.youtube' | t }} {%- endif -%} {%- if settings.social_vimeo_link != blank -%}
- {%- render 'icon-vimeo' -%} {{ 'general.social.links.vimeo' | t }} {%- endif -%}
{%- if section.settings.logo_position == ‘top-center’ or section.settings.menu == blank -%}
{%- if settings.predictive_search_enabled -%}
{%- endif -%}
{%- if request.page_type == ‘index’ -%}
{%- endif -%}
{%- if section.settings.logo != blank -%}
{%- assign image_size = section.settings.logo_width | append: 'x' -%}
{%- else -%}
{{ shop.name }}
{%- endif -%}
{%- if request.page_type == 'index' -%}
{%- endif -%}
{%- if section.settings.menu != blank -%}
-
{%- for link in section.settings.menu.links -%}
-
{%- if link.links != blank -%}
{%- else -%} {{ link.title | escape }} {%- endif -%}
{{ link.title | escape }} {% render 'icon-caret' %}
-
{%- for childlink in link.links -%}
-
{%- if childlink.links == blank -%}
{{ childlink.title | escape }}
{%- else -%}
{%- endif -%}
{{ childlink.title | escape }} {% render 'icon-caret' %}
-
{%- for grandchildlink in childlink.links -%}
- {{ grandchildlink.title | escape }} {%- endfor -%}
{%- endfor -%}
{%- endfor -%}
-
{%- if childlink.links == blank -%}
{{ childlink.title | escape }}
{%- else -%}
{%- if settings.predictive_search_enabled -%}
{%- endif -%}
{%- if shop.customer_accounts_enabled -%}
{% render ‘icon-account’ %}
{%- liquid
if customer
echo ‘customer.account_fallback’ | t
else
echo ‘customer.log_in’ | t
endif
-%}
{%- endif -%}
{%- render ‘cart-notification’, color_scheme: section.settings.color_scheme -%}
{% javascript %}
class StickyHeader extends HTMLElement {
constructor() {
super();
}
connectedCallback() {
this.header = document.getElementById(‘shopify-section-header’);
this.headerBounds = {};
this.currentScrollTop = 0;
this.preventReveal = false;
this.predictiveSearch = this.querySelector(‘predictive-search’);
this.onScrollHandler = this.onScroll.bind(this);
this.hideHeaderOnScrollUp = () => this.preventReveal = true;
this.addEventListener(‘preventHeaderReveal’, this.hideHeaderOnScrollUp);
window.addEventListener(‘scroll’, this.onScrollHandler, false);
this.createObserver();
}
disconnectedCallback() {
this.removeEventListener(‘preventHeaderReveal’, this.hideHeaderOnScrollUp);
window.removeEventListener(‘scroll’, this.onScrollHandler);
}
createObserver() {
let observer = new IntersectionObserver((entries, observer) => {
this.headerBounds = entries[0].intersectionRect;
observer.disconnect();
});
observer.observe(this.header);
}
onScroll() {
const scrollTop = window.pageYOffset || document.documentElement.scrollTop;
if (this.predictiveSearch && this.predictiveSearch.isOpen) return;
if (scrollTop > this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
requestAnimationFrame(this.hide.bind(this));
} else if (scrollTop < this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
if (!this.preventReveal) {
requestAnimationFrame(this.reveal.bind(this));
} else {
window.clearTimeout(this.isScrolling);
this.isScrolling = setTimeout(() => {
this.preventReveal = false;
}, 66);
requestAnimationFrame(this.hide.bind(this));
}
} else if (scrollTop <= this.headerBounds.top) {
requestAnimationFrame(this.reset.bind(this));
}
this.currentScrollTop = scrollTop;
}
hide() {
this.header.classList.add(‘shopify-section-header-hidden’, ‘shopify-section-header-sticky’);
this.closeMenuDisclosure();
this.closeSearchModal();
}
reveal() {
this.header.classList.add(‘shopify-section-header-sticky’, ‘animate’);
this.header.classList.remove(‘shopify-section-header-hidden’);
}
reset() {
this.header.classList.remove(‘shopify-section-header-hidden’, ‘shopify-section-header-sticky’, ‘animate’);
}
closeMenuDisclosure() {
this.disclosures = this.disclosures || this.header.querySelectorAll(‘details-disclosure’);
this.disclosures.forEach(disclosure => disclosure.close());
}
closeSearchModal() {
this.searchModal = this.searchModal || this.header.querySelector(‘details-modal’);
this.searchModal.close(false);
}
}
customElements.define(‘sticky-header’, StickyHeader);
{% endjavascript %}
{%- if request.page_type == ‘index’ -%}
{% assign potential_action_target = request.origin | append: routes.search_url | append: “?q={search_term_string}” %}
{%- endif -%}
{% if template == ‘index’ and section.settings.transparent_header %}
{% style %}
.template-index .site-header-transparent .header__icon, .template-index .site-header-transparent .header__menu-item span, .template-index .site-header-transparent .header__menu-item svg, .template-index .site-header-transparent .header__active-menu-item {
color: {{ section.settings.content_color }};
}
.site-header-transparent {
background: transparent;
position: absolute;
border: none;
width: 100%;
left: 50%;
transform: translateX(-50%);
}
.site-header-transition {
margin-top: var(–header-height);
}
{% endstyle %}
{% endif %}
{% schema %}
{
“name”: “t:sections.header.name”,
“class”: “section-header”,
“settings”: [
{
“type”: “select”,
“id”: “color_scheme”,
“options”: [
{
“value”: “accent-1”,
“label”: “t:sections.header.settings.color_scheme.options__1.label”
},
{
“value”: “accent-2”,
“label”: “t:sections.header.settings.color_scheme.options__2.label”
},
{
“value”: “background-1”,
“label”: “t:sections.header.settings.color_scheme.options__3.label”
},
{
“value”: “background-2”,
“label”: “t:sections.header.settings.color_scheme.options__4.label”
},
{
“value”: “inverse”,
“label”: “t:sections.header.settings.color_scheme.options__5.label”
}
],
“default”: “background-1”,
“label”: “t:sections.header.settings.color_scheme.label”
},
{
“type”: “header”,
“content”: “Transparent Header”
},
{
“type”: “checkbox”,
“id”: “transparent_header”,
“label”: “Enable transparent header”,
“default”: false
},
{
“type”: “color”,
“id”: “content_color”,
“label”: “Change icon & text color”
},
{
“type”: “header”,
“content”: “Logo”
},
{
“type”: “image_picker”,
“id”: “logo”,
“label”: “t:sections.header.settings.logo.label”
},
{
“type”: “range”,
“id”: “logo_width”,
“min”: 50,
“max”: 250,
“step”: 10,
“default”: 100,
“unit”: “t:sections.header.settings.logo_width.unit”,
“label”: “t:sections.header.settings.logo_width.label”
},
{
“type”: “select”,
“id”: “logo_position”,
“options”: [
{
“value”: “middle-left”,
“label”: “t:sections.header.settings.logo_position.options__1.label”
},
{
“value”: “top-left”,
“label”: “t:sections.header.settings.logo_position.options__2.label”
},
{
“value”: “top-center”,
“label”: “t:sections.header.settings.logo_position.options__3.label”
}
],
“default”: “middle-left”,
“label”: “t:sections.header.settings.logo_position.label”,
“info”: “t:sections.header.settings.logo_position.info”
},
{
“type”: “link_list”,
“id”: “menu”,
“default”: “main-menu”,
“label”: “t:sections.header.settings.menu.label”
},
{
“type”: “checkbox”,
“id”: “show_line_separator”,
“default”: true,
“label”: “t:sections.header.settings.show_line_separator.label”
},
{
“type”: “checkbox”,
“id”: “enable_sticky_header”,
“default”: true,
“label”: “t:sections.header.settings.enable_sticky_header.label”,
“info”: “t:sections.header.settings.enable_sticky_header.info”
},
{
“type”: “header”,
“content”: “t:sections.all.spacing”
},
{
“type”: “range”,
“id”: “margin_bottom”,
“min”: 0,
“max”: 100,
“step”: 4,
“unit”: “px”,
“label”: “t:sections.header.settings.margin_bottom.label”,
“default”: 0
}
]
}
{% endschema %}