1/*! modernizr 3.3.1 (Custom Build) | MIT * 2 * http://modernizr.com/download/?-rgba-svg-touchevents-setclasses-shiv !*/ 3!function(e, t, i) { 4 function o(e, t) { 5 return typeof e === t 6 } 7 function n() { 8 var e, t, i, n, s, a, r; 9 for (var l in c) 10 if (c.hasOwnProperty(l)) { 11 if (e = [], 12 t = c[l], 13 t.name && (e.push(t.name.toLowerCase()), 14 t.options && t.options.aliases && t.options.aliases.length)) 15 for (i = 0; i < t.options.aliases.length; i++) 16 e.push(t.options.aliases[i].toLowerCase()); 17 for (n = o(t.fn, "function") ? t.fn() : t.fn, 18 s = 0; s < e.length; s++) 19 a = e[s], 20 r = a.split("."), 21 1 === r.length ? u[r[0]] = n : (!u[r[0]] || u[r[0]]instanceof Boolean || (u[r[0]] = new Boolean(u[r[0]])), 22 u[r[0]][r[1]] = n), 23 d.push((n ? "" : "no-") + r.join("-")) 24 } 25 } 26 function s(e) { 27 var t = f.className 28 , i = u._config.classPrefix || ""; 29 if (h && (t = t.baseVal), 30 u._config.enableJSClass) { 31 var o = new RegExp("(^|\\s)" + i + "no-js(\\s|$)"); 32 t = t.replace(o, "$1" + i + "js$2") 33 } 34 u._config.enableClasses && (t += " " + i + e.join(" " + i), 35 h ? f.className.baseVal = t : f.className = t) 36 } 37 function a() { 38 return "function" != typeof t.createElement ? t.createElement(arguments[0]) : h ? t.createElementNS.call(t, "http://www.w3.org/2000/svg", arguments[0]) : t.createElement.apply(t, arguments) 39 } 40 function r() { 41 var e = t.body; 42 return e || (e = a(h ? "svg" : "body"), 43 e.fake = !0), 44 e 45 } 46 function l(e, i, o, n) { 47 var s, l, d, c, p = "modernizr", u = a("div"), h = r(); 48 if (parseInt(o, 10)) 49 for (; o--; ) 50 d = a("div"), 51 d.id = n ? n[o] : p + (o + 1), 52 u.appendChild(d); 53 return s = a("style"), 54 s.type = "text/css", 55 s.id = "s" + p, 56 (h.fake ? h : u).appendChild(s), 57 h.appendChild(u), 58 s.styleSheet ? s.styleSheet.cssText = e : s.appendChild(t.createTextNode(e)), 59 u.id = p, 60 h.fake && (h.style.background = "", 61 h.style.overflow = "hidden", 62 c = f.style.overflow, 63 f.style.overflow = "hidden", 64 f.appendChild(h)), 65 l = i(u, e), 66 h.fake ? (h.parentNode.removeChild(h), 67 f.style.overflow = c, 68 f.offsetHeight) : u.parentNode.removeChild(u), 69 !!l 70 } 71 var d = [] 72 , c = [] 73 , p = { 74 _version: "3.3.1", 75 _config: { 76 classPrefix: "", 77 enableClasses: !0, 78 enableJSClass: !0, 79 usePrefixes: !0 80 }, 81 _q: [], 82 on: function(e, t) { 83 var i = this; 84 setTimeout(function() { 85 t(i[e]) 86 }, 0) 87 }, 88 addTest: function(e, t, i) { 89 c.push({ 90 name: e, 91 fn: t, 92 options: i 93 }) 94 }, 95 addAsyncTest: function(e) { 96 c.push({ 97 name: null, 98 fn: e 99 }) 100 } 101 } 102 , u = function() {}; 103 u.prototype = p, 104 u = new u, 105 u.addTest("svg", !!t.createElementNS && !!t.createElementNS("http://www.w3.org/2000/svg", "svg").createSVGRect); 106 var f = t.documentElement 107 , h = "svg" === f.nodeName.toLowerCase(); 108 h || !function(e, t) { 109 function i(e, t) { 110 var i = e.createElement("p") 111 , o = e.getElementsByTagName("head")[0] || e.documentElement; 112 return i.innerHTML = "x<style>" + t + "</style>", 113 o.insertBefore(i.lastChild, o.firstChild) 114 } 115 function o() { 116 var e = b.elements; 117 return "string" == typeof e ? e.split(" ") : e 118 } 119 function n(e, t) { 120 var i = b.elements; 121 "string" != typeof i && (i = i.join(" ")), 122 "string" != typeof e && (e = e.join(" ")), 123 b.elements = i + " " + e, 124 d(t) 125 } 126 function s(e) { 127 var t = g[e[v]]; 128 return t || (t = {}, 129 y++, 130 e[v] = y, 131 g[y] = t), 132 t 133 } 134 function a(e, i, o) { 135 if (i || (i = t), 136 p) 137 return i.createElement(e); 138 o || (o = s(i)); 139 var n; 140 return n = o.cache[e] ? o.cache[e].cloneNode() : m.test(e) ? (o.cache[e] = o.createElem(e)).cloneNode() : o.createElem(e), 141 !n.canHaveChildren || h.test(e) || n.tagUrn ? n : o.frag.appendChild(n) 142 } 143 function r(e, i) { 144 if (e || (e = t), 145 p) 146 return e.createDocumentFragment(); 147 i = i || s(e); 148 for (var n = i.frag.cloneNode(), a = 0, r = o(), l = r.length; l > a; a++) 149 n.createElement(r[a]); 150 return n 151 } 152 function l(e, t) {
153 t.cache || (t.cache = {}, 154 t.createElem = e.createElement, 155 t.createFrag = e.createDocumentFragment, 156 t.frag = t.createFrag()), 157 e.createElement = function(i) { 158 return b.shivMethods ? a(i, e, t) : t.createElem(i) 159 } 160 , 161 e.createDocumentFragment = Function("h,f", "return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&(" + o().join().replace(/[\w\-:]+/g, function(e) { 162 return t.createElem(e), 163 t.frag.createElement(e), 164 'c("' + e + '")' 165 }) + ");return n}")(b, t.frag) 166 } 167 function d(e) { 168 e || (e = t); 169 var o = s(e); 170 return !b.shivCSS || c || o.hasCSS || (o.hasCSS = !!i(e, "article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")), 171 p || l(e, o), 172 e 173 } 174 var c, p, u = "3.7.3", f = e.html5 || {}, h = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i, m = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i, v = "_html5shiv", y = 0, g = {}; 175 !function() { 176 try { 177 var e = t.createElement("a"); 178 e.innerHTML = "<xyz></xyz>", 179 c = "hidden"in e, 180 p = 1 == e.childNodes.length || function() { 181 t.createElement("a"); 182 var e = t.createDocumentFragment(); 183 return "undefined" == typeof e.cloneNode || "undefined" == typeof e.createDocumentFragment || "undefined" == typeof e.createElement 184 }() 185 } catch (i) { 186 c = !0, 187 p = !0 188 } 189 }(); 190 var b = { 191 elements: f.elements || "abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video", 192 version: u, 193 shivCSS: f.shivCSS !== !1, 194 supportsUnknownElements: p, 195 shivMethods: f.shivMethods !== !1, 196 type: "default", 197 shivDocument: d, 198 createElement: a, 199 createDocumentFragment: r, 200 addElements: n 201 }; 202 e.html5 = b, 203 d(t), 204 "object" == typeof module && module.exports && (module.exports = b) 205 }("undefined" != typeof e ? e : this, t); 206 var m = p._config.usePrefixes ? " -webkit- -moz- -o- -ms- ".split(" ") : ["", ""]; 207 p._prefixes = m, 208 u.addTest("rgba", function() { 209 var e = a("a").style; 210 return e.cssText = "background-color:rgba(150,255,150,.5)", 211 ("" + e.backgroundColor).indexOf("rgba") > -1 212 }); 213 var v = p.testStyles = l; 214 u.addTest("touchevents", function() { 215 var i; 216 if ("ontouchstart"in e || e.DocumentTouch && t instanceof DocumentTouch) 217 i = !0; 218 else { 219 var o = ["@media (", m.join("touch-enabled),("), "heartz", ")", "{#modernizr{top:9px;position:absolute}}"].join(""); 220 v(o, function(e) { 221 i = 9 === e.offsetTop 222 }) 223 } 224 return i 225 }), 226 n(), 227 s(d), 228 delete p.addTest, 229 delete p.addAsyncTest; 230 for (var y = 0; y < u._q.length; y++) 231 u._q[y](); 232 e.Modernizr = u 233}(window, document); 234/*! 235 * Name: Pattern library 236 * Component: Accessible Menu 237 * Author: Zengenti Ltd 238 * Contributors: Jason Alvis
vendor: 5,724 bytes, lines 239-411
239 * Author URI: http://zengenti.com 240 * Description: A pattern library for front-end development 241 * Version: 0.0.1 242 */ 243 244jQuery(document).ready(function() { 245 246}), 247function(e) { 248 "use strict"; 249 "function" == typeof define && define.amd ? define(["jquery"], e) : "undefined" != typeof module && module.exports ? module.exports = e(require("jquery")) : e(jQuery) 250}(function(e) { 251 var t = -1 252 , i = -1 253 , o = function(e) { 254 return parseFloat(e) || 0 255 } 256 , n = function(t) { 257 var i = 1 258 , n = e(t) 259 , s = null 260 , a = []; 261 return n.each(function() { 262 var t = e(this) 263 , n = t.offset().top - o(t.css("margin-top")) 264 , r = a.length > 0 ? a[a.length - 1] : null; 265 null === r ? a.push(t) : Math.floor(Math.abs(s - n)) <= i ? a[a.length - 1] = r.add(t) : a.push(t), 266 s = n 267 }), 268 a 269 } 270 , s = function(t) { 271 var i = { 272 byRow: !0, 273 property: "height", 274 target: null, 275 remove: !1 276 }; 277 return "object" == typeof t ? e.extend(i, t) : ("boolean" == typeof t ? i.byRow = t : "remove" === t && (i.remove = !0), 278 i) 279 } 280 , a = e.fn.matchHeight = function(t) { 281 var i = s(t); 282 if (i.remove) { 283 var o = this; 284 return this.css(i.property, ""), 285 e.each(a._groups, function(e, t) { 286 t.elements = t.elements.not(o) 287 }), 288 this 289 } 290 return this.length <= 1 && !i.target ? this : (a._groups.push({ 291 elements: this, 292 options: i 293 }), 294 a._apply(this, i), 295 this) 296 } 297 ; 298 a.version = "master", 299 a._groups = [], 300 a._throttle = 80, 301 a._maintainScroll = !1, 302 a._beforeUpdate = null, 303 a._afterUpdate = null, 304 a._rows = n, 305 a._parse = o, 306 a._parseOptions = s, 307 a._apply = function(t, i) { 308 var r = s(i) 309 , l = e(t) 310 , d = [l] 311 , c = e(window).scrollTop() 312 , p = e("html").outerHeight(!0) 313 , u = l.parents().filter(":hidden"); 314 return u.each(function() { 315 var t = e(this); 316 t.data("style-cache", t.attr("style")) 317 }), 318 u.css("display", "block"), 319 r.byRow && !r.target && (l.each(function() { 320 var t = e(this) 321 , i = t.css("display"); 322 "inline-block" !== i && "flex" !== i && "inline-flex" !== i && (i = "block"), 323 t.data("style-cache", t.attr("style")), 324 t.css({ 325 display: i, 326 "padding-top": "0", 327 "padding-bottom": "0", 328 "margin-top": "0", 329 "margin-bottom": "0", 330 "border-top-width": "0", 331 "border-bottom-width": "0", 332 height: "100px", 333 overflow: "hidden" 334 }) 335 }), 336 d = n(l), 337 l.each(function() { 338 var t = e(this); 339 t.attr("style", t.data("style-cache") || "") 340 })), 341 e.each(d, function(t, i) { 342 var n = e(i) 343 , s = 0; 344 if (r.target) 345 s = r.target.outerHeight(!1); 346 else { 347 if (r.byRow && n.length <= 1) 348 return void n.css(r.property, ""); 349 n.each(function() { 350 var t = e(this) 351 , i = t.attr("style") 352 , o = t.css("display"); 353 "inline-block" !== o && "flex" !== o && "inline-flex" !== o && (o = "block"); 354 var n = { 355 display: o 356 }; 357 n[r.property] = "", 358 t.css(n), 359 t.outerHeight(!1) > s && (s = t.outerHeight(!1)), 360 i ? t.attr("style", i) : t.css("display", "") 361 }) 362 } 363 n.each(function() { 364 var t = e(this) 365 , i = 0; 366 r.target && t.is(r.target) || ("border-box" !== t.css("box-sizing") && (i += o(t.css("border-top-width")) + o(t.css("border-bottom-width")), 367 i += o(t.css("padding-top")) + o(t.css("padding-bottom"))), 368 t.css(r.property, s - i + "px")) 369 }) 370 }), 371 u.each(function() { 372 var t = e(this); 373 t.attr("style", t.data("style-cache") || null) 374 }), 375 a._maintainScroll && e(window).scrollTop(c / p * e("html").outerHeight(!0)), 376 this 377 } 378 , 379 a._applyDataApi = function() { 380 var t = {}; 381 e("[data-match-height], [data-mh]").each(function() { 382 var i = e(this) 383 , o = i.attr("data-mh") || i.attr("data-match-height"); 384 o in t ? t[o] = t[o].add(i) : t[o] = i 385 }), 386 e.each(t, function() { 387 this.matchHeight(!0) 388 }) 389 } 390 ; 391 var r = function(t) { 392 a._beforeUpdate && a._beforeUpdate(t, a._groups), 393 e.each(a._groups, function() { 394 a._apply(this.elements, this.options) 395 }), 396 a._afterUpdate && a._afterUpdate(t, a._groups) 397 }; 398 a._update = function(o, n) { 399 if (n && "resize" === n.type) { 400 var s = e(window).width(); 401 if (s === t) 402 return; 403 t = s 404 } 405 o ? i === -1 && (i = setTimeout(function() { 406 r(n), 407 i = -1 408 }, a._throttle)) : r(n) 409 } 410 , 411 e(a._applyDataApi);
412 var l = e.fn.on ? "on" : "bind"; 413 e(window)[l]("load", function(e) { 414 a._update(!1, e) 415 }), 416 e(window)[l]("resize orientationchange", function(e) { 417 a._update(!0, e) 418 }) 419}), 420/* 421 * debouncedresize: special jQuery event that happens once after a window resize 422 * 423 * latest version and complete README available on Github: 424 * https://github.com/louisremi/jquery-smartresize 425 * 426 * Copyright 2012 @louis_remi 427 * Licensed under the MIT license. 428 * 429 * This saved you an hour of work? 430 * Send me music http://www.amazon.co.uk/wishlist/HNTU0468LQON 431 */ 432function(e) { 433 var t, i, o = e.event; 434 t = o.special.debouncedresize = { 435 setup: function() { 436 e(this).on("resize", t.handler) 437 }, 438 teardown: function() { 439 e(this).off("resize", t.handler) 440 }, 441 handler: function(e, n) { 442 var s = this 443 , a = arguments 444 , r = function() { 445 e.type = "debouncedresize", 446 o.dispatch.apply(s, a) 447 }; 448 i && clearTimeout(i), 449 n ? r() : i = setTimeout(r, t.threshold) 450 }, 451 threshold: 150 452 } 453}(jQuery), 454!function(e) { 455 "use strict"; 456 "function" == typeof define && define.amd ? define(["jquery"], e) : "undefined" != typeof exports ? module.exports = e(require("jquery")) : e(jQuery) 457}(function(e) { 458 "use strict"; 459 var t = window.Slick || {}; 460 (t = function() { 461 var t = 0; 462 return function(i, o) { 463 var n, s = this; 464 s.defaults = { 465 accessibility: !0, 466 adaptiveHeight: !1, 467 appendArrows: e(i), 468 appendDots: e(i), 469 arrows: !0, 470 asNavFor: null, 471 prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>', 472 nextArrow: '<button class="slick-next" aria-label="Next" type="button">Next</button>', 473 autoplay: !1, 474 autoplaySpeed: 3e3, 475 centerMode: !1, 476 centerPadding: "50px", 477 cssEase: "ease", 478 customPaging: function(t, i) { 479 return e('<button type="button" />').text(i + 1) 480 }, 481 dots: !1, 482 dotsClass: "slick-dots", 483 draggable: !0, 484 easing: "linear", 485 edgeFriction: .35, 486 fade: !1, 487 focusOnSelect: !1, 488 focusOnChange: !1, 489 infinite: !0, 490 initialSlide: 0, 491 lazyLoad: "ondemand", 492 mobileFirst: !1, 493 pauseOnHover: !0, 494 pauseOnFocus: !0, 495 pauseOnDotsHover: !1, 496 respondTo: "window", 497 responsive: null, 498 rows: 1, 499 rtl: !1, 500 slide: "", 501 slidesPerRow: 1, 502 slidesToShow: 1, 503 slidesToScroll: 1, 504 speed: 500, 505 swipe: !0, 506 swipeToSlide: !1, 507 touchMove: !0, 508 touchThreshold: 5, 509 useCSS: !0, 510 useTransform: !0, 511 variableWidth: !1, 512 vertical: !1, 513 verticalSwiping: !1, 514 waitForAnimate: !0, 515 zIndex: 1e3 516 }, 517 s.initials = { 518 animating: !1, 519 dragging: !1, 520 autoPlayTimer: null, 521 currentDirection: 0, 522 currentLeft: null, 523 currentSlide: 0, 524 direction: 1, 525 $dots: null, 526 listWidth: null, 527 listHeight: null, 528 loadIndex: 0, 529 $nextArrow: null, 530 $prevArrow: null, 531 scrolling: !1, 532 slideCount: null, 533 slideWidth: null, 534 $slideTrack: null, 535 $slides: null, 536 sliding: !1, 537 slideOffset: 0, 538 swipeLeft: null, 539 swiping: !1, 540 $list: null, 541 touchObject: {}, 542 transformsEnabled: !1, 543 unslicked: !1 544 }, 545 e.extend(s, s.initials), 546 s.activeBreakpoint = null, 547 s.animType = null, 548 s.animProp = null, 549 s.breakpoints = [], 550 s.breakpointSettings = [], 551 s.cssTransitions = !1, 552 s.focussed = !1, 553 s.interrupted = !1, 554 s.hidden = "hidden", 555 s.paused = !0, 556 s.positionProp = null, 557 s.respondTo = null, 558 s.rowCount = 1, 559 s.shouldClick = !0, 560 s.$slider = e(i), 561 s.$slidesCache = null, 562 s.transformType = null, 563 s.transitionType = null, 564 s.visibilityChange = "visibilitychange", 565 s.windowWidth = 0, 566 s.windowTimer = null, 567 n = e(i).data("slick") || {}, 568 s.options = e.extend({}, s.defaults, o, n), 569 s.currentSlide = s.options.initialSlide, 570 s.originalSettings = s.options, 571 void 0 !== document.mozHidden ? (s.hidden = "mozHidden", 572 s.visibilityChange = "mozvisibilitychange") : void 0 !== document.webkitHidden && (s.hidden = "webkitHidden", 573 s.visibilityChange = "webkitvisibilitychange"), 574 s.autoPlay = e.proxy(s.autoPlay, s), 575 s.autoPlayClear = e.proxy(s.autoPlayClear, s), 576 s.autoPlayIterator = e.proxy(s.autoPlayIterator, s), 577 s.changeSlide = e.proxy(s.changeSlide, s), 578 s.clickHandler = e.proxy(s.clickHandler, s), 579 s.selectHandler = e.proxy(s.selectHandler, s), 580 s.setPosition = e.proxy(s.setPosition, s), 581 s.swipeHandler = e.proxy(s.swipeHandler, s), 582 s.dragHandler = e.proxy(s.dragHandler, s), 583 s.keyHandler = e.proxy(s.keyHandler, s), 584 s.instanceUid = t++, 585 s.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/, 586 s.registerBreakpoints(), 587 s.init(!0) 588 } 589 }()).prototype.activateADA = function() { 590 this.$slideTrack.find(".slick-active").attr({ 591 "aria-hidden": "false" 592 }).find("a, input, button, select").attr({ 593 tabindex: "0" 594 }) 595 } 596 , 597 t.prototype.addSlide = t.prototype.slickAdd = function(t, i, o) { 598 var n = this; 599 if ("boolean" == typeof i) 600 o = i, 601 i = null; 602 else if (i < 0 || i >= n.slideCount) 603 return !1; 604 n.unload(), 605 "number" == typeof i ? 0 === i && 0 === n.$slides.length ? e(t).appendTo(n.$slideTrack) : o ? e(t).insertBefore(n.$slides.eq(i)) : e(t).insertAfter(n.$slides.eq(i)) : !0 === o ? e(t).prependTo(n.$slideTrack) : e(t).appendTo(n.$slideTrack), 606 n.$slides = n.$slideTrack.children(this.options.slide), 607 n.$slideTrack.children(this.options.slide).detach(), 608 n.$slideTrack.append(n.$slides), 609 n.$slides.each(function(t, i) { 610 e(i).attr("data-slick-index", t) 611 }), 612 n.$slidesCache = n.$slides, 613 n.reinit() 614 } 615 , 616 t.prototype.animateHeight = function() { 617 var e = this; 618 if (1 === e.options.slidesToShow && !0 === e.options.adaptiveHeight && !1 === e.options.vertical) { 619 var t = e.$slides.eq(e.currentSlide).outerHeight(!0); 620 e.$list.animate({ 621 height: t 622 }, e.options.speed) 623 } 624 } 625 , 626 t.prototype.animateSlide = function(t, i) { 627 var o = {} 628 , n = this; 629 n.animateHeight(), 630 !0 === n.options.rtl && !1 === n.options.vertical && (t = -t), 631 !1 === n.transformsEnabled ? !1 === n.options.vertical ? n.$slideTrack.animate({ 632 left: t 633 }, n.options.speed, n.options.easing, i) : n.$slideTrack.animate({ 634 top: t 635 }, n.options.speed, n.options.easing, i) : !1 === n.cssTransitions ? (!0 === n.options.rtl && (n.currentLeft = -n.currentLeft), 636 e({ 637 animStart: n.currentLeft 638 }).animate({ 639 animStart: t 640 }, { 641 duration: n.options.speed, 642 easing: n.options.easing, 643 step: function(e) {
vendor: 7,945 bytes, lines 644-805
644 e = Math.ceil(e), 645 !1 === n.options.vertical ? (o[n.animType] = "translate(" + e + "px, 0px)", 646 n.$slideTrack.css(o)) : (o[n.animType] = "translate(0px," + e + "px)", 647 n.$slideTrack.css(o)) 648 }, 649 complete: function() { 650 i && i.call() 651 } 652 })) : (n.applyTransition(), 653 t = Math.ceil(t), 654 !1 === n.options.vertical ? o[n.animType] = "translate3d(" + t + "px, 0px, 0px)" : o[n.animType] = "translate3d(0px," + t + "px, 0px)", 655 n.$slideTrack.css(o), 656 i && setTimeout(function() { 657 n.disableTransition(), 658 i.call() 659 }, n.options.speed)) 660 } 661 , 662 t.prototype.getNavTarget = function() { 663 var t = this 664 , i = t.options.asNavFor; 665 return i && null !== i && (i = e(i).not(t.$slider)), 666 i 667 } 668 , 669 t.prototype.asNavFor = function(t) { 670 var i = this.getNavTarget(); 671 null !== i && "object" == typeof i && i.each(function() { 672 var i = e(this).slick("getSlick"); 673 i.unslicked || i.slideHandler(t, !0) 674 }) 675 } 676 , 677 t.prototype.applyTransition = function(e) { 678 var t = this 679 , i = {}; 680 !1 === t.options.fade ? i[t.transitionType] = t.transformType + " " + t.options.speed + "ms " + t.options.cssEase : i[t.transitionType] = "opacity " + t.options.speed + "ms " + t.options.cssEase, 681 !1 === t.options.fade ? t.$slideTrack.css(i) : t.$slides.eq(e).css(i) 682 } 683 , 684 t.prototype.autoPlay = function() { 685 var e = this; 686 e.autoPlayClear(), 687 e.slideCount > e.options.slidesToShow && (e.autoPlayTimer = setInterval(e.autoPlayIterator, e.options.autoplaySpeed)) 688 } 689 , 690 t.prototype.autoPlayClear = function() { 691 var e = this; 692 e.autoPlayTimer && clearInterval(e.autoPlayTimer) 693 } 694 , 695 t.prototype.autoPlayIterator = function() { 696 var e = this 697 , t = e.currentSlide + e.options.slidesToScroll; 698 e.paused || e.interrupted || e.focussed || (!1 === e.options.infinite && (1 === e.direction && e.currentSlide + 1 === e.slideCount - 1 ? e.direction = 0 : 0 === e.direction && (t = e.currentSlide - e.options.slidesToScroll, 699 e.currentSlide - 1 == 0 && (e.direction = 1))), 700 e.slideHandler(t)) 701 } 702 , 703 t.prototype.buildArrows = function() { 704 var t = this; 705 !0 === t.options.arrows && (t.$prevArrow = e(t.options.prevArrow).addClass("slick-arrow"), 706 t.$nextArrow = e(t.options.nextArrow).addClass("slick-arrow"), 707 t.slideCount > t.options.slidesToShow ? (t.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), 708 t.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), 709 t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.prependTo(t.options.appendArrows), 710 t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.appendTo(t.options.appendArrows), 711 !0 !== t.options.infinite && t.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true")) : t.$prevArrow.add(t.$nextArrow).addClass("slick-hidden").attr({ 712 "aria-disabled": "true", 713 tabindex: "-1" 714 })) 715 } 716 , 717 t.prototype.buildDots = function() { 718 var t, i, o = this; 719 if (!0 === o.options.dots) { 720 for (o.$slider.addClass("slick-dotted"), 721 i = e("<ul />").addClass(o.options.dotsClass), 722 t = 0; t <= o.getDotCount(); t += 1) 723 i.append(e("<li />").append(o.options.customPaging.call(this, o, t))); 724 o.$dots = i.appendTo(o.options.appendDots), 725 o.$dots.find("li").first().addClass("slick-active") 726 } 727 } 728 , 729 t.prototype.buildOut = function() { 730 var t = this; 731 t.$slides = t.$slider.children(t.options.slide + ":not(.slick-cloned)").addClass("slick-slide"), 732 t.slideCount = t.$slides.length, 733 t.$slides.each(function(t, i) { 734 e(i).attr("data-slick-index", t).data("originalStyling", e(i).attr("style") || "") 735 }), 736 t.$slider.addClass("slick-slider"), 737 t.$slideTrack = 0 === t.slideCount ? e('<div class="slick-track"/>').appendTo(t.$slider) : t.$slides.wrapAll('<div class="slick-track"/>').parent(), 738 t.$list = t.$slideTrack.wrap('<div class="slick-list"/>').parent(), 739 t.$slideTrack.css("opacity", 0), 740 !0 !== t.options.centerMode && !0 !== t.options.swipeToSlide || (t.options.slidesToScroll = 1), 741 e("img[data-lazy]", t.$slider).not("[src]").addClass("slick-loading"), 742 t.setupInfinite(), 743 t.buildArrows(), 744 t.buildDots(), 745 t.updateDots(), 746 t.setSlideClasses("number" == typeof t.currentSlide ? t.currentSlide : 0), 747 !0 === t.options.draggable && t.$list.addClass("draggable") 748 } 749 , 750 t.prototype.buildRows = function() { 751 var e, t, i, o, n, s, a, r = this; 752 if (o = document.createDocumentFragment(), 753 s = r.$slider.children(), 754 r.options.rows > 1) { 755 for (a = r.options.slidesPerRow * r.options.rows, 756 n = Math.ceil(s.length / a), 757 e = 0; e < n; e++) { 758 var l = document.createElement("div"); 759 for (t = 0; t < r.options.rows; t++) { 760 var d = document.createElement("div"); 761 for (i = 0; i < r.options.slidesPerRow; i++) { 762 var c = e * a + (t * r.options.slidesPerRow + i); 763 s.get(c) && d.appendChild(s.get(c)) 764 } 765 l.appendChild(d) 766 } 767 o.appendChild(l) 768 } 769 r.$slider.empty().append(o), 770 r.$slider.children().children().children().css({ 771 width: 100 / r.options.slidesPerRow + "%", 772 display: "inline-block" 773 }) 774 } 775 } 776 , 777 t.prototype.checkResponsive = function(t, i) { 778 var o, n, s, a = this, r = !1, l = a.$slider.width(), d = window.innerWidth || e(window).width(); 779 if ("window" === a.respondTo ? s = d : "slider" === a.respondTo ? s = l : "min" === a.respondTo && (s = Math.min(d, l)), 780 a.options.responsive && a.options.responsive.length && null !== a.options.responsive) { 781 n = null; 782 for (o in a.breakpoints) 783 a.breakpoints.hasOwnProperty(o) && (!1 === a.originalSettings.mobileFirst ? s < a.breakpoints[o] && (n = a.breakpoints[o]) : s > a.breakpoints[o] && (n = a.breakpoints[o])); 784 null !== n ? null !== a.activeBreakpoint ? (n !== a.activeBreakpoint || i) && (a.activeBreakpoint = n, 785 "unslick" === a.breakpointSettings[n] ? a.unslick(n) : (a.options = e.extend({}, a.originalSettings, a.breakpointSettings[n]), 786 !0 === t && (a.currentSlide = a.options.initialSlide), 787 a.refresh(t)), 788 r = n) : (a.activeBreakpoint = n, 789 "unslick" === a.breakpointSettings[n] ? a.unslick(n) : (a.options = e.extend({}, a.originalSettings, a.breakpointSettings[n]), 790 !0 === t && (a.currentSlide = a.options.initialSlide), 791 a.refresh(t)), 792 r = n) : null !== a.activeBreakpoint && (a.activeBreakpoint = null, 793 a.options = a.originalSettings, 794 !0 === t && (a.currentSlide = a.options.initialSlide), 795 a.refresh(t), 796 r = n), 797 t || !1 === r || a.$slider.trigger("breakpoint", [a, r]) 798 } 799 } 800 , 801 t.prototype.changeSlide = function(t, i) { 802 var o, n, s, a = this, r = e(t.currentTarget); 803 switch (r.is("a") && t.preventDefault(), 804 r.is("li") || (r = r.closest("li")), 805 s = a.slideCount % a.options.slidesToScroll != 0,
vendor: 2,284 bytes, lines 806-854
806 o = s ? 0 : (a.slideCount - a.currentSlide) % a.options.slidesToScroll, 807 t.data.message) { 808 case "previous": 809 n = 0 === o ? a.options.slidesToScroll : a.options.slidesToShow - o, 810 a.slideCount > a.options.slidesToShow && a.slideHandler(a.currentSlide - n, !1, i); 811 break; 812 case "next": 813 n = 0 === o ? a.options.slidesToScroll : o, 814 a.slideCount > a.options.slidesToShow && a.slideHandler(a.currentSlide + n, !1, i); 815 break; 816 case "index": 817 var l = 0 === t.data.index ? 0 : t.data.index || r.index() * a.options.slidesToScroll; 818 a.slideHandler(a.checkNavigable(l), !1, i), 819 r.children().trigger("focus"); 820 break; 821 default: 822 return 823 } 824 } 825 , 826 t.prototype.checkNavigable = function(e) { 827 var t, i; 828 if (t = this.getNavigableIndexes(), 829 i = 0, 830 e > t[t.length - 1]) 831 e = t[t.length - 1]; 832 else 833 for (var o in t) { 834 if (e < t[o]) { 835 e = i; 836 break 837 } 838 i = t[o] 839 } 840 return e 841 } 842 , 843 t.prototype.cleanUpEvents = function() { 844 var t = this; 845 t.options.dots && null !== t.$dots && (e("li", t.$dots).off("click.slick", t.changeSlide).off("mouseenter.slick", e.proxy(t.interrupt, t, !0)).off("mouseleave.slick", e.proxy(t.interrupt, t, !1)), 846 !0 === t.options.accessibility && t.$dots.off("keydown.slick", t.keyHandler)), 847 t.$slider.off("focus.slick blur.slick"), 848 !0 === t.options.arrows && t.slideCount > t.options.slidesToShow && (t.$prevArrow && t.$prevArrow.off("click.slick", t.changeSlide), 849 t.$nextArrow && t.$nextArrow.off("click.slick", t.changeSlide), 850 !0 === t.options.accessibility && (t.$prevArrow && t.$prevArrow.off("keydown.slick", t.keyHandler), 851 t.$nextArrow && t.$nextArrow.off("keydown.slick", t.keyHandler))), 852 t.$list.off("touchstart.slick mousedown.slick", t.swipeHandler), 853 t.$list.off("touchmove.slick mousemove.slick", t.swipeHandler), 854 t.$list.off("touchend.slick mouseup.slick", t.swipeHandler),
vendor: 4,335 bytes, lines 855-956
855 t.$list.off("touchcancel.slick mouseleave.slick", t.swipeHandler), 856 t.$list.off("click.slick", t.clickHandler), 857 e(document).off(t.visibilityChange, t.visibility), 858 t.cleanUpSlideEvents(), 859 !0 === t.options.accessibility && t.$list.off("keydown.slick", t.keyHandler), 860 !0 === t.options.focusOnSelect && e(t.$slideTrack).children().off("click.slick", t.selectHandler), 861 e(window).off("orientationchange.slick.slick-" + t.instanceUid, t.orientationChange), 862 e(window).off("resize.slick.slick-" + t.instanceUid, t.resize), 863 e("[draggable!=true]", t.$slideTrack).off("dragstart", t.preventDefault), 864 e(window).off("load.slick.slick-" + t.instanceUid, t.setPosition) 865 } 866 , 867 t.prototype.cleanUpSlideEvents = function() { 868 var t = this; 869 t.$list.off("mouseenter.slick", e.proxy(t.interrupt, t, !0)), 870 t.$list.off("mouseleave.slick", e.proxy(t.interrupt, t, !1)) 871 } 872 , 873 t.prototype.cleanUpRows = function() { 874 var e, t = this; 875 t.options.rows > 1 && ((e = t.$slides.children().children()).removeAttr("style"), 876 t.$slider.empty().append(e)) 877 } 878 , 879 t.prototype.clickHandler = function(e) { 880 !1 === this.shouldClick && (e.stopImmediatePropagation(), 881 e.stopPropagation(), 882 e.preventDefault()) 883 } 884 , 885 t.prototype.destroy = function(t) { 886 var i = this; 887 i.autoPlayClear(), 888 i.touchObject = {}, 889 i.cleanUpEvents(), 890 e(".slick-cloned", i.$slider).detach(), 891 i.$dots && i.$dots.remove(), 892 i.$prevArrow && i.$prevArrow.length && (i.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), 893 i.htmlExpr.test(i.options.prevArrow) && i.$prevArrow.remove()), 894 i.$nextArrow && i.$nextArrow.length && (i.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), 895 i.htmlExpr.test(i.options.nextArrow) && i.$nextArrow.remove()), 896 i.$slides && (i.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function() { 897 e(this).attr("style", e(this).data("originalStyling")) 898 }), 899 i.$slideTrack.children(this.options.slide).detach(), 900 i.$slideTrack.detach(), 901 i.$list.detach(), 902 i.$slider.append(i.$slides)), 903 i.cleanUpRows(), 904 i.$slider.removeClass("slick-slider"), 905 i.$slider.removeClass("slick-initialized"), 906 i.$slider.removeClass("slick-dotted"), 907 i.unslicked = !0, 908 t || i.$slider.trigger("destroy", [i]) 909 } 910 , 911 t.prototype.disableTransition = function(e) { 912 var t = this 913 , i = {}; 914 i[t.transitionType] = "", 915 !1 === t.options.fade ? t.$slideTrack.css(i) : t.$slides.eq(e).css(i) 916 } 917 , 918 t.prototype.fadeSlide = function(e, t) { 919 var i = this; 920 !1 === i.cssTransitions ? (i.$slides.eq(e).css({ 921 zIndex: i.options.zIndex 922 }), 923 i.$slides.eq(e).animate({ 924 opacity: 1 925 }, i.options.speed, i.options.easing, t)) : (i.applyTransition(e), 926 i.$slides.eq(e).css({ 927 opacity: 1, 928 zIndex: i.options.zIndex 929 }), 930 t && setTimeout(function() { 931 i.disableTransition(e), 932 t.call() 933 }, i.options.speed)) 934 } 935 , 936 t.prototype.fadeSlideOut = function(e) { 937 var t = this; 938 !1 === t.cssTransitions ? t.$slides.eq(e).animate({ 939 opacity: 0, 940 zIndex: t.options.zIndex - 2 941 }, t.options.speed, t.options.easing) : (t.applyTransition(e), 942 t.$slides.eq(e).css({ 943 opacity: 0, 944 zIndex: t.options.zIndex - 2 945 })) 946 } 947 , 948 t.prototype.filterSlides = t.prototype.slickFilter = function(e) { 949 var t = this; 950 null !== e && (t.$slidesCache = t.$slides, 951 t.unload(), 952 t.$slideTrack.children(this.options.slide).detach(), 953 t.$slidesCache.filter(e).appendTo(t.$slideTrack), 954 t.reinit()) 955 } 956 ,
957 t.prototype.focusHandler = function() { 958 var t = this; 959 t.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick", "*", function(i) { 960 i.stopImmediatePropagation(); 961 var o = e(this); 962 setTimeout(function() { 963 t.options.pauseOnFocus && (t.focussed = o.is(":focus"), 964 t.autoPlay()) 965 }, 0) 966 }) 967 } 968 , 969 t.prototype.getCurrent = t.prototype.slickCurrentSlide = function() { 970 return this.currentSlide 971 } 972 , 973 t.prototype.getDotCount = function() { 974 var e = this 975 , t = 0 976 , i = 0 977 , o = 0; 978 if (!0 === e.options.infinite) 979 if (e.slideCount <= e.options.slidesToShow) 980 ++o; 981 else 982 for (; t < e.slideCount; ) 983 ++o, 984 t = i + e.options.slidesToScroll, 985 i += e.options.slidesToScroll <= e.options.slidesToShow ? e.options.slidesToScroll : e.options.slidesToShow; 986 else if (!0 === e.options.centerMode) 987 o = e.slideCount; 988 else if (e.options.asNavFor) 989 for (; t < e.slideCount; ) 990 ++o, 991 t = i + e.options.slidesToScroll, 992 i += e.options.slidesToScroll <= e.options.slidesToShow ? e.options.slidesToScroll : e.options.slidesToShow; 993 else 994 o = 1 + Math.ceil((e.slideCount - e.options.slidesToShow) / e.options.slidesToScroll); 995 return o - 1 996 } 997 , 998 t.prototype.getLeft = function(e) { 999 var t, i, o, n, s = this, a = 0; 1000 return s.slideOffset = 0, 1001 i = s.$slides.first().outerHeight(!0), 1002 !0 === s.options.infinite ? (s.slideCount > s.options.slidesToShow && (s.slideOffset = s.slideWidth * s.options.slidesToShow * -1, 1003 n = -1, 1004 !0 === s.options.vertical && !0 === s.options.centerMode && (2 === s.options.slidesToShow ? n = -1.5 : 1 === s.options.slidesToShow && (n = -2)), 1005 a = i * s.options.slidesToShow * n), 1006 s.slideCount % s.options.slidesToScroll != 0 && e + s.options.slidesToScroll > s.slideCount && s.slideCount > s.options.slidesToShow && (e > s.slideCount ? (s.slideOffset = (s.options.slidesToShow - (e - s.slideCount)) * s.slideWidth * -1, 1007 a = (s.options.slidesToShow - (e - s.slideCount)) * i * -1) : (s.slideOffset = s.slideCount % s.options.slidesToScroll * s.slideWidth * -1, 1008 a = s.slideCount % s.options.slidesToScroll * i * -1))) : e + s.options.slidesToShow > s.slideCount && (s.slideOffset = (e + s.options.slidesToShow - s.slideCount) * s.slideWidth, 1009 a = (e + s.options.slidesToShow - s.slideCount) * i), 1010 s.slideCount <= s.options.slidesToShow && (s.slideOffset = 0, 1011 a = 0), 1012 !0 === s.options.centerMode && s.slideCount <= s.options.slidesToShow ? s.slideOffset = s.slideWidth * Math.floor(s.options.slidesToShow) / 2 - s.slideWidth * s.slideCount / 2 : !0 === s.options.centerMode && !0 === s.options.infinite ? s.slideOffset += s.slideWidth * Math.floor(s.options.slidesToShow / 2) - s.slideWidth : !0 === s.options.centerMode && (s.slideOffset = 0, 1013 s.slideOffset += s.slideWidth * Math.floor(s.options.slidesToShow / 2)), 1014 t = !1 === s.options.vertical ? e * s.slideWidth * -1 + s.slideOffset : e * i * -1 + a, 1015 !0 === s.options.variableWidth && (o = s.slideCount <= s.options.slidesToShow || !1 === s.options.infinite ? s.$slideTrack.children(".slick-slide").eq(e) : s.$slideTrack.children(".slick-slide").eq(e + s.options.slidesToShow), 1016 t = !0 === s.options.rtl ? o[0] ? -1 * (s.$slideTrack.width() - o[0].offsetLeft - o.width()) : 0 : o[0] ? -1 * o[0].offsetLeft : 0, 1017 !0 === s.options.centerMode && (o = s.slideCount <= s.options.slidesToShow || !1 === s.options.infinite ? s.$slideTrack.children(".slick-slide").eq(e) : s.$slideTrack.children(".slick-slide").eq(e + s.options.slidesToShow + 1), 1018 t = !0 === s.options.rtl ? o[0] ? -1 * (s.$slideTrack.width() - o[0].offsetLeft - o.width()) : 0 : o[0] ? -1 * o[0].offsetLeft : 0, 1019 t += (s.$list.width() - o.outerWidth()) / 2)), 1020 t 1021 } 1022 , 1023 t.prototype.getOption = t.prototype.slickGetOption = function(e) { 1024 return this.options[e] 1025 } 1026 , 1027 t.prototype.getNavigableIndexes = function() { 1028 var e, t = this, i = 0, o = 0, n = []; 1029 for (!1 === t.options.infinite ? e = t.slideCount : (i = -1 * t.options.slidesToScroll, 1030 o = -1 * t.options.slidesToScroll, 1031 e = 2 * t.slideCount); i < e; ) 1032 n.push(i), 1033 i = o + t.options.slidesToScroll, 1034 o += t.options.slidesToScroll <= t.options.slidesToShow ? t.options.slidesToScroll : t.options.slidesToShow; 1035 return n 1036 } 1037 , 1038 t.prototype.getSlick = function() { 1039 return this 1040 } 1041 , 1042 t.prototype.getSlideCount = function() { 1043 var t, i, o = this; 1044 return i = !0 === o.options.centerMode ? o.slideWidth * Math.floor(o.options.slidesToShow / 2) : 0, 1045 !0 === o.options.swipeToSlide ? (o.$slideTrack.find(".slick-slide").each(function(n, s) { 1046 if (s.offsetLeft - i + e(s).outerWidth() / 2 > -1 * o.swipeLeft) 1047 return t = s, 1048 !1 1049 }), 1050 Math.abs(e(t).attr("data-slick-index") - o.currentSlide) || 1) : o.options.slidesToScroll 1051 } 1052 , 1053 t.prototype.goTo = t.prototype.slickGoTo = function(e, t) { 1054 this.changeSlide({ 1055 data: { 1056 message: "index", 1057 index: parseInt(e) 1058 } 1059 }, t) 1060 } 1061 , 1062 t.prototype.init = function(t) { 1063 var i = this; 1064 e(i.$slider).hasClass("slick-initialized") || (e(i.$slider).addClass("slick-initialized"), 1065 i.buildRows(), 1066 i.buildOut(), 1067 i.setProps(), 1068 i.startLoad(), 1069 i.loadSlider(), 1070 i.initializeEvents(), 1071 i.updateArrows(), 1072 i.updateDots(), 1073 i.checkResponsive(!0), 1074 i.focusHandler()), 1075 t && i.$slider.trigger("init", [i]), 1076 !0 === i.options.accessibility && i.initADA(), 1077 i.options.autoplay && (i.paused = !1, 1078 i.autoPlay()) 1079 } 1080 , 1081 t.prototype.initADA = function() { 1082 var t = this 1083 , i = Math.ceil(t.slideCount / t.options.slidesToShow) 1084 , o = t.getNavigableIndexes().filter(function(e) { 1085 return e >= 0 && e < t.slideCount 1086 }); 1087 t.$slides.add(t.$slideTrack.find(".slick-cloned")).attr({ 1088 "aria-hidden": "true", 1089 tabindex: "-1" 1090 }).find("a, input, button, select").attr({ 1091 tabindex: "-1" 1092 }), 1093 null !== t.$dots && (t.$slides.not(t.$slideTrack.find(".slick-cloned")).each(function(i) { 1094 var n = o.indexOf(i); 1095 e(this).attr({ 1096 role: "tabpanel", 1097 id: "slick-slide" + t.instanceUid + i, 1098 tabindex: -1 1099 }), 1100 -1 !== n && e(this).attr({ 1101 "aria-describedby": "slick-slide-control" + t.instanceUid + n 1102 }) 1103 }), 1104 t.$dots.attr("role", "tablist").find("li").each(function(n) { 1105 var s = o[n]; 1106 e(this).attr({ 1107 role: "presentation" 1108 }), 1109 e(this).find("button").first().attr({ 1110 role: "tab", 1111 id: "slick-slide-control" + t.instanceUid + n, 1112 "aria-controls": "slick-slide" + t.instanceUid + s, 1113 "aria-label": n + 1 + " of " + i, 1114 "aria-selected": null, 1115 tabindex: "-1" 1116 }) 1117 }).eq(t.currentSlide).find("button").attr({ 1118 "aria-selected": "true", 1119 tabindex: "0" 1120 }).end()); 1121 for (var n = t.currentSlide, s = n + t.options.slidesToShow; n < s; n++) 1122 t.$slides.eq(n).attr("tabindex", 0); 1123 t.activateADA() 1124 } 1125 , 1126 t.prototype.initArrowEvents = function() { 1127 var e = this; 1128 !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.off("click.slick").on("click.slick", { 1129 message: "previous" 1130 }, e.changeSlide), 1131 e.$nextArrow.off("click.slick").on("click.slick", { 1132 message: "next" 1133 }, e.changeSlide), 1134 !0 === e.options.accessibility && (e.$prevArrow.on("keydown.slick", e.keyHandler), 1135 e.$nextArrow.on("keydown.slick", e.keyHandler))) 1136 } 1137 , 1138 t.prototype.initDotEvents = function() { 1139 var t = this; 1140 !0 === t.options.dots && (e("li", t.$dots).on("click.slick", { 1141 message: "index" 1142 }, t.changeSlide), 1143 !0 === t.options.accessibility && t.$dots.on("keydown.slick", t.keyHandler)), 1144 !0 === t.options.dots && !0 === t.options.pauseOnDotsHover && e("li", t.$dots).on("mouseenter.slick", e.proxy(t.
vendor: 16,282 bytes, lines 1144-1529
1144interrupt, t, !0)).on("mouseleave.slick", e.proxy(t.interrupt, t, !1)) 1145 } 1146 , 1147 t.prototype.initSlideEvents = function() { 1148 var t = this; 1149 t.options.pauseOnHover && (t.$list.on("mouseenter.slick", e.proxy(t.interrupt, t, !0)), 1150 t.$list.on("mouseleave.slick", e.proxy(t.interrupt, t, !1))) 1151 } 1152 , 1153 t.prototype.initializeEvents = function() { 1154 var t = this; 1155 t.initArrowEvents(), 1156 t.initDotEvents(), 1157 t.initSlideEvents(), 1158 t.$list.on("touchstart.slick mousedown.slick", { 1159 action: "start" 1160 }, t.swipeHandler), 1161 t.$list.on("touchmove.slick mousemove.slick", { 1162 action: "move" 1163 }, t.swipeHandler), 1164 t.$list.on("touchend.slick mouseup.slick", { 1165 action: "end" 1166 }, t.swipeHandler), 1167 t.$list.on("touchcancel.slick mouseleave.slick", { 1168 action: "end" 1169 }, t.swipeHandler), 1170 t.$list.on("click.slick", t.clickHandler), 1171 e(document).on(t.visibilityChange, e.proxy(t.visibility, t)), 1172 !0 === t.options.accessibility && t.$list.on("keydown.slick", t.keyHandler), 1173 !0 === t.options.focusOnSelect && e(t.$slideTrack).children().on("click.slick", t.selectHandler), 1174 e(window).on("orientationchange.slick.slick-" + t.instanceUid, e.proxy(t.orientationChange, t)), 1175 e(window).on("resize.slick.slick-" + t.instanceUid, e.proxy(t.resize, t)), 1176 e("[draggable!=true]", t.$slideTrack).on("dragstart", t.preventDefault), 1177 e(window).on("load.slick.slick-" + t.instanceUid, t.setPosition), 1178 e(t.setPosition) 1179 } 1180 , 1181 t.prototype.initUI = function() { 1182 var e = this; 1183 !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.show(), 1184 e.$nextArrow.show()), 1185 !0 === e.options.dots && e.slideCount > e.options.slidesToShow && e.$dots.show() 1186 } 1187 , 1188 t.prototype.keyHandler = function(e) { 1189 var t = this; 1190 e.target.tagName.match("TEXTAREA|INPUT|SELECT") || (37 === e.keyCode && !0 === t.options.accessibility ? t.changeSlide({ 1191 data: { 1192 message: !0 === t.options.rtl ? "next" : "previous" 1193 } 1194 }) : 39 === e.keyCode && !0 === t.options.accessibility && t.changeSlide({ 1195 data: { 1196 message: !0 === t.options.rtl ? "previous" : "next" 1197 } 1198 })) 1199 } 1200 , 1201 t.prototype.lazyLoad = function() { 1202 function t(t) { 1203 e("img[data-lazy]", t).each(function() { 1204 var t = e(this) 1205 , i = e(this).attr("data-lazy") 1206 , o = e(this).attr("data-srcset") 1207 , n = e(this).attr("data-sizes") || s.$slider.attr("data-sizes") 1208 , a = document.createElement("img"); 1209 a.onload = function() { 1210 t.animate({ 1211 opacity: 0 1212 }, 100, function() { 1213 o && (t.attr("srcset", o), 1214 n && t.attr("sizes", n)), 1215 t.attr("src", i).animate({ 1216 opacity: 1 1217 }, 200, function() { 1218 t.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading") 1219 }), 1220 s.$slider.trigger("lazyLoaded", [s, t, i]) 1221 }) 1222 } 1223 , 1224 a.onerror = function() { 1225 t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), 1226 s.$slider.trigger("lazyLoadError", [s, t, i]) 1227 } 1228 , 1229 a.src = i 1230 }) 1231 } 1232 var i, o, n, s = this; 1233 if (!0 === s.options.centerMode ? !0 === s.options.infinite ? n = (o = s.currentSlide + (s.options.slidesToShow / 2 + 1)) + s.options.slidesToShow + 2 : (o = Math.max(0, s.currentSlide - (s.options.slidesToShow / 2 + 1)), 1234 n = s.options.slidesToShow / 2 + 1 + 2 + s.currentSlide) : (o = s.options.infinite ? s.options.slidesToShow + s.currentSlide : s.currentSlide, 1235 n = Math.ceil(o + s.options.slidesToShow), 1236 !0 === s.options.fade && (o > 0 && o--, 1237 n <= s.slideCount && n++)), 1238 i = s.$slider.find(".slick-slide").slice(o, n), 1239 "anticipated" === s.options.lazyLoad) 1240 for (var a = o - 1, r = n, l = s.$slider.find(".slick-slide"), d = 0; d < s.options.slidesToScroll; d++) 1241 a < 0 && (a = s.slideCount - 1), 1242 i = (i = i.add(l.eq(a))).add(l.eq(r)), 1243 a--, 1244 r++; 1245 t(i), 1246 s.slideCount <= s.options.slidesToShow ? t(s.$slider.find(".slick-slide")) : s.currentSlide >= s.slideCount - s.options.slidesToShow ? t(s.$slider.find(".slick-cloned").slice(0, s.options.slidesToShow)) : 0 === s.currentSlide && t(s.$slider.find(".slick-cloned").slice(-1 * s.options.slidesToShow)) 1247 } 1248 , 1249 t.prototype.loadSlider = function() { 1250 var e = this; 1251 e.setPosition(), 1252 e.$slideTrack.css({ 1253 opacity: 1 1254 }), 1255 e.$slider.removeClass("slick-loading"), 1256 e.initUI(), 1257 "progressive" === e.options.lazyLoad && e.progressiveLazyLoad() 1258 } 1259 , 1260 t.prototype.next = t.prototype.slickNext = function() { 1261 this.changeSlide({ 1262 data: { 1263 message: "next" 1264 } 1265 }) 1266 } 1267 , 1268 t.prototype.orientationChange = function() { 1269 var e = this; 1270 e.checkResponsive(), 1271 e.setPosition() 1272 } 1273 , 1274 t.prototype.pause = t.prototype.slickPause = function() { 1275 var e = this; 1276 e.autoPlayClear(), 1277 e.paused = !0 1278 } 1279 , 1280 t.prototype.play = t.prototype.slickPlay = function() { 1281 var e = this; 1282 e.autoPlay(), 1283 e.options.autoplay = !0, 1284 e.paused = !1, 1285 e.focussed = !1, 1286 e.interrupted = !1 1287 } 1288 , 1289 t.prototype.postSlide = function(t) { 1290 var i = this; 1291 i.unslicked || (i.$slider.trigger("afterChange", [i, t]), 1292 i.animating = !1, 1293 i.slideCount > i.options.slidesToShow && i.setPosition(), 1294 i.swipeLeft = null, 1295 i.options.autoplay && i.autoPlay(), 1296 !0 === i.options.accessibility && (i.initADA(), 1297 i.options.focusOnChange && e(i.$slides.get(i.currentSlide)).attr("tabindex", 0).focus())) 1298 } 1299 , 1300 t.prototype.prev = t.prototype.slickPrev = function() { 1301 this.changeSlide({ 1302 data: { 1303 message: "previous" 1304 } 1305 }) 1306 } 1307 , 1308 t.prototype.preventDefault = function(e) { 1309 e.preventDefault() 1310 } 1311 , 1312 t.prototype.progressiveLazyLoad = function(t) { 1313 t = t || 1; 1314 var i, o, n, s, a, r = this, l = e("img[data-lazy]", r.$slider); 1315 l.length ? (i = l.first(), 1316 o = i.attr("data-lazy"), 1317 n = i.attr("data-srcset"), 1318 s = i.attr("data-sizes") || r.$slider.attr("data-sizes"), 1319 (a = document.createElement("img")).onload = function() { 1320 n && (i.attr("srcset", n), 1321 s && i.attr("sizes", s)), 1322 i.attr("src", o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"), 1323 !0 === r.options.adaptiveHeight && r.setPosition(), 1324 r.$slider.trigger("lazyLoaded", [r, i, o]), 1325 r.progressiveLazyLoad() 1326 } 1327 , 1328 a.onerror = function() { 1329 t < 3 ? setTimeout(function() { 1330 r.progressiveLazyLoad(t + 1) 1331 }, 500) : (i.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), 1332 r.$slider.trigger("lazyLoadError", [r, i, o]), 1333 r.progressiveLazyLoad()) 1334 } 1335 , 1336 a.src = o) : r.$slider.trigger("allImagesLoaded", [r]) 1337 } 1338 , 1339 t.prototype.refresh = function(t) { 1340 var i, o, n = this; 1341 o = n.slideCount - n.options.slidesToShow, 1342 !n.options.infinite && n.currentSlide > o && (n.currentSlide = o), 1343 n.slideCount <= n.options.slidesToShow && (n.currentSlide = 0), 1344 i = n.currentSlide, 1345 n.destroy(!0), 1346 e.extend(n, n.initials, { 1347 currentSlide: i 1348 }), 1349 n.init(), 1350 t || n.changeSlide({ 1351 data: { 1352 message: "index", 1353 index: i 1354 } 1355 }, !1) 1356 } 1357 , 1358 t.prototype.registerBreakpoints = function() { 1359 var t, i, o, n = this, s = n.options.responsive || null; 1360 if ("array" === e.type(s) && s.length) { 1361 n.respondTo = n.options.respondTo || "window"; 1362 for (t in s) 1363 if (o = n.breakpoints.length - 1, 1364 s.hasOwnProperty(t)) { 1365 for (i = s[t].breakpoint; o >= 0; ) 1366 n.breakpoints[o] && n.breakpoints[o] === i && n.breakpoints.splice(o, 1), 1367 o--; 1368 n.breakpoints.push(i), 1369 n.breakpointSettings[i] = s[t].settings 1370 } 1371 n.breakpoints.sort(function(e, t) { 1372 return n.options.mobileFirst ? e - t : t - e 1373 }) 1374 } 1375 } 1376 , 1377 t.prototype.reinit = function() { 1378 var t = this; 1379 t.$slides = t.$slideTrack.children(t.options.slide).addClass("slick-slide"), 1380 t.slideCount = t.$slides.length, 1381 t.currentSlide >= t.slideCount && 0 !== t.currentSlide && (t.currentSlide = t.currentSlide - t.options.slidesToScroll), 1382 t.slideCount <= t.options.slidesToShow && (t.currentSlide = 0), 1383 t.registerBreakpoints(), 1384 t.setProps(), 1385 t.setupInfinite(), 1386 t.buildArrows(), 1387 t.updateArrows(), 1388 t.initArrowEvents(), 1389 t.buildDots(), 1390 t.updateDots(), 1391 t.initDotEvents(), 1392 t.cleanUpSlideEvents(), 1393 t.initSlideEvents(), 1394 t.checkResponsive(!1, !0), 1395 !0 === t.options.focusOnSelect && e(t.$slideTrack).children().on("click.slick", t.selectHandler), 1396 t.setSlideClasses("number" == typeof t.currentSlide ? t.currentSlide : 0), 1397 t.setPosition(), 1398 t.focusHandler(), 1399 t.paused = !t.options.autoplay, 1400 t.autoPlay(), 1401 t.$slider.trigger("reInit", [t]) 1402 } 1403 , 1404 t.prototype.resize = function() { 1405 var t = this; 1406 e(window).width() !== t.windowWidth && (clearTimeout(t.windowDelay), 1407 t.windowDelay = window.setTimeout(function() { 1408 t.windowWidth = e(window).width(), 1409 t.checkResponsive(), 1410 t.unslicked || t.setPosition() 1411 }, 50)) 1412 } 1413 , 1414 t.prototype.removeSlide = t.prototype.slickRemove = function(e, t, i) { 1415 var o = this; 1416 return e = "boolean" == typeof e ? !0 === (t = e) ? 0 : o.slideCount - 1 : !0 === t ? --e : e, 1417 !(o.slideCount < 1 || e < 0 || e > o.slideCount - 1) && (o.unload(), 1418 !0 === i ? o.$slideTrack.children().remove() : o.$slideTrack.children(this.options.slide).eq(e).remove(), 1419 o.$slides = o.$slideTrack.children(this.options.slide), 1420 o.$slideTrack.children(this.options.slide).detach(), 1421 o.$slideTrack.append(o.$slides), 1422 o.$slidesCache = o.$slides, 1423 o.reinit(), 1424 void 0) 1425 } 1426 , 1427 t.prototype.setCSS = function(e) { 1428 var t, i, o = this, n = {}; 1429 !0 === o.options.rtl && (e = -e), 1430 t = "left" == o.positionProp ? Math.ceil(e) + "px" : "0px", 1431 i = "top" == o.positionProp ? Math.ceil(e) + "px" : "0px", 1432 n[o.positionProp] = e, 1433 !1 === o.transformsEnabled ? o.$slideTrack.css(n) : (n = {}, 1434 !1 === o.cssTransitions ? (n[o.animType] = "translate(" + t + ", " + i + ")", 1435 o.$slideTrack.css(n)) : (n[o.animType] = "translate3d(" + t + ", " + i + ", 0px)", 1436 o.$slideTrack.css(n))) 1437 } 1438 , 1439 t.prototype.setDimensions = function() { 1440 var e = this; 1441 !1 === e.options.vertical ? !0 === e.options.centerMode && e.$list.css({ 1442 padding: "0px " + e.options.centerPadding 1443 }) : (e.$list.height(e.$slides.first().outerHeight(!0) * e.options.slidesToShow), 1444 !0 === e.options.centerMode && e.$list.css({ 1445 padding: e.options.centerPadding + " 0px" 1446 })), 1447 e.listWidth = e.$list.width(), 1448 e.listHeight = e.$list.height(), 1449 !1 === e.options.vertical && !1 === e.options.variableWidth ? (e.slideWidth = Math.ceil(e.listWidth / e.options.slidesToShow), 1450 e.$slideTrack.width(Math.ceil(e.slideWidth * e.$slideTrack.children(".slick-slide").length))) : !0 === e.options.variableWidth ? e.$slideTrack.width(5e3 * e.slideCount) : (e.slideWidth = Math.ceil(e.listWidth), 1451 e.$slideTrack.height(Math.ceil(e.$slides.first().outerHeight(!0) * e.$slideTrack.children(".slick-slide").length))); 1452 var t = e.$slides.first().outerWidth(!0) - e.$slides.first().width(); 1453 !1 === e.options.variableWidth && e.$slideTrack.children(".slick-slide").width(e.slideWidth - t) 1454 } 1455 , 1456 t.prototype.setFade = function() { 1457 var t, i = this; 1458 i.$slides.each(function(o, n) { 1459 t = i.slideWidth * o * -1, 1460 !0 === i.options.rtl ? e(n).css({ 1461 position: "relative", 1462 right: t, 1463 top: 0, 1464 zIndex: i.options.zIndex - 2, 1465 opacity: 0 1466 }) : e(n).css({ 1467 position: "relative", 1468 left: t, 1469 top: 0, 1470 zIndex: i.options.zIndex - 2, 1471 opacity: 0 1472 }) 1473 }), 1474 i.$slides.eq(i.currentSlide).css({ 1475 zIndex: i.options.zIndex - 1, 1476 opacity: 1 1477 }) 1478 } 1479 , 1480 t.prototype.setHeight = function() { 1481 var e = this; 1482 if (1 === e.options.slidesToShow && !0 === e.options.adaptiveHeight && !1 === e.options.vertical) { 1483 var t = e.$slides.eq(e.currentSlide).outerHeight(!0); 1484 e.$list.css("height", t) 1485 } 1486 } 1487 , 1488 t.prototype.setOption = t.prototype.slickSetOption = function() { 1489 var t, i, o, n, s, a = this, r = !1; 1490 if ("object" === e.type(arguments[0]) ? (o = arguments[0], 1491 r = arguments[1], 1492 s = "multiple") : "string" === e.type(arguments[0]) && (o = arguments[0], 1493 n = arguments[1], 1494 r = arguments[2], 1495 "responsive" === arguments[0] && "array" === e.type(arguments[1]) ? s = "responsive" : void 0 !== arguments[1] && (s = "single")), 1496 "single" === s) 1497 a.options[o] = n; 1498 else if ("multiple" === s) 1499 e.each(o, function(e, t) { 1500 a.options[e] = t 1501 }); 1502 else if ("responsive" === s) 1503 for (i in n) 1504 if ("array" !== e.type(a.options.responsive)) 1505 a.options.responsive = [n[i]]; 1506 else { 1507 for (t = a.options.responsive.length - 1; t >= 0; ) 1508 a.options.responsive[t].breakpoint === n[i].breakpoint && a.options.responsive.splice(t, 1), 1509 t--; 1510 a.options.responsive.push(n[i]) 1511 } 1512 r && (a.unload(), 1513 a.reinit()) 1514 } 1515 , 1516 t.prototype.setPosition = function() { 1517 var e = this; 1518 e.setDimensions(), 1519 e.setHeight(), 1520 !1 === e.options.fade ? e.setCSS(e.getLeft(e.currentSlide)) : e.setFade(), 1521 e.$slider.trigger("setPosition", [e]) 1522 } 1523 , 1524 t.prototype.setProps = function() { 1525 var e = this 1526 , t = document.body.style; 1527 e.positionProp = !0 === e.options.vertical ? "top" : "left", 1528 "top" === e.positionProp ? e.$slider.addClass("slick-vertical") : e.$slider.removeClass("slick-vertical"), 1529 void 0 === t.WebkitTransition && void 0 === t.MozTransition && void 0 === t.msTransition || !0 === e.options.useCSS && (e.cssTransitions = !0),
1530 e.options.fade && ("number" == typeof e.options.zIndex ? e.options.zIndex < 3 && (e.options.zIndex = 3) : e.options.zIndex = e.defaults.zIndex), 1531 void 0 !== t.OTransform && (e.animType = "OTransform", 1532 e.transformType = "-o-transform", 1533 e.transitionType = "OTransition", 1534 void 0 === t.perspectiveProperty && void 0 === t.webkitPerspective && (e.animType = !1)), 1535 void 0 !== t.MozTransform && (e.animType = "MozTransform", 1536 e.transformType = "-moz-transform", 1537 e.transitionType = "MozTransition", 1538 void 0 === t.perspectiveProperty && void 0 === t.MozPerspective && (e.animType = !1)), 1539 void 0 !== t.webkitTransform && (e.animType = "webkitTransform", 1540 e.transformType = "-webkit-transform", 1541 e.transitionType = "webkitTransition", 1542 void 0 === t.perspectiveProperty && void 0 === t.webkitPerspective && (e.animType = !1)), 1543 void 0 !== t.msTransform && (e.animType = "msTransform", 1544 e.transformType = "-ms-transform", 1545 e.transitionType = "msTransition", 1546 void 0 === t.msTransform && (e.animType = !1)), 1547 void 0 !== t.transform && !1 !== e.animType && (e.animType = "transform", 1548 e.transformType = "transform", 1549 e.transitionType = "transition"), 1550 e.transformsEnabled = e.options.useTransform && null !== e.animType && !1 !== e.animType 1551 } 1552 , 1553 t.prototype.setSlideClasses = function(e) { 1554 var t, i, o, n, s = this; 1555 if (i = s.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden", "true"), 1556 s.$slides.eq(e).addClass("slick-current"), 1557 !0 === s.options.centerMode) { 1558 var a = s.options.slidesToShow % 2 == 0 ? 1 : 0; 1559 t = Math.floor(s.options.slidesToShow / 2), 1560 !0 === s.options.infinite && (e >= t && e <= s.slideCount - 1 - t ? s.$slides.slice(e - t + a, e + t + 1).addClass("slick-active").attr("aria-hidden", "false") : (o = s.options.slidesToShow + e, 1561 i.slice(o - t + 1 + a, o + t + 2).addClass("slick-active").attr("aria-hidden", "false")), 1562 0 === e ? i.eq(i.length - 1 - s.options.slidesToShow).addClass("slick-center") : e === s.slideCount - 1 && i.eq(s.options.slidesToShow).addClass("slick-center")), 1563 s.$slides.eq(e).addClass("slick-center") 1564 } else 1565 e >= 0 && e <= s.slideCount - s.options.slidesToShow ? s.$slides.slice(e, e + s.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false") : i.length <= s.options.slidesToShow ? i.addClass("slick-active").attr("aria-hidden", "false") : (n = s.slideCount % s.options.slidesToShow, 1566 o = !0 === s.options.infinite ? s.options.slidesToShow + e : e, 1567 s.options.slidesToShow == s.options.slidesToScroll && s.slideCount - e < s.options.slidesToShow ? i.slice(o - (s.options.slidesToShow - n), o + n).addClass("slick-active").attr("aria-hidden", "false") : i.slice(o, o + s.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false")); 1568 "ondemand" !== s.options.lazyLoad && "anticipated" !== s.options.lazyLoad || s.lazyLoad() 1569 } 1570 , 1571 t.prototype.setupInfinite = function() { 1572 var t, i, o, n = this; 1573 if (!0 === n.options.fade && (n.options.centerMode = !1), 1574 !0 === n.options.infinite && !1 === n.options.fade && (i = null, 1575 n.slideCount > n.options.slidesToShow)) { 1576 for (o = !0 === n.options.centerMode ? n.options.slidesToShow + 1 : n.options.slidesToShow, 1577 t = n.slideCount; t > n.slideCount - o; t -= 1) 1578 i = t - 1, 1579 e(n.$slides[i]).clone(!0).attr("id", "").attr("data-slick-index", i - n.slideCount).prependTo(n.$slideTrack).addClass("slick-cloned"); 1580 for (t = 0; t < o + n.slideCount; t += 1) 1581 i = t, 1582 e(n.$slides[i]).clone(!0).attr("id", "").attr("data-slick-index", i + n.slideCount).appendTo(n.$slideTrack).addClass("slick-cloned"); 1583 n.$slideTrack.find(".slick-cloned").find("[id]").each(function() { 1584 e(this).attr("id", "") 1585 }) 1586 } 1587 } 1588 , 1589 t.prototype.interrupt = function(e) { 1590 var t = this; 1591 e || t.autoPlay(), 1592 t.interrupted = e 1593 } 1594 , 1595 t.prototype.selectHandler = function(t) { 1596 var i = this 1597 , o = e(t.target).is(".slick-slide") ? e(t.target) : e(t.target).parents(".slick-slide") 1598 , n = parseInt(o.attr("data-slick-index")); 1599 n || (n = 0), 1600 i.slideCount <= i.options.slidesToShow ? i.slideHandler(n, !1, !0) : i.slideHandler(n) 1601 } 1602 , 1603 t.prototype.slideHandler = function(e, t, i) { 1604 var o, n, s, a, r, l = null, d = this; 1605 if (t = t || !1, 1606 !(!0 === d.animating && !0 === d.options.waitForAnimate || !0 === d.options.fade && d.currentSlide === e)) 1607 if (!1 === t && d.asNavFor(e), 1608 o = e, 1609 l = d.getLeft(o), 1610 a = d.getLeft(d.currentSlide), 1611 d.currentLeft = null === d.swipeLeft ? a : d.swipeLeft, 1612 !1 === d.options.infinite && !1 === d.options.centerMode && (e < 0 || e > d.getDotCount() * d.options.slidesToScroll)) 1613 !1 === d.options.fade && (o = d.currentSlide, 1614 !0 !== i ? d.animateSlide(a, function() { 1615 d.postSlide(o) 1616 }) : d.postSlide(o)); 1617 else if (!1 === d.options.infinite && !0 === d.options.centerMode && (e < 0 || e > d.slideCount - d.options.slidesToScroll)) 1618 !1 === d.options.fade && (o = d.currentSlide, 1619 !0 !== i ? d.animateSlide(a, function() { 1620 d.postSlide(o) 1621 }) : d.postSlide(o)); 1622 else { 1623 if (d.options.autoplay && clearInterval(d.autoPlayTimer), 1624 n = o < 0 ? d.slideCount % d.options.slidesToScroll != 0 ? d.slideCount - d.slideCount % d.options.slidesToScroll : d.slideCount + o : o >= d.slideCount ? d.slideCount % d.options.slidesToScroll != 0 ? 0 : o - d.slideCount : o, 1625 d.animating = !0, 1626 d.$slider.trigger("beforeChange", [d, d.currentSlide, n]), 1627 s = d.currentSlide, 1628 d.currentSlide = n, 1629 d.setSlideClasses(d.currentSlide), 1630 d.options.asNavFor && (r = (r = d.getNavTarget()).slick("getSlick")).slideCount <= r.options.slidesToShow && r.setSlideClasses(d.currentSlide), 1631 d.updateDots(), 1632 d.updateArrows(), 1633 !0 === d.options.fade) 1634 return !0 !== i ? (d.fadeSlideOut(s), 1635 d.fadeSlide(n, function() { 1636 d.postSlide(n) 1637 })) : d.postSlide(n), 1638 void d.animateHeight(); 1639 !0 !== i ? d.animateSlide(l, function() { 1640 d.postSlide(n) 1641 }) : d.postSlide(n) 1642 } 1643 } 1644 , 1645 t.prototype.startLoad = function() { 1646 var e = this; 1647 !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && (e.$prevArrow.hide(), 1648 e.$nextArrow.hide()), 1649 !0 === e.options.dots && e.slideCount > e.options.slidesToShow && e.$dots.hide(), 1650 e.$slider.addClass("slick-loading") 1651 } 1652 , 1653 t.prototype.swipeDirection = function() { 1654 var e, t, i, o, n = this; 1655 return e = n.touchObject.startX - n.touchObject.curX, 1656 t = n.touchObject.startY - n.touchObject.curY, 1657 i = Math.atan2(t, e), 1658 (o = Math.round(180 * i / Math.PI)) < 0 && (o = 360 - Math.abs(o)), 1659 o <= 45 && o >= 0 ? !1 === n.options.rtl ? "left" : "right" : o <= 360 && o >= 315 ? !1 === n.options.rtl ? "left" : "right" : o >= 135 && o <= 225 ? !1 === n.options.rtl ? "right" : "left" : !0 === n.options.verticalSwiping ? o >= 35 && o <= 135 ? "down" : "up" : "vertical" 1660 } 1661 , 1662 t.prototype.swipeEnd = function(e) { 1663 var t, i, o = this; 1664 if (o.dragging = !1, 1665 o.swiping = !1, 1666 o.scrolling) 1667 return o.scrolling = !1, 1668 !1; 1669 if (o.interrupted = !1, 1670 o.shouldClick = !(o.touchObject.swipeLength > 10), 1671 void 0 === o.touchObject.curX) 1672 return !1; 1673 if (!0 === o.touchObject.edgeHit && o.$slider.trigger("edge", [o, o.swipeDirection()]), 1674 o.touchObject.swipeLength >= o.touchObject.minSwipe) { 1675 switch (i = o.swipeDirection()) {
vendor: 4,757 bytes, lines 1676-1764
1676 case "left": 1677 case "down": 1678 t = o.options.swipeToSlide ? o.checkNavigable(o.currentSlide + o.getSlideCount()) : o.currentSlide + o.getSlideCount(), 1679 o.currentDirection = 0; 1680 break; 1681 case "right": 1682 case "up": 1683 t = o.options.swipeToSlide ? o.checkNavigable(o.currentSlide - o.getSlideCount()) : o.currentSlide - o.getSlideCount(), 1684 o.currentDirection = 1 1685 } 1686 "vertical" != i && (o.slideHandler(t), 1687 o.touchObject = {}, 1688 o.$slider.trigger("swipe", [o, i])) 1689 } else 1690 o.touchObject.startX !== o.touchObject.curX && (o.slideHandler(o.currentSlide), 1691 o.touchObject = {}) 1692 } 1693 , 1694 t.prototype.swipeHandler = function(e) { 1695 var t = this; 1696 if (!(!1 === t.options.swipe || "ontouchend"in document && !1 === t.options.swipe || !1 === t.options.draggable && -1 !== e.type.indexOf("mouse"))) 1697 switch (t.touchObject.fingerCount = e.originalEvent && void 0 !== e.originalEvent.touches ? e.originalEvent.touches.length : 1, 1698 t.touchObject.minSwipe = t.listWidth / t.options.touchThreshold, 1699 !0 === t.options.verticalSwiping && (t.touchObject.minSwipe = t.listHeight / t.options.touchThreshold), 1700 e.data.action) { 1701 case "start": 1702 t.swipeStart(e); 1703 break; 1704 case "move": 1705 t.swipeMove(e); 1706 break; 1707 case "end": 1708 t.swipeEnd(e) 1709 } 1710 } 1711 , 1712 t.prototype.swipeMove = function(e) { 1713 var t, i, o, n, s, a, r = this; 1714 return s = void 0 !== e.originalEvent ? e.originalEvent.touches : null, 1715 !(!r.dragging || r.scrolling || s && 1 !== s.length) && (t = r.getLeft(r.currentSlide), 1716 r.touchObject.curX = void 0 !== s ? s[0].pageX : e.clientX, 1717 r.touchObject.curY = void 0 !== s ? s[0].pageY : e.clientY, 1718 r.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(r.touchObject.curX - r.touchObject.startX, 2))), 1719 a = Math.round(Math.sqrt(Math.pow(r.touchObject.curY - r.touchObject.startY, 2))), 1720 !r.options.verticalSwiping && !r.swiping && a > 4 ? (r.scrolling = !0, 1721 !1) : (!0 === r.options.verticalSwiping && (r.touchObject.swipeLength = a), 1722 i = r.swipeDirection(), 1723 void 0 !== e.originalEvent && r.touchObject.swipeLength > 4 && (r.swiping = !0, 1724 e.preventDefault()), 1725 n = (!1 === r.options.rtl ? 1 : -1) * (r.touchObject.curX > r.touchObject.startX ? 1 : -1), 1726 !0 === r.options.verticalSwiping && (n = r.touchObject.curY > r.touchObject.startY ? 1 : -1), 1727 o = r.touchObject.swipeLength, 1728 r.touchObject.edgeHit = !1, 1729 !1 === r.options.infinite && (0 === r.currentSlide && "right" === i || r.currentSlide >= r.getDotCount() && "left" === i) && (o = r.touchObject.swipeLength * r.options.edgeFriction, 1730 r.touchObject.edgeHit = !0), 1731 !1 === r.options.vertical ? r.swipeLeft = t + o * n : r.swipeLeft = t + o * (r.$list.height() / r.listWidth) * n, 1732 !0 === r.options.verticalSwiping && (r.swipeLeft = t + o * n), 1733 !0 !== r.options.fade && !1 !== r.options.touchMove && (!0 === r.animating ? (r.swipeLeft = null, 1734 !1) : void r.setCSS(r.swipeLeft)))) 1735 } 1736 , 1737 t.prototype.swipeStart = function(e) { 1738 var t, i = this; 1739 return i.interrupted = !0, 1740 1 !== i.touchObject.fingerCount || i.slideCount <= i.options.slidesToShow ? (i.touchObject = {}, 1741 !1) : (void 0 !== e.originalEvent && void 0 !== e.originalEvent.touches && (t = e.originalEvent.touches[0]), 1742 i.touchObject.startX = i.touchObject.curX = void 0 !== t ? t.pageX : e.clientX, 1743 i.touchObject.startY = i.touchObject.curY = void 0 !== t ? t.pageY : e.clientY, 1744 i.dragging = !0, 1745 void 0) 1746 } 1747 , 1748 t.prototype.unfilterSlides = t.prototype.slickUnfilter = function() { 1749 var e = this; 1750 null !== e.$slidesCache && (e.unload(), 1751 e.$slideTrack.children(this.options.slide).detach(), 1752 e.$slidesCache.appendTo(e.$slideTrack), 1753 e.reinit()) 1754 } 1755 , 1756 t.prototype.unload = function() { 1757 var t = this; 1758 e(".slick-cloned", t.$slider).remove(), 1759 t.$dots && t.$dots.remove(), 1760 t.$prevArrow && t.htmlExpr.test(t.options.prevArrow) && t.$prevArrow.remove(), 1761 t.$nextArrow && t.htmlExpr.test(t.options.nextArrow) && t.$nextArrow.remove(), 1762 t.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden", "true").css("width", "") 1763 } 1764 ,
1765 t.prototype.unslick = function(e) { 1766 var t = this; 1767 t.$slider.trigger("unslick", [t, e]), 1768 t.destroy() 1769 } 1770 , 1771 t.prototype.updateArrows = function() { 1772 var e = this; 1773 Math.floor(e.options.slidesToShow / 2), 1774 !0 === e.options.arrows && e.slideCount > e.options.slidesToShow && !e.options.infinite && (e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), 1775 e.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), 1776 0 === e.currentSlide ? (e.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true"), 1777 e.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : e.currentSlide >= e.slideCount - e.options.slidesToShow && !1 === e.options.centerMode ? (e.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), 1778 e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : e.currentSlide >= e.slideCount - 1 && !0 === e.options.centerMode && (e.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), 1779 e.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"))) 1780 } 1781 , 1782 t.prototype.updateDots = function() { 1783 var e = this; 1784 null !== e.$dots && (e.$dots.find("li").removeClass("slick-active").end(), 1785 e.$dots.find("li").eq(Math.floor(e.currentSlide / e.options.slidesToScroll)).addClass("slick-active")) 1786 } 1787 , 1788 t.prototype.visibility = function() { 1789 var e = this; 1790 e.options.autoplay && (document[e.hidden] ? e.interrupted = !0 : e.interrupted = !1) 1791 } 1792 , 1793 e.fn.slick = function() { 1794 var e, i, o = this, n = arguments[0], s = Array.prototype.slice.call(arguments, 1), a = o.length; 1795 for (e = 0; e < a; e++) 1796 if ("object" == typeof n || void 0 === n ? o[e].slick = new t(o[e],n) : i = o[e].slick[n].apply(o[e].slick, s), 1797 void 0 !== i) 1798 return i; 1799 return o 1800 } 1801}), 1802/* 1803 * Vide - v0.5.1 1804 * Easy as hell jQuery plugin for video backgrounds. 1805 * http://vodkabears.github.io/vide/ 1806 * 1807 * Made by Ilya Makarov 1808 * Under MIT License 1809 */ 1810!function(e, t) { 1811 "function" == typeof define && define.amd ? define(["jquery"], t) : t("object" == typeof exports ? require("jquery") : e.jQuery) 1812}(this, function(e) { 1813 "use strict"; 1814 function t(e) { 1815 var t, i, o, n, s, a, r, l = {}; 1816 for (s = e.replace(/\s*:\s*/g, ":").replace(/\s*,\s*/g, ",").split(","), 1817 r = 0, 1818 a = s.length; r < a && (i = s[r], 1819 i.search(/^(http|https|ftp):\/\//) === -1 && i.search(":") !== -1); r++) 1820 t = i.indexOf(":"), 1821 o = i.substring(0, t), 1822 n = i.substring(t + 1), 1823 n || (n = void 0), 1824 "string" == typeof n && (n = "true" === n || "false" !== n && n), 1825 "string" == typeof n && (n = isNaN(n) ? n : +n), 1826 l[o] = n; 1827 return null == o && null == n ? e : l 1828 } 1829 function i(e) { 1830 e = "" + e; 1831 var t, i, o, n = e.split(/\s+/), s = "50%", a = "50%"; 1832 for (o = 0, 1833 t = n.length; o < t; o++) 1834 i = n[o], 1835 "left" === i ? s = "0%" : "right" === i ? s = "100%" : "top" === i ? a = "0%" : "bottom" === i ? a = "100%" : "center" === i ? 0 === o ? s = "50%" : a = "50%" : 0 === o ? s = i : a = i; 1836 return { 1837 x: s, 1838 y: a 1839 } 1840 } 1841 function o(t, i) { 1842 var o = function() { 1843 i(this.src) 1844 }; 1845 e('<img src="' + t + '.gif">').on("load", o), 1846 e('<img src="' + t + '.jpg">').on("load", o), 1847 e('<img src="' + t + '.jpeg">').on("load", o), 1848 e('<img src="' + t + '.png">').on("load", o) 1849 } 1850 function n(i, o, n) { 1851 if (this.$element = e(i), 1852 "string" == typeof o && (o = t(o)), 1853 n ? "string" == typeof n && (n = t(n)) : n = {}, 1854 "string" == typeof o) 1855 o = o.replace(/\.\w*$/, ""); 1856 else if ("object" == typeof o) 1857 for (var s in o) 1858 o.hasOwnProperty(s) && (o[s] = o[s].replace(/\.\w*$/, "")); 1859 this.settings = e.extend({}, a, n), 1860 this.path = o; 1861 try { 1862 this.init() 1863 } catch (l) { 1864 if (l.message !== r) 1865 throw l 1866 } 1867 } 1868 var s = "vide" 1869 , a = { 1870 volume: 1, 1871 playbackRate: 1, 1872 muted: !0, 1873 loop: !0, 1874 autoplay: !0, 1875 position: "50% 50%", 1876 posterType: "detect", 1877 resizing: !0, 1878 bgColor: "transparent", 1879 className: "" 1880 } 1881 , r = "Not implemented"; 1882 n.prototype.init = function() { 1883 var t, n, s = this, a = s.path, l = a, d = "", c = s.$element, p = s.settings, u = i(p.position), f = p.posterType; 1884 n = s.$wrapper = e("<div>").addClass(p.className).css({ 1885 position: "absolute",
1886 "z-index": -1, 1887 top: 0, 1888 left: 0, 1889 bottom: 0, 1890 right: 0, 1891 overflow: "hidden", 1892 "-webkit-background-size": "cover", 1893 "-moz-background-size": "cover", 1894 "-o-background-size": "cover", 1895 "background-size": "cover", 1896 "background-color": p.bgColor, 1897 "background-repeat": "no-repeat", 1898 "background-position": u.x + " " + u.y 1899 }), 1900 "object" == typeof a && (a.poster ? l = a.poster : a.mp4 ? l = a.mp4 : a.webm ? l = a.webm : a.ogv && (l = a.ogv)), 1901 "detect" === f ? o(l, function(e) { 1902 n.css("background-image", "url(" + e + ")") 1903 }) : "none" !== f && n.css("background-image", "url(" + l + "." + f + ")"), 1904 "static" === c.css("position") && c.css("position", "relative"), 1905 c.prepend(n), 1906 "object" == typeof a ? (a.mp4 && (d += '<source src="' + a.mp4 + '.mp4" type="video/mp4">'), 1907 a.webm && (d += '<source src="' + a.webm + '.webm" type="video/webm">'), 1908 a.ogv && (d += '<source src="' + a.ogv + '.ogv" type="video/ogg">'), 1909 t = s.$video = e("<video>" + d + "</video>")) : t = s.$video = e('<video><source src="' + a + '.mp4" type="video/mp4"><source src="' + a + '.webm" type="video/webm"><source src="' + a + '.ogv" type="video/ogg"></video>'); 1910 try { 1911 t.prop({ 1912 autoplay: p.autoplay, 1913 loop: p.loop, 1914 volume: p.volume, 1915 muted: p.muted, 1916 defaultMuted: p.muted, 1917 playbackRate: p.playbackRate, 1918 defaultPlaybackRate: p.playbackRate 1919 }) 1920 } catch (h) { 1921 throw new Error(r) 1922 } 1923 t.css({ 1924 margin: "auto", 1925 position: "absolute", 1926 "z-index": -1, 1927 top: u.y, 1928 left: u.x, 1929 "-webkit-transform": "translate(-" + u.x + ", -" + u.y + ")", 1930 "-ms-transform": "translate(-" + u.x + ", -" + u.y + ")", 1931 "-moz-transform": "translate(-" + u.x + ", -" + u.y + ")", 1932 transform: "translate(-" + u.x + ", -" + u.y + ")", 1933 visibility: "hidden", 1934 opacity: 0 1935 }).one("canplaythrough.vide", function() { 1936 s.resize() 1937 }).one("playing.vide", function() { 1938 t.css({ 1939 visibility: "visible", 1940 opacity: 1 1941 }), 1942 n.css("background-image", "none") 1943 }), 1944 c.on("resize.vide", function() { 1945 p.resizing && s.resize() 1946 }), 1947 n.append(t) 1948 } 1949 , 1950 n.prototype.getVideoObject = function() { 1951 return this.$video[0] 1952 } 1953 , 1954 n.prototype.resize = function() { 1955 if (this.$video) { 1956 var e = this.$wrapper 1957 , t = this.$video 1958 , i = t[0] 1959 , o = i.videoHeight 1960 , n = i.videoWidth 1961 , s = e.height() 1962 , a = e.width(); 1963 a / n > s / o ? t.css({ 1964 width: a + 2, 1965 height: "auto" 1966 }) : t.css({ 1967 width: "auto", 1968 height: s + 2 1969 }) 1970 } 1971 } 1972 , 1973 n.prototype.destroy = function() { 1974 delete e[s].lookup[this.index], 1975 this.$video && this.$video.off(s), 1976 this.$element.off(s).removeData(s), 1977 this.$wrapper.remove() 1978 } 1979 , 1980 e[s] = { 1981 lookup: [] 1982 }, 1983 e.fn[s] = function(t, i) { 1984 var o; 1985 return this.each(function() { 1986 o = e.data(this, s), 1987 o && o.destroy(), 1988 o = new n(this,t,i), 1989 o.index = e[s].lookup.push(o) - 1, 1990 e.data(this, s, o) 1991 }), 1992 this 1993 } 1994 , 1995 e(document).ready(function() { 1996 var t = e(window); 1997 t.on("resize.vide", function() { 1998 for (var t, i = e[s].lookup.length, o = 0; o < i; o++) 1999 t = e[s].lookup[o], 2000 t && t.settings.resizing && t.resize() 2001 }), 2002 t.on("unload.vide", function() { 2003 return !1 2004 }),
2005 e(document).find("[data-vide-bg]").each(function(t, i) { 2006 var o = e(i) 2007 , n = o.data("vide-options") 2008 , a = o.data("vide-bg"); 2009 o[s](a, n) 2010 }) 2011 }) 2012}), 2013/*! 2014 * Name : Just Another Parallax [Jarallax] 2015 * Version : 1.10.3 2016 * Author : nK <https://nkdev.info> 2017 * GitHub : https://github.com/nk-o/jarallax 2018 */ 2019!function(e) { 2020 function t(o) { 2021 if (i[o]) 2022 return i[o].exports; 2023 var n = i[o] = { 2024 i: o, 2025 l: !1, 2026 exports: {} 2027 }; 2028 return e[o].call(n.exports, n, n.exports, t), 2029 n.l = !0, 2030 n.exports 2031 } 2032 var i = {}; 2033 t.m = e, 2034 t.c = i, 2035 t.d = function(e, i, o) { 2036 t.o(e, i) || Object.defineProperty(e, i, { 2037 configurable: !1, 2038 enumerable: !0, 2039 get: o 2040 }) 2041 } 2042 , 2043 t.n = function(e) { 2044 var i = e && e.__esModule ? function() { 2045 return e["default"] 2046 } 2047 : function() { 2048 return e 2049 } 2050 ; 2051 return t.d(i, "a", i), 2052 i 2053 } 2054 , 2055 t.o = function(e, t) { 2056 return Object.prototype.hasOwnProperty.call(e, t) 2057 } 2058 , 2059 t.p = "", 2060 t(t.s = 11) 2061}([function(e, t, i) { 2062 "use strict"; 2063 (function(t) { 2064 var i; 2065 i = "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}, 2066 e.exports = i 2067 } 2068 ).call(t, i(2)) 2069} 2070, function(e, t, i) { 2071 "use strict"; 2072 e.exports = function(e) { 2073 "complete" === document.readyState || "interactive" === document.readyState ? e.call() : document.attachEvent ? document.attachEvent("onreadystatechange", function() { 2074 "interactive" === document.readyState && e.call() 2075 }) : document.addEventListener && document.addEventListener("DOMContentLoaded", e) 2076 } 2077} 2078, function(e, t, i) { 2079 "use strict"; 2080 var o, n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 2081 return typeof e 2082 } 2083 : function(e) { 2084 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 2085 } 2086 ; 2087 o = function() { 2088 return this 2089 }(); 2090 try { 2091 o = o || Function("return this")() || (0, 2092 eval)("this") 2093 } catch (e) { 2094 "object" === ("undefined" == typeof window ? "undefined" : n(window)) && (o = window) 2095 } 2096 e.exports = o 2097} 2098, , , , , , , , , function(e, t, i) { 2099 e.exports = i(12) 2100} 2101, function(e, t, i) { 2102 "use strict"; 2103 function o(e) { 2104 return e && e.__esModule ? e : { 2105 "default": e 2106 } 2107 } 2108 var n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 2109 return typeof e 2110 } 2111 : function(e) { 2112 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 2113 } 2114 , s = o(i(1)) 2115 , a = i(0) 2116 , r = o(i(13)) 2117 , l = a.window.jarallax; 2118 if (a.window.jarallax = r["default"], 2119 a.window.jarallax.noConflict = function() { 2120 return a.window.jarallax = l, 2121 this 2122 } 2123 , 2124 void 0 !== a.jQuery) { 2125 var d = function() { 2126 var e = arguments || []; 2127 Array.prototype.unshift.call(e, this); 2128 var t = r["default"].apply(a.window, e); 2129 return "object" !== (void 0 === t ? "undefined" : n(t)) ? t : this 2130 }; 2131 d.constructor = r["default"].constructor; 2132 var c = a.jQuery.fn.jarallax; 2133 a.jQuery.fn.jarallax = d, 2134 a.jQuery.fn.jarallax.noConflict = function() { 2135 return a.jQuery.fn.jarallax = c, 2136 this 2137 } 2138 } 2139 (0, 2140 s["default"])(function() { 2141 (0, 2142 r["default"])(document.querySelectorAll("[data-jarallax]")) 2143 }) 2144} 2145, function(e, t, i) { 2146 "use strict"; 2147 (function(e) { 2148 function o(e) {
2149 return e && e.__esModule ? e : { 2150 "default": e 2151 } 2152 } 2153 function n(e) { 2154 f = p.window.innerWidth || document.documentElement.clientWidth, 2155 h = p.window.innerHeight || document.documentElement.clientHeight, 2156 "object" !== (void 0 === e ? "undefined" : l(e)) || "load" !== e.type && "dom-loaded" !== e.type || (v = !0) 2157 } 2158 function s() { 2159 if (g.length) { 2160 m = void 0 !== p.window.pageYOffset ? p.window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop; 2161 var e = v || !b || b.width !== f || b.height !== h 2162 , t = y || e || !b || b.y !== m; 2163 y = v = !1, 2164 (e || t) && (g.forEach(function(i) { 2165 e && i.onResize(), 2166 t && i.onScroll() 2167 }), 2168 b = { 2169 width: f, 2170 height: h, 2171 y: m 2172 }), 2173 (0, 2174 c["default"])(s) 2175 } 2176 } 2177 Object.defineProperty(t, "__esModule", { 2178 value: !0 2179 }); 2180 var a = function(e, t) { 2181 if (Array.isArray(e)) 2182 return e; 2183 if (Symbol.iterator in Object(e)) 2184 return function(e, t) { 2185 var i = [] 2186 , o = !0 2187 , n = !1 2188 , s = void 0; 2189 try { 2190 for (var a, r = e[Symbol.iterator](); !(o = (a = r.next()).done) && (i.push(a.value), 2191 !t || i.length !== t); o = !0) 2192 ; 2193 } catch (e) { 2194 n = !0, 2195 s = e 2196 } finally { 2197 try { 2198 !o && r["return"] && r["return"]() 2199 } finally { 2200 if (n) 2201 throw s 2202 } 2203 } 2204 return i 2205 }(e, t); 2206 throw new TypeError("Invalid attempt to destructure non-iterable instance") 2207 } 2208 , r = function() { 2209 function e(e, t) { 2210 for (var i = 0; i < t.length; i++) { 2211 var o = t[i]; 2212 o.enumerable = o.enumerable || !1, 2213 o.configurable = !0, 2214 "value"in o && (o.writable = !0), 2215 Object.defineProperty(e, o.key, o) 2216 } 2217 } 2218 return function(t, i, o) { 2219 return i && e(t.prototype, i), 2220 o && e(t, o), 2221 t 2222 } 2223 }() 2224 , l = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 2225 return typeof e 2226 } 2227 : function(e) { 2228 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 2229 } 2230 , d = o(i(1)) 2231 , c = o(i(14)) 2232 , p = i(0) 2233 , u = function() { 2234 for (var e = "transform WebkitTransform MozTransform".split(" "), t = document.createElement("div"), i = 0; i < e.length; i++) 2235 if (t && void 0 !== t.style[e[i]]) 2236 return e[i]; 2237 return !1 2238 }() 2239 , f = void 0 2240 , h = void 0 2241 , m = void 0 2242 , v = !1 2243 , y = !1; 2244 n(), 2245 p.window.addEventListener("resize", n), 2246 p.window.addEventListener("orientationchange", n), 2247 p.window.addEventListener("load", n), 2248 (0, 2249 d["default"])(function() { 2250 n({ 2251 type: "dom-loaded" 2252 }) 2253 }); 2254 var g = [] 2255 , b = !1 2256 , w = !!e.ResizeObserver && new e.ResizeObserver(function(e) { 2257 e && e.length && (0, 2258 c["default"])(function() { 2259 e.forEach(function(e) { 2260 e.target && e.target.jarallax && (v || e.target.jarallax.onResize(), 2261 y = !0) 2262 }) 2263 }) 2264 } 2265 ) 2266 , k = 0 2267 , $ = function() { 2268 function e(t, i) { 2269 !function(e, t) { 2270 if (!(e instanceof t)) 2271 throw new TypeError("Cannot call a class as a function") 2272 }(this, e); 2273 var o = this; 2274 o.instanceID = k++, 2275 o.$item = t, 2276 o.defaults = { 2277 type: "scroll", 2278 speed: .5, 2279 imgSrc: null, 2280 imgElement: ".jarallax-img", 2281 imgSize: "cover", 2282 imgPosition: "50% 50%", 2283 imgRepeat: "no-repeat", 2284 keepImg: !1, 2285 elementInViewport: null, 2286 zIndex: -100, 2287 disableParallax: !0, 2288 disableVideo: !0, 2289 automaticResize: !0, 2290 videoSrc: null, 2291 videoStartTime: 0, 2292 videoEndTime: 0, 2293 videoVolume: 0, 2294 videoPlayOnlyVisible: !0, 2295 onScroll: null, 2296 onInit: null, 2297 onDestroy: null, 2298 onCoverImage: null 2299 }; 2300 var n = o.$item.getAttribute("data-jarallax") 2301 , s = JSON.parse(n || "{}"); 2302 n && console.warn("Detected usage of deprecated data-jarallax JSON options, you should use pure data-attribute options. See info here - https://github.com/nk-o/jarallax/issues/53"); 2303 var r = o.$item.dataset || {} 2304 , d = {}; 2305 if (Object.keys(r).forEach(function(e) { 2306 var t = e.substr(0, 1).toLowerCase() + e.substr(1); 2307 t && void 0 !== o.defaults[t] && (d[t] = r[e]) 2308 }), 2309 o.options = o.extend({}, o.defaults, s, d, i), 2310 o.pureOptions = o.extend({}, o.options),
2311 Object.keys(o.options).forEach(function(e) { 2312 "true" === o.options[e] ? o.options[e] = !0 : "false" === o.options[e] && (o.options[e] = !1) 2313 }), 2314 o.options.speed = Math.min(2, Math.max(-1, parseFloat(o.options.speed))), 2315 (o.options.noAndroid || o.options.noIos) && (console.warn("Detected usage of deprecated noAndroid or noIos options, you should use disableParallax option. See info here - https://github.com/nk-o/jarallax/#disable-on-mobile-devices"), 2316 o.options.disableParallax || (o.options.noIos && o.options.noAndroid ? o.options.disableParallax = /iPad|iPhone|iPod|Android/ : o.options.noIos ? o.options.disableParallax = /iPad|iPhone|iPod/ : o.options.noAndroid && (o.options.disableParallax = /Android/))), 2317 "string" == typeof o.options.disableParallax && (o.options.disableParallax = new RegExp(o.options.disableParallax)), 2318 o.options.disableParallax instanceof RegExp) { 2319 var c = o.options.disableParallax; 2320 o.options.disableParallax = function() { 2321 return c.test(navigator.userAgent) 2322 } 2323 } 2324 if ("function" != typeof o.options.disableParallax && (o.options.disableParallax = function() { 2325 return !1 2326 } 2327 ), 2328 "string" == typeof o.options.disableVideo && (o.options.disableVideo = new RegExp(o.options.disableVideo)), 2329 o.options.disableVideo instanceof RegExp) { 2330 var p = o.options.disableVideo; 2331 o.options.disableVideo = function() { 2332 return p.test(navigator.userAgent) 2333 } 2334 } 2335 "function" != typeof o.options.disableVideo && (o.options.disableVideo = function() { 2336 return !1 2337 } 2338 ); 2339 var u = o.options.elementInViewport; 2340 u && "object" === (void 0 === u ? "undefined" : l(u)) && void 0 !== u.length && (u = a(u, 1)[0]), 2341 u instanceof Element || (u = null), 2342 o.options.elementInViewport = u, 2343 o.image = { 2344 src: o.options.imgSrc || null, 2345 $container: null, 2346 useImgTag: !1, 2347 position: /iPad|iPhone|iPod|Android/.test(navigator.userAgent) ? "absolute" : "fixed" 2348 }, 2349 o.initImg() && o.canInitParallax() && o.init() 2350 } 2351 return r(e, [{ 2352 key: "css", 2353 value: function(e, t) { 2354 return "string" == typeof t ? p.window.getComputedStyle(e).getPropertyValue(t) : (t.transform && u && (t[u] = t.transform), 2355 Object.keys(t).forEach(function(i) { 2356 e.style[i] = t[i] 2357 }), 2358 e) 2359 } 2360 }, { 2361 key: "extend", 2362 value: function(e) { 2363 var t = arguments; 2364 return e = e || {}, 2365 Object.keys(arguments).forEach(function(i) { 2366 t[i] && Object.keys(t[i]).forEach(function(o) { 2367 e[o] = t[i][o] 2368 }) 2369 }), 2370 e 2371 } 2372 }, { 2373 key: "getWindowData", 2374 value: function() { 2375 return { 2376 width: f, 2377 height: h, 2378 y: m 2379 } 2380 } 2381 }, { 2382 key: "initImg", 2383 value: function() { 2384 var e = this 2385 , t = e.options.imgElement; 2386 return t && "string" == typeof t && (t = e.$item.querySelector(t)), 2387 t instanceof Element || (t = null), 2388 t && (e.options.keepImg ? e.image.$item = t.cloneNode(!0) : (e.image.$item = t, 2389 e.image.$itemParent = t.parentNode), 2390 e.image.useImgTag = !0), 2391 !(!e.image.$item && (null === e.image.src && (e.image.src = e.css(e.$item, "background-image").replace(/^url\(['"]?/g, "").replace(/['"]?\)$/g, "")), 2392 !e.image.src || "none" === e.image.src)) 2393 } 2394 }, { 2395 key: "canInitParallax", 2396 value: function() { 2397 return u && !this.options.disableParallax() 2398 } 2399 }, { 2400 key: "init", 2401 value: function() { 2402 var e = this 2403 , t = { 2404 position: "absolute",
2405 top: 0, 2406 left: 0, 2407 width: "100%", 2408 height: "100%", 2409 overflow: "hidden", 2410 pointerEvents: "none" 2411 } 2412 , i = {}; 2413 if (!e.options.keepImg) { 2414 var o = e.$item.getAttribute("style"); 2415 if (o && e.$item.setAttribute("data-jarallax-original-styles", o), 2416 e.image.useImgTag) { 2417 var n = e.image.$item.getAttribute("style"); 2418 n && e.image.$item.setAttribute("data-jarallax-original-styles", n) 2419 } 2420 } 2421 if ("static" === e.css(e.$item, "position") && e.css(e.$item, { 2422 position: "relative" 2423 }), 2424 "auto" === e.css(e.$item, "z-index") && e.css(e.$item, { 2425 zIndex: 0 2426 }), 2427 e.image.$container = document.createElement("div"), 2428 e.css(e.image.$container, t), 2429 e.css(e.image.$container, { 2430 "z-index": e.options.zIndex 2431 }), 2432 e.image.$container.setAttribute("id", "jarallax-container-" + e.instanceID), 2433 e.$item.appendChild(e.image.$container), 2434 e.image.useImgTag ? i = e.extend({ 2435 "object-fit": e.options.imgSize, 2436 "object-position": e.options.imgPosition, 2437 "font-family": "object-fit: " + e.options.imgSize + "; object-position: " + e.options.imgPosition + ";", 2438 "max-width": "none" 2439 }, t, i) : (e.image.$item = document.createElement("div"), 2440 e.image.src && (i = e.extend({ 2441 "background-position": e.options.imgPosition, 2442 "background-size": e.options.imgSize, 2443 "background-repeat": e.options.imgRepeat, 2444 "background-image": 'url("' + e.image.src + '")' 2445 }, t, i))), 2446 "opacity" !== e.options.type && "scale" !== e.options.type && "scale-opacity" !== e.options.type && 1 !== e.options.speed || (e.image.position = "absolute"), 2447 "fixed" === e.image.position) 2448 for (var s = 0, a = e.$item; null !== a && a !== document && 0 === s; ) { 2449 var r = e.css(a, "-webkit-transform") || e.css(a, "-moz-transform") || e.css(a, "transform"); 2450 r && "none" !== r && (s = 1, 2451 e.image.position = "absolute"), 2452 a = a.parentNode 2453 } 2454 i.position = e.image.position, 2455 e.css(e.image.$item, i), 2456 e.image.$container.appendChild(e.image.$item), 2457 e.coverImage(), 2458 e.clipContainer(), 2459 e.onScroll(!0), 2460 e.options.automaticResize && w && w.observe(e.$item), 2461 e.options.onInit && e.options.onInit.call(e), 2462 "none" !== e.css(e.$item, "background-image") && e.css(e.$item, { 2463 "background-image": "none" 2464 }), 2465 e.addToParallaxList() 2466 } 2467 }, { 2468 key: "addToParallaxList", 2469 value: function() { 2470 g.push(this), 2471 1 === g.length && s() 2472 } 2473 }, { 2474 key: "removeFromParallaxList", 2475 value: function() { 2476 var e = this; 2477 g.forEach(function(t, i) { 2478 t.instanceID === e.instanceID && g.splice(i, 1) 2479 }) 2480 } 2481 }, {
2482 key: "destroy", 2483 value: function() { 2484 var e = this; 2485 e.removeFromParallaxList(); 2486 var t = e.$item.getAttribute("data-jarallax-original-styles"); 2487 if (e.$item.removeAttribute("data-jarallax-original-styles"), 2488 t ? e.$item.setAttribute("style", t) : e.$item.removeAttribute("style"), 2489 e.image.useImgTag) { 2490 var i = e.image.$item.getAttribute("data-jarallax-original-styles"); 2491 e.image.$item.removeAttribute("data-jarallax-original-styles"), 2492 i ? e.image.$item.setAttribute("style", t) : e.image.$item.removeAttribute("style"), 2493 e.image.$itemParent && e.image.$itemParent.appendChild(e.image.$item) 2494 } 2495 e.$clipStyles && e.$clipStyles.parentNode.removeChild(e.$clipStyles), 2496 e.image.$container && e.image.$container.parentNode.removeChild(e.image.$container), 2497 e.options.onDestroy && e.options.onDestroy.call(e), 2498 delete e.$item.jarallax 2499 } 2500 }, { 2501 key: "clipContainer", 2502 value: function() { 2503 if ("fixed" === this.image.position) { 2504 var e = this 2505 , t = e.image.$container.getBoundingClientRect() 2506 , i = t.width 2507 , o = t.height; 2508 e.$clipStyles || (e.$clipStyles = document.createElement("style"), 2509 e.$clipStyles.setAttribute("type", "text/css"), 2510 e.$clipStyles.setAttribute("id", "jarallax-clip-" + e.instanceID), 2511 (document.head || document.getElementsByTagName("head")[0]).appendChild(e.$clipStyles)); 2512 var n = "#jarallax-container-" + e.instanceID + " {\n clip: rect(0 " + i + "px " + o + "px 0);\n clip: rect(0, " + i + "px, " + o + "px, 0);\n }"; 2513 e.$clipStyles.styleSheet ? e.$clipStyles.styleSheet.cssText = n : e.$clipStyles.innerHTML = n 2514 } 2515 } 2516 }, { 2517 key: "coverImage", 2518 value: function() { 2519 var e = this 2520 , t = e.image.$container.getBoundingClientRect() 2521 , i = t.height 2522 , o = e.options.speed 2523 , n = "scroll" === e.options.type || "scroll-opacity" === e.options.type 2524 , s = 0 2525 , a = i 2526 , r = 0; 2527 return n && (s = o < 0 ? o * Math.max(i, h) : o * (i + h), 2528 1 < o ? a = Math.abs(s - h) : o < 0 ? a = s / o + Math.abs(s) : a += Math.abs(h - i) * (1 - o), 2529 s /= 2), 2530 e.parallaxScrollDistance = s, 2531 r = n ? (h - a) / 2 : (i - a) / 2, 2532 e.css(e.image.$item, { 2533 height: a + "px", 2534 marginTop: r + "px", 2535 left: "fixed" === e.image.position ? t.left + "px" : "0", 2536 width: t.width + "px" 2537 }), 2538 e.options.onCoverImage && e.options.onCoverImage.call(e), 2539 { 2540 image: { 2541 height: a, 2542 marginTop: r 2543 }, 2544 container: t 2545 } 2546 } 2547 }, { 2548 key: "isVisible", 2549 value: function() { 2550 return this.isElementInViewport || !1 2551 } 2552 }, { 2553 key: "onScroll", 2554 value: function(e) { 2555 var t = this 2556 , i = t.$item.getBoundingClientRect() 2557 , o = i.top 2558 , n = i.height 2559 , s = {} 2560 , a = i; 2561 if (t.options.elementInViewport && (a = t.options.elementInViewport.getBoundingClientRect()), 2562 t.isElementInViewport = 0 <= a.bottom && 0 <= a.right && a.top <= h && a.left <= f, 2563 e || t.isElementInViewport) { 2564 var r = Math.max(0, o) 2565 , l = Math.max(0, n + o) 2566 , d = Math.max(0, -o) 2567 , c = Math.max(0, o + n - h) 2568 , p = Math.max(0, n - (o + n - h)) 2569 , u = Math.max(0, -o + h - n) 2570 , m = 1 - 2 * (h - o) / (h + n) 2571 , v = 1; 2572 if (n < h ? v = 1 - (d || c) / n : l <= h ? v = l / h : p <= h && (v = p / h), 2573 "opacity" !== t.options.type && "scale-opacity" !== t.options.type && "scroll-opacity" !== t.options.type || (s.transform = "translate3d(0,
25730,0)", 2574 s.opacity = v), 2575 "scale" === t.options.type || "scale-opacity" === t.options.type) { 2576 var y = 1; 2577 t.options.speed < 0 ? y -= t.options.speed * v : y += t.options.speed * (1 - v), 2578 s.transform = "scale(" + y + ") translate3d(0,0,0)" 2579 } 2580 if ("scroll" === t.options.type || "scroll-opacity" === t.options.type) { 2581 var g = t.parallaxScrollDistance * m; 2582 "absolute" === t.image.position && (g -= o), 2583 s.transform = "translate3d(0," + g + "px,0)" 2584 } 2585 t.css(t.image.$item, s), 2586 t.options.onScroll && t.options.onScroll.call(t, { 2587 section: i, 2588 beforeTop: r, 2589 beforeTopEnd: l, 2590 afterTop: d, 2591 beforeBottom: c, 2592 beforeBottomEnd: p, 2593 afterBottom: u, 2594 visiblePercent: v, 2595 fromViewportCenter: m 2596 }) 2597 } 2598 } 2599 }, { 2600 key: "onResize", 2601 value: function() { 2602 this.coverImage(), 2603 this.clipContainer() 2604 } 2605 }]), 2606 e 2607 }() 2608 , S = function(e) { 2609 ("object" === ("undefined" == typeof HTMLElement ? "undefined" : l(HTMLElement)) ? e instanceof HTMLElement : e && "object" === (void 0 === e ? "undefined" : l(e)) && null !== e && 1 === e.nodeType && "string" == typeof e.nodeName) && (e = [e]); 2610 for (var t = arguments[1], i = Array.prototype.slice.call(arguments, 2), o = e.length, n = 0, s = void 0; n < o; n++) 2611 if ("object" === (void 0 === t ? "undefined" : l(t)) || void 0 === t ? e[n].jarallax || (e[n].jarallax = new $(e[n],t)) : e[n].jarallax && (s = e[n].jarallax[t].apply(e[n].jarallax, i)), 2612 void 0 !== s) 2613 return s; 2614 return e 2615 }; 2616 S.constructor = $, 2617 t["default"] = S 2618 } 2619 ).call(t, i(2)) 2620} 2621, function(e, t, i) { 2622 "use strict"; 2623 var o = i(0) 2624 , n = o.requestAnimationFrame || o.webkitRequestAnimationFrame || o.mozRequestAnimationFrame || function(e) { 2625 var t = +new Date 2626 , i = Math.max(0, 16 - (t - s)) 2627 , o = setTimeout(e, i); 2628 return s = t, 2629 o 2630 } 2631 , s = +new Date 2632 , a = o.cancelAnimationFrame || o.webkitCancelAnimationFrame || o.mozCancelAnimationFrame || clearTimeout; 2633 Function.prototype.bind && (n = n.bind(o), 2634 a = a.bind(o)), 2635 (e.exports = n).cancel = a 2636} 2637]), 2638/*! 2639 * Name : Video Background Extension for Jarallax 2640 * Version : 1.0.1 2641 * Author : nK <https://nkdev.info> 2642 * GitHub : https://github.com/nk-o/jarallax 2643 */ 2644!function(e) { 2645 function t(o) { 2646 if (i[o]) 2647 return i[o].exports; 2648 var n = i[o] = { 2649 i: o, 2650 l: !1, 2651 exports: {} 2652 }; 2653 return e[o].call(n.exports, n, n.exports, t), 2654 n.l = !0, 2655 n.exports 2656 } 2657 var i = {}; 2658 t.m = e, 2659 t.c = i, 2660 t.d = function(e, i, o) { 2661 t.o(e, i) || Object.defineProperty(e, i, { 2662 configurable: !1, 2663 enumerable: !0, 2664 get: o 2665 }) 2666 } 2667 , 2668 t.n = function(e) { 2669 var i = e && e.__esModule ? function() { 2670 return e["default"] 2671 } 2672 : function() { 2673 return e 2674 } 2675 ; 2676 return t.d(i, "a", i), 2677 i 2678 } 2679 , 2680 t.o = function(e, t) { 2681 return Object.prototype.hasOwnProperty.call(e, t) 2682 } 2683 , 2684 t.p = "", 2685 t(t.s = 7) 2686}([function(e, t, i) { 2687 "use strict"; 2688 (function(t) { 2689 var i; 2690 i = "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}, 2691 e.exports = i 2692 } 2693 ).call(t, i(2)) 2694} 2695, function(e, t, i) { 2696 "use strict"; 2697 e.exports = function(e) { 2698 "complete" === document.readyState || "interactive" === document.readyState ? e.call() : document.attachEvent ? document.attachEvent("onreadystatechange", function() { 2699 "interactive" === document.readyState && e.call() 2700 }) : document.addEventListener && document.addEventListener("DOMContentLoaded", e) 2701 } 2702} 2703, function(e, t, i) { 2704 "use strict"; 2705 var o, n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 2706 return typeof e 2707 } 2708 : function(e) { 2709 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 2710 } 2711 ; 2712 o = function() { 2713 return this 2714 }(); 2715 try { 2716 o = o || Function("return this")() || (0, 2717 eval)("this") 2718 } catch (e) { 2719 "object" === ("undefined" == typeof window ? "undefined" : n(window)) && (o = window) 2720 } 2721 e.exports = o 2722} 2723, function(e, t, i) { 2724 "use strict"; 2725 e.exports = i(9) 2726} 2727, , , , function(e, t, i) { 2728 e.exports = i(8) 2729} 2730, function(e, t, i) { 2731 "use strict"; 2732 function o(e) {
2733 return e && e.__esModule ? e : { 2734 "default": e 2735 } 2736 } 2737 var n = o(i(3)) 2738 , s = o(i(0)) 2739 , a = o(i(1)) 2740 , r = o(i(10)); 2741 s["default"].VideoWorker = s["default"].VideoWorker || n["default"], 2742 (0, 2743 r["default"])(), 2744 (0, 2745 a["default"])(function() { 2746 "undefined" != typeof jarallax && jarallax(document.querySelectorAll("[data-jarallax-video]")) 2747 }) 2748} 2749, function(e, t, i) { 2750 "use strict"; 2751 function o() { 2752 this._done = [], 2753 this._fail = [] 2754 } 2755 Object.defineProperty(t, "__esModule", { 2756 value: !0 2757 }); 2758 var n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 2759 return typeof e 2760 } 2761 : function(e) { 2762 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 2763 } 2764 , s = function() { 2765 function e(e, t) { 2766 for (var i = 0; i < t.length; i++) { 2767 var o = t[i]; 2768 o.enumerable = o.enumerable || !1, 2769 o.configurable = !0, 2770 "value"in o && (o.writable = !0), 2771 Object.defineProperty(e, o.key, o) 2772 } 2773 } 2774 return function(t, i, o) { 2775 return i && e(t.prototype, i), 2776 o && e(t, o), 2777 t 2778 } 2779 }(); 2780 o.prototype = { 2781 execute: function(e, t) { 2782 var i = e.length; 2783 for (t = Array.prototype.slice.call(t); i--; ) 2784 e[i].apply(null, t) 2785 }, 2786 resolve: function() { 2787 this.execute(this._done, arguments) 2788 }, 2789 reject: function() { 2790 this.execute(this._fail, arguments) 2791 }, 2792 done: function(e) { 2793 this._done.push(e) 2794 }, 2795 fail: function(e) { 2796 this._fail.push(e) 2797 } 2798 }; 2799 var a = 0 2800 , r = 0 2801 , l = 0 2802 , d = 0 2803 , c = 0 2804 , p = new o 2805 , u = new o 2806 , f = function() { 2807 function e(t, i) { 2808 !function(e, t) { 2809 if (!(e instanceof t)) 2810 throw new TypeError("Cannot call a class as a function") 2811 }(this, e); 2812 var o = this; 2813 o.url = t, 2814 o.options_default = { 2815 autoplay: !1, 2816 loop: !1, 2817 mute: !1, 2818 volume: 100, 2819 showContols: !0, 2820 startTime: 0, 2821 endTime: 0 2822 }, 2823 o.options = o.extend({}, o.options_default, i), 2824 o.videoID = o.parseURL(t), 2825 o.videoID && (o.ID = a++, 2826 o.loadAPI(), 2827 o.init()) 2828 } 2829 return s(e, [{ 2830 key: "extend", 2831 value: function(e) { 2832 var t = arguments; 2833 return e = e || {}, 2834 Object.keys(arguments).forEach(function(i) { 2835 t[i] && Object.keys(t[i]).forEach(function(o) { 2836 e[o] = t[i][o] 2837 }) 2838 }), 2839 e 2840 } 2841 }, { 2842 key: "parseURL", 2843 value: function(e) { 2844 var t, i, o, n, s, a = !(!(t = e.match(/.*(?:youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=)([^#\&\?]*).*/)) || 11 !== t[1].length) && t[1], r = !(!(i = e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^\/]*)\/videos\/|album\/(\d+)\/video\/|video\/|)(\d+)(?:$|\/|\?)/)) || !i[3]) && i[3], l = (o = e.split(/,(?=mp4\:|webm\:|ogv\:|ogg\:)/), 2845 n = {}, 2846 s = 0, 2847 o.forEach(function(e) { 2848 var t = e.match(/^(mp4|webm|ogv|ogg)\:(.*)/); 2849 t && t[1] && t[2] && (n["ogv" === t[1] ? "ogg" : t[1]] = t[2], 2850 s = 1) 2851 }), 2852 !!s && n); 2853 return a ? (this.type = "youtube",
2854 a) : r ? (this.type = "vimeo", 2855 r) : !!l && (this.type = "local", 2856 l) 2857 } 2858 }, { 2859 key: "isValid", 2860 value: function() { 2861 return !!this.videoID 2862 } 2863 }, { 2864 key: "on", 2865 value: function(e, t) { 2866 this.userEventsList = this.userEventsList || [], 2867 (this.userEventsList[e] || (this.userEventsList[e] = [])).push(t) 2868 } 2869 }, { 2870 key: "off", 2871 value: function(e, t) { 2872 var i = this; 2873 this.userEventsList && this.userEventsList[e] && (t ? this.userEventsList[e].forEach(function(o, n) { 2874 o === t && (i.userEventsList[e][n] = !1) 2875 }) : delete this.userEventsList[e]) 2876 } 2877 }, { 2878 key: "fire", 2879 value: function(e) { 2880 var t = this 2881 , i = [].slice.call(arguments, 1); 2882 this.userEventsList && void 0 !== this.userEventsList[e] && this.userEventsList[e].forEach(function(e) { 2883 e && e.apply(t, i) 2884 }) 2885 } 2886 }, { 2887 key: "play", 2888 value: function(e) { 2889 var t = this; 2890 t.player && ("youtube" === t.type && t.player.playVideo && (void 0 !== e && t.player.seekTo(e || 0), 2891 YT.PlayerState.PLAYING !== t.player.getPlayerState() && t.player.playVideo()), 2892 "vimeo" === t.type && (void 0 !== e && t.player.setCurrentTime(e), 2893 t.player.getPaused().then(function(e) { 2894 e && t.player.play() 2895 })), 2896 "local" === t.type && (void 0 !== e && (t.player.currentTime = e), 2897 t.player.paused && t.player.play())) 2898 } 2899 }, { 2900 key: "pause", 2901 value: function() { 2902 var e = this; 2903 e.player && ("youtube" === e.type && e.player.pauseVideo && YT.PlayerState.PLAYING === e.player.getPlayerState() && e.player.pauseVideo(), 2904 "vimeo" === e.type && e.player.getPaused().then(function(t) { 2905 t || e.player.pause() 2906 }), 2907 "local" === e.type && (e.player.paused || e.player.pause())) 2908 } 2909 }, { 2910 key: "mute", 2911 value: function() { 2912 var e = this; 2913 e.player && ("youtube" === e.type && e.player.mute && e.player.mute(), 2914 "vimeo" === e.type && e.player.setVolume && e.player.setVolume(0), 2915 "local" === e.type && (e.$video.muted = !0)) 2916 } 2917 }, { 2918 key: "unmute", 2919 value: function() { 2920 var e = this; 2921 e.player && ("youtube" === e.type && e.player.mute && e.player.unMute(), 2922 "vimeo" === e.type && e.player.setVolume && e.player.setVolume(e.options.volume), 2923 "local" === e.type && (e.$video.muted = !1)) 2924 } 2925 }, { 2926 key: "setVolume", 2927 value: function() { 2928 var e = 0 < arguments.length && void 0 !== arguments[0] && arguments[0] 2929 , t = this; 2930 t.player && e && ("youtube" === t.type && t.player.setVolume && t.player.setVolume(e), 2931 "vimeo" === t.type && t.player.setVolume && t.player.setVolume(e), 2932 "local" === t.type && (t.$video.volume = e / 100)) 2933 } 2934 }, { 2935 key: "getVolume", 2936 value: function(e) { 2937 var t = this; 2938 t.player ? ("youtube" === t.type && t.player.getVolume && e(t.player.getVolume()), 2939 "vimeo" === t.type && t.player.getVolume && t.player.getVolume().then(function(t) { 2940 e(t) 2941 }), 2942 "local" === t.type && e(100 * t.$video.volume)) : e(!1) 2943 } 2944 }, { 2945 key: "getMuted", 2946 value: function(e) { 2947 var t = this; 2948 t.player ? ("youtube" === t.type && t.player.isMuted && e(t.player.isMuted()), 2949 "vimeo" === t.type && t.player.getVolume && t.player.getVolume().then(function(t) { 2950 e(!!t) 2951 }), 2952 "local" === t.type && e(t.$video.muted)) : e(null) 2953 } 2954 }, { 2955 key: "getImageURL", 2956 value: function(e) { 2957 var t = this; 2958 if (t.videoImage) 2959 e(t.videoImage); 2960 else { 2961 if ("youtube" === t.type) { 2962 var i = ["maxresdefault", "sddefault", "hqdefault", "0"] 2963 , o = 0 2964 , n = new Image; 2965 n.onload = function() {
2966 120 !== (this.naturalWidth || this.width) || o === i.length - 1 ? (t.videoImage = "https://img.youtube.com/vi/" + t.videoID + "/" + i[o] + ".jpg", 2967 e(t.videoImage)) : (o++, 2968 this.src = "https://img.youtube.com/vi/" + t.videoID + "/" + i[o] + ".jpg") 2969 } 2970 , 2971 n.src = "https://img.youtube.com/vi/" + t.videoID + "/" + i[o] + ".jpg" 2972 } 2973 if ("vimeo" === t.type) { 2974 var s = new XMLHttpRequest; 2975 s.open("GET", "https://vimeo.com/api/v2/video/" + t.videoID + ".json", !0), 2976 s.onreadystatechange = function() { 2977 if (4 === this.readyState && 200 <= this.status && this.status < 400) { 2978 var i = JSON.parse(this.responseText); 2979 t.videoImage = i[0].thumbnail_large, 2980 e(t.videoImage) 2981 } 2982 } 2983 , 2984 s.send(), 2985 s = null 2986 } 2987 } 2988 } 2989 }, { 2990 key: "getIframe", 2991 value: function(e) { 2992 this.getVideo(e) 2993 } 2994 }, { 2995 key: "getVideo", 2996 value: function(e) { 2997 var t = this; 2998 t.$video ? e(t.$video) : t.onAPIready(function() { 2999 var i = void 0; 3000 if (t.$video || ((i = document.createElement("div")).style.display = "none"), 3001 "youtube" === t.type) { 3002 t.playerOptions = {}, 3003 t.playerOptions.videoId = t.videoID, 3004 t.playerOptions.playerVars = { 3005 autohide: 1, 3006 rel: 0, 3007 autoplay: 0, 3008 playsinline: 1 3009 }, 3010 t.options.showContols || (t.playerOptions.playerVars.iv_load_policy = 3, 3011 t.playerOptions.playerVars.modestbranding = 1, 3012 t.playerOptions.playerVars.controls = 0, 3013 t.playerOptions.playerVars.showinfo = 0, 3014 t.playerOptions.playerVars.disablekb = 1); 3015 var o = void 0 3016 , n = void 0; 3017 t.playerOptions.events = { 3018 onReady: function(e) { 3019 t.options.mute ? e.target.mute() : t.options.volume && e.target.setVolume(t.options.volume), 3020 t.options.autoplay && t.play(t.options.startTime), 3021 t.fire("ready", e), 3022 setInterval(function() { 3023 t.getVolume(function(i) { 3024 t.options.volume !== i && (t.options.volume = i, 3025 t.fire("volumechange", e)) 3026 }) 3027 }, 150) 3028 }, 3029 onStateChange: function(e) { 3030 t.options.loop && e.data === YT.PlayerState.ENDED && t.play(t.options.startTime), 3031 o || e.data !== YT.PlayerState.PLAYING || (o = 1, 3032 t.fire("started", e)), 3033 e.data === YT.PlayerState.PLAYING && t.fire("play", e), 3034 e.data === YT.PlayerState.PAUSED && t.fire("pause", e), 3035 e.data === YT.PlayerState.ENDED && t.fire("ended", e), 3036 e.data === YT.PlayerState.PLAYING ? n = setInterval(function() { 3037 t.fire("timeupdate", e), 3038 t.options.endTime && t.player.getCurrentTime() >= t.options.endTime && (t.options.loop ? t.play(t.options.startTime) : t.pause()) 3039 }, 150) : clearInterval(n) 3040 } 3041 }; 3042 var s = !t.$video; 3043 if (s) { 3044 var a = document.createElement("div"); 3045 a.setAttribute("id", t.playerID), 3046 i.appendChild(a), 3047 document.body.appendChild(i) 3048 } 3049 t.player = t.player || new window.YT.Player(t.playerID,t.playerOptions), 3050 s && (t.$video = document.getElementById(t.playerID), 3051 t.videoWidth = parseInt(t.$video.getAttribute("width"), 10) || 1280, 3052 t.videoHeight = parseInt(t.$video.getAttribute("height"), 10) || 720) 3053 } 3054 if ("vimeo" === t.type) { 3055 t.playerOptions = "", 3056 t.playerOptions += "player_id=" + t.playerID, 3057 t.playerOptions += "&autopause=0", 3058 t.playerOptions += "&transparent=0", 3059 t.options.showContols || (t.playerOptions += "&badge=0&byline=0&portrait=0&title=0"), 3060 t.playerOptions += "&autoplay=" + (t.options.autoplay ? "1" : "0"), 3061 t.playerOptions += "&loop=" + (t.options.loop ? 1 : 0), 3062 t.$video || (t.$video = document.createElement("iframe"), 3063 t.$video.setAttribute("id", t.playerID), 3064 t.$video.setAttribute("src", "https://player.vimeo.com/video/" + t.videoID + "?" + t.playerOptions), 3065 t.$video.setAttribute("frameborder", "0"), 3066 i.appendChild(t.$video), 3067 document.body.appendChild(i)), 3068 t.player = t.player || new Vimeo.Player(t.$video), 3069 t.player.getVideoWidth().then(function(e) { 3070 t.videoWidth = e || 1280 3071 }), 3072 t.player.getVideoHeight().then(function(e) { 3073 t.videoHeight = e || 720 3074 }), 3075 t.options.startTime && t.options.autoplay && t.player.setCurrentTime(t.options.startTime), 3076 t.options.mute ? t.player.setVolume(0) : t.options.volume && t.player.setVolume(t.options.volume); 3077 var r = void 0; 3078 t.player.on("timeupdate", function(e) { 3079 r || (t.fire("started", e), 3080 r = 1), 3081 t.fire("timeupdate", e), 3082 t.options.endTime && t.options.endTime && e.seconds >= t.options.endTime && (t.options.loop ? t.play(t.options.startTime) : t.pause()) 3083 }), 3084 t.player.on("play", function(e) { 3085 t.fire("play", e), 3086 t.options.startTime && 0 === e.seconds && t.play(t.options.startTime) 3087 }), 3088 t.player.on("pause", function(e) { 3089 t.fire("pause", e) 3090 }), 3091 t.player.on("ended", function(e) { 3092 t.fire("ended", e) 3093 }), 3094 t.player.on("loaded", function(e) { 3095 t.fire("ready", e) 3096 }), 3097 t.player.on("volumechange", function(e) { 3098 t.fire("volumechange", e) 3099 }) 3100 } 3101 if ("local" === t.type) { 3102 t.$video || (t.$video = document.createElement("video"), 3103 t.options.mute ? t.$video.muted = !0 : t.$video.volume && (t.$video.volume = t.options.volume / 100), 3104 t.options.loop && (t.$video.loop = !0), 3105 t.$video.setAttribute("playsinline", ""), 3106 t.$video.setAttribute("webkit-playsinline", ""), 3107 t.$video.setAttribute("id", t.playerID), 3108 i.appendChild(t.$video), 3109 document.body.appendChild(i),
3110 Object.keys(t.videoID).forEach(function(e) { 3111 var i, o, n, s; 3112 i = t.$video, 3113 o = t.videoID[e], 3114 n = "video/" + e, 3115 (s = document.createElement("source")).src = o, 3116 s.type = n, 3117 i.appendChild(s) 3118 })), 3119 t.player = t.player || t.$video; 3120 var l = void 0; 3121 t.player.addEventListener("playing", function(e) { 3122 l || t.fire("started", e), 3123 l = 1 3124 }), 3125 t.player.addEventListener("timeupdate", function(e) { 3126 t.fire("timeupdate", e), 3127 t.options.endTime && t.options.endTime && this.currentTime >= t.options.endTime && (t.options.loop ? t.play(t.options.startTime) : t.pause()) 3128 }), 3129 t.player.addEventListener("play", function(e) { 3130 t.fire("play", e) 3131 }), 3132 t.player.addEventListener("pause", function(e) { 3133 t.fire("pause", e) 3134 }), 3135 t.player.addEventListener("ended", function(e) { 3136 t.fire("ended", e) 3137 }), 3138 t.player.addEventListener("loadedmetadata", function() { 3139 t.videoWidth = this.videoWidth || 1280, 3140 t.videoHeight = this.videoHeight || 720, 3141 t.fire("ready"), 3142 t.options.autoplay && t.play(t.options.startTime) 3143 }), 3144 t.player.addEventListener("volumechange", function(e) { 3145 t.getVolume(function(e) { 3146 t.options.volume = e 3147 }), 3148 t.fire("volumechange", e) 3149 }) 3150 } 3151 e(t.$video) 3152 }) 3153 } 3154 }, { 3155 key: "init", 3156 value: function() { 3157 this.playerID = "VideoWorker-" + this.ID 3158 } 3159 }, { 3160 key: "loadAPI", 3161 value: function() { 3162 if (!r || !l) { 3163 var e = ""; 3164 if ("youtube" !== this.type || r || (r = 1, 3165 e = "https://www.youtube.com/iframe_api"), 3166 "vimeo" !== this.type || l || (l = 1, 3167 e = "https://player.vimeo.com/api/player.js"), 3168 e) { 3169 var t = document.createElement("script") 3170 , i = document.getElementsByTagName("head")[0]; 3171 t.src = e, 3172 i.appendChild(t), 3173 t = i = null 3174 } 3175 } 3176 } 3177 }, { 3178 key: "onAPIready", 3179 value: function(e) { 3180 if ("youtube" === this.type && ("undefined" != typeof YT && 0 !== YT.loaded || d ? "object" === ("undefined" == typeof YT ? "undefined" : n(YT)) && 1 === YT.loaded ? e() : p.done(function() { 3181 e() 3182 }) : (d = 1, 3183 window.onYouTubeIframeAPIReady = function() { 3184 window.onYouTubeIframeAPIReady = null, 3185 p.resolve("done"), 3186 e() 3187 } 3188 )), 3189 "vimeo" === this.type) 3190 if ("undefined" != typeof Vimeo || c) 3191 "undefined" != typeof Vimeo ? e() : u.done(function() { 3192 e() 3193 }); 3194 else { 3195 c = 1; 3196 var t = setInterval(function() { 3197 "undefined" != typeof Vimeo && (clearInterval(t), 3198 u.resolve("done"), 3199 e()) 3200 }, 20) 3201 } 3202 "local" === this.type && e() 3203 } 3204 }]), 3205 e 3206 }(); 3207 t["default"] = f 3208} 3209, function(e, t, i) { 3210 "use strict"; 3211 function o(e) {
3212 return e && e.__esModule ? e : { 3213 "default": e 3214 } 3215 } 3216 Object.defineProperty(t, "__esModule", { 3217 value: !0 3218 }), 3219 t["default"] = function() { 3220 var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : s["default"].jarallax; 3221 if (void 0 !== e) { 3222 var t = e.constructor 3223 , i = t.prototype.init; 3224 t.prototype.init = function() { 3225 var e = this; 3226 i.apply(e), 3227 e.video && !e.options.disableVideo() && e.video.getVideo(function(t) { 3228 var i = t.parentNode; 3229 e.css(t, { 3230 position: e.image.position, 3231 top: "0px", 3232 left: "0px", 3233 right: "0px", 3234 bottom: "0px", 3235 width: "100%", 3236 height: "100%", 3237 maxWidth: "none", 3238 maxHeight: "none", 3239 margin: 0, 3240 zIndex: -1 3241 }), 3242 e.$video = t, 3243 e.image.$container.appendChild(t), 3244 i.parentNode.removeChild(i) 3245 }) 3246 } 3247 ; 3248 var o = t.prototype.coverImage; 3249 t.prototype.coverImage = function() { 3250 var e = this 3251 , t = o.apply(e) 3252 , i = !!e.image.$item && e.image.$item.nodeName; 3253 if (t && e.video && i && ("IFRAME" === i || "VIDEO" === i)) { 3254 var n = t.image.height 3255 , s = n * e.image.width / e.image.height 3256 , a = (t.container.width - s) / 2 3257 , r = t.image.marginTop; 3258 t.container.width > s && (s = t.container.width, 3259 n = s * e.image.height / e.image.width, 3260 a = 0, 3261 r += (t.image.height - n) / 2), 3262 "IFRAME" === i && (n += 400, 3263 r -= 200), 3264 e.css(e.$video, { 3265 width: s + "px", 3266 marginLeft: a + "px", 3267 height: n + "px", 3268 marginTop: r + "px" 3269 }) 3270 } 3271 return t 3272 } 3273 ; 3274 var a = t.prototype.initImg; 3275 t.prototype.initImg = function() { 3276 var e = this 3277 , t = a.apply(e); 3278 return e.options.videoSrc || (e.options.videoSrc = e.$item.getAttribute("data-jarallax-video") || null), 3279 e.options.videoSrc ? (e.defaultInitImgResult = t, 3280 !0) : t 3281 } 3282 ; 3283 var r = t.prototype.canInitParallax; 3284 t.prototype.canInitParallax = function() { 3285 var e = this 3286 , t = r.apply(e); 3287 if (!e.options.videoSrc) 3288 return t; 3289 var i = new n["default"](e.options.videoSrc,{ 3290 autoplay: !0, 3291 loop: !0, 3292 showContols: !1, 3293 startTime: e.options.videoStartTime || 0, 3294 endTime: e.options.videoEndTime || 0, 3295 mute: e.options.videoVolume ? 0 : 1, 3296 volume: e.options.videoVolume || 0 3297 }); 3298 if (i.isValid()) 3299 if (t) { 3300 if (i.on("ready", function() { 3301 if (e.options.videoPlayOnlyVisible) { 3302 var t = e.onScroll; 3303 e.onScroll = function() { 3304 t.apply(e), 3305 e.isVisible() ? i.play() : i.pause() 3306 } 3307 } else 3308 i.play() 3309 }), 3310 i.on("started", function() { 3311 e.image.$default_item = e.image.$item, 3312 e.image.$item = e.$video, 3313 e.image.width = e.video.videoWidth || 1280, 3314 e.image.height = e.video.videoHeight || 720, 3315 e.options.imgWidth = e.image.width, 3316 e.options.imgHeight = e.image.height, 3317 e.coverImage(), 3318 e.clipContainer(), 3319 e.onScroll(), 3320 e.image.$default_item && (e.image.$default_item.style.display = "none") 3321 }), 3322 e.video = i, 3323 !e.defaultInitImgResult) 3324 return "local" !== i.type ? (i.getImageURL(function(t) { 3325 e.image.src = t,
3326 e.init() 3327 }), 3328 !1) : (e.image.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7", 3329 !0) 3330 } else 3331 e.defaultInitImgResult || i.getImageURL(function(t) { 3332 var i = e.$item.getAttribute("style"); 3333 i && e.$item.setAttribute("data-jarallax-original-styles", i), 3334 e.css(e.$item, { 3335 "background-image": 'url("' + t + '")', 3336 "background-position": "center", 3337 "background-size": "cover" 3338 }) 3339 }); 3340 return t 3341 } 3342 ; 3343 var l = t.prototype.destroy; 3344 t.prototype.destroy = function() { 3345 var e = this; 3346 e.image.$default_item && (e.image.$item = e.image.$default_item, 3347 delete e.image.$default_item), 3348 l.apply(e) 3349 } 3350 } 3351 } 3352 ; 3353 var n = o(i(3)) 3354 , s = o(i(0)) 3355} 3356]), 3357/*! 3358 * Name : Elements Extension for Jarallax 3359 * Version : 1.0.0 3360 * Author : nK <https://nkdev.info> 3361 * GitHub : https://github.com/nk-o/jarallax 3362 */ 3363!function(e) { 3364 function t(o) { 3365 if (i[o]) 3366 return i[o].exports; 3367 var n = i[o] = { 3368 i: o, 3369 l: !1, 3370 exports: {} 3371 }; 3372 return e[o].call(n.exports, n, n.exports, t), 3373 n.l = !0, 3374 n.exports 3375 } 3376 var i = {}; 3377 t.m = e, 3378 t.c = i, 3379 t.d = function(e, i, o) { 3380 t.o(e, i) || Object.defineProperty(e, i, { 3381 configurable: !1, 3382 enumerable: !0, 3383 get: o 3384 }) 3385 } 3386 , 3387 t.n = function(e) { 3388 var i = e && e.__esModule ? function() { 3389 return e["default"] 3390 } 3391 : function() { 3392 return e 3393 } 3394 ; 3395 return t.d(i, "a", i), 3396 i 3397 } 3398 , 3399 t.o = function(e, t) { 3400 return Object.prototype.hasOwnProperty.call(e, t) 3401 } 3402 , 3403 t.p = "", 3404 t(t.s = 4) 3405}([function(e, t, i) { 3406 "use strict"; 3407 (function(t) { 3408 var i; 3409 i = "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}, 3410 e.exports = i 3411 } 3412 ).call(t, i(2)) 3413} 3414, function(e, t, i) { 3415 "use strict"; 3416 e.exports = function(e) { 3417 "complete" === document.readyState || "interactive" === document.readyState ? e.call() : document.attachEvent ? document.attachEvent("onreadystatechange", function() { 3418 "interactive" === document.readyState && e.call() 3419 }) : document.addEventListener && document.addEventListener("DOMContentLoaded", e) 3420 } 3421} 3422, function(e, t, i) { 3423 "use strict"; 3424 var o, n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { 3425 return typeof e 3426 } 3427 : function(e) { 3428 return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e 3429 } 3430 ; 3431 o = function() { 3432 return this 3433 }(); 3434 try { 3435 o = o || Function("return this")() || (0, 3436 eval)("this") 3437 } catch (e) { 3438 "object" === ("undefined" == typeof window ? "undefined" : n(window)) && (o = window) 3439 } 3440 e.exports = o 3441} 3442, , function(e, t, i) { 3443 e.exports = i(5) 3444} 3445, function(e, t, i) { 3446 "use strict"; 3447 function o(e) { 3448 return e && e.__esModule ? e : { 3449 "default": e 3450 } 3451 } 3452 var n = o(i(1)); 3453 (0, 3454 o(i(6))["default"])(), 3455 (0, 3456 n["default"])(function() { 3457 "undefined" != typeof jarallax && jarallax(document.querySelectorAll("[data-jarallax-element]")) 3458 }) 3459} 3460, function(e, t, i) { 3461 "use strict"; 3462 Object.defineProperty(t, "__esModule", { 3463 value: !0 3464 }), 3465 t["default"] = function() { 3466 var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : s["default"].jarallax; 3467 if (void 0 !== e) { 3468 var t = e.constructor; 3469 ["initImg", "canInitParallax", "init", "destroy", "clipContainer", "coverImage", "isVisible", "onScroll", "onResize"].forEach(function(e) { 3470 var i = t.prototype[e]; 3471 t.prototype[e] = function() { 3472 var t = this 3473 , o = arguments || []; 3474 if ("initImg" === e && null !== t.$item.getAttribute("data-jarallax-element") && (t.options.type = "element", 3475 t.pureOptions.speed = t.$item.getAttribute("data-jarallax-element") || t.pureOptions.speed), 3476 "element" !== t.options.type) 3477 return i.apply(t, o); 3478 switch (t.pureOptions.threshold = t.$item.getAttribute("data-threshold") || "", 3479 e) { 3480 case "init": 3481 var n = t.pureOptions.speed.split(" "); 3482 t.options.speed = t.pureOptions.speed || 0, 3483 t.options.speedY = n[0] ? parseFloat(n[0]) : 0, 3484 t.options.speedX = n[1] ? parseFloat(n[1]) : 0; 3485 var s = t.pureOptions.threshold.split(" "); 3486 t.options.thresholdY = s[0] ? parseFloat(s[0]) : null, 3487 t.options.thresholdX = s[1] ? parseFloat(s[1]) : null, 3488 t.onResize(), 3489 t.onScroll(), 3490 t.addToParallaxList(); 3491 break; 3492 case "onResize": 3493 var a = t.css(t.$item, "transform"); 3494 t.css(t.$item, { 3495 transform: "" 3496 }); 3497 var r = t.$item.getBoundingClientRect(); 3498 t.itemData = { 3499 width: r.width, 3500 height: r.height, 3501 y: r.top + t.getWindowData().y, 3502 x: r.left 3503 }, 3504 t.css(t.$item, { 3505 transform: a 3506 }); 3507 break; 3508 case "onScroll": 3509 var l = t.getWindowData() 3510 , d = (l.y + l.height / 2 - t.itemData.y - t.itemData.height / 2) / (l.height / 2) 3511 , c = d * t.options.speedY 3512 , p = d * t.options.speedX 3513 , u = c 3514 , f = p; 3515 null !== t.options.thresholdY && c > t.options.thresholdY && (u = 0), 3516 null !== t.options.thresholdX && p > t.options.thresholdX && (f = 0), 3517 t.css(t.$item, { 3518 transform: "translate3d(" + f + "px," + u + "px,0
3518)" 3519 }); 3520 break; 3521 case "initImg": 3522 case "isVisible": 3523 case "clipContainer": 3524 case "coverImage": 3525 return !0 3526 } 3527 return i.apply(t, o) 3528 } 3529 }) 3530 } 3531 } 3532 ; 3533 var o, n = i(0), s = (o = n) && o.__esModule ? o : { 3534 "default": o 3535 } 3536} 3537]); 3538/*! 3539 * Name: Atlas 3540 * Author: Zengenti Ltd 3541 * Author URI: http://zengenti.com 3542 * Description: A modern front-end framework 3543 * Version: 0.0.1 3544 */ 3545var app = function(e) { 3546 "use strict"; 3547 var t; 3548 return { 3549 settings: function() { 3550 this.$window = e(window), 3551 this.$body = e("body"), 3552 this.$overlay = e(".overlay"), 3553 this.$header = e(".header"), 3554 this.$logo = e(".header__logo"), 3555 this.$navWrapper = e(".nav__wrapper"), 3556 this.$burger = e(".header__burger"), 3557 this.$close = e(".header__close"), 3558 this.$navHeading = e(".nav__heading"), 3559 this.$navItem = e(".nav__item"), 3560 this.$navSearch = e(".nav__search"), 3561 //this.$searchButton = e(".search__button"), 3562 //this.$searchWrapper = e(".search__wrapper"), 3563 this.$funnelBackSearch = e(".fbSearch"), 3564 this.$funnelBackSearchButton = e(".fbSearchBtn"), 3565 this.$findYourCourseInput = e(".find-your-course__input"), 3566 this.$findYourCourseButton = e(".find-your-course__button"), 3567 this.$secondaryNavMore = e(".secondaryNav__more "), 3568 this.$negativeMargin = e(".negative-margin"), 3569 this.$heroVideo = e(".hero-video"), 3570 this.$heroVideoState = e(".background-fixed").data("vide"), 3571 this.$slickCloned = e(".slick-cloned"), 3572 this.$heroBannerExpanded = e(".hero-banner--expanded"), 3573 this.$heroBannerExpandedTable = e(".hero-banner--expanded .hero-banner__table"), 3574 this.$heroBannerExpandedImage = e(".hero-banner--expanded .hero-banner__image"), 3575 this.$heroBannerPlay = e(".hero-banner__play"), 3576 this.$heroBannerPause = e(".hero-banner__pause"), 3577 this.$findACourse = e(".find-your-course-wrapper"), 3578 this.$prevFeaturedArrow = e(".ui-card-featured__prev"), 3579 this.$nextFeaturedArrow = e(".ui-card-featured__next"), 3580 this.$uiCardFeatured = e(".ui-card-featured"), 3581 this.$prevNewsArrow = e(".news__prev"), 3582 this.$nextNewsArrow = e(".news__next"), 3583 this.$prevEventsArrow = e(".events__prev"), 3584 this.$nextEventsArrow = e(".events__next"), 3585 this.$headerSearch = e(".header__search"), 3586 this.$heightEqCon = [".ui-cards .ui-card"] 3587 }, 3588 init: function() { 3589 t = new this.settings, 3590 this.heroBanner(), 3591 this.slick(), 3592 //this.searchToggle(), 3593 this.bindUIActions(), 3594 this.bindWindowActions() 3595 }, 3596 resizeEvent: function(e, t, i) { 3597 null != e && "undefined" != typeof e && (e.addEventListener ? e.addEventListener(t, i, !1) : e.attachEvent ? e.attachEvent("on" + t, i) : e["on" + t] = i) 3598 }, 3599 heroBanner: function() { 3600 var e = function() { 3601 var e = t.$header.outerHeight() 3602 , i = t.$window.height() 3603 , o = i - e; 3604 t.$heroVideo.height(o), 3605 t.$heroBannerExpandedImage.height(o) 3606 } 3607 , i = function() { 3608 var e = t.$header.outerHeight() 3609 , i = t.$window.height() 3610 , o = t.$findACourse.height() 3611 , n = i - e - o; 3612 t.$heroVideo.height(n), 3613 t.$heroBannerExpandedImage.height(n) 3614 }; 3615 t.$window.width() < 1023 ? e() : i(), 3616 3617 t.$window.resize(function() { 3618 t.$window.width() < 1023 ? e() : i() 3619 }) 3620 3621 }, 3622 slick: function() { 3623 t.$uiCardFeatured.slick({ 3624 slidesToShow: 1, 3625 arrows: !0, 3626 autoplay: !1, 3627 prevArrow: t.$prevFeaturedArrow,
3628 nextArrow: t.$nextFeaturedArrow 3629 }), 3630 e(".news-cards").slick({ 3631 slidesToShow: 4, 3632 slidesToScroll: 4, 3633 arrows: !0, 3634 autoplay: !1, 3635 prevArrow: t.$prevNewsArrow, 3636 nextArrow: t.$nextNewsArrow, 3637 responsive: [{ 3638 breakpoint: 1023, 3639 settings: { 3640 slidesToShow: 2, 3641 slidesToScroll: 2 3642 } 3643 }, { 3644 breakpoint: 640, 3645 settings: { 3646 slidesToShow: 1, 3647 slidesToScroll: 1 3648 } 3649 }] 3650 }), 3651 e(".events-cards").slick({ 3652 slidesToShow: 4, 3653 slidesToScroll: 4, 3654 autoplay: !1, 3655 prevArrow: t.$prevEventsArrow, 3656 nextArrow: t.$nextEventsArrow, 3657 responsive: [{ 3658 breakpoint: 1023, 3659 settings: { 3660 slidesToShow: 2, 3661 slidesToScroll: 2 3662 } 3663 }, { 3664 breakpoint: 640, 3665 settings: { 3666 slidesToShow: 1, 3667 slidesToScroll: 1 3668 } 3669 }] 3670 }) 3671 }, 3672 /*searchToggle: function() { 3673 t.$searchButton.click(function() { 3674 t.$searchWrapper.hasClass("active") || (t.$searchWrapper.addClass("active"), 3675 t.$funnelBackSearch.focus()), 3676 t.$navSearch.hasClass("search--active") || t.$navSearch.addClass("search--active") 3677 }), 3678 e(document).click(function() { 3679 t.$navSearch.removeClass("search--active"), 3680 t.$searchWrapper.removeClass("active"), 3681 t.$navSearch.removeClass("search--active") 3682 }), 3683 t.$searchButton.click(function(e) { 3684 e.stopPropagation() 3685 }), 3686 t.$funnelBackSearch.click(function(e) { 3687 e.stopPropagation() 3688 }), 3689 t.$funnelBackSearchButton.click(function(e) { 3690 e.stopPropagation() 3691 }), 3692 t.$findYourCourseInput.click(function(e) { 3693 e.stopPropagation() 3694 }), 3695 t.$funnelBackSearchButton.click(function(e) { 3696 e.stopPropagation() 3697 }), 3698 t.$secondaryNavMore.click(function(e) { 3699 e.stopPropagation() 3700 }), 3701 t.$navItem.hover(function() { 3702 t.$navSearch.removeClass("search--active"), 3703 t.$searchWrapper.removeClass("active"), 3704 t.$navSearch.removeClass("search--active") 3705 }) 3706 },*/ 3707 bindUIActions: function() { 3708 t.$burger.click(function() { 3709 t.$navWrapper.addClass("active"), 3710 t.$body.addClass("no-scroll"), 3711 t.$overlay.addClass("overlay--active") 3712 //t.$searchWrapper.removeClass("active") 3713 }), 3714 t.$close.click(function() { 3715 t.$navWrapper.removeClass("active"), 3716 t.$body.removeClass("no-scroll"), 3717 t.$overlay.removeClass("overlay--active") 3718 //t.$searchWrapper.removeClass("active") 3719 }), 3720 t.$navItem.click(function() { 3721 e(this).hasClass("active") ? t.$navItem.removeClass("active") : (t.$navItem.removeClass("active"), 3722 e(this).addClass("active")) 3723 }), 3724 t.$heroBannerPlay.click(function() { 3725 e(this).addClass("hero-banner__play--hide"), 3726 t.$heroBannerPause.removeClass("hero-banner__pause--hide"), 3727 t.$heroVideoState.getVideoObject().play() 3728 }), 3729 t.$heroBannerPause.click(function() { 3730 e(this).addClass("hero-banner__pause--hide"), 3731 t.$heroBannerPlay.removeClass("hero-banner__play--hide"), 3732 t.$heroVideoState.getVideoObject().pause() 3733 }), 3734 t.$window.resize(function() { 3735 e(window).width() > 1024 && (t.$body.removeClass("overlay"), 3736 t.$navItem.removeClass("active"), 3737 t.$body.removeClass("no-scroll"), 3738 t.$overlay.removeClass("overlay--active"), 3739 t.$navWrapper.removeClass("active"), 3740 t.$navItem.removeClass("active")) 3741 }), 3742 e(".jarallax").jarallax({ 3743 disableParallax: /iPad|iPhone|iPod|Android|Edge/ 3744 }), 3745 e(".ui-cards .ui-card").matchHeight(), 3746 e("#form1 .ui-cards:first").addClass("ui-cards--first"), 3747 /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) && (t.$heroBannerPlay.hide(), 3748 t.$heroBannerPause.hide()) 3749 }, 3750 bindWindowActions: function() { 3751 e(window).on("debouncedresize", function() { 3752 setTimeout(function() { 3753 e(window).trigger("resize.px.parallax") 3754 }) 3755 }) 3756 } 3757 } 3758}(jQuery); 3759jQuery(document).ready(function() { 3760 $('.nav').accessibleMegaMenu(); 3761 app.init(); 3762 3763});
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.