!function(e,t){"use strict";let o={init:function(){let n={"jet-single-images.default":o.widgetProductImages,"jet-single-add-to-cart.default":o.widgetSingleAddToCart,"jet-woo-builder-archive-add-to-cart.default":o.widgetArchiveAddToCart,"jet-single-tabs.default":o.widgetProductTabs,"jet-woo-products.default":o.widgetProductsGrid,"jet-woo-products-list.default":o.widgetProductsList,"jet-woo-categories.default":o.widgetCategories,"jet-cart-table.default":o.widgetCartTable,"jet-woo-builder-products-loop.default":o.widgetProductsLoop};e.each(n,function(e,o){t.hooks.addAction("frontend/element_ready/"+e,o)}),t.hooks.addFilter("jet-popup/widget-extensions/popup-data",o.prepareJetPopup),e(window).on("jet-popup/render-content/ajax/success",o.jetPopupLoaded),e(document).on("wc_update_cart added_to_cart",o.handleJetPopupWithWCEvents).on("jet-filter-content-rendered",function(e,t){o.widgetProductsGrid(t),o.handleInputQuantityValue(t)}).on("click.JetWooBuilder",".jet-woo-item-overlay-wrap",o.handleListingItemClick)},commonInit:function(){window.jetWooBuilderData.single_ajax_add_to_cart&&(e(".woocommerce div.product").hasClass("product-type-external")||e(document).on("click.JetWooBuilder",".single_add_to_cart_button:not(.disabled)",o.singleProductAjaxAddToCart)),-1!==navigator.userAgent.indexOf("Safari")&&-1===navigator.userAgent.indexOf("Chrome")&&document.addEventListener("click",function(e){e.target.matches(".add_to_cart_button .button-text")&&e.target.parentNode.focus(),(e.target.matches(".add_to_cart_button")||e.target.matches(".single_add_to_cart_button"))&&e.target.focus()}),e(document.body).bind("country_to_state_changing",function(e,t,n){setTimeout(function(){o.setAddressFieldsRequiredValidation(n)},500)})},setAddressFieldsRequiredValidation:function(t){let n=t.closest(".elementor-element"),i=o.getElementorElementSettings(n);if(i&&i.modify_field){let a=e.parseJSON(wc_address_i18n_params.locale_fields);a&&e.each(a,function(n,i){let a=i.split(",");e.each(a,function(e,n){let i=t.find(n.trim());i.length&&(i.hasClass("jwb-field-required")?o.fieldIsRequired(i,!0):i.hasClass("jwb-field-optional")&&o.fieldIsRequired(i,!1))})})}},fieldIsRequired:function(e,t){o.modifyFieldLabelWhitespace(e),t?(e.find("label .optional").remove(),e.addClass("validate-required"),0===e.find("label .required").length&&e.find("label").append(' *')):(e.find("label .required").remove(),e.removeClass("validate-required woocommerce-invalid woocommerce-invalid-required-field"),0===e.find("label .optional").length&&e.find("label").append(' ('+wc_address_i18n_params.i18n_optional_text+")"))},modifyFieldLabelWhitespace:function(e){let t=e.find("label").html();t&&e.find("label").html(t.replace(/ /g,"").trim())},widgetProductsLoop:function(t){let n=o.getElementorElementSettings(t);if(n&&n.switcher_enable){let i=t.find(".jet-woo-products-wrapper");t.find(".jet-woo-switcher-controls-wrapper .jet-woo-switcher-btn").on("click.JetWooBuilder",function(t){t.preventDefault();let a=e(this),r=a.hasClass("jet-woo-switcher-btn-main")?n.main_layout:n.secondary_layout,l;window.JetSmartFilters&&window.JetSmartFilters.filterGroups["woocommerce-archive/default"]&&(l=window.JetSmartFilters.filterGroups["woocommerce-archive/default"].query),i.addClass("jet-layout-loading"),e.ajax({type:"POST",url:window.jetWooBuilderData.ajax_url,data:{action:"jet_woo_builder_get_layout",query:window.jetWooBuilderData.products,layout:r,filters:l}}).done(function(t){i.removeClass("jet-layout-loading"),i.html(t.data.html),o.elementorFrontendInit(i),a.hasClass("active")||(a.addClass("active"),a.siblings().removeClass("active")),e(document).trigger("jet-woo-builder-content-rendered",[this,t])})})}},handleInputQuantityValue:function(t){let n=t.closest(".elementor-widget"),i=o.getElementorElementSettings(n);i&&"yes"===i.show_quantity&&t.find("form.cart").on("change","input.qty",function(){"0"!==this.value||e(this.form).hasClass("grouped_form")||(this.value="1");let t=e(this.form).find("button[data-quantity]");t.attr("data-quantity",this.value),this.max&&(+this.value>+this.max?t.removeClass("ajax_add_to_cart"):t.hasClass("ajax_add_to_cart")||t.addClass("ajax_add_to_cart"))})},jetPopupLoaded:function(t,o){if(!o.data.isJetWooBuilder)return;let n=e("#"+o.data.popupId);setTimeout(function(){e(window).trigger("resize"),n.addClass("woocommerce product quick-view-product"),n.find(".jet-popup__container-content").addClass("product"),e(".jet-popup .variations_form").each(function(){e(this).wc_variation_form()}),e(".jet-popup .woocommerce-product-gallery.images").each(function(){e(this).wc_product_gallery()})},500)},prepareJetPopup:function(t,o,n,i){if(o["is-jet-woo-builder"]){let a;t.isJetWooBuilder=!0,t.templateId=o["jet-woo-builder-qv-template"],(a=n.hasClass("elementor-widget-jet-woo-products")||n.hasClass("elementor-widget-jet-woo-products-list")?e(i.target).parents(".jet-woo-builder-product"):n.parents(".jet-woo-builder-product")).length&&(t.productId=a.data("product-id"))}return t},widgetProductImages:function(t){t.find(".jet-single-images__loading").remove(),!e("body").hasClass("single-product")&&t.find(".woocommerce-product-gallery").each(function(){e(this).wc_product_gallery()})},widgetSingleAddToCart:function(t){!e("body").hasClass("single-product")&&"undefined"!=typeof wc_add_to_cart_variation_params&&t.find(".variations_form").each(function(){e(this).wc_variation_form()})},widgetArchiveAddToCart:function(e){o.handleInputQuantityValue(e)},widgetProductTabs:function(t){if(t.find(".jet-single-tabs__loading").remove(),e("body").hasClass("single-product"))return;let o=window.location.hash,n=window.location.href,i=t.find(".wc-tabs, ul.tabs").first();i.find("a").addClass("elementor-clickable"),t.find(".wc-tab, .woocommerce-tabs .panel:not(.panel .panel)").hide(),o.toLowerCase().indexOf("comment-")>=0||"#reviews"===o||"#tab-reviews"===o?i.find("li.reviews_tab a").trigger("click"):n.indexOf("comment-page-")>0||n.indexOf("cpage=")>0?i.find("li.reviews_tab a").trigger("click"):"#tab-additional_information"===o?i.find("li.additional_information_tab a").trigger("click"):i.find("li:first a").trigger("click")},widgetProductsGrid:function(e){o.handleInputQuantityValue(e);let t=e.find(".jet-woo-carousel"),n=e.find(".jet-woo-products"),i=n.data("mobile-hover"),a=n.find(".jet-woo-products__item"),r=a.find(".jet-woo-products-cqw-wrapper"),l=a.find(".hovered-content"),d=!1,s=!1;r.length>0&&r.html().trim().length>0&&(d=!0),l.length>0&&l.html().trim().length>0&&(s=!0),(d||s)&&i&&o.mobileHoverOnTouch(a,".jet-woo-product-thumbnail"),t.length&&o.initCarousel(t,t.data("slider_options"))},widgetProductsList:function(e){o.handleInputQuantityValue(e)},widgetCategories:function(e){let t=e.find(".jet-woo-carousel"),n=e.find(".jet-woo-categories"),i=n.data("mobile-hover"),a=n.find(".jet-woo-categories__item"),r=a.find(".jet-woo-category-count");(n.hasClass("jet-woo-categories--preset-2")&&r.length>0||n.hasClass("jet-woo-categories--preset-3"))&&i&&o.mobileHoverOnTouch(a,".jet-woo-category-thumbnail"),t.length&&o.initCarousel(t,t.data("slider_options"))},mobileHoverOnTouch:function(t,n){void 0!==window.ontouchstart&&t.each(function(){let t=e(this),i=t.find(n+" a"),a=t.siblings();t.hasClass("jet-woo-products__item")&&t.not(n).each(function(){let n=e(this);o.mobileTouchEvent(t,n,a)}),o.mobileTouchEvent(t,i,a)})},mobileTouchEvent:function(t,o,n){o.on("click",function(o){t.hasClass("mobile-hover")||(o.preventDefault(),n.each(function(){e(this).hasClass("mobile-hover")&&e(this).removeClass("mobile-hover")}),t.addClass("mobile-hover"))})},initCarousel:function(n,i){let a=n.closest(".elementor-widget"),r=n.find(".swiper-slide").length,l=o.getElementorElementSettings(a),d=window.elementorFrontend.config.responsive.activeBreakpoints,s={},c=+l.columns||4,u=l.slides_overflow_enabled&&l.slides_overflow?+l.slides_overflow:0,p=void 0!==l.space_between_slides?+l.space_between_slides:10,f={mobile:1,tablet:2};(s={slidesPerView:c+u,spaceBetween:p,crossFade:"fade"===i.effect,handleElementorBreakpoints:!0}).breakpoints={};let m=c;Object.keys(d).reverse().forEach(e=>{let t=f[e]?f[e]:m,o=+l["columns_"+e]||t,n=l.slides_overflow_enabled&&l["slides_overflow_"+e]?+l["slides_overflow_"+e]:u;s.breakpoints[d[e].value]={slidesPerView:o+n,slidesPerGroup:+l["slides_to_scroll_"+e]||1,spaceBetween:void 0!==l["space_between_slides_"+e]?+l["space_between_slides_"+e]:p},m=+l["columns_"+e]||t}),i.paginationEnable&&(s.pagination={el:".swiper-pagination",clickable:!0}),i.navigationEnable&&(s.navigation={nextEl:".jet-swiper-button-next",prevEl:".jet-swiper-button-prev"});if(r>(+l["columns_"+t.getCurrentDeviceMode()]||+l.columns)){let g=t.utils.swiper;new g(n,e.extend({},s,i)),n.find(".jet-arrow").show()}else"vertical"===i.direction&&n.addClass("swiper-container-vertical"),n.find(".jet-arrow").hide()},handleJetPopupWithWCEvents:function(t,o,n,i){let a=e(i).closest(".jet-popup");a.length&&a.hasClass("quick-view-product")&&e(window).trigger({type:"jet-popup-close-trigger",popupData:{popupId:a.attr("id"),constantly:!1}});let r=e(i).closest("[data-purchase-popup-id]");if(r.length){let l=r.data("purchase-popup-id");l&&e(window).trigger({type:"jet-popup-open-trigger",popupData:{popupId:"jet-popup-"+l}})}},widgetCartTable:function(t){t.find(".cart-collaterals").filter(function(){return 0===e(this).children().length}).hide();"yes"===o.getElementorElementSettings(t).cart_update_automatically&&e(".woocommerce").on("change","input.qty",o.debounce(500,function(){e('[name="update_cart"]').trigger("click")}))},singleProductAjaxAddToCart:function(t){t&&t.preventDefault();let o=e(this).closest("form");if(!o[0].checkValidity())return o[0].reportValidity(),!1;let n=e(this),i=n.val()||"",a=o.serialize();return e.ajax({type:"POST",url:window.jetWooBuilderData.ajax_url,data:"action=jet_woo_builder_add_cart_single_product&add-to-cart="+i+"&"+a,beforeSend:function(){n.removeClass("added").addClass("loading")},complete:function(){n.addClass("added").removeClass("loading")},success:function(t){if(t.error&&t.product_url){window.location=t.product_url;return}if(e(document.body).trigger("wc_fragment_refresh"),e(document.body).trigger("added_to_cart",[t.fragments,t.cart_hash,n]),"undefined"==typeof wc_add_to_cart_params)return!1}}),!1},handleListingItemClick:function(t){let o=e(this).data("url"),n=e(this).data("target")||!1;if(o){if(t.preventDefault(),window.elementorFrontend&&window.elementorFrontend.isEditMode())return;if("_blank"===n){window.open(o);return}window.location=o}},debounce:function(e,t){let o;return function n(i){o&&clearTimeout(o),o=setTimeout(function e(){t.call(this,i),o=null},e)}},getElementorElementSettings:function(e){return window.elementorFrontend&&window.elementorFrontend.isEditMode()&&e.hasClass("elementor-element-edit-mode")?o.getEditorElementSettings(e):e.data("settings")||{}},getEditorElementSettings:function(e){let t=e.data("model-cid"),o;return t&&window.elementorFrontend.hasOwnProperty("config")&&window.elementorFrontend.config.hasOwnProperty("elements")&&window.elementorFrontend.config.elements.hasOwnProperty("data")&&(o=window.elementorFrontend.config.elements.data[t])?o.toJSON():{}},elementorFrontendInit:function(t){t.find("[data-element_type]").each(function(){let t=e(this),o=t.data("element_type");o&&("widget"===o&&(o=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,e)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,e),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+o,t,e))})}};e(window).on("elementor/frontend/init",o.init),o.commonInit(),window.JetWooBuilder=o}(jQuery,window.elementorFrontend);