PageSourceSearch

https://www.gocomet.com/blog/wp-content/themes/kadence/assets/js/splide-init.min.js?ver=1.1.40

js gocomet.com collected 2026-10-04 00:18:01 UTC 5,026 bytes, 165 lines download raw bytes

1/* global tns, kadenceSlideConfig */
2/**
3 * File slide-init.js.
4 * Gets slide going when needed.
5 */
6
7(function() {
8	'use strict';
9	window.kadenceSlide = {
10		/**
11		 * Initiate the script to process all
12		 */
13		start: function( element ) {
14			var sliderDirection = 'ltr',
15			nextLabel = element.getAttribute('data-slider-next-label'),
16			prevLabel = element.getAttribute('data-slider-prev-label'),
17			slideLabel = element.getAttribute('data-slider-slide-label'),
18			sliderSpeed = parseInt( element.getAttribute( 'data-slider-speed' ) ),
19			sliderAnimationSpeed = parseInt( element.getAttribute( 'data-slider-anim-speed' ) ),
20			sliderArrows = element.getAttribute( 'data-slider-arrows' ),
21			sliderDots = element.getAttribute( 'data-slider-dots' ),
22			sliderPause = element.getAttribute( 'data-slider-pause-hover' ),
23			sliderLoop = element.getAttribute( 'data-slider-loop' ),
24			sliderAuto = element.getAttribute( 'data-slider-auto' ),
25			xxl = parseInt( element.getAttribute( 'data-columns-xxl' ) ),
26			xl = parseInt( element.getAttribute( 'data-columns-xl' ) ),
27			md = parseInt( element.getAttribute( 'data-columns-md' ) ),
28			sm = parseInt( element.getAttribute( 'data-columns-sm' ) ),
29			xs = parseInt( element.getAttribute( 'data-columns-xs' ) ),
30			ss = parseInt( element.getAttribute( 'data-columns-ss' ) ),
31			gutter = parseInt( element.getAttribute( 'data-slider-gutter' ) ),
32			scroll = parseInt( element.getAttribute( 'data-slider-scroll' ) );
33			if ( ! nextLabel ) {
34				nextLabel = kadenceSlideConfig.next;
35			}
36			if ( ! prevLabel ) {
37				prevLabel = kadenceSlideConfig.next;
38			}
39			if ( ! slideLabel ) {
40				slideLabel = kadenceSlideConfig.slide;
41			}
42			if ( document.querySelector( 'html[dir="rtl"]' ) ) {
43				sliderDirection = 'rtl';
44			}
45			if ( 1 !== scroll ) {
46				scroll = 'page'
47			}
48			var scrollSxxl = xxl,
49				scrollSxl = xl,
50				scrollSmd = md,
51				scrollSsm = sm,
52				scrollSxs = xs,
53				scrollSss = ss;
54			if ( 1 === scroll ) {
55				scrollSxxl = 1;
56				scrollSxl = 1;
57				scrollSmd = 1;
58				scrollSsm = 1;
59				scrollSxs = 1;
60				scrollSss = 1;
61			}
62			var initialize = false;
63			var slideCount = element.querySelector( '.splide__list' ).childElementCount;
64			if ( window.innerWidth < 544 ) {
65				if ( slideCount > ss ) {
66					initialize = true;
67				}
68			} else if ( window.innerWidth < 768 ) {
69				if ( slideCount > xs ) {
70					initialize = true;
71				}
72			} else if ( window.innerWidth < 992 ) {
73				if (  slideCount > sm ) {
74					initialize = true;
75				}
76			} else if ( window.innerWidth < 1200 ) {
77				if ( slideCount > md ) {
78					initialize = true;
79				}
80			} else if ( window.innerWidth < 1500 ) {
81				if ( slideCount > xl ) {
82					initialize = true;
83				}
84			} else if ( slideCount > xxl ) {
85				initialize = true;
86			}
87			if ( initialize ) {
88				element.classList.add( 'splide-initial' );
89			}
90			var options = {
91				perPage: xxl,
92				type: ( 'false' === sliderLoop ? 'slide' : 'loop' ),
93				slideFocus: false,
94				perMove: scrollSxxl,
95				autoplay: ( sliderAuto == 'false' ? false : true ),
96				easing: undefined !== sliderAnimationSpeed && sliderAnimationSpeed > 1000 ? 'linear' : 'cubic-bezier(0.25, 1, 0.5, 1)',
97				speed: ( undefined !== sliderAnimationSpeed ? sliderAnimationSpeed : 400 ),
98				interval: ( undefined !== sliderSpeed ? sliderSpeed : 7000 ),
99				autoplayHoverPause: ( 'true' === sliderPause ? true : false ),
100				arrows: ( sliderArrows == 'false' ? false : true ),
101				pagination: ( sliderDots == 'false' ? false : true ),
102				gap: gutter + 'px',
103				direction: sliderDirection,
104				rewind:( sliderLoop == 'false' ? true : false ),
105				focus: 0,
106				perMove: scrollSxxl,
107				i18n: {
108					carousel: slideLabel,
109					prev: prevLabel,
110					next: nextLabel,
111					slideLabel: '%s ' + kadenceSlideConfig.of + ' %s',
112				},
113				breakpoints: {
114					543: {
115						perPage: ss,
116						perMove: scrollSss,
117					},
118					767: {
119						perPage: xs,
120						perMove: scrollSxs,
121					},
122					991: {
123						perPage: sm,
124						perMove: scrollSsm,
125					},
126					1199: {
127						perPage: md,
128						perMove: scrollSmd,
129					},
130					1499: {
131						perPage: xl,
132						perMove: scrollSxl,
133					}
134				}
135			};
136			var slider = new Splide( element, options );
137			if ( initialize ) {
138				slider.mount();
139			}
140		},
141		/**
142		 * Initiate the script to process all
143		 */
144		initAll: function( element ) {
145			document.querySelectorAll( '.kadence-slide-init' ).forEach(function ( element ) {
146				window.kadenceSlide.start( element );
147			} );
148		},
149		// Initiate the menus when the DOM loads.
150		init: function() {
151			if ( typeof Splide == 'function' ) {
152				window.kadenceSlide.initAll();
153			} else {
154				var initLoadDelay = setInterval( function(){ if ( typeof Splide == 'function' ) { window.kadenceSlide.initAll(); clearInterval(initLoadDelay); } }, 200 );
155			}
156		}
157	}
158	if ( 'loading' === document.readyState ) {
159		// The DOM has not yet been loaded.
160		document.addEventListener( 'DOMContentLoaded', window.kadenceSlide.init );
161	} else {
162		// The DOM has already been loaded.
163		window.kadenceSlide.init();
164	}
165})();

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.