1/*! 2 * Isotope PACKAGED v3.0.6 3 * 4 * Licensed GPLv3 for open source use 5 * or Isotope Commercial License for commercial use 6 * 7 * https://isotope.metafizzy.co 8 * Copyright 2010-2018 Metafizzy 9 */ 10 11!(function (t, e) { 12 "function" == typeof define && define.amd 13 ? define("jquery-bridget/jquery-bridget", ["jquery"], function (i) { 14 return e(t, i); 15 }) 16 : "object" == typeof module && module.exports 17 ? (module.exports = e(t, require("jquery"))) 18 : (t.jQueryBridget = e(t, t.jQuery)); 19})(window, function (t, e) { 20 "use strict"; 21 function i(i, s, a) { 22 function u(t, e, o) { 23 var n, 24 s = "$()." + i + '("' + e + '")'; 25 return ( 26 t.each(function (t, u) { 27 var h = a.data(u, i); 28 if (!h) 29 return void r( 30 i + " not initialized. Cannot call methods, i.e. " + s 31 ); 32 var d = h[e]; 33 if (!d || "_" == e.charAt(0)) 34 return void r(s + " is not a valid method"); 35 var l = d.apply(h, o); 36 n = void 0 === n ? l : n; 37 }), 38 void 0 !== n ? n : t 39 ); 40 } 41 function h(t, e) { 42 t.each(function (t, o) { 43 var n = a.data(o, i); 44 n ? (n.option(e), n._init()) : ((n = new s(o, e)), a.data(o, i, n)); 45 }); 46 } 47 (a = a || e || t.jQuery), 48 a && 49 (s.prototype.option || 50 (s.prototype.option = function (t) { 51 a.isPlainObject(t) && 52 (this.options = a.extend(!0, this.options, t)); 53 }), 54 (a.fn[i] = function (t) { 55 if ("string" == typeof t) { 56 var e = n.call(arguments, 1); 57 return u(this, t, e); 58 } 59 return h(this, t), this; 60 }), 61 o(a)); 62 } 63 function o(t) { 64 !t || (t && t.bridget) || (t.bridget = i); 65 } 66 var n = Array.prototype.slice, 67 s = t.console, 68 r = 69 "undefined" == typeof s 70 ? function () {} 71 : function (t) { 72 s.error(t); 73 }; 74 return o(e || t.jQuery), i; 75}), 76 (function (t, e) { 77 "function" == typeof define && define.amd 78 ? define("ev-emitter/ev-emitter", e) 79 : "object" == typeof module && module.exports 80 ? (module.exports = e()) 81 : (t.EvEmitter = e()); 82 })("undefined" != typeof window ? window : this, function () { 83 function t() {} 84 var e = t.prototype; 85 return ( 86 (e.on = function (t, e) { 87 if (t && e) { 88 var i = (this._events = this._events || {}), 89 o = (i[t] = i[t] || []); 90 return o.indexOf(e) == -1 && o.push(e), this; 91 } 92 }), 93 (e.once = function (t, e) { 94 if (t && e) { 95 this.on(t, e); 96 var i = (this._onceEvents = this._onceEvents || {}), 97 o = (i[t] = i[t] || {}); 98 return (o[e] = !0), this; 99 } 100 }), 101 (e.off = function (t, e) { 102 var i = this._events && this._events[t]; 103 if (i && i.length) { 104 var o = i.indexOf(e); 105 return o != -1 && i.splice(o, 1), this; 106 } 107 }), 108 (e.emitEvent = function (t, e) { 109 var i = this._events && this._events[t]; 110 if (i && i.length) { 111 (i = i.slice(0)), (e = e || []); 112 for ( 113 var o = this._onceEvents && this._onceEvents[t], n = 0; 114 n < i.length; 115 n++ 116 ) { 117 var s = i[n], 118 r = o && o[s]; 119 r && (this.off(t, s), delete o[s]), s.apply(this, e); 120 } 121 return this; 122 } 123 }), 124 (e.allOff = function () { 125 delete this._events, delete this._onceEvents; 126 }), 127 t 128 ); 129 }), 130 (function (t, e) { 131 "function" == typeof define && define.amd 132 ? define("get-size/get-size", e) 133 : "object" == typeof module && module.exports 134 ? (module.exports = e()) 135 : (t.getSize = e()); 136 })(window, function () { 137 "use strict"; 138 function t(t) { 139 var e = parseFloat(t), 140 i = t.indexOf("%") == -1 && !isNaN(e); 141 return i && e; 142 } 143 function e() {} 144 function i() { 145 for ( 146 var t = { 147 width: 0, 148 height: 0, 149 innerWidth: 0, 150 innerHeight: 0, 151 outerWidth: 0, 152 outerHeight: 0, 153 }, 154 e = 0; 155 e < h; 156 e++ 157 ) { 158 var i = u[e]; 159 t[i] = 0; 160 } 161 return t; 162 } 163 function o(t) { 164 var e = getComputedStyle(t); 165 return ( 166 e || 167 a( 168 "Style returned " + 169 e + 170 ". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1" 171 ), 172 e 173 ); 174 } 175 function n() { 176 if (!d) { 177 d = !0; 178 var e = document.createElement("div"); 179 (e.style.width = "200px"), 180 (e.style.padding = "1px 2px 3px 4px"), 181 (e.style.borderStyle = "solid"), 182 (e.style.borderWidth = "1px 2px 3px 4px"), 183 (e.style.boxSizing = "border-box"); 184 var i = document.body || document.documentElement; 185 i.appendChild(e); 186 var n = o(e); 187 (r = 200 == Math.round(t(n.width))), 188 (s.isBoxSizeOuter = r), 189 i.removeChild(e); 190 } 191 } 192 function s(e) { 193 if ( 194 (n(), 195 "string" == typeof e && (e = document.querySelector(e)), 196 e && "object" == typeof e && e.nodeType) 197 ) { 198 var s = o(e); 199 if ("none" == s.display) return i(); 200 var a = {}; 201 (a.width = e.offsetWidth), (a.height = e.offsetHeight); 202 for ( 203 var d = (a.isBorderBox = "border-box" == s.boxSizing), l = 0; 204 l < h; 205 l++ 206 ) { 207 var f = u[l], 208 c = s[f], 209 m = parseFloat(c); 210 a[f] = isNaN(m) ? 0 : m; 211 } 212 var p = a.paddingLeft + a.paddingRight, 213 y = a.paddingTop + a.paddingBottom, 214 g = a.marginLeft + a.marginRight, 215 v = a.marginTop + a.marginBottom, 216 _ = a.borderLeftWidth + a.borderRightWidth, 217 z = a.borderTopWidth + a.borderBottomWidth, 218 I = d && r, 219 x = t(s.width); 220 x !== !1 && (a.width = x + (I ? 0 : p + _)); 221 var S = t(s.height); 222 return ( 223 S !== !1 && (a.height = S + (I ? 0 : y + z)), 224 (a.innerWidth = a.width - (p + _)), 225 (a.innerHeight = a.height - (y + z)), 226 (a.outerWidth = a.width + g), 227 (a.outerHeight = a.height + v), 228 a 229 ); 230 } 231 } 232 var r, 233 a = 234 "undefined" == typeof console 235 ? e 236 : function (t) { 237 console.error(t); 238 }, 239 u = [ 240 "paddingLeft", 241 "paddingRight", 242 "paddingTop", 243 "paddingBottom", 244 "marginLeft", 245 "marginRight", 246 "marginTop", 247 "marginBottom", 248 "borderLeftWidth", 249 "borderRightWidth", 250 "borderTopWidth", 251 "borderBottomWidth", 252 ], 253 h = u.length, 254 d = !1; 255 return s; 256 }), 257 (function (t, e) { 258 "use strict"; 259 "function" == typeof define && define.amd 260 ? define("desandro-matches-selector/matches-selector", e) 261 : "object" == typeof module && module.exports 262 ? (module.exports = e()) 263 : (t.matchesSelector = e()); 264 })(window, function () { 265 "use strict"; 266 var t = (function () { 267 var t = window.Element.prototype; 268 if (t.matches) return "matches"; 269 if (t.matchesSelector) return "matchesSelector"; 270 for (var e = ["webkit", "moz", "ms", "o"], i = 0; i < e.length; i++) { 271 var o = e[i], 272 n = o + "MatchesSelector"; 273 if (t[n]) return n; 274 } 275 })(); 276 return function (e, i) { 277 return e[t](i);
278 }; 279 }), 280 (function (t, e) { 281 "function" == typeof define && define.amd 282 ? define( 283 "fizzy-ui-utils/utils", 284 ["desandro-matches-selector/matches-selector"], 285 function (i) { 286 return e(t, i); 287 } 288 ) 289 : "object" == typeof module && module.exports 290 ? (module.exports = e(t, require("desandro-matches-selector"))) 291 : (t.fizzyUIUtils = e(t, t.matchesSelector)); 292 })(window, function (t, e) { 293 var i = {}; 294 (i.extend = function (t, e) { 295 for (var i in e) t[i] = e[i]; 296 return t; 297 }), 298 (i.modulo = function (t, e) { 299 return ((t % e) + e) % e; 300 }); 301 var o = Array.prototype.slice; 302 (i.makeArray = function (t) { 303 if (Array.isArray(t)) return t; 304 if (null === t || void 0 === t) return []; 305 var e = "object" == typeof t && "number" == typeof t.length; 306 return e ? o.call(t) : [t]; 307 }), 308 (i.removeFrom = function (t, e) { 309 var i = t.indexOf(e); 310 i != -1 && t.splice(i, 1); 311 }), 312 (i.getParent = function (t, i) { 313 for (; t.parentNode && t != document.body; ) 314 if (((t = t.parentNode), e(t, i))) return t; 315 }), 316 (i.getQueryElement = function (t) { 317 return "string" == typeof t ? document.querySelector(t) : t; 318 }), 319 (i.handleEvent = function (t) { 320 var e = "on" + t.type; 321 this[e] && this[e](t); 322 }), 323 (i.filterFindElements = function (t, o) { 324 t = i.makeArray(t); 325 var n = []; 326 return ( 327 t.forEach(function (t) { 328 if (t instanceof HTMLElement) { 329 if (!o) return void n.push(t); 330 e(t, o) && n.push(t); 331 for (var i = t.querySelectorAll(o), s = 0; s < i.length; s++) 332 n.push(i[s]); 333 } 334 }), 335 n 336 ); 337 }), 338 (i.debounceMethod = function (t, e, i) { 339 i = i || 100; 340 var o = t.prototype[e], 341 n = e + "Timeout"; 342 t.prototype[e] = function () { 343 var t = this[n]; 344 clearTimeout(t); 345 var e = arguments, 346 s = this; 347 this[n] = setTimeout(function () { 348 o.apply(s, e), delete s[n]; 349 }, i); 350 }; 351 }), 352 (i.docReady = function (t) { 353 var e = document.readyState; 354 "complete" == e || "interactive" == e 355 ? setTimeout(t) 356 : document.addEventListener("DOMContentLoaded", t); 357 }), 358 (i.toDashed = function (t) { 359 return t 360 .replace(/(.)([A-Z])/g, function (t, e, i) { 361 return e + "-" + i; 362 }) 363 .toLowerCase(); 364 }); 365 var n = t.console; 366 return ( 367 (i.htmlInit = function (e, o) { 368 i.docReady(function () { 369 var s = i.toDashed(o), 370 r = "data-" + s, 371 a = document.querySelectorAll("[" + r + "]"), 372 u = document.querySelectorAll(".js-" + s), 373 h = i.makeArray(a).concat(i.makeArray(u)), 374 d = r + "-options", 375 l = t.jQuery; 376 h.forEach(function (t) { 377 var i, 378 s = t.getAttribute(r) || t.getAttribute(d); 379 try { 380 i = s && JSON.parse(s); 381 } catch (a) { 382 return void ( 383 n && 384 n.error("Error parsing " + r + " on " + t.className + ": " + a) 385 ); 386 } 387 var u = new e(t, i); 388 l && l.data(t, o, u); 389 }); 390 }); 391 }), 392 i 393 ); 394 }), 395 (function (t, e) { 396 "function" == typeof define && define.amd 397 ? define( 398 "outlayer/item", 399 ["ev-emitter/ev-emitter", "get-size/get-size"], 400 e 401 ) 402 : "object" == typeof module && module.exports 403 ? (module.exports = e(require("ev-emitter"), require("get-size"))) 404 : ((t.Outlayer = {}), (t.Outlayer.Item = e(t.EvEmitter, t.getSize))); 405 })(window, function (t, e) { 406 "use strict"; 407 function i(t) { 408 for (var e in t) return !1; 409 return (e = null), !0; 410 } 411 function o(t, e) { 412 t && 413 ((this.element = t), 414 (this.layout = e), 415 (this.position = { x: 0, y: 0 }), 416 this._create()); 417 } 418 function n(t) { 419 return t.replace(/([A-Z])/g, function (t) { 420 return "-" + t.toLowerCase(); 421 }); 422 } 423 var s = document.documentElement.style, 424 r = "string" == typeof s.transition ? "transition" : "WebkitTransition", 425 a = "string" == typeof s.transform ? "transform" : "WebkitTransform", 426 u = { 427 WebkitTransition: "webkitTransitionEnd", 428 transition: "transitionend", 429 }[r], 430 h = { 431 transform: a, 432 transition: r, 433 transitionDuration: r + "Duration", 434 transitionProperty: r + "Property", 435 transitionDelay: r + "Delay", 436 }, 437 d = (o.prototype = Object.create(t.prototype)); 438 (d.constructor = o), 439 (d._create = function () { 440 (this._transn = { ingProperties: {}, clean: {}, onEnd: {} }), 441 this.css({ position: "absolute" }); 442 }), 443 (d.handleEvent = function (t) { 444 var e = "on" + t.type; 445 this[e] && this[e](t); 446 }), 447 (d.getSize = function () { 448 this.size = e(this.element); 449 }), 450 (d.css = function (t) { 451 var e = this.element.style; 452 for (var i in t) { 453 var o = h[i] || i; 454 e[o] = t[i]; 455 } 456 }), 457 (d.getPosition = function () { 458 var t = getComputedStyle(this.element), 459 e = this.layout._getOption("originLeft"), 460 i = this.layout._getOption("originTop"), 461 o = t[e ? "left" : "right"], 462 n = t[i ? "top" : "bottom"], 463 s = parseFloat(o), 464 r = parseFloat(n), 465 a = this.layout.size; 466 o.indexOf("%") != -1 && (s = (s / 100) * a.width), 467 n.indexOf("%") != -1 && (r = (r / 100) * a.height),
468 (s = isNaN(s) ? 0 : s), 469 (r = isNaN(r) ? 0 : r), 470 (s -= e ? a.paddingLeft : a.paddingRight), 471 (r -= i ? a.paddingTop : a.paddingBottom), 472 (this.position.x = s), 473 (this.position.y = r); 474 }), 475 (d.layoutPosition = function () { 476 var t = this.layout.size, 477 e = {}, 478 i = this.layout._getOption("originLeft"), 479 o = this.layout._getOption("originTop"), 480 n = i ? "paddingLeft" : "paddingRight", 481 s = i ? "left" : "right", 482 r = i ? "right" : "left", 483 a = this.position.x + t[n]; 484 (e[s] = this.getXValue(a)), (e[r] = ""); 485 var u = o ? "paddingTop" : "paddingBottom", 486 h = o ? "top" : "bottom", 487 d = o ? "bottom" : "top", 488 l = this.position.y + t[u]; 489 (e[h] = this.getYValue(l)), 490 (e[d] = ""), 491 this.css(e), 492 this.emitEvent("layout", [this]); 493 }), 494 (d.getXValue = function (t) { 495 var e = this.layout._getOption("horizontal"); 496 return this.layout.options.percentPosition && !e 497 ? (t / this.layout.size.width) * 100 + "%" 498 : t + "px"; 499 }), 500 (d.getYValue = function (t) { 501 var e = this.layout._getOption("horizontal"); 502 return this.layout.options.percentPosition && e 503 ? (t / this.layout.size.height) * 100 + "%" 504 : t + "px"; 505 }), 506 (d._transitionTo = function (t, e) { 507 this.getPosition(); 508 var i = this.position.x, 509 o = this.position.y, 510 n = t == this.position.x && e == this.position.y; 511 if ((this.setPosition(t, e), n && !this.isTransitioning)) 512 return void this.layoutPosition(); 513 var s = t - i, 514 r = e - o, 515 a = {}; 516 (a.transform = this.getTranslate(s, r)), 517 this.transition({ 518 to: a, 519 onTransitionEnd: { transform: this.layoutPosition }, 520 isCleaning: !0, 521 }); 522 }), 523 (d.getTranslate = function (t, e) { 524 var i = this.layout._getOption("originLeft"), 525 o = this.layout._getOption("originTop"); 526 return ( 527 (t = i ? t : -t), 528 (e = o ? e : -e), 529 "translate3d(" + t + "px, " + e + "px, 0)" 530 ); 531 }), 532 (d.goTo = function (t, e) { 533 this.setPosition(t, e), this.layoutPosition(); 534 }), 535 (d.moveTo = d._transitionTo), 536 (d.setPosition = function (t, e) { 537 (this.position.x = parseFloat(t)), (this.position.y = parseFloat(e)); 538 }), 539 (d._nonTransition = function (t) { 540 this.css(t.to), t.isCleaning && this._removeStyles(t.to); 541 for (var e in t.onTransitionEnd) t.onTransitionEnd[e].call(this); 542 }), 543 (d.transition = function (t) { 544 if (!parseFloat(this.layout.options.transitionDuration)) 545 return void this._nonTransition(t); 546 var e = this._transn; 547 for (var i in t.onTransitionEnd) e.onEnd[i] = t.onTransitionEnd[i]; 548 for (i in t.to) 549 (e.ingProperties[i] = !0), t.isCleaning && (e.clean[i] = !0); 550 if (t.from) { 551 this.css(t.from); 552 var o = this.element.offsetHeight; 553 o = null; 554 } 555 this.enableTransition(t.to), 556 this.css(t.to), 557 (this.isTransitioning = !0); 558 }); 559 var l = "opacity," + n(a); 560 (d.enableTransition = function () { 561 if (!this.isTransitioning) { 562 var t = this.layout.options.transitionDuration; 563 (t = "number" == typeof t ? t + "ms" : t), 564 this.css({ 565 transitionProperty: l, 566 transitionDuration: t, 567 transitionDelay: this.staggerDelay || 0, 568 }), 569 this.element.addEventListener(u, this, !1); 570 } 571 }), 572 (d.onwebkitTransitionEnd = function (t) { 573 this.ontransitionend(t); 574 }), 575 (d.onotransitionend = function (t) { 576 this.ontransitionend(t); 577 }); 578 var f = { "-webkit-transform": "transform" }; 579 (d.ontransitionend = function (t) { 580 if (t.target === this.element) { 581 var e = this._transn, 582 o = f[t.propertyName] || t.propertyName; 583 if ( 584 (delete e.ingProperties[o], 585 i(e.ingProperties) && this.disableTransition(), 586 o in e.clean && 587 ((this.element.style[t.propertyName] = ""), delete e.clean[o]), 588 o in e.onEnd) 589 ) { 590 var n = e.onEnd[o]; 591 n.call(this), delete e.onEnd[o]; 592 } 593 this.emitEvent("transitionEnd", [this]); 594 } 595 }), 596 (d.disableTransition = function () { 597 this.removeTransitionStyles(), 598 this.element.removeEventListener(u, this, !1), 599 (this.isTransitioning = !1);
600 }), 601 (d._removeStyles = function (t) { 602 var e = {}; 603 for (var i in t) e[i] = ""; 604 this.css(e); 605 }); 606 var c = { 607 transitionProperty: "", 608 transitionDuration: "", 609 transitionDelay: "", 610 }; 611 return ( 612 (d.removeTransitionStyles = function () { 613 this.css(c); 614 }), 615 (d.stagger = function (t) { 616 (t = isNaN(t) ? 0 : t), (this.staggerDelay = t + "ms"); 617 }), 618 (d.removeElem = function () { 619 this.element.parentNode.removeChild(this.element), 620 this.css({ display: "" }), 621 this.emitEvent("remove", [this]); 622 }), 623 (d.remove = function () { 624 return r && parseFloat(this.layout.options.transitionDuration) 625 ? (this.once("transitionEnd", function () { 626 this.removeElem(); 627 }), 628 void this.hide()) 629 : void this.removeElem(); 630 }), 631 (d.reveal = function () { 632 delete this.isHidden, this.css({ display: "" }); 633 var t = this.layout.options, 634 e = {}, 635 i = this.getHideRevealTransitionEndProperty("visibleStyle"); 636 (e[i] = this.onRevealTransitionEnd), 637 this.transition({ 638 from: t.hiddenStyle, 639 to: t.visibleStyle, 640 isCleaning: !0, 641 onTransitionEnd: e, 642 }); 643 }), 644 (d.onRevealTransitionEnd = function () { 645 this.isHidden || this.emitEvent("reveal"); 646 }), 647 (d.getHideRevealTransitionEndProperty = function (t) { 648 var e = this.layout.options[t]; 649 if (e.opacity) return "opacity"; 650 for (var i in e) return i; 651 }), 652 (d.hide = function () { 653 (this.isHidden = !0), this.css({ display: "" }); 654 var t = this.layout.options, 655 e = {}, 656 i = this.getHideRevealTransitionEndProperty("hiddenStyle"); 657 (e[i] = this.onHideTransitionEnd), 658 this.transition({ 659 from: t.visibleStyle, 660 to: t.hiddenStyle, 661 isCleaning: !0, 662 onTransitionEnd: e, 663 }); 664 }), 665 (d.onHideTransitionEnd = function () { 666 this.isHidden && 667 (this.css({ display: "none" }), this.emitEvent("hide")); 668 }), 669 (d.destroy = function () { 670 this.css({ 671 position: "", 672 left: "", 673 right: "", 674 top: "", 675 bottom: "", 676 transition: "", 677 transform: "", 678 }); 679 }), 680 o 681 ); 682 }), 683 (function (t, e) { 684 "use strict"; 685 "function" == typeof define && define.amd 686 ? define( 687 "outlayer/outlayer", 688 [ 689 "ev-emitter/ev-emitter", 690 "get-size/get-size", 691 "fizzy-ui-utils/utils", 692 "./item", 693 ], 694 function (i, o, n, s) { 695 return e(t, i, o, n, s); 696 } 697 ) 698 : "object" == typeof module && module.exports 699 ? (module.exports = e( 700 t, 701 require("ev-emitter"), 702 require("get-size"), 703 require("fizzy-ui-utils"), 704 require("./item") 705 )) 706 : (t.Outlayer = e( 707 t, 708 t.EvEmitter, 709 t.getSize, 710 t.fizzyUIUtils, 711 t.Outlayer.Item 712 )); 713 })(window, function (t, e, i, o, n) { 714 "use strict"; 715 function s(t, e) { 716 var i = o.getQueryElement(t); 717 if (!i) 718 return void ( 719 u && 720 u.error( 721 "Bad element for " + this.constructor.namespace + ": " + (i || t) 722 ) 723 ); 724 (this.element = i), 725 h && (this.$element = h(this.element)), 726 (this.options = o.extend({}, this.constructor.defaults)), 727 this.option(e); 728 var n = ++l; 729 (this.element.outlayerGUID = n), (f[n] = this), this._create(); 730 var s = this._getOption("initLayout"); 731 s && this.layout(); 732 } 733 function r(t) { 734 function e() { 735 t.apply(this, arguments); 736 } 737 return ( 738 (e.prototype = Object.create(t.prototype)), 739 (e.prototype.constructor = e), 740 e 741 ); 742 } 743 function a(t) { 744 if ("number" == typeof t) return t; 745 var e = t.match(/(^\d*\.?\d*)(\w*)/), 746 i = e && e[1], 747 o = e && e[2]; 748 if (!i.length) return 0; 749 i = parseFloat(i); 750 var n = m[o] || 1; 751 return i * n; 752 } 753 var u = t.console, 754 h = t.jQuery, 755 d = function () {}, 756 l = 0, 757 f = {}; 758 (s.namespace = "outlayer"), 759 (s.Item = n), 760 (s.defaults = { 761 containerStyle: { position: "relative" }, 762 initLayout: !0, 763 originLeft: !0, 764 originTop: !0, 765 resize: !0, 766 resizeContainer: !0, 767 transitionDuration: "0.4s", 768 hiddenStyle: { opacity: 0, transform: "scale(0.001)" }, 769 visibleStyle: { opacity: 1, transform: "scale(1)" }, 770 }); 771 var c = s.prototype; 772 o.extend(c, e.prototype), 773 (c.option = function (t) { 774 o.extend(this.options, t); 775 }), 776 (c._getOption = function (t) { 777 var e = this.constructor.compatOptions[t]; 778 return e && void 0 !== this.options[e] 779 ? this.options[e] 780 : this.options[t]; 781 }), 782 (s.compatOptions = { 783 initLayout: "isInitLayout", 784 horizontal: "isHorizontal", 785 layoutInstant: "isLayoutInstant", 786 originLeft: "isOriginLeft", 787 originTop: "isOriginTop", 788 resize: "isResizeBound", 789 resizeContainer: "isResizingContainer", 790 }), 791 (c._create = function () { 792 this.reloadItems(), 793 (this.stamps = []), 794 this.stamp(this.options.stamp), 795 o.extend(this.element.style, this.options.containerStyle); 796 var t = this._getOption("resize"); 797 t && this.bindResize(); 798 }), 799 (c.reloadItems = function () { 800 this.items = this._itemize(this.element.children); 801 }), 802 (c._itemize = function (t) { 803 for ( 804 var e = this._filterFindItemElements(t), 805 i = this.constructor.Item, 806 o = [], 807 n = 0; 808 n < e.length; 809 n++ 810 ) { 811 var s = e[n], 812 r = new i(s, this); 813 o.push(r); 814 } 815 return o; 816 }), 817 (c._filterFindItemElements = function (t) { 818 return o.filterFindElements(t, this.options.itemSelector); 819 }), 820 (c.getItemElements = function () { 821 return this.items.map(function (t) { 822 return t.element; 823 }); 824 }), 825 (c.layout = function () { 826 this._resetLayout(), this._manageStamps(); 827 var t = this._getOption("layoutInstant"), 828 e = void 0 !== t ? t : !this._isLayoutInited; 829 this.layoutItems(this.items, e), (this._isLayoutInited = !0);
830 }), 831 (c._init = c.layout), 832 (c._resetLayout = function () { 833 this.getSize(); 834 }), 835 (c.getSize = function () { 836 this.size = i(this.element); 837 }), 838 (c._getMeasurement = function (t, e) { 839 var o, 840 n = this.options[t]; 841 n 842 ? ("string" == typeof n 843 ? (o = this.element.querySelector(n)) 844 : n instanceof HTMLElement && (o = n), 845 (this[t] = o ? i(o)[e] : n)) 846 : (this[t] = 0); 847 }), 848 (c.layoutItems = function (t, e) { 849 (t = this._getItemsForLayout(t)), 850 this._layoutItems(t, e), 851 this._postLayout(); 852 }), 853 (c._getItemsForLayout = function (t) { 854 return t.filter(function (t) { 855 return !t.isIgnored; 856 }); 857 }), 858 (c._layoutItems = function (t, e) { 859 if ((this._emitCompleteOnItems("layout", t), t && t.length)) { 860 var i = []; 861 t.forEach(function (t) { 862 var o = this._getItemLayoutPosition(t); 863 (o.item = t), (o.isInstant = e || t.isLayoutInstant), i.push(o); 864 }, this), 865 this._processLayoutQueue(i); 866 } 867 }), 868 (c._getItemLayoutPosition = function () { 869 return { x: 0, y: 0 }; 870 }), 871 (c._processLayoutQueue = function (t) { 872 this.updateStagger(), 873 t.forEach(function (t, e) { 874 this._positionItem(t.item, t.x, t.y, t.isInstant, e); 875 }, this); 876 }), 877 (c.updateStagger = function () { 878 var t = this.options.stagger; 879 return null === t || void 0 === t 880 ? void (this.stagger = 0) 881 : ((this.stagger = a(t)), this.stagger); 882 }), 883 (c._positionItem = function (t, e, i, o, n) { 884 o ? t.goTo(e, i) : (t.stagger(n * this.stagger), t.moveTo(e, i)); 885 }), 886 (c._postLayout = function () { 887 this.resizeContainer(); 888 }), 889 (c.resizeContainer = function () { 890 var t = this._getOption("resizeContainer"); 891 if (t) { 892 var e = this._getContainerSize(); 893 e && 894 (this._setContainerMeasure(e.width, !0), 895 this._setContainerMeasure(e.height, !1)); 896 } 897 }), 898 (c._getContainerSize = d), 899 (c._setContainerMeasure = function (t, e) { 900 if (void 0 !== t) { 901 var i = this.size; 902 i.isBorderBox && 903 (t += e 904 ? i.paddingLeft + 905 i.paddingRight + 906 i.borderLeftWidth + 907 i.borderRightWidth 908 : i.paddingBottom + 909 i.paddingTop + 910 i.borderTopWidth + 911 i.borderBottomWidth), 912 (t = Math.max(t, 0)), 913 (this.element.style[e ? "width" : "height"] = t + "px"); 914 } 915 }), 916 (c._emitCompleteOnItems = function (t, e) { 917 function i() { 918 n.dispatchEvent(t + "Complete", null, [e]); 919 } 920 function o() { 921 r++, r == s && i(); 922 } 923 var n = this, 924 s = e.length; 925 if (!e || !s) return void i(); 926 var r = 0; 927 e.forEach(function (e) { 928 e.once(t, o); 929 }); 930 }), 931 (c.dispatchEvent = function (t, e, i) { 932 var o = e ? [e].concat(i) : i; 933 if ((this.emitEvent(t, o), h)) 934 if (((this.$element = this.$element || h(this.element)), e)) { 935 var n = h.Event(e); 936 (n.type = t), this.$element.trigger(n, i); 937 } else this.$element.trigger(t, i); 938 }), 939 (c.ignore = function (t) { 940 var e = this.getItem(t); 941 e && (e.isIgnored = !0); 942 }), 943 (c.unignore = function (t) { 944 var e = this.getItem(t); 945 e && delete e.isIgnored; 946 }), 947 (c.stamp = function (t) { 948 (t = this._find(t)), 949 t && 950 ((this.stamps = this.stamps.concat(t)), 951 t.forEach(this.ignore, this)); 952 }), 953 (c.unstamp = function (t) { 954 (t = this._find(t)), 955 t && 956 t.forEach(function (t) { 957 o.removeFrom(this.stamps, t), this.unignore(t); 958 }, this); 959 }), 960 (c._find = function (t) { 961 if (t) 962 return ( 963 "string" == typeof t && (t = this.element.querySelectorAll(t)), 964 (t = o.makeArray(t)) 965 ); 966 }), 967 (c._manageStamps = function () { 968 this.stamps && 969 this.stamps.length &&
970 (this._getBoundingRect(), 971 this.stamps.forEach(this._manageStamp, this)); 972 }), 973 (c._getBoundingRect = function () { 974 var t = this.element.getBoundingClientRect(), 975 e = this.size; 976 this._boundingRect = { 977 left: t.left + e.paddingLeft + e.borderLeftWidth, 978 top: t.top + e.paddingTop + e.borderTopWidth, 979 right: t.right - (e.paddingRight + e.borderRightWidth), 980 bottom: t.bottom - (e.paddingBottom + e.borderBottomWidth), 981 }; 982 }), 983 (c._manageStamp = d), 984 (c._getElementOffset = function (t) { 985 var e = t.getBoundingClientRect(), 986 o = this._boundingRect, 987 n = i(t), 988 s = { 989 left: e.left - o.left - n.marginLeft, 990 top: e.top - o.top - n.marginTop, 991 right: o.right - e.right - n.marginRight, 992 bottom: o.bottom - e.bottom - n.marginBottom, 993 }; 994 return s; 995 }), 996 (c.handleEvent = o.handleEvent), 997 (c.bindResize = function () { 998 t.addEventListener("resize", this), (this.isResizeBound = !0); 999 }), 1000 (c.unbindResize = function () { 1001 t.removeEventListener("resize", this), (this.isResizeBound = !1); 1002 }), 1003 (c.onresize = function () { 1004 this.resize(); 1005 }), 1006 o.debounceMethod(s, "onresize", 100), 1007 (c.resize = function () { 1008 this.isResizeBound && this.needsResizeLayout() && this.layout(); 1009 }), 1010 (c.needsResizeLayout = function () { 1011 var t = i(this.element), 1012 e = this.size && t; 1013 return e && t.innerWidth !== this.size.innerWidth; 1014 }), 1015 (c.addItems = function (t) { 1016 var e = this._itemize(t); 1017 return e.length && (this.items = this.items.concat(e)), e; 1018 }), 1019 (c.appended = function (t) { 1020 var e = this.addItems(t); 1021 e.length && (this.layoutItems(e, !0), this.reveal(e)); 1022 }), 1023 (c.prepended = function (t) { 1024 var e = this._itemize(t); 1025 if (e.length) { 1026 var i = this.items.slice(0); 1027 (this.items = e.concat(i)), 1028 this._resetLayout(), 1029 this._manageStamps(), 1030 this.layoutItems(e, !0), 1031 this.reveal(e), 1032 this.layoutItems(i); 1033 } 1034 }), 1035 (c.reveal = function (t) { 1036 if ((this._emitCompleteOnItems("reveal", t), t && t.length)) { 1037 var e = this.updateStagger(); 1038 t.forEach(function (t, i) { 1039 t.stagger(i * e), t.reveal(); 1040 }); 1041 } 1042 }), 1043 (c.hide = function (t) { 1044 if ((this._emitCompleteOnItems("hide", t), t && t.length)) { 1045 var e = this.updateStagger(); 1046 t.forEach(function (t, i) { 1047 t.stagger(i * e), t.hide(); 1048 }); 1049 } 1050 }), 1051 (c.revealItemElements = function (t) { 1052 var e = this.getItems(t); 1053 this.reveal(e); 1054 }), 1055 (c.hideItemElements = function (t) { 1056 var e = this.getItems(t); 1057 this.hide(e); 1058 }), 1059 (c.getItem = function (t) { 1060 for (var e = 0; e < this.items.length; e++) { 1061 var i = this.items[e]; 1062 if (i.element == t) return i; 1063 } 1064 }), 1065 (c.getItems = function (t) { 1066 t = o.makeArray(t); 1067 var e = []; 1068 return ( 1069 t.forEach(function (t) { 1070 var i = this.getItem(t); 1071 i && e.push(i); 1072 }, this), 1073 e 1074 ); 1075 }), 1076 (c.remove = function (t) { 1077 var e = this.getItems(t); 1078 this._emitCompleteOnItems("remove", e), 1079 e && 1080 e.length && 1081 e.forEach(function (t) { 1082 t.remove(), o.removeFrom(this.items, t); 1083 }, this); 1084 }), 1085 (c.destroy = function () { 1086 var t = this.element.style; 1087 (t.height = ""), 1088 (t.position = ""), 1089 (t.width = ""), 1090 this.items.forEach(function (t) { 1091 t.destroy(); 1092 }), 1093 this.unbindResize(); 1094 var e = this.element.outlayerGUID; 1095 delete f[e], 1096 delete this.element.outlayerGUID, 1097 h && h.removeData(this.element, this.constructor.namespace); 1098 }), 1099 (s.data = function (t) { 1100 t = o.getQueryElement(t); 1101 var e = t && t.outlayerGUID; 1102 return e && f[e]; 1103 }), 1104 (s.create = function (t, e) { 1105 var i = r(s); 1106 return ( 1107 (i.defaults = o.extend({}, s.defaults)), 1108 o.extend(i.defaults, e), 1109 (i.compatOptions = o.extend({}, s.compatOptions)), 1110 (i.namespace = t), 1111 (i.data = s.data), 1112 (i.Item = r(n)), 1113 o.htmlInit(i, t), 1114 h && h.bridget && h.bridget(t, i), 1115 i 1116 ); 1117 }); 1118 var m = { ms: 1, s: 1e3 }; 1119 return (s.Item = n), s; 1120 }), 1121 (function (t, e) { 1122 "function" == typeof define && define.amd 1123 ? define("isotope-layout/js/item", ["outlayer/outlayer"], e) 1124 : "object" == typeof module && module.exports 1125 ? (module.exports = e(require("outlayer"))) 1126 : ((t.Isotope = t.Isotope || {}), (t.Isotope.Item = e(t.Outlayer))); 1127 })(window, function (t) { 1128 "use strict"; 1129 function e() { 1130 t.Item.apply(this, arguments); 1131 } 1132 var i = (e.prototype = Object.create(t.Item.prototype)), 1133 o = i._create; 1134 (i._create = function () { 1135 (this.id = this.layout.itemGUID++), o.call(this), (this.sortData = {}); 1136 }), 1137 (i.updateSortData = function () { 1138 if (!this.isIgnored) { 1139 (this.sortData.id = this.id), 1140 (this.sortData["original-order"] = this.id), 1141 (this.sortData.random = Math.random()); 1142 var t = this.layout.options.getSortData, 1143 e = this.layout._sorters; 1144 for (var i in t) { 1145 var o = e[i]; 1146 this.sortData[i] = o(this.element, this); 1147 } 1148 } 1149 }); 1150 var n = i.destroy; 1151 return ( 1152 (i.destroy = function () { 1153 n.apply(this, arguments), this.css({ display: "" }); 1154 }), 1155 e 1156 ); 1157 }), 1158 (function (t, e) { 1159 "function" == typeof define && define.amd 1160 ? define( 1161 "isotope-layout/js/layout-mode", 1162 ["get-size/get-size", "outlayer/outlayer"], 1163 e 1164 ) 1165 : "object" == typeof module && module.exports 1166 ? (module.exports = e(require("get-size"), require("outlayer"))) 1167 : ((t.Isotope = t.Isotope || {}), 1168 (t.Isotope.LayoutMode = e(t.getSize, t.Outlayer))); 1169 })(window, function (t, e) { 1170 "use strict"; 1171 function i(t) { 1172 (this.isotope = t), 1173 t && 1174 ((this.options = t.options[this.namespace]), 1175 (this.element = t.element), 1176 (this.items = t.filteredItems), 1177 (this.size = t.size)); 1178 } 1179 var o = i.prototype, 1180 n = [ 1181 "_resetLayout", 1182 "_getItemLayoutPosition", 1183 "_manageStamp", 1184 "_getContainerSize", 1185 "_getElementOffset", 1186 "needsResizeLayout", 1187 "_getOption", 1188 ]; 1189 return (
1190 n.forEach(function (t) { 1191 o[t] = function () { 1192 return e.prototype[t].apply(this.isotope, arguments); 1193 }; 1194 }), 1195 (o.needsVerticalResizeLayout = function () { 1196 var e = t(this.isotope.element), 1197 i = this.isotope.size && e; 1198 return i && e.innerHeight != this.isotope.size.innerHeight; 1199 }), 1200 (o._getMeasurement = function () { 1201 this.isotope._getMeasurement.apply(this, arguments); 1202 }), 1203 (o.getColumnWidth = function () { 1204 this.getSegmentSize("column", "Width"); 1205 }), 1206 (o.getRowHeight = function () { 1207 this.getSegmentSize("row", "Height"); 1208 }), 1209 (o.getSegmentSize = function (t, e) { 1210 var i = t + e, 1211 o = "outer" + e; 1212 if ((this._getMeasurement(i, o), !this[i])) { 1213 var n = this.getFirstItemSize(); 1214 this[i] = (n && n[o]) || this.isotope.size["inner" + e]; 1215 } 1216 }), 1217 (o.getFirstItemSize = function () { 1218 var e = this.isotope.filteredItems[0]; 1219 return e && e.element && t(e.element); 1220 }), 1221 (o.layout = function () { 1222 this.isotope.layout.apply(this.isotope, arguments); 1223 }), 1224 (o.getSize = function () { 1225 this.isotope.getSize(), (this.size = this.isotope.size); 1226 }), 1227 (i.modes = {}), 1228 (i.create = function (t, e) { 1229 function n() { 1230 i.apply(this, arguments); 1231 } 1232 return ( 1233 (n.prototype = Object.create(o)), 1234 (n.prototype.constructor = n), 1235 e && (n.options = e), 1236 (n.prototype.namespace = t), 1237 (i.modes[t] = n), 1238 n 1239 ); 1240 }), 1241 i 1242 ); 1243 }), 1244 (function (t, e) { 1245 "function" == typeof define && define.amd 1246 ? define( 1247 "masonry-layout/masonry", 1248 ["outlayer/outlayer", "get-size/get-size"], 1249 e 1250 ) 1251 : "object" == typeof module && module.exports 1252 ? (module.exports = e(require("outlayer"), require("get-size"))) 1253 : (t.Masonry = e(t.Outlayer, t.getSize)); 1254 })(window, function (t, e) { 1255 var i = t.create("masonry"); 1256 i.compatOptions.fitWidth = "isFitWidth"; 1257 var o = i.prototype; 1258 return ( 1259 (o._resetLayout = function () {
1260 this.getSize(), 1261 this._getMeasurement("columnWidth", "outerWidth"), 1262 this._getMeasurement("gutter", "outerWidth"), 1263 this.measureColumns(), 1264 (this.colYs = []); 1265 for (var t = 0; t < this.cols; t++) this.colYs.push(0); 1266 (this.maxY = 0), (this.horizontalColIndex = 0); 1267 }), 1268 (o.measureColumns = function () { 1269 if ((this.getContainerWidth(), !this.columnWidth)) { 1270 var t = this.items[0], 1271 i = t && t.element; 1272 this.columnWidth = (i && e(i).outerWidth) || this.containerWidth; 1273 } 1274 var o = (this.columnWidth += this.gutter), 1275 n = this.containerWidth + this.gutter, 1276 s = n / o, 1277 r = o - (n % o), 1278 a = r && r < 1 ? "round" : "floor"; 1279 (s = Math[a](s)), (this.cols = Math.max(s, 1)); 1280 }), 1281 (o.getContainerWidth = function () { 1282 var t = this._getOption("fitWidth"), 1283 i = t ? this.element.parentNode : this.element, 1284 o = e(i); 1285 this.containerWidth = o && o.innerWidth; 1286 }), 1287 (o._getItemLayoutPosition = function (t) { 1288 t.getSize(); 1289 var e = t.size.outerWidth % this.columnWidth, 1290 i = e && e < 1 ? "round" : "ceil", 1291 o = Math[i](t.size.outerWidth / this.columnWidth); 1292 o = Math.min(o, this.cols); 1293 for ( 1294 var n = this.options.horizontalOrder 1295 ? "_getHorizontalColPosition" 1296 : "_getTopColPosition", 1297 s = this[n](o, t), 1298 r = { x: this.columnWidth * s.col, y: s.y }, 1299 a = s.y + t.size.outerHeight, 1300 u = o + s.col, 1301 h = s.col; 1302 h < u; 1303 h++ 1304 ) 1305 this.colYs[h] = a; 1306 return r; 1307 }), 1308 (o._getTopColPosition = function (t) { 1309 var e = this._getTopColGroup(t), 1310 i = Math.min.apply(Math, e); 1311 return { col: e.indexOf(i), y: i }; 1312 }), 1313 (o._getTopColGroup = function (t) { 1314 if (t < 2) return this.colYs; 1315 for (var e = [], i = this.cols + 1 - t, o = 0; o < i; o++) 1316 e[o] = this._getColGroupY(o, t); 1317 return e; 1318 }), 1319 (o._getColGroupY = function (t, e) { 1320 if (e < 2) return this.colYs[t]; 1321 var i = this.colYs.slice(t, t + e); 1322 return Math.max.apply(Math, i); 1323 }), 1324 (o._getHorizontalColPosition = function (t, e) { 1325 var i = this.horizontalColIndex % this.cols, 1326 o = t > 1 && i + t > this.cols; 1327 i = o ? 0 : i; 1328 var n = e.size.outerWidth && e.size.outerHeight; 1329 return ( 1330 (this.horizontalColIndex = n ? i + t : this.horizontalColIndex), 1331 { col: i, y: this._getColGroupY(i, t) } 1332 ); 1333 }), 1334 (o._manageStamp = function (t) { 1335 var i = e(t), 1336 o = this._getElementOffset(t), 1337 n = this._getOption("originLeft"), 1338 s = n ? o.left : o.right, 1339 r = s + i.outerWidth, 1340 a = Math.floor(s / this.columnWidth); 1341 a = Math.max(0, a); 1342 var u = Math.floor(r / this.columnWidth); 1343 (u -= r % this.columnWidth ? 0 : 1), (u = Math.min(this.cols - 1, u)); 1344 for ( 1345 var h = this._getOption("originTop"), 1346 d = (h ? o.top : o.bottom) + i.outerHeight, 1347 l = a; 1348 l <= u; 1349 l++ 1350 ) 1351 this.colYs[l] = Math.max(d, this.colYs[l]); 1352 }), 1353 (o._getContainerSize = function () { 1354 this.maxY = Math.max.apply(Math, this.colYs); 1355 var t = { height: this.maxY }; 1356 return ( 1357 this._getOption("fitWidth") && 1358 (t.width = this._getContainerFitWidth()), 1359 t 1360 ); 1361 }), 1362 (o._getContainerFitWidth = function () { 1363 for (var t = 0, e = this.cols; --e && 0 === this.colYs[e]; ) t++; 1364 return (this.cols - t) * this.columnWidth - this.gutter; 1365 }), 1366 (o.needsResizeLayout = function () { 1367 var t = this.containerWidth; 1368 return this.getContainerWidth(), t != this.containerWidth; 1369 }), 1370 i 1371 ); 1372 }), 1373 (function (t, e) { 1374 "function" == typeof define && define.amd 1375 ? define( 1376 "isotope-layout/js/layout-modes/masonry", 1377 ["../layout-mode", "masonry-layout/masonry"], 1378 e 1379 ) 1380 : "object" == typeof module && module.exports 1381 ? (module.exports = e( 1382 require("../layout-mode"), 1383 require("masonry-layout") 1384 )) 1385 : e(t.Isotope.LayoutMode, t.Masonry); 1386 })(window, function (t, e) { 1387 "use strict"; 1388 var i = t.create("masonry"), 1389 o = i.prototype, 1390 n = { _getElementOffset: !0, layout: !0, _getMeasurement: !0 }; 1391 for (var s in e.prototype) n[s] || (o[s] = e.prototype[s]); 1392 var r = o.measureColumns; 1393 o.measureColumns = function () { 1394 (this.items = this.isotope.filteredItems), r.call(this); 1395 }; 1396 var a = o._getOption; 1397 return ( 1398 (o._getOption = function (t) { 1399 return "fitWidth" == t 1400 ? void 0 !== this.options.isFitWidth 1401 ? this.options.isFitWidth 1402 : this.options.fitWidth 1403 : a.apply(this.isotope, arguments); 1404 }), 1405 i 1406 ); 1407 }), 1408 (function (t, e) { 1409 "function" == typeof define && define.amd 1410 ? define("isotope-layout/js/layout-modes/fit-rows", ["../layout-mode"], e) 1411 : "object" == typeof exports 1412 ? (module.exports = e(require("../layout-mode"))) 1413 : e(t.Isotope.LayoutMode); 1414 })(window, function (t) { 1415 "use strict"; 1416 var e = t.create("fitRows"), 1417 i = e.prototype; 1418 return ( 1419 (i._resetLayout = function () { 1420 (this.x = 0), 1421 (this.y = 0), 1422 (this.maxY = 0), 1423 this._getMeasurement("gutter", "outerWidth"); 1424 }), 1425 (i._getItemLayoutPosition = function (t) { 1426 t.getSize(); 1427 var e = t.size.outerWidth + this.gutter, 1428 i = this.isotope.size.innerWidth + this.gutter; 1429 0 !== this.x && e + this.x > i && ((this.x = 0), (this.y = this.maxY)); 1430 var o = { x: this.x, y: this.y }; 1431 return ( 1432 (this.maxY = Math.max(this.maxY, this.y + t.size.outerHeight)), 1433 (this.x += e), 1434 o 1435 ); 1436 }), 1437 (i._getContainerSize = function () { 1438 return { height: this.maxY }; 1439 }), 1440 e 1441 ); 1442 }), 1443 (function (t, e) { 1444 "function" == typeof define && define.amd 1445 ? define("isotope-layout/js/layout-modes/vertical", ["../layout-mode"], e) 1446 : "object" == typeof module && module.exports 1447 ? (module.exports = e(require("../layout-mode"))) 1448 : e(t.Isotope.LayoutMode); 1449 })(window, function (t) { 1450 "use strict"; 1451 var e = t.create("vertical", { horizontalAlignment: 0 }), 1452 i = e.prototype; 1453 return ( 1454 (i._resetLayout = function () { 1455 this.y = 0; 1456 }), 1457 (i._getItemLayoutPosition = function (t) { 1458 t.getSize(); 1459 var e = 1460 (this.isotope.size.innerWidth - t.size.outerWidth) * 1461 this.options.horizontalAlignment, 1462 i = this.y; 1463 return (this.y += t.size.outerHeight), { x: e, y: i }; 1464 }), 1465 (i._getContainerSize = function () { 1466 return { height: this.y }; 1467 }), 1468 e 1469 ); 1470 }), 1471 (function (t, e) { 1472 "function" == typeof define && define.amd 1473 ? define( 1474 [ 1475 "outlayer/outlayer", 1476 "get-size/get-size", 1477 "desandro-matches-selector/matches-selector", 1478 "fizzy-ui-utils/utils", 1479 "isotope-layout/js/item", 1480 "isotope-layout/js/layout-mode", 1481 "isotope-layout/js/layout-modes/masonry", 1482 "isotope-layout/js/layout-modes/fit-rows", 1483 "isotope-layout/js/layout-modes/vertical", 1484 ], 1485 function (i, o, n, s, r, a) { 1486 return e(t, i, o, n, s, r, a); 1487 } 1488 ) 1489 : "object" == typeof module && module.exports 1490 ? (module.exports = e( 1491 t, 1492 require("outlayer"), 1493 require("get-size"), 1494 require("desandro-matches-selector"), 1495 require("fizzy-ui-utils"), 1496 require("isotope-layout/js/item"), 1497 require("isotope-layout/js/layout-mode"), 1498 require("isotope-layout/js/layout-modes/masonry"), 1499 require("isotope-layout/js/layout-modes/fit-rows"), 1500 require("isotope-layout/js/layout-modes/vertical") 1501 )) 1502 : (t.Isotope = e( 1503 t, 1504 t.Outlayer, 1505 t.getSize, 1506 t.matchesSelector, 1507 t.fizzyUIUtils, 1508 t.Isotope.Item, 1509 t.Isotope.LayoutMode 1510 )); 1511 })(window, function (t, e, i, o, n, s, r) { 1512 function a(t, e) { 1513 return function (i, o) { 1514 for (var n = 0; n < t.length; n++) { 1515 var s = t[n], 1516 r = i.sortData[s], 1517 a = o.sortData[s]; 1518 if (r > a || r < a) { 1519 var u = void 0 !== e[s] ? e[s] : e, 1520 h = u ? 1 : -1; 1521 return (r > a ? 1 : -1) * h; 1522 } 1523 } 1524 return 0; 1525 }; 1526 } 1527 var u = t.jQuery, 1528 h = String.prototype.trim 1529 ? function (t) { 1530 return t.trim(); 1531 } 1532 : function (t) { 1533 return t.replace(/^\s+|\s+$/g, ""); 1534 }, 1535 d = e.create("isotope", { 1536 layoutMode: "masonry", 1537 isJQueryFiltering: !0, 1538 sortAscending: !0, 1539 }); 1540 (d.Item = s), (d.LayoutMode = r); 1541 var l = d.prototype; 1542 (l._create = function () { 1543 (this.itemGUID = 0), 1544 (this._sorters = {}), 1545 this._getSorters(), 1546 e.prototype._create.call(this), 1547 (this.modes = {}), 1548 (this.filteredItems = this.items), 1549 (this.sortHistory = ["original-order"]); 1550 for (var t in r.modes) this._initLayoutMode(t); 1551 }), 1552 (l.reloadItems = function () { 1553 (this.itemGUID = 0), e.prototype.reloadItems.call(this); 1554 }), 1555 (l._itemize = function () { 1556 for ( 1557 var t = e.prototype._itemize.apply(this, arguments), i = 0; 1558 i < t.length; 1559 i++ 1560 ) { 1561 var o = t[i]; 1562 o.id = this.itemGUID++; 1563 } 1564 return this._updateItemsSortData(t), t; 1565 }), 1566 (l._initLayoutMode = function (t) { 1567 var e = r.modes[t], 1568 i = this.options[t] || {}; 1569 (this.options[t] = e.options ? n.extend(e.options, i) : i), 1570 (this.modes[t] = new e(this)); 1571 }), 1572 (l.layout = function () { 1573 return !this._isLayoutInited && this._getOption("initLayout") 1574 ? void this.arrange() 1575 : void this._layout(); 1576 }), 1577 (l._layout = function () { 1578 var t = this._getIsInstant(); 1579 this._resetLayout(), 1580 this._manageStamps(), 1581 this.layoutItems(this.filteredItems, t), 1582 (this._isLayoutInited = !0);
1583 }), 1584 (l.arrange = function (t) { 1585 this.option(t), this._getIsInstant(); 1586 var e = this._filter(this.items); 1587 (this.filteredItems = e.matches), 1588 this._bindArrangeComplete(), 1589 this._isInstant 1590 ? this._noTransition(this._hideReveal, [e]) 1591 : this._hideReveal(e), 1592 this._sort(), 1593 this._layout(); 1594 }), 1595 (l._init = l.arrange), 1596 (l._hideReveal = function (t) { 1597 this.reveal(t.needReveal), this.hide(t.needHide); 1598 }), 1599 (l._getIsInstant = function () { 1600 var t = this._getOption("layoutInstant"), 1601 e = void 0 !== t ? t : !this._isLayoutInited; 1602 return (this._isInstant = e), e; 1603 }), 1604 (l._bindArrangeComplete = function () { 1605 function t() { 1606 e && 1607 i && 1608 o && 1609 n.dispatchEvent("arrangeComplete", null, [n.filteredItems]); 1610 } 1611 var e, 1612 i, 1613 o, 1614 n = this; 1615 this.once("layoutComplete", function () { 1616 (e = !0), t(); 1617 }), 1618 this.once("hideComplete", function () { 1619 (i = !0), t(); 1620 }), 1621 this.once("revealComplete", function () { 1622 (o = !0), t(); 1623 }); 1624 }), 1625 (l._filter = function (t) { 1626 var e = this.options.filter; 1627 e = e || "*"; 1628 for ( 1629 var i = [], o = [], n = [], s = this._getFilterTest(e), r = 0; 1630 r < t.length; 1631 r++ 1632 ) { 1633 var a = t[r]; 1634 if (!a.isIgnored) { 1635 var u = s(a); 1636 u && i.push(a), 1637 u && a.isHidden ? o.push(a) : u || a.isHidden || n.push(a); 1638 } 1639 } 1640 return { matches: i, needReveal: o, needHide: n }; 1641 }), 1642 (l._getFilterTest = function (t) { 1643 return u && this.options.isJQueryFiltering 1644 ? function (e) { 1645 return u(e.element).is(t); 1646 } 1647 : "function" == typeof t 1648 ? function (e) { 1649 return t(e.element); 1650 } 1651 : function (e) { 1652 return o(e.element, t); 1653 }; 1654 }), 1655 (l.updateSortData = function (t) { 1656 var e; 1657 t ? ((t = n.makeArray(t)), (e = this.getItems(t))) : (e = this.items), 1658 this._getSorters(), 1659 this._updateItemsSortData(e); 1660 }), 1661 (l._getSorters = function () { 1662 var t = this.options.getSortData; 1663 for (var e in t) { 1664 var i = t[e]; 1665 this._sorters[e] = f(i); 1666 } 1667 }), 1668 (l._updateItemsSortData = function (t) { 1669 for (var e = t && t.length, i = 0; e && i < e; i++) { 1670 var o = t[i]; 1671 o.updateSortData(); 1672 } 1673 }); 1674 var f = (function () { 1675 function t(t) { 1676 if ("string" != typeof t) return t; 1677 var i = h(t).split(" "), 1678 o = i[0], 1679 n = o.match(/^\[(.+)\]$/), 1680 s = n && n[1], 1681 r = e(s, o), 1682 a = d.sortDataParsers[i[1]]; 1683 return (t = a 1684 ? function (t) { 1685 return t && a(r(t)); 1686 } 1687 : function (t) { 1688 return t && r(t); 1689 }); 1690 } 1691 function e(t, e) { 1692 return t 1693 ? function (e) { 1694 return e.getAttribute(t); 1695 } 1696 : function (t) { 1697 var i = t.querySelector(e); 1698 return i && i.textContent; 1699 }; 1700 } 1701 return t; 1702 })(); 1703 (d.sortDataParsers = { 1704 parseInt: function (t) { 1705 return parseInt(t, 10); 1706 }, 1707 parseFloat: function (t) { 1708 return parseFloat(t); 1709 }, 1710 }), 1711 (l._sort = function () { 1712 if (this.options.sortBy) { 1713 var t = n.makeArray(this.options.sortBy); 1714 this._getIsSameSortBy(t) || 1715 (this.sortHistory = t.concat(this.sortHistory)); 1716 var e = a(this.sortHistory, this.options.sortAscending); 1717 this.filteredItems.sort(e); 1718 } 1719 }), 1720 (l._getIsSameSortBy = function (t) { 1721 for (var e = 0; e < t.length; e++) 1722 if (t[e] != this.sortHistory[e]) return !1; 1723 return !0; 1724 }), 1725 (l._mode = function () { 1726 var t = this.options.layoutMode,
1727 e = this.modes[t]; 1728 if (!e) throw new Error("No layout mode: " + t); 1729 return (e.options = this.options[t]), e; 1730 }), 1731 (l._resetLayout = function () { 1732 e.prototype._resetLayout.call(this), this._mode()._resetLayout(); 1733 }), 1734 (l._getItemLayoutPosition = function (t) { 1735 return this._mode()._getItemLayoutPosition(t); 1736 }), 1737 (l._manageStamp = function (t) { 1738 this._mode()._manageStamp(t); 1739 }), 1740 (l._getContainerSize = function () { 1741 return this._mode()._getContainerSize(); 1742 }), 1743 (l.needsResizeLayout = function () { 1744 return this._mode().needsResizeLayout(); 1745 }), 1746 (l.appended = function (t) { 1747 var e = this.addItems(t); 1748 if (e.length) { 1749 var i = this._filterRevealAdded(e); 1750 this.filteredItems = this.filteredItems.concat(i); 1751 } 1752 }), 1753 (l.prepended = function (t) { 1754 var e = this._itemize(t); 1755 if (e.length) { 1756 this._resetLayout(), this._manageStamps(); 1757 var i = this._filterRevealAdded(e); 1758 this.layoutItems(this.filteredItems), 1759 (this.filteredItems = i.concat(this.filteredItems)), 1760 (this.items = e.concat(this.items)); 1761 } 1762 }), 1763 (l._filterRevealAdded = function (t) { 1764 var e = this._filter(t); 1765 return ( 1766 this.hide(e.needHide), 1767 this.reveal(e.matches), 1768 this.layoutItems(e.matches, !0), 1769 e.matches 1770 ); 1771 }), 1772 (l.insert = function (t) { 1773 var e = this.addItems(t); 1774 if (e.length) { 1775 var i, 1776 o, 1777 n = e.length; 1778 for (i = 0; i < n; i++) 1779 (o = e[i]), this.element.appendChild(o.element); 1780 var s = this._filter(e).matches; 1781 for (i = 0; i < n; i++) e[i].isLayoutInstant = !0; 1782 for (this.arrange(), i = 0; i < n; i++) delete e[i].isLayoutInstant; 1783 this.reveal(s); 1784 } 1785 }); 1786 var c = l.remove; 1787 return ( 1788 (l.remove = function (t) { 1789 t = n.makeArray(t); 1790 var e = this.getItems(t); 1791 c.call(this, t); 1792 for (var i = e && e.length, o = 0; i && o < i; o++) { 1793 var s = e[o]; 1794 n.removeFrom(this.filteredItems, s); 1795 } 1796 }), 1797 (l.shuffle = function () { 1798 for (var t = 0; t < this.items.length; t++) { 1799 var e = this.items[t]; 1800 e.sortData.random = Math.random(); 1801 } 1802 (this.options.sortBy = "random"), this._sort(), this._layout(); 1803 }), 1804 (l._noTransition = function (t, e) { 1805 var i = this.options.transitionDuration; 1806 this.options.transitionDuration = 0; 1807 var o = t.apply(this, e); 1808 return (this.options.transitionDuration = i), o; 1809 }), 1810 (l.getFilteredItemElements = function () { 1811 return this.filteredItems.map(function (t) { 1812 return t.element; 1813 }); 1814 }), 1815 d 1816 ); 1817 });
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.