1( function( $, elementor ) { 2 'use strict'; 3 4 var News247 = { 5 6 /** 7 * Create a new Swiper instance 8 * 9 * @param swiperElement widget scope 10 * @param swiperConfig swiper config 11 */ 12 swiper: function (swiperElement, swiperConfig) { 13 var swiperContainer = swiperElement.get(0); 14 if (typeof Swiper !== 'function') { 15 // If Swiper is not defined or not a function, load the Swiper library asynchronously 16 const asyncSwiper = elementor.utils.swiper; 17 return new asyncSwiper(swiperContainer, swiperConfig).then((newSwiperInstance) => { 18 return newSwiperInstance; 19 }); 20 } 21 // If Swiper is already defined, create a new Swiper instance using the global Swiper object 22 const swiperInstance = new Swiper(swiperContainer, swiperConfig); 23 return Promise.resolve(swiperInstance); 24 }, 25 26 init: function() { 27 var widgets = { 28 'news247-post-block5.default': News247.SlickSliderblock5, 29 'news247-post-block2.default': News247.SlickSliderblock2, 30 'news247-post-block4.default': News247.SlickSliderblock4, 31 'news247-post-list4.default': News247.SlickSliderblock4, 32 'news247-post-slide1.default': News247.SwiperSlide, 33 }; 34 $.each( widgets, function( widget, callback ) { 35 elementor.hooks.addAction( 'frontend/element_ready/' + widget, callback ); 36 } ); 37 }, 38 39 SlickSliderblock5: function( $scope ) { 40 let $el = $scope.find( '.post-block5-element' ); 41 42 if ( $el.length > 0 ) { 43 var dir = $("html").attr("dir"); 44 var rtl = false; 45 if( dir == 'rtl' ){ 46 rtl = true; 47 } 48 var pb5ap = $($el).data('pb5_en_ap'), 49 pb5nav = $($el).data('pb5_nav'); 50 51 $($el).slick({ 52 rtl: rtl, 53 draggable: false, 54 rows: 2, 55 slidesPerRow: 3, 56 slidesToScroll: 1, 57 infinite: true, 58 dots: false, 59 arrows: pb5nav, 60 autoplay: pb5ap, 61 prevArrow: '<span class="pb-common-prev pb-common-nav"><i class="fa fa-angle-left"></i></span>', 62 nextArrow: '<span class="pb-common-next pb-common-nav"><i class="fa fa-angle-right"></i></span>', 63 }); 64 } 65 66 }, 67 68 SlickSliderblock2: function( $scope ) { 69 let $el = $scope.find( '.post-block2-element' ); 70 71 if( $el.length > 0 ){ 72 var dir = $("html").attr("dir"); 73 var rtl = false; 74 if( dir == 'rtl' ){ 75 rtl = true; 76 } 77 var pb2ap = $($el).data('pb2_en_ap'), 78 pb2nav = $($el).data('pb2_nav'); 79 80 $($el).slick({ 81 rtl: rtl, 82 draggable: false, 83 rows: 2, 84 slidesPerRow: 1, 85 slidesToScroll: 1, 86 infinite: true, 87 dots: false, 88 arrows: pb2nav, 89 autoplay: pb2ap, 90 prevArrow: '<span class="pb-common-prev pb-common-nav"><i class="fa fa-angle-left"></i></span>', 91 nextArrow: '<span class="pb-common-next pb-common-nav"><i class="fa fa-angle-right"></i></span>', 92 }); 93 } 94 95 var pb2ap = $($el).data('pb2_en_ap'); 96 $($el).carousel({ 97 interval: pb2ap 98 }) 99 100 }, 101 102 SlickSliderblock4: function( $scope ) { 103 let $el = $scope.find( '.post-block4-element' ); 104 105 if( $el.length > 0 ){ 106 var dir = $("html").attr("dir"); 107 var rtl = false; 108 if( dir == 'rtl' ){ 109 rtl = true; 110 } 111 var pb4ap = $($el).data('pb4_en_ap'), 112 pb4nav = $($el).data('pb4_nav'); 113 114 $($el).slick({ 115 rtl: rtl, 116 draggable: false, 117 rows: 6, 118 slidesPerRow: 1, 119 slidesToScroll: 1, 120 infinite: true, 121 dots: false, 122 arrows: pb4nav, 123 autoplay: pb4ap, 124 prevArrow: '<span class="pb-common-prev pb-common-nav"><i class="fa fa-angle-left"></i></span>', 125 nextArrow: '<span class="pb-common-next pb-common-nav"><i class="fa fa-angle-right"></i></span>', 126 }); 127 } 128 129 }, 130 131 SwiperSlide: function( $scope ) { 132 let $el = $scope.find( '.post-slide1-warp' ); 133 134 if ( $el.length > 0 ) { 135 $($el).each(function () { 136 let $element = $(this).find( '.swiper-container' ); 137 let widget_id = $(this).find('.post-slide1-element').data( 'ps1_en_ap' ); 138 var config = { 139 slidesPerView: 1, 140 centeredSlides: false, 141 spaceBetween: 0, 142 loop: false, 143 slidesPerGroup: 1, 144 wrapperClass: 'swiper-wrapper', 145 slideClass: 'swiper-slide', 146 grabCursor: false, 147 allowTouchMove: true, 148 speed: 1200, //slider transition speed 149 parallax: true, 150 autoplay: false, 151 effect: 'slide', 152 mousewheelControl: 1, 153 pagination: { 154 el: '.swiper-pagination', 155 type: 'bullets', 156 dynamicBullets: true, 157 clickable: true, 158 }, 159 navigation: { 160 nextEl: `.swiper-next-${widget_id}`, 161 prevEl: `.swiper-prev-${widget_id}`, 162 }, 163 breakpoints: { 164 0: { 165 slidesPerView: 1, 166 slidesPerGroup: 1, 167 }, 168 767: { 169 slidesPerView: 1, 170 slidesPerGroup: 1, 171 }, 172 1024: { 173 slidesPerView: 1, 174 slidesPerGroup: 1, 175 }, 176 }, 177 }; 178 // swiper 179 let swiperClass = $scope.find(`.${window.elementorFrontend.config.swiperClass}`); 180 News247.swiper(swiperClass, config).then(function (swiperInstance) { }); 181 182 } ); 183 } 184 185 }, 186 187 }; 188 $( window ).on( 'elementor/frontend/init', News247.init ); 189}( jQuery, window.elementorFrontend ) );
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.