github.com/wanliu/go-oauth2-server@v0.0.0-20180817021415-f928fa1580df/public/slick/slick.min.js (about) 1 ! 2 function(i) { 3 "use strict"; 4 "function" == typeof define && define.amd ? define(["jquery"], i) : "undefined" != typeof exports ? module.exports = i(require("jquery")) : i(jQuery) 5 } (function(i) { 6 "use strict"; 7 var e = window.Slick || {}; (e = function() { 8 var e = 0; 9 return function(t, o) { 10 var s, n = this; 11 n.defaults = { 12 accessibility: !0, 13 adaptiveHeight: !1, 14 appendArrows: i(t), 15 appendDots: i(t), 16 arrows: !0, 17 asNavFor: null, 18 prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>', 19 nextArrow: '<button class="slick-next" aria-label="Next" type="button">Next</button>', 20 autoplay: !1, 21 autoplaySpeed: 3e3, 22 centerMode: !1, 23 centerPadding: "50px", 24 cssEase: "ease", 25 customPaging: function(e, t) { 26 return i('<button type="button" />').text(t + 1) 27 }, 28 dots: !1, 29 dotsClass: "slick-dots", 30 draggable: !0, 31 easing: "linear", 32 edgeFriction: .35, 33 fade: !1, 34 focusOnSelect: !1, 35 focusOnChange: !1, 36 infinite: !0, 37 initialSlide: 0, 38 lazyLoad: "ondemand", 39 mobileFirst: !1, 40 pauseOnHover: !0, 41 pauseOnFocus: !0, 42 pauseOnDotsHover: !1, 43 respondTo: "window", 44 responsive: null, 45 rows: 1, 46 rtl: !1, 47 slide: "", 48 slidesPerRow: 1, 49 slidesToShow: 1, 50 slidesToScroll: 1, 51 speed: 500, 52 swipe: !0, 53 swipeToSlide: !1, 54 touchMove: !0, 55 touchThreshold: 5, 56 useCSS: !0, 57 useTransform: !0, 58 variableWidth: !1, 59 vertical: !1, 60 verticalSwiping: !1, 61 waitForAnimate: !0, 62 zIndex: 1e3 63 }, 64 n.initials = { 65 animating: !1, 66 dragging: !1, 67 autoPlayTimer: null, 68 currentDirection: 0, 69 currentLeft: null, 70 currentSlide: 0, 71 direction: 1, 72 $dots: null, 73 listWidth: null, 74 listHeight: null, 75 loadIndex: 0, 76 $nextArrow: null, 77 $prevArrow: null, 78 scrolling: !1, 79 slideCount: null, 80 slideWidth: null, 81 $slideTrack: null, 82 $slides: null, 83 sliding: !1, 84 slideOffset: 0, 85 swipeLeft: null, 86 swiping: !1, 87 $list: null, 88 touchObject: {}, 89 transformsEnabled: !1, 90 unslicked: !1 91 }, 92 i.extend(n, n.initials), 93 n.activeBreakpoint = null, 94 n.animType = null, 95 n.animProp = null, 96 n.breakpoints = [], 97 n.breakpointSettings = [], 98 n.cssTransitions = !1, 99 n.focussed = !1, 100 n.interrupted = !1, 101 n.hidden = "hidden", 102 n.paused = !0, 103 n.positionProp = null, 104 n.respondTo = null, 105 n.rowCount = 1, 106 n.shouldClick = !0, 107 n.$slider = i(t), 108 n.$slidesCache = null, 109 n.transformType = null, 110 n.transitionType = null, 111 n.visibilityChange = "visibilitychange", 112 n.windowWidth = 0, 113 n.windowTimer = null, 114 s = i(t).data("slick") || {}, 115 n.options = i.extend({}, 116 n.defaults, o, s), 117 n.currentSlide = n.options.initialSlide, 118 n.originalSettings = n.options, 119 void 0 !== document.mozHidden ? (n.hidden = "mozHidden", n.visibilityChange = "mozvisibilitychange") : void 0 !== document.webkitHidden && (n.hidden = "webkitHidden", n.visibilityChange = "webkitvisibilitychange"), 120 n.autoPlay = i.proxy(n.autoPlay, n), 121 n.autoPlayClear = i.proxy(n.autoPlayClear, n), 122 n.autoPlayIterator = i.proxy(n.autoPlayIterator, n), 123 n.changeSlide = i.proxy(n.changeSlide, n), 124 n.clickHandler = i.proxy(n.clickHandler, n), 125 n.selectHandler = i.proxy(n.selectHandler, n), 126 n.setPosition = i.proxy(n.setPosition, n), 127 n.swipeHandler = i.proxy(n.swipeHandler, n), 128 n.dragHandler = i.proxy(n.dragHandler, n), 129 n.keyHandler = i.proxy(n.keyHandler, n), 130 n.instanceUid = e++, 131 n.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/, 132 n.registerBreakpoints(), 133 n.init(!0) 134 } 135 } ()).prototype.activateADA = function() { 136 this.$slideTrack.find(".slick-active").attr({ 137 "aria-hidden": "false" 138 }).find("a, input, button, select").attr({ 139 tabindex: "0" 140 }) 141 }, 142 e.prototype.addSlide = e.prototype.slickAdd = function(e, t, o) { 143 var s = this; 144 if ("boolean" == typeof t) o = t, 145 t = null; 146 else if (t < 0 || t >= s.slideCount) return ! 1; 147 s.unload(), 148 "number" == typeof t ? 0 === t && 0 === s.$slides.length ? i(e).appendTo(s.$slideTrack) : o ? i(e).insertBefore(s.$slides.eq(t)) : i(e).insertAfter(s.$slides.eq(t)) : !0 === o ? i(e).prependTo(s.$slideTrack) : i(e).appendTo(s.$slideTrack), 149 s.$slides = s.$slideTrack.children(this.options.slide), 150 s.$slideTrack.children(this.options.slide).detach(), 151 s.$slideTrack.append(s.$slides), 152 s.$slides.each(function(e, t) { 153 i(t).attr("data-slick-index", e) 154 }), 155 s.$slidesCache = s.$slides, 156 s.reinit() 157 }, 158 e.prototype.animateHeight = function() { 159 var i = this; 160 if (1 === i.options.slidesToShow && !0 === i.options.adaptiveHeight && !1 === i.options.vertical) { 161 var e = i.$slides.eq(i.currentSlide).outerHeight(!0); 162 i.$list.animate({ 163 height: e 164 }, 165 i.options.speed) 166 } 167 }, 168 e.prototype.animateSlide = function(e, t) { 169 var o = {}, 170 s = this; 171 s.animateHeight(), 172 !0 === s.options.rtl && !1 === s.options.vertical && (e = -e), 173 !1 === s.transformsEnabled ? !1 === s.options.vertical ? s.$slideTrack.animate({ 174 left: e 175 }, 176 s.options.speed, s.options.easing, t) : s.$slideTrack.animate({ 177 top: e 178 }, 179 s.options.speed, s.options.easing, t) : !1 === s.cssTransitions ? (!0 === s.options.rtl && (s.currentLeft = -s.currentLeft), i({ 180 animStart: s.currentLeft 181 }).animate({ 182 animStart: e 183 }, 184 { 185 duration: s.options.speed, 186 easing: s.options.easing, 187 step: function(i) { 188 i = Math.ceil(i), 189 !1 === s.options.vertical ? (o[s.animType] = "translate(" + i + "px, 0px)", s.$slideTrack.css(o)) : (o[s.animType] = "translate(0px," + i + "px)", s.$slideTrack.css(o)) 190 }, 191 complete: function() { 192 t && t.call() 193 } 194 })) : (s.applyTransition(), e = Math.ceil(e), !1 === s.options.vertical ? o[s.animType] = "translate3d(" + e + "px, 0px, 0px)": o[s.animType] = "translate3d(0px," + e + "px, 0px)", s.$slideTrack.css(o), t && setTimeout(function() { 195 s.disableTransition(), 196 t.call() 197 }, 198 s.options.speed)) 199 }, 200 e.prototype.getNavTarget = function() { 201 var e = this, 202 t = e.options.asNavFor; 203 return t && null !== t && (t = i(t).not(e.$slider)), 204 t 205 }, 206 e.prototype.asNavFor = function(e) { 207 var t = this.getNavTarget(); 208 null !== t && "object" == typeof t && t.each(function() { 209 var t = i(this).slick("getSlick"); 210 t.unslicked || t.slideHandler(e, !0) 211 }) 212 }, 213 e.prototype.applyTransition = function(i) { 214 var e = this, 215 t = {}; ! 1 === e.options.fade ? t[e.transitionType] = e.transformType + " " + e.options.speed + "ms " + e.options.cssEase: t[e.transitionType] = "opacity " + e.options.speed + "ms " + e.options.cssEase, 216 !1 === e.options.fade ? e.$slideTrack.css(t) : e.$slides.eq(i).css(t) 217 }, 218 e.prototype.autoPlay = function() { 219 var i = this; 220 i.autoPlayClear(), 221 i.slideCount > i.options.slidesToShow && (i.autoPlayTimer = setInterval(i.autoPlayIterator, i.options.autoplaySpeed)) 222 }, 223 e.prototype.autoPlayClear = function() { 224 var i = this; 225 i.autoPlayTimer && clearInterval(i.autoPlayTimer) 226 }, 227 e.prototype.autoPlayIterator = function() { 228 var i = this, 229 e = i.currentSlide + i.options.slidesToScroll; 230 i.paused || i.interrupted || i.focussed || (!1 === i.options.infinite && (1 === i.direction && i.currentSlide + 1 === i.slideCount - 1 ? i.direction = 0 : 0 === i.direction && (e = i.currentSlide - i.options.slidesToScroll, i.currentSlide - 1 == 0 && (i.direction = 1))), i.slideHandler(e)) 231 }, 232 e.prototype.buildArrows = function() { 233 var e = this; ! 0 === e.options.arrows && (e.$prevArrow = i(e.options.prevArrow).addClass("slick-arrow"), e.$nextArrow = i(e.options.nextArrow).addClass("slick-arrow"), e.slideCount > e.options.slidesToShow ? (e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), e.htmlExpr.test(e.options.prevArrow) && e.$prevArrow.prependTo(e.options.appendArrows), e.htmlExpr.test(e.options.nextArrow) && e.$nextArrow.appendTo(e.options.appendArrows), !0 !== e.options.infinite && e.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true")) : e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({ 234 "aria-disabled": "true", 235 tabindex: "-1" 236 })) 237 }, 238 e.prototype.buildDots = function() { 239 var e, t, o = this; 240 if (!0 === o.options.dots) { 241 for (o.$slider.addClass("slick-dotted"), t = i("<ul />").addClass(o.options.dotsClass), e = 0; e <= o.getDotCount(); e += 1) t.append(i("<li />").append(o.options.customPaging.call(this, o, e))); 242 o.$dots = t.appendTo(o.options.appendDots), 243 o.$dots.find("li").first().addClass("slick-active") 244 } 245 }, 246 e.prototype.buildOut = function() { 247 var e = this; 248 e.$slides = e.$slider.children(e.options.slide + ":not(.slick-cloned)").addClass("slick-slide"), 249 e.slideCount = e.$slides.length, 250 e.$slides.each(function(e, t) { 251 i(t).attr("data-slick-index", e).data("originalStyling", i(t).attr("style") || "") 252 }), 253 e.$slider.addClass("slick-slider"), 254 e.$slideTrack = 0 === e.slideCount ? i('<div class="slick-track"/>').appendTo(e.$slider) : e.$slides.wrapAll('<div class="slick-track"/>').parent(), 255 e.$list = e.$slideTrack.wrap('<div class="slick-list"/>').parent(), 256 e.$slideTrack.css("opacity", 0), 257 !0 !== e.options.centerMode && !0 !== e.options.swipeToSlide || (e.options.slidesToScroll = 1), 258 i("img[data-lazy]", e.$slider).not("[src]").addClass("slick-loading"), 259 e.setupInfinite(), 260 e.buildArrows(), 261 e.buildDots(), 262 e.updateDots(), 263 e.setSlideClasses("number" == typeof e.currentSlide ? e.currentSlide: 0), 264 !0 === e.options.draggable && e.$list.addClass("draggable") 265 }, 266 e.prototype.buildRows = function() { 267 var i, e, t, o, s, n, r, l = this; 268 if (o = document.createDocumentFragment(), n = l.$slider.children(), l.options.rows > 1) { 269 for (r = l.options.slidesPerRow * l.options.rows, s = Math.ceil(n.length / r), i = 0; i < s; i++) { 270 var d = document.createElement("div"); 271 for (e = 0; e < l.options.rows; e++) { 272 var a = document.createElement("div"); 273 for (t = 0; t < l.options.slidesPerRow; t++) { 274 var c = i * r + (e * l.options.slidesPerRow + t); 275 n.get(c) && a.appendChild(n.get(c)) 276 } 277 d.appendChild(a) 278 } 279 o.appendChild(d) 280 } 281 l.$slider.empty().append(o), 282 l.$slider.children().children().children().css({ 283 width: 100 / l.options.slidesPerRow + "%", 284 display: "inline-block" 285 }) 286 } 287 }, 288 e.prototype.checkResponsive = function(e, t) { 289 var o, s, n, r = this, 290 l = !1, 291 d = r.$slider.width(), 292 a = window.innerWidth || i(window).width(); 293 if ("window" === r.respondTo ? n = a: "slider" === r.respondTo ? n = d: "min" === r.respondTo && (n = Math.min(a, d)), r.options.responsive && r.options.responsive.length && null !== r.options.responsive) { 294 s = null; 295 for (o in r.breakpoints) r.breakpoints.hasOwnProperty(o) && (!1 === r.originalSettings.mobileFirst ? n < r.breakpoints[o] && (s = r.breakpoints[o]) : n > r.breakpoints[o] && (s = r.breakpoints[o])); 296 null !== s ? null !== r.activeBreakpoint ? (s !== r.activeBreakpoint || t) && (r.activeBreakpoint = s, "unslick" === r.breakpointSettings[s] ? r.unslick(s) : (r.options = i.extend({}, 297 r.originalSettings, r.breakpointSettings[s]), !0 === e && (r.currentSlide = r.options.initialSlide), r.refresh(e)), l = s) : (r.activeBreakpoint = s, "unslick" === r.breakpointSettings[s] ? r.unslick(s) : (r.options = i.extend({}, 298 r.originalSettings, r.breakpointSettings[s]), !0 === e && (r.currentSlide = r.options.initialSlide), r.refresh(e)), l = s) : null !== r.activeBreakpoint && (r.activeBreakpoint = null, r.options = r.originalSettings, !0 === e && (r.currentSlide = r.options.initialSlide), r.refresh(e), l = s), 299 e || !1 === l || r.$slider.trigger("breakpoint", [r, l]) 300 } 301 }, 302 e.prototype.changeSlide = function(e, t) { 303 var o, s, n, r = this, 304 l = i(e.currentTarget); 305 switch (l.is("a") && e.preventDefault(), l.is("li") || (l = l.closest("li")), n = r.slideCount % r.options.slidesToScroll != 0, o = n ? 0 : (r.slideCount - r.currentSlide) % r.options.slidesToScroll, e.data.message) { 306 case "previous": 307 s = 0 === o ? r.options.slidesToScroll: r.options.slidesToShow - o, 308 r.slideCount > r.options.slidesToShow && r.slideHandler(r.currentSlide - s, !1, t); 309 break; 310 case "next": 311 s = 0 === o ? r.options.slidesToScroll: o, 312 r.slideCount > r.options.slidesToShow && r.slideHandler(r.currentSlide + s, !1, t); 313 break; 314 case "index": 315 var d = 0 === e.data.index ? 0 : e.data.index || l.index() * r.options.slidesToScroll; 316 r.slideHandler(r.checkNavigable(d), !1, t), 317 l.children().trigger("focus"); 318 break; 319 default: 320 return 321 } 322 }, 323 e.prototype.checkNavigable = function(i) { 324 var e, t; 325 if (e = this.getNavigableIndexes(), t = 0, i > e[e.length - 1]) i = e[e.length - 1]; 326 else for (var o in e) { 327 if (i < e[o]) { 328 i = t; 329 break 330 } 331 t = e[o] 332 } 333 return i 334 }, 335 e.prototype.cleanUpEvents = function() { 336 var e = this; 337 e.options.dots && null !== e.$dots && (i("li", e.$dots).off("click.slick", e.changeSlide).off("mouseenter.slick", i.proxy(e.interrupt, e, !0)).off("mouseleave.slick", i.proxy(e.interrupt, e, !1)), !0 === e.options.accessibility && e.$dots.off("keydown.slick", e.keyHandler)), 338 e.$slider.off("focus.slick blur.slick"), 339 !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow && e.$prevArrow.off("click.slick", e.changeSlide), e.$nextArrow && e.$nextArrow.off("click.slick", e.changeSlide), !0 === e.options.accessibility && (e.$prevArrow && e.$prevArrow.off("keydown.slick", e.keyHandler), e.$nextArrow && e.$nextArrow.off("keydown.slick", e.keyHandler))), 340 e.$list.off("touchstart.slick mousedown.slick", e.swipeHandler), 341 e.$list.off("touchmove.slick mousemove.slick", e.swipeHandler), 342 e.$list.off("touchend.slick mouseup.slick", e.swipeHandler), 343 e.$list.off("touchcancel.slick mouseleave.slick", e.swipeHandler), 344 e.$list.off("click.slick", e.clickHandler), 345 i(document).off(e.visibilityChange, e.visibility), 346 e.cleanUpSlideEvents(), 347 !0 === e.options.accessibility && e.$list.off("keydown.slick", e.keyHandler), 348 !0 === e.options.focusOnSelect && i(e.$slideTrack).children().off("click.slick", e.selectHandler), 349 i(window).off("orientationchange.slick.slick-" + e.instanceUid, e.orientationChange), 350 i(window).off("resize.slick.slick-" + e.instanceUid, e.resize), 351 i("[draggable!=true]", e.$slideTrack).off("dragstart", e.preventDefault), 352 i(window).off("load.slick.slick-" + e.instanceUid, e.setPosition) 353 }, 354 e.prototype.cleanUpSlideEvents = function() { 355 var e = this; 356 e.$list.off("mouseenter.slick", i.proxy(e.interrupt, e, !0)), 357 e.$list.off("mouseleave.slick", i.proxy(e.interrupt, e, !1)) 358 }, 359 e.prototype.cleanUpRows = function() { 360 var i, e = this; 361 e.options.rows > 1 && ((i = e.$slides.children().children()).removeAttr("style"), e.$slider.empty().append(i)) 362 }, 363 e.prototype.clickHandler = function(i) { ! 1 === this.shouldClick && (i.stopImmediatePropagation(), i.stopPropagation(), i.preventDefault()) 364 }, 365 e.prototype.destroy = function(e) { 366 var t = this; 367 t.autoPlayClear(), 368 t.touchObject = {}, 369 t.cleanUpEvents(), 370 i(".slick-cloned", t.$slider).detach(), 371 t.$dots && t.$dots.remove(), 372 t.$prevArrow && t.$prevArrow.length && (t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.remove()), 373 t.$nextArrow && t.$nextArrow.length && (t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.remove()), 374 t.$slides && (t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function() { 375 i(this).attr("style", i(this).data("originalStyling")) 376 }), t.$slideTrack.children(this.options.slide).detach(), t.$slideTrack.detach(), t.$list.detach(), t.$slider.append(t.$slides)), 377 t.cleanUpRows(), 378 t.$slider.removeClass("slick-slider"), 379 t.$slider.removeClass("slick-initialized"), 380 t.$slider.removeClass("slick-dotted"), 381 t.unslicked = !0, 382 e || t.$slider.trigger("destroy", [t]) 383 }, 384 e.prototype.disableTransition = function(i) { 385 var e = this, 386 t = {}; 387 t[e.transitionType] = "", 388 !1 === e.options.fade ? e.$slideTrack.css(t) : e.$slides.eq(i).css(t) 389 }, 390 e.prototype.fadeSlide = function(i, e) { 391 var t = this; ! 1 === t.cssTransitions ? (t.$slides.eq(i).css({ 392 zIndex: t.options.zIndex 393 }), t.$slides.eq(i).animate({ 394 opacity: 1 395 }, 396 t.options.speed, t.options.easing, e)) : (t.applyTransition(i), t.$slides.eq(i).css({ 397 opacity: 1, 398 zIndex: t.options.zIndex 399 }), e && setTimeout(function() { 400 t.disableTransition(i), 401 e.call() 402 }, 403 t.options.speed)) 404 }, 405 e.prototype.fadeSlideOut = function(i) { 406 var e = this; ! 1 === e.cssTransitions ? e.$slides.eq(i).animate({ 407 opacity: 0, 408 zIndex: e.options.zIndex - 2 409 }, 410 e.options.speed, e.options.easing) : (e.applyTransition(i), e.$slides.eq(i).css({ 411 opacity: 0, 412 zIndex: e.options.zIndex - 2 413 })) 414 }, 415 e.prototype.filterSlides = e.prototype.slickFilter = function(i) { 416 var e = this; 417 null !== i && (e.$slidesCache = e.$slides, e.unload(), e.$slideTrack.children(this.options.slide).detach(), e.$slidesCache.filter(i).appendTo(e.$slideTrack), e.reinit()) 418 }, 419 e.prototype.focusHandler = function() { 420 var e = this; 421 e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick", "*", 422 function(t) { 423 t.stopImmediatePropagation(); 424 var o = i(this); 425 setTimeout(function() { 426 e.options.pauseOnFocus && (e.focussed = o.is(":focus"), e.autoPlay()) 427 }, 428 0) 429 }) 430 }, 431 e.prototype.getCurrent = e.prototype.slickCurrentSlide = function() { 432 return this.currentSlide 433 }, 434 e.prototype.getDotCount = function() { 435 var i = this, 436 e = 0, 437 t = 0, 438 o = 0; 439 if (!0 === i.options.infinite) if (i.slideCount <= i.options.slidesToShow)++o; 440 else for (; e < i.slideCount;)++o, 441 e = t + i.options.slidesToScroll, 442 t += i.options.slidesToScroll <= i.options.slidesToShow ? i.options.slidesToScroll: i.options.slidesToShow; 443 else if (!0 === i.options.centerMode) o = i.slideCount; 444 else if (i.options.asNavFor) for (; e < i.slideCount;)++o, 445 e = t + i.options.slidesToScroll, 446 t += i.options.slidesToScroll <= i.options.slidesToShow ? i.options.slidesToScroll: i.options.slidesToShow; 447 else o = 1 + Math.ceil((i.slideCount - i.options.slidesToShow) / i.options.slidesToScroll); 448 return o - 1 449 }, 450 e.prototype.getLeft = function(i) { 451 var e, t, o, s, n = this, 452 r = 0; 453 return n.slideOffset = 0, 454 t = n.$slides.first().outerHeight(!0), 455 !0 === n.options.infinite ? (n.slideCount > n.options.slidesToShow && (n.slideOffset = n.slideWidth * n.options.slidesToShow * -1, s = -1, !0 === n.options.vertical && !0 === n.options.centerMode && (2 === n.options.slidesToShow ? s = -1.5 : 1 === n.options.slidesToShow && (s = -2)), r = t * n.options.slidesToShow * s), n.slideCount % n.options.slidesToScroll != 0 && i + n.options.slidesToScroll > n.slideCount && n.slideCount > n.options.slidesToShow && (i > n.slideCount ? (n.slideOffset = (n.options.slidesToShow - (i - n.slideCount)) * n.slideWidth * -1, r = (n.options.slidesToShow - (i - n.slideCount)) * t * -1) : (n.slideOffset = n.slideCount % n.options.slidesToScroll * n.slideWidth * -1, r = n.slideCount % n.options.slidesToScroll * t * -1))) : i + n.options.slidesToShow > n.slideCount && (n.slideOffset = (i + n.options.slidesToShow - n.slideCount) * n.slideWidth, r = (i + n.options.slidesToShow - n.slideCount) * t), 456 n.slideCount <= n.options.slidesToShow && (n.slideOffset = 0, r = 0), 457 !0 === n.options.centerMode && n.slideCount <= n.options.slidesToShow ? n.slideOffset = n.slideWidth * Math.floor(n.options.slidesToShow) / 2 - n.slideWidth * n.slideCount / 2 : !0 === n.options.centerMode && !0 === n.options.infinite ? n.slideOffset += n.slideWidth * Math.floor(n.options.slidesToShow / 2) - n.slideWidth: !0 === n.options.centerMode && (n.slideOffset = 0, n.slideOffset += n.slideWidth * Math.floor(n.options.slidesToShow / 2)), 458 e = !1 === n.options.vertical ? i * n.slideWidth * -1 + n.slideOffset: i * t * -1 + r, 459 !0 === n.options.variableWidth && (o = n.slideCount <= n.options.slidesToShow || !1 === n.options.infinite ? n.$slideTrack.children(".slick-slide").eq(i) : n.$slideTrack.children(".slick-slide").eq(i + n.options.slidesToShow), e = !0 === n.options.rtl ? o[0] ? -1 * (n.$slideTrack.width() - o[0].offsetLeft - o.width()) : 0 : o[0] ? -1 * o[0].offsetLeft: 0, !0 === n.options.centerMode && (o = n.slideCount <= n.options.slidesToShow || !1 === n.options.infinite ? n.$slideTrack.children(".slick-slide").eq(i) : n.$slideTrack.children(".slick-slide").eq(i + n.options.slidesToShow + 1), e = !0 === n.options.rtl ? o[0] ? -1 * (n.$slideTrack.width() - o[0].offsetLeft - o.width()) : 0 : o[0] ? -1 * o[0].offsetLeft: 0, e += (n.$list.width() - o.outerWidth()) / 2)), 460 e 461 }, 462 e.prototype.getOption = e.prototype.slickGetOption = function(i) { 463 return this.options[i] 464 }, 465 e.prototype.getNavigableIndexes = function() { 466 var i, e = this, 467 t = 0, 468 o = 0, 469 s = []; 470 for (!1 === e.options.infinite ? i = e.slideCount: (t = -1 * e.options.slidesToScroll, o = -1 * e.options.slidesToScroll, i = 2 * e.slideCount); t < i;) s.push(t), 471 t = o + e.options.slidesToScroll, 472 o += e.options.slidesToScroll <= e.options.slidesToShow ? e.options.slidesToScroll: e.options.slidesToShow; 473 return s 474 }, 475 e.prototype.getSlick = function() { 476 return this 477 }, 478 e.prototype.getSlideCount = function() { 479 var e, t, o = this; 480 return t = !0 === o.options.centerMode ? o.slideWidth * Math.floor(o.options.slidesToShow / 2) : 0, 481 !0 === o.options.swipeToSlide ? (o.$slideTrack.find(".slick-slide").each(function(s, n) { 482 if (n.offsetLeft - t + i(n).outerWidth() / 2 > -1 * o.swipeLeft) return e = n, 483 !1 484 }), Math.abs(i(e).attr("data-slick-index") - o.currentSlide) || 1) : o.options.slidesToScroll 485 }, 486 e.prototype.goTo = e.prototype.slickGoTo = function(i, e) { 487 this.changeSlide({ 488 data: { 489 message: "index", 490 index: parseInt(i) 491 } 492 }, 493 e) 494 }, 495 e.prototype.init = function(e) { 496 var t = this; 497 i(t.$slider).hasClass("slick-initialized") || (i(t.$slider).addClass("slick-initialized"), t.buildRows(), t.buildOut(), t.setProps(), t.startLoad(), t.loadSlider(), t.initializeEvents(), t.updateArrows(), t.updateDots(), t.checkResponsive(!0), t.focusHandler()), 498 e && t.$slider.trigger("init", [t]), 499 !0 === t.options.accessibility && t.initADA(), 500 t.options.autoplay && (t.paused = !1, t.autoPlay()) 501 }, 502 e.prototype.initADA = function() { 503 var e = this, 504 t = Math.ceil(e.slideCount / e.options.slidesToShow), 505 o = e.getNavigableIndexes().filter(function(i) { 506 return i >= 0 && i < e.slideCount 507 }); 508 e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({ 509 "aria-hidden": "true", 510 tabindex: "-1" 511 }).find("a, input, button, select").attr({ 512 tabindex: "-1" 513 }), 514 null !== e.$dots && (e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t) { 515 var s = o.indexOf(t); 516 i(this).attr({ 517 role: "tabpanel", 518 id: "slick-slide" + e.instanceUid + t, 519 tabindex: -1 520 }), 521 -1 !== s && i(this).attr({ 522 "aria-describedby": "slick-slide-control" + e.instanceUid + s 523 }) 524 }), e.$dots.attr("role", "tablist").find("li").each(function(s) { 525 var n = o[s]; 526 i(this).attr({ 527 role: "presentation" 528 }), 529 i(this).find("button").first().attr({ 530 role: "tab", 531 id: "slick-slide-control" + e.instanceUid + s, 532 "aria-controls": "slick-slide" + e.instanceUid + n, 533 "aria-label": s + 1 + " of " + t, 534 "aria-selected": null, 535 tabindex: "-1" 536 }) 537 }).eq(e.currentSlide).find("button").attr({ 538 "aria-selected": "true", 539 tabindex: "0" 540 }).end()); 541 for (var s = e.currentSlide, 542 n = s + e.options.slidesToShow; s < n; s++) e.$slides.eq(s).attr("tabindex", 0); 543 e.activateADA() 544 }, 545 e.prototype.initArrowEvents = function() { 546 var i = this; ! 0 === i.options.arrows && i.slideCount > i.options.slidesToShow && (i.$prevArrow.off("click.slick").on("click.slick", { 547 message: "previous" 548 }, 549 i.changeSlide), i.$nextArrow.off("click.slick").on("click.slick", { 550 message: "next" 551 }, 552 i.changeSlide), !0 === i.options.accessibility && (i.$prevArrow.on("keydown.slick", i.keyHandler), i.$nextArrow.on("keydown.slick", i.keyHandler))) 553 }, 554 e.prototype.initDotEvents = function() { 555 var e = this; ! 0 === e.options.dots && (i("li", e.$dots).on("click.slick", { 556 message: "index" 557 }, 558 e.changeSlide), !0 === e.options.accessibility && e.$dots.on("keydown.slick", e.keyHandler)), 559 !0 === e.options.dots && !0 === e.options.pauseOnDotsHover && i("li", e.$dots).on("mouseenter.slick", i.proxy(e.interrupt, e, !0)).on("mouseleave.slick", i.proxy(e.interrupt, e, !1)) 560 }, 561 e.prototype.initSlideEvents = function() { 562 var e = this; 563 e.options.pauseOnHover && (e.$list.on("mouseenter.slick", i.proxy(e.interrupt, e, !0)), e.$list.on("mouseleave.slick", i.proxy(e.interrupt, e, !1))) 564 }, 565 e.prototype.initializeEvents = function() { 566 var e = this; 567 e.initArrowEvents(), 568 e.initDotEvents(), 569 e.initSlideEvents(), 570 e.$list.on("touchstart.slick mousedown.slick", { 571 action: "start" 572 }, 573 e.swipeHandler), 574 e.$list.on("touchmove.slick mousemove.slick", { 575 action: "move" 576 }, 577 e.swipeHandler), 578 e.$list.on("touchend.slick mouseup.slick", { 579 action: "end" 580 }, 581 e.swipeHandler), 582 e.$list.on("touchcancel.slick mouseleave.slick", { 583 action: "end" 584 }, 585 e.swipeHandler), 586 e.$list.on("click.slick", e.clickHandler), 587 i(document).on(e.visibilityChange, i.proxy(e.visibility, e)), 588 !0 === e.options.accessibility && e.$list.on("keydown.slick", e.keyHandler), 589 !0 === e.options.focusOnSelect && i(e.$slideTrack).children().on("click.slick", e.selectHandler), 590 i(window).on("orientationchange.slick.slick-" + e.instanceUid, i.proxy(e.orientationChange, e)), 591 i(window).on("resize.slick.slick-" + e.instanceUid, i.proxy(e.resize, e)), 592 i("[draggable!=true]", e.$slideTrack).on("dragstart", e.preventDefault), 593 i(window).on("load.slick.slick-" + e.instanceUid, e.setPosition), 594 i(e.setPosition) 595 }, 596 e.prototype.initUI = function() { 597 var i = this; ! 0 === i.options.arrows && i.slideCount > i.options.slidesToShow && (i.$prevArrow.show(), i.$nextArrow.show()), 598 !0 === i.options.dots && i.slideCount > i.options.slidesToShow && i.$dots.show() 599 }, 600 e.prototype.keyHandler = function(i) { 601 var e = this; 602 i.target.tagName.match("TEXTAREA|INPUT|SELECT") || (37 === i.keyCode && !0 === e.options.accessibility ? e.changeSlide({ 603 data: { 604 message: !0 === e.options.rtl ? "next": "previous" 605 } 606 }) : 39 === i.keyCode && !0 === e.options.accessibility && e.changeSlide({ 607 data: { 608 message: !0 === e.options.rtl ? "previous": "next" 609 } 610 })) 611 }, 612 e.prototype.lazyLoad = function() { 613 function e(e) { 614 i("img[data-lazy]", e).each(function() { 615 var e = i(this), 616 t = i(this).attr("data-lazy"), 617 o = i(this).attr("data-srcset"), 618 s = i(this).attr("data-sizes") || n.$slider.attr("data-sizes"), 619 r = document.createElement("img"); 620 r.onload = function() { 621 e.animate({ 622 opacity: 0 623 }, 624 100, 625 function() { 626 o && (e.attr("srcset", o), s && e.attr("sizes", s)), 627 e.attr("src", t).animate({ 628 opacity: 1 629 }, 630 200, 631 function() { 632 e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading") 633 }), 634 n.$slider.trigger("lazyLoaded", [n, e, t]) 635 }) 636 }, 637 r.onerror = function() { 638 e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), 639 n.$slider.trigger("lazyLoadError", [n, e, t]) 640 }, 641 r.src = t 642 }) 643 } 644 var t, o, s, n = this; 645 if (!0 === n.options.centerMode ? !0 === n.options.infinite ? s = (o = n.currentSlide + (n.options.slidesToShow / 2 + 1)) + n.options.slidesToShow + 2 : (o = Math.max(0, n.currentSlide - (n.options.slidesToShow / 2 + 1)), s = n.options.slidesToShow / 2 + 1 + 2 + n.currentSlide) : (o = n.options.infinite ? n.options.slidesToShow + n.currentSlide: n.currentSlide, s = Math.ceil(o + n.options.slidesToShow), !0 === n.options.fade && (o > 0 && o--, s <= n.slideCount && s++)), t = n.$slider.find(".slick-slide").slice(o, s), "anticipated" === n.options.lazyLoad) for (var r = o - 1, 646 l = s, 647 d = n.$slider.find(".slick-slide"), a = 0; a < n.options.slidesToScroll; a++) r < 0 && (r = n.slideCount - 1), 648 t = (t = t.add(d.eq(r))).add(d.eq(l)), 649 r--, 650 l++; 651 e(t), 652 n.slideCount <= n.options.slidesToShow ? e(n.$slider.find(".slick-slide")) : n.currentSlide >= n.slideCount - n.options.slidesToShow ? e(n.$slider.find(".slick-cloned").slice(0, n.options.slidesToShow)) : 0 === n.currentSlide && e(n.$slider.find(".slick-cloned").slice( - 1 * n.options.slidesToShow)) 653 }, 654 e.prototype.loadSlider = function() { 655 var i = this; 656 i.setPosition(), 657 i.$slideTrack.css({ 658 opacity: 1 659 }), 660 i.$slider.removeClass("slick-loading"), 661 i.initUI(), 662 "progressive" === i.options.lazyLoad && i.progressiveLazyLoad() 663 }, 664 e.prototype.next = e.prototype.slickNext = function() { 665 this.changeSlide({ 666 data: { 667 message: "next" 668 } 669 }) 670 }, 671 e.prototype.orientationChange = function() { 672 var i = this; 673 i.checkResponsive(), 674 i.setPosition() 675 }, 676 e.prototype.pause = e.prototype.slickPause = function() { 677 var i = this; 678 i.autoPlayClear(), 679 i.paused = !0 680 }, 681 e.prototype.play = e.prototype.slickPlay = function() { 682 var i = this; 683 i.autoPlay(), 684 i.options.autoplay = !0, 685 i.paused = !1, 686 i.focussed = !1, 687 i.interrupted = !1 688 }, 689 e.prototype.postSlide = function(e) { 690 var t = this; 691 t.unslicked || (t.$slider.trigger("afterChange", [t, e]), t.animating = !1, t.slideCount > t.options.slidesToShow && t.setPosition(), t.swipeLeft = null, t.options.autoplay && t.autoPlay(), !0 === t.options.accessibility && (t.initADA(), t.options.focusOnChange && i(t.$slides.get(t.currentSlide)).attr("tabindex", 0).focus())) 692 }, 693 e.prototype.prev = e.prototype.slickPrev = function() { 694 this.changeSlide({ 695 data: { 696 message: "previous" 697 } 698 }) 699 }, 700 e.prototype.preventDefault = function(i) { 701 i.preventDefault() 702 }, 703 e.prototype.progressiveLazyLoad = function(e) { 704 e = e || 1; 705 var t, o, s, n, r, l = this, 706 d = i("img[data-lazy]", l.$slider); 707 d.length ? (t = d.first(), o = t.attr("data-lazy"), s = t.attr("data-srcset"), n = t.attr("data-sizes") || l.$slider.attr("data-sizes"), (r = document.createElement("img")).onload = function() { 708 s && (t.attr("srcset", s), n && t.attr("sizes", n)), 709 t.attr("src", o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"), 710 !0 === l.options.adaptiveHeight && l.setPosition(), 711 l.$slider.trigger("lazyLoaded", [l, t, o]), 712 l.progressiveLazyLoad() 713 }, 714 r.onerror = function() { 715 e < 3 ? setTimeout(function() { 716 l.progressiveLazyLoad(e + 1) 717 }, 718 500) : (t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), l.$slider.trigger("lazyLoadError", [l, t, o]), l.progressiveLazyLoad()) 719 }, 720 r.src = o) : l.$slider.trigger("allImagesLoaded", [l]) 721 }, 722 e.prototype.refresh = function(e) { 723 var t, o, s = this; 724 o = s.slideCount - s.options.slidesToShow, 725 !s.options.infinite && s.currentSlide > o && (s.currentSlide = o), 726 s.slideCount <= s.options.slidesToShow && (s.currentSlide = 0), 727 t = s.currentSlide, 728 s.destroy(!0), 729 i.extend(s, s.initials, { 730 currentSlide: t 731 }), 732 s.init(), 733 e || s.changeSlide({ 734 data: { 735 message: "index", 736 index: t 737 } 738 }, 739 !1) 740 }, 741 e.prototype.registerBreakpoints = function() { 742 var e, t, o, s = this, 743 n = s.options.responsive || null; 744 if ("array" === i.type(n) && n.length) { 745 s.respondTo = s.options.respondTo || "window"; 746 for (e in n) if (o = s.breakpoints.length - 1, n.hasOwnProperty(e)) { 747 for (t = n[e].breakpoint; o >= 0;) s.breakpoints[o] && s.breakpoints[o] === t && s.breakpoints.splice(o, 1), 748 o--; 749 s.breakpoints.push(t), 750 s.breakpointSettings[t] = n[e].settings 751 } 752 s.breakpoints.sort(function(i, e) { 753 return s.options.mobileFirst ? i - e: e - i 754 }) 755 } 756 }, 757 e.prototype.reinit = function() { 758 var e = this; 759 e.$slides = e.$slideTrack.children(e.options.slide).addClass("slick-slide"), 760 e.slideCount = e.$slides.length, 761 e.currentSlide >= e.slideCount && 0 !== e.currentSlide && (e.currentSlide = e.currentSlide - e.options.slidesToScroll), 762 e.slideCount <= e.options.slidesToShow && (e.currentSlide = 0), 763 e.registerBreakpoints(), 764 e.setProps(), 765 e.setupInfinite(), 766 e.buildArrows(), 767 e.updateArrows(), 768 e.initArrowEvents(), 769 e.buildDots(), 770 e.updateDots(), 771 e.initDotEvents(), 772 e.cleanUpSlideEvents(), 773 e.initSlideEvents(), 774 e.checkResponsive(!1, !0), 775 !0 === e.options.focusOnSelect && i(e.$slideTrack).children().on("click.slick", e.selectHandler), 776 e.setSlideClasses("number" == typeof e.currentSlide ? e.currentSlide: 0), 777 e.setPosition(), 778 e.focusHandler(), 779 e.paused = !e.options.autoplay, 780 e.autoPlay(), 781 e.$slider.trigger("reInit", [e]) 782 }, 783 e.prototype.resize = function() { 784 var e = this; 785 i(window).width() !== e.windowWidth && (clearTimeout(e.windowDelay), e.windowDelay = window.setTimeout(function() { 786 e.windowWidth = i(window).width(), 787 e.checkResponsive(), 788 e.unslicked || e.setPosition() 789 }, 790 50)) 791 }, 792 e.prototype.removeSlide = e.prototype.slickRemove = function(i, e, t) { 793 var o = this; 794 if (i = "boolean" == typeof i ? !0 === (e = i) ? 0 : o.slideCount - 1 : !0 === e ? --i: i, o.slideCount < 1 || i < 0 || i > o.slideCount - 1) return ! 1; 795 o.unload(), 796 !0 === t ? o.$slideTrack.children().remove() : o.$slideTrack.children(this.options.slide).eq(i).remove(), 797 o.$slides = o.$slideTrack.children(this.options.slide), 798 o.$slideTrack.children(this.options.slide).detach(), 799 o.$slideTrack.append(o.$slides), 800 o.$slidesCache = o.$slides, 801 o.reinit() 802 }, 803 e.prototype.setCSS = function(i) { 804 var e, t, o = this, 805 s = {}; ! 0 === o.options.rtl && (i = -i), 806 e = "left" == o.positionProp ? Math.ceil(i) + "px": "0px", 807 t = "top" == o.positionProp ? Math.ceil(i) + "px": "0px", 808 s[o.positionProp] = i, 809 !1 === o.transformsEnabled ? o.$slideTrack.css(s) : (s = {}, 810 !1 === o.cssTransitions ? (s[o.animType] = "translate(" + e + ", " + t + ")", o.$slideTrack.css(s)) : (s[o.animType] = "translate3d(" + e + ", " + t + ", 0px)", o.$slideTrack.css(s))) 811 }, 812 e.prototype.setDimensions = function() { 813 var i = this; ! 1 === i.options.vertical ? !0 === i.options.centerMode && i.$list.css({ 814 padding: "0px " + i.options.centerPadding 815 }) : (i.$list.height(i.$slides.first().outerHeight(!0) * i.options.slidesToShow), !0 === i.options.centerMode && i.$list.css({ 816 padding: i.options.centerPadding + " 0px" 817 })), 818 i.listWidth = i.$list.width(), 819 i.listHeight = i.$list.height(), 820 !1 === i.options.vertical && !1 === i.options.variableWidth ? (i.slideWidth = Math.ceil(i.listWidth / i.options.slidesToShow), i.$slideTrack.width(Math.ceil(i.slideWidth * i.$slideTrack.children(".slick-slide").length))) : !0 === i.options.variableWidth ? i.$slideTrack.width(5e3 * i.slideCount) : (i.slideWidth = Math.ceil(i.listWidth), i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0) * i.$slideTrack.children(".slick-slide").length))); 821 var e = i.$slides.first().outerWidth(!0) - i.$slides.first().width(); ! 1 === i.options.variableWidth && i.$slideTrack.children(".slick-slide").width(i.slideWidth - e) 822 }, 823 e.prototype.setFade = function() { 824 var e, t = this; 825 t.$slides.each(function(o, s) { 826 e = t.slideWidth * o * -1, 827 !0 === t.options.rtl ? i(s).css({ 828 position: "relative", 829 right: e, 830 top: 0, 831 zIndex: t.options.zIndex - 2, 832 opacity: 0 833 }) : i(s).css({ 834 position: "relative", 835 left: e, 836 top: 0, 837 zIndex: t.options.zIndex - 2, 838 opacity: 0 839 }) 840 }), 841 t.$slides.eq(t.currentSlide).css({ 842 zIndex: t.options.zIndex - 1, 843 opacity: 1 844 }) 845 }, 846 e.prototype.setHeight = function() { 847 var i = this; 848 if (1 === i.options.slidesToShow && !0 === i.options.adaptiveHeight && !1 === i.options.vertical) { 849 var e = i.$slides.eq(i.currentSlide).outerHeight(!0); 850 i.$list.css("height", e) 851 } 852 }, 853 e.prototype.setOption = e.prototype.slickSetOption = function() { 854 var e, t, o, s, n, r = this, 855 l = !1; 856 if ("object" === i.type(arguments[0]) ? (o = arguments[0], l = arguments[1], n = "multiple") : "string" === i.type(arguments[0]) && (o = arguments[0], s = arguments[1], l = arguments[2], "responsive" === arguments[0] && "array" === i.type(arguments[1]) ? n = "responsive": void 0 !== arguments[1] && (n = "single")), "single" === n) r.options[o] = s; 857 else if ("multiple" === n) i.each(o, 858 function(i, e) { 859 r.options[i] = e 860 }); 861 else if ("responsive" === n) for (t in s) if ("array" !== i.type(r.options.responsive)) r.options.responsive = [s[t]]; 862 else { 863 for (e = r.options.responsive.length - 1; e >= 0;) r.options.responsive[e].breakpoint === s[t].breakpoint && r.options.responsive.splice(e, 1), 864 e--; 865 r.options.responsive.push(s[t]) 866 } 867 l && (r.unload(), r.reinit()) 868 }, 869 e.prototype.setPosition = function() { 870 var i = this; 871 i.setDimensions(), 872 i.setHeight(), 873 !1 === i.options.fade ? i.setCSS(i.getLeft(i.currentSlide)) : i.setFade(), 874 i.$slider.trigger("setPosition", [i]) 875 }, 876 e.prototype.setProps = function() { 877 var i = this, 878 e = document.body.style; 879 i.positionProp = !0 === i.options.vertical ? "top": "left", 880 "top" === i.positionProp ? i.$slider.addClass("slick-vertical") : i.$slider.removeClass("slick-vertical"), 881 void 0 === e.WebkitTransition && void 0 === e.MozTransition && void 0 === e.msTransition || !0 === i.options.useCSS && (i.cssTransitions = !0), 882 i.options.fade && ("number" == typeof i.options.zIndex ? i.options.zIndex < 3 && (i.options.zIndex = 3) : i.options.zIndex = i.defaults.zIndex), 883 void 0 !== e.OTransform && (i.animType = "OTransform", i.transformType = "-o-transform", i.transitionType = "OTransition", void 0 === e.perspectiveProperty && void 0 === e.webkitPerspective && (i.animType = !1)), 884 void 0 !== e.MozTransform && (i.animType = "MozTransform", i.transformType = "-moz-transform", i.transitionType = "MozTransition", void 0 === e.perspectiveProperty && void 0 === e.MozPerspective && (i.animType = !1)), 885 void 0 !== e.webkitTransform && (i.animType = "webkitTransform", i.transformType = "-webkit-transform", i.transitionType = "webkitTransition", void 0 === e.perspectiveProperty && void 0 === e.webkitPerspective && (i.animType = !1)), 886 void 0 !== e.msTransform && (i.animType = "msTransform", i.transformType = "-ms-transform", i.transitionType = "msTransition", void 0 === e.msTransform && (i.animType = !1)), 887 void 0 !== e.transform && !1 !== i.animType && (i.animType = "transform", i.transformType = "transform", i.transitionType = "transition"), 888 i.transformsEnabled = i.options.useTransform && null !== i.animType && !1 !== i.animType 889 }, 890 e.prototype.setSlideClasses = function(i) { 891 var e, t, o, s, n = this; 892 if (t = n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden", "true"), n.$slides.eq(i).addClass("slick-current"), !0 === n.options.centerMode) { 893 var r = n.options.slidesToShow % 2 == 0 ? 1 : 0; 894 e = Math.floor(n.options.slidesToShow / 2), 895 !0 === n.options.infinite && (i >= e && i <= n.slideCount - 1 - e ? n.$slides.slice(i - e + r, i + e + 1).addClass("slick-active").attr("aria-hidden", "false") : (o = n.options.slidesToShow + i, t.slice(o - e + 1 + r, o + e + 2).addClass("slick-active").attr("aria-hidden", "false")), 0 === i ? t.eq(t.length - 1 - n.options.slidesToShow).addClass("slick-center") : i === n.slideCount - 1 && t.eq(n.options.slidesToShow).addClass("slick-center")), 896 n.$slides.eq(i).addClass("slick-center") 897 } else i >= 0 && i <= n.slideCount - n.options.slidesToShow ? n.$slides.slice(i, i + n.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false") : t.length <= n.options.slidesToShow ? t.addClass("slick-active").attr("aria-hidden", "false") : (s = n.slideCount % n.options.slidesToShow, o = !0 === n.options.infinite ? n.options.slidesToShow + i: i, n.options.slidesToShow == n.options.slidesToScroll && n.slideCount - i < n.options.slidesToShow ? t.slice(o - (n.options.slidesToShow - s), o + s).addClass("slick-active").attr("aria-hidden", "false") : t.slice(o, o + n.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false")); 898 "ondemand" !== n.options.lazyLoad && "anticipated" !== n.options.lazyLoad || n.lazyLoad() 899 }, 900 e.prototype.setupInfinite = function() { 901 var e, t, o, s = this; 902 if (!0 === s.options.fade && (s.options.centerMode = !1), !0 === s.options.infinite && !1 === s.options.fade && (t = null, s.slideCount > s.options.slidesToShow)) { 903 for (o = !0 === s.options.centerMode ? s.options.slidesToShow + 1 : s.options.slidesToShow, e = s.slideCount; e > s.slideCount - o; e -= 1) t = e - 1, 904 i(s.$slides[t]).clone(!0).attr("id", "").attr("data-slick-index", t - s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned"); 905 for (e = 0; e < o + s.slideCount; e += 1) t = e, 906 i(s.$slides[t]).clone(!0).attr("id", "").attr("data-slick-index", t + s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned"); 907 s.$slideTrack.find(".slick-cloned").find("[id]").each(function() { 908 i(this).attr("id", "") 909 }) 910 } 911 }, 912 e.prototype.interrupt = function(i) { 913 var e = this; 914 i || e.autoPlay(), 915 e.interrupted = i 916 }, 917 e.prototype.selectHandler = function(e) { 918 var t = this, 919 o = i(e.target).is(".slick-slide") ? i(e.target) : i(e.target).parents(".slick-slide"), 920 s = parseInt(o.attr("data-slick-index")); 921 s || (s = 0), 922 t.slideCount <= t.options.slidesToShow ? t.slideHandler(s, !1, !0) : t.slideHandler(s) 923 }, 924 e.prototype.slideHandler = function(i, e, t) { 925 var o, s, n, r, l, d = null, 926 a = this; 927 if (e = e || !1, !(!0 === a.animating && !0 === a.options.waitForAnimate || !0 === a.options.fade && a.currentSlide === i)) if (!1 === e && a.asNavFor(i), o = i, d = a.getLeft(o), r = a.getLeft(a.currentSlide), a.currentLeft = null === a.swipeLeft ? r: a.swipeLeft, !1 === a.options.infinite && !1 === a.options.centerMode && (i < 0 || i > a.getDotCount() * a.options.slidesToScroll)) ! 1 === a.options.fade && (o = a.currentSlide, !0 !== t ? a.animateSlide(r, 928 function() { 929 a.postSlide(o) 930 }) : a.postSlide(o)); 931 else if (!1 === a.options.infinite && !0 === a.options.centerMode && (i < 0 || i > a.slideCount - a.options.slidesToScroll)) ! 1 === a.options.fade && (o = a.currentSlide, !0 !== t ? a.animateSlide(r, 932 function() { 933 a.postSlide(o) 934 }) : a.postSlide(o)); 935 else { 936 if (a.options.autoplay && clearInterval(a.autoPlayTimer), s = o < 0 ? a.slideCount % a.options.slidesToScroll != 0 ? a.slideCount - a.slideCount % a.options.slidesToScroll: a.slideCount + o: o >= a.slideCount ? a.slideCount % a.options.slidesToScroll != 0 ? 0 : o - a.slideCount: o, a.animating = !0, a.$slider.trigger("beforeChange", [a, a.currentSlide, s]), n = a.currentSlide, a.currentSlide = s, a.setSlideClasses(a.currentSlide), a.options.asNavFor && (l = (l = a.getNavTarget()).slick("getSlick")).slideCount <= l.options.slidesToShow && l.setSlideClasses(a.currentSlide), a.updateDots(), a.updateArrows(), !0 === a.options.fade) return ! 0 !== t ? (a.fadeSlideOut(n), a.fadeSlide(s, 937 function() { 938 a.postSlide(s) 939 })) : a.postSlide(s), 940 void a.animateHeight(); ! 0 !== t ? a.animateSlide(d, 941 function() { 942 a.postSlide(s) 943 }) : a.postSlide(s) 944 } 945 }, 946 e.prototype.startLoad = function() { 947 var i = this; ! 0 === i.options.arrows && i.slideCount > i.options.slidesToShow && (i.$prevArrow.hide(), i.$nextArrow.hide()), 948 !0 === i.options.dots && i.slideCount > i.options.slidesToShow && i.$dots.hide(), 949 i.$slider.addClass("slick-loading") 950 }, 951 e.prototype.swipeDirection = function() { 952 var i, e, t, o, s = this; 953 return i = s.touchObject.startX - s.touchObject.curX, 954 e = s.touchObject.startY - s.touchObject.curY, 955 t = Math.atan2(e, i), 956 (o = Math.round(180 * t / Math.PI)) < 0 && (o = 360 - Math.abs(o)), 957 o <= 45 && o >= 0 ? !1 === s.options.rtl ? "left": "right": o <= 360 && o >= 315 ? !1 === s.options.rtl ? "left": "right": o >= 135 && o <= 225 ? !1 === s.options.rtl ? "right": "left": !0 === s.options.verticalSwiping ? o >= 35 && o <= 135 ? "down": "up": "vertical" 958 }, 959 e.prototype.swipeEnd = function(i) { 960 var e, t, o = this; 961 if (o.dragging = !1, o.swiping = !1, o.scrolling) return o.scrolling = !1, 962 !1; 963 if (o.interrupted = !1, o.shouldClick = !(o.touchObject.swipeLength > 10), void 0 === o.touchObject.curX) return ! 1; 964 if (!0 === o.touchObject.edgeHit && o.$slider.trigger("edge", [o, o.swipeDirection()]), o.touchObject.swipeLength >= o.touchObject.minSwipe) { 965 switch (t = o.swipeDirection()) { 966 case "left": 967 case "down": 968 e = o.options.swipeToSlide ? o.checkNavigable(o.currentSlide + o.getSlideCount()) : o.currentSlide + o.getSlideCount(), 969 o.currentDirection = 0; 970 break; 971 case "right": 972 case "up": 973 e = o.options.swipeToSlide ? o.checkNavigable(o.currentSlide - o.getSlideCount()) : o.currentSlide - o.getSlideCount(), 974 o.currentDirection = 1 975 } 976 "vertical" != t && (o.slideHandler(e), o.touchObject = {}, 977 o.$slider.trigger("swipe", [o, t])) 978 } else o.touchObject.startX !== o.touchObject.curX && (o.slideHandler(o.currentSlide), o.touchObject = {}) 979 }, 980 e.prototype.swipeHandler = function(i) { 981 var e = this; 982 if (! (!1 === e.options.swipe || "ontouchend" in document && !1 === e.options.swipe || !1 === e.options.draggable && -1 !== i.type.indexOf("mouse"))) switch (e.touchObject.fingerCount = i.originalEvent && void 0 !== i.originalEvent.touches ? i.originalEvent.touches.length: 1, e.touchObject.minSwipe = e.listWidth / e.options.touchThreshold, !0 === e.options.verticalSwiping && (e.touchObject.minSwipe = e.listHeight / e.options.touchThreshold), i.data.action) { 983 case "start": 984 e.swipeStart(i); 985 break; 986 case "move": 987 e.swipeMove(i); 988 break; 989 case "end": 990 e.swipeEnd(i) 991 } 992 }, 993 e.prototype.swipeMove = function(i) { 994 var e, t, o, s, n, r, l = this; 995 return n = void 0 !== i.originalEvent ? i.originalEvent.touches: null, 996 !(!l.dragging || l.scrolling || n && 1 !== n.length) && (e = l.getLeft(l.currentSlide), l.touchObject.curX = void 0 !== n ? n[0].pageX: i.clientX, l.touchObject.curY = void 0 !== n ? n[0].pageY: i.clientY, l.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(l.touchObject.curX - l.touchObject.startX, 2))), r = Math.round(Math.sqrt(Math.pow(l.touchObject.curY - l.touchObject.startY, 2))), !l.options.verticalSwiping && !l.swiping && r > 4 ? (l.scrolling = !0, !1) : (!0 === l.options.verticalSwiping && (l.touchObject.swipeLength = r), t = l.swipeDirection(), void 0 !== i.originalEvent && l.touchObject.swipeLength > 4 && (l.swiping = !0, i.preventDefault()), s = (!1 === l.options.rtl ? 1 : -1) * (l.touchObject.curX > l.touchObject.startX ? 1 : -1), !0 === l.options.verticalSwiping && (s = l.touchObject.curY > l.touchObject.startY ? 1 : -1), o = l.touchObject.swipeLength, l.touchObject.edgeHit = !1, !1 === l.options.infinite && (0 === l.currentSlide && "right" === t || l.currentSlide >= l.getDotCount() && "left" === t) && (o = l.touchObject.swipeLength * l.options.edgeFriction, l.touchObject.edgeHit = !0), !1 === l.options.vertical ? l.swipeLeft = e + o * s: l.swipeLeft = e + o * (l.$list.height() / l.listWidth) * s, !0 === l.options.verticalSwiping && (l.swipeLeft = e + o * s), !0 !== l.options.fade && !1 !== l.options.touchMove && (!0 === l.animating ? (l.swipeLeft = null, !1) : void l.setCSS(l.swipeLeft)))) 997 }, 998 e.prototype.swipeStart = function(i) { 999 var e, t = this; 1000 if (t.interrupted = !0, 1 !== t.touchObject.fingerCount || t.slideCount <= t.options.slidesToShow) return t.touchObject = {}, 1001 !1; 1002 void 0 !== i.originalEvent && void 0 !== i.originalEvent.touches && (e = i.originalEvent.touches[0]), 1003 t.touchObject.startX = t.touchObject.curX = void 0 !== e ? e.pageX: i.clientX, 1004 t.touchObject.startY = t.touchObject.curY = void 0 !== e ? e.pageY: i.clientY, 1005 t.dragging = !0 1006 }, 1007 e.prototype.unfilterSlides = e.prototype.slickUnfilter = function() { 1008 var i = this; 1009 null !== i.$slidesCache && (i.unload(), i.$slideTrack.children(this.options.slide).detach(), i.$slidesCache.appendTo(i.$slideTrack), i.reinit()) 1010 }, 1011 e.prototype.unload = function() { 1012 var e = this; 1013 i(".slick-cloned", e.$slider).remove(), 1014 e.$dots && e.$dots.remove(), 1015 e.$prevArrow && e.htmlExpr.test(e.options.prevArrow) && e.$prevArrow.remove(), 1016 e.$nextArrow && e.htmlExpr.test(e.options.nextArrow) && e.$nextArrow.remove(), 1017 e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden", "true").css("width", "") 1018 }, 1019 e.prototype.unslick = function(i) { 1020 var e = this; 1021 e.$slider.trigger("unslick", [e, i]), 1022 e.destroy() 1023 }, 1024 e.prototype.updateArrows = function() { 1025 var i = this; 1026 Math.floor(i.options.slidesToShow / 2), 1027 !0 === i.options.arrows && i.slideCount > i.options.slidesToShow && !i.options.infinite && (i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), 0 === i.currentSlide ? (i.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true"), i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : i.currentSlide >= i.slideCount - i.options.slidesToShow && !1 === i.options.centerMode ? (i.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : i.currentSlide >= i.slideCount - 1 && !0 === i.options.centerMode && (i.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"))) 1028 }, 1029 e.prototype.updateDots = function() { 1030 var i = this; 1031 null !== i.$dots && (i.$dots.find("li").removeClass("slick-active").end(), i.$dots.find("li").eq(Math.floor(i.currentSlide / i.options.slidesToScroll)).addClass("slick-active")) 1032 }, 1033 e.prototype.visibility = function() { 1034 var i = this; 1035 i.options.autoplay && (document[i.hidden] ? i.interrupted = !0 : i.interrupted = !1) 1036 }, 1037 i.fn.slick = function() { 1038 var i, t, o = this, 1039 s = arguments[0], 1040 n = Array.prototype.slice.call(arguments, 1), 1041 r = o.length; 1042 for (i = 0; i < r; i++) if ("object" == typeof s || void 0 === s ? o[i].slick = new e(o[i], s) : t = o[i].slick[s].apply(o[i].slick, n), void 0 !== t) return t; 1043 return o 1044 } 1045 });