1(function ($) { 2 "use strict"; 3 $(window).on('elementor/frontend/init', () => { 4 elementorFrontend.hooks.addAction('frontend/element_ready/ziggy-products.default', ($scope) => { 5 let $carousel = $('.woocommerce-carousel', $scope); 6 if ($carousel.length > 0) { 7 let data = $carousel.data('settings'), 8 rtl = $('body').hasClass('rtl') ? true : false; 9 $('ul.products', $carousel).slick({ 10 rtl: rtl, 11 dots: data.navigation == 'both' || data.navigation == 'dots' ? true : false, 12 arrows: data.navigation == 'both' || data.navigation == 'arrows' ? true : false, 13 infinite: data.loop, 14 speed: 300, 15 slidesToShow: parseInt(data.items), 16 autoplay: data.autoplay, 17 autoplaySpeed: parseInt(data.autoplayTimeout), 18 slidesToScroll: 1, 19 lazyLoad: 'ondemand', 20 responsive: [ 21 { 22 breakpoint: parseInt(data.breakpoint_laptop), 23 settings: { 24 slidesToShow: parseInt(data.items_laptop), 25 } 26 }, 27 { 28 breakpoint: parseInt(data.breakpoint_tablet_extra), 29 settings: { 30 slidesToShow: parseInt(data.items_tablet_extra), 31 } 32 }, 33 { 34 breakpoint: parseInt(data.breakpoint_tablet), 35 settings: { 36 slidesToShow: parseInt(data.items_tablet), 37 } 38 }, 39 { 40 breakpoint: parseInt(data.breakpoint_mobile_extra), 41 settings: { 42 slidesToShow: parseInt(data.items_mobile_extra), 43 } 44 }, 45 { 46 breakpoint: parseInt(data.breakpoint_mobile), 47 settings: { 48 slidesToShow: parseInt(data.items_mobile), 49 } 50 } 51 ] 52 }).on('setPosition', function (event, slick) { 53 slick.$slides.css('height', slick.$slideTrack.height() + 'px'); 54 $carousel.find(".slick-slide").css('height', slick.$slideTrack.height() + 'px'); 55 }); 56 } 57 $('.product-block .gallery_item').on('click', function (e) { 58 59 let $this = $(this), 60 $parent = $this.closest('.product-block'), 61 $image = $parent.find('.product-image > img'), 62 image = $this.data('image'), 63 scrset = $this.data('scrset'); 64 $this.addClass('active'); 65 $this.siblings('.active').removeClass('active'); 66 67 $image.attr('src', image); 68 $image.attr('srcset', scrset); 69 }); 70 71 $('.product-block-list .gallery_item').on('click', function (e) { 72 var image = $(this).data('image'); 73 var $product = $(this).closest('li.product'); 74 var $image = $product.find('.menu-thumb img'); 75 $image.attr('src', image); 76 if ($(this).hasClass('active')) { 77 return; 78 } 79 $(this).parent().find('.active').removeClass('active'); 80 $(this).addClass('active'); 81 }); 82 }); 83 }); 84 85})(jQuery);
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.