class VamtamHrScrolling extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{items:".products.elementor-grid, .elementor-posts-container"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$items:this.$element.find(e.items)}}onInit(...e){super.onInit(...e),this.checkHandleHrLayout()}checkHandleHrLayout(){const e=this.$element.hasClass("vamtam-has-hr-layout"),t=this.$element.hasClass("vamtam-has-nav");e&&t&&this.handleHrLayoutNavigation()}handleHrLayoutNavigation(){(()=>{const e=jQuery('<div class="vamtam-nav">\n\t\t\t\t\t<span class="vamtam-nav-btn vamtam-nav-btn-prev">\n\t\t\t\t\t\t<i class="vamtamtheme- vamtam-theme-arrow-left"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span class="vamtam-nav-btn vamtam-nav-btn-next">\n\t\t\t\t\t\t<i class="vamtamtheme- vamtam-theme-arrow-right"></i>\n\t\t\t\t\t</span>\n\t\t\t\t</div>');this.elements.$items.after(e)})(),(()=>{const e=this.getWidgetType().includes("posts")?"--grid-column-gap":"--vamtam-col-gap";jQuery(this.$element.find(".vamtam-nav-btn")).off("click").on("click",t=>{t.preventDefault();const n=this.elements.$items,a=n.width(),s=jQuery(t.target).hasClass("vamtam-nav-btn-next");let l=parseFloat(this.getCachedCSSPropForDevice(e))||0,r=this.normalizeMultiUnitValue(this.getCachedCSSPropForDevice("--vamtam-col-hint"));r<0?r=0:l=0,s?n.scrollLeft(n.scrollLeft()+a+l-r):n.scrollLeft(n.scrollLeft()-a-l+r)});const t=e=>{const t=this.elements.$items[0],n=this.elements.$items;0===t.scrollLeft?(this.$element.find(".vamtam-nav-btn-prev").addClass("disabled"),this.$element.find(".vamtam-nav-btn-next").removeClass("disabled")):t.scrollLeft===t.scrollWidth-n.width()?(this.$element.find(".vamtam-nav-btn-prev").removeClass("disabled"),this.$element.find(".vamtam-nav-btn-next").addClass("disabled")):(this.$element.find(".vamtam-nav-btn-prev").removeClass("disabled"),this.$element.find(".vamtam-nav-btn-next").removeClass("disabled"))},n=window.VAMTAM.debounce(t,200),a=window.VAMTAM.debounce(t,500);this.elements.$items.off("scroll",n),this.elements.$items.on("scroll",n),jQuery(window).off("resize",a),jQuery(window).on("resize",a),this.elements.$items.trigger("scroll")})()}normalizeMultiUnitValue(e){let t=0;if(e.includes("px"))return t=parseFloat(e)||0,t;if(e.includes("%")){const n=this.$element.width();return t=parseFloat(e)/100*n,t}if(e.includes("em")){const n=parseFloat(this.$element.parent().css("font-size"));return t=parseFloat(n)*parseFloat(e),t}return 0}getCachedCSSPropForDevice(e){if(!e)return"";const t=jQuery("body").attr("data-elementor-device-mode");return this.cachedProps||(this.cachedProps={}),this.cachedProps[t]||(this.cachedProps[t]={}),this.cachedProps[t][e]||(this.cachedProps[t][e]=getComputedStyle(this.$element[0]).getPropertyValue(e)),this.cachedProps[t][e]}}jQuery(window).on("elementor/frontend/init",()=>{const e=[{name:"woocommerce-products",skin:"default"},{name:"woocommerce-product-related",skin:"default"},{name:"woocommerce-product-upsell",skin:"default"},{name:"posts",skin:"classic"},{name:"posts",skin:"vamtam_classic"},{name:"archive-posts",skin:"archive_classic"},{name:"archive-posts",skin:"vamtam_classic"}];if(elementorFrontend.elementsHandler&&elementorFrontend.elementsHandler.attachHandler)e.forEach(e=>{elementorFrontend.elementsHandler.attachHandler(e.name,VamtamHrScrolling,e.skin)});else{const t=e=>{elementorFrontend.elementsHandler.addHandler(VamtamHrScrolling,{$element:e})};e.forEach(e=>{elementorFrontend.hooks.addAction(`frontend/element_ready/${e.name}.${e.skin}`,t,100)})}});