PageSourceSearch

https://uberlyfe.com/cdn/shop/t/99/assets/theme.min.js?v=2805112454066744651763093888

js uberlyfe.com collected 2026-10-05 09:35:06 UTC 77,828 bytes, 1,209 lines download raw bytes

1// class NewsletterValidation extends HTMLElement{constructor(){super(),document.querySelector(".newsletter_btn").addEventListener("click",this.CheckValidation.bind(this))}CheckValidation(e){this.querySelector(".newsletter_err").innerHTML="";const t=document.querySelector(".email"),r=document.querySelector(".newsletter_err");if(t.value){if(t.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))return!0;r.innerHTML="Valid email address is required",t.focus(),e.preventDefault()}else r.innerHTML="Email address is required",t.focus(),e.preventDefault()}}customElements.define("newsletter-tag",NewsletterValidation);class LoadMore extends HTMLElement{constructor(){super(),this.querySelector(".load_more").addEventListener("click",this.LoadMoreData.bind(this))}LoadMoreData(e){e.preventDefault();const t=window.location.search.substring(1),r=document.querySelector(".colle_item").dataset.next;if(t)var o=r+"&"+t;else o=r;o&&(this.classList.add("loading"),fetch(o).then(e=>e.text()).then(e=>{const t=(new DOMParser).parseFromString(e,"text/html"),r=document.querySelector(".colle_item"),o=t.querySelector(".colle_item");r.innerHTML+=o.innerHTML,r.dataset.next=o.dataset.next,""==o.dataset.next?(this.classList.remove("loading"),this.classList.add("no-product")):this.classList.add("loading"),this.classList.remove("loading");var api=new Yotpo.API(yotpo);api.refreshWidgets()}),SetWishlist())}}customElements.define("load-more",LoadMore);class LoadMoreColle extends HTMLElement{constructor(){super(),this.querySelector(".load_more_colle").addEventListener("click",this.LoadMoreDataColl.bind(this))}LoadMoreDataColl(e){e.preventDefault();const t=window.location.search.substring(1),r=document.querySelector(".main_grid").dataset.next;if(t)var o=r+"&"+t;else o=r;o&&(this.classList.add("loading"),fetch(o).then(e=>e.text()).then(e=>{const t=(new DOMParser).parseFromString(e,"text/html"),r=document.querySelector(".main_grid"),o=t.querySelector(".main_grid");r.innerHTML+=o.innerHTML,r.dataset.next=o.dataset.next,""==o.dataset.next?(this.classList.remove("loading"),this.classList.add("no-product")):this.classList.add("loading"),this.classList.remove("loading")}))}}customElements.define("load-more-colle",LoadMoreColle);/*class CollectionFilter extends HTMLElement{constructor(){super(),this.filterOption=[],console.log(12);this.main_form=document.getElementById("filter-form-id"),this.active_filter=document.querySelector(".active_filter_cls"),this.active_filter_mobile=document.querySelector(".mobile_active_filter_cls"),this.debounce=(e=>{let t;return function(){const r=this,o=arguments;clearTimeout(t),t=setTimeout(()=>e.apply(r,o),500)}}),this.querySelector("form").addEventListener("input",this.debounce(this.applyFilter.bind(this))),document.querySelectorAll("#active_option_id").length>0&&document.querySelectorAll(".active_option_cls").forEach(e=>{e.addEventListener("click",this.removeFilter.bind(this))}),this.HideEmptyActivePart(),""==this.active_filter.textContent.trim()&&(this.active_filter.innerHTML=""),""==this.active_filter_mobile.textContent.trim()&&(this.active_filter_mobile.innerHTML="")}applyFilter(e){"sort_by"==e.target.name&&document.body.classList.contains("filter_menu")&&document.body.classList.remove("filter_menu");const t=new FormData(e.target.closest("form")),r=new URLSearchParams(t).toString();this.getPage(r,e)}resetFilter(e){e.preventDefault();e.target.href;this.getPage(new URL(e.target.href).searchParams.toString())}removeFilter(e){e.preventDefault(),e.target.classList.contains("apply_all_cls")?document.body.classList.contains("filter_menu")&&document.body.classList.remove("filter_menu"):(console.log(e.target),this.getPage(new URL(e.target.href).searchParams.toString()),this.main_form.querySelectorAll(".filter-drop").forEach(e=>{e.classList.remove("open")}))}getPage(e,t){this.getSection().map(r=>{const o=window.location.pathname+"?section_id="+r.section+"&"+e,n=e=>e.url===o;this.filterOption.some(n)?this.renderFromArray(n,r,t):this.renderFromUrl(o,r,t),this.updateUrl(e)})}renderFromUrl(e,t,r){fetch(e).then(e=>e.text()).then(t=>{const o=t;this.filterOption=[...this.filterOption,{response_html:o,url:e}
1],"true"==this.main_form.dataset.filter&&this.renderFilter(o,r),this.renderProductList(o)})}renderFromArray(e,t,r){const o=this.filterOption.find(e).response_html;"true"==this.main_form.dataset.filter&&this.renderFilter(o,r),this.renderProductList(o)}renderFilter(e,t){const r=(new DOMParser).parseFromString(e,"text/html").querySelectorAll("#filter-form-id .filter_option_cls");Array.from(r).forEach(e=>{document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"]').innerHTML=e.innerHTML,document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"]').classList.contains("open")?document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"] .filter__dec').style.display="block":document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"] .filter__dec').style.display="none"}),this.renderActiveFilter(e)}renderProductList(e){const t=(new DOMParser).parseFromString(e,"text/html"),r=document.getElementById("main_collection_cls");r.innerHTML=t.getElementById("main_collection_cls").innerHTML,"true"==this.main_form.dataset.pagination&&t.getElementById("main_collection_cls").dataset.next&&(r.dataset.next=t.getElementById("main_collection_cls").dataset.next);var api=new Yotpo.API(yotpo);api.refreshWidgets()}renderActiveFilter(e){[".active_filter_cls",".mobile_active_filter_cls"].forEach(t=>{const r=(new DOMParser).parseFromString(e,"text/html");r.querySelector(t)&&(document.querySelector(t).innerHTML=r.querySelector(t).innerHTML)}),this.HideEmptyActivePart(),this.setResetButton(),this.setRemoveButton()}HideEmptyActivePart(){""==this.active_filter.textContent.trim()?(this.active_filter.innerHTML="",this.active_filter.style.display="none"):this.active_filter.style.display="flex",""==this.active_filter_mobile.textContent.trim()?(this.active_filter_mobile.innerHTML="",this.active_filter_mobile.style.display="none"):this.active_filter_mobile.style.display="flex"}setResetButton(){document.querySelectorAll(".reset_filter").forEach(e=>{e.addEventListener("click",this.resetFilter.bind(this))})}setRemoveButton(){document.querySelectorAll(".active_option_cls").forEach(e=>{e.addEventListener("click",this.removeFilter.bind(this))})}getSection(){return[{id:"main_collection_cls",section:document.getElementById("main_collection_cls").dataset.id}]}updateUrl(e){history.pushState({},"",`${window.location.pathname}${e&&"?".concat(e)}`)}}customElements.define("filter-menu",CollectionFilter);*/class PriceFieldFilter extends HTMLElement{constructor(){super(),this.querySelectorAll("input").forEach(e=>{e.addEventListener("change",this.onInputField.bind(this))}),this.setMinMaxVal()}onInputField(e){this.setMinMaxVal()}setMinMaxVal(){const e=this.querySelectorAll("input"),t=e[0],r=e[1];r.value&&t.setAttribute("max",r.value),t.value&&r.setAttribute("min",t.value),""===t.value&&t.setAttribute("min",t.min),""===r.value&&r.setAttribute("max",r.getAttribute("max"))}}customElements.define("price-field",PriceFieldFilter);class Cart extends HTMLElement{constructor(){super()}updateQuantity(e,t,r){var o={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({line:e,quantity:t})};fetch("/cart/change.js",o).then(e=>e.json()).then(e=>{var t="";"drawer"==r?t="/":"cart"==r&&(t="/cart"),update_cart_drawer(t)})}}customElements.define("cart-item",Cart);class CartItemRemove extends HTMLElement{constructor(){super(),this.querySelectorAll(".cart_item_remove").forEach(e=>{e.addEventListener("click",function(e){e.preventDefault(),this.closest("cart-item").updateQuantity(this.dataset.index,0,this.dataset.class)})})}}customElements.define("cart-remove",CartItemRemove);class ChangeQuantity extends Cart{constructor(){super(),this.input=this.querySelector("input"),this.querySelectorAll(".update_qnt_btn").forEach(e=>e.addEventListener("click",this.ChangeVal.bind(this,e))),this.querySelectorAll(".quantity-input").forEach(e=>e.addEventListener("change",this.ChangeVal.bind(this,e)))}ChangeVal(e,t){"click"==t.type&&("plus"===e.dataset.name?this.input.stepUp():this.input.stepDown());var r=e.dataset.index,o=parseInt(this.input.value),n=parseInt(this.input.dataset.max),i=this.input.dataset.title,l=this.input.dataset.class;if(void 0!==this.input.dataset.max)if(n>=o)this.updateQuantity(r,o,l);else{var s=this;this.closest("tr").querySelector(".cart_error").innerHTML="All "+n+' "'+i+'" product are in y
1our cart.',setTimeout(function(){s.closest("tr").querySelector(".cart_error").innerHTML="",s.updateQuantity(r,n,l)},4e3),this.input.value=n}else this.updateQuantity(r,o,l)}}customElements.define("quantity-input",ChangeQuantity);class AddToCart extends HTMLElement{constructor(){super(),this.querySelectorAll(".add_to_cart_btn").forEach(t=>{t.addEventListener("click",this.addToCart.bind(this))})}addToCart(t){t.preventDefault();var e=this.querySelector(".add_to_cart_btn"),a=this.querySelector("input[name='id']").value;e.classList.add("loading");var d={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({id:a,quantity:1})};fetch("/cart/add.js",d).then(t=>t.json()).then(t=>{update_cart_drawer("/"),setTimeout(function(){document.body.classList.add("cartDrawer"),e.classList.remove("loading")},600)}).catch(function(t){console.log("Request failed",t)})}}customElements.define("add-to-cart",AddToCart);class PinCodeVerify extends HTMLElement{constructor(){super();const e=document.querySelector(".verify_btn");this.input=document.querySelector(".pin_code_text"),e.addEventListener("click",this.VerifyPincode.bind(this))}VerifyPincode(e){if(e.preventDefault(),this.querySelector(".erroe-msg").innerHTML="",""==this.input.value)this.querySelector(".erroe-msg").innerHTML="Please enter pincode",this.querySelector(".erroe-msg").style.color="red";else{const e=this.querySelector("[data-ele='pincodes_file']").dataset.file,r=this.input.value;var t=!1;console.log(e),fetch(e).then(e=>e.text()).then(e=>{for(var o=e.split("\n"),n=0;n<o.length;n++){var i=o[n].split(",");""!=i[0]&&i[0]==r&&(t=!0,this.querySelector(".erroe-msg").innerHTML=i[3],this.querySelector(".erroe-msg").style.color="green")}0==t&&(this.querySelector(".erroe-msg").innerHTML="Sorry, Delivery not available on your location",this.querySelector(".erroe-msg").style.color="red")})}}}customElements.define("location-verify",PinCodeVerify);class ChangeProductQuantity extends HTMLElement{constructor(){super(),this.input=this.querySelector("input"),this.querySelectorAll(".update_qnt_btn").forEach(e=>e.addEventListener("click",this.ChangeVal.bind(this,e)))}ChangeVal(e,t){"plus"===e.dataset.name?this.input.stepUp():this.input.stepDown()}}var form;(customElements.define("quantity-input-button",ChangeProductQuantity),document.querySelector("button.add_to_cart_button")&&document.querySelector("button.add_to_cart_button").addEventListener("click",function(e){e.preventDefault();var t=this;this.form=this.closest("form");var r=this.form.querySelector("input[name='id']").value,o=1;this.form.querySelector(".quantity-input")&&(o=this.form.querySelector(".quantity-input").value);var n={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({id:r,quantity:o})};t.classList.add("loading"),fetch("/cart/add.js",n).then(e=>e.json()).then(e=>{update_cart_drawer("/"),setTimeout(function(){document.body.classList.add("cartDrawer"),t.classList.remove("loading")},600)}).catch(function(e){console.log("Request failed",e)})}),document.querySelectorAll(".testimonial_img").forEach(e=>{e.addEventListener("click",function(){if(document.body.classList.add("popupmodal"),this.parentNode.querySelector(".modal_body"))var e=this.parentNode.querySelector(".modal_body").innerHTML;var t=document.querySelector(".modal");void 0!==e&&null!=e&&(t.querySelector(".modal_body").innerHTML=e)})}),document.querySelectorAll(".modal-i-close").forEach(e=>{e.addEventListener("click",function(){document.body.classList.remove("popupmodal")})}),window.addEventListener("load",e=>{if(document.querySelector(".testimonial-grid")){for(var t=document.querySelector(".testimonial-grid").querySelectorAll("li.li_list").length,r=document.querySelector(".testimonial-grid").dataset.limit,o=0;o<r;o++)void 0!==document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o]&&document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.contains("inactive")&&(document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.remove("inactive"),document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.add("active"));document.querySelector(".monial_grid .load_more_testimonials").style.display=t>r?"inline-block":"none"}}),document.querySelector(".monial_grid .load_more_testimonials")&&document.querySelector(".monial_grid .load_more_testimonials").addEventListener("click",function(){for(var e=document.querySelector(".testimonial-grid").dataset.limit,t=0;t<e;t++)document.querySelector(".testimonial-grid").querySelectorAll("li.inactive")[0]&&document.querySelector(".testimonial-grid").querySelectorAll("li.inactive")[0].classList.remove("inactive");check_load_more()}),document.querySelector(".contact_us_btn"))&&((form=document.querySelector(".contact_us_btn").closest("form")).querySelectorAll(".form__field").forEach((e,t)=>{e.addEventListener("keyup",function(e){checkVal(form)})}),form.querySelector(".contact_us_btn").addEventListener("click",function(e){var t=form.querySelector(".name"),r=form.querySelector(".email"),o=form.querySelector(".phone_no"),n=form.querySelector(".message"),i=form.querySelector(".alert--error");
1if(t.value)if(r.value)if(r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))if(o.value){if(n.value)return!0;i.innerHTML="Enter your message",n.focus(),e.preventDefault()}else i.innerHTML="Enter your phone number",o.focus(),e.preventDefault();else i.innerHTML="Enter your valid email address",r.focus(),e.preventDefault();else i.innerHTML="Enter your email address",r.focus(),e.preventDefault();else i.innerHTML="Enter your name",t.focus(),e.preventDefault()}));document.querySelector(".registration_btn")&&(form=document.querySelector(".registration_btn").closest("form")).querySelector(".registration_btn").addEventListener("click",function(e){var t=form.querySelector(".fname"),r=form.querySelector(".lname"),o=form.querySelector(".email"),n=form.querySelector(".password"),i=form.querySelector(".alert--error");if(t.value)if(r.value)if(o.value)if(o.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))if(n.value){if(!(n.value.length<5))return!0;i.innerHTML="Password is too short (minimum is 5 characters)",n.focus(),e.preventDefault()}else i.innerHTML="Enter your password",n.focus(),e.preventDefault();else i.innerHTML="Enter your valid email address",o.focus(),e.preventDefault();else i.innerHTML="Enter your email address",o.focus(),e.preventDefault();else i.innerHTML="Enter your last name",r.focus(),e.preventDefault();else i.innerHTML="Enter your first name",t.focus(),e.preventDefault()});function update_cart_drawer(e){fetch(e).then(e=>e.text()).then(e=>{var t=(new DOMParser).parseFromString(e,"text/html"),r=0;t.querySelector(".cart_cls")&&(r=t.querySelector(".cart_cls").dataset.item,document.querySelector(".cart_cls").innerHTML=t.querySelector(".cart_cls").innerHTML),t.querySelector(".cart_drawer_update")&&(r=t.querySelector(".cart_drawer_update").dataset.item,document.querySelector(".cart_drawer_update").innerHTML=t.querySelector(".cart_drawer_update").innerHTML),r>0?(document.querySelector(".cart_bubble").style.display="flex",document.querySelector(".cart_bubble").innerHTML=r):document.querySelector(".cart_bubble").style.display="none"})}function check_load_more(){var e=document.querySelector(".testimonial-grid").querySelectorAll("li.inactive").length,t=document.querySelector(".testimonial-grid").dataset.limit;e>=parseInt(t)?document.querySelector(".monial_grid .load_more_testimonials").style.display="block":document.querySelector(".monial_grid .load_more_testimonials").style.display="none"}function checkVal(e){var t=e.querySelector(".name"),r=e.querySelector(".email"),o=e.querySelector(".phone_no"),n=e.querySelector(".message");""!=t.value&&""!=r.value&&""!=o.value&&""!=n.value?e.querySelector(".contact_us_btn").classList.remove("disabled"):e.querySelector(".contact_us_btn").classList.add("disabled")}document.querySelector(".login_btn")&&document.querySelector(".login_btn").addEventListener("click",function(e){var t=this.closest(".login_form"),r=t.querySelector(".email"),o=t.querySelector(".password"),n=t.querySelector(".alert--error");if(r.value)if(r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)){if(o.value)return!0;n.innerHTML="Enter your password",o.focus(),e.preventDefault()}else n.innerHTML="Enter your valid email address",r.focus(),e.preventDefault();else n.innerHTML="Enter your email address",r.focus(),e.preventDefault()}),document.querySelector(".forgot_pass_btn")&&document.querySelector(".forgot_pass_btn").addEventListener("click",function(e){var t=this.closest(".recover-pss"),r=t.querySelector(".email"),o=t.querySelector(".alert--error");if(r.value){if(r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))return!0;o.innerHTML="Enter your valid email address",r.focus(),e.preventDefault()}else o.innerHTML="Enter your email address",r.focus(),e.preventDefault()}),document.querySelector(".activate_acc_btn")&&document.querySelector(".activate_acc_btn").addEventListener("click",function(e){var t=this.closest(".form"),r=t.querySelector(".password"),o=t.querySelector(".confirm_password"),n=t.querySelector(".alert--error");
1if(r.value)if(o.value){if(r.value==o.value)return!0;n.innerHTML="Password does not match with confirm password",o.focus(),o.value="",e.preventDefault()}else n.innerHTML="Enter your confirm password",o.focus(),e.preventDefault();else n.innerHTML="Enter your password",r.focus(),e.preventDefault()}),document.querySelector(".reset_pass_btn")&&document.querySelector(".reset_pass_btn").addEventListener("click",function(e){var t=this.closest(".form"),r=t.querySelector(".password"),o=t.querySelector(".confirm_password"),n=t.querySelector(".alert--error");if(r.value)if(o.value){if(r.value==o.value)return!0;n.innerHTML="Password does not match with confirm password",o.focus(),o.value="",e.preventDefault()}else n.innerHTML="Enter your confirm password",o.focus(),e.preventDefault();else n.innerHTML="Enter your password",r.focus(),e.preventDefault()}),document.querySelector(".btn_address")&&document.querySelectorAll(".btn_address").forEach(e=>{e.addEventListener("click",function(e){var t=this.closest("form"),r=t.querySelector(".fname"),o=t.querySelector(".lname"),n=t.querySelector(".company"),i=t.querySelector(".add1"),l=t.querySelector(".city"),s=t.querySelector(".selcountry"),c=t.querySelector(".zipcode"),a=t.querySelector(".phone_no");t.querySelectorAll(".form-error").forEach(e=>{e.style.display="none"});var u=[];if(r.value?o.value?n.value?i.value?l.value?"---"==s.value?(s.focus(),u.push("selcountry"),e.preventDefault()):c.value?a.value||(a.focus(),u.push("phone_no"),e.preventDefault()):(c.focus(),u.push("zipcode"),e.preventDefault()):(l.focus(),u.push("city"),e.preventDefault()):(i.focus(),u.push("add1"),e.preventDefault()):(n.focus(),u.push("company"),e.preventDefault()):(o.focus(),u.push("lname"),e.preventDefault()):(r.focus(),u.push("fname"),e.preventDefault()),u.length>0){var d="";return d="selcountry"==u[0]?"please select country":"* This field is required",t.querySelector(".err-"+u[0]).innerHTML=d,t.querySelector(".err-"+u[0]).style.display="block",t.querySelector("."+u[0]).focus(),!1}return t.querySelector(".form-error").style.display="none",!0})}),document.querySelector(".province_cls")&&document.querySelectorAll(".province_cls").forEach(e=>{e.addEventListener("change",function(){this.closest("form").querySelector(".err-selcountry").style.display="none"})}),document.addEventListener("DOMContentLoaded",function(e){document.querySelector(".faq-panel")&&document.querySelectorAll(".faq-panel").forEach(e=>{""==e.querySelector(".faq-inner-panel").innerHTML.trim()&&e.remove()})}),document.querySelector(".serch_icon_")&&document.querySelector(".serch_icon_").addEventListener("click",function(){document.body.classList.add("search_bar")}),document.querySelector(".close-icon")&&document.querySelector(".close-icon").addEventListener("click",function(){document.body.classList.remove("search_bar")}),document.querySelector(".user_icon_")&&document.querySelector(".user_icon_").addEventListener("click",function(){document.body.classList.toggle("active"),document.querySelector(".currunt_ul").classList.toggle("show-menu")}),document.querySelector(".back_to_top")&&document.querySelector(".back_to_top").addEventListener("click",function(){window.scrollTo({top:0,behavior:"smooth"})});const debounce=(e,t)=>{let r;return function(){const o=this,n=arguments;clearTimeout(r),r=setTimeout(()=>e.apply(o,n),t)}};function CodeCopy(e){const t=document.querySelector("body"),r=document.createElement("textarea");t.appendChild(r),r.value=e,r.select(),document.execCommand("copy"),t.removeChild(r)}document.querySelector(".topbar_dec img.copy_icon_cls")&&document.querySelectorAll(".topbar_dec").forEach(e=>{e.querySelector("img.copy_icon_cls").addEventListener("click",function(e){e.preventDefault();var t=this.closest(".topbar-handline").querySelector("span").innerHTML;""==t&&void 0===t||(this.closest(".topbar_dec").querySelector(".Copied-text").style.display="block",CodeCopy(t)),debounce(function(e){e.closest(".topbar_dec").querySelector(".Copied-text").style.display="none"},2e3)(this)})}),document.querySelector(".discount-copy-img")&&document.querySelector(".discount-copy-img").addEventListener("click",function(){var e=this.closest(".discount-copy").querySelector(".discount_code").innerHTML;
1""==e&&void 0===e||(this.closest(".discount-copy").querySelector(".Copied-text").style.display="block",CodeCopy(e)),debounce(function(e){e.closest(".discount-copy").querySelector(".Copied-text").style.display="none"},2e3)(this)});document.querySelector(".buy_now_button")&&document.querySelector(".buy_now_button").addEventListener("click",(function(){var t=new Event("click",{bubbles:!0});document.querySelector(".shopify-payment-button")&&document.querySelector(".shopify-payment-button").querySelector('button[data-testid="Checkout-button"]').dispatchEvent(t)}));
2
3class NewsletterValidation extends HTMLElement {
4  constructor() {
5      super(), document.querySelector(".newsletter_btn").addEventListener("click", this.CheckValidation.bind(this));
6  }
7  CheckValidation(e) {
8    this.querySelector(".newsletter_err").innerHTML = "";
9    const t = document.querySelector(".email"),
10          r = document.querySelector(".newsletter_err");
11    if (t.value) {
12       if (t.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) return !0;
13        (r.innerHTML = "Valid email address is required"), t.focus(), e.preventDefault();
14    } else (r.innerHTML = "Email address is required"), t.focus(), e.preventDefault();
15  }
16}
17customElements.define("newsletter-tag", NewsletterValidation);
18
19class LoadMore extends HTMLElement {
20  constructor() {
21    super(), this.querySelector(".load_more").addEventListener("click", this.LoadMoreData.bind(this));
22  }
23  LoadMoreData(e) {
24    e.preventDefault();
25    const t = window.location.search.substring(1),
26        r = document.querySelector(".colle_item").dataset.next;
27    if (t) var o = r + "&" + t;
28    else o = r;
29    o &&
30        (this.classList.add("loading"),
31        fetch(o)
32            .then((e) => e.text())
33            .then((e) => {
34                const t = new DOMParser().parseFromString(e, "text/html"),
35                    r = document.querySelector(".colle_item"),
36                    o = t.querySelector(".colle_item");
37                (r.innerHTML += o.innerHTML),
38                    (r.dataset.next = o.dataset.next),
39                    "" == o.dataset.next ? (this.classList.remove("loading"), this.classList.add("no-product")) : this.classList.add("loading"),
40                    this.classList.remove("loading");
41                var api = new Yotpo.API(yotpo);
42                api.refreshWidgets();
43            }),
44        SetWishlist());
45  }
46}
47customElements.define("load-more", LoadMore);
48
49class LoadMoreColle extends HTMLElement {
50  constructor() {
51    super(), this.querySelector(".load_more_colle").addEventListener("click", this.LoadMoreDataColl.bind(this));
52  }
53  
54  LoadMoreDataColl(e) {
55    e.preventDefault();
56    const t = window.location.search.substring(1),
57        r = document.querySelector(".main_grid").dataset.next;
58    if (t) var o = r + "&" + t;
59    else o = r;
60    o &&
61        (this.classList.add("loading"),
62        fetch(o)
63            .then((e) => e.text())
64            .then((e) => {
65                const t = new DOMParser().parseFromString(e, "text/html"),
66                    r = document.querySelector(".main_grid"),
67                    o = t.querySelector(".main_grid");
68                (r.innerHTML += o.innerHTML),
69                    (r.dataset.next = o.dataset.next),
70                    "" == o.dataset.next ? (this.classList.remove("loading"), this.classList.add("no-product")) : this.classList.add("loading"),
71                    this.classList.remove("loading");
72            }));
73  }
74}
75customElements.define("load-more-colle", LoadMoreColle);
76
77/*class CollectionFilter extends HTMLElement{constructor(){super(),this.filterOption=[],console.log(12);this.main_form=document.getElementById("filter-form-id"),this.active_filter=document.querySelector(".active_filter_cls"),this.active_filter_mobile=document.querySelector(".mobile_active_filter_cls"),this.debounce=(e=>{let t;return function(){const r=this,o=arguments;clearTimeout(t),t=setTimeout(()=>e.apply(r,o),500)}}),this.querySelector("form").addEventListener("input",this.debounce(this.applyFilter.bind(this))),document.querySelectorAll("#active_option_id").length>
770&&document.querySelectorAll(".active_option_cls").forEach(e=>{e.addEventListener("click",this.removeFilter.bind(this))}),this.HideEmptyActivePart(),""==this.active_filter.textContent.trim()&&(this.active_filter.innerHTML=""),""==this.active_filter_mobile.textContent.trim()&&(this.active_filter_mobile.innerHTML="")}applyFilter(e){"sort_by"==e.target.name&&document.body.classList.contains("filter_menu")&&document.body.classList.remove("filter_menu");const t=new FormData(e.target.closest("form")),r=new URLSearchParams(t).toString();this.getPage(r,e)}resetFilter(e){e.preventDefault();e.target.href;this.getPage(new URL(e.target.href).searchParams.toString())}removeFilter(e){e.preventDefault(),e.target.classList.contains("apply_all_cls")?document.body.classList.contains("filter_menu")&&document.body.classList.remove("filter_menu"):(console.log(e.target),this.getPage(new URL(e.target.href).searchParams.toString()),this.main_form.querySelectorAll(".filter-drop").forEach(e=>{e.classList.remove("open")}))}getPage(e,t){this.getSection().map(r=>{const o=window.location.pathname+"?section_id="+r.section+"&"+e,n=e=>e.url===o;this.filterOption.some(n)?this.renderFromArray(n,r,t):this.renderFromUrl(o,r,t),this.updateUrl(e)})}renderFromUrl(e,t,r){fetch(e).then(e=>e.text()).then(t=>{const o=t;this.filterOption=[...this.filterOption,{response_html:o,url:e}],"true"==this.main_form.dataset.filter&&this.renderFilter(o,r),this.renderProductList(o)})}renderFromArray(e,t,r){const o=this.filterOption.find(e).response_html;"true"==this.main_form.dataset.filter&&this.renderFilter(o,r),this.renderProductList(o)}renderFilter(e,t){const r=(new DOMParser).parseFromString(e,"text/html").querySelectorAll("#filter-form-id .filter_option_cls");Array.from(r).forEach(e=>{document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"]').innerHTML=e.innerHTML,document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"]').classList.contains("open")?document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"] .filter__dec').style.display="block":document.querySelector('.filter_option_cls[data-index="'+e.dataset.index+'"] .filter__dec').style.display="none"}),this.renderActiveFilter(e)}renderProductList(e){const t=(new DOMParser).parseFromString(e,"text/html"),r=document.getElementById("main_collection_cls");r.innerHTML=t.getElementById("main_collection_cls").innerHTML,"true"==this.main_form.dataset.pagination&&t.getElementById("main_collection_cls").dataset.next&&(r.dataset.next=t.getElementById("main_collection_cls").dataset.next);var api=new Yotpo.API(yotpo);api.refreshWidgets()}renderActiveFilter(e){[".active_filter_cls",".mobile_active_filter_cls"].forEach(t=>{const r=(new DOMParser).parseFromString(e,"text/html");r.querySelector(t)&&(document.querySelector(t).innerHTML=r.querySelector(t).innerHTML)}),this.HideEmptyActivePart(),this.setResetButton(),this.setRemoveButton()}HideEmptyActivePart(){""==this.active_filter.textContent.trim()?(this.active_filter.innerHTML="",this.active_filter.style.display="none"):this.active_filter.style.display="flex",""==this.active_filter_mobile.textContent.trim()?(this.active_filter_mobile.innerHTML="",this.active_filter_mobile.style.display="none"):this.active_filter_mobile.style.display="flex"}setResetButton(){document.querySelectorAll(".reset_filter").forEach(e=>{e.addEventListener("click",this.resetFilter.bind(this))})}setRemoveButton(){document.querySelectorAll(".active_option_cls").forEach(e=>{e.addEventListener("click",this.removeFilter.bind(this))})}getSection(){return[{id:"main_collection_cls",section:document.getElementById("main_collection_cls").dataset.id}]}updateUrl(e){history.pushState({},"",`${window.location.pathname}${e&&"?".concat(e)}`)}}customElements.define("filter-menu",CollectionFilter);*/ 
78class PriceFieldFilter extends HTMLElement {
79  constructor() {
80    super(),
81      this.querySelectorAll("input").forEach((e) => {
82        e.addEventListener("change", this.onInputField.bind(this));
83      }),
84      this.setMinMaxVal();
85    }
86    onInputField(e) {
87    this.setMinMaxVal();
88  }
89    setMinMaxVal() {
90        const e = this.querySelectorAll("input"),
91            t = e[0],
92            r = e[1];
93        r.value && t.setAttribute("max", r.value), t.value && r.setAttribute("min", t.value), "" === t.value && t.setAttribute("min", t.min), "" === r.value && r.setAttribute("max", r.getAttribute("max"));
94    }
95}
96customElements.define("price-field", PriceFieldFilter);
97
98class Cart extends HTMLElement {
99  constructor() {
100    super();
101  }
102  updateQuantity(e, t, r) {
103    var o = {
104      method: "POST",
105      headers: { "Content-Type": "application/json", Accept: "application/json" },
106      body: JSON.stringify({ line: e, quantity: t }) 
107    };
108    fetch("/cart/change.js", o)
109      .then((e) => e.json())
110      .then((e) => {
111        var t = "";
112        "drawer" == r ? (t = "/") : "cart" == r && (t = "/cart"), update_cart_drawer(t);
113      });
114  }
115}
116customElements.define("cart-item", Cart);
117
118class CartItemRemove extends HTMLElement {
119  constructor() {
120    super(),
121    this.querySelectorAll(".cart_item_remove").forEach((e) => {
122      e.addEventListener("click", function (e) {
123        e.preventDefault();
124
125        var data_id = $(this).parents(".cart_item").attr("data_id");
126        var remove_Ids = [];
127        
128        if(data_id != ""){
129          $(".cart_item[data_id='"+data_id+"']").each(function(index, value) {
130            remove_Ids.push($(this).attr("data_vid"));
131          });
132        }
133
134        if(remove_Ids == "" ){
135          this.closest("cart-item").updateQuantity(this.dataset.index, 0, this.dataset.class);
136        }
137        else{
138          remove_products(remove_Ids,this.dataset.class)
139        }
140      });
141    });
142  }
143}
144customElements.define("cart-remove", CartItemRemove);
145
146function remove_products(remove_ids,r) {
147  var data = { updates: {} };
148  for (i = 0; i < remove_ids.length; i++) {
149    data.updates[remove_ids[i]] = 0;
150  }
151  
152  var o = {
153    method: "POST",
154    headers: { "Content-Type": "application/json", Accept: "application/json" },
155    body: JSON.stringify(data) 
156  };
157  fetch("/cart/update.js", o)
158   .then((e) => e.json())
159   .then((e) => {
160     var t = "";
161     "drawer" == r ? (t = "/") : "cart" == r && (t = "/cart"), update_cart_drawer(t);
162   });
163}
164
165class ChangeQuantity extends Cart {
166  constructor(){
167    super();
168    this.input = this.querySelector("input");
169    this.querySelectorAll(".update_qnt_btn").forEach((button) => button.addEventListener("click", this.ChangeVal.bind(this, button)));
170    this.querySelectorAll(".quantity-input").forEach((input) => input.addEventListener("change", this.ChangeVal.bind(this, input)));
171  }
172
173  ChangeVal(obj, event){
174    if(event.type == 'click'){
175      obj.dataset.name === 'plus'?this.input.stepUp():this.input.stepDown();
176    }
177    
178    var index = obj.dataset.index;
179    var input_val = parseInt(this.input.value);
180    var max_val = parseInt(this.input.dataset.max);
181    var title = this.input.dataset.title;
182    var type_cls = this.input.dataset.class;
183
184    if(typeof this.input.dataset.max !== 'undefined'){
185      if(max_val >= input_val){
186
187        var data_id = $(this).parents(".cart_item").attr("data_id");
188        var update_qty = [];
189
190        if(data_id != ""){
191          $(".cart_item[data_id='"+data_id+"']").each(function(index, value) {
192            update_qty.push($(this).attr("data_vid"));
193          });
194        }
195
196        if(update_qty == "" ){
197          this.updateQuantity(index, input_val, type_cls);
198        }
199        else{
200          update_products(update_qty,input_val,type_cls)
201        }
202      }
203      else{
204        var obje = this;
205        this.closest("tr").querySelector(".cart_error").innerHTML = 'All '+max_val+' "'+title+'" product are in your cart.';
206        setTimeout(function(){ obje.closest("tr").querySelector(".cart_error").innerHTML = ''; 
207         obje.updateQuantity(index, max_val, type_cls); 
208        }, 4000);
209        this.input.value = max_val;
210      }
211    }
212    else{
213      var data_id = $(this).parents(".cart_item").attr("data_id");
214      var update_qty = [];
215
216      if(data_id != ""){
217        $(".cart_item[data_id='"+data_id+"']").each(function(index, value) {
218          update_qty.push($(this).attr("data_vid"));
219        });
220      }
221
222      if(update_qty == "" ){
223        this.updateQuantity(index, input_val, type_cls);
224      }
225      else{
226        update_products(update_qty,input_val,type_cls)
227      }
228    }
229  }
230}
231customElements.define('quantity-input', ChangeQuantity);
232
233function update_products(update_qty,qty,r){
234  var update_data = { updates: {} };
235
236  for (i = 0; i < update_qty.length; i++) {
237    update_data.updates[update_qty[i]] = qty;
238  }
239  
240  var o = {
241    method: "POST",
242    headers: { "Content-Type": "application/json", Accept: "application/json" },
243    body: JSON.stringify(update_data) 
244  };
245  fetch("/cart/update.js", o)
246    .then((e) => e.json())
247    .then((e) => {
248      var t = "";
249      "drawer" == r ? (t = "/") : "cart" == r && (t = "/cart"), update_cart_drawer(t);
250    });
251}
252
253class AddToCart extends HTMLElement {
254  constructor() {
255    super(),
256      this.querySelectorAll(".add_to_cart_btn").forEach((t) => {
257          t.addEventListener("click", this.addToCart.bind(this));
258      });
259  }
260  addToCart(t) {
261    t.preventDefault();
262    var e = this.querySelector(".add_to_cart_btn"),
263        a = this.querySelector("input[name='id']").value;
264    
265
266    if($(this).hasClass("stpro-btn")){
267
268      var form = $("form.product_form");
269
270      var color_length = form.find(".var_dropdown .color_dropdown").length;
271      var active_color_length = form.find(".var_dropdown .color_dropdown").find("li.active").not("li.select_opt").length;
272      
273      var cushion_length = form.find(".var_dropdown .cushion-type_dropdown").length;
274      var active_cushion_length = form.find(".var_dropdown .cushion-type_dropdown").find("li.active").not("li.select_opt").length;
275      
276      var header_height = $("#headers").height();
277      
278      if(color_length > 0 && active_color_length == 0){
279        form.find(".var_dropdown .color_dropdown").find(".frm_error").text("* Please select any color.").show();
280        $('html, body').animate({
281            scrollTop: form.find(".var_dropdown .color_dropdown").offset().top - header_height - 5
282        },300);
283        return false;
284      }
285      else if(cushion_length > 0 && active_cushion_length == 0) {
286        form.find(".var_dropdown .cushion-type_dropdown").find(".frm_error").text("* Please select any cushion type.").show();
287        $('html, body').animate({
288            scrollTop: form.find(".var_dropdown .cushion-type_dropdown").offset().top - header_height - 5
289        },300);
290        return false;
291      }
292      
293      var qty = form.find(".quantity-input").val();
294
295      if(form.find(".var_dropdown .foam_comfort_dropdown").length > 0 && form.find(".var_dropdown .foam_comfort_dropdown .form_comfart li").hasClass("active")){
296        var foam_prod = $(".form_comfart_variants option:selected").attr("data-id");  
297        var foam_value = $(".form_comfart_variants option:selected").val();  
298        e.classList.add("loading");  
299
300        var formData = {
301          'items': [{'id': a,'quantity': qty,'properties': {'time': $.now(),'sub_prod':foam_value}},{'id': foam_prod,'quantity': qty,'properties': {'time': $.now(),'prod_type':'sub_prod'}}]
302        };
303      }
304      else{
305        var formData = {'items': [{'id': a,'quantity': qty}]}
306      }
307    }
308    else{
309       var formData = {'items': [{'id': a,'quantity': 1}]}
310    }
311      
312    var d = {
313      method: "POST",
314      headers: { "Content-Type": "application/json", Accept: "application/json" },
315      body: JSON.stringify(formData) 
316    };
317    fetch("/cart/add.js", d)
318      .then((t) => t.json())
319      .then((t) => {
320        update_cart_drawer("/"),
321          setTimeout(function () {
322            document.body.classList.add("cartDrawer"), e.classList.remove("loading");
323          }, 600);
324      })
325      .catch(function (t) {
326         console.log("Request failed", t);
327      });
328  }
329}
330customElements.define("add-to-cart", AddToCart);
331
332class PinCodeVerify extends HTMLElement {
333  constructor() {
334    super();
335    const e = document.querySelector(".verify_btn");
336    (this.input = document.querySelector(".pin_code_text")), e.addEventListener("click", this.VerifyPincode.bind(this));
337  }
338  VerifyPincode(e) {
339    if ((e.preventDefault(), (this.querySelector(".erroe-msg").innerHTML = ""), "" == this.input.value)) (this.querySelector(".erroe-msg").innerHTML = "Please enter pincode"), (this.querySelector(".erroe-msg").style.color = "red");
340    else {
341      const e = this.querySelector("[data-ele='pincodes_file']").dataset.file,
342            r = this.input.value;
343        var t = !1;
344      console.log(e),
345      fetch(e)
346      .then((e) => e.text())
347      .then((e) => {
348        for (var o = e.split("\n"), n = 0; n < o.length; n++) {
349          var i = o[n].split(",");
350          "" != i[0] && i[0] == r && ((t = !0), (this.querySelector(".erroe-msg").innerHTML = i[3]), (this.querySelector(".erroe-msg").style.color = "green"));
351        }
352        0 == t && ((this.querySelector(".erroe-msg").innerHTML = "Sorry, Delivery not available on your location"), (this.querySelector(".erroe-msg").style.color = "red"));
353      });
354    }
355  }
356}
357customElements.define("location-verify", PinCodeVerify);
358
359class ChangeProductQuantity extends HTMLElement {
360  constructor() {
361    super(), (this.input = this.querySelector("input")), this.querySelectorAll(".update_qnt_btn").forEach((e) => e.addEventListener("click", this.ChangeVal.bind(this, e)));
362  }
363  ChangeVal(e, t) {
364   "plus" === e.dataset.name ? this.input.stepUp() : this.input.stepDown();
365  }
366}
367var form;
368(customElements.define("quantity-input-button", ChangeProductQuantity),
369document.querySelector("button.add_to_cart_button") &&
370    document.querySelector("button.add_to_cart_button").addEventListener("click", function (e) {
371      e.preventDefault();
372      var t = this;
373      this.form = this.closest("form");
374      var r = this.form.querySelector("input[name='id']").value,
375      o = 1;
376      this.form.querySelector(".quantity-input") && (o = this.form.querySelector(".quantity-input").value);
377      
378      var color_length = $(this).parents("form").find(".var_dropdown .color_dropdown").length;
379      var active_color_length = $(this).parents("form").find(".var_dropdown .color_dropdown").find("li.active").not("li.select_opt").length;
380      
381      var cushion_length = $(this).parents("form").find(".var_dropdown .cushion-type_dropdown").length;
382      var active_cushion_length = $(this).parents("form").find(".var_dropdown .cushion-type_dropdown").find("li.active").not("li.select_opt").length;
383      
384      var header_height = $("#headers").height();
385      if(color_length > 0 && active_color_length == 0){
386        $(this).parents("form").find(".var_dropdown .color_dropdown").find(".frm_error").text("* Please select any color.").show();
387        $('html, body').animate({
388            scrollTop: $(this).parents("form").find(".var_dropdown .color_dropdown").offset().top - header_height - 5
389        },300);
390        return false;
391      }
392      else if(cushion_length > 0 && active_cushion_length == 0) {
393        $(this).parents("form").find(".var_dropdown .cushion-type_dropdown").find(".frm_error").text("* Please select any cushion type.").show();
394        $('html, body').animate({
395            scrollTop: $(this).parents("form").find(".var_dropdown .cushion-type_dropdown").offset().top - header_height - 5
396        },300);
397        return false;
398      }
399
400      if($(this).parents("form").find(".var_dropdown .foam_comfort_dropdown").length > 0 && $(this).parents("form").find(".var_dropdown .foam_comfort_dropdown .form_comfart li").hasClass("active")){
401        var foam_prod = $(this).parents("form").find(".form_comfart_variants option:selected").attr("data-id");  
402        var foam_value = $(this).parents("form").find(".form_comfart_variants option:selected").val();  
403        
404        var formData = {
405          'items': [{'id': r,'quantity': o,'properties': {'time': $.now(),'sub_prod':foam_value}},{'id': foam_prod,'quantity': o,'properties': {'time': $.now(),'prod_type':'sub_prod'}}]
406        };
407      }
408      else{
409         var formData = {'items': [{'id': r,'quantity': o}]}
410      }
411      
412      var n = {
413        method: "POST",
414        headers: { "Content-Type": "application/json", Accept: "application/json" },
415        body: JSON.stringify(formData) };
416        t.classList.add("loading"),
417            fetch("/cart/add.js", n)
418                .then((e) => e.json())
419                .then((e) => {
420                    update_cart_drawer("/"),
421                        setTimeout(function () {
422                            document.body.classList.add("cartDrawer"), t.classList.remove("loading");
423                        }, 600);
424                })
425                .catch(function (e) {
426                    console.log("Request failed", e);
427                });
428    }),
429 // document.querySelector("magic-checkout-btn").addEventListener("click", function(event){
430 //   //event.preventDefault();                   
431 //  //event.stopImmediatePropagation();   
432 //   console.log(1);
433 // }),
434document.querySelectorAll(".testimonial_img").forEach((e) => {
435    e.addEventListener("click", function () {
436        if ((document.body.classList.add("popupmodal"), this.parentNode.querySelector(".modal_body"))) var e = this.parentNode.querySelector(".modal_body").innerHTML;
437        var t = document.querySelector(".modal");
438        void 0 !== e && null != e && (t.querySelector(".modal_body").innerHTML = e);
439    });
440}),
441document.querySelectorAll(".modal-i-close").forEach((e) => {
442    e.addEventListener("click", function () {
443        document.body.classList.remove("popupmodal");
444    });
445}),
446window.addEventListener("load", (e) => {
447    if (document.querySelector(".testimonial-grid")) {
448        for (var t = document.querySelector(".testimonial-grid").querySelectorAll("li.li_list").length, r = document.querySelector(".testimonial-grid").dataset.limit, o = 0; o < r; o++)
449            void 0 !== document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o] &&
450                document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.contains("inactive") &&
451                (document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.remove("inactive"), document.querySelector(".testimonial-grid").querySelectorAll("li.li_list")[o].classList.add("active"));
452        document.querySelector(".monial_grid .load_more_testimonials").style.display = t > r ? "inline-block" : "none";
453    }
454}),
455document.querySelector(".monial_grid .load_more_testimonials") &&
456    document.querySelector(".monial_grid .load_more_testimonials").addEventListener("click", function () {
457        for (var e = document.querySelector(".testimonial-grid").dataset.limit, t = 0; t < e; t++)
458            document.querySelector(".testimonial-grid").querySelectorAll("li.inactive")[0] && document.querySelector(".testimonial-grid").querySelectorAll("li.inactive")[0].classList.remove("inactive");
459        check_load_more();
460    }),
461document.querySelector(".contact_us_btn")) &&
462    ((form = document.querySelector(".contact_us_btn").closest("form")).querySelectorAll(".form__field").forEach((e, t) => {
463        e.addEventListener("keyup", function (e) {
464            checkVal(form);
465        });
466    }),
467    form.querySelector(".contact_us_btn").addEventListener("click", function (e) {
468        var t = form.querySelector(".name"),
469            r = form.querySelector(".email"),
470            o = form.querySelector(".phone_no"),
471            n = form.querySelector(".message"),
472            i = form.querySelector(".alert--error");
473        if (t.value)
474            if (r.value)
475                if (r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))
476                    if (o.value) {
477                        if (n.value) return !0;
478                        (i.innerHTML = "Enter your message"), n.focus(), e.preventDefault();
479                    } else (i.innerHTML = "Enter your phone number"), o.focus(), e.preventDefault();
480                else (i.innerHTML = "Enter your valid email address"), r.focus(), e.preventDefault();
481            else (i.innerHTML = "Enter your email address"), r.focus(), e.preventDefault();
482        else (i.innerHTML = "Enter your name"), t.focus(), e.preventDefault();
483    }));
484document.querySelector(".registration_btn") &&
485    (form = document.querySelector(".registration_btn").closest("form")).querySelector(".registration_btn").addEventListener("click", function (e) {
486        var t = form.querySelector(".fname"),
487            r = form.querySelector(".lname"),
488            o = form.querySelector(".email"),
489            n = form.querySelector(".password"),
490            i = form.querySelector(".alert--error");
491        if (t.value)
492            if (r.value)
493                if (o.value)
494                    if (o.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))
495                        if (n.value) {
496                            if (!(n.value.length < 5)) return !0;
497                            (i.innerHTML = "Password is too short (minimum is 5 characters)"), n.focus(), e.preventDefault();
498                        } else (i.innerHTML = "Enter your password"), n.focus(), e.preventDefault();
499                    else (i.innerHTML = "Enter your valid email address"), o.focus(), e.preventDefault();
500                else (i.innerHTML = "Enter your email address"), o.focus(), e.preventDefault();
501            else (i.innerHTML = "Enter your last name"), r.focus(), e.preventDefault();
502        else (i.innerHTML = "Enter your first name"), t.focus(), e.preventDefault();
503    });
504function update_cart_drawer(e) {
505    fetch(e)
506        .then((e) => e.text())
507        .then((e) => {
508            var t = new DOMParser().parseFromString(e, "text/html"),
509                r = 0;
510            t.querySelector(".cart_cls") && ((r = t.querySelector(".cart_cls").dataset.item), (document.querySelector(".cart_cls").innerHTML = t.querySelector(".cart_cls").innerHTML)),
511                t.querySelector(".cart_drawer_update") && ((r = t.querySelector(".cart_drawer_update").dataset.item), (document.querySelector(".cart_drawer_update").innerHTML = t.querySelector(".cart_drawer_update").innerHTML)),
512                r > 0 ? ((document.querySelector(".cart_bubble").style.display = "flex"), (document.querySelector(".cart_bubble").innerHTML = r)) : (document.querySelector(".cart_bubble").style.display = "none");
513        });
514}
515function check_load_more() {
516    var e = document.querySelector(".testimonial-grid").querySelectorAll("li.inactive").length,
517        t = document.querySelector(".testimonial-grid").dataset.limit;
518    e >= parseInt(t) ? (document.querySelector(".monial_grid .load_more_testimonials").style.display = "block") : (document.querySelector(".monial_grid .load_more_testimonials").style.display = "none");
519}
520function checkVal(e) {
521    var t = e.querySelector(".name"),
522        r = e.querySelector(".email"),
523        o = e.querySelector(".phone_no"),
524        n = e.querySelector(".message");
525    "" != t.value && "" != r.value && "" != o.value && "" != n.value ? e.querySelector(".contact_us_btn").classList.remove("disabled") : e.querySelector(".contact_us_btn").classList.add("disabled");
526}
527document.querySelector(".login_btn") &&
528    document.querySelector(".login_btn").addEventListener("click", function (e) {
529        var t = this.closest(".login_form"),
530            r = t.querySelector(".email"),
531            o = t.querySelector(".password"),
532            n = t.querySelector(".alert--error");
533        if (r.value)
534            if (r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) {
535                if (o.value) return !0;
536                (n.innerHTML = "Enter your password"), o.focus(), e.preventDefault();
537            } else (n.innerHTML = "Enter your valid email address"), r.focus(), e.preventDefault();
538        else (n.innerHTML = "Enter your email address"), r.focus(), e.preventDefault();
539    }),
540    document.querySelector(".forgot_pass_btn") &&
541        document.querySelector(".forgot_pass_btn").addEventListener("click", function (e) {
542            var t = this.closest(".recover-pss"),
543                r = t.querySelector(".email"),
544                o = t.querySelector(".alert--error");
545            if (r.value) {
546                if (r.value.match(/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) return !0;
547                (o.innerHTML = "Enter your valid email address"), r.focus(), e.preventDefault();
548            } else (o.innerHTML = "Enter your email address"), r.focus(), e.preventDefault();
549        }),
550    document.querySelector(".activate_acc_btn") &&
551        document.querySelector(".activate_acc_btn").addEventListener("click", function (e) {
552            var t = this.closest(".form"),
553                r = t.querySelector(".password"),
554                o = t.querySelector(".confirm_password"),
555                n = t.querySelector(".alert--error");
556            if (r.value)
557                if (o.value) {
558                    if (r.value == o.value) return !0;
559                    (n.innerHTML = "Password does not match with confirm password"), o.focus(), (o.value = ""), e.preventDefault();
560                } else (n.innerHTML = "Enter your confirm password"), o.focus(), e.preventDefault();
561            else (n.innerHTML = "Enter your password"), r.focus(), e.preventDefault();
562        }),
563    document.querySelector(".reset_pass_btn") &&
564        document.querySelector(".reset_pass_btn").addEventListener("click", function (e) {
565            var t = this.closest(".form"),
566                r = t.querySelector(".password"),
567                o = t.querySelector(".confirm_password"),
568                n = t.querySelector(".alert--error");
569            if (r.value)
570                if (o.value) {
571                    if (r.value == o.value) return !0;
572                    (n.innerHTML = "Password does not match with confirm password"), o.focus(), (o.value = ""), e.preventDefault();
573                } else (n.innerHTML = "Enter your confirm password"), o.focus(), e.preventDefault();
574            else (n.innerHTML = "Enter your password"), r.focus(), e.preventDefault();
575        }),
576    document.querySelector(".btn_address") &&
577        document.querySelectorAll(".btn_address").forEach((e) => {
578            e.addEventListener("click", function (e) {
579                var t = this.closest("form"),
580                    r = t.querySelector(".fname"),
581                    o = t.querySelector(".lname"),
582                    n = t.querySelector(".company"),
583                    i = t.querySelector(".add1"),
584                    l = t.querySelector(".city"),
585                    s = t.querySelector(".selcountry"),
586                    c = t.querySelector(".zipcode"),
587                    a = t.querySelector(".phone_no");
588                t.querySelectorAll(".form-error").forEach((e) => {
589                    e.style.display = "none";
590                });
591                var u = [];
592                if (
593                    (r.value
594                        ? o.value
595                            ? n.value
596                                ? i.value
597                                    ? l.value
598                                        ? "---" == s.value
599                                            ? (s.focus(), u.push("selcountry"), e.preventDefault())
600                                            : c.value
601                                            ? a.value || (a.focus(), u.push("phone_no"), e.preventDefault())
602                                            : (c.focus(), u.push("zipcode"), e.preventDefault())
603                                        : (l.focus(), u.push("city"), e.preventDefault())
604                                    : (i.focus(), u.push("add1"), e.preventDefault())
605                                : (n.focus(), u.push("company"), e.preventDefault())
606                            : (o.focus(), u.push("lname"), e.preventDefault())
607                        : (r.focus(), u.push("fname"), e.preventDefault()),
608                    u.length > 0)
609                ) {
610                    var d = "";
611                    return (
612                        (d = "selcountry" == u[0] ? "please select country" : "* This field is required"),
613                        (t.querySelector(".err-" + u[0]).innerHTML = d),
614                        (t.querySelector(".err-" + u[0]).style.display = "block"),
615                        t.querySelector("." + u[0]).focus(),
616                        !1
617                    );
618                }
619                return (t.querySelector(".form-error").style.display = "none"), !0;
620            });
621        }),
622document.querySelector(".province_cls") &&
623  document.querySelectorAll(".province_cls").forEach((e) => {
624      e.addEventListener("change", function () {
625          this.closest("form").querySelector(".err-selcountry").style.display = "none";
626      });
627  }),
628document.addEventListener("DOMContentLoaded", function (e) {
629  document.querySelector(".faq-panel") &&
630      document.querySelectorAll(".faq-panel").forEach((e) => {
631          "" == e.querySelector(".faq-inner-panel").innerHTML.trim() && e.remove();
632      });
633}),
634document.querySelector(".serch_icon_") &&
635  document.querySelector(".serch_icon_").addEventListener("click", function () {
636      document.body.classList.add("search_bar");
637  }),
638document.querySelector(".close-icon") &&
639  document.querySelector(".close-icon").addEventListener("click", function () {
640      document.body.classList.remove("search_bar");
641  }),
642document.querySelector(".user_icon_") &&
643  document.querySelector(".user_icon_").addEventListener("click", function () {
644      document.body.classList.toggle("active"), document.querySelector(".currunt_ul").classList.toggle("show-menu");
645  }),
646document.querySelector(".back_to_top") &&
647  document.querySelector(".back_to_top").addEventListener("click", function () {
648    window.scrollTo({ top: 0, behavior: "smooth" });
649});
650const debounce = (e, t) => {
651    let r;
652    return function () {
653    const o = this,
654    n = arguments;
655    clearTimeout(r), (r = setTimeout(() => e.apply(o, n), t));
656  };
657};
658function CodeCopy(e) {
659  const t = document.querySelector("body"),
660  r = document.createElement("textarea");
661  t.appendChild(r), (r.value = e), r.select(), document.execCommand("copy"), t.removeChild(r);
662}
663document.querySelector(".topbar_dec img.copy_icon_cls") &&
664    document.querySelectorAll(".topbar_dec").forEach((e) => {
665    e.querySelector("img.copy_icon_cls").addEventListener("click", function (e) {
666    e.preventDefault();
667    var t = this.closest(".topbar-handline").querySelector("span").innerHTML;
668    ("" == t && void 0 === t) || ((this.closest(".topbar_dec").querySelector(".Copied-text").style.display = "block"), CodeCopy(t)),
669    debounce(function (e) {
670      e.closest(".topbar_dec").querySelector(".Copied-text").style.display = "none";
671    }, 2e3)(this);
672  });
673}),
674document.querySelector(".discount-copy-img") &&
675  document.querySelector(".discount-copy-img").addEventListener("click", function () {
676  var e = this.closest(".discount-copy").querySelector(".discount_code").innerHTML;
677  ("" == e && void 0 === e) || ((this.closest(".discount-copy").querySelector(".Copied-text").style.display = "block"), CodeCopy(e)),
678  debounce(function (e) {
679    e.closest(".discount-copy").querySelector(".Copied-text").style.display = "none";
680  }, 2e3)(this);
681});
682document.querySelector(".buy_now_button") &&
683  document.querySelector(".buy_now_button").addEventListener("click", function () {
684  var t = new Event("click", { bubbles: !0 });
685  document.querySelector(".shopify-payment-button") && document.querySelector(".shopify-payment-button").querySelector('button[data-testid="Checkout-button"]').dispatchEvent(t);
686});
687
688
689
690$(document).on("click",".discount-code-copy",function(){
691  var code = $(this).parents(".discount-box").find(".code-text").html();
692  
693  if(code != '' || typeof code != 'undefined'){
694    $(this).parents(".discount-box").find(".Copied-text").show()
695    CodeCopy(code);
696  }
697    
698  setTimeout(function() {
699    $(".discount-box").find(".Copied-text").hide();
700  }, 2000);
701});
702
703/* Filter and Sorting */
704class CollectionPageFilterNew extends HTMLElement {
705  constructor(){
706    super();
707    this.filterOption = [];
708    this.main_form = this.querySelector("form");
709    
710    this.debounce = (func) => {
711      let debounceTimer
712      return function() {
713        const context = this
714        const args = arguments
715        clearTimeout(debounceTimer)
716        debounceTimer
717        = setTimeout(() =>
717 func.apply(context, args), 500)
718      }
719    } 
720
721    this.main_form.addEventListener("input", this.debounce(this.applyFilter.bind(this)));
722    document.querySelector(".filter-btn").addEventListener("click", this.openFilterDrawer.bind(this));
723    
724    /*document.body.addEventListener('click', (event) => {
725      console.log(1, event.target);
726      if(!this.querySelector("form").contains(event.target) && !this.querySelector(".filter-mob").contains(event.target)){
727        console.log(12, this.querySelector("form").contains(event.target), this.querySelector(".filter-mob").contains(event.target));
728        this.closeFilterDrawer();
729      }
730    });*/
731  }
732
733  openFilterDrawer(event){
734    if(!event.target.closest(".container").querySelector("colle-filter").classList.contains("open")){
735      event.target.closest(".container").querySelector("colle-filter").classList.add("open");
736      !document.body.classList.contains("overflow-hidden") ? document.body.classList.add("overflow-hidden") : '';
737    }
738  }
739  
740  closeFilterDrawer(){
741    console.log("close");
742    this.classList.contains("open") ? this.classList.remove("open") : '';
743    document.body.classList.contains("overflow-hidden") ? document.body.classList.remove("overflow-hidden") : '';
744  }
745
746  openMobFilterDropdown(event){
747    if(event.currentTarget.classList.contains("active")){
748      event.currentTarget.classList.remove("active");
749    }else{
750      event.currentTarget.closest(".filter-wrapper").querySelectorAll(".filter-title-wrap").forEach(filterGroup => {
751        if(filterGroup.classList.contains("active")){
752          filterGroup.classList.remove("active");
753        }
754      });
755      event.currentTarget.classList.add("active");
756    }
757  }
758  
759  applyFilter(event){
760    const form_data = new FormData(this.main_form);
761    const search_para = new URLSearchParams(form_data).toString();
762    this.getPage(search_para, event);
763  }
764  
765  getPage(searchParam, event){
766    const sections = this.getSection();
767
768    sections.map((section)=>{ 
769      const url= window.location.pathname+"?section_id="+section.section+"&"+searchParam;
770      const filterDataUrl = element => element.url === url;
771      console.log(url)
772      this.filterOption.some(filterDataUrl)? this.renderFromArray(filterDataUrl, section, event):this.renderFromUrl(url, section, event);
773      this.updateUrl(searchParam);
774    });
775  }
776
777  renderFromUrl(url, section, event){
778    fetch(url)
779    .then((response_data)=> { return response_data.text() })
780    .then((response) => {
781      const response_html = response;
782      this.filterOption = [...this.filterOption, {response_html, url}];
783      
784      if(this.main_form.dataset.filter == 'true'){
785       this.renderFilter(response_html,event);
786      }
787      this.renderProductList(response_html);
788    });
789  }
790
791  renderFromArray(filterDataUrl, section, event){
792    const html = this.filterOption.find(filterDataUrl).response_html;
793    if(this.main_form.dataset.filter == 'true'){
794      this.renderFilter(html,event);
795    }
796    this.renderProductList(html);
797  }
798
799  renderFilter(response_html,event){
800    const html_data = new DOMParser().parseFromString(response_html, 'text/html');
801    const newFilterData = html_data.querySelector(".collection-filter");
802    if(document.querySelector(".collection-filter") && html_data.querySelector(".collection-filter")){
803      document.querySelector(".collection-filter").innerHTML = html_data.querySelector(".collection-filter").innerHTML;
804    }
805  }
806
807  renderProductList(response_html) {
808    const html_data = new DOMParser().parseFromString(response_html, 'text/html');
809    const select = document.getElementById("main_collection_cls");
810    if(select && html_data.getElementById("main_collection_cls")){
811      select.innerHTML = html_data.getElementById("main_collection_cls").innerHTML;
812    }
813    
814    if(this.main_form.dataset.pagination == 'true'){
815      if(html_data.getElementById("main_collection_cls").dataset.next){
816        select.dataset.next = html_data.getElementById("main_collection_cls").dataset.next;
817      }else{
818      }
819    }
820    var api = new Yotpo.API(yotpo);
821    api.refreshWidgets();
822  }
823
824  onActiveFilterClick(event) {
825    this.getPage(new URL(event.currentTarget.href).searchParams.toString());
826  }
827
828  getSection(){
829    return [
830      {
831        id:'main_collection_cls',
832        section:document.getElementById("main_collection_cls").dataset.id
833      }
834    ]
835  }
836
837  updateUrl(searchParam){
838    history.pushState({}, '', `${window.location.pathname}${searchParam && '?'.concat(searchParam)}`);
839  }
840}
841customElements.define('colle-filter', CollectionPageFilterNew);
842
843/* Remove active filters */
844class removeActiveFilter extends HTMLElement {
845  constructor(){
846    super();
847    const facetLink = this.querySelector('a');
848    facetLink.setAttribute('role', 'button');
849    facetLink.addEventListener('click', this.closeFilter.bind(this));
850  }
851
852  closeFilter(event) {
853    event.preventDefault();
854    const form = this.closest('colle-filter') || document.querySelector('colle-filter');
855    form.onActiveFilterClick(event);
856  }
857}
858customElements.define("remove-filter", removeActiveFilter);
859
860/* Show more filters */
861class showMoreFilters extends HTMLElement {
862  constructor(){
863    super();
864    this.addEventListener('click', this.showMoreFilter.bind(this));
865  }
866
867  showMoreFilter(event){
868    event.preventDefault();
869    if(event.target.closest(".filter-group").querySelector("ul").classList.contains("show-all-filter-value")){
870      event.target.closest(".filter-group").querySelector("ul").classList.remove("show-all-filter-value");
871      this.querySelector("a.show-more").style.display = 'block';
872      this.querySelector("a.show-less").style.display = 'none';
873    }else{
874      event.target.closest(".filter-group").querySelector("ul").classList.add("show-all-filter-value");
875      this.querySelector("a.show-more").style.display = 'none';
876      this.querySelector("a.show-less").style.display = 'block';
877    }
878  }
879}
880customElements.define("show-more-filter", showMoreFilters);
881
882/* Close mobile filter drawer */
883class closeFilterDrawerClass extends HTMLElement {
884  constructor(){
885    super();
886    const removeIcon = this.querySelector('.close-mob-filter-drawer');
887    removeIcon.addEventListener('click', (event) => {
888      const form = this.closest('colle-filter') || document.querySelector('colle-filter');
889      form.closeFilterDrawer(event);
890    });
891  }
892}
893customElements.define("close-filter-drawer", closeFilterDrawerClass);
894
895/* Open mobile filter drawer */
896class openFilterDropDownMobile extends HTMLElement {
897  constructor(){
898    super();
899    this.addEventListener('click', function(event){
900      const form = this.closest('colle-filter') || document.querySelector('colle-filter');
901      form.openMobFilterDropdown(event);
902    });
903  }
904}
905customElements.define("filter-title", openFilterDropDownMobile);
906
907$(document).on("click",".filter-apply-btn button",function(){
908  $(".close-mob-filter-drawer").trigger("click");
909});
910
911
912
913/* Product varient show */
914class VariantSelects extends HTMLElement {
915  constructor() {
916    super();
917    this.addEventListener('change', this.onVariantChange);
918  }
919
920  onVariantChange() {
921    this.updateOptions();
922    this.updateMasterId();
923    this.toggleAddButton(true, '', false);
924    this.removeErrorMessage();
925    this.updateVariantStatuses();
926
927    if (!this.currentVariant) {
928      this.toggleAddButton(true, '', true);
929      this.setUnavailable();
930    } else {
931      this.updateMedia();
932      this.updateURL();
933      this.updateVariantInput();
934      this.renderProductInfo();
935    }
936  }
937
938  updateOptions() {
939    this.options = Array.from(this.querySelectorAll('select'), (select) => select.value);
940  }
941
942  updateMasterId() {
943    this.currentVariant = this.getVariantData().find((variant) => {
944      return !variant.options
945        .map((option, index) => {
946          return this.options[index] === option;
947        })
948        .includes(false);
949    });
950  }
951
952  updateMedia() {
953    if (!this.currentVariant) return;
954    if (!this.currentVariant.featured_media) return;
955
956    document.getElementById('pro-img-'+this.currentVariant.featured_media.id)?.click();
957
958    /*const mediaGalleries = document.querySelectorAll(`[id^="MediaGallery-${this.dataset.section}"]`);
959    mediaGalleries.forEach((mediaGallery) =>
960      mediaGallery.setActiveMedia(`${this.dataset.section}-${this.currentVariant.featured_media.id}`, true)
961    );
962
963    const modalContent = document.querySelector(`#ProductModal-${this.dataset.section} .product-media-modal__content`);
964    if (!modalContent) return;
965    const newMediaModal = modalContent.querySelector(`[data-media-id="${this.currentVariant.featured_media.id}"]`);
966    modalContent.prepend(newMediaModal);*/
967
968    // Selected Variants Code
969   /* const variantValues = this.currentVariant.options
970    const mediaGallery = document.querySelector(`[id^="MediaGallery-${this.dataset.section}"]`)
971    if (mediaGallery.hasAttribute("image-grouping-enabled")) {
972      mediaGallery.querySelectorAll('[data-image-group]').forEach(el => el.classList.add('hide-media'))
973      variantValues.forEach(value => { mediaGallery.querySelectorAll(`[data-image-group="${value}"]`).forEach(el => el.classList.remove('hide-media')) })
974      mediaGallery.querySelectorAll('slider-component').forEach(sli
974der => { slider.initPages() })
975    }*/
976    // Selected Variants Code end
977  }
978
979  updateURL() {
980    if (!this.currentVariant || this.dataset.updateUrl === 'false') return;
981    window.history.replaceState({}, '', `${this.dataset.url}?variant=${this.currentVariant.id}`);
982  }
983
984  updateVariantInput() {
985    const productForms = document.querySelectorAll(`#product-form-${this.dataset.section}`);
986    productForms.forEach((productForm) => {
987      const input = productForm.querySelector('input[name="id"]');
988      input.value = this.currentVariant.id;
989      input.dispatchEvent(new Event('change', { bubbles: true }));
990    });
991  }
992
993  updateVariantStatuses() {
994    const selectedOptionOneVariants = this.variantData.filter(
995      (variant) => this.querySelector(':checked').value === variant.option1
996    );
997    const inputWrappers = [...this.querySelectorAll('.product-form__input')];
998    inputWrappers.forEach((option, index) => {
999      if (index === 0) return;
1000      const optionInputs = [...option.querySelectorAll('input[type="radio"], option')];
1001      const previousOptionSelected = inputWrappers[index - 1].querySelector(':checked').value;
1002      const availableOptionInputsValue = selectedOptionOneVariants
1003        .filter((variant) => variant.available && variant[`option${index}`] === previousOptionSelected)
1004        .map((variantOption) => variantOption[`option${index + 1}`]);
1005      this.setInputAvailability(optionInputs, availableOptionInputsValue);
1006    });
1007  }
1008
1009  setInputAvailability(listOfOptions, listOfAvailableOptions) {
1010    listOfOptions.forEach((input) => {
1011      if (listOfAvailableOptions.includes(input.getAttribute('value'))) {
1012        input.innerText = input.getAttribute('value');
1013      } else {
1014        input.innerText = window.variantStrings.unavailable_with_option.replace('[value]', input.getAttribute('value'));
1015      }
1016    });
1017  }
1018
1019  removeErrorMessage() {
1020    const section = this.closest('section');
1021    if (!section) return;
1022
1023    const productForm = section.querySelector('product-form');
1024    if (productForm) productForm.handleErrorMessage();
1025  }
1026
1027  renderProductInfo() {
1028    const requestedVariantId = this.currentVariant.id;
1029    const sectionId = this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section;
1030
1031    fetch(
1032      `${this.dataset.url}?variant=${requestedVariantId}&section_id=${
1033        this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section
1034      }`
1035    )
1036      .then((response) => response.text())
1037      .then((responseText) => {
1038        // prevent unnecessary ui changes from abandoned selections
1039        if (this.currentVariant.id !== requestedVariantId) return;
1040
1041        const html = new DOMParser().parseFromString(responseText, 'text/html');
1042        
1043        const destination = document.getElementById(`price-${this.dataset.section}`);
1044        const source = html.getElementById(`price-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
1045
1046        const stPrice = document.getElementById(`stprice-${this.dataset.section}`);
1047        const AddstPrice = html.getElementById(`stprice-${this.dataset.section}`);
1048        
1049        //const inventorySource = html.getElementById(`Inventory-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
1050        //const inventoryDestination = document.getElementById(`Inventory-${this.dataset.section}`);
1051
1052        // const pricePerItemDestination = document.getElementById(`Price-Per-Item-${this.dataset.section}`);
1053        // const pricePerItemSource = html.getElementById(`Price-Per-Item-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
1054
1055        if (source && destination) destination.innerHTML = source.innerHTML;
1056        if (AddstPrice && stPrice) stPrice.innerHTML = AddstPrice.innerHTML;
1057        
1058        // if (inventorySource && inventoryDestination) inventoryDestination.innerHTML = inventorySource.innerHTML;
1059
1060        // if (pricePerItemSource && pricePerItemDestination) {
1061        //   pricePerItemDestination.innerHTML = pricePerItemSource.innerHTML;
1062        //   pricePerItemDestination.classList.toggle('hidden', pricePerItemSource.classList.contains('hidden'));
1063        // }
1064
1065        /* Change color wise image */
1066        const mainSource = html.getElementById(`main-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
1067        const mainDestination = document.getElementById(`main-${this.dataset.section}`);
1068        
1069        const thumnSource = html.getElementById(`thumb-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
1070        const thumbDestination = document.getElementById(`thumb-${this.dataset.section}`);
1071        
1072        // Destroy existing sliders
1073        $('.product_details_main').slick('unslick');
1074        $('.product_details_sub').slick('unslick');
1075      
1076        setTimeout(() => {
1077          $(".product_details_main").slick({
1078            infinite: false,
1079            draggable: false,
1080            slidesToShow: 1,
1081            slidesToScroll: 1,
1082            arrows: false,
1083            fade: false,
1084            dots: true,
1085            asNavFor: ".product_details_sub"
1086          });
1087      
1088          $(".product_details_sub").slick({
1089            infinite: true,
1090            slidesToShow: 6,
1091            slidesToScroll: 1,
1092            asNavFor: ".product_details_main",
1093            dots: false,
1094            arrows: false,
1095            focusOnSelect: true,
1096            responsive: [
1097              {
1098                breakpoint: 1025,
1099                settings: {
1100                  slidesToShow: 3
1101                }
1102              },
1103              {
1104                breakpoint: 768,
1105                settings: {
1106                  slidesToShow: 4
1107                }
1108              }
1109            ]
1110          });
1111        }, 50); 
1112        
1113        if (mainSource && mainDestination) mainDestination.innerHTML = mainSource.innerHTML;
1114        if (thumnSource && thumbDestination) thumbDestination.innerHTML = thumnSource.innerHTML;
1115        /* end Change color wise image */
1116
1117        const price = document.getElementById(`price-${this.dataset.section}`);
1118        if (price) price.classList.remove('hidden');
1119
1120        const addButtonUpdated = html.getElementById(`ProductSubmitButton-${sectionId}`);
1121        const StickyAddButtonUpdated = html.getElementById(`StProSubmitButton-${sectionId}`);
1122        
1123        this.toggleAddButton(
1124          addButtonUpdated ? addButtonUpdated.hasAttribute('disabled') : true,
1125          "Sold out"
1126        );
1127      });
1128  }
1129
1130  toggleAddButton(disable = true, text, modifyClass = true) {
1131    const productForm = document.getElementById(`product-form-${this.dataset.section}`);
1132    if (!productForm) return;
1133    const addButton = productForm.querySelector('[name="add"]');
1134    const StaddBtn = document.querySelector(".stpro-btn [name='add']");
1135    if (!addButton) return;
1136
1137    if (disable) {
1138      addButton.setAttribute('disabled', 'disabled');
1139      if (text) addButton.textContent = text;
1140      
1141      StaddBtn.setAttribute('disabled', 'disabled');
1142      StaddBtn.classList.add('disabled');
1143      if (text) StaddBtn.textContent = text;
1144      
1145    } else {
1146      addButton.removeAttribute('disabled');
1147      addButton.textContent = "Add to Cart";
1148      
1149      StaddBtn.removeAttribute('disabled', 'disabled');
1150      StaddBtn.classList.remove('disabled');
1151      StaddBtn.textContent = "Add to Cart";
1152    }
1153    if (!modifyClass) return;
1154  }
1155
1156  setUnavailable() {
1157    const button = document.getElementById(`product-form-${this.dataset.section}`);
1158    const addButton = button.querySelector('[name="add"]');
1159    const addButtonText = button.querySelector('[name="add"]');
1160    const price = document.getElementById(`price-${this.dataset.section}`);
1161    // const inventory = document.getElementById(`Inventory-${this.dataset.section}`);
1162    // const pricePerItem = document.getElementById(`Price-Per-Item-${this.dataset.section}`);
1163
1164    if (!addButton) return;
1165    addButtonText.textContent = "Unavailable";
1166    if (price) price.classList.add('hidden');
1167    // if (inventory) inventory.classList.add('hidden');
1168    // if (pricePerItem) pricePerItem.classList.add('hidden');
1169    
1170  }
1171
1172  getVariantData() {
1173    this.variantData = this.variantData || JSON.parse(this.querySelector('[type="application/json"]').textContent);
1174    return this.variantData;
1175  }
1176}
1177
1178customElements.define('variant-selects', VariantSelects);
1179
1180class VariantRadios extends VariantSelects {
1181  constructor() {
1182    super();
1183  }
1184
1185  setInputAvailability(listOfOptions, listOfAvailableOptions) {
1186    listOfOptions.forEach((input) => {
1187      if (listOfAvailableOptions.includes(input.getAttribute('value'))) {
1188        input.classList.remove('disabled');
1189      } else {
1190        input.classList.add('disabled');
1191      }
1192    });
1193  }
1194
1195  updateOptions() {
1196    const fieldsets = Array.from(this.querySelectorAll('fieldset'));
1197    
1198    this.options = fieldsets.map((fieldset) => {
1199      if(fieldset.classList.contains("opt_color")){
1200        var selColor_val = fieldset.querySelector('input[type="radio"]:checked').value;
1201        document.querySelector(".product-form__input.opt_color").querySelector(".opt_val").innerHTML = selColor_val;
1202      }
1203      return Array.from(fieldset.querySelectorAll('input')).find((radio) => radio.checked).value;
1204    });
1205  }
1206}
1207
1208customElements.define('variant-radios', VariantRadios);
1209

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.