window.Shopify = window.Shopify || {theme: {id: 168369618967, role: 'main' } };
window._template = {
directory: "",
name: "",
suffix: ""
};
window._cart_items_count = 0;
if (window.location.pathname == '/pages/my-subscriptions-portal') {
window.location.href = '/apps/customers/portal'
}
Raycon
Raycon
:root {
/* ================ Product video ================ */
---color_video_bg: #f2f2f2;
/* ================ Color Variables ================ */
/* === RAYCON ===*/
---color-white: #fff;
---color-white-hover: #ddd;
---color-black: #000;
---color-black-hover: #222;
/* === Backgrounds ===*/
---color-bg: #ffffff;
---color-bg-accent: ;
/* === Text colors ===*/
---color-text-dark: #040509;
---color-text: #1f283a;
---color-text-light: #626975;
/* === Bright color ===*/
---color-primary: #3831ff;
---color-primary-hover: #0800e4;
---color-primary-fade: rgba(56, 49, 255, 0.05);
---color-primary-fade-hover: rgba(56, 49, 255, 0.1);
---color-primary-a85: rgba(56, 49, 255, 0.85);---color-primary-opposite: #ffffff;
/* === Secondary/link Color ===*/
---color-secondary: ;
---color-secondary-hover: ;
---color-secondary-fade: ;
---color-secondary-fade-hover: ;---color-secondary-opposite: ;
/* === Shades of grey ===*/
---color-a5: rgba(31, 40, 58, 0.05);
---color-a10: rgba(31, 40, 58, 0.1);
---color-a20: rgba(31, 40, 58, 0.2);
---color-a35: rgba(31, 40, 58, 0.35);
---color-a50: rgba(31, 40, 58, 0.5);
---color-a80: rgba(31, 40, 58, 0.8);
---color-a90: rgba(31, 40, 58, 0.9);
---color-a95: rgba(31, 40, 58, 0.95);
/* ================ Inverted Color Variables ================ */
---inverse-bg: ;
---inverse-bg-accent: ;
/* === Text colors ===*/
---inverse-text-dark: ;
---inverse-text: ;
---inverse-text-light: ;
/* === Bright color ===*/
---inverse-primary: ;
---inverse-primary-hover: ;
---inverse-primary-fade: ;
---inverse-primary-fade-hover: ;---inverse-primary-opposite: ;
/* === Second Color ===*/
---inverse-secondary: ;
---inverse-secondary-hover: ;
---inverse-secondary-fade: ;
---inverse-secondary-fade-hover: ;---inverse-secondary-opposite: ;
/* === Shades of grey ===*/
---inverse-a5: ;
---inverse-a10: ;
---inverse-a20: ;
---inverse-a35: ;
---inverse-a80: ;
---inverse-a90: ;
---inverse-a95: ;
/* === Nav and dropdown link background ===*/
---color-nav: #ffffff;
---color-nav-text: #121619;
---color-nav-border: #eaeaea;
---color-nav-a10: rgba(18, 22, 25, 0.1);
---color-nav-a50: rgba(18, 22, 25, 0.5);
/* === Site Footer ===*/
---color-footer-bg: #121619;
---color-footer-text: #f9f9f9;
---color-footer-a5: rgba(249, 249, 249, 0.05);
---color-footer-a15: rgba(249, 249, 249, 0.15);
---color-footer-a90: rgba(249, 249, 249, 0.9);
/* === Products ===*/
---color-bg-product: #f9f9f9;
---product-grid-aspect-ratio: 0%;
/* === Product badges ===*/
---color-badge: ;
---color-badge-text: ;
/* === disabled form colors ===*/
---color-disabled-bg: #e9eaeb;
---color-disabled-text: #b1b4ba;
---inverse-disabled-bg: ;
---inverse-disabled-text: ;
/* === Button Radius === */
---button-radius: px;
/* ================ Typography ================ */
---font-stack-body: "satoshi", sans-serif;
---font-style-body: normal;
---font-weight-body: 400;
---font-weight-body-bold: 700;
---font-adjust-body: 1.0;
---font-stack-heading: "satoshi", sans-serif;
---font-style-heading: normal;
---font-weight-heading: 700;
---font-weight-heading-bold: 700;
---font-adjust-heading: 1.0;
---font-heading-space: initial;
---font-heading-caps: initial;
---font-stack-accent: "satoshi", sans-serif;
---font-style-accent: normal;
---font-weight-accent: 400;
---font-weight-accent-bold: 700;
---font-adjust-accent: 1.2;
---ico-select: url('//rayconglobal.com/cdn/shop/t/510/assets/ico-select.svg?v=35184198106449401781753300157');
---url-zoom: url('//rayconglobal.com/cdn/shop/t/510/assets/cursor-zoom.svg?99979');
---url-zoom-2x: url('//rayconglobal.com/cdn/shop/t/510/assets/cursor-zoom-2x.svg?99979');
---swatch-sold-out: url('//rayconglobal.com/cdn/shop/t/510/assets/swatch-soldout.png?99979');
---loader-gif: url('//rayconglobal.com/cdn/shop/t/510/assets/loader_300x.gif?v=21251715395396625211753300157');
---icon-check: url('//rayconglobal.com/cdn/shop/t/510/assets/icon-check.png?v=109879918666229651711753300157');
---icon-cross: url('//rayconglobal.com/cdn/shop/t/510/assets/icon-cross.png?v=41933998898842519211753300157');
}
var theme = {
strings: {
addToCart: "Add to Cart",
soldOut: "Sold Out",
unavailable: "Unavailable",
join: "Join Now"
},
moneyFormat: "${{amount}}",
lp_discount: {
message: ""
}
}
window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');
{"shopId":24040041,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/24040041","merchantName":"Raycon ","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Raycon ","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}
{"accessToken":"faf77e3b1ed935892c5288b63013708f","betas":["rich-media-storefront-analytics"],"domain":"rayconglobal.com","predictiveSearch":true,"shopId":24040041,"locale":"en"}
var Shopify = Shopify || {};
Shopify.shop = "raycon.myshopify.com";
Shopify.locale = "en";
Shopify.currency = {"active":"USD","rate":"1.0"};
Shopify.country = "US";
Shopify.theme = {"name":"PROD | 072425 | Extend Launch","id":168369618967,"schema_name":"Raycon","schema_version":"1.22","theme_store_id":null,"role":"main"};
Shopify.theme.handle = "null";
Shopify.theme.style = {"id":null,"handle":null};
Shopify.cdnHost = "rayconglobal.com/cdn";
Shopify.routes = Shopify.routes || {};
Shopify.routes.root = "/";
!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);
!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);
window.ShopifyPay = window.ShopifyPay || {};
window.ShopifyPay.apiHost = "shop.app\/pay";
window.Shopify = window.Shopify || {};
if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
window.Shopify.featureAssets['shop-js'] = {"shop-cart-sync":["modules/v2/client.shop-cart-sync_6RE2XiPT.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"init-shop-cart-sync":["modules/v2/client.init-shop-cart-sync_DMhwnj0d.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"shop-cash-offers":["modules/v2/client.shop-cash-offers_EMdEtY6N.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"avatar":["modules/v2/client.avatar_BTnouDA3.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/client.init-customer-accounts-sign-up_DDjUybxX.en.esm.js","modules/v2/client.shop-login-button_D-X5HJtB.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"shop-toast-manager":["modules/v2/client.shop-toast-manager_RpuacfF1.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"pay-button":["modules/v2/client.pay-button_CzEW_428.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"shop-button":["modules/v2/client.shop-button_8Y-mfTcn.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/client.init-shop-email-lookup-coordinator_DWlPFgut.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"init-fed-cm":["modules/v2/client.init-fed-cm_fj_41QLE.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"init-customer-accounts":["modules/v2/client.init-customer-accounts_C4JnBi92.en.esm.js","modules/v2/client.shop-login-button_D-X5HJtB.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"shop-login-button":["modules/v2/client.shop-login-button_D-X5HJtB.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"shop-follow-button":["modules/v2/client.shop-follow-button_DiY1OGVp.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"init-windoid":["modules/v2/client.init-windoid_CgyBOdT5.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/client.init-shop-for-new-customer-accounts_Cnsq46SX.en.esm.js","modules/v2/client.shop-login-button_D-X5HJtB.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"checkout-modal":["modules/v2/client.checkout-modal_72syvOek.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"lead-capture":["modules/v2/client.lead-capture_C_SdKmTg.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"],"payment-terms":["modules/v2/client.payment-terms_B8zRAcZP.en.esm.js","modules/v2/chunk.common_zpuuaMLp.esm.js","modules/v2/chunk.modal_BhWf-Xv9.esm.js"]};
(function() {
var isLoaded = false;
function asyncLoad() {
if (isLoaded) return;
isLoaded = true;
var urls = ["https:\/\/services.nofraud.com\/js\/device.js?shop=raycon.myshopify.com","https:\/\/api.joinclyde.com\/scripts\/shopify-storefront.min.js?shop=raycon.myshopify.com","https:\/\/cdn1.stamped.io\/files\/widget.min.js?shop=raycon.myshopify.com","https:\/\/cdn.weglot.com\/weglot_script_tag.js?shop=raycon.myshopify.com","https:\/\/easygdpr.b-cdn.net\/v\/1553540745\/gdpr.min.js?shop=raycon.myshopify.com","https:\/\/widgets.automizely.com\/reviews\/v1\/sdk.js?connection_id=b3b8571a86b34043bee2063f0cfd00e7\u0026mapped_org_id=5d6f70e26cc4422e7f895a9db17fa18a_v1\u0026oid=0ba64f35ba754e5090e6a4ec13ac1f2f\u0026shop=raycon.myshopify.com","https:\/\/crossborder-integration.global-e.com\/resources\/js\/app?shop=raycon.myshopify.com","\/\/cdn.shopify.com\/proxy\/0c87034ce3e3e34549ac504cab3a380dc5bd2f38c80e4a8446fdd14d9bf434e5\/web.global-e.com\/merchant\/storefrontattributes?merchantid=1720\u0026shop=raycon.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","https:\/\/form-assets.mailchimp.com\/snippet\/account\/219133282?shop=raycon.myshopify.com","https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/5320b26506c4572373618b4a5\/5c76c71102816fea29c3dc8d1.js?shop=raycon.myshopify.com","https:\/\/thread.spicegems.org\/0\/js\/scripttags\/raycon\/country_redirect_fe08cec09f17a8d7844e50b3fb7f530a.min.js?v=42\u0026shop=raycon.myshopify.com","https:\/\/cdn.richpanel.com\/js\/richpanel_shopify_script.js?appClientId=raycon9292\u0026tenantId=raycon929\u0026shop=raycon.myshopify.com\u0026shop=raycon.myshopify.com","https:\/\/sdk.postscript.io\/sdk-script-loader.bundle.js?shopId=3994\u0026shop=raycon.myshopify.com","https:\/\/s3.eu-west-1.amazonaws.com\/production-klarna-il-shopify-osm\/7bec47374bc1cb6b6338dfd4d69e7bffd4f4b70b\/raycon.myshopify.com-1753365606187.js?shop=raycon.myshopify.com","https:\/\/onetext.com\/sdk\/onetext.min.js?onetext-account-token=onetext_account_production_2a26219c-59de-4bf3-bc11-0a0abd0eaba6\u0026timestamp=1754809202374\u0026shop=raycon.myshopify.com","https:\/\/onetext.com\/sdk\/onetext.raycon.min.js?onetext-account-token=onetext_account_production_2a26219c-59de-4bf3-bc11-0a0abd0eaba6\u0026timestamp=1754809202374\u0026shop=raycon.myshopify.com"];
for (var i = 0; i < urls.length; i++) {
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = urls[i];
var x = document.getElementsByTagName('script')[0];
x.parentNode.insertBefore(s, x);
}
};
if(window.attachEvent) {
window.attachEvent('onload', asyncLoad);
} else {
window.addEventListener('load', asyncLoad, false);
}
})();
var __st={"a":24040041,"offset":-14400,"reqid":"08c4033c-1239-4964-8ec0-afc7b4497714-1754892868","pageurl":"rayconglobal.com\/a\/faq?srsltid=AfmBOoqJfp7MXJ1gLSietn2DKiaRgIKSM4B0t5Nbghb_ij5Xoi5UipBi\u0026logged_in_customer_id=","u":"f67908f29788"};
window.ShopifyPaypalV4VisibilityTracking = true;
!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.2.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();
var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://rayconglobal.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
#shopify-buyer-consent {
margin-top: 1em;
display: inline-block;
width: 100%;
}
#shopify-buyer-consent.hidden {
display: none;
}
#shopify-subscription-policy-button {
background: none;
border: none;
padding: 0;
text-decoration: underline;
font-size: inherit;
cursor: pointer;
}
#shopify-subscription-policy-button::before {
box-shadow: none;
}
window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');
var loox_global_hash = '1572877700701';.loox-reviews-default { max-width: 1200px; margin: 0 auto; }
var _talkableq = _talkableq || [];
_talkableq.push(['authenticate_customer', {"email":"","first_name":"","last_name":"","customer_id":""}]);
Weglot.initialize({
api_key:"wg_0ccaa61dac7b3428e3ebb4d87c10a7101",
switchers: [
{
// Same as button_style at root
button_style: {
full_name: true,
with_name: true,
is_dropdown: true,
with_flags: true,
flag_type: "circle",
invert_flags: false
},
// Move switcher somewhere in the page
location: {
target: ".footer__block--payment_types",
sibling: null
}
}
]
});
var languageAutoSelect = function() {
let visitorCountry = 'us';
if (typeof Shopify.country != 'undefined') {
visitorCountry = Shopify.country.toLowerCase();
}
if (visitorCountry == 'fr') {
//$(`.weglot-container [data-l="${visitorCountry}"]`).click();
Weglot.switchTo('fr');
}
}
//Weglot.on("initialized", languageAutoSelect);
//Weglot.on("switchersReady", languageAutoSelect);
try {
window.EasyGdprSettings = "{\"cookie_banner\":false,\"cookie_banner_cookiename\":\"\",\"cookie_banner_settings\":{},\"current_theme\":\"pipeline\",\"custom_button_position\":\"\",\"eg_display\":[\"footer\",\"login\",\"account\"],\"enabled\":false,\"texts\":{}}";
} catch (error) {}
body :not(#\ ):not(#\ )[data-locale="show-only-us-boxing"],
body :not(#\ ):not(#\ )[data-locale="show-only-cw-boxing"] {
display: none;
}
document.addEventListener('DOMContentLoaded', function() {
var customerCountry = Shopify.country;
customerCountry = customerCountry || 'US';
var anyBoxingCampaign = false;
/*
//boxing day updates
var isCustomerCountryBoxing = false;
var boxingCountries = ['CA', 'UK', 'AU', 'IE', 'NZ', 'GB'];
isCustomerCountryBoxing = boxingCountries.includes(customerCountry);
var comingFromUSBoxingCampaign = false;
comingFromUSBoxingCampaign = window.location.href.toLowerCase().includes('box5');
if (comingFromUSBoxingCampaign) {
localStorage.setItem("cameFromUSBoxingCampaign", true);
}
var cameFromUSBoxingCampaign = localStorage.getItem("cameFromUSBoxingCampaign");
// example https://rayconglobal.com/discount/box5?utm_source=facebook&utm_medium=cpc&utm_campaign=usbox5_sale
var anyBoxingCampaign = false;
if ((comingFromUSBoxingCampaign || cameFromUSBoxingCampaign) && customerCountry == 'US') {
anyBoxingCampaign = true;
document.querySelectorAll('[data-locale]').forEach(el => {
el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="show-only-us-boxing"]').forEach(el => {
el.classList.remove('hide');
el.classList.add('show');
});
try {
document.querySelector('.info-bar__message > div:nth-child(1) > p:nth-child(1) > a:nth-child(1) > strong:nth-child(1)').innerText = "Boxing Day! Save up to 20% Code: BOX5";
} catch (e) {
//
}
} else if (isCustomerCountryBoxing) {
anyBoxingCampaign = true;
document.querySelectorAll('[data-locale]').forEach(el => {
el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="show-only-cw-boxing"]').forEach(el => {
el.classList.remove('hide');
el.classList.add('show');
});
try {
document.querySelector('.info-bar__message > div:nth-child(1) > p:nth-child(1) > a:nth-child(1) > strong:nth-child(1)').innerText = "Boxing Day! Save up to 25% Code: BOX10";
} catch (e) {
//
}
}
*/
if (customerCountry !== 'US') {
/*
if (!anyBoxingCampaign) {
document.querySelectorAll('[data-locale="show-only-us-boxing"]').forEach(el => {
el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="show-only-cw-boxing"]').forEach(el => {
el.classList.remove('show');
el.classList.add('hide');
});
}
*/
document.querySelectorAll('.only-us').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="only-us"]').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('li.grandparent:nth-child(6)').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('li.mobile-menu__item:nth-child(8)').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('li.mobile-menu__item:nth-child(10)').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('div.featured-grid__item:nth-child(7)').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('.only-non-us').forEach(el => {
//el.style.display = 'none';
el.classList.remove('hide');
//el.classList.add('show');
});
document.querySelectorAll('[data-locale="only-non-us"]').forEach(el => {
//el.style.display = 'none';
el.classList.remove('hide');
//el.classList.add('show');
});
} else if (customerCountry == 'US') {
if (!anyBoxingCampaign) {
document.querySelectorAll('[data-locale="show-only-us-boxing"]').forEach(el => {
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="show-only-cw-boxing"]').forEach(el => {
//el.classList.remove('show');
el.classList.add('hide');
});
}
document.querySelectorAll('.only-us').forEach(el => {
//el.style.display = 'block';
el.classList.remove('hide');
//el.classList.add('show');
});
document.querySelectorAll('[data-locale="only-us"]').forEach(el => {
//el.style.display = 'block';
el.classList.remove('hide');
//el.classList.add('show');
});
document.querySelectorAll('.only-non-us').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
document.querySelectorAll('[data-locale="only-non-us"]').forEach(el => {
//el.style.display = 'none';
//el.classList.remove('show');
el.classList.add('hide');
});
}
});
function checkWindowExtendABFlag() {
let attempts = 0;
const maxAttempts = 10;
const interval = 100;
const check = setInterval(() => {
if (typeof window._extend !== 'undefined') {
console.log('window._extend found, for Config:', window._extend);
clearInterval(check);
window.dispatchEvent(new Event('ExtendABFlagSet'));
} else {
attempts++;
//console.log(`Attempt ${attempts}: window._extend is undefined`);
if (attempts >= maxAttempts) {
console.log(`Gave up after ${attempts} attempts looking for Extend AB Test Flag.`);
clearInterval(check);
}
}
}, interval);
}
window.addEventListener('DOMContentLoaded', function () {
checkWindowExtendABFlag();
});
window.addEventListener('ExtendABFlagSet', function () {
// Set variable for A/B testing Extend
window.extendShow = false;
window.extendShowAttr = false;
window.extendShowpdpOffer = false;
window.extendShowpdpModalOffer = false;
window.extendShowsidecartOffer = false;
// Read the 'data-extend-show' attribute from the body tag
// const extendShowAttr = document.body.getAttribute('data-extend-show');
try {
extendShowAttr = window._extend;
extendShowpdpOffer = window._extendShowpdpOffer;
extendShowpdpModalOffer = window._extendShowpdpModalOffer;
extendShowsidecartOffer = window._extendShowsidecartOffer;
console.log('When loading Extend, 1- window._extend, 2- window._extendShowpdpOffer, 3- window._extendShowpdpModalOffer and 4- window._extendShowsidecartOffer, are, accordingly: ', '1-', window._extend, '2-', window._extendShowpdpOffer, '3-', window._extendShowpdpModalOffer, '4-', window._extendShowsidecartOffer);
} catch(e) {
console.log('Error extendShowAttr: ', e);
}
// Update if the attribute is present and exactly equal to "false"
if (extendShowAttr === true) {
window.extendShow = true;
}
// Set store ID
const storeId = '296cc793-e27f-42ec-b54e-2c73c1cf9dd5';
// Set environment (production, demo, or development)
const env = 'production';
window.Extend.config({ storeId: storeId, environment: env });
// Only sets window variables if Extend and ExtendShopify is defined
if (window.Extend && window.ExtendShopify && window.extendShow) {
// Contains window variables used in integration
window.Extend.integration = {};
// Configurables - Start
// Set currency required to display offers (USD or CAD)
window.Extend.integration.currency = 'USD';
// PDP Visible Offer
window.Extend.integration.pdpOffer = window.extendShowpdpOffer;
// PDP Modal Offer
window.Extend.integration.pdpModalOffer = window.extendShowpdpModalOffer;
// PDP Offer Properties
window.Extend.integration.offerProperties = {};
// Cart Offers
window.Extend.integration.cartOffer = true;
// Sidecart Offers
window.Extend.integration.sidecartOffer = window.extendShowsidecartOffer;
// Cart Balancing
window.Extend.integration.cartBalancing = true;
// Aftermarket Modal
window.Extend.integration.aftermarketModal = window.extendShowpdpModalOffer;
// ATC Modal Offer
window.Extend.integration.atcOffer = window.extendShowpdpModalOffer;
// Quickview visible offer
window.Extend.integration.quickviewOffer = window.extendShowpdpModalOffer;
// Quickview modal offer
window.Extend.integration.quickviewModalOffer = window.extendShowpdpModalOffer;
// Cart SP
window.Extend.integration.cartSP = false;
// Configurables - End
// Aftermarket Code
if (Shopify && Shopify.currency && Shopify.currency.active === Extend.integration.currency && Extend.integration.aftermarketModal) {
try {
// Get params from URL
const params = (new URL(document.location)).searchParams;
// Check if leadToken or leadtoken is in the URL
let leadToken = params.get('leadToken')
? params.get('leadToken')
: params.get('leadtoken');
if (leadToken) {
Extend.aftermarketModal.open({
leadToken: leadToken,
onClose: function (plan, product, quantity) {
if (plan && product) {
ExtendShopify.addPlanToCart({
plan: plan,
product: product,
leadToken: leadToken,
quantity: quantity || 1
}, function () {
location = '/cart'
})
}
}
});
}
} catch (error) {
console.error("EXTEND: " + error);
}
}
}
}, { once: true });
window.addEventListener('ExtendABFlagSet', function () {
// Checks if Extend lives in the window and the active currency is USD before showing Extend offers
if (window.extendShow && Extend && ExtendShopify && Shopify && Shopify.currency && Shopify.currency.active === Extend.integration.currency && meta.page.pageType == 'product') {
/************************/
/* Initial Variables */
/************************/
const productForm = document.querySelector('form[action="/cart/add"]'); // Change this to the product form element
let addToCartButton = productForm.querySelector('.add-to-cart-wrapper button[name="add"]'); // Change this to the Add-To-Cart element
const dispatchSideCart = false; // Set to true if a sidecart opens after adding to cart via pdp
const productCategory = (meta && meta.product) ? meta.product.type : null; // Grabs product category from meta object, works on most themes
if (productCategory === "Bundles") return;
// Handles creating and prepending Extend offer div
const extendOffer = document.createElement('div');
if (!Extend.integration.pdpOffer) extendOffer.style.display = 'none';
extendOffer.className = 'extend-offer';
// Add Extend either before or after the Add to Cart CTA, based on a flag on `window`
let loadAfterPDPATCCTA = false;
loadAfterPDPATCCTA = window._ExtendloadAfterPDPATCCTA
if (loadAfterPDPATCCTA) {
// Add after
productForm.insertBefore(extendOffer, productForm.querySelector('.product__action').nextSibling);
} else {
// Add before
productForm.insertBefore(extendOffer, productForm.querySelector('.product__action'));
}
/************************/
/* initProductOffer */
/************************/
// Initializes product offers and handles ATC button functionality for the main PDP ATC
function initProductOffer() {
try {
// Fail safes
if (!productForm || !addToCartButton || !extendOffer) {
throw new Error("Exiting - missing productForm, addToCartButton, or extendOffer")
}
// Disables ATC if product is Extend
if (meta && meta.product && meta.product.vendor === 'Extend') addToCartButton.disabled = true;
// Grabs the variantId from the productForm and renders the initial offers for it
let variantId = productForm.id.value;
// Grabs the product price from the metadata, works on most themes
let productPrice = (meta && meta.product && meta.product.variants) ? parseInt(meta.product.variants.filter(variant => variant.id.toString() === variantId.toString())[0].price) : null;
// Saves the offer properties to an easily accessible window object that is initialized in the config
Extend.integration.offerProperties = {variant: variantId, category: productCategory, price: productPrice}
// Renders Extend offer
Extend.buttons.render(extendOffer, { referenceId: variantId, price: productPrice, category: productCategory });
// Listens for changes to the productForm and sets the activeProduct for extend via variantID
productForm.addEventListener('change', function () {
variantId = productForm.id.value
if (variantId) {
productPrice = (meta && meta.product && meta.product.variants) ? parseInt(meta.product.variants.filter(variant => variant.id.toString() === variantId.toString())[0].price) : null;
Extend.setActiveProduct(extendOffer, { referenceId: variantId, price: productPrice, category: productCategory });
if (meta && meta.product && meta.product.vendor === 'Extend') addToCartButton.disabled = true;
Extend.integration.offerProperties = {variant: variantId, category: productCategory, price: productPrice}
}
});
document.addEventListener('click', function(e) {
if (e.target.closest('.swatch__item')) {
variantId = productForm.id.value
if (variantId) {
productPrice = (meta && meta.product && meta.product.variants) ? parseInt(meta.product.variants.filter(variant => variant.id.toString() === variantId.toString())[0].price) : null;
Extend.setActiveProduct(extendOffer, { referenceId: variantId, price: productPrice, category: productCategory });
if (meta && meta.product && meta.product.vendor === 'Extend') addToCartButton.disabled = true;
Extend.integration.offerProperties = {variant: variantId, category: productCategory, price: productPrice}
}
}
})
// click simulation handling add to cart
function handleAddToCart(e) {
e.preventDefault();
e.stopImmediatePropagation();
const quantityEl = productForm.querySelector('[name="quantity"]');
const quantity = quantityEl && quantityEl.value ? quantityEl.value : 1;
ExtendShopify.handleAddToCart(extendOffer, {
quantity: quantity,
modal: window.Extend.integration.pdpModalOffer,
done: function () {
// remove default click listener
addToCartButton.removeEventListener('click', handleAddToCart, true);
// click atc button
addToCartButton = productForm.querySelector('.add-to-cart-wrapper button[name="add"]'); // Change this to the Add-To-Cart element
window.setTimeout(function () {
addToCartButton.click();
// add default click listener back
addToCartButton.addEventListener('click', handleAddToCart, true);
// If variable set to true, dispatches Extend side cart integration to run after adding to cart via pdp
if (dispatchSideCart) window.setTimeout(function () { window.dispatchEvent(new Event('refreshAjaxSideCart')) }, 1000)
}, 500)
}
});
}
// run handleCaddtoCart when we click ATC, capturing event
//if (window.Extend.integration.pdpModalOffer) {
addToCartButton.addEventListener('click', handleAddToCart, true);
//}
} catch (error) {
return
}
}
// Initial product offer render
if (!Extend.buttons.instance(extendOffer)) {
initProductOffer();
}
}
}, { once: true });
.extend-offer {
margin: 0 !important;
}
@media screen and (min-width: 986px) {
.extend-offer iframe {
height: auto !important;
}
}
window.addEventListener('ExtendABFlagSet', function () {
// Only run ajax integration if Extend and ExtendShopify is defined, and the currency is set to USD
if (!window.extendShow || !Extend || !ExtendShopify || !Shopify || !Shopify.currency || Shopify.currency.active !== Extend.integration.currency) {
return;
}
// Checks url if page is main cart
const isMainCart = location.pathname.includes('/cart');
if (!isMainCart && !window.Extend.integration.sidecartOffer) return;
// store value to know if script initialized already
let init = false;
/*****************************************/
/* Global Variables - THEME SPECIFIC */
/*****************************************/
let cartRowItem, cartRowItemTitle, cartRowItemImage, cartRowItemQuantity, warrantyContainer, warrantyOriginalMeta, metadataContainer;
if (isMainCart) {
// Main cart variables
cartRowItem = '.cart__body .cart__item'; // This is the container element for each item in the cart
cartRowItemImage = '.cart__image'; // This is the product image or image anchor element
cartRowItemTitle = '.item__title'; // This is the title anchor element for the product
cartRowItemQuantity = '.quantity__input'; // This is the input element containing the product quantity
warrantyOriginalMeta = '.item__variant-title'; // Each warranty metadata item we want to remove.
warrantyContainer = '.cart__item__info'; // This is the container where the offer will be appended
metadataContainer = '.cart__item__info'; // This is where warranty metadata will be appended (Product and Term)
} else {
// Side cart variables
cartRowItem = 'cart-drawer cart-body cart-item'; // This is the container element for each item in the cart
cartRowItemImage = '.cart-item__image-wrap a'; // This is the product image or image anchor element
cartRowItemTitle = '.cart-item__title a'; // This is the title anchor element for the product
cartRowItemQuantity = '.quantity__input'; // This is the input element containing the product quantity
warrantyOriginalMeta = '.cart-item__properties li'; // Each warranty metadata item we want to remove.
warrantyContainer = '.cart-item__info'; // This is the container where the offer will be appended
metadataContainer = '.cart-item__properties'; // This is where warranty metadata will be appended (Product and Term)
}
// Add quantity wrapper selector to disable use of quantity selector on Extend items, ignored if empty string
const quantityWrapper = isMainCart ? '.cart-quantity' : '.cart-quantity';
const offerClass = !isMainCart ? 'extend-side-cart-offer' : 'extend-cart-offer'; // This is the class that will be assigned to each Extend offer
const cartEvent = !isMainCart ? 'refreshAjaxSideCart' : 'refreshAjaxCart';
const regEx = /\d+$/;
let localCart = {"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}; // Shopify Cart Object on initial load
// Fail safe for cart
if (!localCart) {
console.error("EXTEND: Exiting - localCart unavailable")
return false;
}
/**************************************/
/* refreshCart - THEME SPECIFIC */
/**************************************/
// Refresh the cart (hard refresh by default)
function refreshCart(cart) {
if (isMainCart) {
// Main cart specific refresh
location.reload();
} else {
localStorage.setItem("extendRefresh", "true")
window.setTimeout(function() {
location.reload();
}, 200)
}
}
function renderCartOffer(el, variantId, quantity, index) {
// Grabs the product category and price from the current item metadata
let productCategory = localCart.items[index].product_type;
let productPrice = localCart.items[index].price;
if (ExtendShopify.warrantyAlreadyInCart(parseInt(variantId), localCart.items) || ExtendShopify.warrantyAlreadyInCart(variantId.toString(), localCart.items)) {
return;
} else {
// Return if this is a cart snippet and cart offers are disabled
if (!Extend.integration.cartOffer) return;
// Return if this is a sidecart snippet and sidecart offers are disabled
if (!Extend.integration.sidecartOffer) return;
if (productCategory === "Bundles") return;
// Render all other buttons
Extend.buttons.renderSimpleOffer(el, {
referenceId: variantId,
price: productPrice,
category: productCategory,
onAddToCart: function (options) {
ExtendShopify.addPlanToCart({
plan: options.plan,
product: options.product,
quantity: quantity
}, function (err) {
// An error occurred
if (err) {
throw new Error({ "Exiting - Error in onAddToCart": err });
} else {
refreshCart();
}
});
}
});
}
}
/***********************/
/* createElement */
/***********************/
// createElement(product) - Takes in the product element, and creates the Extend offer element + appends the offer
function createElement(product, index) {
// Grab URL from title anchor href
let url = product.querySelector(cartRowItemTitle).href;
// Grabs variant ID from URL if available, otherwise from localCart
let variantId = (url && url.match(regEx)) ? url.match(regEx)[0] : localCart.items[index].id;
// Select quantity value
let quantity = product.querySelector(cartRowItemQuantity) ? parseInt(product.querySelector(cartRowItemQuantity).value) : 1;
if (!variantId || quantity.length > 0) {
throw new Error("Exiting - Error with variantId {0} or quantity {1}", variantId, quantity);
}
// Removes existing offer elements before creating new ones
let extendOffer = product.querySelector('.' + offerClass);
if (extendOffer) {
if (extendOffer.dataset.extendVariant !== variantId || extendOffer.dataset.extendQuantity !== quantity) {
extendOffer.remove();
} else {
return;
}
}
// Parent container to append ajax offer
let container = product.querySelector(warrantyContainer);
// Fail safes
if (!variantId || !quantity || !container) {
throw new Error("Exiting - variant, quantity or container unavailable");
}
// Create new element & set class, data-extend-variant, and data-extend-quantity attributes
let newExtendOffer = document.createElement('div');
newExtendOffer.className = offerClass;
newExtendOffer.setAttribute('data-extend-variant', variantId);
newExtendOffer.setAttribute('data-extend-quantity', quantity);
// Append the offer to the container element (THEME SPECIFIC)
container.append(newExtendOffer);
renderCartOffer(newExtendOffer, variantId, quantity, index);
}
/************************/
/* Handle Styling */
/************************/
// Finds all cartRowItems and styles only Extend warranties
function handleStyling() {
document.querySelectorAll(cartRowItem).forEach(function (el, index) {
try {
// Grab the title of the current item
let title = el.querySelector(cartRowItemTitle);
// Title fail safe
if (!title) {
throw new Error("Exiting - title unavailable");
}
// If it's a warranty set isExtend to true and remove links
if (title.innerText.toLowerCase().indexOf('extend protection') > -1) { // Grab the image of the current item and fail safe
// Select and remove pointerEvents from warranty title
title.style.pointerEvents = 'none';
let image = el.querySelector(cartRowItemImage);
if (!image) {
throw new Error("Exiting - image unavailable");
}
// Select and remove pointerEvents from warranty image
image.style.pointerEvents = 'none';
// Remove sidecart image clicking for Extend products
if (!isMainCart && el.querySelector(cartRowItemImage)) {
el.querySelectorAll(cartRowItemImage).forEach(function(element) {element.style.pointerEvents = 'none';})
}
/**************************************/
/* THEME SPECIFIC STYLING START */
/**************************************/
if (isMainCart) {
// Removes loose text in element
Array.from(el.querySelector('.cart__item__info').childNodes).forEach(node => {
if (node.nodeType === Node.TEXT_NODE && node.textContent.trim()) {
node.remove();
}
});
} else if (el.querySelector('.cart-item__variant-title')) {
el.querySelector('.cart-item__variant-title').remove()
}
// Removes old metadata
if (el.querySelector(warrantyOriginalMeta)) {
el.querySelectorAll(warrantyOriginalMeta).forEach(function (each) {
each.remove();
})
}
if (quantityWrapper && quantityWrapper != '' && el.querySelector(quantityWrapper)) {
el.querySelectorAll(quantityWrapper).forEach((each) => {
each.style.opacity = '45%';
each.style.pointerEvents = 'none';
})
}
// Selects where to append warranty metadata
let contentContainer = el.querySelector(metadataContainer)
let warrantyProductData;
let warrantyTermData;
contentContainer.querySelectorAll('br').forEach(function(element) {element.remove()});
if (!localCart.items[index]) return;
if (localCart.items[index].options_with_values && localCart.items[index].options_with_values[1]) { // Finds the ref id string in the product info string and replaces with an empty string
let regexReplace = localCart.items[index].options_with_values[0].value.match(/\-\d{5,}/g);
warrantyProductData = localCart.items[index].options_with_values[0].value.replace(regexReplace, '');
warrantyTermData = localCart.items[index].options_with_values[1].value;
} else {
warrantyProductData = localCart.items[index].properties.Product;
warrantyTermData = localCart.items[index].properties.Term;
}
// For category offers, fetch title by filtering through cart for warranted product refId
if (warrantyProductData === "Covered Product") {
const coveredProdId = localCart.items[index].properties['_Extend.ProductId'];
const coveredProdTitle = localCart.items.filter((item) => item.id.toString() == coveredProdId)[0].title;
warrantyProductData = coveredProdTitle;
}
// Appends Product and Term metadata
if (el.querySelector(metadataContainer)) {
let warrantyProductName = document.createElement('p');
warrantyProductName.className = 'extend-warranty-info extend-warranty-info-product';
warrantyProductName.innerHTML = 'Product: ' + warrantyProductData;
warrantyProductName.setAttribute('data-cy', 'warranty-description-product');
let warrantyProductTerm = document.createElement('p')
warrantyProductTerm.className = 'extend-warranty-info extend-warranty-info-term';
warrantyProductTerm.innerHTML = 'Term: ' + warrantyTermData;
warrantyProductTerm.setAttribute('data-cy', 'warranty-description-term');
// Only append the metadata if it's not already there
if (!el.querySelector('.extend-warranty-info')) {
contentContainer.insertBefore(warrantyProductName, contentContainer.querySelector('.cart__remove'))
contentContainer.insertBefore(warrantyProductTerm, contentContainer.querySelector('.cart__remove'))
}
}
/**************************************/
/* THEME SPECIFIC STYLING END */
/**************************************/
} else { // Create an offer element for each product
createElement(el, index);
}
} catch (error) {
console.error("EXTEND:", error);
}
});
}
function initEventListeners() {
if (init) return;
function refreshCartOffer() {
fetch('/cart.js', {
credentials: 'same-origin',
method: 'GET',
headers: {
'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'
}
})
.then((e) => e.json())
.then((e) => {
localCart = e;
initializeCartOffer();
})
.catch((error) => {
console.error("EXTEND:", error)
});
}
// https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Multiple_identical_event_listeners
window.addEventListener(cartEvent, refreshCartOffer);
// Listen for SP dispatching refresh
window.addEventListener('refreshSP', refreshCart);
}
/************************/
/* initializeCartOffer */
/************************/
// Invokes handleStyling and finds all offers in the cart, handling both normalization and balancing
function initializeCartOffer() {
// Runs this normalization from extend-shipping.liquid if using cart SP
if (Extend.integration.cartSP && Extend.integration.normalizeCartSP) {
Extend.integration.normalizeCartSP()
}
// Handles styling and creates offer elements
handleStyling();
initEventListeners();
init = true;
// Use standard normalization if SP is not present in cart
if (!window.Extend.integration.cartSP) {
// Normalization ensures there is a 1:1 relationship between the product and the warranty
ExtendShopify.normalizeCart({
cart: localCart,
balance: Extend.integration.cartBalancing
}, function (err, data) {
try {
// An error occurred
if (err) {
throw new Error({ "Exiting - Error in normalizeCart": error });
} else if (data && data.updates) { // Calls refreshCart to update the cart for normalization
refreshCart();
}
} catch (error) {
console.error("EXTEND:", error)
}
});
}
}
try {
// initializeCartOffer when script is initially rendered
initializeCartOffer();
document.addEventListener('click', function(e) {
if (e.target.closest('a[data-cart-toggle]') || e.target.closest('.cart-upsell-item__form button[type="submit"]')) {
window.dispatchEvent(new Event('refreshAjaxSideCart'))
}
})
if (localStorage.getItem("extendRefresh") === "true" && document.querySelector('a[data-cart-toggle]')) {
localStorage.removeItem("extendRefresh")
document.querySelector('a[data-cart-toggle]').click()
}
} catch (err) {
console.error('EXTEND: ', err);
}
}, { once: true });
.extend-cart-offer {
margin-top: 10px;
}
.extend-side-cart-offer {
margin: 10px 0;
}
.extend-warranty-info {
margin: 0 !important;
font-size: 16.5px
}
cart-drawer .extend-warranty-info {
margin: 0 !important;
font-size: 14px
}
.extend-warranty-info-product {}
.extend-warranty-info-term {}
#extend-offers-modal-iframe {
z-index: 99999999999 !important;
}
#extend-learn-more-modal-iframe {
z-index: 99999999999 !important;
}
window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","badge_star_color":"#f5b400","hide_badge_preview_if_no_reviews":true,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"{{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank you! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"{{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"last_initial","widget_rating_filter_color":"#41ba76","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","widget_star_color":"#f5b400","verified_badge_text":"Verified","verified_badge_bg_color":"#41ba76","verified_badge_placement":"left-of-reviewer-name","widget_hide_border":false,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":true,"widget_location_format":"country_iso_code","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_write_a_store_review_text":"Write a Store Review","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","widget_sorting_pictures_first_text":"Pictures First","floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_url":"","floating_tab_url_enabled":false,"all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","all_reviews_text_badge_url":"","featured_carousel_title":"Let customers speak for us","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_url":"","verified_count_badge_url":"","widget_histogram_use_custom_color":true,"widget_pagination_use_custom_color":true,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":true,"mute_video_by_default":true,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","remove_microdata_snippet":false,"enable_json_ld_products":true,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","remove_judgeme_branding":true,"widget_search_bar_placeholder":"Search reviews","widget_sorting_verified_only_text":"Verified only","featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_more_text":"Load More Reviews","widget_advanced_speed_features":5,"widget_public_name_text":"displayed publicly like","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":true,"widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":true,"widget_load_with_code_splitting":true,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subtitle":"Tag us to see your picture featured in our page","widget_ugc_primary_button_text":"Buy Now","widget_ugc_secondary_button_text":"Load More","widget_ugc_reviews_button_text":"View Reviews","widget_primary_color":"#232b36","widget_summary_average_rating_text":"{{ average_rating }}","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_verified_by_judgeme_text":"Verified by Judge.me","widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":true,"widget_reviewer_name_color":"#232B36","widget_write_review_bg_color":"#232B36","widget_collected_by_judgeme_text":"collected by Judge.me","widget_load_more_text":"Load More","widget_load_more_color":"#41ba76","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","widget_show_review_information":true,"how_reviews_are_collected":"How reviews are collected?","widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#108474","show_product_variant":true,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":true,"redirect_reviewers_invited_via_email":"review_widget","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","transparency_badges_collected_via_store_invite":true,"transparency_badges_from_another_provider":true,"transparency_badges_collected_from_store_visitor":true,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":true,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","platform":"shopify","branding_url":"https://app.judge.me/reviews/stores/rayconglobal.com","branding_text":"Powered by Judge.me","locale":"en","reply_name":"Raycon ","widget_version":"3.0","footer":true,"autopublish":true,"review_dates":true,"enable_custom_form":false,"shop_use_review_site":true,"shop_locale":"en","enable_multi_locales_translations":false,"show_review_title_input":true,"review_verification_email_status":"never","can_be_branded":true,"reply_name_text":"Raycon "}; .jdgm-xx{left:0}:root{--jdgm-primary-color: #232b36;--jdgm-secondary-color: rgba(35,43,54,0.1);--jdgm-star-color: #f5b400;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #232B36;--jdgm-paginate-color: #41ba76;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #232B36}.jdgm-histogram__bar-content{background-color:#41ba76}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#41ba76}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-preview-badge .jdgm-star.jdgm-star{color:#f5b400}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-author-fullname{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="product"]{display:none !important}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-review-widget[data-from-snippet="true"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#108474}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:'Raycon '}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
@-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-spinner:empty{display:block}.jdgm-prev-badge{display:block !important}
!function(e){window.jdgm=window.jdgm||{},jdgm.CDN_HOST="https://cdnwidget.judge.me/",jdgm.API_HOST="https://api.judge.me/",
jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){
!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!",
a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))},
jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest;
t.onreadystatechange=function(){4===t.readyState&&(Function(t.response)(),d&&d(t.response))},
t.open("GET",e),t.send()},jdgm.docReady((function(){(window.jdgmLoadCSS||e.querySelectorAll(
".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_HOST+"widget_v3/base.css"):
jdgm.loadCSS(jdgm.CDN_HOST+"widget/base.css"):jdgm.loadCSS(jdgm.CDN_HOST+"shopify_v2.css"),
jdgm.loadJS(jdgm.CDN_HOST+"loader.js"))}))}(document);
(function() {
var jdgmThemeFixes = null;
if (!jdgmThemeFixes) return;
var thisThemeFix = jdgmThemeFixes[Shopify.theme.id];
if (!thisThemeFix) return;
if (thisThemeFix.html) {
document.addEventListener("DOMContentLoaded", function() {
var htmlDiv = document.createElement('div');
htmlDiv.classList.add('jdgm-theme-fix-html');
htmlDiv.innerHTML = thisThemeFix.html;
document.body.append(htmlDiv);
});
};
if (thisThemeFix.css) {
var styleTag = document.createElement('style');
styleTag.classList.add('jdgm-theme-fix-style');
styleTag.innerHTML = thisThemeFix.css;
document.head.append(styleTag);
};
if (thisThemeFix.js) {
var scriptTag = document.createElement('script');
scriptTag.classList.add('jdgm-theme-fix-script');
scriptTag.innerHTML = thisThemeFix.js;
document.head.append(scriptTag);
};
})();
!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w
window.klaviyoReviewsProductDesignMode = false
window.klaviyoReviewsProductDesignMode = false
if (!window.customerHub) {
window.customerHub = {};
}
window.customerHub.storefrontRoutes = {
login: "/account/login?return_url=%2F%23k-hub",
register: "/account/register?return_url=%2F%23k-hub",
logout: "/account/logout",
profile: "/account",
addresses: "/account/addresses",
};
window.customerHub.userId = null;
window.customerHub.storeDomain = "raycon.myshopify.com";
window.customerHub.storeLocale = {
currentLanguage: 'en',
currentCountry: 'US',
availableLanguages: [
{
iso_code: 'en',
endonym_name: 'English'
}
],
availableCountries: [
{
iso_code: 'AL',
name: 'Albania',
currency_code: 'ALL'
},
{
iso_code: 'DZ',
name: 'Algeria',
currency_code: 'DZD'
},
{
iso_code: 'AD',
name: 'Andorra',
currency_code: 'EUR'
},
{
iso_code: 'AO',
name: 'Angola',
currency_code: 'AOA'
},
{
iso_code: 'AI',
name: 'Anguilla',
currency_code: 'XCD'
},
{
iso_code: 'AG',
name: 'Antigua & Barbuda',
currency_code: 'XCD'
},
{
iso_code: 'AR',
name: 'Argentina',
currency_code: 'ARS'
},
{
iso_code: 'AM',
name: 'Armenia',
currency_code: 'AMD'
},
{
iso_code: 'AW',
name: 'Aruba',
currency_code: 'AWG'
},
{
iso_code: 'AU',
name: 'Australia',
currency_code: 'AUD'
},
{
iso_code: 'AT',
name: 'Austria',
currency_code: 'EUR'
},
{
iso_code: 'AZ',
name: 'Azerbaijan',
currency_code: 'AZN'
},
{
iso_code: 'BS',
name: 'Bahamas',
currency_code: 'BSD'
},
{
iso_code: 'BH',
name: 'Bahrain',
currency_code: 'USD'
},
{
iso_code: 'BD',
name: 'Bangladesh',
currency_code: 'BDT'
},
{
iso_code: 'BB',
name: 'Barbados',
currency_code: 'BBD'
},
{
iso_code: 'BE',
name: 'Belgium',
currency_code: 'EUR'
},
{
iso_code: 'BZ',
name: 'Belize',
currency_code: 'BZD'
},
{
iso_code: 'BJ',
name: 'Benin',
currency_code: 'XOF'
},
{
iso_code: 'BM',
name: 'Bermuda',
currency_code: 'USD'
},
{
iso_code: 'BO',
name: 'Bolivia',
currency_code: 'BOB'
},
{
iso_code: 'BA',
name: 'Bosnia & Herzegovina',
currency_code: 'BAM'
},
{
iso_code: 'BW',
name: 'Botswana',
currency_code: 'BWP'
},
{
iso_code: 'BR',
name: 'Brazil',
currency_code: 'BRL'
},
{
iso_code: 'VG',
name: 'British Virgin Islands',
currency_code: 'USD'
},
{
iso_code: 'BN',
name: 'Brunei',
currency_code: 'BND'
},
{
iso_code: 'BG',
name: 'Bulgaria',
currency_code: 'BGN'
},
{
iso_code: 'BF',
name: 'Burkina Faso',
currency_code: 'XOF'
},
{
iso_code: 'BI',
name: 'Burundi',
currency_code: 'BIF'
},
{
iso_code: 'KH',
name: 'Cambodia',
currency_code: 'KHR'
},
{
iso_code: 'CM',
name: 'Cameroon',
currency_code: 'XAF'
},
{
iso_code: 'CA',
name: 'Canada',
currency_code: 'CAD'
},
{
iso_code: 'CV',
name: 'Cape Verde',
currency_code: 'CVE'
},
{
iso_code: 'KY',
name: 'Cayman Islands',
currency_code: 'KYD'
},
{
iso_code: 'TD',
name: 'Chad',
currency_code: 'XAF'
},
{
iso_code: 'CL',
name: 'Chile',
currency_code: 'CLP'
},
{
iso_code: 'CN',
name: 'China',
currency_code: 'CNY'
},
{
iso_code: 'CO',
name: 'Colombia',
currency_code: 'COP'
},
{
iso_code: 'KM',
name: 'Comoros',
currency_code: 'KMF'
},
{
iso_code: 'CG',
name: 'Congo - Brazzaville',
currency_code: 'XAF'
},
{
iso_code: 'CK',
name: 'Cook Islands',
currency_code: 'NZD'
},
{
iso_code: 'CR',
name: 'Costa Rica',
currency_code: 'CRC'
},
{
iso_code: 'CI',
name: 'Côte d’Ivoire',
currency_code: 'XOF'
},
{
iso_code: 'HR',
name: 'Croatia',
currency_code: 'EUR'
},
{
iso_code: 'CW',
name: 'Curaçao',
currency_code: 'USD'
},
{
iso_code: 'CY',
name: 'Cyprus',
currency_code: 'EUR'
},
{
iso_code: 'CZ',
name: 'Czechia',
currency_code: 'CZK'
},
{
iso_code: 'DK',
name: 'Denmark',
currency_code: 'DKK'
},
{
iso_code: 'DJ',
name: 'Djibouti',
currency_code: 'DJF'
},
{
iso_code: 'DM',
name: 'Dominica',
currency_code: 'XCD'
},
{
iso_code: 'DO',
name: 'Dominican Republic',
currency_code: 'DOP'
},
{
iso_code: 'EC',
name: 'Ecuador',
currency_code: 'USD'
},
{
iso_code: 'EG',
name: 'Egypt',
currency_code: 'EGP'
},
{
iso_code: 'SV',
name: 'El Salvador',
currency_code: 'USD'
},
{
iso_code: 'GQ',
name: 'Equatorial Guinea',
currency_code: 'XAF'
},
{
iso_code: 'EE',
name: 'Estonia',
currency_code: 'EUR'
},
{
iso_code: 'SZ',
name: 'Eswatini',
currency_code: 'SZL'
},
{
iso_code: 'ET',
name: 'Ethiopia',
currency_code: 'ETB'
},
{
iso_code: 'FK',
name: 'Falkland Islands',
currency_code: 'FKP'
},
{
iso_code: 'FO',
name: 'Faroe Islands',
currency_code: 'DKK'
},
{
iso_code: 'FJ',
name: 'Fiji',
currency_code: 'FJD'
},
{
iso_code: 'FI',
name: 'Finland',
currency_code: 'EUR'
},
{
iso_code: 'FR',
name: 'France',
currency_code: 'EUR'
},
{
iso_code: 'GF',
name: 'French Guiana',
currency_code: 'EUR'
},
{
iso_code: 'PF',
name: 'French Polynesia',
currency_code: 'XPF'
},
{
iso_code: 'GA',
name: 'Gabon',
currency_code: 'USD'
},
{
iso_code: 'GM',
name: 'Gambia',
currency_code: 'GMD'
},
{
iso_code: 'GE',
name: 'Georgia',
currency_code: 'GEL'
},
{
iso_code: 'DE',
name: 'Germany',
currency_code: 'EUR'
},
{
iso_code: 'GH',
name: 'Ghana',
currency_code: 'USD'
},
{
iso_code: 'GI',
name: 'Gibraltar',
currency_code: 'GBP'
},
{
iso_code: 'GR',
name: 'Greece',
currency_code: 'EUR'
},
{
iso_code: 'GL',
name: 'Greenland',
currency_code: 'DKK'
},
{
iso_code: 'GD',
name: 'Grenada',
currency_code: 'XCD'
},
{
iso_code: 'GP',
name: 'Guadeloupe',
currency_code: 'EUR'
},
{
iso_code: 'GT',
name: 'Guatemala',
currency_code: 'GTQ'
},
{
iso_code: 'GG',
name: 'Guernsey',
currency_code: 'GBP'
},
{
iso_code: 'GN',
name: 'Guinea',
currency_code: 'GNF'
},
{
iso_code: 'GW',
name: 'Guinea-Bissau',
currency_code: 'XOF'
},
{
iso_code: 'GY',
name: 'Guyana',
currency_code: 'GYD'
},
{
iso_code: 'HT',
name: 'Haiti',
currency_code: 'HTG'
},
{
iso_code: 'HN',
name: 'Honduras',
currency_code: 'HNL'
},
{
iso_code: 'HK',
name: 'Hong Kong SAR',
currency_code: 'HKD'
},
{
iso_code: 'HU',
name: 'Hungary',
currency_code: 'HUF'
},
{
iso_code: 'IS',
name: 'Iceland',
currency_code: 'ISK'
},
{
iso_code: 'IN',
name: 'India',
currency_code: 'INR'
},
{
iso_code: 'ID',
name: 'Indonesia',
currency_code: 'IDR'
},
{
iso_code: 'IE',
name: 'Ireland',
currency_code: 'EUR'
},
{
iso_code: 'IM',
name: 'Isle of Man',
currency_code: 'GBP'
},
{
iso_code: 'IL',
name: 'Israel',
currency_code: 'ILS'
},
{
iso_code: 'IT',
name: 'Italy',
currency_code: 'EUR'
},
{
iso_code: 'JM',
name: 'Jamaica',
currency_code: 'JMD'
},
{
iso_code: 'JP',
name: 'Japan',
currency_code: 'JPY'
},
{
iso_code: 'JE',
name: 'Jersey',
currency_code: 'GBP'
},
{
iso_code: 'JO',
name: 'Jordan',
currency_code: 'USD'
},
{
iso_code: 'KZ',
name: 'Kazakhstan',
currency_code: 'KZT'
},
{
iso_code: 'KE',
name: 'Kenya',
currency_code: 'KES'
},
{
iso_code: 'KI',
name: 'Kiribati',
currency_code: 'USD'
},
{
iso_code: 'KW',
name: 'Kuwait',
currency_code: 'USD'
},
{
iso_code: 'KG',
name: 'Kyrgyzstan',
currency_code: 'KGS'
},
{
iso_code: 'LA',
name: 'Laos',
currency_code: 'LAK'
},
{
iso_code: 'LV',
name: 'Latvia',
currency_code: 'EUR'
},
{
iso_code: 'LB',
name: 'Lebanon',
currency_code: 'LBP'
},
{
iso_code: 'LS',
name: 'Lesotho',
currency_code: 'LSL'
},
{
iso_code: 'LR',
name: 'Liberia',
currency_code: 'LRD'
},
{
iso_code: 'LI',
name: 'Liechtenstein',
currency_code: 'CHF'
},
{
iso_code: 'LT',
name: 'Lithuania',
currency_code: 'EUR'
},
{
iso_code: 'LU',
name: 'Luxembourg',
currency_code: 'EUR'
},
{
iso_code: 'MO',
name: 'Macao SAR',
currency_code: 'MOP'
},
{
iso_code: 'MG',
name: 'Madagascar',
currency_code: 'USD'
},
{
iso_code: 'MW',
name: 'Malawi',
currency_code: 'MWK'
},
{
iso_code: 'MY',
name: 'Malaysia',
currency_code: 'MYR'
},
{
iso_code: 'MV',
name: 'Maldives',
currency_code: 'MVR'
},
{
iso_code: 'MT',
name: 'Malta',
currency_code: 'EUR'
},
{
iso_code: 'MQ',
name: 'Martinique',
currency_code: 'EUR'
},
{
iso_code: 'MR',
name: 'Mauritania',
currency_code: 'USD'
},
{
iso_code: 'MU',
name: 'Mauritius',
currency_code: 'MUR'
},
{
iso_code: 'YT',
name: 'Mayotte',
currency_code: 'EUR'
},
{
iso_code: 'MX',
name: 'Mexico',
currency_code: 'MXN'
},
{
iso_code: 'MD',
name: 'Moldova',
currency_code: 'MDL'
},
{
iso_code: 'MC',
name: 'Monaco',
currency_code: 'EUR'
},
{
iso_code: 'MN',
name: 'Mongolia',
currency_code: 'MNT'
},
{
iso_code: 'ME',
name: 'Montenegro',
currency_code: 'EUR'
},
{
iso_code: 'MS',
name: 'Montserrat',
currency_code: 'XCD'
},
{
iso_code: 'MA',
name: 'Morocco',
currency_code: 'MAD'
},
{
iso_code: 'MZ',
name: 'Mozambique',
currency_code: 'MZN'
},
{
iso_code: 'NA',
name: 'Namibia',
currency_code: 'NAD'
},
{
iso_code: 'NR',
name: 'Nauru',
currency_code: 'AUD'
},
{
iso_code: 'NP',
name: 'Nepal',
currency_code: 'NPR'
},
{
iso_code: 'NL',
name: 'Netherlands',
currency_code: 'EUR'
},
{
iso_code: 'NC',
name: 'New Caledonia',
currency_code: 'XPF'
},
{
iso_code: 'NZ',
name: 'New Zealand',
currency_code: 'NZD'
},
{
iso_code: 'NI',
name: 'Nicaragua',
currency_code: 'NIO'
},
{
iso_code: 'NG',
name: 'Nigeria',
currency_code: 'NGN'
},
{
iso_code: 'NU',
name: 'Niue',
currency_code: 'NZD'
},
{
iso_code: 'MK',
name: 'North Macedonia',
currency_code: 'MKD'
},
{
iso_code: 'NO',
name: 'Norway',
currency_code: 'NOK'
},
{
iso_code: 'OM',
name: 'Oman',
currency_code: 'USD'
},
{
iso_code: 'PK',
name: 'Pakistan',
currency_code: 'PKR'
},
{
iso_code: 'PA',
name: 'Panama',
currency_code: 'USD'
},
{
iso_code: 'PG',
name: 'Papua New Guinea',
currency_code: 'PGK'
},
{
iso_code: 'PY',
name: 'Paraguay',
currency_code: 'PYG'
},
{
iso_code: 'PE',
name: 'Peru',
currency_code: 'PEN'
},
{
iso_code: 'PH',
name: 'Philippines',
currency_code: 'PHP'
},
{
iso_code: 'PL',
name: 'Poland',
currency_code: 'PLN'
},
{
iso_code: 'PT',
name: 'Portugal',
currency_code: 'EUR'
},
{
iso_code: 'QA',
name: 'Qatar',
currency_code: 'QAR'
},
{
iso_code: 'RE',
name: 'Réunion',
currency_code: 'EUR'
},
{
iso_code: 'RO',
name: 'Romania',
currency_code: 'RON'
},
{
iso_code: 'RW',
name: 'Rwanda',
currency_code: 'RWF'
},
{
iso_code: 'WS',
name: 'Samoa',
currency_code: 'WST'
},
{
iso_code: 'SM',
name: 'San Marino',
currency_code: 'EUR'
},
{
iso_code: 'ST',
name: 'São Tomé & Príncipe',
currency_code: 'STD'
},
{
iso_code: 'SA',
name: 'Saudi Arabia',
currency_code: 'SAR'
},
{
iso_code: 'SN',
name: 'Senegal',
currency_code: 'XOF'
},
{
iso_code: 'RS',
name: 'Serbia',
currency_code: 'RSD'
},
{
iso_code: 'SC',
name: 'Seychelles',
currency_code: 'SCR'
},
{
iso_code: 'SL',
name: 'Sierra Leone',
currency_code: 'SLL'
},
{
iso_code: 'SG',
name: 'Singapore',
currency_code: 'SGD'
},
{
iso_code: 'SX',
name: 'Sint Maarten',
currency_code: 'USD'
},
{
iso_code: 'SK',
name: 'Slovakia',
currency_code: 'EUR'
},
{
iso_code: 'SI',
name: 'Slovenia',
currency_code: 'EUR'
},
{
iso_code: 'SB',
name: 'Solomon Islands',
currency_code: 'SBD'
},
{
iso_code: 'ZA',
name: 'South Africa',
currency_code: 'ZAR'
},
{
iso_code: 'KR',
name: 'South Korea',
currency_code: 'KRW'
},
{
iso_code: 'ES',
name: 'Spain',
currency_code: 'EUR'
},
{
iso_code: 'LK',
name: 'Sri Lanka',
currency_code: 'LKR'
},
{
iso_code: 'BL',
name: 'St. Barthélemy',
currency_code: 'EUR'
},
{
iso_code: 'SH',
name: 'St. Helena',
currency_code: 'SHP'
},
{
iso_code: 'KN',
name: 'St. Kitts & Nevis',
currency_code: 'XCD'
},
{
iso_code: 'LC',
name: 'St. Lucia',
currency_code: 'XCD'
},
{
iso_code: 'MF',
name: 'St. Martin',
currency_code: 'EUR'
},
{
iso_code: 'VC',
name: 'St. Vincent & Grenadines',
currency_code: 'XCD'
},
{
iso_code: 'SR',
name: 'Suriname',
currency_code: 'SRD'
},
{
iso_code: 'SE',
name: 'Sweden',
currency_code: 'SEK'
},
{
iso_code: 'CH',
name: 'Switzerland',
currency_code: 'CHF'
},
{
iso_code: 'TW',
name: 'Taiwan',
currency_code: 'TWD'
},
{
iso_code: 'TZ',
name: 'Tanzania',
currency_code: 'TZS'
},
{
iso_code: 'TH',
name: 'Thailand',
currency_code: 'THB'
},
{
iso_code: 'TL',
name: 'Timor-Leste',
currency_code: 'USD'
},
{
iso_code: 'TG',
name: 'Togo',
currency_code: 'XOF'
},
{
iso_code: 'TO',
name: 'Tonga',
currency_code: 'TOP'
},
{
iso_code: 'TT',
name: 'Trinidad & Tobago',
currency_code: 'TTD'
},
{
iso_code: 'TN',
name: 'Tunisia',
currency_code: 'USD'
},
{
iso_code: 'TM',
name: 'Turkmenistan',
currency_code: 'USD'
},
{
iso_code: 'TC',
name: 'Turks & Caicos Islands',
currency_code: 'USD'
},
{
iso_code: 'TV',
name: 'Tuvalu',
currency_code: 'AUD'
},
{
iso_code: 'UG',
name: 'Uganda',
currency_code: 'UGX'
},
{
iso_code: 'AE',
name: 'United Arab Emirates',
currency_code: 'AED'
},
{
iso_code: 'GB',
name: 'United Kingdom',
currency_code: 'GBP'
},
{
iso_code: 'US',
name: 'United States',
currency_code: 'USD'
},
{
iso_code: 'UY',
name: 'Uruguay',
currency_code: 'UYU'
},
{
iso_code: 'UZ',
name: 'Uzbekistan',
currency_code: 'UZS'
},
{
iso_code: 'VU',
name: 'Vanuatu',
currency_code: 'VUV'
},
{
iso_code: 'VA',
name: 'Vatican City',
currency_code: 'EUR'
},
{
iso_code: 'VE',
name: 'Venezuela',
currency_code: 'USD'
},
{
iso_code: 'VN',
name: 'Vietnam',
currency_code: 'VND'
},
{
iso_code: 'WF',
name: 'Wallis & Futuna',
currency_code: 'XPF'
},
{
iso_code: 'ZM',
name: 'Zambia',
currency_code: 'ZMW'
},
{
iso_code: 'ZW',
name: 'Zimbabwe',
currency_code: 'USD'
}
]
};
const configUrl = "/a/elevar/static/configs/eaf3284a91c577096e0e52bbfe2a36e0b2d2c0a0/config.js";
const config = (await import(configUrl)).default;
const scriptUrl = config.script_src_app_theme_embed;
if (scriptUrl) {
const { handler } = await import(scriptUrl);
handler(
config,
{
cartData: {
marketId: "2320924695",
attributes:{},
cartTotal: "0.0",
currencyCode:"USD",
items: []
}
,
user: {cartTotal: "0.0",
currencyCode:"USD",customer: {},
}
,
isOnCartPage:false,
collectionView:null,
searchResultsView:null,
productView:null,
checkoutComplete: null
}
);
}
(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 24040041,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: ""};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());
(function e(e,d,r,n,o,i){if(void 0===i&&(i={}),!Boolean(null===(t=null===(a=window.Shopify)||void 0===a?void 0:a.analytics)||void 0===t?void 0:t.replayQueue)){var a,t;window.Shopify=window.Shopify||{};var s=window.Shopify;s.analytics=s.analytics||{};var l=s.analytics;l.replayQueue=[],l.publish=function(e,d,r){return l.replayQueue.push([e,d,r]),!0};try{self.performance.mark("wpm:start")}catch(e){}var u=function(){var e={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/},d=e.modern,r=e.legacy,n=navigator.userAgent;return n.match(d)?"modern":n.match(r)?"legacy":"unknown"}(),c="modern"===u?"modern":"legacy",f=(null!=o?o:{modern:"",legacy:""})[c],m=function(e){return[e.baseUrl,"/wpm","/b",e.hashVersion,"modern"===e.buildTarget?"m":"l",".js"].join("")}({baseUrl:r,hashVersion:n,buildTarget:c}),p=function(e){var d=e.version,r=e.bundleTarget,n=e.surface,o=e.pageUrl,i=e.monorailEndpoint;return{emit:function(e){var a=e.status,t=e.errorMsg,s=(new Date).getTime(),l=JSON.stringify({metadata:{event_sent_at_ms:s},events:[{schema_id:"web_pixels_manager_load/3.1",payload:{version:d,bundle_target:r,page_url:o,status:a,surface:n,error_msg:t},metadata:{event_created_at_ms:s}}]});if(!i)return console&&console.warn&&console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."),!1;try{return self.navigator.sendBeacon.bind(self.navigator)(i,l)}catch(e){}var u=new XMLHttpRequest;try{return u.open("POST",i,!0),u.setRequestHeader("Content-Type","text/plain"),u.send(l),!0}catch(e){return console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."),!1}}}}({version:n,bundleTarget:u,surface:e.surface,pageUrl:self.location.href,monorailEndpoint:e.monorailEndpoint});try{i.browserTarget=u,function(e){var d=e.src,r=e.async,n=void 0===r||r,o=e.onload,i=e.onerror,a=e.sri,t=e.scriptDataAttributes,s=void 0===t?{}:t,l=document.createElement("script"),u=document.querySelector("head"),c=document.querySelector("body");if(l.async=n,l.src=d,a&&(l.integrity=a,l.crossOrigin="anonymous"),s)for(var f in s)if(Object.prototype.hasOwnProperty.call(s,f))try{l.dataset[f]=s[f]}catch(e){}if(o&&l.addEventListener("load",o),i&&l.addEventListener("error",i),u)u.appendChild(l);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(l)}}({src:m,async:!0,onload:function(){if(!function(){var e,d;return Boolean(null===(d=null===(e=window.Shopify)||void 0===e?void 0:e.analytics)||void 0===d?void 0:d.initialized)}()){var r=window.webPixelsManager.init(e)||void 0;if(r){d(r);var n=window.Shopify.analytics;n.replayQueue.forEach((function(e){var d=e[0],n=e[1],o=e[2];r.publishCustomEvent(d,n,o)})),n.replayQueue=[],n.publish=r.publishCustomEvent,n.visitor=r.visitor,n.initialized=!0}}},onerror:function(){return p.emit({status:"failed",errorMsg:"".concat(m," has failed to load")})},sri:function(e){var d=/^sha384-[A-Za-z0-9+/=]+$/;return"string"==typeof e&&d.test(e)}(f)?f:"",scriptDataAttributes:i}),p.emit({status:"loading"})}catch(e){p.emit({status:"failed",errorMsg:(null==e?void 0:e.message)||"Unknown error"})}}})({shopId: 24040041,storefrontBaseUrl: "https://rayconglobal.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://monorail-edge.shopifysvc.com/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["ac843a20","c2aeb305"],webPixelsConfigList: [{"id":"873791511","configuration":"{\"pixelCode\":\"C9UJV83C77UDNJM2S2I0\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"22e92c2ad45662f435e4801458fb78cc","type":"APP","apiClientId":4383523,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"762085399","configuration":"{\"eventKey\":\"197c4174-a796-4e5f-9c70-ea44be1047b3\",\"name\":\"offline_raycon.myshopify.com - Axon Pixel\",\"storefrontToken\":\"c48c136974cfe4555a5f67712a06f508\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"ce3d8327c7309868842e0deacbac9e1c","type":"APP","apiClientId":256560922625,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"658243607","configuration":"{\"shopId\":\"3994\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"df3eab2acfae0f9736d5f0beef4f0e12","type":"APP","apiClientId":2328352,"privacyPurposes":[]},{"id":"638124055","configuration":"{\"webPixelName\":\"Judge.me\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"34ad157958823915625854214640f0bf","type":"APP","apiClientId":683015,"privacyPurposes":["ANALYTICS"]},{"id":"527695895","configuration":"{\"Enabled\":\"false\",\"DeveloperPreview\":\"false\",\"UpdatedAt\":\"2025-07-07T17:09:36.754Z\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"a88c6bc673328d00c03f62e992fd9a1d","type":"APP","apiClientId":34646425601,"privacyPurposes":["MARKETING"]},{"id":"518717463","configuration":"{\"accountID\":\"LuhenE\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"cbf4a80740670c5ae93d33dc67925b9a","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"407470103","configuration":"{\"shopId\":\"raycon.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c450aafa71fd8ebee479d56f323c88c7","type":"APP","apiClientId":4845829,"privacyPurposes":["ANALYTICS"]},{"id":"407339031","configuration":"{\"accountID\":\"1220658\",\"workspaceId\":\"f3180089-b890-48ef-9464-c496e212cf54\",\"projectId\":\"fb26f090-0ab1-4b11-bb96-9f0ab37adae9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"52fc54f4608fa63b89d7f7c4f9344a98","type":"APP","apiClientId":5461967,"privacyPurposes":["ANALYTICS"]},{"id":"304644119","configuration":"{\"shopDomain\":\"raycon.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c6461d5a144e49a75a12576eff5a7a45","type":"APP","apiClientId":2436932,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"200441879","configuration":"{\"hashed_organization_id\":\"5d6f70e26cc4422e7f895a9db17fa18a_v1\",\"app_key\":\"raycon\",\"allow_collect_personal_data\":\"true\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"e3e0831cd148c7879088e60c3878e2ab","type":"APP","apiClientId":4551725,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"180322327","configuration":"{\"accountId\":\"Global-e\",\"merchantId\":\"1720\",\"baseApiUrl\":\"https://checkout-service.global-e.com/api/v1\",\"siteId\":\"7ce243a1e1a2\",\"BorderfreeMetaCAPIEnabled\":\"False\",\"FT_IsLegacyAnalyticsSDKEnabled\":\"True\",\"FT_IsAnalyticsSDKEnabled\":\"False\",\"CDNUrl\":\"https://webservices.global-e.com/\",\"BfGoogleAdsEnabled\":\"false\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"3b7d4a85f84a93cfc6e27afcf2df3c8b","type":"APP","apiClientId":5806573,"privacyPurposes":["SALE_OF_DATA"]},{"id":"2719767","configuration":"{\"northbeamId\": \"89574596_2232_4ac4_a31d_4adf38d20c77\", \"collectorDomain\": \"i.rayconglobal.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"e46c2d6352a678fc6581f4bd0bc772e1","type":"APP","apiClientId":3188721,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"1671191","configuration":"{\"config_url\": \"/a/elevar/static/configs/eaf3284a91c577096e0e52bbfe2a36e0b2d2c0a0/config.js\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"b3be987a89c30285d51c8f3465eaad8f","type":"APP","apiClientId":2509311,"privacyPurposes":[]},{"id":"20480023","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"3","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"applovin-pixel"},{"id":"24346647","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":[],"name":"Elevar - Checkout Tracking"},{"id":"24543255","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["SALE_OF_DATA"],"name":"Northbeam - Checkout"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0440","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0440","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Raycon ","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"raycon.myshopify.com","countryCode":"US","storefrontUrl":"https://rayconglobal.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"purchasingCompany":null},},function pageEvents(webPixelsManagerAPI) {webPixelsManagerAPI.publish("page_viewed", {});},"https://rayconglobal.com/cdn","73b305c4w82c1918fpb7086179m603a4010",{"modern":"","legacy":""},{"shopId":"24040041","storefrontBaseUrl":"https://rayconglobal.com","extensionBaseUrl":"https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"ac843a20\", \"c2aeb305\"]","isMerchantRequest":"false","hashVersion":"73b305c4w82c1918fpb7086179m603a4010","publish":"custom"});
window.ShopifyAnalytics = window.ShopifyAnalytics || {};
window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
window.ShopifyAnalytics.meta.currency = 'USD';
var meta = {"page":{}};
for (var attr in meta) {
window.ShopifyAnalytics.meta[attr] = meta[attr];
}
(function () {
var customDocumentWrite = function(content) {
var jquery = null;
if (window.jQuery) {
jquery = window.jQuery;
} else if (window.Checkout && window.Checkout.$) {
jquery = window.Checkout.$;
}
if (jquery) {
jquery('body').append(content);
}
};
var hasLoggedConversion = function(token) {
if (token) {
return document.cookie.indexOf('loggedConversion=' + token) !== -1;
}
return false;
}
var setCookieIfConversion = function(token) {
if (token) {
var twoMonthsFromNow = new Date(Date.now());
twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
}
}
var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
if (trekkie.integrations) {
return;
}
trekkie.methods = [
'identify',
'page',
'ready',
'track',
'trackForm',
'trackLink'
];
trekkie.factory = function(method) {
return function() {
var args = Array.prototype.slice.call(arguments);
args.unshift(method);
trekkie.push(args);
return trekkie;
};
};
for (var i = 0; i < trekkie.methods.length; i++) {
var key = trekkie.methods[i];
trekkie[key] = trekkie.factory(key);
}
trekkie.load = function(config) {
trekkie.config = config || {};
trekkie.config.initialDocumentCookie = document.cookie;
var first = document.getElementsByTagName('script')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.onerror = function(e) {
var scriptFallback = document.createElement('script');
scriptFallback.type = 'text/javascript';
scriptFallback.onerror = function(error) {
var Monorail = {
produce: function produce(monorailDomain, schemaId, payload) {
var currentMs = new Date().getTime();
var event = {
schema_id: schemaId,
payload: payload,
metadata: {
event_created_at_ms: currentMs,
event_sent_at_ms: currentMs
}
};
return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
},
sendRequest: function sendRequest(endpointUrl, payload) {
// Try the sendBeacon API
if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
var blobData = new window.Blob([payload], {
type: 'text/plain'
});
if (window.navigator.sendBeacon(endpointUrl, blobData)) {
return true;
} // sendBeacon was not successful
} // XHR beacon
var xhr = new XMLHttpRequest();
try {
xhr.open('POST', endpointUrl);
xhr.setRequestHeader('Content-Type', 'text/plain');
xhr.send(payload);
} catch (e) {
console.log(e);
}
return false;
},
isIos12: function isIos12() {
return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
}
};
Monorail.produce('monorail-edge.shopifysvc.com',
'trekkie_storefront_load_errors/1.1',
{shop_id: 24040041,
theme_id: 168369618967,
app_name: "storefront",
context_url: window.location.href,
source_url: "//rayconglobal.com/cdn/s/trekkie.storefront.5a4f78eb26ea594ba1b5d72f179d68114c7cf8ca.min.js"});
};
scriptFallback.async = true;
scriptFallback.src = '//rayconglobal.com/cdn/s/trekkie.storefront.5a4f78eb26ea594ba1b5d72f179d68114c7cf8ca.min.js';
first.parentNode.insertBefore(scriptFallback, first);
};
script.async = true;
script.src = '//rayconglobal.com/cdn/s/trekkie.storefront.5a4f78eb26ea594ba1b5d72f179d68114c7cf8ca.min.js';
first.parentNode.insertBefore(script, first);
};
trekkie.load(
{"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":24040041,"isMerchantRequest":null,"themeId":168369618967,"themeCityHash":"727856793334106366","contentLanguage":"en","currency":"USD"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}}
);
var loaded = false;
trekkie.ready(function() {
if (loaded) return;
loaded = true;
window.ShopifyAnalytics.lib = window.trekkie;
var originalDocumentWrite = document.write;
document.write = customDocumentWrite;
try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
document.write = originalDocumentWrite;
window.ShopifyAnalytics.lib.page(null,{"shopifyEmitted":true});
var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
var token = match? match[1]: undefined;
if (!hasLoggedConversion(token)) {
setCookieIfConversion(token);
}
});
var eventsListenerScript = document.createElement('script');
eventsListenerScript.async = true;
eventsListenerScript.src = "//rayconglobal.com/cdn/shopifycloud/storefront/assets/shop_events_listener-8675b082.js";
document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
})();
if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
window.ga = function ga() {
(window.ga.q = window.ga.q || []).push(arguments);
if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
}
console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
};
if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
}
}