vendor: 15,127 bytes, lines 1-703
1/*! lazysizes - v5.3.2 */ 2!function (e) { 3 var t = function (u, D, f) { 4 "use strict"; 5 6 var k, H; 7 8 if (function () { 9 var e; 10 var t = { 11 lazyClass: "lazyload", 12 loadedClass: "lazyloaded", 13 loadingClass: "lazyloading", 14 preloadClass: "lazypreload", 15 errorClass: "lazyerror", 16 autosizesClass: "lazyautosizes", 17 fastLoadedClass: "ls-is-cached", 18 iframeLoadMode: 0, 19 srcAttr: "data-src", 20 srcsetAttr: "data-srcset", 21 sizesAttr: "data-sizes", 22 minSize: 40, 23 customMedia: {}, 24 init: true, 25 expFactor: 1.5, 26 hFac: .8, 27 loadMode: 2, 28 loadHidden: true, 29 ricTimeout: 0, 30 throttleDelay: 125 31 }; 32 H = u.lazySizesConfig || u.lazysizesConfig || {}; 33 34 for (e in t) { 35 if (!(e in H)) { 36 H[e] = t[e]; 37 } 38 } 39 }(), !D || !D.getElementsByClassName) { 40 return { 41 init: function () {}, 42 cfg: H, 43 noSupport: true 44 }; 45 } 46 47 var O = D.documentElement, 48 i = u.HTMLPictureElement, 49 P = "addEventListener", 50 $ = "getAttribute", 51 q = u[P].bind(u), 52 I = u.setTimeout, 53 U = u.requestAnimationFrame || I, 54 o = u.requestIdleCallback, 55 j = /^picture$/i, 56 r = ["load", "error", "lazyincluded", "_lazyloaded"], 57 a = {}, 58 G = Array.prototype.forEach, 59 J = function (e, t) { 60 if (!a[t]) { 61 a[t] = new RegExp("(\\s|^)" + t + "(\\s|$)"); 62 } 63 64 return a[t].test(e[$]("class") || "") && a[t]; 65 }, 66 K = function (e, t) { 67 if (!J(e, t)) { 68 e.setAttribute("class", (e[$]("class") || "").trim() + " " + t); 69 } 70 }, 71 Q = function (e, t) { 72 var a; 73 74 if (a = J(e, t)) { 75 e.setAttribute("class", (e[$]("class") || "").replace(a, " ")); 76 } 77 }, 78 V = function (t, a, e) { 79 var i = e ? P : "removeEventListener"; 80 81 if (e) { 82 V(t, a); 83 } 84 85 r.forEach(function (e) { 86 t[i](e, a); 87 }); 88 }, 89 X = function (e, t, a, i, r) { 90 var n = D.createEvent("Event"); 91 92 if (!a) { 93 a = {}; 94 } 95 96 a.instance = k; 97 n.initEvent(t, !i, !r); 98 n.detail = a; 99 e.dispatchEvent(n); 100 return n; 101 }, 102 Y = function (e, t) { 103 var a; 104 105 if (!i && (a = u.picturefill || H.pf)) { 106 if (t && t.src && !e[$]("srcset")) { 107 e.setAttribute("srcset", t.src); 108 } 109 110 a({ 111 reevaluate: true, 112 elements: [e] 113 }); 114 } else if (t && t.src) { 115 e.src = t.src; 116 } 117 }, 118 Z = function (e, t) { 119 return (getComputedStyle(e, null) || {})[t]; 120 }, 121 s = function (e, t, a) { 122 a = a || e.offsetWidth; 123 124 while (a < H.minSize && t && !e._lazysizesWidth) { 125 a = t.offsetWidth; 126 t = t.parentNode; 127 } 128 129 return a; 130 }, 131 ee = function () { 132 var a, i; 133 var t = []; 134 var r = []; 135 var n = t; 136 137 var s = function () { 138 var e = n; 139 n = t.length ? r : t; 140 a = true; 141 i = false; 142 143 while (e.length) { 144 e.shift()(); 145 } 146 147 a = false; 148 }; 149 150 var e = function (e, t) { 151 if (a && !t) { 152 e.apply(this, arguments); 153 } else { 154 n.push(e); 155 156 if (!i) { 157 i = true; 158 (D.hidden ? I : U)(s); 159 } 160 } 161 }; 162 163 e._lsFlush = s; 164 return e; 165 }(), 166 te = function (a, e) { 167 return e ? function () { 168 ee(a); 169 } : function () { 170 var e = this; 171 var t = arguments; 172 ee(function () { 173 a.apply(e, t); 174 }); 175 }; 176 }, 177 ae = function (e) { 178 var a; 179 var i = 0; 180 var r = H.throttleDelay; 181 var n = H.ricTimeout; 182 183 var t = function () { 184 a = false; 185 i = f.now(); 186 e(); 187 }; 188 189 var s = o && n > 49 ? function () { 190 o(t, { 191 timeout: n 192 }); 193 194 if (n !== H.ricTimeout) { 195 n = H.ricTimeout; 196 } 197 } : te(function () { 198 I(t); 199 }, true); 200 return function (e) { 201 var t; 202 203 if (e = e === true) { 204 n = 33; 205 } 206 207 if (a) { 208 return; 209 } 210 211 a = true; 212 t = r - (f.now() - i); 213 214 if (t < 0) { 215 t = 0; 216 } 217 218 if (e || t < 9) { 219 s(); 220 } else { 221 I(s, t); 222 } 223 }; 224 }, 225 ie = function (e) { 226 var t, a; 227 var i = 99; 228 229 var r = function () { 230 t = null; 231 e(); 232 }; 233 234 var n = function () { 235 var e = f.now() - a; 236 237 if (e < i) { 238 I(n, i - e); 239 } else { 240 (o || r)(r); 241 } 242 }; 243 244 return function () { 245 a = f.now(); 246 247 if (!t) { 248 t = I(n, i); 249 } 250 }; 251 }, 252 e = function () { 253 var v, m, c, h, e; 254 var y, z, g, p, C, b, A; 255 var n = /^img$/i; 256 var d = /^iframe$/i; 257 var E = "onscroll" in u && !/(gle|ing)bot/.test(navigator.userAgent); 258 var _ = 0; 259 var w = 0; 260 var M = 0; 261 var N = -1; 262 263 var L = function (e) { 264 M--; 265 266 if (!e || M < 0 || !e.target) { 267 M = 0; 268 } 269 }; 270 271 var x = function (e) { 272 if (A == null) { 273 A = Z(D.body, "visibility") == "hidden"; 274 } 275 276 return A || !(Z(e.parentNode, "visibility") == "hidden" && Z(e, "visibility") == "hidden"); 277 }; 278 279 var W = function (e, t) { 280 var a; 281 var i = e; 282 var r = x(e); 283 g -= t; 284 b += t; 285 p -= t; 286 C += t; 287 288 while (r && (i = i.offsetParent) && i != D.body && i != O) { 289 r = (Z(i, "opacity") || 1) > 0; 290 291 if (r && Z(i, "overflow") != "visible") { 292 a = i.getBoundingClientRect(); 293 r = C > a.left && p < a.right && b > a.top - 1 && g < a.bottom + 1; 294 } 295 } 296 297 return r; 298 }; 299 300 var t = function () { 301 var e, t, a, i, r, n, s, o, l, u, f, c; 302 var d = k.elements; 303 304 if ((h = H.loadMode) && M < 8 && (e = d.length)) { 305 t = 0; 306 N++; 307 308 for (; t < e; t++) { 309 if (!d[t] || d[t]._lazyRace) { 310 continue; 311 } 312 313 if (!E || k.prematureUnveil && k.prematureUnveil(d[t])) { 314 R(d[t]); 315 continue; 316 } 317 318 if (!(o = d[t][$]("data-expand")) || !(n = o * 1)) { 319 n = w; 320 } 321 322 if (!u) { 323 u = !H.expand || H.expand < 1 ? O.clientHeight > 500 && O.clientWidth > 500 ? 500 : 370 : H.expand; 324 k._defEx = u; 325 f = u * H.expFactor; 326 c = H.hFac; 327 A = null; 328 329 if (w < f && M < 1 && N > 2 && h > 2 && !D.hidden) { 330 w = f; 331 N = 0; 332 } else if (h > 1 && N > 1 && M < 6) { 333 w = u; 334 } else { 335 w = _; 336 } 337 } 338 339 if (l !== n) { 340 y = innerWidth + n * c; 341 z = innerHeight + n; 342 s = n * -1; 343 l = n; 344 } 345 346 a = d[t].getBoundingClientRect(); 347 348 if ((b = a.bottom) >= s && (g = a.top) <= z && (C = a.right) >= s * c && (p = a.left) <= y && (b || C || p || g) && (H.loadHidden || x(d[t])) && (m && M < 3 && !o && (h < 3 || N < 4) || W(d[t], n))) { 349 R(d[t]); 350 r = true; 351 352 if (M > 9) { 353 break; 354 } 355 } else if (!r && m && !i && M < 4 && N < 4 && h > 2 && (v[0] || H.preloadAfterLoad) && (v[0] || !o && (b || C || p || g || d[t][$](H.sizesAttr) != "auto"))) { 356 i = v[0] || d[t]; 357 } 358 } 359 360 if (i && !r) { 361 R(i); 362 } 363 } 364 }; 365 366 var a = ae(t); 367 368 var S = function (e) { 369 var t = e.target; 370 371 if (t._lazyCache) { 372 delete t._lazyCache; 373 return; 374 } 375 376 L(e); 377 K(t, H.loadedClass); 378 Q(t, H.loadingClass); 379 V(t, B); 380 X(t, "lazyloaded"); 381 }; 382 383 var i = te(S); 384 385 var B = function (e) { 386 i({ 387 target: e.target 388 }); 389 }; 390 391 var T = function (e, t) { 392 var a = e.getAttribute("data-load-mode") || H.iframeLoadMode; 393 394 if (a == 0) { 395 e.contentWindow.location.replace(t); 396 } else if (a == 1) { 397 e.src = t; 398 } 399 }; 400 401 var F = function (e) { 402 var t; 403 var a = e[$](H.srcsetAttr); 404 405 if (t = H.customMedia[e[$]("data-media") || e[$]("media")]) { 406 e.setAttribute("media", t); 407 } 408 409 if (a) { 410 e.setAttribute("srcset", a); 411 } 412 }; 413 414 var s = te(function (t, e, a, i, r) { 415 var n, s, o, l, u, f; 416 417 if (!(u = X(t, "lazybeforeunveil", e)).defaultPrevented) { 418 if (i) { 419 if (a) { 420 K(t, H.autosizesClass); 421 } else { 422 t.setAttribute("sizes", i); 423 } 424 } 425 426 s = t[$](H.srcsetAttr); 427 n = t[$](H.srcAttr); 428 429 if (r) { 430 o = t.parentNode; 431 l = o && j.test(o.nodeName || ""); 432 } 433 434 f = e.firesLoad || "src" in t && (s || n || l); 435 u = { 436 target: t 437 }; 438 K(t, H.loadingClass); 439 440 if (f) { 441 clearTimeout(c); 442 c = I(L, 2500); 443 V(t, B, true); 444 } 445 446 if (l) { 447 G.call(o.getElementsByTagName("source"), F); 448 } 449 450 if (s) { 451 t.setAttribute("srcset", s); 452 } else if (n && !l) { 453 if (d.test(t.nodeName)) { 454 T(t, n); 455 } else { 456 t.src = n; 457 } 458 } 459 460 if (r && (s || l)) { 461 Y(t, { 462 src: n 463 }); 464 } 465 } 466 467 if (t._lazyRace) { 468 delete t._lazyRace; 469 } 470 471 Q(t, H.lazyClass); 472 ee(function () { 473 var e = t.complete && t.naturalWidth > 1; 474 475 if (!f || e) { 476 if (e) { 477 K(t, H.fastLoadedClass); 478 } 479 480 S(u); 481 t._lazyCache = true; 482 I(function () { 483 if ("_lazyCache" in t) { 484 delete t._lazyCache; 485 } 486 }, 9); 487 } 488 489 if (t.loading == "lazy") { 490 M--; 491 } 492 }, true); 493 }); 494 495 var R = function (e) { 496 if (e._lazyRace) { 497 return; 498 } 499 500 var t; 501 var a = n.test(e.nodeName); 502 var i = a && (e[$](H.sizesAttr) || e[$]("sizes")); 503 var r = i == "auto"; 504 505 if ((r || !m) && a && (e[$]("src") || e.srcset) && !e.complete && !J(e, H.errorClass) && J(e, H.lazyClass)) { 506 return; 507 } 508 509 t = X(e, "lazyunveilread").detail; 510 511 if (r) { 512 re.updateElem(e, true, e.offsetWidth); 513 } 514 515 e._lazyRace = true; 516 M++; 517 s(e, t, r, i, a); 518 }; 519 520 var r = ie(function () { 521 H.loadMode = 3; 522 a(); 523 }); 524 525 var o = function () { 526 if (H.loadMode == 3) { 527 H.loadMode = 2; 528 } 529 530 r(); 531 }; 532 533 var l = function () { 534 if (m) { 535 return; 536 } 537 538 if (f.now() - e < 999) { 539 I(l, 999); 540 return; 541 } 542 543 m = true; 544 H.loadMode = 3; 545 a(); 546 q("scroll", o, true); 547 }; 548 549 return { 550 _: function () { 551 e = f.now(); 552 k.elements = D.getElementsByClassName(H.lazyClass); 553 v = D.getElementsByClassName(H.lazyClass + " " + H.preloadClass); 554 q("scroll", a, true); 555 q("resize", a, true); 556 q("pageshow", function (e) { 557 if (e.persisted) { 558 var t = D.querySelectorAll("." + H.loadingClass); 559 560 if (t.length && t.forEach) { 561 U(function () { 562 t.forEach(function (e) { 563 if (e.complete) { 564 R(e); 565 } 566 }); 567 }); 568 } 569 } 570 }); 571 572 if (u.MutationObserver) { 573 new MutationObserver(a).observe(O, { 574 childList: true, 575 subtree: true, 576 attributes: true 577 }); 578 } else { 579 O[P]("DOMNodeInserted", a, true); 580 O[P]("DOMAttrModified", a, true); 581 setInterval(a, 999); 582 } 583 584 q("hashchange", a, true); 585 ["focus", "mouseover", "click", "load", "transitionend", "animationend"].forEach(function (e) { 586 D[P](e, a, true); 587 }); 588 589 if (/d$|^c/.test(D.readyState)) { 590 l(); 591 } else { 592 q("load", l); 593 D[P]("DOMContentLoaded", a); 594 I(l, 2e4); 595 } 596 597 if (k.elements.length) { 598 t(); 599 600 ee._lsFlush(); 601 } else { 602 a(); 603 } 604 }, 605 checkElems: a, 606 unveil: R, 607 _aLSL: o 608 }; 609 }(), 610 re = function () { 611 var a; 612 var n = te(function (e, t, a, i) { 613 var r, n, s; 614 e._lazysizesWidth = i; 615 i += "px"; 616 e.setAttribute("sizes", i); 617 618 if (j.test(t.nodeName || "")) { 619 r = t.getElementsByTagName("source"); 620 621 for (n = 0, s = r.length; n < s; n++) { 622 r[n].setAttribute("sizes", i); 623 } 624 } 625 626 if (!a.detail.dataAttr) { 627 Y(e, a.detail); 628 } 629 }); 630 631 var i = function (e, t, a) { 632 var i; 633 var r = e.parentNode; 634 635 if (r) { 636 a = s(e, r, a); 637 i = X(e, "lazybeforesizes", { 638 width: a, 639 dataAttr: !!t 640 }); 641 642 if (!i.defaultPrevented) { 643 a = i.detail.width; 644 645 if (a && a !== e._lazysizesWidth) { 646 n(e, r, i, a); 647 } 648 } 649 } 650 }; 651 652 var e = function () { 653 var e; 654 var t = a.length; 655 656 if (t) { 657 e = 0; 658 659 for (; e < t; e++) { 660 i(a[e]); 661 } 662 } 663 }; 664 665 var t = ie(e); 666 return { 667 _: function () { 668 a = D.getElementsByClassName(H.autosizesClass); 669 q("resize", t); 670 }, 671 checkElems: t, 672 updateElem: i 673 }; 674 }(), 675 t = function () { 676 if (!t.i && D.getElementsByClassName) { 677 t.i = true; 678 679 re._(); 680 681 e._(); 682 } 683 }; 684 685 return I(function () { 686 H.init && t(); 687 }), k = { 688 cfg: H, 689 autoSizer: re, 690 loader: e, 691 init: t, 692 uP: Y, 693 aC: K, 694 rC: Q, 695 hC: J, 696 fire: X, 697 gW: s, 698 rAF: ee 699 }; 700 }(e, e.document, Date); 701 702 e.lazySizes = t, "object" == typeof module && module.exports && (module.exports = t); 703}("undefined" != typeof window ? window : {});
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.