Component · Ref 8B73CX
Affected pagehttps://koawoodranch.com/products/gift-card
Elementbody#koawood-ranch-gift-card
Accessible name//loading class for animations
document.body.classList.add('js-theme-loading');
{"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}
Skip to content
theme.setHeaderHeightVars = () => {
const headerSection = document.querySelector('header-container');
const header = document.querySelector('.js-header');
const announcement = document.querySelector('.shopify-section-group-header-group.js-section__announcement');
const utility = document.querySelector('.shopify-section-group-header-group.js-section__utility-bar');
document.documentElement.style.setProperty('--window-height', `${window.innerHeight}px`);
document.documentElement.style.setProperty(
'--announcement-height',
`${announcement ? announcement.offsetHeight : 0}px`,
);
document.documentElement.style.setProperty('--utility-height', `${utility ? utility.offsetHeight : 0}px`);
//header section (zero height if transparent)
if (headerSection)
document.documentElement.style.setProperty('--header-section-height', `${headerSection.offsetHeight}px`);
//header element (has height if transparent)
if (header) document.documentElement.style.setProperty('--header-height', `${header.offsetHeight}px`);
};
theme.setHeaderLogoVars = () => {
//header logo width
const logoLink = document.querySelector('.header__logo-link');
if (logoLink) document.documentElement.style.setProperty('--header-logo-width', `${logoLink.offsetWidth}px`);
};
theme.setHeaderStyle = () => {
const header = document.querySelector('.js-header');
if (!header) return;
//get element width witout padding
const getElementContentWidth = (element) => {
if (!element) return 0;
const styles = window.getComputedStyle(element);
const padding = parseFloat(styles.paddingLeft) + parseFloat(styles.paddingRight);
return element.clientWidth - padding;
};
const iconsNavDisplayStyle = (style, element) => {
if (!element) return;
element.style.display = style;
};
const headerNavs = header.querySelector('.js-heaver-navs');
const mobileDraw = header.querySelector('.js-mobile-draw-icon');
const searchDraw = header.querySelector('.js-search-draw-icon');
const cartDraw = header.querySelector('.js-cart-draw-icon');
const primaryNav = header.querySelector('.js-primary-nav');
const primaryNavItems = header.querySelector('.js-primary-nav-items');
const secondaryNav = header.querySelector('.js-secondary-nav');
const secondaryNavLocalize = header.querySelector('.js-secondary-nav-localize');
const secondaryNavActions = header.querySelector('.js-secondary-nav-actions');
const logoImg = header.querySelector('.js-main-logo');
const mobileBrkp = 767;
//set sizes
const winWidth = window.innerWidth;
const navsWidth = getElementContentWidth(headerNavs);
const secondaryWidth = getElementContentWidth(secondaryNav);
const secondaryLocalizeWidth = getElementContentWidth(secondaryNavLocalize);
const secondaryActionsWidth = getElementContentWidth(secondaryNavActions);
const secondaryItemsWidth = secondaryLocalizeWidth + secondaryActionsWidth + 6;
const logoWidth = getElementContentWidth(logoImg);
const primaryWidth = getElementContentWidth(primaryNavItems);
if (header.dataset.headerStyle == 'icons') {
iconsNavDisplayStyle('flex', mobileDraw);
iconsNavDisplayStyle('flex', cartDraw);
iconsNavDisplayStyle('flex', searchDraw);
} else if (winWidth >= mobileBrkp) {
if (header.dataset.headerStyle !== 'center') {
//inline style logic
if (header.dataset.headerStyle === 'left') {
const availableLeftSpace = (winWidth - logoWidth) / 2;
if (availableLeftSpace - primaryWidth < 40) {
header.classList.remove('header--left');
header.classList.add('header--center');
} else if (availableLeftSpace - secondaryItemsWidth < 40) {
header.classList.remove('header--left');
header.classList.add('header--center');
} else {
header.classList.add('header--left');
header.classList.remove('header--center');
}
}
//logo left style logic
if (header.dataset.headerStyle === 'logo-left') {
const availableCenterSpace = winWidth - logoWidth;
if (availableCenterSpace - primaryWidth - secondaryItemsWidth < 120) {
header.classList.remove('header--logo-left');
header.classList.add('header--center');
} else {
header.classList.add('header--logo-left');
header.classList.remove('header--center');
}
}
}
iconsNavDisplayStyle('none', mobileDraw);
iconsNavDisplayStyle('none', cartDraw);
iconsNavDisplayStyle('none', searchDraw);
} else {
iconsNavDisplayStyle('flex', mobileDraw);
iconsNavDisplayStyle('flex', cartDraw);
iconsNavDisplayStyle('flex', searchDraw);
}
};
theme.setUpHeaderResizeObservers = () => {
const debounce = (f, delay) => {
let timer = 0;
return (...args) => {
clearTimeout(timer);
timer = setTimeout(() => f.apply(this, args), delay);
};
};
const headerSection = document.querySelector('header-container');
const header = document.querySelector('header');
const logo = document.querySelector('.header__logo-link');
theme.setHeaderHeightVars();
const headerSectionObserver = new ResizeObserver(debounce(theme.setHeaderHeightVars, 50));
headerSectionObserver.observe(headerSection);
theme.setHeaderLogoVars();
const headerLogoObserver = new ResizeObserver(debounce(theme.setHeaderLogoVars, 50));
headerLogoObserver.observe(logo);
theme.setHeaderStyle();
const headerObserver = new ResizeObserver(debounce(theme.setHeaderStyle, 50));
headerObserver.observe(header);
};
.header-trigger {
opacity: 0;
}
<link href="//koawoodranch.com/cdn/shop/t/12/assets/component-navigation-drawer.css?v=68136065212661734271764309413" rel="stylesheet" type="text/css" media="all" />
<link href="//koawoodranch.com/cdn/shop/t/12/assets/component-search-drawer.css?v=166864787208131521551764309413" rel="stylesheet" type="text/css" media="all" />
:root {
--header-is-sticky:1;
--header-bg-color: #6a8055;
--header-bg-color-darker: #5d714b;
--header-text-color: #ffffff;
--header-text-color-light: rgba(255, 255, 255, 0.7);
--header-text-color-lighter: rgba(255, 255, 255, 0.5);
--header-text-color-lightest: rgba(255, 255, 255, 0.1);
--header-text-color-bg: rgba(255, 255, 255, 0.06);
--header-transparent-text-color: #ffffff;
--header-transparent-text-color-light: rgba(255, 255, 255, 0.3);
--header-text-contrast-color: #000;
--header-transparent-text-contrast-color: #000;
}
0
Home Decor
Bowls
…[truncated by Evolize: exceeded D1 value limit]
Markup<body id="koawood-ranch-gift-card" class="template-product" data-anim-load="true" data-anim-interval-style="fade_up" data-anim-zoom="true" data-anim-interval="true" data-editor-mode="false" data-quick-shop-show-cart="true" data-heading-border="true" data-overlap-style="true"><script type="text/javascript">
//loading class for animations
document.body.classList.add('js-theme-loading');
</script>
<script type="application/json" id="cart-data">
{"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0… Affected pages/ /pages/contact-us /products/gift-card /policies/terms-of-service /cart